MD5加密 和 自定义加密解密
public class EncryptString
{
/// <summary>
/// MD5加密
/// </summary>
/// <param name="instr"></param>
/// <returns></returns>
public static string EncryptMD5(string instr)
{
string result;
try
{
byte[] toByte = Encoding.Default.GetBytes(instr);
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
toByte = md5.ComputeHash(toByte);
result = BitConverter.ToString(toByte).ToLower().Replace("-", "");
}
catch
{
result = "";
}
return result;
} /// <summary>
/// 加密(自定义的字节加密)
/// </summary>
/// <param name="str"></param>
/// <param name="bo">是否加随机数</param>
/// <returns></returns>
public static string MyEncrypt(string str, bool bo)
{
char[] cs = str.ToCharArray();
byte[] by;
string results = "", temp = "";
for (int i = ; i < cs.Length; i++)
{
by = System.Text.Encoding.UTF8.GetBytes(cs[i].ToString());
temp = Convert.ToBase64String(by);//每个字转换为四位
if (bo)
{
temp += Common.GetMes.Random(, ).ToString();//同时加两个随机变量
}
results += temp;//(每个变为6位)全部相加
}
return results;
}
/// <summary>
/// 解密(自定义的字节加密)
/// </summary>
/// <param name="str"></param>
/// <param name="t">要和上面的对应,如果加了随机数则t值应该为6,不加的话是4,否则出错</param>
/// <returns></returns>
public static string DeMyEnncrypt(string str, int t)
{
string result = "", strtemp = "";
try
{
char[] cs = str.ToCharArray();
string[] temp = Common.GetMes.ArrayListstr(str, t);
byte[] by;
for (int i = ; i < temp.Length; i++)
{
strtemp = (temp[i].ToString()).Substring(, );
by = Convert.FromBase64String(strtemp);
result += System.Text.Encoding.UTF8.GetString(by);
}
return result;
}
catch
{
return "";
}
} /// <summary>
/// 把一个字符串按照n位长度分割为数组
/// </summary>
/// <param name="str"></param>
/// <param name="n"></param>
/// <returns></returns>
public static string[] ArrayListstr(string str, int n)
{
string[] result;
try
{
if (n <= )
{
n = str.Length;
}
int arrynum = ;
arrynum = (int)(str.Length / n);
if (arrynum <= )
{
arrynum = ;
}
result = new string[arrynum];
for (int i = ; i < arrynum; i++)
{
result[i] = str.Substring(n * i, n);
}
}
catch
{
result = new string[] { "" };
}
return result;
}
}
MD5加密 和 自定义加密解密的更多相关文章
- C#:使用MD5对用户密码加密与解密
C#中常涉及到对用户密码的加密于解密的算法,其中使用MD5加密是最常见的的实现方式.本文总结了通用的算法并结合了自己的一点小经验,分享给大家. 一.使用16位.32位.64位MD5方法对用户名加密 1 ...
- MD5加密,Base64加密/解密,AES加密/解密
1.从github上下载GTMBase64-master和AESCrypt-ObjC-master导入工程,如下图所示. 2.使用前的配置及注意事项: (1) 在build phases中的GTMBa ...
- jdk自带的MD5进行数据的加密与解密
package com.tools.util; import java.io.IOException; import java.io.UnsupportedEncodingException; imp ...
- js的常见的三种密码加密方式-MD5加密、Base64加密和解密和sha1加密详解总结
写前端的时候,很多的时候是避免不了注册这一关的,但是一般的注册是没有任何的难度的,无非就是一些简单的获取用户输入的数据,然后进行简单的校验以后调用接口,将数据发送到后端,完成一个简单的注册的流程,那么 ...
- shiro中自定义realm实现md5散列算法加密的模拟
shiro中自定义realm实现md5散列算法加密的模拟.首先:我这里是做了一下shiro 自定义realm散列模拟,并没有真正链接数据库,因为那样东西就更多了,相信学到shiro的人对连接数据库的一 ...
- 转 C#:使用MD5对用户密码加密与解密
C#中常涉及到对用户密码的加密于解密的算法,其中使用MD5加密是最常见的的实现方式.本文总结了通用的算法并结合了自己的一点小经验,分享给大家. 一.使用16位.32位.64位MD5方法对用户名加密 1 ...
- Delphi RSA加解密【 (RSA公钥加密,私钥解密)、(RSA私钥加密,公钥解密)、MD5加密、SHA加密】
作者QQ:(648437169) 点击下载➨delphi RSA加解密 [Delphi RSA加解密]支持 (RSA公钥加密,私钥解密).(RSA私钥加密,公钥解密).MD5加密.SHA1加密.SHA ...
- 微软企业库5.0 学习之路——第七步、Cryptographer加密模块简单分析、自定义加密接口及使用—下篇
在上一篇文章中, 我介绍了企业库Cryptographer模块的一些重要类,同时介绍了企业库Cryptographer模块为我们提供的扩展接口,今天我就要根据这些 接口来进行扩展开发,实现2个加密解密 ...
- .NET和JAVA同等加密方法,MD5和DES对称加密记录
C#版: using System; using System.Security.Cryptography; using System.Text; namespace ConsoleApplicati ...
随机推荐
- Java数据封装成树形结构,多级
参考地址:https://blog.csdn.net/chendu500qiang/article/details/91493147 1.实体类 @data public class PublishS ...
- margin与padding的区别是什么?
margin与padding的区别是什么? 目录 1.背景介绍 2.知识剖析 3.常见问题 4.解决方案 5.编码实战 6.扩展思考 7.参考文献 8.更多讨论 1.背景介绍 什么是margin 什么 ...
- 使用vue 3.0 初始化vue脚手架
vue-cli3.0安装 如果你事先已经全局安装了旧版本的vue-cli(1.x 或 2.x),你需要先卸载它: npm uninstall vue-cli -g 安装 npm install -g ...
- Bugku web web2
web2 打开后发现是个大滑稽啊!F12检查元素拿到flag
- 用二叉树进行排序 x (从小到大)
先输入n,表示拥有多少个数: 第二行输入1-n个数,然后开始排序 输出从小到大的排序. ----------------------------------------------代码~------- ...
- Vue中的MVVM框架
ViewModel:数据双向绑定 场景: 针对具有复杂交互逻辑的前段应用 提供基础的架构抽象 通过Ajax数据持久化,保证前端用户体验 什么是vue.js? 是一个轻量级的mvvm框架 数据驱动+组 ...
- Codeforces Round #369 (Div. 2) A. Bus to Udayland (水题)
Bus to Udayland 题目链接: http://codeforces.com/contest/711/problem/A Description ZS the Coder and Chris ...
- tp5关联模型进行条件查询
public function wordOne(){ return $this->hasOne('TeachWord','id','w_id')->field('id,pid,title' ...
- React-Native 之 GD (十一)加载更多功能完善 及 跳转详情页
1.加载更多功能完善 GDHome.js /** * 首页 */ import React, { Component } from 'react'; import { StyleSheet, Text ...
- p5437 【XR-2】约定
分析 https://www.cnblogs.com/cjyyb/p/11111404.html 代码 #include<bits/stdc++.h> using namespace st ...