1 个不稳定版本
0.5.0 | 2023年1月30日 |
---|
在 过程宏 中排名第1900
每月下载量674次
9KB
Obfustring
此crate提供了一个用于字符串字面量的混淆宏。这使得它们容易受到保护,免受常见的逆向工程攻击,如调试器或十六进制编辑器中的字符串引用查找。
字符串字面量 ""
作为输入给出,并转换为 [u8; str_size*2]
数组字面量,然后存储在二进制文件中。每个字符都偏移了随机量。此偏移量与原始数据一起存储,以便可以重建。
安装
[dependencies]
obfustring = "0.5.0"
语法与用法
该crate提供了一个 obfustring!()
宏,它接受一个字符串字面量。
use obfustring::obfustring;
let obfuscated_string = obfustring!("Hello obfustring!"); // <-- Won't show up in binaries or hex editors
let generic_string = String::from("Hello regular string!"); // <-- Will show up in binaries or hex editors
println!("obfuscated_string: {}", obfuscated_string);
println!("generic_string: {}", generic_string);
免责声明
请注意,您绝对不应该将任何加密/API密钥或敏感数据硬编码到您的程序中。虽然这个宏会使它更难,但它绝对不能隐藏给那些足够努力的人。请坚持使用环境变量。
许可协议
本项目采用 MIT许可协议。
依赖关系
~1.5MB
~40K SLoC