logo
天地变化的道理
使用率很高网站
生活要常常分享
您身边百科全书
Trivium (密码)
Trivium密码是一种对称密钥同步序列密码算法。它的设计目的是在计算能力有限的硬件上高效实现安全加密,同时兼顾软件实现效率。 结构. Trivium的标准输入为一个80位的密码和一个80位的起始向量(IV)。和大部分同步序列密码算法一样,Trivium的核心组件是一个密码学安全的伪随机数生成器(CSPRNG)。通过将密码和起始向量加载到该伪随机数生成器中,Trivium算法将计算出所需的密钥流。然后,通过将明文位依次与密文位进行异或操作,计算并输出密文。 Trivium伪随机数生成器可以看作由三个线性反馈移位寄存器组成。它们的长度分别是93、84和111位。寄存器和寄存器之间通过非线性逻辑连接。通过Trivium加密共分为2个阶段。 下一状态算法. 本节内容使用Xi表示上一状态的第X个寄存器中的第i位,使用Xi表示当前状态的第X个寄存器中的第i位,使用i^j表示i、j两位的逻辑异或,使用i&amp;j表示i、j两位的逻辑与,使用:=表示赋值。各个寄存器的第一位以1标记。s表示密钥流。 s:=s+((C109&amp;C110)^C111^C66)^((A91&amp;A92)^A93^A66)^((B82&amp;B83)^B84^B69) 将所有寄存器向右移1位,丢弃最后一位,并将空出的首位按照下述规则填充: A1:=A69^((C109&amp;C110)^C111^C66) B1:=B78^((A91&amp;A92)^A93^A66) C1:=C87^((B82&amp;B83)^B84^B69) 实现. 下面是Trivium使用的CSPRNG的typescript实现(这是CSPRNG部分,而不是整个密码): type Bit = 0|1 type Register = Bit[] * @param p 长为80的数组,每个元素为0或1 * @param iv 长为80的数组,每个元素为0或1 * @param l 正常数字,表示希望函数生成的密钥流的长度 function getKeyStream(p: Register, iv: Register, l: number): Register { l=l+1152; const a:Register=[], b:Register=[], c:Register=[], k:Register=[]; for(let i=0;i<l;i++) { const ra=mod2((a[90]&amp;a[91])+a[92]+a[65]); const rb=mod2((b[81]&amp;b[82])+b[83]+b[68]); const rc=mod2((c[108]&amp;c[109])+c[110]+c[65]); k[i]=mod2(ra+rb+rc); const ia=mod2(a[68]+rc); const ib=mod2(b[77]+ra); const ic=mod2(c[86]+rb); rightShift(a,ia); rightShift(b,ib); rightShift(c,ic); return subArray(k,1152); function mod2(x: number): Bit { return x%2 as Bit function rightShift(reg: Register, incoming: Bit): Register { let l=reg.length-1; reg[0]=incoming; return reg; function subArray(arr_in: Register, a: number): Register { var arr_out: Register = []; return arr_out; 使用全零的密钥和一全零向量的输入后,其生成的前100位密码学安全的伪随机数是: 1101011000111011001100010001100000010000011010101100000110010001100011000110110101010101011000010000 性能. Trivium算法在设计之初就是完全出于硬件效率考虑。由于采用了线性反馈移位寄存器和简单的AND函数,其硬件实现效率很高。然而,针对位的密集操作导致其软件实现效率低下。 地位. 欧洲eSTREAM计划的获胜算法共7个,其中3个针对硬件优化,4个针对软件优化。Trivium是3个针对硬件优化的获胜算法之一。
Trivium (密码)
生成维基百科快照图片,大概需要3-30秒!
如果网站内容有侵犯您的版权
请联系:pinbor@iissy.com
Copyright ©2014 iissy.com, All Rights Reserved.