![]() |
1
8
可能吗?对。 容易的?这要看情况而定。 如果您已经在.NET中编写了DLL, decompilation 是一个快照,使用类似 Reflector ,除非你有 obfuscated 您的代码。 即使这不是.NET代码,它仍然是可能的,尽管困难得多。如果你用现有的工具混淆了你的代码,你会让事情变得更加困难。 一般来说,如果你把你的代码(编译或不编译)给某人,他们 将 能够从程序集/字节码中反编译它,即使它是模糊的。 这并不总是容易的,而且通常会付出太多的努力。这真的取决于你有多偏执,你的代码对第三方有多重要。 无法抵御真正坚定的攻击者。他们可能要花上几年时间,但如果他们真的下定决心,他们会解决的。 |
![]() |
2
5
调用从编译代码中恢复源代码的过程 decompilation 而且,根据程序所用的语言,可以取得更好或更差的结果。 为了保护自己免受反编译,可以使用 obfuscator 它通过修改二进制文件使其更难反编译来工作。模糊器使用的技术的一个例子是用无意义的名称(例如,a001、a002,…)替换二进制文件中可见的成员的名称,这样分解后的代码就没有意义了。有些人甚至为这些名称使用关键字(例如for,while,…),这样一个幼稚的反编译程序将产生甚至无法编译的代码。它们还可以使用其他技术,如加密字符串,以便在查看二进制文件时不可读。 模糊并不是一种完美的防御。一个才华横溢、意志坚定的对手可能能够恢复一些与原始源代码相当相似的东西,即使你使用了模糊处理。 |
![]() |
3
2
试着认为你的代码可以被任何人重写,因为一旦你开始接受你的项目的承包商,这个想法就会公开。 你有什么,他没有:知道怎么做生意。如果你担心他会这样做,向他求婚,你不会有任何疑问。 所以我建议你不要担心这里的技术问题。 |
![]() |
A B · C#Excel自动调整列避免长文本时出错 3 月前 |
![]() |
pseudodev · 失败的测试仅显示堆栈跟踪,不显示完整日志 4 月前 |
![]() |
CactusCake · if语句中应有分号 5 月前 |
![]() |
Bin4ry · 子文件夹中的应用程序设置 5 月前 |