소스 검색

restore shared secret benchmarks

master
Michael Hamburg 8 년 전
부모
커밋
957ec6cd2c
3개의 변경된 파일16개의 추가작업 그리고 4개의 파일을 삭제
  1. +1
    -1
      src/gen_headers/crypto_hxx.py
  2. +7
    -3
      test/bench_decaf.cxx
  3. +8
    -0
      test/test_decaf.cxx

+ 1
- 1
src/gen_headers/crypto_hxx.py 파일 보기

@@ -63,7 +63,7 @@ public:
/** @brief Serialization size. */
inline size_t serSize() const NOEXCEPT { return SER_BYTES; }
/* TODO: verify_strobe? */
/* TODO: verify_strobe */
/** @brief Verify a message */
inline void verify(


+ 7
- 3
test/bench_decaf.cxx 파일 보기

@@ -290,10 +290,10 @@ static void macro() {
printf("\nMacro-benchmarks for %s:\n", Group::name());
printf("Crypto benchmarks:\n");
SpongeRng rng(Block("macro rng seed"));
PublicKey<Group> p1((NOINIT())), p2((NOINIT()));
PrivateKey<Group> s1((NOINIT())), s2((NOINIT()));
PrivateKey<Group> s1((NOINIT())), s2(rng);
PublicKey<Group> p1((NOINIT())), p2(s2);

SecureBuffer message = rng.read(5), sig;
SecureBuffer message = rng.read(5), sig, ss;

for (Benchmark b("Create private key",1); b.iter(); ) {
s1 = PrivateKey<Group>(rng);
@@ -310,6 +310,10 @@ static void macro() {
try { p1.verify(message, sig); } catch (CryptoException) {}
}
for (Benchmark b("SharedSecret",1); b.iter(); ) {
ss = s1.sharedSecret(p2,32,true);
}
printf("\nProtocol benchmarks:\n");
SpongeRng clientRng(Block("client rng seed"));
SpongeRng serverRng(Block("server rng seed"));


+ 8
- 0
test/test_decaf.cxx 파일 보기

@@ -335,7 +335,15 @@ static void test_crypto() {
SecureBuffer message = rng.read(i);
SecureBuffer sig(priv1.sign(message));

pub1.verify(message, sig);
SecureBuffer s1(priv1.sharedSecret(pub2,32,true));
SecureBuffer s2(priv2.sharedSecret(pub1,32,false));
if (memcmp(s1.data(),s2.data(),s1.size())) {
test.fail();
printf(" Shared secrets disagree.");
}
}
}



불러오는 중...
취소
저장