Skip to main content
QUICK REVIEW

[论文解读] SOSEMANUK: a fast software-oriented stream cipher

Côme Berbain, Olivier Billet|Oct 10, 2008
Cryptographic Implementations and Security参考文献 2被引用 17
一句话总结

Sosemanuk 是一种为 128–256 位密钥设计的高速软件流密码,结合了 SNOW 2.0 和 SERPENT 的原理,实现了强大的安全性与卓越的性能。它采用精简的内部状态、优化的数据映射方式,并通过 24 轮 SERPENT 变体实现快速的密钥/IV 设置,从而在现代处理器上实现顶级吞吐量和低缓存压力,宣称对所有密钥长度均提供 128 位安全强度。

ABSTRACT

Sosemanuk is a new synchronous software-oriented stream cipher, corresponding to Profile 1 of the ECRYPT call for stream cipher primitives. Its key length is variable between 128 and 256 bits. It ac- commodates a 128-bit initial value. Any key length is claimed to achieve 128-bit security. The Sosemanuk cipher uses both some basic design principles from the stream cipher SNOW 2.0 and some transformations derived from the block cipher SERPENT. Sosemanuk aims at improv- ing SNOW 2.0 both from the security and from the efficiency points of view. Most notably, it uses a faster IV-setup procedure. It also requires a reduced amount of static data, yielding better performance on several architectures.

研究动机与目标

  • 设计一种适用于现代处理器的快速、安全且高效的软件导向型流密码。
  • 在 SNOW 2.0 的基础上进行改进,消除潜在的结构弱点并降低数据缓存压力。
  • 通过 24 轮 SERPENT 变体提升密钥设置效率,实现更快的重新同步。
  • 在保持高吞吐量的同时,为所有密钥长度(128–256 位)提供 128 位安全强度。
  • 优化寄存器使用并减少静态数据,以提升在 RISC 及其他架构上的性能。

提出的方法

  • 该密码使用在 F_{2^32} 上的 10 个字的 LFSR,其本原多项式为 Q(X) = X^8 + X^7 + X^5 + X^3 + 1。
  • 采用非线性变换函数 'Trans',结合异或、循环左移和基于位段的 S 盒操作,以实现混淆与扩散。
  • 使用 'mux' 操作引入非线性,以抵抗快速相关性攻击和代数攻击。
  • 采用 24 轮 SERPENT 变体(Serpent24)进行密钥和 IV 设置,以最小的开销提供强扩散效果。
  • Serpent1(来自 SERPENT 的单个 S 盒层)以位段模式使用,实现高效的非线性混合。
  • 通过 LFSR 反馈与非线性函数的组合更新内部状态,输出通过 32 位异或操作生成。

实验结果

研究问题

  • RQ1能否设计一种流密码,使其在实现高性能的同时,对代数攻击和相关性攻击具有强抵抗力?
  • RQ2如何在不损害安全性的前提下,优化密钥和 IV 设置的速度?
  • RQ3是否可以通过减小内部状态大小和静态数据量,提升在 RISC 架构上的性能?
  • RQ4在软件流密码中使用 SERPENT 的位段模式 S 盒是否能提升安全性和效率?
  • RQ5能否在保持比现有方案更快速度的同时,使密码在可变密钥长度(128–256 位)下维持 128 位安全强度?

主要发现

  • 在 2.20GHz 的 AMD Athlon 64 X2 4200+ 上,Sosemanuk 的吞吐量为每字节 759.06 个周期,优于同类中的大多数竞争者。
  • 在同一平台上,IV 设置仅需 692.71 个周期,显著快于 SNOW 2.0 的 489.35 个周期。
  • 在 500MHz 的 Alpha EV6 上,Sosemanuk 的密钥设置耗时 1301.09 个周期,尽管是较旧的架构,但仍具有竞争力。
  • 在 0.13µm CMOS 工艺下的硬件实现需要 18,819 个门电路,在 10 Mbps 速率下功耗-面积-时间乘积为 564.8 nJ-µm²,适用于 WLAN 应用。
  • 由于静态数据减少,该密码表现出较低的数据缓存压力,从而提升了在 RISC 处理器上的性能。
  • 使用 Serpent1 的位段模式和 'mux' 函数能有效抵抗代数攻击和快速相关性攻击。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。