我怎样才能创建一个可以加密其他程序然后解密它们的程序?

时间:2011-06-07 05:49:05

标签: c# encryption

所以我想知道是否有任何方法可以在Visual C#.NET中创建一个程序,该程序可以接收另一个程序并加密程序的内容(实际上是机器代码),然后将其放入运行时的程序中,解密其他程序,并执行解密的程序。

如果有可能,怎么样?

另一个非主题问题: 我可以使用Visual C#.NET GUI以不同的编程语言(例如将其写入HTML或PERL)写入程序(由C#GUI中的用户确定)吗?

4 个答案:

答案 0 :(得分:2)

简短回答:是的。

答案很长:是的,但很少有理由这样做,我告诉你,你在这个特殊的螺丝上使用了错误的锤子。现在,如果你试图使得到的程序压缩比原始程序更糟糕,我会立即纠正。

如果你有一个程序,在没有外部输入的情况下,自动解密其内容然后执行它们,那么内容实际上已经是明文,这使得加密对攻击者无效。

答案 1 :(得分:0)

我不确定,但也许您正在寻找类似this的内容。

对于加密/解密,请使用您选择的算法。 Twofish总是很好。

答案 2 :(得分:0)

如果要保护.NET程序集,使用好的混淆器是比加密更好的解决方案。如果您完全依赖加密代码中嵌入的密钥,那么提取原始exe可能需要半小时的任务。如果您还想尝试一下netz如何处理压缩和打包(只需google for netz和下载源)

答案 3 :(得分:0)

无论是程序,图像,视频还是其他任何东西,它都是一个文件。所以是的,您可以使用C#加密任何类型的文件。 Here is an article关于如何加密和解密文件。

在你真正尝试任何成为商业产品的东西之前,我建议你研究密码学,以防止实施中潜在的陷阱。

人们常说加密算法不是脆弱的,而是实施。

此外,还有很多关于加密/解密问题的问题。