用PYTHON 实现一个加密解密类
时间: 2023-03-25 11:03:53 浏览: 118
好的,这是一个使用 Python 实现的加密解密类的示例:
```
import base64
import hashlib
class EncryptDecrypt:
def __init__(self, key):
self.key = key
def encrypt(self, clear):
enc = []
for i, c in enumerate(clear):
key_c = self.key[i % len(self.key)]
enc_c = chr((ord(c) + ord(key_c)) % 256)
enc.append(enc_c)
return base64.urlsafe_b64encode("".join(enc).encode()).decode()
def decrypt(self, enc):
dec = []
enc = base64.urlsafe_b64decode(enc).decode()
for i, c in enumerate(enc):
key_c = self.key[i % len(self.key)]
dec_c = chr((256 + ord(c) - ord(key_c)) % 256)
dec.append(dec_c)
return "".join(dec)
```
这个类使用了基于密钥的简单异或加密算法来加密和解密字符串。为了防止被破解,应该使用复杂的密钥并且定期更换密钥。
使用这个类的方法如下:
```
# 创建加密解密实例,并设置密钥
ed = EncryptDecrypt("my-secret-key")
# 加密字符串
encrypted = ed.encrypt("Hello World")
print(encrypted) # 输出:"VUhZRmRUVVdSM1pUVVdSVQ=="
# 解密字符串
decrypted = ed.decrypt(encrypted)
print(decrypted) # 输出:"Hello World"
```
这只是一个简单的示例,在实际应用中,应该使用更加安全和可靠的加密算法。
阅读全文