当前位置:首页-正文

现在的程序员聊天都这么秀么?给你发串代码自己研究想表达的到底是什么

最近在技术交流社区 V2EX 有个很有趣的帖子,有网友发帖表示别人给他发了串代码但并不知道这串代码的含义。

单纯从代码上看似乎是基于BASE64算法进行加密的 ,  如果尝试进行解密的话会得到QRCODE开头的二进制数据。

如果能成功将这些二进制数据转换为二维码的话 ,  扫描这个二维码可得出三个数字分别是27877/22434/20102。

然而搞定前面的所有步骤得到这三个数字想要继续解密的话也不容易,所以这三个数字具体代表的是什么含义呢?

最终内容基于BASE64加密:

cXJjb2RlMTExMTExMTAxMDExMDExMDAwMDAwMDExMTExMTExMDAwMDAxMDEwMDEwMDAxMTAwMDEwMTAwMDAwMTEwMTExMDEwMTExMTAwMTAxMDEwMDAxMDExMTAxMTAxMTEwMTAwMTEwMDAwMDExMTAxMDEwMTExMDExMDExMTAxMDAxMDEwMDAxMDEwMTAwMTAxMTEwMTEwMDAwMDEwMTAwMTAxMDAwMTAwMDAxMDAwMDAxMTExMTExMTAxMDEwMTAxMDEwMTAxMDExMTExMTEwMDAwMDAwMDEwMTExMDAxMTExMTAwMDAwMDAwMDAwMTExMDEwMTAwMDAwMDEwMDAwMDExMTAwMTExMTAxMDExMDEwMTEwMTEwMDAxMTAxMDEwMTExMDEwMDEwMDAxMTEwMTEwMDAwMTAwMTAwMDExMDAxMDEwMDExMTAxMTExMTExMDExMTExMTAxMDEwMDAxMDEwMTExMTAxMDExMTAwMDAxMDExMTAxMDAxMTEwMTAxMDAwMDAxMDAxMDEwMTAwMTAxMTAxMDAxMTExMTAwMTEwMDExMTExMDAxMDAwMDEwMTAwMTEwMDEwMDAwMDEwMDExMDAxMDAxMTEwMTAxMTAwMTAxMDEwMDAxMTAwMDAwMTAwMDAwMDAxMDEwMTEwMDEwMDAxMTAxMDAxMTAxMTEwMDAwMDAxMDEwMDAwMTAxMDAwMTAwMDExMDExMDEwMDAxMDEwMTAwMDAxMDExMTAwMDAxMTExMDAxMDAwMDExMDAxMDAwMDEwMDAxMTEwMDAxMDAxMDExMTExMTExMTExMTAwMDAwMDAwMDAxMTEwMDEwMTAwMDExMDAwMTEwMDExMTExMTExMDAwMDAxMDAxMTAxMTEwMTAxMTExMDEwMDAwMDEwMDEwMDExMDExMDEwMTAwMDEwMDAxMTAxMTEwMTAxMTExMDEwMDEwMDAxMTExMTExMTAxMDExMTAxMDEwMTAxMDAwMDExMDAxMDEwMDAwMDEwMTExMDEwMTEwMTAxMTEwMTAwMDExMDEwMTEwMTAwMDAwMTAwMDExMDExMTAxMDEwMTAwMTAwMTAxMTExMTExMDAxMTAxMTEwMDAwMTAxMTAwMTEwMA==

将上述字符串解密得到:

qrcode1111111010110110000000111111110000010100100011000101000001101110101111001010100010111011011101001100000111010101110110111010010100010101001011101100000101001010001000010000011111111010101010101010111111100000000101110011111000000000001110101000000100000111001111010110101101100011010101110100100011101100001001000110010100111011111110111111010100010101111010111000010111010011101010000010010101001011010011111001100111110010000101001100100000100110010011101011001010100011000001000000010101100100011010011011100000010100001010001000110110100010101000010111000011110010000110010000100011100010010111111111111000000000011100101000110001100111111110000010011011101011110100000100100110110101000100011011101011110100100011111111010111010101010000110010100000101110101101011101000110101101000001000110111010101001001011111110011011100001011001100

