方便地对C++中的所有字符串文字进行模糊处理
Conveniently obfuscating all string literals in C++
我已经看到了这个问题和ADVobfuscator git存储库。我发现的最接近的东西是类似于这个存储库的东西。
但我的问题是我有一个相当大的代码,它使用多个系统调用,并根据字符串文字及其连接打印大量消息。因此,许多命令都是在目标代码中编写的,我希望它们保持可读性,并且混乱最少。
与可以使用OBFUSCATE
宏本地加密的单个密码不同,我希望有一个全局解决方案,以便每个字符串都经过模糊处理,而不必每次都放置此宏,以便我的代码对开发人员和审阅者保持可读性,而可执行文件对这些字符串有些模糊。
这不是安全问题,而是知识产权保护问题,我只是想避免好奇的最终用户在业余时间对我的可执行文件进行逆向工程。我不是要阻止任何精心策划的攻击。
一个简单的解决方案是在分发可执行文件之前通过 UPX 等可执行压缩程序运行可执行文件。 文件压缩应该用于混淆生成的可执行文件中的任何字符串文本。
相关文章:
- constexpr 函数中的非文字(通过 std::is_constant_evaluated)
- 我可以使用条件运算符初始化C风格的字符串文字吗
- 如何使用字符串文字作为宏参数
- 有没有办法从非C/C++文件中读取C++原始字符串文字的内容
- 构造<int>具有 2 个字符串文字的向量
- 将数字打印成文字
- 初始化或分配空字符串文字到指向 C 中的 char 的指针或指向 C++ 中 const char 的指针的原因是什么
- 方便地对C++中的所有字符串文字进行模糊处理
- 想要检测图像中的模糊,但无法正确
- C++17 十六进制浮点文字单精度后缀冲突?
- 具有可分离内核的 2D 模糊卷积
- 常量函数,当其参数是对文字类型的引用时
- 连接 LPCSTR 变量和文字?
- 设置我的应用程序 API 感知并防止系统使其模糊和错误定位
- 如何组合许多连续的图像来模拟逼真的运动模糊?
- 比较 std::string 和 C 样式字符串文字
- 如何从char16_t字符串文字中读取双精度?
- 指内置类型的文字
- 分配给浮点数的积分文字除法 - 为什么结果是错误的?
- std::remove() 按预期处理文字,但不能与取消引用的迭代器一起工作