MSSQL數(shù)據(jù)加密解密代碼
更新時(shí)間:2012年11月05日 17:04:53 作者:
這個(gè)是一個(gè)簡單的例子 里面還涉及到 如 對稱密鑰加密使用證書解密,沒有涉及到
可以查看:
OPEN SYMMETRIC KEY 命令關(guān)于 對稱密鑰加密使用證書解密
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'password'
go
CREATE CERTIFICATE CertTest
with SUBJECT = 'Test Certificate'
GO
--創(chuàng)建非對稱密鑰
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)建對稱密鑰
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)于 對稱密鑰加密使用證書解密
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'password'
go
CREATE CERTIFICATE CertTest
with SUBJECT = 'Test Certificate'
GO
--創(chuàng)建非對稱密鑰
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)建對稱密鑰
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ǔ)過程加密和解密原理深入分析
- 實(shí)例講解SQL Server加密功能
- MySQL加密和解密實(shí)例詳解
- MySQL數(shù)據(jù)庫對敏感數(shù)據(jù)加密及解密的實(shí)現(xiàn)方式
- MySQL InnoDB表空間加密示例詳解
- 關(guān)于SQL Server加密與解密的問題
- sqlserver數(shù)據(jù)庫加密后無法使用MDF,LDF,log文件名稱被修改的數(shù)據(jù)恢復(fù)
- MySQL中使用MD5加密的實(shí)現(xiàn)
- mysql如何對已經(jīng)加密的字段進(jìn)行模糊查詢詳解
- Sql Server數(shù)據(jù)庫實(shí)現(xiàn)表中字段的列加密
相關(guān)文章
SQL Server 日期相關(guān)資料詳細(xì)介紹
對于開發(fā)人員來說,日期處理或許簡單,或許很難。結(jié)合自己過往的開發(fā)經(jīng)驗(yàn)并整合網(wǎng)上的例子,總結(jié)出一些日期相關(guān)的操作,供自己備用及為大家分享2012-06-06
SQL Server誤區(qū)30日談 第21天 數(shù)據(jù)損壞可以通過重啟SQL Server來修復(fù)
SQL Server中沒有任何一項(xiàng)操作可以修復(fù)數(shù)據(jù)損壞。損壞的頁當(dāng)然需要通過某種機(jī)制進(jìn)行修復(fù)或是恢復(fù)-但絕不是通過重啟動(dòng)SQL Server,Windows亦或是分離附加數(shù)據(jù)庫2013-01-01
DATASET 與 DATAREADER對象有什么區(qū)別
DataReader和DataSet最大的區(qū)別在于,DataReader使用時(shí)始終占用SqlConnection(俗稱:非斷開式連接),在線操作數(shù)據(jù)庫時(shí),任何對SqlConnection的操作都會(huì)引發(fā)DataReader的異常。下面同本文對dataset與datareader的區(qū)別詳細(xì)學(xué)習(xí)吧2016-11-11
sql 2000 無法執(zhí)行查詢,因?yàn)橐恍┪募鄙倩蛭醋?quot;的解決方法
在SQL server 2000中打開表查看數(shù)據(jù)的時(shí)候,提示說無法執(zhí)行查詢,因?yàn)橐恍┪募鄙倩蛭醋杂貌樵兎治銎骺梢圆榭磾?shù)據(jù),重裝了sql2000也沒有用,這里分享下解決方法2014-01-01

