Zertifizierungsverschlüsselung – Umfang
Die Zertifizierungsverschlüsselung Die API stellt Methoden zum Verschlüsseln von Zertifikaten in bereichsbezogenen Anwendungen bereit.
Verwenden Sie diese Methoden, um einen Hash für das Zertifikat zu generieren, Daten mit einem privaten Schlüssel zu signieren und einen Nachrichtenauthentifizierungscode zu generieren.
CertificateEncryption – CertificateEncryption()
Instanziiert ein CertificateEncryption-Objekt in einer bereichsbezogenen Anwendung.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
CertificateEncryption – generateMac (Zeichenfolgenschlüssel, Zeichenfolgenalgorithmus, Zeichenfolgendaten)
Generiert den Nachrichtenauthentifizierungscode (MAC), der zum Authentifizieren einer Nachricht verwendet wird.
| Name | Typ | Beschreibung |
|---|---|---|
| key | Zeichenfolge | Schlüssel, der zum Signieren der Nachricht verwendet werden soll. Muss Base64-codiert sein. |
| algorithm | Zeichenfolge | Algorithmus, der zum Generieren des MAC verwendet werden soll: HmacSHA256, HmacSHA1, HmacMD5 usw. |
| Daten | Zeichenfolge | Zu verarbeitende Daten. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | MAC im base64-Format. |
Dieses Beispiel zeigt, wie ein MAC mit „sample_key“ als Daten und „HmacSHA256“ als Algorithmus verwendet wird.
var mac = new CertificateEncryption;
var key = "sample_key";
key = gs.base64Encode(key);
mac.generateMac(key, "HmacSHA256", "sample_data");
CertificateEncryption – getThumbPrint(Zeichenfolge zertifikateID, Zeichenfolgenalgorithmus)
Generiert einen Hash (SHA-1, SHA-256 usw.) für das Zertifikat aus dem Trust Store-Zertifikat.
| Name | Typ | Beschreibung |
|---|---|---|
| Zertifikat-ID | Zeichenfolge | SYS_ID des Zertifikatdatensatzes in der Tabelle „X.509-Zertifikat“ [sys_certificate]. |
| algorithm | Zeichenfolge | Algorithmus, der zum Erstellen des Hashs verwendet werden soll, z. B. SHA-1, SHA-256 usw. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Fingerabdruck im base64-Format. |
Dieses Beispiel zeigt, wie der Fingerabdruck (Hash) für das AzureAAD-Zertifikat generiert wird.
//Create a GlideRecord to the certificate table
var x509GR = new GlideRecord('sys_certificate');
//If there is a certificate of a name of AzureAAD, get the certificate thumbprint
if(x509GR.get('name', 'AzureAAD')){
//Use the sys_id and algorithm we want to create a thumbprint
var thumbPrint = CertificateEncryption.getThumbPrint(x509GR.getUniqueValue(), "SHA-1");
//Print the created thumbprint
gs.print("Thumbprint for " + x509GR.getDisplayValue() + " is " + thumbPrint);
}
Ausgabe:
V1X+aguDBTZVVbWMGTXxdzJLmaY=
CertificateEncryption – getThumbPrintFromKeyStore(Zeichenfolge zertifikateID, Zeichenfolgenalias, Zeichenfolgenalgorithmus)
Generiert einen Hash (SHA-1, SHA-256 usw.) für das Zertifikat aus dem Schlüsselspeichereintrag.
| Name | Typ | Beschreibung |
|---|---|---|
| Zertifikat-ID | Zeichenfolge | SYS_ID des Zertifikatdatensatzes in der Tabelle „X.509-Zertifikat“ [sys_certificate]. |
| alias | Zeichenfolge | Aliasname für das Zertifikat. |
| algorithm | Zeichenfolge | Algorithmus, der zum Erstellen des Hashs verwendet werden soll, z. B. SHA-1, SHA-256 usw. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Fingerabdruck im base64-Format. |
CertificateEncryption – Sign (Zeichenfolge zertifikateID, Zeichenfolgenalias, Zeichenfolgenaliaspassword, Zeichenfolgenalgorithmus, ZeichenfolgendatatoSign)
Signiert die Daten mit dem privaten Schlüssel und dem angegebenen Algorithmus.
| Name | Typ | Beschreibung |
|---|---|---|
| Zertifikat-ID | Zeichenfolge | sys_ID des Zertifikatdatensatzes in der Tabelle „X.509-Zertifikat“ [sys_certificate]. |
| alias | Zeichenfolge | Name des privaten Schlüssels. |
| Aliaspassword | Zeichenfolge | Passwort für den privaten Schlüssel. |
| algorithm | Zeichenfolge | Zu verwendender Algorithmus. Muss einer der folgenden Werte sein:
|
| Datenzeichen | Zeichenfolge | Zu signierende Daten. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Signierte Daten im base64-Format. |
var ce = new CertificateEncryption;
ce.sign("recordID", "alias", "password", "SHA1withRSA", "sign this data");