11、流密码Rabbit与Salsa20家族的技术解析

流密码Rabbit与Salsa20家族的技术解析

1. Rabbit流密码概述

Rabbit是一种高性能流密码,自2003年在FSE上首次提出以来,尚未有针对它的攻击方法被公布。在Pentium III处理器上,其加密/解密速度达到每字节3.7个时钟周期,展现出了极高的性能。

1.1 Rabbit硬件估算

在0.18微米技术下,Rabbit的硬件估算情况如下表所示:
| 流水线数量 | 门数 | 芯片面积(mm²) | 性能(GBit/s) |
| — | — | — | — |
| 1 | 28K | 0.32 | 3.7 |
| 2 | 35K | 0.40 | 6.2 |
| 4 | 57K | 0.66 | 9.3 |
| 8 | 100K | 1.16 | 12.4 |

从表中可以看出,随着流水线数量的增加,门数和芯片面积也相应增加,同时性能也得到显著提升。如果需要更高的速度且对门数不太在意,可以采用更先进的乘法方法。这里的门数和芯片面积数据包含了密钥和初始向量(IV)的设置。

1.2 FPGA性能

在FPGA中实现Rabbit时,面临的挑战与ASIC实现类似,其中平方运算仍然是最复杂的部分。一些FPGA系列(如Xilinx Spartan 3或Altera Cyclone II)拥有专用的乘法单元,其乘法单元的延迟分别为2.4 ns和4.0 ns。基于使用6个乘法单元的2流水线设计,解密性能分别为8.9 Gbit/s和5.3 Gbit/s。如果有更多的乘法器可用,增加流水线数量后,吞吐量可分别达到17.8 Gbit/s和10.7 Gbit/s

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值