最新活动:电脑PC端+手机端+微网站+自适应网页多模板选择-建站388元起价!!!
当前位置:主页 > 网站建设 > T-SQL问题解决集锦 数据加解密全集建站知识

T-SQL问题解决集锦 数据加解密全集建站知识

时间:2023-05-23 15:05:23 阅读: 文章分类: 网站建设 作者: 建站小能手

导读:1建站知识对于一些敏感数据,如密码、卡号,一般不能使用正常数值来存储。否则会有安全隐患。以往的加密解密都有前端应网站seo优化诊断工具网站建设教程。

网站seo优化诊断工具网站建设教程以下代码已经在SQLServer2008上的示例数据库测试通过问题一:如何为数据进行加密与解密,避免使用者窃取机密数据? 对于一些敏感数据,如密码、卡号,一般不能使用正常数值来存储。否则会有安全隐患。以往的加密解密都有前端应用程序来辅助完成。而数据库一般只能加密不能解密。 从2005开始提供了数据库层面的数据加密与解密。其实现方式主要有以下: 1、 利用CONVERT改变编码方式: 利用该函数把文字或数据转换成VARBINARY。但该方式不具备保护数据的能力,仅避免浏览数据的过程中能直接看到敏感数据的作用。 2、 利用对称密钥: 搭配EncryptByKey进行数据加密。使用DecryptByKey函数进行解密。这种方式比较适合大数据量。因为对称密钥的过程好用资源较少。 3、网站seo优化课程 利用非对称密钥: 搭配EncryptByAsymKey进行数据加密。使用DecryptByAsymKey函数进行解密。用于更高安全级别的加解密数据。因为耗用资源叫多。 4、 利用凭证的方式: 搭配EncryptByCert进行加密和DecryptByCert函数进行解密。比较类似非对称密钥。 5、 利用密码短语方式: 搭配EncryptBypassPhrase进行加密,使用DecryptByPassPhrase函数来解密。可以使用有意义的短语或其他数据行,当成加密、解密的关键字,比较适合一般的数据加解密。 案例: 1、 Convert方式:

复制代码 代码如下:

a) USE tempdb b) GO c) CREATE TABLE test d) ( e) userID INT IDENTITY(1, 1) , f) userName VAR公司网站建设CHAR(10) , g) userSalary FLOAT , h) cyberalary NVARCHAR(MAX) i) ) ; j) k) INSERT INTO TEST l) ( userName, userSalary ) m) VALUES ( 'taici', 1234 ), n) ( 'hailong', 3214 ), o) ( 'meiyuan', 1111 ) p) --ALTER TABLE test q) --ADD userNewSalary VARBINARY(512) r) --使用转换函数把数据转换成varbinary,改变编码方式。 s) SELECT * , t) CONVERT(VARBINARY(512), userSalary) u) FROM test v) --把数据转换成int,可以恢复原有编码方式 w) SELECT * , x) CONVERT(INT, userSalary) y) FROM test

2、对称密钥:

复制代码 代码如下:

a) --创建对称密钥 b) USE AdventureWorks c) GO d) CREATE SYMMETRIC KEY SymKey123 e) WITH ALGORITHM=TRIPLE_DES ENCRYPTION BY PASSWORD='P@ssw0rd' f) GO g) --注意事项:在启用时,需要先OPEN SYMMETRIC KEY 搭配密钥密码,否则所产生的数据都会是null值。而且需要搭配Key_GUID函数来使用 h) --打开对称密钥 i) OPEN SYMMETRIC KEY SymKey123 DECRYPTION BY PASSWORD='P@ssw0rd'; j) --进行数据加密 k) SELECT * ,ENCRYPTBYKEY(KEY_GUID('SymKey123'),CONVERT(VARCHAR(max),AddressLine1)) l) FROM Person.Address m) n) --检查加密后长度,利用datalength()函数 o) SELECT DATALENGTH(ENCRYPTBYKEY(KEY_GUID('SymKey123'),CONVERT(VARCHAR(MAX ),AddressLine1))) p) FROM Person.Address q) GO r) --把加密后数据更新到原来另外的列上 s) UPDATE Person.Address t) SET AddressLine2=ENCRYPTBYKEY(KEY_GUID('SymKey123'),CONVERT(VARCHAR(max),AddressLine1)) u) --解密:解密过程同样需要OPEN SYMMETRIC KEY ,且需要利用DECRYPTBYKEY 和CONVERT函数 v) OPEN SYMMETRIC KEY SymKey123 DECRYPTION BY PASSWORD='P@ssw0rd'; w) x) SELECT AddressID,CONVERT(VARCHAR(MAX ) ,CONVERT (VARCHAR(MAX ),DECRYPTBYKEY(AddressLine2))) y) FROM Person.Address

关键词标签: SQL 集锦 全集

声明: 本文由我的SEOUC技术文章主页发布于:2023-05-23 ,文章T-SQL问题解决集锦 数据加解密全集建站知识主要讲述集锦,全集,SQL网站建设源码以及服务器配置搭建相关技术文章。转载请保留链接: https://www.seouc.com/article/web_5854.html

我的IDC 网站建设技术SEOUC.COM
专注网站建设,SEO优化,小程序设计制作搭建开发定制网站等,数千家网站定制开发案例,网站推广技术服务。
  • 5000+合作客服
  • 8年从业经验
  • 150+覆盖行业
  • 最新热门源码技术文章