大家好,请问用GO语言编写的项目在windows平台后生成的exe可执行文件的逆向工程难度怎么样?现在公司的项目模块是用JAVA写的,出现了被同行逆向工程的情况,故考虑把核心部分换语言重构。
大家好,请问用GO语言编写的项目在windows平台后生成的exe可执行文件的逆向工程难度怎么样?现在公司的项目模块是用JAVA写的,出现了被同行逆向工程的情况,故考虑把核心部分换语言重构。
7 回答5.3k 阅读
6 回答6.8k 阅读✓ 已解决
4 回答2.3k 阅读
1 回答3.3k 阅读
2 回答898 阅读✓ 已解决
2 回答2.2k 阅读
1 回答2.1k 阅读
大致上跟其它编译到机器码的语言一样:别人只能看汇编了。
不过,「故考虑把核心部分换语言重构」,如果你考虑在同一进程里同时使用 Go 和另一种语言,特别是解释型语言的话,还是放弃吧。Go 和 C 之间的调用已经被 Go 核心开发者警告了(请搜索「cgo is not go」;你没看到 Go 语言的项目都是自个儿干活,极少有混编的情况),和其它大运行时的程序调……你饶了你自己吧。
出于代码保护目的,建议使用 Rust,和 Python、Ruby、Lua、NodeJS、Haskell、C、C++ 等等语言相互调用都容易得多。