zoukankan      html  css  js  c++  java
  • 数据库数据加密与解密

    MVC的练习之旅,将要进入另一个阶段了,将增加会员功能。在进入之前,一些准备工作需要做的。一步一个脚印吧。设计会员功能,其中密码字段,Insus.NET想对它进行加密。就因这个加密,还得花上一些时间来整理。
    Insus.NET参考MSDN网站,列出数据库加密解密例子(以下是在SQL Server 2012进行):

    --创建数据库主密钥
    CREATE MASTER KEY ENCRYPTION BY PASSWORD ='Pass#Tutorial#word'
    GO
    --创建证书
    CREATE CERTIFICATE PasswordCert 
    with SUBJECT = 'Member Password Certificate'
    GO
    --创建非对称密钥
    CREATE ASYMMETRIC KEY PasswordAsymmetric
        WITH ALGORITHM = RSA_2048 --{ RSA_512 | RSA_1024 | RSA_2048 } 
        ENCRYPTION BY PASSWORD = 'Pass#Tutorial#word'; 
    GO
    --创建对称密钥
    CREATE SYMMETRIC KEY PasswordSymmetric
        WITH ALGORITHM = AES_256 --{ AES_128 | AES_192 | AES_256 | TRIPLE_DES_3KEY }
        ENCRYPTION BY PASSWORD = 'Pass#Tutorial#word';
    GO
    --由证书加密对称密钥
    CREATE SYMMETRIC KEY SymmetricByCert
        WITH ALGORITHM = AES_256
        ENCRYPTION BY CERTIFICATE PasswordCert;
    GO
    --由对称密钥加密对称密钥
    OPEN SYMMETRIC KEY PasswordSymmetric
        DECRYPTION BY PASSWORD='Pass#Tutorial#word'
    
    CREATE SYMMETRIC KEY SymmetricBySy
        WITH ALGORITHM = AES_256
        ENCRYPTION BY SYMMETRIC KEY PasswordSymmetric;
    GO
    --由非对称密钥加密对称密钥
    CREATE SYMMETRIC KEY SymmetricByAsy
        WITH ALGORITHM = AES_256
        ENCRYPTION BY ASYMMETRIC KEY PasswordAsymmetric;
    GO

     

    创建之后,会要相应的数据库之下,显示如下:

  • 相关阅读:
    java常用问题排查工具
    一次CMS GC问题排查过程(理解原理+读懂GC日志)
    nginx [alert] 12339#0: 1024 worker_connections are not enough
    netstat Recv-Q和Send-Q
    Use of Recv-Q and Send-Q
    LoadRunner 11 error:Cannot initialize driver dll
    perf + Flame Graph火焰图分析程序性能
    nginx 499状态码
    supervisor管理nginx
    supervisor管理php-fpm
  • 原文地址:https://www.cnblogs.com/insus/p/3434735.html
Copyright © 2011-2022 走看看