Genererar den digitala signaturen för data.
CryptGenerateSignature ( data ; algoritm ; privatRSANyckel ; nyckelLösenord )
data – ett textuttryck som en signatur ska genereras från.
algoritm – namnet på den kryptografiska algoritm som ska användas (se funktionen CryptAuthCode).
privatRSANyckel
– text som representerar en privat (hemlig) RSA-nyckel. Nyckeln kan vara krypterad.
nyckelLösenord
– lösenordet som avkrypterar privatRSANyckel
. Om privatRSANyckel
inte är krypterad ignoreras den här parametern.
container
FileMaker Pro 18.0 Advanced
För att skapa en signatur beräknar den här funktionen först meddelandesammandraget för parametern data
med hjälp av den angivna algoritmen. Sammandraget krypteras med parametern privatRSANyckel
. Om den privata nyckeln själv är krypterad måste du ange lösenordet som den sista parametern, nyckelLösenord
.
En okrypterad privat RSA-nyckel måste ha det här formatet:
-----BEGIN RSA PRIVATE KEY-----
MIIJKQIBAAKCAgEAqqDiwrPQwVaJzOzfFVBdhNjRNRxghZVQ9a3S88so8piw0uRt
...
A4jh5ffbGA6rlv1kEt1Inq2XDnKASjnWQGltDWWTJFs/XBcfoFXHpYiVINmp
-----END RSA PRIVATE KEY-----
En krypterad privat RSA-nyckel måste ha det här formatet:
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,B2EFE673714F681D
gMvo1cn1+Sjch4cPXT/Mty0pILnsbM5SsBPadRJJQtrGrM8LkkrRNdxYRBeIGUMj
...
lHGJJBHogUW4Ig3/kd4ROVHusRYLtyyfz13A96tIl6Y7lu2L7alNWQ==
-----END RSA PRIVATE KEY-----
Du kan använda OpenSSL-verktygen för att skapa ett RSA-nyckelpar. Se www.openssl.org.
Den här funktionen returnerar en binär signatur av data
som containerdata, eller också returnerar den "?" om någon av parametrarna är ogiltig. Du kan konvertera containerdata till text med funktionen Base64EncodeRFC eller funktionen HexEncode.
•Denna funktion stöds inte i runtime-lösningar och returnerar "?".
Använder SHA-512-algoritmen med en krypterad privat nyckel för att signera data i textfältet Tabell::TextAttSignera. Signaturen returneras som Base64-kodad text.
Base64EncodeRFC ( 4648 ;
CryptGenerateSignature (
Tabell::TextAttSignera ; "SHA512" ; Tabell::PrivatRSANyckel ; $Lösenord
)
)