猫史档案馆


Python加密与解密代码和教程

用户:信好离李阿信好离李阿查看:0 回复:1 评论:0 创建时间:2023-01-05T16:31:50


Python加密与解密代码和教程

本人第一次发布教程帖子,请大家多多指教(大佬勿喷!)

      回归话题,今天作者是来讲讲Python语言解密与解密代码教程,首先讲解密的代码。

       大家都知道Python中使用的是UTF-8编码实现与数字之间的映射(不知道的假装一下,作者不想多讲)。在本帖子这个例子上如果直接使用UTF-8编码,很容易就被破解,因此需要我们在原来的编码的基础上设定一个新的规则——字符对应的编码*10+5这里可以随意设置但是解密程序也要对应),从而得到 × 位密码(这个位数是根据前面新的规则变化的,是6位数的密码)。

      再来分析一下流程。本程序的关键点是将字符转换成编码字符串中的每一个字符都采用同样的方法进行转换,因此这个过程我们可以自定义一个加密函数encrypt()来实现再通过循环对字符串里的每个字符进行加密。

      接下来就是看代码了(作者敲了敲电脑!!):

      下面是加密程序的代码(以下代码可以全部复制):

def encrypt(c):

    return ord(c) * 10 + 5                           #" * 10 + 5"这里不用空格,作者为了美观,用了控制台也不会报错,还有,这个规则是可以随意设置的。

print("输入需要加密的文字:")                        

strs = input()

encrypted1STRS = ""

for i in strs:

    encrypted1C = encrypt(c)                   #将encrypt(c) 函数返回的数值赋值给变量encrypted1C

    encrypted1STRS = encrypted1STRS+str(encrypted1C) + ""

                                                            #连接加密后的编码

print("加密后:",encrypted1STRS)

      下面是解密程序的代码(以下代码可以全部复制):

def decrypt(i):

    i = int(i)     

    return chr(int((i-5)/10))            #chr()函数将编码转换成字符

print("输入需要解密的编码,多个编码用空格分隔")

codes = input()

decrypted2STRS = ""

for i in codes.split(""):                        #将decrypt(i)函数返回的字符赋值给变量decrypted2c

    decrypted2c = decrypt(i)

    decrypted2STRS += decrypted2c     #连接解密后的字符

print("解密后:", decrypted2STRS)

    好了,代码全部都在上面了,不懂的在评论区留言,拜了个拜!


回复

上一页1 页 / 共 1下一页
炭烤小章鱼炭烤小章鱼

Python有丰富的第三方库,与之相比,crypto不更完整有效?

 

点赞0


评论