欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

凯撒加解密任意可见字符

程序员文章站 2022-03-05 12:40:59
...

凯撒加解密:

功能:
(1)明(密)文可以任意输入字符;
(2)明(密)文长度不限制;
(3)加密与解密模块可以选择。

代码

#加密
def encrypt(key,message):
    result = ''
    for item in message:
            num = ord( item ) + key  
            if num <=126 :
                 result += chr( num % 127)
            else:
                result += chr( num % 127 + 32)
return result

#解密
def decrypt(key,message):
    result = ''
    for item in message:
        num = ord(item) - key
        if num >=32:
            result += chr( num )
        else:
            result += chr(num-32+127)
return result

#main()函数:
def main():
    key = int ( input ('输入一个整数作为**(0~94):'))
    message = input('请输入信息:')
    choice = input('0:加密,1:解密,请输入0或者1:')
    if choice=='0':
        ciphertext=encrypt(key,message)
        print('ciphertext:',ciphertext)
    elif choice=='1':
        plaintext=decrypt(key,message)
        print('plaintext:',plaintext)
    else:
        print('输入错误')

运行截图

凯撒加解密任意可见字符
凯撒加解密任意可见字符

相关标签: 密码学 密码学