Genera la firma digital de los datos.
CryptGenerateSignature ( datos ; algoritmo ; claveRSAprivada ; contraseñaClave )
datos
: cualquier expresión de texto desde la que generar una firma.
algoritmo
: el nombre del algoritmo criptográfico que se utilizará (consulte Función CryptAuthCode).
privateRSAKey
: texto que representa una clave RSA privada. De forma opcional, la clave puede estar cifrada.
contraseñaClave
: la contraseña con la que decodificar claveRSAprovada
. Si la claveRSAprivada
no está cifrada, se ignora este parámetro.
contenedor
FileMaker Pro 18.0 Advanced
Para generar una firma, esta función calcula, en primer lugar, el resumen del mensaje del parámetro de datos
utilizando el algoritmo especificado. A continuación, el resumen se codifica con el parámetro claveRSAprivada
. Si la clave privada está cifrada de por sí, deberá proporcionar la contraseña como el último parámetro, contraseñaClave
.
Una clave RSA privada sin codificar debe estar en este formato:
-----EMPEZAR CLAVE RSA PRIVADA-----
MIIJKQIBAAKCAgEAqqDiwrPQwVaJzOzfFVBdhNjRNRxghZVQ9a3S88so8piw0uRt
...
A4jh5ffbGA6rlv1kEt1Inq2XDnKASjnWQGltDWWTJFs/XBcfoFXHpYiVINmp
-----FINALIZAR CLAVE RSA PRIVADA-----
Una clave RSA privada debe estar en este formato:
-----EMPEZAR CLAVE RSA PRIVADA-----
Proc-Type: 4,CODIFICADA
DEK-Info: DES-EDE3-CBC,B2EFE673714F681D
gMvo1cn1+Sjch4cPXT/Mty0pILnsbM5SsBPadRJJQtrGrM8LkkrRNdxYRBeIGUMj
...
lHGJJBHogUW4Ig3/kd4ROVHusRYLtyyfz13A96tIl6Y7lu2L7alNWQ==
-----FINALIZAR CLAVE RSA PRIVADA-----
Para generar un par de claves RSA, puede usar el conjunto de herramientas OpenSSL. Consulte www.openssl.org.
Esta función devuelve una firma binaria de datos
como datos del contenedor, o devuelve "?" si algún parámetro no es válido. Puede convertir los datos del contenedor a texto utilizando Función Base64EncodeRFC o Función HexEncode.
•Esta función no se admite en las soluciones de tiempo de ejecución y devuelve "?".
Utiliza el algoritmo SHA-512 con una clave privada codificada para firmar los datos del campo de texto Table::TextToSign. La firma se devuelve como texto codificado en Base64.
Base64EncodeRFC ( 4648 ;
CryptGenerateSignature (
Table::TextToSign ; "SHA512" ; Table::PrivateRSAKey ; $Password
)
)