Теоретический ответ здесь
Практически можно использовать SageМатематика найти его;
а = 1
б = 3141592653589793238462643383279502884197169399375105820974944592307816406665
р = 2^251 + 17*2^192 +1
E = Эллиптическая кривая (GF (p), [0,0,0,a,b])
печать (Е)
печать (E.abelian_group())
карта = E.cardinality()
print("количество элементов =",карта)
фактор(карта)
G = E(874739451078007766457464989774322083649278607533249481151382481072868806602,152666792071518830868575557812948353041420400780739481342941381225525861407)
print("Заказ генератора q=", G.order())
Это выводит
Elliptic Curve defined by y^2 = x^3 + x + 3141592653589793238462643383279502884197169399375105820974944592307816406665 over Finite Field of size 3618502788666131213697322783095070105623107215331596699973092056135872020481
Additive abelian group isomorphic to Z/3618502788666131213697322783095070105526743751716087489154079457884512865583 embedded in Abelian group of points on Elliptic Curve defined by y^2 = x^3 + x + 3141592653589793238462643383279502884197169399375105820974944592307816406665 over Finite Field of size 3618502788666131213697322783095070105623107215331596699973092056135872020481
кардинальность = 3618502788666131213697322783095070105526743751716087489154079457884512865583
Порядок генератора q= 3618502788666131213697322783095070105526743751716087489154079457884512865583
Поскольку порядок кривой простой, мы имеем основная кривая, каждый элемент является генератором, поэтому порядок базовой точки равен порядку группы кривых.
Кроме того, кофактор $ч$ равен 1, так как порядок кривой простой. Кофактор определяется как количество $к$ рациональные точки кривой $h = \#E(k)/n $ разделить на порядок базового элемента $n$
Я не смог найти никакой информации о магическом числе (ничего в моем рукаве). Причина выбора $G$ непонятно. Хотя это психологический, его следует предоставить.
SageMath использует sea.gp который является быстрой реализацией алгоритма SEA. Эта библиотека реализована в пари/ГП. Хороший слайд о sea.gp Алгоритм SEA в PARI/GP.