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

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 三分钟教你学会如何将密文解码成明文

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解密小技巧,记录一下。

相关文章
|
10天前
|
算法 网络安全 区块链
2023/11/10学习记录-C/C++对称分组加密DES
本文介绍了对称分组加密的常见算法(如DES、3DES、AES和国密SM4)及其应用场景,包括文件和视频加密、比特币私钥加密、消息和配置项加密及SSL通信加密。文章还详细展示了如何使用异或实现一个简易的对称加密算法,并通过示例代码演示了DES算法在ECB和CBC模式下的加密和解密过程,以及如何封装DES实现CBC和ECB的PKCS7Padding分块填充。
31 4
2023/11/10学习记录-C/C++对称分组加密DES
|
3月前
|
人工智能 小程序 数据安全/隐私保护
维吉尼亚密文解密小程序
维吉尼亚密文解密小程序
31 0
|
4月前
|
算法 JavaScript 前端开发
国标非对称加密:RSA算法、非对称特征、js还原、jsencrypt和rsa模块解析
国标非对称加密:RSA算法、非对称特征、js还原、jsencrypt和rsa模块解析
345 1
|
6月前
|
算法 vr&ar 数据安全/隐私保护
$文本串加密和解密程序
$文本串加密和解密程序
|
7月前
|
存储 算法 物联网
加密/解密(对比)
加密/解密(对比)
|
资源调度 算法 安全
现代密码学 | 02:流密码——1
现代密码学 | 02:流密码——1
742 0
|
算法 安全 数据安全/隐私保护
现代密码学 | 02:流密码——2
现代密码学 | 02:流密码——2
758 0
|
数据安全/隐私保护 C++
C/C++ 异或加密实现代码
一段使用C++开发实现的异或加解密方法,可用于对特定字符串数据进行数据加解密操作,方便后期调用。
274 0
|
算法 安全 测试技术
笔记-加密编码算法
笔记-加密编码算法
144 0
笔记-加密编码算法
|
C# 数据安全/隐私保护
RSA不限长度非对称加密解密C#
RSA 分段加解密【解决“不正确的长度”的异常】   RSA 是常用的非对称加密算法。最近使用时却出现了“不正确的长度”的异常,研究发现是由于待加密的数据超长所致。   .NET Framework 中提供的 RSA 算法规定:   待加密的字节数不能超过密钥的长度值除以 8 再减去 11(即:RSACryptoServiceProvider.KeySize / 8 - 11),而加密后得到密文的字节数,正好是密钥的长度值除以 8(即:RSACryptoServiceProvider.KeySize / 8)。
1636 0