I have to sign a digital string using the SHA-1 algorithm with RSA using the PKCS # 1 add-on. I downloaded Turbo Power Lockbox for use with the Delphi programming language.
In a previous question, I learned how to convert a private key from PEM format to DER format (which, if I understand ASN.1 format correctly and is used with Lockbox).
I get a division by zero error in the following code in SignString:
uses LbRSA,lbAsym,LbDSA; procedure TForm1.Button1Click(sender: TObject); var mPrivateKey: TLbRSAKey; mLbRSASSA : TLbRSASSA; begin mPrivateKey := TLbRSAKey.Create(aks1024); mPrivateKey.LoadFromFile('C:\temp\myrsakey.der'); mLbRSASSA := TLbRSASSA.create(nil); mLbRSASSA.HashMethod := hmSHA1; mLbRSASSA.PrivateKey.Assign(mprivateKey); mLbRSASSA.SignString('sign this message');
This is how I generated c: \ temp \ myrsakey.der:
c: \ openssl \ bin \ openssl req -x509 -nodes -days 365 -newkey rsa: 1024 -sha1 -subj "/ C = US / ST = CA / L = Mountain View / CN = www.mycompany.com" -keyout myrsakey.pem -out c: \ temp \ myrsacert.pem
Use to convert from PEM to DER:
c: \ openssl \ bin \ openssl rsa -inform PEM -outform DER -in c: \ temp \ myrsakey.pem -out c: \ temp \ myrsakey.der
Any ideas why I am getting division by zero error?
M schenkel
source share