编程实现加法密码的加解密算法密钥可使用键盘输入设置
时间: 2023-06-12 21:04:52 浏览: 165
下面是使用Python实现加法密码的加解密算法,其中密钥可以通过键盘输入设置:
```python
def encrypt(message, key):
encrypted_message = ''
for i in range(len(message)):
# 将明文字符转换为ASCII码
ascii_value = ord(message[i])
# 将密钥字符转换为ASCII码,并且将其转换为小写字母
key_value = ord(key[i % len(key)].lower()) - 97
# 对明文字符进行加密
encrypted_ascii_value = (ascii_value + key_value) % 128
# 将加密后的ASCII码转换为字符
encrypted_char = chr(encrypted_ascii_value)
encrypted_message += encrypted_char
return encrypted_message
def decrypt(encrypted_message, key):
decrypted_message = ''
for i in range(len(encrypted_message)):
# 将密文字符转换为ASCII码
ascii_value = ord(encrypted_message[i])
# 将密钥字符转换为ASCII码,并且将其转换为小写字母
key_value = ord(key[i % len(key)].lower()) - 97
# 对密文字符进行解密
decrypted_ascii_value = (ascii_value - key_value) % 128
# 将解密后的ASCII码转换为字符
decrypted_char = chr(decrypted_ascii_value)
decrypted_message += decrypted_char
return decrypted_message
# 从键盘输入密钥和明文
key = input('请输入密钥:')
message = input('请输入明文:')
# 加密明文
encrypted_message = encrypt(message, key)
print('加密后的密文:', encrypted_message)
# 解密密文
decrypted_message = decrypt(encrypted_message, key)
print('解密后的明文:', decrypted_message)
```
在上述代码中,`encrypt`函数实现了加法密码的加密算法,`decrypt`函数实现了加法密码的解密算法。密钥可以通过`input`函数从键盘输入。在加密和解密的过程中,对于每一个明文字符,都要将其转换为ASCII码,然后加上对应的密钥字符的ASCII码,并且取模128,得到加密后的ASCII码;解密的过程与加密相反。最后,将加密后的ASCII码和解密后的ASCII码转换为对应的字符。
阅读全文