HASHBYTES (Transact-SQL)

Gibt den MD2-, MD4-, MD5-, SHA-, SHA1- oder SHA2-Hash der Eingabe zurück.

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen

Syntax

HASHBYTES ( '<algorithm>', { @input | 'input' } ) 

<algorithm>::= MD2 | MD4 | MD5 | SHA | SHA1 | SHA2_256 | SHA2_512 

Argumente

  • '<Algorithmus>'
    Identifiziert den für das Hashing der Eingabe zu verwendenden Hashalgorithmus. Dies ist ein erforderliches Argument ohne Standard. Die einfachen Anführungszeichen sind obligatorisch.

  • @input
    Gibt eine Variable mit den Daten an, für die das Hashing ausgeführt werden soll. @input ist vom Datentyp varchar, nvarchar oder varbinary.

  • ' input '
    Gibt eine Zeichenfolge an, für die das Hashing ausgeführt werden soll.

Rückgabewert

varbinary (maximal 8.000 Byte)

Hinweise

Zulässige Eingabewerte sind auf 8000 Bytes beschränkt. Die Ausgabe entspricht dem Algorithmusstandard: 128 Bits (16 Bytes) für MD2, MD4 und MD5; 160 Bits (20 Bytes) für SHA und SHA1; 256 Bits (32 Bytes) für SHA2_256 und 512 Bits (64 Bytes) für SHA2_512.

Beispiele

Im folgenden Beispiel wird der SHA1-Hash der in der @HashThis-Variablen gespeicherten nvarchar-Daten zurückgegeben.

DECLARE @HashThis nvarchar(4000);
SELECT @HashThis = CONVERT(nvarchar(4000),'dslfdkjLK85kldhnv$n000#knf');
SELECT HASHBYTES('SHA1', @HashThis);
GO

Siehe auch

Konzepte

Auswählen eines Verschlüsselungsalgorithmus