Returns the MD2, MD4, MD5, SHA, or SHA1 hash of its input.
Transact-SQL Syntax Conventions
HashBytes ( '<algorithm>', { @input | 'input' } )
<algorithm>::= MD2 | MD4 | MD5 | SHA | SHA1
-
'<algorithm>'
-
Identifies the hashing algorithm to be used to hash the input. This is a required argument with no default. The single quotation marks are required.
-
@input
-
Specifies a variable containing the data to be hashed. @input is varchar, nvarchar, or varbinary.
-
'
input
'
-
Specifies a string to be hashed.
varbinary (maximum 8000 bytes)
Allowed input values are limited to 8000 bytes. The output conforms to the algorithm standard: 128 bits (16 bytes) for MD2, MD4, and MD5; 160 bits (20 bytes) for SHA and SHA1.
The following example returns the SHA1 hash of the nvarchar data stored in variable @HashThis.
DECLARE @HashThis nvarchar(4000);
SELECT @HashThis = CONVERT(nvarchar(4000),'dslfdkjLK85kldhnv$n000#knf');
SELECT HashBytes('SHA1', @HashThis);
GO
Other Resources
Choosing an Encryption Algorithm
Help and Information
Getting SQL Server 2008 Assistance