用python实现古典加密算法
时间: 2024-10-21 10:01:03 浏览: 30
创意设计作业 18373714 杨乐凡_古典加密算法_
在Python中实现古典加密算法,通常可以选用一些基本的替代密码方法,如凯撒密码、简单的替换密码(比如维吉尼亚密码),或者更复杂的如恩尼格玛机(机械式加密设备)的模拟。这里简单介绍一种简单的替换密码示例:
```python
def caesar_cipher_encrypt(text, shift):
encrypted_text = ""
for char in text:
if char.isalpha():
# 对字母进行移位
base = 65 if char.isupper() else 97
new_char = chr(((ord(char) - base + shift) % 26) + base)
encrypted_text += new_char
else:
encrypted_text += char # 非字母字符保持不变
return encrypted_text
def caesar_cipher_decrypt(encrypted_text, shift):
return caesar_cipher_encrypt(encrypted_text, -shift)
text = "Hello, World!"
shift = 3
encrypted = caesar_cipher_encrypt(text, shift)
decrypted = caesar_cipher_decrypt(encrypted, shift)
print(f"原文: {text}")
print(f"加密后: {encrypted}")
print(f"解密后: {decrypted}")
```
在这个例子中,`caesar_cipher_encrypt`函数用于加密文本,`caesar_cipher_decrypt`函数用于解密。用户输入原始文本和偏移量(shift值),然后加密和解密过程就会按照指定的规则进行。
阅读全文