2012-04-11 14 views
16

लौटाता है मैं एसएचए 2_512 के साथ अहंकार के रूप में हैशबेट्स का उपयोग करने की कोशिश कर रहा हूं। हालांकि जब मैं इसे SQL सर्वर प्रबंधन स्टूडियो में करने की कोशिश करता हूं जो मुझे मिलता है वह शून्य है।एसक्यूएल सर्वर 2008 आर 2 हैशबेट्स SHA2 शून्य

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

मैं क्या गलत कर रहा हूं?
SELECT HASHBYTES('SHA2', 'test') से वापसी मूल्य देखने का कोई तरीका है?

धन्यवाद

उत्तर

0

यहाँ 128, 256 और 512 बिट्स

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

एसक्यूएल सर्वर एसक्यूएल सर्वर 2012+ में SHA2 512 का समर्थन करता है।

SQL Server 2008 R2 और नीचे SHA2_512 का समर्थन नहीं करते हैं। यहां HASHBYTES on MSDN है।

+0

ओह, ऐसा उनका कहना है के लिए धन्यवाद के साथ एक छोटा सा उदाहरण। मैंने MSDN पृष्ठ – shikarishambu

+0

के शीर्ष पर संस्करण जानकारी नहीं पकड़ी, यह सही उत्तर होना चाहिए। यह एसक्यूएल संस्करण की वजह से है। – jace

1
SELECT HASHBYTES('SHA2_256','test') 
SELECT HASHBYTES('SHA2_512','test') 
संबंधित मुद्दे