nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> > Struct Reference

#include <h2c_suites.hpp>

+ Collaboration diagram for nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> >:

Public Types

typedef bls12_381 curve_type
 
typedef group_type::field_type::value_type field_value_type
 
typedef bls12_381::g2_type group_type
 
typedef group_type::value_type group_value_type
 
typedef hashes::sha2< 256 > hash_type
 
typedef group_type::field_type::integral_type integral_type
 
typedef group_type::field_type::modular_backend modular_backend
 
typedef group_type::field_type::modular_type modular_type
 

Static Public Attributes

constexpr static field_value_type Ai = field_value_type(0, 240)
 
constexpr static field_value_type Bi = field_value_type(1012, 1012)
 
constexpr static auto h_eff
 
constexpr static std::size_t k = 128
 
constexpr static std::size_t L = 64
 
constexpr static std::size_t m = 2
 
constexpr static integral_type p = curve_type::base_field_type::modulus
 
constexpr static std::array< std::uint8_t, 31 > suite_id
 
constexpr static field_value_type Z = -field_value_type(2, 1)
 

Member Typedef Documentation

◆ curve_type

◆ field_value_type

typedef group_type::field_type::value_type nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> >::field_value_type

◆ group_type

◆ group_value_type

◆ hash_type

◆ integral_type

typedef group_type::field_type::integral_type nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> >::integral_type

◆ modular_backend

typedef group_type::field_type::modular_backend nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> >::modular_backend

◆ modular_type

typedef group_type::field_type::modular_type nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> >::modular_type

Member Data Documentation

◆ Ai

constexpr static field_value_type nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> >::Ai = field_value_type(0, 240)
inlinestaticconstexpr

◆ Bi

constexpr static field_value_type nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> >::Bi = field_value_type(1012, 1012)
inlinestaticconstexpr

◆ h_eff

constexpr static auto nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> >::h_eff
inlinestaticconstexpr
Initial value:
=
0xbc69f08f2ee75b3584c6a0ea91b352888e2a8e9145ad7689986ff031508ffe1329c2f178731db956d82bf015d1212b02ec0ec69d7477c1ae954cbc06689f6a359894c0adebbf6b4e8020005aaa95551_cppui636

◆ k

constexpr static std::size_t nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> >::k = 128
staticconstexpr

◆ L

constexpr static std::size_t nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> >::L = 64
staticconstexpr

◆ m

constexpr static std::size_t nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> >::m = 2
staticconstexpr

◆ p

constexpr static integral_type nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> >::p = curve_type::base_field_type::modulus
staticconstexpr

◆ suite_id

constexpr static std::array<std::uint8_t, 31> nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> >::suite_id
staticconstexpr
Initial value:
= {
0x42, 0x4c, 0x53, 0x31, 0x32, 0x33, 0x38, 0x31, 0x47, 0x32, 0x5f,
0x58, 0x4d, 0x44, 0x3a, 0x53, 0x48, 0x41, 0x2d, 0x32, 0x35, 0x36,
0x5f, 0x53, 0x53, 0x57, 0x55, 0x5f, 0x52, 0x4f, 0x5f}

◆ Z

constexpr static field_value_type nil::crypto3::algebra::curves::detail::h2c_suite< typename bls12_381::g2_type<> >::Z = -field_value_type(2, 1)
inlinestaticconstexpr

The documentation for this struct was generated from the following file: