Kategorien:

Zeichenfolgen- und Binärfunktionen (Kryptografischer Hash)

SHA1_BINARY

Gibt eine 20-Byte-Binärdatei zurück, die den 160-Bit-SHA-1-Nachrichtenhash enthält.

Syntax

SHA1_BINARY(<msg>)

Argumente

Nachricht

Ein Zeichenfolgenausdruck, die zu hashende Nachricht.

Nutzungshinweise

  • Die SHA1-Funktionsfamilie wird hauptsächlich zur Abwärtskompatibilität mit anderen Systemen bereitgestellt. Für eine sicherere Verschlüsselung empfiehlt Snowflake die Verwendung der SHA2-Funktionsfamilie.

Beispiele

SELECT sha1_binary('Snowflake');

------------------------------------------+
         SHA1_BINARY('SNOWFLAKE')         |
------------------------------------------+
 FDA76B0BCC1E87CF259B1D1E3271D76F590FB5DD |
------------------------------------------+

Der Datentyp der Ausgabe ist BINARY und kann in einer BINARY-Spalte gespeichert werden:

Erstellen Sie eine Tabelle, und füllen Sie diese:

CREATE TABLE sha_table(
    v VARCHAR, 
    v_as_sha1 VARCHAR,
    v_as_sha1_hex VARCHAR,
    v_as_sha1_binary BINARY,
    v_as_sha2 VARCHAR,
    v_as_sha2_hex VARCHAR,
    v_as_sha2_binary BINARY
    );
INSERT INTO sha_table(v) VALUES ('AbCd0');
UPDATE sha_table SET 
    v_as_sha1 = SHA1(v),
    v_as_sha1_hex = SHA1_HEX(v),
    v_as_sha1_binary = SHA1_BINARY(v),
    v_as_sha2 = SHA2(v),
    v_as_sha2_hex = SHA2_HEX(v),
    v_as_sha2_binary = SHA2_BINARY(v)
    ;

Hier sind die entsprechende Abfrage und die Ausgabe (beachten Sie, dass die Ausgabe für die Anzeige implizit in eine vom Benutzer lesbare Form umgewandelt wird, das in diesem Fall eine Zeichenfolge aus hexadezimalen Ziffern ist):

SELECT v, v_as_sha1_binary
  FROM sha_table
  ORDER BY v;
+-------+------------------------------------------+
| V     | V_AS_SHA1_BINARY                         |
|-------+------------------------------------------|
| AbCd0 | 9DDB991863D53B35A52C490DB256207C776AB8D8 |
+-------+------------------------------------------+