| 55 | static u32 Ch(u32 x, u32 y, u32 z) { return z ^ (x & (y ^ z)); } |
| 56 | static u32 Maj(u32 x, u32 y, u32 z) { return ((x | y) & z) | (x & y); } |
| 57 | static u32 Rot(u32 x, u32 n) { return (x >> (n & 31)) | (x << (32 - (n & 31))); } |
| 58 | static u32 Sh(u32 x, u32 n) { return x >> n; } |
| 59 | static u32 Sigma0(u32 x) { return Rot(x, 2) ^ Rot(x, 13) ^ Rot(x, 22); } |
| 60 | static u32 Sigma1(u32 x) { return Rot(x, 6) ^ Rot(x, 11) ^ Rot(x, 25); } |