Title: Инверсия открытого ключа Post by: c2h5ohx on July 17, 2018, 10:53:29 PM Опытные кодеры, подскажите, а есть ли возможность и реализация на python инверсии открытого ключа?
Секрет инверсию делать получается, а обратно по открытому (x,y) - нет. Подскажите юзеру. Как инверсировать к примеру c6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5 1ae168fea63dc339a3c58419466ceaeef7f632653266d0e1236431a950cfe52a Title: Re: Инверсия открытого ключа Post by: kzv on July 18, 2018, 07:37:29 AM Что такое инверсия ключа?
Title: Re: Инверсия открытого ключа Post by: c2h5ohx on July 18, 2018, 07:46:48 AM Что такое инверсия ключа? def inverse_mod( a, m ): if a < 0 or m <= a: a = a % m c, d = a, m uc, vc, ud, vd = 1, 0, 0, 1 while c != 0: q, c, d = divmod( d, c ) + ( c, ) uc, vc, ud, vd = ud - q*uc, vd - q*vc, uc, vc assert d == 1 if ud > 0: return ud else: return ud + m Title: Re: Инверсия открытого ключа Post by: kzv on July 18, 2018, 09:07:59 AM Что такое инверсия ключа? def inverse_mod( a, m ): if a < 0 or m <= a: a = a % m c, d = a, m uc, vc, ud, vd = 1, 0, 0, 1 while c != 0: q, c, d = divmod( d, c ) + ( c, ) uc, vc, ud, vd = ud - q*uc, vd - q*vc, uc, vc assert d == 1 if ud > 0: return ud else: return ud + m Своими словами можете объяснить? Что это написано и зачем оно нужно? Title: Re: Инверсия открытого ключа Post by: DevilOper on July 18, 2018, 11:25:43 AM Ну, судя по коду - автор хощет обратное по модулю 1/a(mod M).
(Правда, подобный алгоритм весьма уныл, есть более весёленькие реализации, но вопрос был не об этом.) Другой вопрос, о какого рода публичном ключе идёт речь. Если имеется ввиду ЕСС - то там операция умножения (и, как следствие - деления) для точек не определена, точнее, определена единственная "групповая операция", которую кто как хочет, тот так и называет. Обратной же точке с координатами (X,Y) (которые и составляют обычно публичный ключ) считается точка с координатами (X,-Y). Title: Re: Инверсия открытого ключа Post by: c2h5ohx on July 18, 2018, 01:31:11 PM Ну, судя по коду - автор хощет обратное по модулю 1/a(mod M). (Правда, подобный алгоритм весьма уныл, есть более весёленькие реализации, но вопрос был не об этом.) Да, вы меня правильно поняли. Простите за не совсем корректный изначально вопрос. А можно спросить у Вас этот алгоритм? Title: Re: Инверсия открытого ключа Post by: DevilOper on July 18, 2018, 01:57:16 PM Да, вы меня правильно поняли. Простите за не совсем корректный изначально вопрос. А можно спросить у Вас этот алгоритм? Готового решения не дам, тем более, на питоне. Но сам алгоритм неплохо описан здесь:http://e-maxx.ru/algo/reverse_element Ну, и педивикия, конечно же: https://en.wikibooks.org/wiki/Algorithm_Implementation/Mathematics/Extended_Euclidean_algorithm Title: Re: Инверсия открытого ключа Post by: c2h5ohx on July 18, 2018, 02:54:18 PM Да, вы меня правильно поняли. Простите за не совсем корректный изначально вопрос. А можно спросить у Вас этот алгоритм? Готового решения не дам, тем более, на питоне. Но сам алгоритм неплохо описан здесь:http://e-maxx.ru/algo/reverse_element Ну, и педивикия, конечно же: https://en.wikibooks.org/wiki/Algorithm_Implementation/Mathematics/Extended_Euclidean_algorithm ok, спасибо. попробую, программер я еще тот.. думал, может есть что готовенького ??? Title: Re: Инверсия открытого ключа Post by: c2h5ohx on July 18, 2018, 03:38:08 PM Да, вы меня правильно поняли. Простите за не совсем корректный изначально вопрос. А можно спросить у Вас этот алгоритм? Готового решения не дам, тем более, на питоне. Но сам алгоритм неплохо описан здесь:http://e-maxx.ru/algo/reverse_element Ну, и педивикия, конечно же: https://en.wikibooks.org/wiki/Algorithm_Implementation/Mathematics/Extended_Euclidean_algorithm ok, спасибо. попробую, программер я еще тот.. думал, может есть что готовенького ??? проблему решил, спасибо! тему можно закрывать ;D Title: Re: Инверсия открытого ключа Post by: OddEvenBets.com on July 18, 2018, 03:46:41 PM Да, вы меня правильно поняли. Простите за не совсем корректный изначально вопрос. А можно спросить у Вас этот алгоритм? Готового решения не дам, тем более, на питоне. Но сам алгоритм неплохо описан здесь:http://e-maxx.ru/algo/reverse_element Ну, и педивикия, конечно же: https://en.wikibooks.org/wiki/Algorithm_Implementation/Mathematics/Extended_Euclidean_algorithm ok, спасибо. попробую, программер я еще тот.. думал, может есть что готовенького ??? Все же для чего это нужно объясните? Бывает, что смысла нет делать какой-то алгоритм.. а проще новый и простой написать с нуля Title: Re: Инверсия открытого ключа Post by: c2h5ohx on July 18, 2018, 07:18:03 PM Да, вы меня правильно поняли. Простите за не совсем корректный изначально вопрос. А можно спросить у Вас этот алгоритм? Готового решения не дам, тем более, на питоне. Но сам алгоритм неплохо описан здесь:http://e-maxx.ru/algo/reverse_element Ну, и педивикия, конечно же: https://en.wikibooks.org/wiki/Algorithm_Implementation/Mathematics/Extended_Euclidean_algorithm ok, спасибо. попробую, программер я еще тот.. думал, может есть что готовенького ??? Все же для чего это нужно объясните? Бывает, что смысла нет делать какой-то алгоритм.. а проще новый и простой написать с нуля Это для себя, чтобы по алгоритму ключи генерировать и.. не записывать их ;D ;D ;D (без шуток) |