Bitcoin Forum
June 26, 2024, 02:36:21 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Инверсия открытого ключа  (Read 184 times)
c2h5ohx (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 0


View Profile
July 17, 2018, 10:53:29 PM
 #1

Опытные кодеры, подскажите, а есть ли возможность и реализация на python инверсии открытого ключа?
Секрет инверсию делать получается, а обратно по открытому (x,y) - нет.

Подскажите юзеру.

Как инверсировать к примеру

c6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5
1ae168fea63dc339a3c58419466ceaeef7f632653266d0e1236431a950cfe52a
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
July 18, 2018, 07:37:29 AM
 #2

Что такое инверсия ключа?

OpenTrade - Open Source Cryptocurrency Exchange
c2h5ohx (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 0


View Profile
July 18, 2018, 07:46:48 AM
 #3

Что такое инверсия ключа?

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
   


   


kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
July 18, 2018, 09:07:59 AM
 #4

Что такое инверсия ключа?

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
   


Своими словами можете объяснить?
Что это написано и зачем оно нужно?

OpenTrade - Open Source Cryptocurrency Exchange
DevilOper
Member
**
Offline Offline

Activity: 280
Merit: 26


View Profile
July 18, 2018, 11:25:43 AM
 #5

Ну, судя по коду - автор хощет обратное по модулю 1/a(mod M).
(Правда, подобный алгоритм весьма уныл, есть более весёленькие реализации, но вопрос был не об этом.)

Другой вопрос, о какого рода публичном ключе идёт речь. Если имеется ввиду ЕСС - то там операция умножения (и, как следствие - деления) для точек не определена, точнее, определена единственная "групповая операция", которую кто как хочет, тот так и называет.
Обратной же точке с координатами (X,Y) (которые и составляют обычно публичный ключ) считается точка с координатами (X,-Y).
c2h5ohx (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 0


View Profile
July 18, 2018, 01:31:11 PM
 #6

Ну, судя по коду - автор хощет обратное по модулю 1/a(mod M).
(Правда, подобный алгоритм весьма уныл, есть более весёленькие реализации, но вопрос был не об этом.)


Да, вы меня правильно поняли. Простите за не совсем корректный изначально вопрос. А можно спросить у Вас этот алгоритм?
DevilOper
Member
**
Offline Offline

Activity: 280
Merit: 26


View Profile
July 18, 2018, 01:57:16 PM
 #7

Да, вы меня правильно поняли. Простите за не совсем корректный изначально вопрос. А можно спросить у Вас этот алгоритм?
Готового решения не дам, тем более, на питоне. Но сам алгоритм неплохо описан здесь:
http://e-maxx.ru/algo/reverse_element
Ну, и педивикия, конечно же:
https://en.wikibooks.org/wiki/Algorithm_Implementation/Mathematics/Extended_Euclidean_algorithm
c2h5ohx (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 0


View Profile
July 18, 2018, 02:54:18 PM
 #8

Да, вы меня правильно поняли. Простите за не совсем корректный изначально вопрос. А можно спросить у Вас этот алгоритм?
Готового решения не дам, тем более, на питоне. Но сам алгоритм неплохо описан здесь:
http://e-maxx.ru/algo/reverse_element
Ну, и педивикия, конечно же:
https://en.wikibooks.org/wiki/Algorithm_Implementation/Mathematics/Extended_Euclidean_algorithm


ok, спасибо. попробую, программер я еще тот.. думал, может есть что готовенького  Huh
c2h5ohx (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 0


View Profile
July 18, 2018, 03:38:08 PM
 #9

Да, вы меня правильно поняли. Простите за не совсем корректный изначально вопрос. А можно спросить у Вас этот алгоритм?
Готового решения не дам, тем более, на питоне. Но сам алгоритм неплохо описан здесь:
http://e-maxx.ru/algo/reverse_element
Ну, и педивикия, конечно же:
https://en.wikibooks.org/wiki/Algorithm_Implementation/Mathematics/Extended_Euclidean_algorithm


ok, спасибо. попробую, программер я еще тот.. думал, может есть что готовенького  Huh

проблему решил, спасибо! тему можно закрывать  Grin
OddEvenBets.com
Full Member
***
Offline Offline

Activity: 1022
Merit: 100



View Profile WWW
July 18, 2018, 03:46:41 PM
 #10

Да, вы меня правильно поняли. Простите за не совсем корректный изначально вопрос. А можно спросить у Вас этот алгоритм?
Готового решения не дам, тем более, на питоне. Но сам алгоритм неплохо описан здесь:
http://e-maxx.ru/algo/reverse_element
Ну, и педивикия, конечно же:
https://en.wikibooks.org/wiki/Algorithm_Implementation/Mathematics/Extended_Euclidean_algorithm


ok, спасибо. попробую, программер я еще тот.. думал, может есть что готовенького  Huh

Все же для чего это нужно объясните?
Бывает, что смысла нет делать какой-то алгоритм.. а проще новый и простой написать с нуля

███████████████████████████████████████
OddEvenBets - it's not my domain now! I lost it.
 
████████████████████████████████████████████████████████
c2h5ohx (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 0


View Profile
July 18, 2018, 07:18:03 PM
 #11

Да, вы меня правильно поняли. Простите за не совсем корректный изначально вопрос. А можно спросить у Вас этот алгоритм?
Готового решения не дам, тем более, на питоне. Но сам алгоритм неплохо описан здесь:
http://e-maxx.ru/algo/reverse_element
Ну, и педивикия, конечно же:
https://en.wikibooks.org/wiki/Algorithm_Implementation/Mathematics/Extended_Euclidean_algorithm


ok, спасибо. попробую, программер я еще тот.. думал, может есть что готовенького  Huh

Все же для чего это нужно объясните?
Бывает, что смысла нет делать какой-то алгоритм.. а проще новый и простой написать с нуля

Это для себя, чтобы по алгоритму ключи генерировать и.. не записывать их  Grin Grin Grin (без шуток)
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!