当前位置: 首页 > news >正文

做一个网站的基本步骤/信息流广告优秀案例

做一个网站的基本步骤,信息流广告优秀案例,安庆做网站公司,如何做一家网站在项目开发中,始终会涉及到的一个问题,就是信息安全,在调用接口,或者加载的资源,都会涉及安全问题,因此就出现了各种各样的加密方式。 常见的也是目前用的最广的加密方式,分别是:DES、3DES、AES、MD5、XOR(异或) 其中DES、3DES、AES、MD5用在数据加密中偏多,特别是…

在项目开发中,始终会涉及到的一个问题,就是信息安全,在调用接口,或者加载的资源,都会涉及安全问题,因此就出现了各种各样的加密方式。

常见的也是目前用的最广的加密方式,分别是:DES、3DES、AES、MD5、XOR(异或)

其中DES、3DES、AES、MD5用在数据加密中偏多,特别是接口调用数据信息传输上。

XOR异或加密用在资源加密上偏多。

因此很多工程师会整理一个通用的加密工具类,因此我这边也同样整理了一个工具脚本。

但DES和3DES之前项目中没用到过,因此还没整理,等后续如果有碰到会再更新。

下面主要是AES、MD5、XOR加密方式

1、XOR(异或加密)

异或加密其实很简单,就是将二进制明文数据进行异或运算,解密时,只需要对密文再次异或运算即可。异或运算原理是,相同为 0,不同为 1

因此加密代码和解密代码一致,但是根据密钥可以是 单个byte,或者 多个byte,这就导致出现了,更复杂的加密方式,例如对明文数据索引的取余等等。当索引满足什么条件时进行加密,不满足时不进行加密。

例如下方代码

/// <summary>
/// 异或操作
/// </summary>
/// <param name="data"></param>
/// <param name="key"></param>
/// <returns></returns>
public static byte[] XorCipher(byte[] data, byte key = XorDefaultPassword)
{for (int i = 0; i < data.Length; i++){data[i] ^= key;}return data;
}/// <summary>
/// 异或操作
/// </summary>
/// <param name="data"> 数据 </param>
/// <param name="key"> 密钥 </param>
/// <param name="isRemainder"> 是否取余(数据索引,对key长度取余,不等于0时加密) </param>
/// <returns></returns>
public static byte[] XorCipher(byte[] data, byte[] key=null,bool isRemainder = true)
{if (key == null || key.Length <= 0) key = XorArrayPassword;for (int i = 0; i < data.Length; i++){if (!isRemainder){data[i] ^= key[i % key.Length];}else{if (i % key.Length != 0){data[i] ^= key[i % key.Length];}}}return data;
}

2、MD5加密

MD5码是个很常见的东西,特别是在做资源热更新的,很多公司会对给资源文件一个MD5编码,用作版本管理,判断这个编码是否一致,一致就不更新,不一致就更新资源。但这个编码的计算方式也可以用来做数据的加密。

        /// <summary> /// 加密数据 /// </summary> /// <param name="content"></param> /// <param name="key"></param> /// <returns></returns> public static string EncryptByMD5(string content, string key = DefaultPassword){var des = System.Security.Cryptography.DES.Create();byte[] inputByteArray;inputByteArray = System.Text.Encoding.Default.GetBytes(content);System.Security.Cryptography.MD5 md5 = System.Security.Cryptography.MD5.Create();des.Key = System.Text.ASCIIEncoding.ASCII.GetBytes(System.BitConverter.ToString(md5.ComputeHash(System.Text.Encoding.Default.GetBytes(key + "md5"))).Replace("-", null).Substring(0, 8));des.IV = System.Text.ASCIIEncoding.ASCII.GetBytes(System.BitConverter.ToString(md5.ComputeHash(System.Text.Encoding.Default.GetBytes(key + "md5"))).Replace("-", null).Substring(0, 8));System.IO.MemoryStream ms = new System.IO.MemoryStream();System.Security.Cryptography.CryptoStream cs = new System.Security.Cryptography.CryptoStream(ms, des.CreateEncryptor(), System.Security.Cryptography.CryptoStreamMode.Write);cs.Write(inputByteArray, 0, inputByteArray.Length);cs.FlushFinalBlock();System.Text.StringBuilder ret = new System.Text.StringBuilder();foreach (byte b in ms.ToArray()){ret.AppendFormat("{0:X2}", b);}return ret.ToString();}/// <summary> /// 解密数据 /// </summary> /// <param name="content"></param> /// <param name="key"></param> /// <returns></returns> public static string DecryptByMD5(string content, string key = DefaultPassword){var des = System.Security.Cryptography.DES.Create();int len;len = content.Length / 2;byte
http://www.whsansanxincailiao.cn/news/30246420.html

相关文章:

  • 平台网站建设意见征求表/网络营销工具与方法
  • 营销型网站建设营销型网站建设/重庆网络营销
  • 新开传奇网站195合击/如何推广网站链接
  • 微网站的图标怎么做/郑州百度推广托管
  • 做网站维护有什么要求/软文的本质是什么
  • 网站空间被劫持做非法彩票运营/全网网络营销
  • 手机网站商城建设答辩/广州seo排名优化公司
  • 南阳哪里做网站/网络网站
  • 哈尔滨品牌网站建设/深圳网站建设优化
  • 枣庄网站建设枣庄/一键生成app制作器
  • 自己建网站做推广/网络营销服务有哪些
  • 济南网站建设靠谱臻动传媒/小说关键词生成器
  • 找工程项目信息哪个app好用/seo推广软
  • 做微信公众号的网站有哪些/国内做seo最好公司
  • 做网站和做app那个简单/企业如何网络推广
  • 外贸做平台好还是自己建网站好/什么优化
  • html5手机 网站/市场监督管理局上班时间
  • 通州设计网站建设/汉中网站seo
  • 网站建设lieyanma/广告联盟赚钱app
  • 青岛做网站建设价格/seo网络推广外包公司
  • 哈尔滨做平台网站平台公司/建网站找哪个平台好呢
  • ui设计学什么/seo网站优化推广费用
  • 有哪些做推送的网站/重庆seo1
  • 门户网站推广方案/如何在百度上做广告宣传
  • 网站怎么做一级域名跳转/怎么在百度上发布信息广告
  • 装饰公司网站模版/电脑系统优化软件
  • 简单建设网站首页/账户竞价托管公司
  • 报名网站制作/咨询公司
  • 爱站工具seo综合查询/产品推广方案怎么写
  • 织梦 网站版权信息/设计好看的网站