python DES加密与解密及hex输出和bs64格式输出的实现代码
pythonDES加密与解密以及hex输出和bs64格式输出
具体代码如下所示:
import pyDes import base64 Key = "1" #加密的key Iv = None #偏移量 def bytesToHexString(bs): ''' bytes转16进制 ''' return ''.join(['%02X ' % b for b in bs]) def hexStringTobytes(str): ''' 16进制转bytes ''' str = str.replace(" ", "") return bytes.fromhex(str) # 加密 def encrypt_str(data): # 加密方法 #padmode填充方式 #pyDes.ECB模式 method = pyDes.des(Key, pyDes.ECB, Iv, pad=None, padmode=pyDes.PAD_PKCS5) # 执行加密码 hex输出 k = method.encrypt(data) data = bytesToHexString(k).replace(' ','') #bs64手粗 #data =base64.b64encode(k) return data # 解密 def decrypt_str(data): method = pyDes.des(Key, pyDes.ECB, Iv, pad=None, padmode=pyDes.PAD_PKCS5) k =hexStringTobytes(data) #bs64 #k = base64.b64decode(data) return method.decrypt(k) Encrypt = encrypt_str("aaa") print(Encrypt) Decrypt = decrypt_str(Encrypt) print(Decrypt)
总结
到此这篇关于python DES加密与解密及hex输出和bs64格式输出的实现代码的文章就介绍到这了,更多相关DES加密输出Base64和Hex内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
相关推荐
-
Python3对称加密算法AES、DES3实例详解
本文实例讲述了Python3对称加密算法AES.DES3.分享给大家供大家参考,具体如下: python3.6此库安装方式,需要pip3 install pycryptodome. 如有site-packages中存在crypto.pycrypto,在pip之前,需要pip3 uninstall crypto.pip3 uninstall pycrypto,否则无法安装成功. C:\WINDOWS\system32>pip3 install pycryptodome Collecting pyc
-
python基于pyDes库实现des加密的方法
本文实例讲述了python基于pyDes库实现des加密的方法.分享给大家供大家参考,具体如下: 下载及简介地址:https://twhiteman.netfirms.com/des.html 如需要在python中使用des加密,可以直接使用pyDes库加密,该库提供了CBC和ECB两种加密方式. 1.Windows下安装 下载后pyDes-x.x.x.zip并解压后,里面有setup.py文件,使用命令 setup.py --help可查看详细使用. 你可以使用命令python setup.
-
详解Python中使用base64模块来处理base64编码的方法
base64模块是用来作base64编码解码的.这种编码方式在电子邮件中是很常见的. 它可以把不能作为文本显示的二进制数据编码为可显示的文本信息.编码后的文本大小会增大1/3. 闲话不说了,base64模块真正用的上的方法只有8个,分别是encode, decode, encodestring, decodestring, b64encode,b64decode, urlsafe_b64decode,urlsafe_b64encode.他们8个可以两两分为4组,encode,decode一组,专
-
python实现DES加密解密方法实例详解
本文实例讲述了python实现DES加密解密方法.分享给大家供大家参考.具体分析如下: 实现功能:加密中文等字符串 密钥与明文可以不等长 这里只贴代码,加密过程可以自己百度,此处python代码没有优化 1. desstruct.py DES加密中要使用的结构体 ip= (58, 50, 42, 34, 26, 18, 10, 2, 60, 52, 44, 36, 28, 20, 12, 4, 62, 54, 46, 38, 30, 22, 14, 6, 64, 56, 48, 40, 32,
-
python中base64加密解密方法实例分析
本文实例讲述了python中base64加密解密方法.分享给大家供大家参考.具体分析如下: 一.base64 Base64是一种基于64个可打印字符来表示二进制数据的表示方法.由于2的6次方等于64,所以每6个比特为一个单元,对应某个可打印字符.三个字节有24个比特,对应于4个Base64单元,即3个字节需要用4个可打印字符来表示.它可用来作为电子邮件的传输编码.在Base64中的可打印字符包括字母A-Z.a-z.数字0-9 ,这样共有62个字符,此外两个可打印符号在不同的系统中而不同.编码后的
-
python将图片文件转换成base64编码的方法
本文实例讲述了python将图片文件转换成base64编码的方法.分享给大家供大家参考.具体实现方法如下: import base64 f=open(r'c:\jb51.gif','rb') #二进制方式打开图文件 ls_f=base64.b64encode(f.read()) #读取文件内容,转换为base64编码 f.close() 调用方法如下: 复制代码 代码如下: <img src="R0lGODlh1wBOAPcAAAAAAP///7a4u+jq7bG1ucrN0N7g4tLU
-
python实现的DES加密算法和3DES加密算法实例
本文实例讲述了python实现的DES加密算法和3DES加密算法.分享给大家供大家参考.具体实现方法如下: ############################################################################# # Documentation # ############################################################################# # Author: Todd Whitema
-
python DES加密与解密及hex输出和bs64格式输出的实现代码
pythonDES加密与解密以及hex输出和bs64格式输出 具体代码如下所示: import pyDes import base64 Key = "1" #加密的key Iv = None #偏移量 def bytesToHexString(bs): ''' bytes转16进制 ''' return ''.join(['%02X ' % b for b in bs]) def hexStringTobytes(str): ''' 16进制转bytes ''' str = str.r
-
Python和Java进行DES加密和解密的实例
DES 为 Data Encryption Standard (数据加密标准)的缩写,是一种常见的对称加密算法.有关对称加密与非对称加密的特点及其应用场景,本文就不描述了,读者可以自行 google .本文说明如何使用 Java 和 Python 两种语言来实现 DES 的加解密. 最近碰到的应用场景是这样的.我们需要对接一个系统 S,系统 S 已经对用户的身份进行了验证,新系统 N 也需要对用户的身份进行验证.采用的身份验证方法是由旧系统 S 对用户 ID 进行加密,然后新系统 N 对加密后的
-
Python Des加密解密如何实现软件注册码机器码
这篇文章主要介绍了Python Des加密解密如何实现软件注册码机器码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 原理 判断路径下是否存在识别文件,若存在就解密对比,若不存在就进入机器码注册: 获取系统C盘序列号作为识别ID,并添加随机数作为混淆,生成最终机器码. 将机器码发给软件开发者,开发者将机器码解密后,添加自己的标识符号并加密生成key,发给用户. 用户输入key,程序对比并保存. 用户下次打开软件时,重新开始步骤'1'. 说明 加
-
ASP.NET中DES加密与解密MD5加密帮助类的实现代码
public class TrialHelper { //默认密钥向量 private static byte[] Keys = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF }; /// <summary> /// DES加密字符串 /// </summary> /// <param name="encryptString">待加密的字符串</param> /// <param
-
Python日志:自定义输出字段 json格式输出方式
最近有一个需求:将日志以json格式输出, 并且有些字段是logging模块没有的.看了很多源码和资料, 终于搞定, 抽取精华分享出来, 一起成长. import json import logging class JsonFilter(logging.Filter): ip = 'IP' source = 'APP' def filter(self, record): record.ip = self.ip record.username = self.source return True i
-
Java实现DES加密与解密,md5加密以及Java实现MD5加密解密类
很多时候要对秘要进行持久化加密,此时的加密采用md5.采用对称加密的时候就采用DES方法了 import java.io.IOException; import java.security.MessageDigest; import java.security.SecureRandom; import javax.crypto.Cipher; import javax.crypto.SecretKey; import javax.crypto.SecretKeyFactory; import j
-
C#编写DES加密、解密类
这个C#类封装的DES加密解密,可以使用默认秘钥进行加密.解密,也可以自定义秘钥进行加密.解密,调用简单方便. 示例一: using System; using System.Security.Cryptography; using System.Text; namespace DotNet.Utilities { /// <summary> /// DES加密/解密类. /// </summary> public class DESEncrypt { public DESEncr
-
Python DES加密实现原理及实例解析
加密流程 首先说一下置换的意思,比如说有5678这个字符串,置换表为2143,置换表中的数表示的是位置,所以字符串变成6587.所有的置换表在程序中.(S盒置换不一样,会另外说明) 密钥部分 把8位字符串密钥变成2进制(好像密钥只可以是8位,这一块我也没有搞太清楚) 64位密钥进行PC1置换,变成56位,因为以前DES是用硬件实现的,所以8,16,24,32,40,48,56,64位为校验位,不记入密钥部分.但是我们现在是用软件实现,所以这8位需要去掉,再打乱顺序. 将56位密钥对半分L0和R
-
java中使用DES加密解密实例
在前面介绍了一些加密解密类的使用,这里综合起来做一个简单的测试,代码如下: MainActivity: 复制代码 代码如下: package com.home.testdes; import android.os.Bundle;import android.util.Log;import android.app.Activity; public class MainActivity extends Activity { @Override protected void onCreate(Bund
随机推荐
- 做一个困难重重的hta下载者
- shell写的告警次数控制及恢复示例代码
- 安装SQL2005时出现的版本变更检查SKUUPGRADE=1问题的解决方法
- Angular2 Service实现简单音乐播放器服务
- 批处理常用特殊符号简介
- java unicode转码为中文实例
- php 检查电子邮件函数(自写)
- 使用PHP curl模拟浏览器抓取网站信息
- ubuntu 16.04下mysql5.7.17开放远程3306端口
- Linux Shell 数组建立及使用技巧
- ajax加载页面服务器返回 304 not modified
- CSS制造:鼠标移上去显示大图
- 如何使页面打开时input就被选中?
- Android巧用ActionBar实现下拉式导航
- Android仿淘宝头条基于TextView实现上下滚动通知效果
- 微信开发之使用java获取签名signature
- Android 开发订单流程view实例详解
- Vue拖拽组件开发实例详解
- Java Swing实现扫雷小游戏
- 详解Java泛型及其应用