|
Console Library 8.0.0
A header-only library that makes C++ simple
|
SHA256哈希算法的内部实现细节。 More...
Functions | |
| uint32_t | rotr (uint32_t x, uint32_t n) |
| 对32位无符号整数进行循环右移。 | |
| uint32_t | ch (uint32_t x, uint32_t y, uint32_t z) |
| SHA256中的选择函数Ch。 | |
| uint32_t | maj (uint32_t x, uint32_t y, uint32_t z) |
| SHA256中的多数函数Maj。 | |
| uint32_t | sigma0 (uint32_t x) |
| SHA256中的大西格玛0函数。 | |
| uint32_t | sigma1 (uint32_t x) |
| SHA256中的大西格玛1函数。 | |
| uint32_t | gamma0 (uint32_t x) |
| SHA256中的小西格玛0函数。 | |
| uint32_t | gamma1 (uint32_t x) |
| SHA256中的小西格玛1函数。 | |
| void | transform (uint32_t *state, const uint8_t *data) |
| 对64字节的数据块执行SHA256变换。 | |
Variables | |
| static constexpr uint32_t | K [64] |
| SHA256算法使用的常量K数组。 | |
SHA256哈希算法的内部实现细节。
|
inline |
SHA256中的选择函数Ch。
| x | 输入值。 |
| y | 输入值。 |
| z | 输入值。 |
|
inline |
SHA256中的小西格玛0函数。
| x | 输入值。 |
|
inline |
SHA256中的小西格玛1函数。
| x | 输入值。 |
|
inline |
SHA256中的多数函数Maj。
| x | 输入值。 |
| y | 输入值。 |
| z | 输入值。 |
|
inline |
对32位无符号整数进行循环右移。
| x | 待移位的整数。 |
| n | 右移的位数。 |
|
inline |
SHA256中的大西格玛0函数。
| x | 输入值。 |
|
inline |
SHA256中的大西格玛1函数。
| x | 输入值。 |
|
inline |
对64字节的数据块执行SHA256变换。
| state | 当前哈希状态,长度为8的数组。 |
| data | 要处理的数据块,长度必须为64字节。 |
|
staticconstexpr |
SHA256算法使用的常量K数组。