除了base64之外还有其他编码方法以“=”结尾吗?

时间:2013-10-30 00:19:48

标签: encryption asp-classic base64 tripledes

我继承了一个项目,其中前一个开发人员使用名为ActiveCrypt.Crypt的ASP对象来加密用户密码,然后再将其发送到数据库。

该呼叫使用模式为7的encryptvariant()函数,我可以找到的唯一文档表明加密是3DES(公司现已不存在)。问题是,从函数派生的值似乎是base64编码的字符串(尾随的单个和双“==”是一个死的赠品)。

是否还有其他编码经常以“=”或“==”结尾?有人熟悉这个ActiveCrypt对象吗?我已经尝试使用密钥对3DES进行编码,然后转换为base64,但没有运气。我还尝试在开发人员交换参数的情况下反转密钥和密码。任何帮助将不胜感激。

使用键“key”(不含引号)的一些示例

abcdefg: xiupz3RT148=

123456: iDLXPSPPjd4=

test: AWulSF10FR0=

1234567890: 8I48MAg9YWvE3y52VfMYew==

1 个答案:

答案 0 :(得分:0)

您显示的编码看起来像8和16字节,使用普通base64编码。 Base64使用4个字符编码3个字节。 DES和3DES的块大小为8字节。因此base64文本的大小似乎反映了块大小。此外,基本64解码的输出看起来完全随机。

因此,在base64解码后,您将拥有8或16个字节,然后您必须解密。关键当然是我们不知道的,块操作模式和填充模式也是如此。所以你必须自己找出它们。如果未给出密钥,则可以在应用程序中对其进行硬编码。

快乐狩猎。