其他分享
首页 > 其他分享> > c – 编译时字符串加密

c – 编译时字符串加密

作者:互联网

我不希望逆向工程师在我的应用程序中读取硬编码字符串的纯文本.对此的简单解决方案是使用简单的XOR-Encryption.问题是我需要一个转换器,在我的应用程序中它将如下所示:

//Before (unsecure)
char * cString = "Helllo Stackoverflow!";
//After (secure)
char * cString = XStr( 0x06, 0x15, 0x9D, 0xD5FBF3CC, 0xCDCD83F7, 0xD1C7C4C3, 0xC6DCCEDE, 0xCBC2C0C7, 0x90000000 ).c();

是否有可能通过使用某些结构来维护干净的代码

//Before (unsecure)
char * cString = "Helllo Stackoverflow!";
//After (secure)
char * cString = CRYPT("Helllo Stackoverflow!");

它也适用于很长的字符串(1000个字符?:-)).先感谢您

解决方法:

This blog为C中的编译时字符串散列提供了解决方案.我猜原理是一样的.不幸的是,你必须为每个字符串长度创建一个Makro.

标签:c,macros,encryption,reverse-engineering
来源: https://codeday.me/bug/20191004/1852715.html