【情书加密】,花式表白,这样泡小师妹,没跑了|Python 主题月

不知道你们有没有试过有趣的表白情节?以前网上流行发一串摩斯密码,然后解密出来就是一个i love you.今天给你们来带你更高级的加密表白。异或加密情书。

首先先上效果图。

image.png

文件a是初始文本,文件b是由文件a加密而成的。我们发给小师妹的文件可以是b文件。而c文件则是由b文件解密出来的。

image.png

其中如果输入错了解密的密码,就会出现另外一堆乱码。

image.png

只有解密的密码正确,才能输出正确的内容。

加密原理:
异或加密,我们先要知道,任何字符异或一个内容之后,再重复异或之前相同的内容,那么这个字符不变。我们可以把文本内的所有内容都进行异或处理加密。然后再进行异或处理解密。只要钥匙是不变的,那么他们解密后的内容是一样的。

加密代码

#!/usr/bin/python
# -*- coding: UTF-8 -*-
alltext=[]

def writeTxt():
    i=0
    f=open("b.txt","w",encoding='utf-8')
    while i < len(alltext):
        f.write("{}\n".format(alltext[i]))
        i=i+1
    f.close()

def encode():
    pw=(int)(input("请输入4位数字的密码:"))

    f = open("a.txt")
    line = f.readline()
    
    while line:
        onetext=[]
        print("拿完整源码,公众号:诗一样的代码"
        alltext.append(line)
        print(line)
        line = f.readline() 
    f.close() 

encode()
writeTxt()
复制代码

解密代码

#!/usr/bin/python
# -*- coding: UTF-8 -*-
alltext=[]

def writeTxt():
    i=0
    f=open("c.txt","w",encoding='utf-8')
    while i < len(alltext):
        f.write("{}\n".format(alltext[i]))
        i=i+1
    f.close()


def decode():
    pw=(int)(input("请输入4位数字的密码:"))
    f = open("b.txt",encoding='utf-8')
    line = f.readline()
    
    while line:
        onetext2=[]
        print("拿完整源码,公众号:诗一样的代码"
        print(line)
        line = f.readline() 
    f.close() 

decode()
writeTxt()

复制代码

image.png

由于加密的钥匙是自己填写的,我们可以任意修改填写钥匙。由于加密内容的保密性,我们可以把
1加密后的文本
2解密钥匙
3解密exe
以上全部内容发给小师妹,那事情就成了。

当然,为了增加成功率,你也可以批量发给多个小师妹,只要密码不一样,同一个exe,同一份文本,也不会串频道。(狗头表情,开个玩笑)

其实加密方法有很多种,异或加密也是其中一种。在工作中,我们或许在后端框架中看到各种各样的加密。虽然用途和表白不一样。但是只需要研究清楚加密的原理,知识是通用的。

有需要拿完整源码的话,请移步到公众号:诗一样的代码。既然进来了,原创不易。小伙伴点个赞再走呗

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享