ORM映射框架总结--加密处理

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 1.MD5 加密处理 代码  1 /** 2  * 日期:2009-3-15 3  * 作者: 4  * 功能:MD5加密及验证 5  * */ 6 using System; 7 using System.

1.MD5 加密处理

img_405b18b4b6584ae338e0f6ecaf736533.gif 代码
 1  /* *
 2   * 日期:2009-3-15
 3   * 作者:
 4   * 功能:MD5加密及验证
 5   *  */
 6  using  System;
 7  using  System.Collections.Generic;
 8  using  System.Linq;
 9  using  System.Text;
10  using  System.Security.Cryptography;
11  using  System.IO;
12 
13  namespace  CommonData.Encrypt
14  {
15       public   partial   class  EncryptMD5
16      {
17           ///   <summary>
18           ///  MD5 加密
19           ///   </summary>
20           ///   <param name="content"> 加密的内容 </param>
21           ///   <returns></returns>
22           public   static   string  MD5Encrypt( string  content)
23          {
24               if  ( string .IsNullOrEmpty(content)  ==   false )
25              {
26                  MD5 md5  =  MD5.Create();
27                   string  result  =   "" ;
28                   byte [] data  =  md5.ComputeHash(Encoding.Default.GetBytes(content));
29                   for  ( int  i  =   0 ; i  <  data.Length; i ++ )
30                  {
31                      result  +=  data[i].ToString( " x2 " );
32                  }
33                   return  result;
34              }
35               else
36              {
37                  Console.WriteLine( " 您加密的内容为空! " );
38                   return   "" ;
39              }
40 
41          }
42 
43 
44           ///   <summary>
45           ///  加密验证
46           ///   </summary>
47           ///   <param name="content"> 输入需要验证的内容 </param>
48           ///   <param name="data"> 加密比较的对象 </param>
49           ///   <returns></returns>
50           public   static   bool  GetContentCheck( string  content,  string  data)
51          {
52               if  ( ! string .IsNullOrEmpty(content)  &&   ! string .IsNullOrEmpty(data))
53              {
54                   string  hashContent  =  MD5Encrypt(content);
55                   if  (hashContent.Equals(data))
56                  {
57                       return   true ;
58                  }
59                   else
60                  {
61                       return   false ;
62                  }
63              }
64               else
65              {
66                  Console.WriteLine( " 请提供有效的验证信息! " );
67                   return   false ;
68              }
69          }
70      }
71  }
72 

 

 

  这个类提供了两个方法。上面的那个是加密,下面的验证。因为MD5加密时不可逆的过程,因此在验证的时候需要先加密在比较

  如果需要了解更多md5加密可以到msdn 上去看看,介绍的比较详细

 

 

2.XOR 加密

 

img_405b18b4b6584ae338e0f6ecaf736533.gif 代码
 1  /* *
 2   * 日期:2009-3-15
 3   * 作者:
 4   * 功能:XOR加密
 5   *  */
 6  using  System;
 7  using  System.Collections.Generic;
 8  using  System.Linq;
 9  using  System.Text;
10  using  System.Security.Cryptography;
11 
12  namespace  CommonData.Encrypt
13  {
14       public   partial   class  EncryptXOR
15      {
16           ///   <summary>
17           ///  XOR加密
18           ///   </summary>
19           ///   <param name="content"> 加密的文本 </param>
20           ///   <param name="password"> 加密文本密匙 </param>
21           ///   <returns></returns>
22           public   static   string  EncryptString( string  content,  string  password)
23          {
24               byte [] bcontent  =  ( new  UnicodeEncoding()).GetBytes(content);
25               byte [] bpassword  =  ( new  UnicodeEncoding()).GetBytes(password);
26 
27               for  ( int  i  =   0 ; i  <  bcontent.Length; i  +=   2 )
28              {
29                   for  ( int  j  =   0 ; j  <  bpassword.Length; j  +=   2 )
30                  {
31                      bcontent[i]  =  Convert.ToByte(bcontent[i]  ^  bpassword[j]);
32                  }
33              }
34               return  ( new  UnicodeEncoding()).GetString(bcontent).TrimEnd( ' \0 ' );
35          }
36 
37 
38           ///   <summary>
39           ///  XOR 解密
40           ///   </summary>
41           ///   <param name="content"> 解密的文本 </param>
42           ///   <param name="key"> 解密文本密匙 </param>
43           ///   <returns></returns>
44           public   static   string  DecryptString( string  content,  string  key)
45          {
46               return  EncryptString(content, key);
47          }
48      }
49  }
50 

 

 

  这个加密算法是可逆的,不过在解密的时候需要密钥处理.这个加密不难,算法也比较简单

