1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
//! # XOR 编译期加密字符串并且运行时自动解密
//!
//! # XOR encrypts strings at compile time and decrypts them automatically at run time
//!
//! 为什么要用这个?
//!
//! 原因:项目编译成机器码后,数据库密码或者sql语句等敏感信息,是暴露在机器码中的,
//!
//! 如果通过gbk编码强行打开该exe文件,通过搜索"mysql"关键字,即可看到数据库链接信息,包括您的密码
//!
//! 通过使用该依赖,就可以隐藏重要文本数据
//!
//! Why use this?
//!
//! Reason: After the project is compiled into machine code, sensitive information such as database passwords or sql statements are exposed to the machine code
//!
//! If you force open the exe file with gbk encoding, you can see the database link information, including your password, by searching for the keyword "mysql"
//!
//! By using this dependency, you can hide important text data
//! # 使用方式 how to use
//! ```
//! [dependencies]
//! xor-str = "*"
//!
//! use xor_str::xor;
//! use xor_str::encode;
//! use xor_str::decode;
//! fn main() {
//! println!("{}",xor!("Hello, world!"));
//! }
//! ```
pub use encode;
///xor宏
/// 在这里加密并解密,加密是过程宏,编译期间执行
///具体的xor解密逻辑
///创建并通过xor方式加密字符串