日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

SQL Server 2005數(shù)據(jù)加密技術(shù)應(yīng)用研究

瀏覽:77日期:2023-11-01 11:20:44

摘要 數(shù)據(jù)加密是SQL Server 2005新增的數(shù)據(jù)安全特性,這對(duì)應(yīng)用程序開(kāi)發(fā)者來(lái)說(shuō)是非常重要的改進(jìn)。本文從程序開(kāi)發(fā)者角度,探討SQL Server 2005數(shù)據(jù)加密特性以及如何運(yùn)用該特性保證系統(tǒng)的數(shù)據(jù)安全。

關(guān)鍵詞 SQL Server 2005、數(shù)據(jù)加密、數(shù)據(jù)安全

SQL Server 2005是微軟開(kāi)始實(shí)施其“可信賴(lài)計(jì)算” 計(jì)劃以來(lái)的第一個(gè)主要的產(chǎn)品,它提供了豐富的安全特性,為企業(yè)數(shù)據(jù)提供安全保障。對(duì)開(kāi)發(fā)人員來(lái)說(shuō),最關(guān)注的是如何在程序設(shè)計(jì)過(guò)程中應(yīng)用這些特性來(lái)保護(hù)數(shù)據(jù)庫(kù)中的數(shù)據(jù)安全。本文將從應(yīng)用程序開(kāi)發(fā)者角度探討基于SQL Server 2005數(shù)據(jù)加密特性的應(yīng)用。

SQL Server 2005數(shù)據(jù)加密技術(shù)

數(shù)據(jù)用數(shù)字方式存儲(chǔ)在服務(wù)器中并非萬(wàn)無(wú)一失。實(shí)踐證明有太多的方法可以智取SQL Server 2000認(rèn)證保護(hù),最簡(jiǎn)單的是通過(guò)使用沒(méi)有口令的sa賬號(hào)。盡管SQL Server 2005遠(yuǎn)比它以前的版本安全,但攻擊者還是有可能獲得存儲(chǔ)的數(shù)據(jù)。因此,數(shù)據(jù)加密成為更徹底的數(shù)據(jù)保護(hù)戰(zhàn)略,即使攻擊者得以存取數(shù)據(jù),還不得不解密,因而對(duì)數(shù)據(jù)增加了一層保護(hù)。

SQL Server 2000以前的版本沒(méi)有內(nèi)置數(shù)據(jù)加密功能,若要在SQL Server 2000中進(jìn)行數(shù)據(jù)加密,不得不買(mǎi)第三家產(chǎn)品,然后在服務(wù)器外部作COM調(diào)用或者是在數(shù)據(jù)送服務(wù)器之前在客戶端的應(yīng)用中執(zhí)行加密。這意味著加密的密鑰或證書(shū)不得不由加密者自己負(fù)責(zé)保護(hù),而保護(hù)密鑰是數(shù)據(jù)加密中最難的事,所以即使很多應(yīng)用中數(shù)據(jù)已被很強(qiáng)的加密過(guò),數(shù)據(jù)保護(hù)仍然很弱。

SQL Server 2005通過(guò)將數(shù)據(jù)加密作為數(shù)據(jù)庫(kù)的內(nèi)在特性解決了這個(gè)問(wèn)題。它除了提供多層次的密鑰和豐富的加密算法外,最大的好處是用戶可以選擇數(shù)據(jù)服務(wù)器管理密鑰。SQL Server 2005服務(wù)器支持的加密算法如下:

⑴ 對(duì)稱(chēng)式加密(Symmetric Key Encryption):

對(duì)稱(chēng)式加密方式對(duì)加密和解密使用相同的密鑰。通常,這種加密方式在應(yīng)用中難以實(shí)施,因?yàn)橛猛环N安全方式共享密鑰很難。但當(dāng)數(shù)據(jù)儲(chǔ)存在SQL Server中時(shí),這種方式很理想,你可以讓服務(wù)器管理它。SQL Server 2005 提供RC4、RC2、DES 和 AES 系列加密算法。

⑵ 非對(duì)稱(chēng)密鑰加密(Asymmetric Key Encryption):

