分组密码是一个非常优秀的加密结构 很多常用加的加密算法使用的都是分组算法 比如DES。SAFER表示的也是一种分组密码算法。一起来看看吧。
SAFER简介SAFER的全称是Secure And Fast Encryption Routine 在密码学中 SAFER主要是由James Massey IDEA的设计师之一 代表Cylink公司设计的一组分组密码。
SAFER主要有四种类型分别是 SAFER K SAFER SK SAFER 和SAFER 。
其中SAFER K 和 SAFER SK 是比较早期的设计 共享相同的加密函数 但是轮次和密钥调度是不一样的。
后面的SAFER 和SAFER 是作为AES算法的候选算法提交给NESSIE的。 SAFER系列中的所有算法都没有专利限制 可以免费使用。
SAFER K 和 SAFER SK第一个SAFER密码是由Massey在1993年发布的SAFER K-64 具有64位块大小。 “K-64”表示64位的密钥大小。
因为64位的块太小了 不适合加密大的数据 所以第二年 Massey发布了支持128位的变体 叫做 SAFER K-128。
但是 Lars Knudsen和Sean Murphy发现这个版本存在一些问题 于是将密钥调度按照Knudsen的建议从新设计。这些变种算法分别被命名为SAFER SK-64和SAFER SK-128。
其中 “SK”代表”Strengthened Key schedule”也就是强化过的时间调度。
除此之外 还有一种40位块大小的变种算法SAFER SK-40。
我们使用一个图来看下SAFER K算法的基本流程
从最上面开始 是明文的输入阶段 每个明文都被分成8块。
接着就是密钥混合阶段 在这个阶段 明文分别和子密钥进行加法模256或者XOR运算。
然后是替换阶段 将上一阶段生成的结果通过两个相反的S盒映射成为新的数据。
这两个S盒分别是由45x和log45这两个函数派生出来的。有想了解S盒的朋友可以参考 “密码学系列之:blowfish对称密钥分组算法” 一文。
然后是第二次的密钥混合阶段。
在第二次密钥混合阶段之后 会使用pseudo-Hadamard transform (PHT)来进行扩散。
这四个阶段组成了一轮加密。
SAFER 和 SAFERSAFER 和 SAFER 是对原有的SAFER加密算法的改进。他们是由亚美尼亚密码学家Gurgen Khachatrian 亚美尼亚大学 和Melsik Kuregian与Massey共同设计的。
SAFER 是在1998年提出的 但是是以AES的候选算法提交的 它的块大小是128位。蓝牙的密钥是基于SAFER 的自定义算法来实现的 称为E21和E22
SAFER 是在2000年通过两个版本提交给NESSIE项目的 一个版本是64位 另一个版本是128位。
本文已收录于 http://www.flydean.com/safer/
最通俗的解读 最深刻的干货 最简洁的教程 众多你不知道的小技巧等你来发现
欢迎关注我的公众号:「程序那些事」,懂技术 更懂你
kafka-go简介 segmentio/kafka-go 是一款开源的golang kafka读写sdk,开源地址为...
您可以通过ADB方式和VNC方式连接云手机实例。 ADB方式:Android Debug Bridge(...
云服务器 内存有什么用? 云服务器 内存,是其配置参数之一。内存大小也是影响服...
公司简介 广东省安心加科技有限公司专注于地产行业智能化和物联网领域,集研发、...
Quick Audience产品的诞生 Quick Audience产品是一款云原生面向消费者的营销产品...
Windows云服务器卡顿怎么办? Linux云服务器卡顿怎么办?...
这个免部署的方法 就是使用阿里云的SSL证书里面 一个叫“网站代理https”的产品...
更多存储标杆案例 欢迎点击下方链接查看 阿里云存储标杆案例样板间 公司介绍 伊...
公司介绍 心动网络,国内极具知名度的游戏公司,中国互联网百强企业。旗下业务涉...
对于 主机租用 您知道多少呢,有的人把主机租用和主机租用看成是一样的。但是它...