9 NAMESPACE_BEGIN(CryptoPP)
16 : d1(domain), d2(domain) {}
18 : d1(staticDomain), d2(ephemeralDomain) {}
20 CryptoParameters & AccessCryptoParameters() {
return d1.AccessCryptoParameters();}
23 {
return d1.AgreedValueLength() + d2.AgreedValueLength();}
26 {
return d1.PrivateKeyLength();}
28 {
return d1.PublicKeyLength();}
30 {d1.GeneratePrivateKey(rng, privateKey);}
32 {d1.GeneratePublicKey(rng, privateKey, publicKey);}
34 {d1.GenerateKeyPair(rng, privateKey, publicKey);}
37 {
return d2.PrivateKeyLength();}
39 {
return d2.PublicKeyLength();}
41 {d2.GeneratePrivateKey(rng, privateKey);}
43 {d2.GeneratePublicKey(rng, privateKey, publicKey);}
45 {d2.GenerateKeyPair(rng, privateKey, publicKey);}
47 bool Agree(byte *agreedValue,
48 const byte *staticPrivateKey,
const byte *ephemeralPrivateKey,
49 const byte *staticOtherPublicKey,
const byte *ephemeralOtherPublicKey,
50 bool validateStaticOtherPublicKey=
true)
const;