windard / sm4

SM4 by JavaScript
141 stars 62 forks source link

左移溢出 #6

Open ghost opened 3 years ago

ghost commented 3 years ago

sm4Sbox中: return (b1 << 24) | (b2 << 16) | (b3 << 8) | (b4 << 0); 您在readme中也说了会左移溢出,但是并没有提解决方案,是对整体加解密没有影响吗?

windard commented 3 years ago

不是吖,你再仔细看看,我也提到了有一个循环左移的函数实现吖。

function leftshift(a, n, size=32) {
    n = n % size
    return (a << n) | (a >>> (size - n))
}
ghost commented 3 years ago

不是吖,你再仔细看看,我也提到了有一个循环左移的函数实现吖。

function leftshift(a, n, size=32) {
    n = n % size
    return (a << n) | (a >>> (size - n))
}

谢谢,是我傻了,已经解决了