Python异或加密

异或(XOR)加密是一种简单的加密算法,它使用异或运算对明文和密钥进行处理以生成密文,同时也可以使用相同的密钥对密文进行解密。虽然异或加密不是用于安全目的的强大算法,但它可以用于简单的数据混淆。

def xor_encrypt_decrypt(text, key):
    encrypted_text = ''.join(chr(ord(char) ^ ord(key_char)) for char, key_char in zip(text, key))
    return encrypted_text

def main():
    plaintext = input("请输入要加密的文本:")
    key = input("请输入密钥:")

    # 加密
    encrypted_text = xor_encrypt_decrypt(plaintext, key)
    print("\n加密后的文本:", encrypted_text)

    # 解密
    decrypted_text = xor_encrypt_decrypt(encrypted_text, key)
    print("解密后的文本:", decrypted_text)

if __name__ == "__main__":
    main()
  1. xor_encrypt_decrypt 函数接受明文和密钥,然后使用异或运算对每个字符进行处理。在这里,ord 函数返回字符的ASCII码,chr 函数将ASCII码转换回字符。使用异或运算可以在加密和解密之间实现简单的循环,因为 (A XOR B) XOR B 等于 A

  2. main 函数获取用户输入的明文和密钥,然后调用 xor_encrypt_decrypt 函数进行加密和解密。最后,打印加密和解密后的文本。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值