一.环境: 在网络上发送报表、处理数据都会发生一些严重的安全问题。网络最大的担忧在于有人可以拦截通信信号并捕获数据。即使通信只限于局域网内,仍然有公司内部的人可以拦截高层管理者阅读的报表。
二.思路:1.创建证书
2.创建测试表
3.使用加密函数向测试表中写入测试数据
4.提取加密数据
5.解密数据
三.
| 实验步骤: 1. 创建证书
新建查询,输入上面的代码 2. 创建测试表(name字段为要加密的列,数据类型为varbinary) create table test(id int identity(1,1),name varbinary(5000)) 3. 使用加密函数向测试表中写入一条测试数据 insert into test(name) select encryptbycert(cert_id('c1'),'test') 4. 利用下面的语句来提取加密的数据 5. 利用下面的语句来解密数据 | |
| 四.总结和分析:从以上结果可以看出,这个加密是比较安全的,而且每次加密后的二进制数据也并不相同。唯一的缺点是会消耗大量的资源,不适合在大数量的环境下部署。另外加密后的数据量相对较大,如果是加密内容过多的话,数据库的增长将会愈加明显,可以根据实施环境选择应用。 |




























