Curve detail
Definition
Name | secp160r1 (secg/secp160r1, wtls/wap-wsg-idm-ecid-wtls7) |
---|---|
Category | secg |
Description | A randomly generated curve. [SEC2v1](https://www.secg.org/SEC2-Ver-1.0.pdf) states 'E was chosen verifiably at random as specified in ANSI X9.62 [1] from the seed'. |
Field | Prime (0xffffffffffffffffffffffffffffffff7fffffff) |
Field bits | 160 |
Form | Weierstrass $y^2 = x^3 + ax + b$ |
Param $a$ | 0xffffffffffffffffffffffffffffffff7ffffffc |
Param $b$ | 0x1c97befc54bd7a8b65acf89f81d4d4adc565fa45 |
Generator $x$ | 0x4a96b5688ef573284664698968c38bb913cbfc82 |
Generator $y$ | 0x23a628553168947d59dcc912042351377ac5fb32 |
Simulation seed | 0x1053cde42c14d696e67687561517533bf3f83345 |
Characteristics
Order | 0x100000000000000000001f4c8f927aed3ca752257 |
Cofactor | 0x1 |
$j$-invariant | 0xfce63f3745bfae104ff7852383d66f97ba3dec5e |
Trace $t$ | -0x1f4c8f927aed44a752257 |
Embedding degree $k$ | 0x100000000000000000001f4c8f927aed3ca752256 |
CM discriminant | -0x2c5e54f6bc93593265eaae4fa926ee734bdec66b |
Traits
$\text{cofactor}()$ | |
---|---|
order | 0x100000000000000000001f4c8f927aed3ca752257 |
cofactor | 0x1 |
$\text{discriminant}()$ | |
cm_disc | -0x2c5e54f6bc93593265eaae4fa926ee734bdec66b |
factorization | ['0xb', '0xfcd733', '0x519f3f29', '0xccf0b969003c2a91ebb27b7e3'] |
max_conductor | 0x1 |
$\text{twist_order}(deg=1)$ | |
twist_cardinality | 0xfffffffffffffffffffe0b3706d8512b358adda9 |
factorization | None |
$\text{twist_order}(deg=2)$ | |
twist_cardinality | 0xfffffffffffffffffffffffffffffffeffffffffd3a1ab09436ca6cd9a1551b096d9118cb4213995 |
factorization | None |
$\text{kn_factorization}(k=1)$ | |
(+)factorization | ['0x2', '0x2', '0x2', '0x3', '0x5', '0x6b', '0x1d86f3', '0xdbef42fec1f', '0x338233eb37d22af29ee2b'] |
(+)largest_factor_bitlen | 0x52 |
(-)factorization | ['0x2', '0x7', '0xf96b5', '0xb8c20731', '0x1a014fcc9fa89c571b030093939'] |
(-)largest_factor_bitlen | 0x69 |
$\text{kn_factorization}(k=2)$ | |
(+)factorization | ['0xb', '0xd21', '0x2b57d', '0x3a5914b6af', '0x5bdf43618ffd3891563f2bf'] |
(+)largest_factor_bitlen | 0x5b |
(-)factorization | ['0x3', '0x8f9', '0x23c5', '0x882152f1753c9b9457393bf0f980ea671b'] |
(-)largest_factor_bitlen | 0x88 |
$\text{kn_factorization}(k=3)$ | |
(+)factorization | ['0x2', '0x21f5', '0x114443b', '0x4c0fe422cb', '0x12883305b21', '0x1e731aff3d7f'] |
(+)largest_factor_bitlen | 0x2d |
(-)factorization | ['0x2', '0x2', '0x426ab2f3', '0x2e40dc5c232799fd6a5048c7f0c9e657b'] |
(-)largest_factor_bitlen | 0x82 |
$\text{kn_factorization}(k=4)$ | |
(+)factorization | ['0x3', '0x3', '0xd', '0x2a5', '0x34f3ce4ae26954568004f4897b5c3ab8a31d5'] |
(+)largest_factor_bitlen | 0x92 |
(-)factorization | ['0x5', '0xd94fb', '0xf142e4079a2ba58f93158d2986cb9ebc96d'] |
(-)largest_factor_bitlen | 0x8c |
$\text{kn_factorization}(k=5)$ | |
(+)factorization | ['0x2', '0x2', '0x149d5', '0x1b18d', '0x8df875', '0x1087276de6fb0ed152382b3c3c9'] |
(+)largest_factor_bitlen | 0x69 |
(-)factorization | ['0x2', '0x3', '0x3', '0x17', '0x29cec0dd911393', '0x12ee9089e2946bf3aefa42782d'] |
(-)largest_factor_bitlen | 0x65 |
$\text{kn_factorization}(k=6)$ | |
(+)factorization | ['0x5', '0x7', '0x43', '0x310def', '0x130c040b2eb9', '0x2df18f3a0d9a1684b35e85'] |
(+)largest_factor_bitlen | 0x56 |
(-)factorization | ['0x6049ee18f', '0xe1a8d0233e54df1', '0x1218c866b353a5be57'] |
(-)largest_factor_bitlen | 0x45 |
$\text{kn_factorization}(k=7)$ | |
(+)factorization | ['0x2', '0x3', '0x11', '0x2c5', '0xb2c3', '0xc1575917', '0xc237c3df', '0xfdada8362df01755d'] |
(+)largest_factor_bitlen | 0x44 |
(-)factorization | ['0x2', '0x2', '0x2', '0x2', '0x2', '0x13', '0x1cfe19bb413', '0x2db7f98ffad', '0x91b999dc361ecbc197'] |
(-)largest_factor_bitlen | 0x48 |
$\text{kn_factorization}(k=8)$ | |
(+)factorization | ['0x80000000000000000000fa647c93d769e53a912b9'] |
(+)largest_factor_bitlen | 0xa4 |
(-)factorization | ['0x3', '0x7', '0x7', '0x1f', '0x151', '0x593', '0x9740344f', '0x1a899682d94af6c677db4a34ff'] |
(-)largest_factor_bitlen | 0x65 |
$\text{torsion_extension}(l=2)$ | |
least | 0x3 |
full | 0x3 |
relative | 0x1 |
$\text{torsion_extension}(l=3)$ | |
least | 0x4 |
full | 0x4 |
relative | 0x1 |
$\text{torsion_extension}(l=5)$ | |
least | 0x18 |
full | 0x18 |
relative | 0x1 |
$\text{torsion_extension}(l=7)$ | |
least | 0x10 |
full | 0x10 |
relative | 0x1 |
$\text{torsion_extension}(l=11)$ | |
least | 0xa |
full | 0xb |
relative | 0x1 |
$\text{torsion_extension}(l=13)$ | |
least | 0x4 |
full | 0xc |
relative | 0x3 |
$\text{torsion_extension}(l=17)$ | |
least | 0x90 |
full | 0x90 |
relative | 0x1 |
$\text{conductor}(deg=2)$ | |
ratio_sqrt | 0x1f4c8f927aed44a752257 |
factorization | ['0x3', '0x2b', '0x1241', '0x3671873d326d5317'] |
$\text{conductor}(deg=3)$ | |
ratio_sqrt | 0x2d3a1ab09436ca6cd9a1551b056d9118b34213992 |
factorization | ['0x2', '0xd', '0x1a2d', '0x110329bec8cfe95b0469b8060ccaa4b740481'] |
$\text{conductor}(deg=4)$ | |
ratio_sqrt | 0x392c6df7c73459fce77eb5520e60fdff402d9235ef3c5400f09f66f1f16f5 |
factorization | ['0x3', '0x2b', '0x1241', '0x147bcf57', '0x192ad001629bbf07', '0x3671873d326d5317', '0xe8388a721413f4d273'] |
$\text{embedding}()$ | |
embedding_degree_complement | 0x1 |
complement_bit_length | 0x1 |
$\text{class_number}()$ | |
upper | 0xe76d690a92da070c76fc1 |
lower | 0x2e27 |
$\text{small_prime_order}(l=2)$ | |
order | 0x80000000000000000000fa647c93d769e53a912b |
complement_bit_length | 0x2 |
$\text{small_prime_order}(l=3)$ | |
order | 0x80000000000000000000fa647c93d769e53a912b |
complement_bit_length | 0x2 |
$\text{small_prime_order}(l=5)$ | |
order | 0x80000000000000000000fa647c93d769e53a912b |
complement_bit_length | 0x2 |
$\text{small_prime_order}(l=7)$ | |
order | 0x100000000000000000001f4c8f927aed3ca752256 |
complement_bit_length | 0x1 |
$\text{small_prime_order}(l=11)$ | |
order | 0x100000000000000000001f4c8f927aed3ca752256 |
complement_bit_length | 0x1 |
$\text{small_prime_order}(l=13)$ | |
order | 0x124924924924924924926ce9c8a767ea8e7614bd |
complement_bit_length | 0x4 |
$\text{division_polynomials}(l=2)$ | |
factorization | [['0x3', '0x1']] |
len | 0x1 |
$\text{division_polynomials}(l=3)$ | |
factorization | [['0x2', '0x2']] |
len | 0x1 |
$\text{division_polynomials}(l=5)$ | |
factorization | [['0xc', '0x1']] |
len | 0x1 |
$\text{volcano}(l=2)$ | |
crater_degree | 0x0 |
depth | 0x0 |
$\text{volcano}(l=3)$ | |
crater_degree | 0x0 |
depth | 0x0 |
$\text{volcano}(l=5)$ | |
crater_degree | 0x0 |
depth | 0x0 |
$\text{volcano}(l=7)$ | |
crater_degree | 0x0 |
depth | 0x0 |
$\text{volcano}(l=11)$ | |
crater_degree | 0x1 |
depth | 0x0 |
$\text{volcano}(l=13)$ | |
crater_degree | 0x2 |
depth | 0x0 |
$\text{volcano}(l=17)$ | |
crater_degree | 0x0 |
depth | 0x0 |
$\text{volcano}(l=19)$ | |
crater_degree | 0x2 |
depth | 0x0 |
$\text{isogeny_extension}(l=2)$ | |
least | 0x3 |
full | 0x3 |
relative | 0x1 |
$\text{isogeny_extension}(l=3)$ | |
least | 0x2 |
full | 0x2 |
relative | 0x1 |
$\text{isogeny_extension}(l=5)$ | |
least | 0x6 |
full | 0x6 |
relative | 0x1 |
$\text{isogeny_extension}(l=7)$ | |
least | 0x8 |
full | 0x8 |
relative | 0x1 |
$\text{isogeny_extension}(l=11)$ | |
least | 0x1 |
full | 0xb |
relative | 0xb |
$\text{isogeny_extension}(l=13)$ | |
least | 0x1 |
full | 0x3 |
relative | 0x3 |
$\text{isogeny_extension}(l=17)$ | |
least | 0x9 |
full | 0x9 |
relative | 0x1 |
$\text{isogeny_extension}(l=19)$ | |
least | 0x1 |
full | 0x9 |
relative | 0x9 |
$\text{trace_factorization}(deg=1)$ | |
trace | -0x1f4c8f927aed44a752257 |
trace_factorization | ['0x3', '0x2b', '0x1241', '0x3671873d326d5317'] |
number_of_factors | 0x4 |
$\text{trace_factorization}(deg=2)$ | |
trace | -0x1f4c8f927aed44a752257 |
trace_factorization | ['0x147bcf57', '0x192ad001629bbf07', '0xe8388a721413f4d273'] |
number_of_factors | 0x3 |
$\text{isogeny_neighbors}(l=2)$ | |
len | 0x0 |
$\text{isogeny_neighbors}(l=3)$ | |
len | 0x0 |
$\text{isogeny_neighbors}(l=5)$ | |
len | 0x0 |
$\text{q_torsion}()$ | |
Q_torsion | 0x1 |
$\text{hamming_x}(weight=1)$ | |
x_coord_count | 0x51 |
expected | 0x50 |
ratio | 0.98765 |
$\text{hamming_x}(weight=2)$ | |
x_coord_count | 0x1911 |
expected | 0x1928 |
ratio | 1.00358 |
$\text{hamming_x}(weight=3)$ | |
x_coord_count | 0x535ac |
expected | 0x53548 |
ratio | 0.99971 |
$\text{square_4p1}()$ | |
p | 0x1 |
order | 0x1 |
$\text{pow_distance}()$ | |
distance | 0x1f4c8f927aed3ca752257 |
ratio | 6.179996960904088e+23 |
distance 32 | 0x9 |
distance 64 | 0x17 |
$\text{multiples_x}(k=1)$ | |
Hx | 0x4a96b5688ef573284664698968c38bb913cbfc82 |
bits | 0x9f |
difference | 0x2 |
ratio | 0.98758 |
$\text{multiples_x}(k=2)$ | |
Hx | 0x10095f05b8f95920fd785d5c6003ee2a7f0ca3d1 |
bits | 0x9d |
difference | 0x4 |
ratio | 0.97516 |
$\text{multiples_x}(k=3)$ | |
Hx | 0xc3e0df1b31f643cd93955683809d0a38232350b9 |
bits | 0xa0 |
difference | 0x1 |
ratio | 0.99379 |
$\text{multiples_x}(k=4)$ | |
Hx | 0x24c1fdce9ee9a170eaa9a41aafc1c6c0202e671 |
bits | 0x9a |
difference | 0x7 |
ratio | 0.95652 |
$\text{multiples_x}(k=5)$ | |
Hx | 0x4526acc477091847abef2ef109f0dfb7495c36d |
bits | 0x9b |
difference | 0x6 |
ratio | 0.96273 |
$\text{multiples_x}(k=6)$ | |
Hx | 0xfdb49e82860308a53e48d65f74a33ad9066e2f49 |
bits | 0xa0 |
difference | 0x1 |
ratio | 0.99379 |
$\text{multiples_x}(k=7)$ | |
Hx | 0x612d5957a0cd0b33636231299b21f198ac18804c |
bits | 0x9f |
difference | 0x2 |
ratio | 0.98758 |
$\text{multiples_x}(k=8)$ | |
Hx | 0xf536cce6dc72db398cc9039bfec6d2b6a90f4e74 |
bits | 0xa0 |
difference | 0x1 |
ratio | 0.99379 |
$\text{multiples_x}(k=9)$ | |
Hx | 0x4d62cc37edc69b13323c0d68df1f420392d6218b |
bits | 0x9f |
difference | 0x2 |
ratio | 0.98758 |
$\text{multiples_x}(k=10)$ | |
Hx | 0x6f197c22f2b43618c63b5f08335713d07d0fc89c |
bits | 0x9f |
difference | 0x2 |
ratio | 0.98758 |
$\text{x962_invariant}()$ | |
r | 0x2da6c4d70b90ff912e725e25e90af631c18f0d2f |
$\text{brainpool_overlap}()$ | |
o | None |
$\text{weierstrass}()$ | |
a | 0xffffffffffffffffffffffffffffffff7ffffffc |
b | 0x1c97befc54bd7a8b65acf89f81d4d4adc565fa45 |