nil::crypto3::algebra::curves::detail::edwards_basic_policy< 183 > Struct Reference
A struct representing details about base and scalar fields of the size 183 bits and 181 bits respectively. More...
#include <basic_policy.hpp>
Collaboration diagram for nil::crypto3::algebra::curves::detail::edwards_basic_policy< 183 >:
Public Types | |
typedef g1_field_type | base_field_type |
typedef base_field_type::extended_integral_type | extended_integral_type |
typedef fields::edwards_fq< version > | g1_field_type |
typedef fields::fp3< base_field_type > | g2_field_type |
typedef fields::fp6_2over3< base_field_type > | gt_field_type |
typedef base_field_type::integral_type | integral_type |
typedef fields::edwards_fr< version > | scalar_field_type |
Static Public Attributes | |
constexpr static const integral_type | a |
coefficient of short Weierstrass curve $y^2=x^3+a*x+b$ More... | |
constexpr static const integral_type | base_field_modulus |
characteristic of the base field More... | |
constexpr static const integral_type | d |
constexpr static const std::array< typename g1_field_type::value_type, 3 > | g1_one_fill |
constexpr static const std::array< typename g1_field_type::value_type, 3 > | g1_zero_fill |
constexpr static const std::array< typename g2_field_type::value_type, 3 > | g2_one_fill |
constexpr static const std::array< typename g2_field_type::value_type, 3 > | g2_zero_fill |
constexpr static const integral_type | p |
characteristic of the base field More... | |
constexpr static const integral_type | q |
constexpr static const integral_type | scalar_field_modulus |
constexpr static const std::size_t | version = 183 |
size of the base field in bits More... | |
Detailed Description
A struct representing details about base and scalar fields of the size 183 bits and 181 bits respectively.
Member Typedef Documentation
◆ base_field_type
typedef g1_field_type nil::crypto3::algebra::curves::detail::edwards_basic_policy< 183 >::base_field_type |
◆ extended_integral_type
typedef base_field_type::extended_integral_type nil::crypto3::algebra::curves::detail::edwards_basic_policy< 183 >::extended_integral_type |
◆ g1_field_type
typedef fields::edwards_fq<version> nil::crypto3::algebra::curves::detail::edwards_basic_policy< 183 >::g1_field_type |
◆ g2_field_type
typedef fields::fp3<base_field_type> nil::crypto3::algebra::curves::detail::edwards_basic_policy< 183 >::g2_field_type |
◆ gt_field_type
typedef fields::fp6_2over3<base_field_type> nil::crypto3::algebra::curves::detail::edwards_basic_policy< 183 >::gt_field_type |
◆ integral_type
typedef base_field_type::integral_type nil::crypto3::algebra::curves::detail::edwards_basic_policy< 183 >::integral_type |
◆ scalar_field_type
typedef fields::edwards_fr<version> nil::crypto3::algebra::curves::detail::edwards_basic_policy< 183 >::scalar_field_type |
Member Data Documentation
◆ a
|
staticconstexpr |
Initial value:
=
0x01
coefficient of short Weierstrass curve $y^2=x^3+a*x+b$
◆ base_field_modulus
|
staticconstexpr |
Initial value:
=
base_field_type::modulus
characteristic of the base field
◆ d
|
staticconstexpr |
Initial value:
=
0x64536D55979879327CF1306BB5A6277D254EF9776CE70_cppui179
coefficient of short Weierstrass curve $y^2=x^3+a*x+b$
◆ g1_one_fill
|
staticconstexpr |
Initial value:
= {
typename g1_field_type::value_type(
0x32d83d8aaa0c500f57b15fda90b1ad111067f812c7dd27_cppui182),
typename g1_field_type::value_type(
0x26c5df4587aa6a5d345efc9f2d47f8b1656517ef618f7a_cppui182),
typename g1_field_type::value_type(
0x3c6395f7eeafc1d930f0234a46e4a4806b953f0c3374ac_cppui182)}
◆ g1_zero_fill
|
staticconstexpr |
Initial value:
= {
g1_field_type::value_type::one(), g1_field_type::value_type::zero(),
g1_field_type::value_type::zero()}
◆ g2_one_fill
|
staticconstexpr |
Initial value:
= {
typename g2_field_type::value_type(
0x3CE954C85AD30F53B1BB4C4F87029780F4141927FEB19_cppui178,
0x2214EB976DE3A4D9DF9C8D5F7AEDFEC337E03A20B32FFF_cppui182,
0x249774AB0EDC7FE2E665DDBFE08594F3071E0B3AC994C3_cppui182),
typename g2_field_type::value_type(
0x2F501F9482C0D0D6E80AC55A79FD4D4594CAF187952660_cppui182,
0x37BF8F1B1CDA11A81E8BB8F41B5FF462C9A13DC7DE1578_cppui182,
0x2962F0DA0C7928B2CFBBACE3D0354652B6922A764C12D8_cppui182),
typename g2_field_type::value_type(
0x3b6ad5c355d8b231b16e97b5c6f635357993efdc248101_cppui182,
0x2e8b3daf5fa18f9d9c6fa2ca0603fd0c9b09eeece8fd0d_cppui182,
0x3c3baf061e62a04a4e9d1db335b8779c70384ae2933a73_cppui182)}
◆ g2_zero_fill
|
staticconstexpr |
Initial value:
= {
g2_field_type::value_type::one(), g2_field_type::value_type::zero(),
g2_field_type::value_type::zero()}
◆ p
|
staticconstexpr |
Initial value:
=
constexpr static const integral_type base_field_modulus
characteristic of the base field
Definition: algebra/include/nil/crypto3/algebra/curves/detail/edwards/basic_policy.hpp:65
characteristic of the base field
◆ q
|
staticconstexpr |
Initial value:
=
constexpr static const integral_type scalar_field_modulus
Definition: algebra/include/nil/crypto3/algebra/curves/detail/edwards/basic_policy.hpp:69
characteristic of the scalar field (order of the group of points)
◆ scalar_field_modulus
|
staticconstexpr |
Initial value:
=
scalar_field_type::modulus
characteristic of the scalar field (order of the group of points)
◆ version
|
staticconstexpr |
size of the base field in bits
The documentation for this struct was generated from the following file: