MSSQL數(shù)據(jù)加密解密代碼
更新時(shí)間:2012年11月05日 17:04:53 作者:
這個(gè)是一個(gè)簡(jiǎn)單的例子 里面還涉及到 如 對(duì)稱密鑰加密使用證書解密,沒有涉及到
可以查看:
OPEN SYMMETRIC KEY 命令關(guān)于 對(duì)稱密鑰加密使用證書解密
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'password'
go
CREATE CERTIFICATE CertTest
with SUBJECT = 'Test Certificate'
GO
--創(chuàng)建非對(duì)稱密鑰
CREATE ASYMMETRIC KEY TestAsymmetric
WITH ALGORITHM = RSA_2048
ENCRYPTION BY PASSWORD = 'password1' ;
GO
ALTER ASYMMETRIC KEY TestAsymmetric WITH PRIVATE KEY (DECRYPTION BY PASSWORD = 'password1')
--DROP ASYMMETRIC KEY TestAsymmetric
--創(chuàng)建對(duì)稱密鑰
CREATE SYMMETRIC KEY TestSymmetric
WITH ALGORITHM = AES_256
ENCRYPTION BY PASSWORD = 'password' ;
GO
OPEN SYMMETRIC KEY TestSymmetric
DECRYPTION BY PASSWORD = 'password' ;
go
SELECT
ENCRYPTBYASYMKEY(ASYMKEY_ID ('TestAsymmetric'), name) ,
CAST(deCRYPTBYASYMKEY (ASYMKEY_ID( 'TestAsymmetric'),ENCRYPTBYASYMKEY (ASYMKEY_ID( 'TestAsymmetric'),name ) )
as nvarchar(200 )),
ENCRYPTBYCERT ( Cert_ID('CertTest' ),name),
CAST(deCRYPTBYCERT (Cert_ID ('CertTest'), ENCRYPTBYCERT (Cert_ID( 'CertTest'),name ))
as nvarchar (200)),
EncryptByKey ( KEY_GUID('TestSymmetric' ),name),
CAST(decryptByKey (EncryptByKey (KEY_GUID ('TestSymmetric'), name))
as nvarchar (200))
FROM sys .objects
復(fù)制代碼 代碼如下:
OPEN SYMMETRIC KEY 命令關(guān)于 對(duì)稱密鑰加密使用證書解密
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'password'
go
CREATE CERTIFICATE CertTest
with SUBJECT = 'Test Certificate'
GO
--創(chuàng)建非對(duì)稱密鑰
CREATE ASYMMETRIC KEY TestAsymmetric
WITH ALGORITHM = RSA_2048
ENCRYPTION BY PASSWORD = 'password1' ;
GO
ALTER ASYMMETRIC KEY TestAsymmetric WITH PRIVATE KEY (DECRYPTION BY PASSWORD = 'password1')
--DROP ASYMMETRIC KEY TestAsymmetric
--創(chuàng)建對(duì)稱密鑰
CREATE SYMMETRIC KEY TestSymmetric
WITH ALGORITHM = AES_256
ENCRYPTION BY PASSWORD = 'password' ;
GO
OPEN SYMMETRIC KEY TestSymmetric
DECRYPTION BY PASSWORD = 'password' ;
go
SELECT
ENCRYPTBYASYMKEY(ASYMKEY_ID ('TestAsymmetric'), name) ,
CAST(deCRYPTBYASYMKEY (ASYMKEY_ID( 'TestAsymmetric'),ENCRYPTBYASYMKEY (ASYMKEY_ID( 'TestAsymmetric'),name ) )
as nvarchar(200 )),
ENCRYPTBYCERT ( Cert_ID('CertTest' ),name),
CAST(deCRYPTBYCERT (Cert_ID ('CertTest'), ENCRYPTBYCERT (Cert_ID( 'CertTest'),name ))
as nvarchar (200)),
EncryptByKey ( KEY_GUID('TestSymmetric' ),name),
CAST(decryptByKey (EncryptByKey (KEY_GUID ('TestSymmetric'), name))
as nvarchar (200))
FROM sys .objects
您可能感興趣的文章:
- SQL Server儲(chǔ)過(guò)程加密和解密原理深入分析
- 實(shí)例講解SQL Server加密功能
- MySQL加密和解密實(shí)例詳解
- MySQL數(shù)據(jù)庫(kù)對(duì)敏感數(shù)據(jù)加密及解密的實(shí)現(xiàn)方式
- MySQL InnoDB表空間加密示例詳解
- 關(guān)于SQL Server加密與解密的問(wèn)題
- sqlserver數(shù)據(jù)庫(kù)加密后無(wú)法使用MDF,LDF,log文件名稱被修改的數(shù)據(jù)恢復(fù)
- MySQL中使用MD5加密的實(shí)現(xiàn)
- mysql如何對(duì)已經(jīng)加密的字段進(jìn)行模糊查詢?cè)斀?/a>
- Sql Server數(shù)據(jù)庫(kù)實(shí)現(xiàn)表中字段的列加密
相關(guān)文章
SQL Server 日期相關(guān)資料詳細(xì)介紹
對(duì)于開發(fā)人員來(lái)說(shuō),日期處理或許簡(jiǎn)單,或許很難。結(jié)合自己過(guò)往的開發(fā)經(jīng)驗(yàn)并整合網(wǎng)上的例子,總結(jié)出一些日期相關(guān)的操作,供自己備用及為大家分享2012-06-06
SQL Server誤區(qū)30日談 第21天 數(shù)據(jù)損壞可以通過(guò)重啟SQL Server來(lái)修復(fù)
SQL Server中沒有任何一項(xiàng)操作可以修復(fù)數(shù)據(jù)損壞。損壞的頁(yè)當(dāng)然需要通過(guò)某種機(jī)制進(jìn)行修復(fù)或是恢復(fù)-但絕不是通過(guò)重啟動(dòng)SQL Server,Windows亦或是分離附加數(shù)據(jù)庫(kù)2013-01-01
DATASET 與 DATAREADER對(duì)象有什么區(qū)別
DataReader和DataSet最大的區(qū)別在于,DataReader使用時(shí)始終占用SqlConnection(俗稱:非斷開式連接),在線操作數(shù)據(jù)庫(kù)時(shí),任何對(duì)SqlConnection的操作都會(huì)引發(fā)DataReader的異常。下面同本文對(duì)dataset與datareader的區(qū)別詳細(xì)學(xué)習(xí)吧2016-11-11
sql 語(yǔ)句插入結(jié)果為select和值混合示例
這篇文章主要介紹了sql語(yǔ)句插入結(jié)果為select和值混合,需要的朋友可以參考下2014-05-05
sql 2000 無(wú)法執(zhí)行查詢,因?yàn)橐恍┪募鄙倩蛭醋?cè)"的解決方法
在SQL server 2000中打開表查看數(shù)據(jù)的時(shí)候,提示說(shuō)無(wú)法執(zhí)行查詢,因?yàn)橐恍┪募鄙倩蛭醋?cè)用查詢分析器可以查看數(shù)據(jù),重裝了sql2000也沒有用,這里分享下解決方法2014-01-01
PLSQL連接oracle數(shù)據(jù)庫(kù)過(guò)程圖解
這篇文章主要介紹了PLSQL連接oracle數(shù)據(jù)庫(kù)過(guò)程圖解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2008-02-02

