ac75df1f1a7ab658ee3163590a67a779f13553cf
3 * It uses GMPxx lib and C++11.
4 * It needs the RNG file "/dev/urandom".
6 * Author: Grégory Burri
17 const uint KEY_SIZE_BITS
= 1024;
18 const uint RSA_PUBLIC_EXPONENT
= 65537;
20 int main(int argc
, char** argv
)
23 for (int i
= 0; i
< argc
; i
++)
24 args
.push_back(string(argv
[i
]));
26 const auto& keys
= Rsa::generateRSAKeys(RSA_PUBLIC_EXPONENT
, KEY_SIZE_BITS
);
27 const auto& kPub
= keys
.first
;
28 const auto& kPriv
= keys
.second
;
30 mpz_class
message(42);
31 mpz_class signature
= Rsa::sign(message
, kPriv
);
33 mpz_class
message2(42);
34 cout
<< "verify: " << Rsa::verifySignature(message2
, signature
, kPub
) << endl
;
36 mpz_class
message3(43);
37 cout
<< "verify: " << Rsa::verifySignature(message3
, signature
, kPub
) << endl
;