恩尼格玛密码机 python
时间: 2023-12-14 13:34:29 浏览: 123
恩尼格玛模拟器(外国的)
5星 · 资源好评率100%
恩尼格玛密码机是一种早期的自动加密设备,用于加密和解密信息。然而,由于其复杂性和高昂的成本,它并没有在当时得到广泛应用。在Python中,我们可以使用现有的库来实现类似恩尼格玛密码机的加密和解密功能。
以下是一个使用Python实现的简单加密和解密示例:
```python
import base64
def encrypt(text, key):
encrypted_text = []
for i, char in enumerate(text):
key_c = key[i % len(key)]
encrypted_c = chr((ord(char) + ord(key_c)) % 256)
encrypted_text.append(encrypted_c)
return base64.urlsafe_b64encode("".join(encrypted_text).encode()).decode()
def decrypt(encrypted_text, key):
encrypted_text = base64.urlsafe_b64decode(encrypted_text).decode()
text = []
for i, encrypted_c in enumerate(encrypted_text):
key_c = key[i % len(key)]
char = chr((256 + ord(encrypted_c) - ord(key_c)) % 256)
text.append(char)
return "".join(text)
key = "密钥"
text = "需要加密的文本"
encrypted_text = encrypt(text, key)
print("加密后的文本:", encrypted_text)
decrypted_text = decrypt(encrypted_text, key)
print("解密后的文本:", decrypted_text)
```
在这个示例中,我们使用了Base64编码来简化加密和解密过程。你可以根据需要替换为其他加密算法。请注意,这个示例仅用于演示目的,实际应用中需要考虑更多的安全性因素。
阅读全文