shacal2.hpp
Go to the documentation of this file.
138 inline static block_type encrypt_block(const key_schedule_type &schedule, block_type const &plaintext) {
141 word_type a = plaintext[0], b = plaintext[1], c = plaintext[2], d = plaintext[3], e = plaintext[4],
Shacal2. Merkle-Damgård construction foundation for SHA2 hashes. Accepts up to a 512-bit key....
Definition: shacal2.hpp:66
constexpr static const std::size_t key_words
Definition: shacal2.hpp:77
block_type encrypt(block_type const &plaintext) const
Definition: shacal2.hpp:106
block_type decrypt(const block_type &ciphertext) const
Definition: shacal2.hpp:110
static block_type decrypt_block(const key_schedule_type &schedule, const block_type &ciphertext)
Definition: shacal2.hpp:191
constexpr static const std::size_t block_bits
Definition: shacal2.hpp:80
constexpr static const std::size_t key_bits
Definition: shacal2.hpp:76
constexpr static const std::size_t word_bits
Definition: shacal2.hpp:73
static void prepare_schedule(key_schedule_type &schedule)
Definition: shacal2.hpp:127
static key_schedule_type build_schedule(const key_type &key)
Definition: shacal2.hpp:117
block_type decrypt_block(const block_type &ciphertext) const
Definition: shacal2.hpp:187
stream_endian::little_octet_big_bit endian_type
Definition: shacal2.hpp:98
policy_type::key_schedule_type key_schedule_type
Definition: shacal2.hpp:85
constexpr static const std::size_t version
Definition: shacal2.hpp:71
static block_type encrypt_block(const key_schedule_type &schedule, block_type const &plaintext)
Definition: shacal2.hpp:138
policy_type::block_type block_type
Definition: shacal2.hpp:82
constexpr static const std::size_t block_words
Definition: shacal2.hpp:81
block_type encrypt_block(const block_type &plaintext) const
Definition: shacal2.hpp:134
boost::mpl::apply< AccumulatorSet, tag::block< Mode > >::type::result_type block(const AccumulatorSet &acc)
Definition: accumulators/block.hpp:259
Definition: pair.hpp:31
Definition: block/include/nil/crypto3/block/detail/block_stream_processor.hpp:50
Definition: shacal2_policy.hpp:55
Definition: shacal2.hpp:89
constexpr static const std::size_t value_bits
Definition: shacal2.hpp:91
constexpr static const std::size_t length_bits
Definition: shacal2.hpp:92
Definition: shacal2.hpp:88
block_stream_processor< Mode, StateAccumulator, params_type > type
Definition: shacal2.hpp:95
Definition: algebra/include/nil/crypto3/detail/stream_endian.hpp:45