我知道许多在.NET框架中可用的加密提供程序以及如何使用它们的基础知识。这很简单。保护C#中的加密密钥#
但我担心的是这个。
假设我想使用这些库来加密XML序列化对象以防止篡改以及任何人前来查看这些文件的内容的能力。
我总是留下的问题是,解密这些数据的密钥需要作为常量存储在我的应用程序的某处。基本上使整个练习毫无意义。
那么,如何在反汇编应用程序内安全地存储加密算法的密钥?
编辑:所以,如果我正确理解下面的两个答案。这意味着基本上任何实现(要安全)都要求它是只读或只写,但从来都不是?它是否正确?
尽可能地模糊XML(添加随机数据+使用ROT13原始加密方案+等)并将其序列化为二进制模式或Base64模式。要点是通过程序反汇编对XML进行解码,尽可能让用户不用花时间去做这件事...... – 2011-03-18 14:01:14