67 template<const std::array<W,8>& Init>
124 virtual const std::array<uint8_t,O>&
digest()
const override;
134 return (word >> bits);
144 return ((word << bits) | (word >> (
sizeof(W) * 8 - bits)));
154 return ((word >> bits) | (word << (
sizeof(W) * 8 - bits)));
161 virtual void reset()
override;
169 virtual void addData(
const uint8_t* data, std::size_t len)
override;
174 virtual void finalize()
override;
181 virtual const std::array<W,R>& getTranslationArray()
const = 0;
188 void transform(
const uint8_t* buffer);
196 static void bytesSwap(W* buf, uint8_t count);
205 static W ch(W x, W y, W z);
214 static W maj(W x, W y, W z);
221 virtual W SIGMA0(W word)
const = 0;
228 virtual W SIGMA1(W word)
const = 0;
235 virtual W sigma0(W word)
const = 0;
242 virtual W sigma1(W word)
const = 0;
std::array< uint8_t, O > digest
Definition sha2.hpp:79