Überprüft, ob eine digitale Signatur für die Daten gültig ist.
CryptVerifySignature ( Daten ; Algorithmus ; öffentlicherRSASchlüssel ; Signatur )
Daten
- beliebiger Textausdruck, der die Daten angibt, die mit Signatur
verglichen werden.
Algorithmus
- Name des zu verwendenden kryptografischen Algorithmus (siehe Funktion „CryptAuthCode“).
öffentlicherRSASchlüssel
- Text, der den öffentlichen RSA-Schlüssel PKCS #1 im PEM-Format angibt, der mit dem privaten Schlüssel für die Erstellung der Signatur
verglichen wird.
Signatur - die binäre RSA-Signatur, die mit Daten
verglichen wird, etwa dem Wert, den die Funktion „CryptGenerateSignature“ zurückgibt.
Zahl
FileMaker Pro 18.0 Advanced
Um eine Signatur zu verifizieren, vergleicht diese Funktion den Meldungsextrakt von Daten
(anhand des angegebenen Algorithmus) mit dem Extrakt, den die Entschlüsselung von Signatur
mit öffentlicherRSASchlüssel
ergab.
Ein öffentlicher RSA-Schlüssel muss folgendes Format aufweisen:
-----BEGIN PUBLIC KEY-----
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAqqDiwrPQwVaJzOzfFVBd
...
egkXva5cYBb8PNifmlPXVb8CAwEAAQ==
-----BEGIN PUBLIC KEY-----
Wenn die Signatur für die Daten gültig ist, gibt diese Funktion 1 (wahr) zurück. Wenn die Signatur ungültig ist, gibt sie 0 (falsch) zurück. Wenn einer der Parameter ungültig ist, gibt sie „?“ zurück.
•Diese Funktion wird in Runtime-Lösungen nicht unterstützt und gibt „?“ zurück.
Verwendet den SHA-512-Algorithmus, um den Extrakt von Tabelle::SignierterText zu generieren. Entschlüsselt die Base64-Kodierung der Signatur, die im Textfeld Tabelle::Signatur gespeichert ist, und gibt sie als Containerdaten zurück. Entschlüsselt die Signatur anhand des Werts im Feld Tabelle::öffentlicherRSASchlüssel und vergleicht den Signaturextrakt mit dem Extrakt auf der Basis des Felds Tabelle::SignierterText. Wenn die Signatur gültig ist, wird 1 zurückgegeben.
CryptVerifySignature (
Tabelle::SignierterText; "SHA512" ; Tabelle::öffentlicherRSASchlüssel ;
Base64Decode (
Tabelle::Signatur ; "sig.data"
)
)