• 【转】SQL Server 2005 加密


    http://community.csdn.net/Expert/topic/5650/5650489.xml?temp=.7952539

    --先创建一个数据库 database

    --1.创建数据库主密钥

    use database
    Create master key
    ENCRYPTION by password = 'p@ssw0rd'

    --如果是强密码策略的系统需要写成强密码
    --2.创建存放加密数据的表

    Create table dbo.secTable
    (ID int identity primary key,[data] nvarchar(100))

    --3.创建数字证书,数字证书的密钥被数据库主密钥加密

    use database
    Create certificate Tomcert
    with
        subject = 'Tom Certificate',
    expiry_date = '2007-07-13 10:26:30'

    --expiry_date的时间要为将来时间,例如现在时刻是10:00 那么就写10:01,这样这个时间就生效了
    --运行后的警告
    --警告:您创建的证书尚未生效,生效时间为将来时间

    --4.创建对称密钥,被用证书对其进行加密

    create symmetric key sym_tom
    with ALGORITHM = desx encryption by certificate TomCert

    --5.使用证书解开对称密钥,将数据使用对称密钥加密后存储于表中,完成后关闭对称密钥

    open symmetric key sym_Tom decryption by certificate TomCert

    insert into sectable (data) values(encryptbykey(key_guid('sym_Tom'),N'TOM1'))
    insert into sectable (data) values(encryptbykey(key_guid('sym_Tom'),N'TOM2'))
    insert into sectable (data) values(encryptbykey(key_guid('sym_Tom'),N'TOM3'))

    close symmetric key sym_Tom

    --6.查看被加密的数据内容

    select * from dbo.SecTable

    --结果大概这个样子
    select id = 1,data = 'ꈀ䁱䘱ꂿ렿啔ᯉ' union all
    select id = 2,data = 'ꈀ䁱䘱ꂿ렿啔ᯉ' union all
    select id = 3,data = 'ꈀ䁱䘱ꂿ렿啔ᯉ'

    --7.使用证书解开对称密钥,解密数据表中的数据,完成后关闭对称密钥

    open symmetric key sym_Tom decryption by certificate TomCert

    select ID,Cast(DecryptByKey(Data) as nvarchar) as [data] from dbo.secTable

    Close SymmetRic key Sym_Tom

    --结果这个样子
    select id = 1,data = 'TOM1' union all
    select id = 2,data = 'TOM2' union all
    select id = 3,data = 'TOM3'

    --------------------------------------------------------------------------------

  • 相关阅读:
    0基础培训Web前端2个月实习一个月4000?
    amazon kindle和kindle阅读
    手动双面打印
    一分价钱一分货
    【转】cocos2d-x 开发中使用的一些工具
    怎么做网线,网线水晶头接法和线序(图文详解)
    schedule
    Match+Faq
    【转】以XML文件方式保存用户数据——2013-08-25 22
    【转】针对iOS VS. Android开发游戏的优劣——2013-08-25 17
  • 原文地址:https://www.cnblogs.com/rock_chen/p/863351.html
Copyright © 2020-2023  润新知