Salsa20 Salsa是一种流加密算法由丹尼尔J伯恩斯坦提交到eSTREAM英语eSTREAM它建立在基于addrotatexorARX操作的伪随机函数之上位模加异或XOR和循环移位操作Salsa映射一个位密钥一个位nonce以及一个位流位置到一个位的输出也存在一个位密钥的版本这使Salsa具有了不同寻常的优势用户可以在恒定时间内寻求输出流中的任何位置它可以在现代x处理器中提供约每次循环周期一字节的速度并具有合理的硬件性能它没有注册专利并且Bernstein还撰写了几篇对常见架构优化的公有领域实现 一个相关的密码算法ChaCha具有类似的特点但有不同的循环移位函数已在年由伯恩斯坦发布