我遇到了以下功能crypto/subtle包,这引起了我的极大好奇,希望有人可以解释其背后的目的。谢谢,
// ConstantTimeByteEq returns 1 if x == y and 0 otherwise.
27 func ConstantTimeByteEq(x, y uint8) int {
28 z := ^(x ^ y)
29 z &= z >> 4
30 z &= z >> 2
31 z &= z >> 1
32
33 return int(z)
34 }
慕少森
相关分类