亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

SQL Server 數(shù)據(jù)庫(kù)中的 MD5 和 SHA1

系統(tǒng) 1805 0
MD5 和 SHA1 是一種單向加密算法,常用于密碼的驗(yàn)證等需要加密操作的場(chǎng)合,在一般情況下,開(kāi)發(fā)人員可以通過(guò) Delphi 或 PHP 這類(lèi)語(yǔ)言自己編寫(xiě)相關(guān)函數(shù)或者使用自帶的函數(shù),然后將加密過(guò)的結(jié)果根據(jù)需要存儲(chǔ)到數(shù)據(jù)庫(kù)中。

但在某些情況下,可能需要在數(shù)據(jù)庫(kù)端計(jì)算 MD5 和 SHA1 哈希值,比如說(shuō)在存儲(chǔ)過(guò)程或自定義函數(shù)內(nèi)部。開(kāi)源數(shù)據(jù)庫(kù) MySQL 就提供類(lèi)似這樣的內(nèi)置函數(shù),以下語(yǔ)句就可以分別顯示字符串 “12345” 的 MD5 和 SHA1 值,返回結(jié)果為字符串型:

SELECT md5 ( '12345' ) ;
SELECT sha1 ( '12345' ) ;

但 SQL Server 中沒(méi)有直接提供類(lèi)似這樣的函數(shù)。在 SQL Server 2000 中,如果需要加密可以使用未文檔化的 pwdencrypt() pwdcompare() 函數(shù)來(lái)加密數(shù)據(jù)和比較結(jié)果,加密方式是微軟自己的算法,隨著 SQL Server 版本的升級(jí),函數(shù)的加密結(jié)果可能也會(huì)有所不同。

不過(guò)在 SQL Server 2005 中,微軟提供了一個(gè)函數(shù) hashbytes() 可以用來(lái)計(jì)算一個(gè)字符串的 MD5 和 SHA1 值,以下語(yǔ)句分別獲得字符串 “12345” 的 MD5 和 SHA1:

SELECT hashbytes ( 'MD5' , '12345' ) ;
SELECT hashbytes ( 'SHA1' , '12345' ) ;

hashbytes() 函數(shù)的返回結(jié)果是 varbinary 型,也就是以 0x 開(kāi)頭 16 進(jìn)制形式的二進(jìn)制數(shù)據(jù),不過(guò)通常情況下,我們需要的都是字符串型的數(shù)據(jù),很多人首先想到的可能就是用 CAST 或 Convert 函數(shù)將varbinary 轉(zhuǎn)換為 varchar,但這樣轉(zhuǎn)換后的結(jié)果會(huì)是亂碼,正確轉(zhuǎn)換 varbinary 可變長(zhǎng)度二進(jìn)制型數(shù)據(jù)到 16 進(jìn)制字符串應(yīng)該使用系統(tǒng)內(nèi)置函數(shù) sys.fn_VarBinToHexStr() ,如下所示:

SELECT sys.fn_VarBinToHexStr ( hashbytes ( 'MD5' , '12345' ) )

sys.fn_varBinToHexStr() 函數(shù)只在 SQL Server 2005 中有效,在 SQL Server 2000 中實(shí)現(xiàn)相同功能使用系統(tǒng)擴(kuò)展存儲(chǔ)過(guò)程: master..xp_varBinToHexStr

?

?

來(lái)源: http://blog.chinaunix.net/uid-10697776-id-2935575.html

SQL Server 數(shù)據(jù)庫(kù)中的 MD5 和 SHA1


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 视频在线欧美 | 免费视频 久久久 | 亚洲天天做日日做天天欢毛片 | 久久久久久久久久福利 | 一级a做爰片欧欧美毛片4 | 精品国产三级v | 尤物精品视频在线观看 | 国外欧美一区另类中文字幕 | 欧美aaaaaaaa| 亚洲免费视频一区二区三区 | 日韩国产成人精品视频人 | 夜精品a一区二区三区 | 一日本道加勒比高清一二三 | 欧美亚洲综合一区 | 国产一区二区三区成人久久片 | 色综合天天综合网国产人 | 不卡的毛片 | 国产黄色91| 欧美成人免费观看国产 | 久久中文字幕网 | 黄在线观看网站 | 国产a高清 | 深夜成人影院 | 一级特黄aaa免费 | 欧美成人免费在线视频 | 国产成人青青热久免费精品 | 亚洲一区二区三区精品国产 | 色视频播放 | 色成网| 91精品久久久久久久久网影视 | 亚洲精品国产美女在线观看 | 欧美日韩精品高清一区二区 | 九九久久国产精品大片 | 欧美日韩视频精品一区二区 | 免费观看一级欧美大 | 日韩免费黄色片 | 中文字幕亚洲综合精品一区 | 激情五月色婷婷丁香伊人 | 97精品国产综合久久久久久欧美 | 天天躁日日躁aaaaxxxx | 91在线视频网址 |