【Python】用base64和RC4给数据加密/解密
来源:互联网 发布:js拉链是哪个国家的 编辑:程序博客网 时间:2024/05/17 05:29
# -*- coding: utf-8 -*-import random, base64from hashlib import sha1def crypt(data, key): """RC4 algorithm""" x = 0 box = range(256) for i in range(256): x = (x + box[i] + ord(key[i % len(key)])) % 256 box[i], box[x] = box[x], box[i] x = y = 0 out = [] for char in data: x = (x + 1) % 256 y = (y + box[x]) % 256 box[x], box[y] = box[y], box[x] out.append(chr(ord(char) ^ box[(box[x] + box[y]) % 256])) return ''.join(out)def tencode(data, key, encode=base64.b64encode, salt_length=16): """RC4 encryption with random salt and final encoding""" salt = '' for n in range(salt_length): salt += chr(random.randrange(256)) data = salt + crypt(data, sha1(key + salt).digest()) if encode: data = encode(data) return datadef tdecode(data, key, decode=base64.b64decode, salt_length=16): """RC4 decryption of encoded data""" if decode: data = decode(data) salt = data[:salt_length] return crypt(data[salt_length:], sha1(key + salt).digest())# 需要加密的数据data = 'hello python'# 密钥key = '123456'# 加码encoded_data = tencode(data=data, key=key)print encoded_data# 解码decoded_data = tdecode(data=encoded_data, key=key)print decoded_data
0 0
- 【Python】用base64和RC4给数据加密/解密
- 通过RC4加密解密数据
- python base64 加密 解密
- Python 实现base64加密和解密
- Base64加密和解密
- BASE64加密和解密
- RC4加密解密
- php--rc4加密解密
- java RC4加密解密
- Rc4加密解密
- java RC4加密解密
- Java RC4 加密解密
- RC4加密解密
- RC4加密解密
- java RC4加密解密
- RC4加密解密实现
- Python学习笔记 --- 使用Base64对数据加密解密
- Base64数据加密与解密
- Android 网络请求详解
- 【ZYNQ-7000开发之十一】VGA RLT代码封装成AXI Stream
- Xcode7 beta 网络请求报错:The resource could not be loaded because the App Transport Security policy requir
- 利用RunTime实现iOS不同版本下使用不同的图片
- windows10 下面,编译protobuf-java-3.0.0-beta-1.jar
- 【Python】用base64和RC4给数据加密/解密
- JavaSE入门学习18:Java面向对象之多态
- LeetCode22. Generate Parentheses
- 开启Hadoop2.6.0出现ssh无法解析主机名等错误提示的解决办法!
- 有符号数与无符号数
- CNN中各层图像大小的计算
- Android进阶之路——自定义NumberPicker
- perl weixin 登陆
- poj2836(状态压缩dp)