2012-04-11 17 views
16

Próbuję użyć HASHBYTES z SHA2_512 jako algo. Jednak gdy próbuję to zrobić w SQL Server Management Studio, wszystko, co otrzymuję, jest puste.SQL Server 2008 R2 HASHBYTES SHA2 zwraca wartość null

SELECT HASHBYTES('SHA1','test') //works 
SELECT HASHBYTES('SHA2','test') //returns null 

Co robię źle?
Czy istnieje sposób wyświetlenia wartości zwracanej z SELECT HASHBYTES('SHA2', 'test')?

dzięki

Odpowiedz

0

Oto przykład 128, 256 i 512 bitów

DECLARE @HashThis nvarchar(4000); 
SELECT @HashThis = CONVERT(nvarchar(4000),'This is a sample string'); 
SELECT HASHBYTES('SHA1', @HashThis); 
SELECT HASHBYTES('SHA2_256', @HashThis); 
SELECT HASHBYTES('SHA2_512', @HashThis); 
GO 
20

SQL Server obsługuje SHA2 512 w SQL Server 2012+.

SQL Server 2008 R2 i poniżej NIE obsługują SHA2_512. Oto HASHBYTES on MSDN.

+0

mmm dzięki za wskazanie go. Nie dostałem informacji o wersji na górze strony MSDN – shikarishambu

+0

to powinna być właściwa odpowiedź. To z powodu wersji sql. – jace

1
SELECT HASHBYTES('SHA2_256','test') 
SELECT HASHBYTES('SHA2_512','test') 
Powiązane problemy