相关文章
|
2月前
|
安全 网络安全 区块链
网络安全与信息安全:构建数字世界的防线在当今数字化时代,网络安全已成为维护个人隐私、企业机密和国家安全的重要屏障。随着网络攻击手段的不断升级,从社交工程到先进的持续性威胁(APT),我们必须采取更加严密的防护措施。本文将深入探讨网络安全漏洞的形成原因、加密技术的应用以及提高公众安全意识的重要性,旨在为读者提供一个全面的网络安全知识框架。
在这个数字信息日益膨胀的时代,网络安全问题成为了每一个网民不可忽视的重大议题。从个人信息泄露到企业数据被盗,再到国家安全受到威胁,网络安全漏洞如同隐藏在暗处的“黑洞”,时刻准备吞噬掉我们的信息安全。而加密技术作为守护网络安全的重要工具之一,其重要性不言而喻。同时,提高公众的安全意识,也是防范网络风险的关键所在。本文将从网络安全漏洞的定义及成因出发,解析当前主流的加密技术,并强调提升安全意识的必要性,为读者提供一份详尽的网络安全指南。
|
3月前
|
存储 SQL 安全
网络安全与信息安全:守护数字世界的坚盾在这个高度数字化的时代,网络安全和信息安全已经成为个人、企业乃至国家安全的重要组成部分。本文将深入探讨网络安全漏洞、加密技术以及安全意识的重要性,旨在为读者提供一个全面的网络安全知识框架。
随着互联网技术的飞速发展,网络安全问题日益凸显。从个人信息泄露到企业数据被盗,再到国家安全受到威胁,网络安全事件层出不穷。本文将从网络安全漏洞的定义与分类入手,探讨常见的网络攻击手段;随后深入解析加密技术的原理及其在保护信息安全中的作用;最后强调提升公众与企业的安全意识的重要性,并提出具体的建议。通过综合运用这些知识点,我们可以更好地构建起一道道坚固的防线,守护我们的数字世界。
|
6月前
|
算法 安全 Java
技术经验分享:JavaSecurity:Java加密框架(JCA)简要说明
技术经验分享:JavaSecurity:Java加密框架(JCA)简要说明
|
7月前
|
安全 数据管理 测试技术
网络安全与信息安全:防范漏洞、加强加密与提升安全意识深入探索自动化测试框架的设计原则与实践应用化测试解决方案。文章不仅涵盖了框架选择的标准,还详细阐述了如何根据项目需求定制测试流程,以及如何利用持续集成工具实现测试的自动触发和结果反馈。最后,文中还将讨论测试数据管理、测试用例优化及团队协作等关键问题,为读者提供全面的自动化测试框架设计与实施指南。
【5月更文挑战第27天】 在数字化时代,网络安全与信息安全已成为维护国家安全、企业利益和个人隐私的重要环节。本文旨在分享关于网络安全漏洞的识别与防范、加密技术的应用以及提升安全意识的重要性。通过对这些方面的深入探讨,我们希望能为读者提供一些实用的建议和策略,以应对日益严峻的网络安全挑战。 【5月更文挑战第27天】 在软件开发周期中,自动化测试作为保障软件质量的关键步骤,其重要性日益凸显。本文旨在剖析自动化测试框架设计的核心原则,并结合具体案例探讨其在实际应用中的执行策略。通过对比分析不同测试框架的优缺点,我们提出一套高效、可扩展且易于维护的自动
|
7月前
|
安全 测试技术 区块链
加密项目调研的评估框架
加密项目调研的评估框架
|
缓存 安全 网络安全
Shiro框架02权限认证+MD5加盐加密+散列1024+Hex/Base64(源码)
Shiro框架02权限认证+MD5加盐加密+散列1024+Hex/Base64(源码)
Shiro框架02权限认证+MD5加盐加密+散列1024+Hex/Base64(源码)
|
存储 算法 安全
分布式服务器框架之Servers.Core库实现 DES对称加密算法;SHA1信息摘要算法;MD5信息摘要算法
通信双方(通信主体)同时掌握一个钥匙,加解密都由这一个钥匙完成。通信双方通信前共同拟定一个密钥,不向第三方公开,发送前加密和接受后解密都由此密钥完成。即钥匙如果泄露,将暴露自己的全部信息。
|
JSON 运维 监控
接口测试框架实战 | 流程封装与基于加密接口的测试用例设计
接口测试仅仅掌握 Requests 或者其他一些功能强大的库的用法,是远远不够的,还需要具备能根据公司的业务流程以及需求去定制化一个接口自动化测试框架的能力。所以,接下来,我们主要介绍下接口测试用例分析以及通用的流程封装是如何完成的。 首先在做用例分析之前,可以通过追查公司一年来所有的故障原因,定位问题起因,或者通过与 CTO、产品经理、研发、运维、测试调查,得到质量痛点,还可以分析业务架构、
|
JSON 运维 监控
接口测试框架实战 | 流程封装与基于加密接口的测试用例设计
接口测试框架实战 | 流程封装与基于加密接口的测试用例设计
|
JSON 运维 监控
接口测试框架实战 | 流程封装与基于加密接口的测试用例设计
接口测试仅仅掌握 Requests 或者其他一些功能强大的库的用法,是远远不够的,还需要具备能根据公司的业务流程以及需求去定制化一个接口自动化测试框架的能力。所以,接下来,我们主要介绍下接口测试用例分析以及通用的流程封装是如何完成的。 首先在做用例分析之前,可以通过追查公司一年来所有的故障原因,定位问题起因,或者通过与 CTO、产品经理、研发、运维、测试调查,得到质量痛点,还可以分析业务架构、