非對(duì)稱(chēng)密鑰加密使用一組公共/私人密鑰系統(tǒng),加密時(shí)使用一種密鑰,解密時(shí)使用另一種密鑰。公共密鑰可以廣泛的共享和透露。當(dāng)需要用加密方式向服務(wù)器外部傳送數(shù)據(jù)時(shí),這種加密方式更方便。SQL Server 2005 支持 RSA 加密算法以及 512 位、1,024 位和 2,048 位的密鑰強(qiáng)度。

⑶ 數(shù)字證書(shū)(Certificate):

數(shù)字證書(shū)是一種非對(duì)稱(chēng)密鑰加密,但是,一個(gè)組織可以使用證書(shū)并通過(guò)數(shù)字簽名將一組公鑰和私鑰與其擁有者相關(guān)聯(lián)。SQL Server 2005 支持“因特網(wǎng)工程工作組”(IETF) X.509 版本 3 (X.509v3) 規(guī)范。一個(gè)組織可以對(duì) SQL Server 2005 使用外部生成的證書(shū),或者可以使用 SQL Server 2005 生成證書(shū)。

SQL Server 2005 采用多級(jí)密鑰來(lái)保護(hù)它內(nèi)部的密鑰和數(shù)據(jù),如下圖所示:

SQL Server 2005數(shù)據(jù)加密技術(shù)應(yīng)用研究圖1 SQL Server 2005采用多級(jí)密鑰保護(hù)它內(nèi)部的密鑰和數(shù)據(jù)圖中引出箭頭的密鑰或服務(wù)用于保護(hù)箭頭所指的密鑰。所以服務(wù)主密鑰(service master key)保護(hù)數(shù)據(jù)庫(kù)主密鑰(database master keys),而數(shù)據(jù)庫(kù)主密鑰又保護(hù)證書(shū)(certificates)和非對(duì)稱(chēng)密鑰(asymmetric keys)。而最底層的對(duì)稱(chēng)性密鑰(symmetric keys)被證書(shū)、非對(duì)稱(chēng)密鑰或其他的對(duì)稱(chēng)性密鑰保護(hù)(箭頭又指回它本身)。用戶只需通過(guò)提供密碼來(lái)保護(hù)這一系列的密鑰。圖中頂層的服務(wù)主密鑰,安裝SQL Server 2005新實(shí)例時(shí)自動(dòng)產(chǎn)生和安裝,用戶不能刪除此密鑰,但數(shù)據(jù)庫(kù)管理員能對(duì)它進(jìn)行基本的維護(hù),如備份該密鑰到一個(gè)加密文件,當(dāng)其危及到安全時(shí)更新它,恢復(fù)它。服務(wù)主密鑰由DPAPI(Data Protection API)管理。DPAPI在Windows 2000 中引入,建立于Windows的Crypt32 API之上。SQL Server 2005 管理與DPAPI的接口。服務(wù)主密鑰本身是對(duì)稱(chēng)式加密,用來(lái)加密服務(wù)器中的數(shù)據(jù)庫(kù)主密鑰。數(shù)據(jù)庫(kù)主密鑰與服務(wù)主密鑰不同,在加密數(shù)據(jù)庫(kù)中數(shù)據(jù)之前,必須由數(shù)據(jù)庫(kù)管理員創(chuàng)建數(shù)據(jù)庫(kù)主密鑰。通常管理員在產(chǎn)生該密鑰時(shí),提供一個(gè)口令,所以它用口令和服務(wù)主密鑰來(lái)加密。如果有足夠的權(quán)限,用戶可以在需要時(shí)顯式地或自動(dòng)地打開(kāi)該密鑰。下面是產(chǎn)生數(shù)據(jù)庫(kù)主密鑰的T-SQL代碼示例:USE EncryptionDBCREATE MASTER KEY ENCRYPTION BY PASSWORD = 'UTY6%djzZ8S7RyL' 每個(gè)數(shù)據(jù)庫(kù)只有一個(gè)數(shù)據(jù)庫(kù)主密鑰。可以用ALTER MASTR KEY語(yǔ)句來(lái)刪除加密,更改口令或刪除數(shù)據(jù)庫(kù)主密鑰。通常這由數(shù)據(jù)庫(kù)管理員來(lái)負(fù)責(zé)做這些。有了數(shù)據(jù)庫(kù)主密鑰,就可以著手加密數(shù)據(jù)。T-SQL有置于其內(nèi)的加密支持。使用CREATE語(yǔ)句創(chuàng)建各種密碼,ALTER語(yǔ)句修改他們。例如要?jiǎng)?chuàng)建對(duì)稱(chēng)式加密,可以通過(guò)一對(duì)函數(shù)EncryptByKey 和 DecryptByKey來(lái)完成。數(shù)據(jù)加密技術(shù)應(yīng)用解析下面通過(guò)實(shí)例來(lái)探討SQL Server 2005數(shù)據(jù)加密與解密技術(shù)的實(shí)現(xiàn)。假設(shè)有一張Customer 表,表中有字段 customer ID、 name、 city 和各種信用卡細(xì)節(jié)。其中信用卡細(xì)節(jié)需要加密而其他數(shù)據(jù)不需要。假設(shè)User1有對(duì)稱(chēng)式密鑰,并用該密鑰登錄,運(yùn)行相應(yīng)的代碼加密數(shù)據(jù)。⑴ 數(shù)據(jù)加密① 產(chǎn)生密鑰:在含有Customers 表的數(shù)據(jù)庫(kù)中使用Triple DES作為加密算法,生成對(duì)稱(chēng)式密鑰。本例中,密鑰本身由已經(jīng)存在在數(shù)據(jù)庫(kù)中的證書(shū)保護(hù),如圖一所示,對(duì)稱(chēng)密碼受非對(duì)稱(chēng)密碼和存在的其他對(duì)稱(chēng)式密鑰保護(hù)。CREATE SYMMETRIC KEY User1SymmetricKeyCertAUTHORIZATION User1 WITH ALGORITHM = TRIPLE_DES ENCRYPTION BY CERTIFICATE User1Certificate ② 打開(kāi)密鑰:對(duì)稱(chēng)式密鑰使用前必須顯式打開(kāi),所以接下來(lái)打開(kāi)它,重新找回密碼,解密它,并放它在受保護(hù)的服務(wù)器內(nèi)存中,準(zhǔn)備使用。OPEN SYMMETRIC KEY User1SymmetricKeyCertDECRYPTION BY CERTIFICATE User1Certificate ③ 加密數(shù)據(jù):在下面的代碼中,使用正常的T-SQL INSERT語(yǔ)句將一行數(shù)據(jù)插入表中,id、name和city 用明文保存,信用卡類(lèi)型、號(hào)碼以及有潛在機(jī)密的客戶注釋用加密方式儲(chǔ)存,用Triple DES加密算法加密數(shù)據(jù)。INSERT INTO Customer VALUES (4, 'John Doe', 'Fairbanks',EncryptByKey(Key_GUID('User1SymmetricKeyCert'), 'Amex'),EncryptByKey(Key_GUID('User1SymmetricKeyCert'), '1234-5678-9009-8765'),EncryptByKey(Key_GUID('User1SymmetricKeyCert'), 'Window shopper. Spends $5 at most.')) 加密完成后,關(guān)閉它,釋放內(nèi)存,以防它被誤用。CLOSE SYMMETRIC KEY User1SymmetricKeyCert 以上是整個(gè)的數(shù)據(jù)加密的操作過(guò)程。它沒(méi)有混亂的密碼管理,也不用調(diào)用特別的算法。儲(chǔ)存加密數(shù)據(jù)的字段是varbinary類(lèi)型數(shù)據(jù),其長(zhǎng)度足以儲(chǔ)存擴(kuò)展的數(shù)據(jù)(加密數(shù)據(jù)比明文需要更多的空間,有時(shí)候多很多)。下圖為對(duì)Customer 表運(yùn)行正常的SELECT * 語(yǔ)句顯示的帶有加密數(shù)據(jù)的結(jié)果:圖2 加密后的數(shù)據(jù)的查詢結(jié)果⑵ 數(shù)據(jù)解密要解密已加密的數(shù)據(jù),你需要重新打開(kāi)對(duì)稱(chēng)式加密。使用DecryptByKey函數(shù)讀數(shù)據(jù),然后關(guān)閉對(duì)稱(chēng)式加密。結(jié)果及相應(yīng)的代碼如下。OPEN SYMMETRIC KEY User1SymmetricKeyCertDECRYPTION BY CERTIFICATE User1CertificateSELECT CustID, Name, City,CONVERT(VARCHAR, DecryptByKey(CreditCardType)) AS CardType,CONVERT(VARCHAR, DecryptByKey(CreditCardNumber))AS CardNumber,CONVERT(VARCHAR, DecryptByKey(Notes)) AS NotesFROM Customer WHERE CustID = 4CLOSE SYMMETRICKEYUser1SymmetricKeyCert 圖3 對(duì)加密數(shù)據(jù)進(jìn)行解密后的結(jié)果這個(gè)例子顯示了讓SQL Server 2005為你管理密鑰的一種方法。但實(shí)際上,用戶總是選擇自己提供一個(gè)口令的方式,用RC4算法產(chǎn)生對(duì)稱(chēng)密碼。代碼如下:CREATE SYMMETRIC KEY User2SymmetricKeyPwdAUTHORIZATION User2WITH ALGORITHM = RC4ENCRYPTION BY PASSWORD = 'sdylvxF&imeG3FP' SQL Server 2005產(chǎn)生一個(gè)基于用戶提供的口令的密鑰來(lái)加密數(shù)據(jù)。除非明確指定,否則口令不保存在SQL Server 2005中,用戶必須保護(hù)好自己的口令,否則任何一個(gè)知道口令的人都可以解密數(shù)據(jù)。如果認(rèn)為對(duì)存儲(chǔ)在數(shù)據(jù)庫(kù)中的數(shù)據(jù)加密完全是浪費(fèi)處理器時(shí)間和存儲(chǔ)空間那就錯(cuò)了。SQL Server 2005中的數(shù)據(jù)加密是一個(gè)非凡的特性,它為客戶的數(shù)據(jù)提供了一個(gè)重要的保護(hù)層。但應(yīng)用時(shí)要注意,只對(duì)那些敏感機(jī)密的數(shù)據(jù)進(jìn)行保護(hù),因?yàn)榧用芟姆?wù)器處理器大量的資源,如果對(duì)一個(gè)有一千萬(wàn)條記錄的表的每個(gè)字段都加密的話,運(yùn)行一條沒(méi)有Where 子句的SELECT 就可能導(dǎo)致服務(wù)器性能的崩潰。
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲精品观看| 久久久久99| 亚洲黄色影院| 美女网站一区| 日韩视频二区| 亚洲免费一区二区| 在线观看亚洲精品福利片| 麻豆精品网站| 蜜臀久久99精品久久一区二区 | 欧美日韩中出| 91国内精品| 美女视频黄 久久| 久久精品国产99国产| 天堂а√在线最新版中文在线| 日韩毛片视频| 亚洲一区二区三区高清不卡| 免费看精品久久片| 国产日韩欧美三区| 日韩一区二区在线免费| 日韩亚洲在线| 国产精品观看| 99久久九九| 91精品啪在线观看国产18| 欧美69视频| 亚洲人成网77777色在线播放 | 麻豆视频一区二区| 久久久一二三| 亚洲香蕉久久| 国产美女高潮在线| 免费的成人av| 中文一区一区三区高中清不卡免费| 国产一区清纯| 国产精品久久久久av蜜臀| 免费视频亚洲| 国产精品亚洲四区在线观看| 色乱码一区二区三区网站| 婷婷精品进入| 国产精品调教视频| 亚洲欧洲午夜| 久久精品国产成人一区二区三区| 国产精品日本| 水蜜桃久久夜色精品一区| 色综合视频一区二区三区日韩 | 91久久久精品国产| 国产精品主播| 亚洲精品韩国| 一区视频在线| 亚洲一级少妇| 国产精品啊啊啊| 日韩欧美美女在线观看| 日韩精品免费一区二区三区| 国产欧美三级| 日韩一二三区在线观看| av一区二区高清| 成人美女视频| 精品亚洲成人| 亚洲人亚洲人色久| 久久福利一区| 国产精品日本| 国产精品婷婷| 蜜臀久久99精品久久久久宅男| 久久精品影视| 99精品美女| 免费视频一区三区| 午夜欧美视频| 尤物网精品视频| 一本色道精品久久一区二区三区| 久久伦理在线| 欧美特黄一级| 日韩在线观看一区二区| 视频一区二区三区中文字幕| 亚洲女同一区| 91九色精品国产一区二区| 日韩天堂av| 色8久久久久| 国产高清精品二区| 久久免费精品| 精品日韩视频| 夜夜嗨网站十八久久| 日韩精品视频网站| 日韩美女国产精品| 麻豆免费精品视频| 999国产精品999久久久久久| 精品中文一区| 中文在线日韩| 久草精品视频| 在线观看精品| 免费日韩av片| 精品黄色一级片| 伊人久久大香线蕉av不卡| 亚洲伊人精品酒店| 亚洲精品成人图区| 午夜在线视频观看日韩17c| 日本成人精品| 欧美色图一区| 国产麻豆精品| 美女网站一区| 精品网站aaa| 亚洲综合专区| 国产99亚洲| 国产精品xxxav免费视频| 99精品综合| 四虎在线精品| 不卡一区2区| 国产一区二区三区四区五区传媒| 欧美日韩国产一区精品一区| 国产精品一在线观看| 日本亚洲欧美天堂免费| 亚洲色图国产| 最新国产精品久久久| 日韩亚洲精品在线观看| 四虎国产精品免费久久| 日韩国产在线不卡视频| 免费视频久久| 国产二区精品| 欧美日韩水蜜桃| 国产一区一一区高清不卡| 免费久久99精品国产自在现线| 神马久久午夜| 久久精品一区二区国产| 日本成人在线网站| 亚洲bt欧美bt精品777| 国产一区二区高清| 亚洲午夜av| 99久久婷婷| 欧美99久久| 1024精品一区二区三区| 亚洲三级欧美| 福利一区二区三区视频在线观看| 国产亚洲精品美女久久| 日本少妇一区二区| 88久久精品| 亚洲欧美日韩专区| 欧美日韩一区二区三区四区在线观看 | 日本vs亚洲vs韩国一区三区二区| 中国女人久久久| 亚洲综合欧美| 最新日韩av| 免费观看在线综合色| 日本不卡视频在线| 国产精品一区三区在线观看| 国产日韩视频| 亚洲欧洲高清| 亚洲一区二区免费看| 日本不卡视频在线观看| 欧美激情一区| 国产在线看片免费视频在线观看| 高清av不卡| 久久最新视频| 国产高清亚洲| 久久久久久美女精品| 婷婷亚洲综合| 日本综合精品一区| 精品视频97| 国产精品毛片在线| 国产极品模特精品一二| 色爱av综合网| 日本一区免费网站| а√天堂中文在线资源8| 欧美特黄一区| 久久99久久久精品欧美| 精品一区三区| 国产精品99精品一区二区三区∴| 国产在线|日韩| 亚洲精品乱码| 成人日韩在线观看| 日韩专区视频网站| 成人国产精品| 一区二区国产精品| 婷婷激情一区| 国产欧美在线观看免费| 免费观看久久av| 国产伦一区二区三区| 男女精品网站| 日韩欧美视频专区| 国产精品中文字幕亚洲欧美| 国产综合欧美| www.51av欧美视频| 国产精品伊人| 日韩高清一区在线 | 日本一区中文字幕| 日韩在线观看| 国产精品17p| 欧美日韩夜夜| 亚洲精品麻豆| 在线国产日韩| 免费人成网站在线观看欧美高清| 久久天堂av| 黄色在线网站噜噜噜| 麻豆一区在线| 美女国产精品久久久| 国产精品中文字幕制服诱惑| 日韩影片在线观看| 亚洲一区二区三区久久久| 亚洲精品在线观看91| 国产成年精品| 色网在线免费观看| 日韩精品水蜜桃| 亚洲国产不卡| 天堂成人免费av电影一区 |