mds算法python函数_分享python mds,sha256加密算法,c#对应sha256加密算法
'''
引入hmac,hashlib加密模块
'''
import hmac
import hashlib
def jm_sha256(key, value):
'''
sha256加密
return:加密结果转成16进制字符串形式,并大写
'''
hsobj = hashlib.sha256(key.encode("utf-8"))
hsobj.update(value.encode("utf-8"))
return hsobj.hexdigest().upper()
def jm_md5(key, value):
'''
md5加密
return:加密结果转成16进制字符串形式,并大写
'''
hsobj = hashlib.md5(key.encode("utf-8"))
hsobj.update(value.encode("utf-8"))
return hsobj.hexdigest().upper()
def hmac_sha256(key, value):
'''
hmacsha256加密
return:加密结果转成16进制字符串形式,并大写
'''
message = value.encode('utf-8')
return hmac.new(key.encode('utf-8'), message, digestmod=hashlib.sha256).hexdigest().upper()
def hmac_md5(key, value):
'''
hmacmd5加密
return:加密结果转成16进制字符串形式,并大写
'''
message = value.encode('utf-8')
return hmac.new(key.encode('utf-8'), message, digestmod=hashlib.md5).hexdigest().upper()
其中sha256对应的C#加密方法如下
///
/// sha256 加密
///
/// 加密秘钥
/// 待加密的内容
///
public string GetSHA256HashFromString(string strkey,string strData)
{
byte[] bytValue = System.Text.Encoding.UTF8.GetBytes(strkey+strData );
try
{
SHA256 sha256 = new SHA256CryptoServiceProvider();
byte[] retVal = sha256.ComputeHash(bytValue);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < retVal.Length; i++)
{
sb.Append(retVal[i].ToString("x2"));
}
return sb.ToString();
}
catch (Exception ex)
{
throw new Exception("GetSHA256HashFromString() fail,error:" + ex.Message);
}
}
///
/// hmacsha256 加密
///
/// 加密秘钥
/// 待加密的内容
///
public string CreateToken(string secret,string message)
{
var encoding = System.Text.Encoding.UTF8;
byte[] keyByte = encoding.GetBytes(secret);
byte[] messageBytes = encoding.GetBytes(message);
using (var hmacsha256 = new HMACSHA256(keyByte))
{
byte[] hashmessage = hmacsha256.ComputeHash(messageBytes);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < hashmessage.Length; i++)
{
sb.Append(hashmessage[i].ToString("x2"));
}
return sb.ToString();
}
}
mds算法python函数_分享python mds,sha256加密算法,c#对应sha256加密算法相关推荐
- python指数运算函数_分享Python中用于计算指数的exp()方法实例教程
exp()方法返回指数x: ex. 语法 以下是exp()方法的语法:import math math.exp( x ) 注意:此函数是无法直接访问的,所以我们需要导入math模块,然后需要用math ...
- python范例_最佳Python代码范例
python范例 Python is a general purpose programming language which is dynamically typed, interpreted, a ...
- 第一章 第一节:Python基础_认识Python
Python基础入门(全套保姆级教程) 第一章 第一节:Python基础_认识Python 1. 什么是编程 通俗易懂,编程就是用代码编写程序,编写程序有很多种办法,像c语言,javaPython语言 ...
- python join函数_一行 Python 代码能实现这么多丧心病狂的功能?
最近看知乎上有一篇名为<一行 Python 能实现什么丧心病狂的功能?>(https://www.zhihu.com/question/37046157)的帖子,点进去发现一行Python ...
- python drop函数_用python帮财务小姐姐自动生成财务报表
↑↑↑关注后"星标"简说Python 人人都可以简单入门Python.爬虫.数据分析简说Python严选 来源:python数据分析之禅 作者:小dull鸟 One old w ...
- python一些常用函数_【python】常用的一些内置函数
1.cmp cmp(A,B)函数,比较A,B的大小,如果A大于B,返回1,A小于B返回-1,A等于B返回0 print cmp(12,33) >>>-1 print cmp(&quo ...
- python pos函数_使用python+sklearn实现特征提取
sklearn.feature_extraction模块可用于以机器学习算法支持的格式从原始数据集(如文本和图像)中提取特征.**注意:**特征提取与特征选择有很大不同:前者是将任意数据(例如文本或图 ...
- python isalnum函数_探究Python中isalnum()方法的使用
探究Python中isalnum()方法的使用 isalnum()方法检查判断字符串是否包含字母数字字符. 语法 以下是isalnum()方法的语法: str.isa1num() 参数 NA 返回值 ...
- python中的pop函数和append函数_对python中的pop函数和append函数详解
pop()函数 1.描述 pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值. 语法 pop()方法语法: list.pop(obj=list[-1]) 2.参数 obj ...
最新文章
- Vue 框架-02-事件:点击, 双击事件,鼠标移上事件
- Hadoop详解(三):HDFS完全分布式环境搭建
- stm32之spi之NSS管脚信号
- Python数据结构与算法--数据类型
- Protobuf序列化的原理
- 追踪 Kubernetes 中的网络流量
- 让8只数码管初始显示零,每隔大约1s加一显示,到数码管显示9后,再从一开始显示
- 【Java】基于栈的括号匹配问题
- 如何实现共享软件网络授权认证,包括注册新用户、登录、修改密码等操作
- 《企业软件交付:敏捷与高效管理精要》——2.2 MyCo公司和MyProj企业软件交付项目...
- Pentest Wiki Part4 后渗透(二)
- 深入浅出 Kubernetes 架构
- scrapy python版本_[python]scrapy框架构建(2.7版本)
- python库源码阅读:ddddocr
- Mac下的平铺式桌面 - Yabai
- asp毕业设计——基于asp+access的会员管理系统设计与实现(毕业论文+程序源码)——会员管理系统
- Ubuntu 命令大全 Ubuntu技巧
- 蓝牙耳机哪个品牌比较好?盘点四款好用的蓝牙耳机
- 被开了!!!!!!!!!!
- python turtle画动物_用python画简单的动物
热门文章
- linux驱动之可加载模块
- VUE3搞一下数据录入
- python 图像处理_Python常用库-Pillow图像处理
- Hibernate ,Mybatis 区别,以及各自的一级,二级缓存理解
- MySQL(一)存储引擎
- 正在此计算机上搜索更新,安装用友T3卡在最后一步windows update这里提示正在此计算机上搜索更新没有反应...
- .NET Core版本揭秘
- python中的update是什么意思_python 字典中的Update()函数
- java数组移除对象_如何从Java数组中删除对象?
- js原生实现贪吃蛇(解决连续键盘事件)