Sign/verify implementations using OpenSSL library.#6
Conversation
7b02ba2 to
16c6c50
Compare
06b3943 to
6bcf209
Compare
2f9f332 to
efd7b2a
Compare
8a43b8b to
4f9b348
Compare
985f38e to
6dc4b49
Compare
6c81258 to
9e6237f
Compare
| << "read-only: " << config.isReadOnly << "\n\n" | ||
| #ifdef USE_CRYPTOPP | ||
| << "# RSA non-threshold replica public keys\n" | ||
| << "rsa_public_keys:\n"; |
There was a problem hiding this comment.
Object store integrity checker code look for this "rsa_public_keys" . Please check if we need to make relevant changes there?
c9f9870 to
ab57a5a
Compare
|
@pkthapa, we have already 274 comments in this PR and it's not converging. |
@toly-kournik New PR created here: #12 |
6c91764 to
57c20fe
Compare
i. Compilation macros (USE_CRYPTOPP_RSA and USE_EDDSA_SINGLE_SIGN) for RSA and EdDSA removed. ii. The choice of signing algorithm is now based on the value set in 'replicaMsgSigningAlgo' and 'operatorMsgSigningAlgo' config variables.
57c20fe to
9cd5ab7
Compare
Namespace changed to |
60f690d to
f73a522
Compare
Problem Overview
The cryptographic algorithm involved in sign/verify operations should be changed to using
OpenSSL's EdDSAalgorithm.i)
Cryptopp RSAsigning and verification are replaced byOpenSSL EdDSAsigning and verification.ii) Encryption and decryption using
AES-256bit Cipher algorithm usingCBCmode implemented using OpenSSL library.iii) Base64 encoding and decoding using OpenSSL library APIs.
iv) Introduced
USE_RELICandUSE_EDDSA_OPENSSLcompilation macros for BLS multi-sig and EdDSA multi-sig implementation.v) Introduced
replicaMsgSigningAlgoandoperatorMsgSigningAlgoconfig flags to hop between RSA, ECDSA and EdDSA signing and verification.Testing Done
i) Gtest for
EdDSA sign/verify,AES-CBC encrypt/decrypt, andBase64 encode/decodeare working for OpenSSL library only. The same gtest cases forCryptopp RSA sign/verify,AES-CBC-256 encrypt/decrypt, andbase64 encoding/decodingare commented.ii) Apollo test cases for OpenSSL library.
iii) Benchmark tool [picobench] added for comparing
EdDSA signing/verificationvsRSA signing/verification.iv) Added missed OpenSSL digest holder test cases.