【发布时间】:2017-04-13 01:17:46
【问题描述】:
我了解如何读取十进制、二进制、十六进制和 base64;也就是说,我可以手动将表示为每个基数的数字/计数转换为其他基数的表达式。
我正在做 matasano 加密挑战,第一个任务让我开始思考 (https://cryptopals.com/sets/1/challenges/1)。
我发现解决此问题的方法将十六进制字符串转换为字节(二进制),然后将字节转换为 base64。我明白。或者我是这么想的。我可以简单地连接这些字节并说我有相同数字的二进制字符串表达式吗?
我注意到他们基本上一次读取 2 个十六进制字符(因为 2 个十六进制字符最多为一个字节)。这会产生一个二进制字符串,其中每个二进制字符(位)都与它来自的十六进制字符“对齐”。
这是否意味着我可以将这个二进制字符串转换为十进制,并且它将与十六进制字符串表示的“数字”相同?
是否可以使用类似的逐字符方案来转换为 base64?每个 base64 字符有多少个十六进制字符?
【问题讨论】:
-
你应该阅读this。
-
@Flimzy 是的。抱歉,不是故意的