это то же самое для Java, C или что-то ....
Позвольте мне сначала предположим, что вы создали домен ECC с премьер-группы порядка д сами и хотите использовать его для шифрования. Затем выберите случайную координату x, затем вычислите y^2 из уравнения эллиптической кривой в форме weierstrass. Надеюсь, вы выбрали простой модуль p, который равен 3 mod 4. В этом случае определение квадратичного mod p является тривиальным, если оно существует. Если он не существует, попробуйте другой x. Мне редко требуется более двух попыток, в основном первая попытка приводит к действительному генератору уже во вновь созданных доменах.
Для этого вы можете использовать мою программу с открытым исходным кодом «Академическая подпись». Manual and link to download page. Если вы импортируете новый домен в список доменов, вы можете попробовать произвольный генератор для этого домена. Генератор проверяется при импорте в Академическую подпись. Если это не является допустимой точкой на эллиптической кривой, x-координата контрольной точки увеличивается до тех пор, пока не встретится действительная x y -координатная пара. Если впоследствии вы экспортируете домен, новый генератор будет включен в файл открытого текста параметров домена.
На этой странице ECC Domain page вы можете найти некоторые домены, которые я создал, я использовал вышеупомянутую процедуру для получения генераторов, содержащих некоторый «hex wordart».
Если вы не создали домен самостоятельно, если он имеет порядок, и если у вас уже есть генератор, используемый для него в некоторой реализации, это еще проще: Умножьте старый генератор реализаций со случайным числом, и вы получил себе новый генератор, который вы можете использовать, чтобы отделить ваше пространство ключей от других реализаций.
С уважением Michael Anders
Спасибо! Не могли бы вы уточнить, что именно есть k и r? Мощность или количество очков или кофактора? В статьях, которые я читал об эллиптических кривых, использовались различные соглашения об именах. Из того, что я изображаю, k - это порядок, а r - количество очков. Я прав? Также, как установить G = kP? Извините за то, что вы такой noob. –
k * r - порядок группы эллиптических кривых. r - большое простое число, k - малый множитель. Вам нужна точка порядка r, и процедура, предоставленная Rasmus, дает вам один. –