Einzelnen Beitrag anzeigen

TurboMartin

Registriert seit: 13. Feb 2006
Ort: Bad Honnef
765 Beiträge
 
Turbo Delphi für Win32
 
#1

Daten digital signieren

  Alt 16. Jul 2007, 16:08
Mit folgender Funktion lässt sich ein ein Byte Array mit einem Zertifikat (z.B. aus dem Zertifikatsspeicher) signieren.
Zurückgeliefert wird daraufhin ein Byte Array mit angehängter digitaler Signatur. Diese Daten könnten danach noch durch einen Signaturvalidierungsprozess auf Integrität und Herkunft überprüft werden.
Code:
private byte[] SignData(byte[] data, X509Certificate2 cert)
{
    ContentInfo content = new ContentInfo(data);          // was signiert werden soll

    SignedCms signedMessage = new SignedCms(content);

    CmsSigner signer = new CmsSigner(cert);               // wer signiert

    signedMessage.ComputeSignature(signer);               // signieren der Daten

    byte[] signedBytes = signedMessage.Encode();          // Daten serialisieren

    return signedBytes;
}
Tomorrow will be cancelled due to lack of interest.

  Mit Zitat antworten Zitat