No worries. If you want the same keys though you could create a static method to return the generated key. As it stands you will be regenerating the key every time (I tink, at least if you always run GenerateKeys method which will overwrite the contents of the static keys). It's maybe best to create keys and pass them into your object (const) if you want to use them as I think you do. That way you can control which keys are in use by the object and recreate additional objects when you work with multiple keys.
You will, perhaps then find it easier to create checking objects etc. with the same key pair. Best Regards David Irvine On Sun, Jul 15, 2012 at 1:37 PM, Michele <[email protected]>wrote: > Done!! Now item 4) of my first post works fine. > > Here is a part of my Signature.cpp : > > static CryptoPP::AutoSeededRandomPool rng; //this fixed rng > troblues as David Irvine suggested > > void Signature::SignHash() //method declared in my > Signature.h file > { > [...] > static RSA::PrivateKey RSAprivate; > RSAprivate.GenerateRandomWithKeySize(rng,1536); > > static RSA::PublicKey RSApublic; > //keys created inside the method as Fraser suggested > > //and not declared inside the class as Ingo Naumann suggested > [...] > } > I'm not sure that the key pair is generated only once ( as I want). I'm > going to verify that key pair is not re-generated every time i call the > method , because I have to sign every file with the same RSAprivate. > > Thanks Everybody!! > Now I'm going to work on item 5) of my first post: perform the integrity > check of files (created/hashed/signed). I think that, because of I declared > my key pair as local static variables, I must implement a method > Signature::IntegrityCheck() inside my Signature.cpp, because outside of it > the keys will not be visible....... > > Il giorno sabato 14 luglio 2012 21:44:24 UTC+2, Michele ha scritto: > >> Ok David, now i'm deleting RNG from class members. I'm not sure that I've >> understand your example but i will try... >> >> Il giorno sabato 14 luglio 2012 19:08:07 UTC+2, David Irvine ha scritto: >>> >>> It seems you may not be using the RNG correctly. It's generally >>> preferred to have on per thread at least (or a global if you like). i.e. >>> in test.cpp you will see how this was done. In your case I am not sure you >>> should have a class member RNG used as you have. This can cause all sorts >>> of issues with threading and protection of the os provided generator etc. >>> >>> static OFB_Mode<AES>::Encryption s_globalRNG; >>> >>> RandomNumberGenerator & GlobalRNG() >>> { >>> return s_globalRNG; >>> } >>> >>> See the docs here >>> http://www.cryptopp.com/**wiki/RandomNumberGenerator<http://www.cryptopp.com/wiki/RandomNumberGenerator> >>> >>> Best Regards >>> David Irvine >>> >>> >>> On Sat, Jul 14, 2012 at 5:53 PM, Michele >>> <[email protected]>wrote: >>> >>>> RSA::PrivateKey RSAprivate; >>>> string DigitalSIgn; >>>> >>> >>> -- > You received this message because you are subscribed to the "Crypto++ > Users" Google Group. > To unsubscribe, send an email to > [email protected]. > More information about Crypto++ and this group is available at > http://www.cryptopp.com. > -- You received this message because you are subscribed to the "Crypto++ Users" Google Group. To unsubscribe, send an email to [email protected]. More information about Crypto++ and this group is available at http://www.cryptopp.com.
