安装libsodium使系统支持chacha20/salsa20加密算法

chacha20-poly1305

ChaCha20-Poly1305是Google所采用的一种新式加密算法,性能强大,在CPU为精简指令集的ARM平台上尤为显著(ARM无AES加速),在同等配置的手机中表现是AES的4倍,可减少加密解密所产生的数据量进而可以改善用户体验,减少等待时间,节省电池寿命等。谷歌选择了ChaCha20和伯恩斯坦的Poly1305消息认证码取代过去一直在互联网安全领域使用的基于OpenSSL的RC4密码,谷歌最初是为了保证能够在Android手机上的Chrome浏览器和谷歌网站间的HTTPS(TLS/SSL)通讯。在谷歌采用TLS(安全传输层协议)不久后,ChaCha20和Poly1305均用在OpenSSH中的ChaCha20-Poly1305新算法中,这使得OpenSSH可能避免因编译时间对OpenSSL产生依赖。ChaCha20还用于OpenBSD(一种多平台类UNIX操作系统)中的RC4随机数生成器,在DragonFlyBSD中作为内核的伪随机数产生器(Cryptographically Secure Pseudo-Random Number Generator,简称CSPRNG)的子程序。

Salsa20

Salsa20是一种流加密算法,由Daniel J. Bernstein提交到eSTREAM。它创建在基于add-rotate-xor(ARX)操作的伪随机函数之上——32位模加、异或(XOR)和循环移位操作。Salsa20映射一个256位密钥、一个64位nonce以及一个64位流位置到一个512位的输出(也存在一个128位密钥的版本)。这使Salsa20具有了不同寻常的优势,用户可以在恒定时间内寻求输出流中的任何位置。它可以在现代x86处理器中提供约每4–14次循环周期一字节的速度,并具有合理的硬件性能。

因为ChaCha20算法在ARM平台的速度,推荐使用手机或者路由器等使用ARM芯片的用户推荐本加密方式。

安装 libsodium,让系统支持 chacha20/salsa20 算法。

apt-get update
apt-get install libsodium-dev

apt-get install build-essential
// 如果是centos用户请使用下面这条命令代替
// yum groupinstall "Development Tools"
wget https://github.com/jedisct1/libsodium/releases/download/1.0.16/libsodium-1.0.16.tar.gz
tar xf libsodium-1.0.16.tar.gz && cd libsodium-1.0.16

sudo ./configure && sudo make -j2 && sudo make install
// 如果是centos用户请执行以下命令
// echo /usr/local/lib > /etc/ld.so.conf.d/usr_local_lib.conf
sudo ldconfig

如果你想让shadowsocks支持chacha20也很简单,修改用户配置文件“gui-config.json”,将 "method":"aes-256-cfb" 改为 "method":"chacha20" 即可。

本文链接:

https://yubanmei.com/archives/3.html
1 + 9 =
快来做第一个评论的人吧~