shell几种字符串加密解密的方法


第一种:〔 Python 与 Bash Shell 的结合 〕
这个命令会让你输入一个字符串,然后会再输出一串加密了的数字。

加密代码[照直输入]:
python -c 'print reduce(lambda a,b: a*256+ord(b), raw_input("string: "), 0)'

解密代码[数字后+P]:
dc -e 输出的数字P


第二种:〔 应该是纯 Bash Shell,含 VIM 的 xxd 〕
用 gtalk@gmail.com 作为明文,加密分两步,当然了,也是可以一步过的,呆会说~

加密代码:
1、echo "gtalk@gmail.com" |xxd -ps -u
得到:6774616C6B40676D61696C2E636F6D0A
2、echo "ibase=16; 6774616C6B40676D61696C2E636F6D0A" |bc
得到:137514765985002236391382606438443478282

一步加密代码:
echo "ibase=16; $(echo "gtalk@gmail.com" |xxd -ps -u)" |bc
得到:137514765985002236391382606438443478282

解密代码:
3、dc -e 137514765985002236391382606438443478282P
得到:gtalk@gmail.com


第三种:〔 Base64 编码,这个很好很强大,适合写加密脚本 〕
同样用 gtalk@gmail.com 作为明文,来看代码:

加密代码:
echo "gtalk@gmail.com" |base64 -i
得到:Z3RhbGtAZ21haWwuY29tCg==

解密代码:
echo "Z3RhbGtAZ21haWwuY29tCg==" |base64 -d
得到:gtalk@gmail.com