一个简单而专业的办法是,你用DES加密,加密后,这句话就成了密文。
还有一个办法,你自己随便编一个128的乱序ASCII字符对应表,其实就是在程序中加个128字节的常量数组,然后将你的那句话逐字节的查表替换就可以生成密文了。
文件分为文本文件和二进制文件。加密方法也略有不同。
1、文本文件
加密的主要是文本的内容,最简单的方法就是修改文档的内容,比如1.txt中的文件内容:
abcd
只要给每一个字符+1,就可以实现加密。文件内容即会变为
bcde
2、二进制文件加密
二进制文件加密也就是对应用程序加密,需要理解可执行文件格式,比如Windows平台的Exe文件它是PE结构,Linux上的可执行文件是ELF结构,要对这样的程序进行加密,实际上是开发一种叫做“壳”的程序,这种程序的开发,需要将扎实的底层基础,同时也需要对软件加密解密有细致的理解,比如流行的vmprotect、z壳以及早些年的upx壳、aspack等等。
3、无论哪种加密都牵涉到文件操作的问题,使用C语言进行文件操作时,极少使用C标准库中的I/O函数,大多数使用操作系统提供的内存文件映射相关的API函数,有兴趣,可以搜索相关的资料。
利用base64可以将二进制数据编码为64个字符组成的字符串,64个字符为a-z,A-Z,0-9,+,/。base64编码是将三个字节的二进制数据编码为四个字节的字符数据,如果字节数不为3的倍数base64会将 \x00 补在末尾,所以会常在base64字符串的末尾见到一个或者两个的 = 号。
base64编码
base64解码
小技巧:遇到base64编码的二进制文件可以直接解码用io字节流接收再用其他模块加载,无需在本地保存文件再使用其他模块加载。
哈希加密是对字符串进行加密,其加密后的散列值不可逆,即hash加密是单向加密不可解。python内置的hashlib库提供了md5, SHA1, SHA224, SHA256, SHA384, SHA512 加密算法的支持