首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >加密/编码算法

加密/编码算法
EN

Stack Overflow用户
提问于 2009-10-22 21:31:28
回答 3查看 1K关注 0票数 0

我有一个未加密/未编码的字符串- "565040574"。我还有这个字符串的加密/编码字符串- "BSubW2AUWrSCL7dk9ucoiA=="

看起来这个字符串在加密后已经被Base64ed了,但是我不知道使用了哪种加密算法。如果我使用Convert.FromBase64String("BSubW2AUWrSCL7dk9ucoiA==")将"BSubW2AUWrSCL7dk9ucoiA==“字符串转换成字节,我得到的是16字节。

有没有什么方法可以让我知道在将"565040574"加密到"BSubW2AUWrSCL7dk9ucoiA=="时使用的加密类型

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-10-22 21:35:10

不,没有什么可以告诉你它是如何加密的。如果你没有解密它的密钥,那么你无论如何都会倒霉的。

如果计划将其保存到文件或通过电子邮件发送,那么它将是base-64编码的,所以这是一个很好的猜测。

你也许可以通过查看你有7字节填充的事实来缩小它的范围,但是无论它是IDEA还是Blowfish还是AES,都没有办法知道。

票数 4
EN

Stack Overflow用户

发布于 2009-10-22 21:34:19

看着它,从我的头顶,我会说AES,更具体地说,Rijndael。

编辑:

只是补充一下,正如我在评论中所说,没有密钥,你永远不会知道这是什么。我采取的是最佳猜测方案,也是基于可以被称为“更常见”的实现,这也可能是我的完全疏忽。

请记住,如果您可以直截了当地说出密文采用的是哪种算法,那么就永远不要使用该算法。

票数 2
EN

Stack Overflow用户

发布于 2009-10-23 06:36:28

你能从你所拥有的数据中看出什么?好的,您拥有的最具体的信息是9字节的明文加密为16字节的密文。由于不太可能对如此小的数据块使用数据压缩算法,这意味着我们可以做出有根据的猜测:

  • 它使用数据块密码加密,数据块大小为128位。
  • 加密模式为ECB,因为没有空间容纳IV。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1607227

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档