将上述二进制数据转换得到二维码和三个数字:

[27877,22434,20102]

亦可直接通过IMAGEIO生成二维码:

pip install imageio
import base64
import numpy as np
from imageio import imwrite
s = """cXJjb2RlMTExMTExMTAxMDExMDExMDAwMDAwMDExMTExMTExMDAwMDAxMDEwMDEwMDAxMTAwMDEwMTAwMDAwMTEwMTExMDEwMTExMTAwMTAxMDEwMDAxMDExMTAxMTAxMTEwMTAwMTEwMDAwMDExMTAxMDEwMTExMDExMDExMTAxMDAxMDEwMDAxMDEwMTAwMTAxMTEwMTEwMDAwMDEwMTAwMTAxMDAwMTAwMDAxMDAwMDAxMTExMTExMTAxMDEwMTAxMDEwMTAxMDExMTExMTEwMDAwMDAwMDEwMTExMDAxMTExMTAwMDAwMDAwMDAwMTExMDEwMTAwMDAwMDEwMDAwMDExMTAwMTExMTAxMDExMDEwMTEwMTEwMDAxMTAxMDEwMTExMDEwMDEwMDAxMTEwMTEwMDAwMTAwMTAwMDExMDAxMDEwMDExMTAxMTExMTExMDExMTExMTAxMDEwMDAxMDEwMTExMTAxMDExMTAwMDAxMDExMTAxMDAxMTEwMTAxMDAwMDAxMDAxMDEwMTAwMTAxMTAxMDAxMTExMTAwMTEwMDExMTExMDAxMDAwMDEwMTAwMTEwMDEwMDAwMDEwMDExMDAxMDAxMTEwMTAxMTAwMTAxMDEwMDAxMTAwMDAwMTAwMDAwMDAxMDEwMTEwMDEwMDAxMTAxMDAxMTAxMTEwMDAwMDAxMDEwMDAwMTAxMDAwMTAwMDExMDExMDEwMDAxMDEwMTAwMDAxMDExMTAwMDAxMTExMDAxMDAwMDExMDAxMDAwMDEwMDAxMTEwMDAxMDAxMDExMTExMTExMTExMTAwMDAwMDAwMDAxMTEwMDEwMTAwMDExMDAwMTEwMDExMTExMTExMDAwMDAxMDAxMTAxMTEwMTAxMTExMDEwMDAwMDEwMDEwMDExMDExMDEwMTAwMDEwMDAxMTAxMTEwMTAxMTExMDEwMDEwMDAxMTExMTExMTAxMDExMTAxMDEwMTAxMDAwMDExMDAxMDEwMDAwMDEwMTExMDEwMTEwMTAxMTEwMTAwMDExMDEwMTEwMTAwMDAwMTAwMDExMDExMTAxMDEwMTAwMTAwMTAxMTExMTExMDAxMTAxMTEwMDAwMTAxMTAwMTEwMA==
"""
code = base64.b64decode(s).decode()
code = code[6:]
num = [int(i)*255 for i in code]
n = np.array(num)
n = n.reshape(29,29)
imwrite('a.png', n)

三个数字代表的是什么含义:

其实由原先的字符串到解密到三个数字按理说应该结束了,这三个数字就是当初被经过几层加密转换的主要内容。

然而既然三个数字的含义没有完成解密那么工作还没做完,但是单纯的看着这几个数字你能想到代表什么内容呢?

最终机智的网友还是想到这些数字可能是Unicode 汉字编码,每个数字前加上&#然后再进行转换即可得到文字。

通过Unicode转码工具可以得出泥、垢、了分别代表的三个中文汉字是泥垢了 (你够了)。

也就是这三个汉字先经过Unicode 编码然后转成二进制二维码数据再进行BASE64加密,完成这些后再发给别人。

至于进行这些编码的人为什么给这名发帖者发布这个内容就不清楚了,网友开玩笑表示不知道是不是拒绝表白的。

本文来源V2EX,由山外的鸭子哥转载或编译发布,如需转载请联系原作者。

相关文章

换一批