专栏首页编程微刊三分钟教你学会如何将密文解码成明文

三分钟教你学会如何将密文解码成明文

1:准备好你的密文(将铭文转换成密文) 代码如下:

# coding=utf-8
import base64


def encrypt(en_str):
    """
    加密:先对原字符串作base64加密,然后将加密后的字符串首尾字符对换位置,得到密文
    :param en_str: 待加密明文
    :return: 加密后的密文
    """
    en_str = base64.b64encode(en_str)
    # print "加密后的字符串:  " + en_str
    en_str = en_str[-1] + en_str[1:len(en_str) - 1] + en_str[0]
    # print "对换后的字符串:  " + en_str
    return en_str


def decrypt(de_str):
    """
    解密:先将密文首尾字符对换位置,然后base64解密
    :param de_str: 待解密密文
    :return:
    """
    de_str = de_str[-1] + de_str[1:len(de_str) - 1] + de_str[0]
    # print "解密前的字符串:  " + de_str
    de_str = base64.b64decode(de_str)
    # print "解密后的字符串:  " + de_str
    return de_str

if __name__ == '__main__':
    str = '这里填写你想要生成密文的明文,程序会自动生成一连串的密文给你'
    en_str = encrypt(str)
    print en_str
    de_str = decrypt(en_str)
    print de_str

我已经准备生成好的密文如下:想看看这段密文写的是什么吗?随着我的脚步一步步来看吧,你会看到意想不到的惊喜,也会惊艳与自己的破解密文的能力。 WYWz5rOo5YWs5LyX5Y+34oCc57yW56iL5b6u5YiK4oCd77yM6K6k6K+G576O5aWz5bCP57y5

2:Python开发环境的安装,如果没有的话,推荐一款在线运行神器:https://c.runoob.com/compile/6

3:将密文转换成明文的代码如下

将这段代码粘贴在神器里面,想看看小编说了一句什么话吗?那就点击运行:

# coding=utf-8
import base64


def encrypt(en_str):
    """
    加密:先对原字符串作base64加密,然后将加密后的字符串首尾字符对换位置,得到密文
    :param en_str: 待加密明文
    :return: 加密后的密文
    """
    en_str = base64.b64encode(en_str)
    # print "加密后的字符串:  " + en_str
    en_str = en_str[-1] + en_str[1:len(en_str) - 1] + en_str[0]
    # print "对换后的字符串:  " + en_str
    return en_str


def decrypt(de_str):
    """
    解密:先将密文首尾字符对换位置,然后base64解密
    :param de_str: 待解密密文
    :return:
    """
    de_str = de_str[-1] + de_str[1:len(de_str) - 1] + de_str[0]
    # print "解密前的字符串:  " + de_str
    de_str = base64.b64decode(de_str)
    # print "解密后的字符串:  " + de_str
    return de_str

if __name__ == '__main__':
    en_str = 'WYWz5rOo5YWs5LyX5Y+34oCc57yW56iL5b6u5YiK4oCd77yM6K6k6K+G576O5aWz5bCP57y5'
    print en_str
    de_str = decrypt(en_str)
    print de_str

OK,从朋友那里学来的Python解密小技巧,记录一下。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 十大厂商为什么要联合推出快应用对标小程序?

    王小婷
  • 小程序模拟调用本地json接口数据

    把准备好的json数据渲染到前端界面,模拟在这里加载本地json数据。效果如下,能看到界面渲染的数据。

    王小婷
  • 修改Eclipse文件连接数据库

    今天遇到这样的一个需求,修改已经上线的项目的数据库,为了不影响工作人员的使用,于是,决定修改一下地址,在114的服务器上进行更改,所以,就涉及到了要修改的两个文...

    王小婷
  • Web前端安全问题

    在互联网时代,信息安全成为一个非常重要的问题,所以我们西部了解前端的安全问题,并且知道如何去预防、修复安全漏洞。

    Cloud-Cloudys
  • 猫眼测开一二三面面经,给口头offer

    一面: 计算机网络: 面试官:浏览器输入URL地址到呈现页面给用户,中间到底发生了什么?用到了什么协议。 我:balabala,扯到了DNS 面试官:DNS的查...

    牛客网
  • 调试PyPy运行Django出现的错误:Segmentation fault

    前两天在家研究了下pypy,顺便也搭建了一个基于pypy的virtualenv环境: 创建基于pypy的virtualenv虚拟环境 ,在上篇文章最后说到在用d...

    the5fire
  • 为什么 Java 不支持类多重继承?

    我发现这个问题很难回答,因为答案可能不会让面试官满意,在大多数情况下,面试官正在寻找答案中的关键点,如果你提到这些关键点,面试官会很高兴。

    Java技术栈
  • 芒果超媒市值超爱奇艺:长视频的异类?

    芒果超媒7月10日晚间发布2020年半年度业绩预告。报告期内,芒果超媒预计实现归属于上市公司股东的净利润为10.4亿元-11.4亿元,同比增长29.42%-41...

    刘旷
  • 如何向小白介绍何谓机器学习和数据挖掘?买回芒果他就懂了

      买芒果   嘴馋的你想吃芒果了,于是你走到水果摊,挑了几个让老板过过秤,然后你再根据芒果的斤两付钱走人。   显然,买芒果你当然是挑着最甜、最熟的来买(因为...

    小莹莹
  • 【机器学习】机器学习大白话

    买芒果 嘴馋的你想吃芒果了,于是你走到水果摊,挑了几个让老板过过秤,然后你再根据芒果的斤两付钱走人。 显然,买芒果你当然是挑着最甜、最熟的来买(因为你是根据重量...

    陆勤_数据人网

扫码关注云+社区

领取腾讯云代金券