【发布时间】:2011-12-05 15:44:49
【问题描述】:
现在我知道这是一个非常开放的问题,例如“一根绳子有多长”,但我是这个游戏的新手。
根据我的基本理解(在深入研究该主题之前),我相信 AES 256 位加密非常安全。
我的需要是使用 .Net 使用最安全的加密方式生成私钥和公钥。
现在我从专家的角度知道这可能是一个幼稚的问题,但请帮助我扩展我的知识并提出最佳方法、算法以及在此类项目中需要考虑的任何其他内容。
非常感谢。
【问题讨论】:
-
说白了:只要你去做,就不安全。正如 Bruce Schneier 所写:“密码很难。密码学很难。密码是最容易的部分。”了解该主题并使用高质量的图书馆。 您的代码将是薄弱环节,而不是密码。
-
您的问题表明对加密缺乏了解。这意味着你不会正确地实现它,它会被破坏。我一直都弄错了加密货币,而且我已经这样做了 年。我建议您在尝试干预此类事情之前至少阅读一些有关基本密码原理的文献。
-
@KerrekSB 你是说.Net 库msdn.microsoft.com/en-us/library/… 这样的东西很弱吗?
-
@Jon:不,这些库几乎肯定没问题。我要说的是,只要你没有牢牢把握这个主题,你很可能会设计出一个具有比库中的任何弱点更容易利用的缺陷的系统。 (由于这个事实本身就是密码学的第一课,我很想得出结论,你还没有达到那个水平。)
-
@KerrekSB - 我想起了克格勃密码破解者的古老格言:“破解手指比破解密码更容易”。
标签: c# .net security encryption .net-4.0