MemVerify
Dieser Befehl prüft, ob die in (alpha3) angegebene Signatur zum öffentlichen Schlüssel (alpha2) und der im Memory-Objekt (obj) liegenden Nachricht passt. Im Parameter (int1) wird neben dem, verwendeten Verfahren, der Hash-Algorithmus sowie die Codierung des öffentlichen Schlüssels und die der Signatur angegeben.
Folgende Optionen (int1) sind möglich:
-
Typ der Signatur
_MemSignRSA: RSA-Signatur verifizieren_MemSignDSA: DSA-Signatur verifizieren
-
Hash-Verfahren
_MemHashMD5: MD5-Hash verwenden_MemHashRMD160: RIPEMD-160-Hash verwenden_MemHashSHA1: SHA-1-Hash verwenden_MemHashSHA256: SHA-256-Hash verwenden_MemHashSHA384: SHA-384-Hash verwenden_MemHashSHA512: SHA-512-Hash verwenden
-
Kodierung des Schlüssels
_MemKeyHex: Schlüssel liegt als hexadezimal kodierte Zeichenkette vor_MemKeyBase64: Schlüssel liegt Base64-kodierte Zeichenkette vor
-
Kodierung der Signatur
_MemSignatureHex: Signatur liegt Hex-Codiert vor_MemSignatureBase64: Signatur liegt Base64-Codiert vor
Der Paramter (int1) setzt sich aus der Kombination je einer Konstanten der Bereiche zusammen.
Der öffentliche Schlüssel (alpha2) muss im PKCS #1- (nur RSA) oder im X.509-Format (RSA oder DSA) vorliegen. Die Begin- und Endmarkierung dürfen nicht enthalten sein.
Optional kann mit den Argumenten (int4) die Position und (int5) die Länge der zu verwendenden Nachricht angegeben werden.
Über den Rückgabewert kann ermittelt werden, ob die Signatur zum öffentlichen Schlüssel (alpha2) und der Nachricht (obj) passt (_ErrOk) oder nicht (_ErrMemMsgVerify).
Mögliche Laufzeitfehler:
_ErrHdlInvalid: Der übergeben Deskriptor (obj) ist ungültig._ErrStringOverflow: Der Schlüssel (alpha2) ist länger als8192Zeichen._ErrValueInvalid: In den Optionen (int1) wurde eine ungültige oder unvollständige Kombination angegeben._ErrValueRange: Die angegeben Startposition (int4) oder die Länge des Bereiches (int5) ist zu groß.