Ich bewerte Bibliothek für digitale Signaturen. Ich habe einen 1024-Bit-RSA-Schlüssel erstellt und versucht, damit 260 Byte Text zu signieren. Nach der Änderung von einem oder zwei Zeichen im Text ist die Unterschrift noch gültig. Ist das in Ordnung? Oder vielleicht ist es ein Problem mit dieser Bibliothek. Das Ändern von nur einem Zeichen hat eine entscheidende Auswirkung. Muss ich einen größeren Schlüssel erstellen?Lockbox digitale Signatur Komponenteproblem
UPDATE
die Bibliothek testen ich die Demo-Anwendung, die mit ihm kommt. Ich habe ein 1024 RSA-Schlüsselpaar generiert und dann die digitalen Signaturfunktionen ausprobiert. Zuerst habe ich mit einer echten 260 Bit Textdatei versucht und herausgefunden, dass ich einige Zeichen darin ändern kann und die Signatur noch gültig ist. Dann verengt ich es ein wenig an die followinf string:
AAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAA 8
Und es funktioniert immer noch, wenn ich die Änderung der ‚8‘ Charakter. Ich könnte es wahrscheinlich noch enger machen.
Der Code, der die Validierung durchführt, ist:
Signatory1: TSignatory;
....
var
DocumentStream, SignatureStream: TStream;
....
DocumentStream := TFileStream.Create(edtRSADocumentFile.Text, fmOpenread);
try
SignatureStream := TFileStream.Create(edtRSASignatureFile.Text, fmOpenread);
try
Res := Signatory1.Verify(DocumentStream, SignatureStream)
finally
SignatureStream.Free
end;
finally
DocumentStream.Free;
end;
Welche Version von LockBox verwenden Sie? Das "3.0" ist ein Ein-Mann-Neuschreiben, es sieht so aus, als ob es nicht viel vom ursprünglichen Code benutzt und seine Qualität ist noch zu bewerten. Oder verwenden Sie 2.07 (das letzte von TurboPower veröffentlicht)? –
Ich benutze die neueste (22-Oct-2010) Version 3.1.0.0. – Max
@ldsandon. Ich habe jetzt die alte 2003 Version ausprobiert und es hat gut funktioniert. Es scheint also, dass es einen Bug in dem neuen gibt. Können Sie Ihre Antwort posten, damit ich sie annehmen kann? – Max