delphi cryptography delphi-2010 digital-signature lockbox-3

delphi - Problema del componente de firma digital Lockbox



cryptography delphi-2010 (2)

Estoy evaluando la biblioteca TurboPower LockBox para la firma digital. Creé una clave RSA de 1024 bits e intenté firmar con ella 260 bytes de texto. Después de cambiar uno o dos caracteres en el texto, la firma aún es válida. ¿Eso esta bien? O tal vez es un problema con esta biblioteca. Cambiar incluso un personaje tiene un efecto crucial. ¿Necesito crear una clave más grande?

ACTUALIZAR

Para probar la biblioteca, utilicé la aplicación de demostración que viene con él. He generado un par de claves RSA 1024 y luego intenté las funciones de firma digital. Primero probé con un archivo de texto real de 260 bit y descubrí que puedo cambiar algunos caracteres y la firma todavía era válida. Luego lo reduje un poco a la siguiente cadena:

AAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAA 8

Y todavía funciona cuando estoy cambiando el carácter ''8''. Probablemente podría reducirlo aún más.

El código que realiza la validación es:

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;


Primero, no asumiría nada malo con la biblioteca, ya que se ha utilizado durante años. No debería poder cambiar las entradas y usar la misma firma para validarlo y funcionar. Keysize no jugaría un papel.

Para obtener respuestas reales, ampliaría su pregunta: ¿qué versión de Delphi? ¿Puedes mostrar un código?


LockBox 3 tiene un error en la implementación del componente de firma digital. LockBox 2.07 puede firmar y verificar firmas correctamente, pero cargar / guardar claves no funciona en Delphi 2010.