24 explicit PSSR(std::unique_ptr<HashFunction> hash);
30 PSSR(std::unique_ptr<HashFunction> hash,
size_t salt_size);
32 std::string
name()
const override;
37 void update(
const uint8_t input[],
size_t length)
override;
39 std::vector<uint8_t> raw_data()
override;
41 std::vector<uint8_t> encoding_of(
const std::vector<uint8_t>& msg,
45 bool verify(
const std::vector<uint8_t>& coded,
const std::vector<uint8_t>& raw,
size_t key_bits)
override;
47 std::unique_ptr<HashFunction> m_hash;
49 bool m_required_salt_len;
61 explicit PSSR_Raw(std::unique_ptr<HashFunction> hash);
67 PSSR_Raw(std::unique_ptr<HashFunction> hash,
size_t salt_size);
71 std::string
name()
const override;
74 void update(
const uint8_t input[],
size_t length)
override;
76 std::vector<uint8_t> raw_data()
override;
78 std::vector<uint8_t> encoding_of(
const std::vector<uint8_t>& msg,
82 bool verify(
const std::vector<uint8_t>& coded,
const std::vector<uint8_t>& raw,
size_t key_bits)
override;
84 std::unique_ptr<HashFunction> m_hash;
85 std::vector<uint8_t> m_msg;
87 bool m_required_salt_len;