隐藏 C++ 项目中的敏感代码

hide sensitive code in a c++ project

本文关键字:代码 C++ 项目 隐藏      更新时间:2023-10-16

我有一个提交到 github 的 c++ 项目,其中许多开发人员被添加为贡献者。一些源代码在IP方面非常敏感...

有没有办法从项目中隐藏一些代码?项目需要该代码才能运行,但开发人员无需更新或读取它。

谢谢!

如果您对"敏感"代码的许可有任何疑问,则不应分发它。

在替代路由方面,可以改为在项目中包含二进制文件。这样,您仍可以通过链接二进制文件在项目中使用代码,但不必提供源代码。

敏感代码编译为动态链接的库(在 Windows 上.DLL),并且仅将其与头文件一起发布。或者,将其编译为静态库,并要求其他贡献者在更新时重新链接。

使用 Pimpl 等标准技术来确保头文件仅包含接口,不包含实现。

注意:一个足够坚定的人总是可以通过反汇编来弄清楚你的代码在做什么。但是,此方法将阻止他们看到源代码。