Wpis z mikrobloga

Tak a propos tego wpisu.

https://www.wykop.pl/wpis/44267003/tak-sobie-pomyslalem-ogladajac-miasto-gniewu-odcin/

Nie mogłem się powstrzymać i napisałem sobie całkowicie deterministyczny generator seeda ( ͡° ͜ʖ ͡°).
https://github.com/a000b/Deterministic-seed-generator

Algorytmem jest zwykły ciąg arytmetyczny, przyjmujący jako argumenty numer pierwszego słowa i skok.
Raczej nie użyłbym takiego algorytmu do generowania seeda. Nie chce mi się liczyć, ile jest kombinacji takich podzbiorów, czy dużo czy mało. Ale może przy małej modyfikacji i odjęciu jakieś trzeciej liczby od kolejnego wyrazu ciągu, to może i czułbym się pewnie.

Zwłaszcza, że python pozwala na negatywne indexy listy i wtedy wygenerowany ciąg nie jest już taka jednoznaczny.

https://www.i2tutorials.com/technology/what-are-negative-indexes-and-why-are-they-used/

Tak czy inaczej gdybym szedł do więzienia na 10 lat, to bym chyba wolał pamiętać dwie albo trzy liczby wejściowe niż 24 wyrazy - wylosowane kostką ( @rysiekryszard)

Myślicie, że takie proste algorytmy są testowane przy łamaniu BTC?
Ktoś dobry z liczenia ( nie ja ) mógłby policzyć ile kombinacji subsetów słów daje taki algorytm.

#bitcoin #kryptowaluty #python
O.....I - Tak a propos tego wpisu.

https://www.wykop.pl/wpis/44267003/tak-sobie-po...

źródło: comment_6hAFz3pEeZ9FiWOcgq7otaR9wv9xporp.jpg

Pobierz
  • 34
@OPcodeRTI: Bez 'ujemnych indeksów' ciężko policzyć liczbę kombinacji, ale aby nie przekroczyć indeksu maksymalny skok to 85 - przy założeniu, że początkowe słowo będzie miało indeks maksymalnie 8.

Z drugiej strony jak lista będzie szła w nieskończoność to mamy 2048^2 kombinacji.

Normalnie seed generator ma 2048^24 kombinacji. Widać różnicę.
@OPcodeRTI: hm... nie znam tematu, po co Ci te wyrazy? nie wiem czy dobrze zrozumiałem, ale seed to liczba słóżąca za seed ;) przy generowaniu liczb pseudolosowych, u Ciebie to to samo? Co się robi potem z tą listą słów?
@miluvzkittenz: Tak mi przyszło do głowy że listę można jakby wydłużyć w nieskończoność, po prostu powielając. Czyli jak indeks osiąga wartość powyżej 2047 to należy odjąć 2047 i wtedy dostajemy słowo z dołu listy. To niczego nie komplikuje, bo dalej operujemy na tej samej liście ale rośnie ilość możliwych kombinacji. Dobrze myślę?
@OPcodeRTI: hm....a lista wyrazów pochodzi skąd? dlaczego jest niezmienna? Bo szyfrem jest tu tylko ta lista plus 2 liczby, po poznaniu tych elementów wszystko pada. (czyli w zasadzie wystaercz znać listę i reszta to już brute force)

Jeżeli takie coś byś kombinował to jedynie na czym się możesz oprzeć to na nieznajomości rodzaju szyfrowania.
CZyli równie dobrze możesz mieć jeden wyraz z niego wyliczasz sha256 (jak już tak jedziemy bitcoinowo) i
Seed jest wejściem do generatora składa się 24 wyrazów z listy 2048.


@OPcodeRTI: nie znam, tematu, skąd ta lista? dlaczego jest stałą i po 15 latach dalej będzie stała? To jest jakaś z góry narzucona lista ?

Jak możesz to policz bo jestem ciekawy


@OPcodeRTI: No ale czekaj bo to jest nędzne 4 miliony kombinacji to poniżej grubo poniżej sekundy.
To oficjalna lista używana przez BIP39, nawet jak pojawi się inna to ta będzie zawsze dostępna - chociażby historycznie.


@OPcodeRTI: aa rozumiem, no to słabo jak #!$%@?, że tak brutalnie powiem, przy znajomości tego szyfrowania (Tylko w nieznajomośći tkwi moc) to tak jak pisałem, ani sekunda ;)