https://blog.csdn.net/FlayHigherGT/article/details/84636086
今天遇到这样一个问题,将客户端中的一个密码存储到文件中以供下次使用,但是存储的密码不能直接存储明文,需要进行加密处理,再三考虑之后,这个加密的过程需要双向的可逆的过程,MD5等方式是不适用的,因为记住密码意味着下次我还需要还原这个密码进行使用,所以最后选择了openssl的aes算法,然而aes可行然而用遇到另外一个问题,aes编码字符串之后是乱码,只能用16进制数来显示,这样我使用的glib的keyfile parser配置文件接口又读不起来乱码,所有中间又加了一层,base64编解码,大概流程如下:
aes算法,base64编解码
密码字符串->openssl aes编码->base64编码->存文件----------读文件->base64解码->openssl aes解码->得到原始字符串