Рейтинг:1

Можно ли вычислить и неизвестную точку на ЭК

флаг bd

Я стремлюсь найти ответ на то, что $Х$ на ЭК над конечным полем, где $А + Х = В$ и $А$ и $В$ известны. В настоящее время я учусь с secp256k1, поэтому упрощенное уравнение для кривой выглядит так: $у^2 = х^3 + 7$. Я пытаюсь понять это, чтобы написать формулу на питоне.

fgrieu avatar
флаг ng
Добро пожаловать в крипто-SE! Я отредактировал вопрос, чтобы использовать согласованную запись. Вы работаете с эллиптической кривой secp256k1, то есть с набором $(x,y)\in{\mathbb F_p}^2$ (где $\mathbb F_p$ — простое поле) с $y^2=x^ 3+7$. Умножение и сложение здесь находятся в этом поле. $A$, $X$ и $B$ находятся на кривой (а не в поле), а операция $+$ там представляет собой групповой закон (более сложный, чем закон в поле). Поскольку это группа, существует единственное решение $X$ уравнения $A+X=B$, и его можно вычислить.
флаг bd
Да, теперь я понял, что использовал довольно глупые переменные, учитывая контекст вопроса. Я хочу знать, есть ли у меня PublicKey1 + PublicKey2 = PublicKey3, и я знаю 1 и 3, могу ли я вычислить 2. Если да, то какую формулу я бы использовал.
Рейтинг:1
флаг ng

Поскольку эллиптическая кривая является группа, $А+Х=В$ в этой группе можно решить за $Х=(-А)+В$, куда $+$ групповой закон и $-А$ является противоположностью $А$ в группе.

Вычислить $-A$, изменение $А=(х,у)$ к $-А=(х,р-у)$. Формулы сложения находятся в Раздел 1 §2.2.1. Если вы получите $А$ или же $В$ в виде строки байтов (возможно, сжатой), используйте преобразование в Раздел 1 §2.3.4. Значение $р$ для secp256k1 находится в Раздел 2 §2.4.


¹ Доказательство: $А$ является членом группы, поэтому имеет противоположное $-A$. Добавляем его слева с обеих сторон $А+Х=В$, уступая $(-А)+(А+Х)=(-А)+В$. Мы используем групповой закон ассоциативность получить $((-А)+А)+Х=(-А)+В$. По определению наоборот, $(-А)+А$ является нейтральным $\mathcal O$, таким образом $\mathcal О+Х=(-А)+В$. По определению нейтральный, $\mathcal О+Х=Х$, таким образом, заменой получаем $A+X=B\подразумевает X=(-A)+B$. Доказывая, что $X=(-A)+B\подразумевает A+X=B$ так же просто, добавив $А$ слева с обеих сторон.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.