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

【随笔】一次JS和python中的MD5加密的记录

// 使用CryptoJS进行MD5加密和Base64编码
const sign = CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(CryptoJS.MD5(sign2encrypt).toString()));

上面这段JS和下面这个python等价

def hash_and_encode(input_string):

    sign2encrypt = input_string
    # 使用 hashlib 进行 MD5 加密
    md5_hash = hashlib.md5(sign2encrypt.encode('utf-8')).hexdigest()
    # 使用 base64 编码
    sign = base64.b64encode(md5_hash.encode('utf-8')).decode('utf-8')

    return sign

而不是和下面的等价

def hash_and_encode(input_string):

    sign2encrypt = input_string
    # 使用 hashlib 进行 MD5 加密
    md5_hash = hashlib.md5(sign2encrypt.encode('utf-8')).digest()
    # 使用 base64 编码
    sign = base64.b64encode(md5_hash).decode('utf-8')
    return sign

JavaScript (CryptoJS) 使用了 CryptoJS 库进行 MD5 和 Base64 编码,直接处理字节数组。

Python (hexdigest) 使用 hashlib.md5(…).hexdigest() 生成十六进制字符串,并需要先转换为字节数据,再进行 Base64 编码。

Python (digest) 使用 hashlib.md5(…).digest() 生成字节数据,并用 Base64 编码处理字节数据。

另外postman的Console按Ctrl+Alt+C调出
在这里插入图片描述

END


http://www.kler.cn/a/418406.html

相关文章:

  • docker pull Error response from daemon问题
  • 【大数据技术】用户行为日志分析(python+hadoop+mapreduce+yarn+hive)
  • 录音质检,只质检录音,没有显卡的服务器配置分析
  • 【零基础到精通】小白如何自学网络安全
  • HTMLCSS :下雪了
  • 【LeetCode 刷题】回溯算法(4)-排列问题
  • Filter过滤器的使用
  • 爬虫技术全解析:从入门到精通
  • FPGA芯片全生命周期流程
  • 手机实时提取SIM卡打电话的信令声音-蓝牙电话如何适配eSIM卡的手机
  • vue实现时间倒计时/时间增加组件
  • 基于Vue3+Element Plus 实现多表单校验
  • Oracle 11gR2 Data Guard 搭建 (一主一从)
  • Linux高级文件系统
  • FPGA实现串口升级及MultiBoot(十)串口升级SPI FLASH实现
  • 【C++】getchar() 与 putchar() 的深入解析
  • Transformer?Attention?——Are All You Need!
  • 2个方法教打开把Word文档转换为PDF格式
  • 如何在本地环境中模拟使用https
  • TCP/IP协议簇自学笔记
  • ros2键盘实现车辆: 简单的油门_刹车_挡位_前后左右移动控制
  • 面阵相机的使用和注意事项
  • 基于树莓派3B+的简易智能家居小项目(WiringPi库 + C语言开发)
  • 数据结构(理解)
  • 数据治理体系一般要求
  • Hive高可用配置