Generator mnemoniców BIP39 z talii kart [C#]
: wtorek, 31 stycznia 2017, 01:53
Zgodnie z zapowiedzią popełniłem generator mnemoniców zgodny z BIP39.
Program pozwala na wygenerowanie mnemoniców o długości 12, 15, 18, 21 i 24 słów.
Jako źródło entropii używana jest talia kart (lub dwie).
Po potasowaniu kart klikamy kolejne karty jakie wylosowaliśmy.
Program instruuje nas, kiedy należy użyć drugiej talii (lub ponownie potasować pierwszą).
Aby dodatkowo zwiększyć losowość program liczy również czas od uruchomienia do kliknięcia karty i przy każdej karcie haszuje "salt".
Nie jest więc możliwe uzyskanie tego samego mnemonica używając tak samo ułożonej talii.
Robiąc to w ten sposób kierowałem się zasadą, że zachowanie mnemonica jest prostsze i pewniejsze niż zachowanie źródła entropii (ułożenia kart).
Po wskazaniu odpowiedniej ilości kart program wylicza mnemonic z dostarczonej entropii (binarna entropia to sha512 z układu kart+salt).
Program jest całkowicie samodzielny i nie wymaga żadnych plików, bibliotek ani połączenia z internetem - można go spokojnie odpalić na maszynie offline.
Źródła na githubie: https://github.com/Rav3nPL/SeedGenerator
Binarka: https://github.com/Rav3nPL/SeedGenerator/releases/
Program pozwala na wygenerowanie mnemoniców o długości 12, 15, 18, 21 i 24 słów.
Jako źródło entropii używana jest talia kart (lub dwie).
Po potasowaniu kart klikamy kolejne karty jakie wylosowaliśmy.
Program instruuje nas, kiedy należy użyć drugiej talii (lub ponownie potasować pierwszą).
Aby dodatkowo zwiększyć losowość program liczy również czas od uruchomienia do kliknięcia karty i przy każdej karcie haszuje "salt".
Nie jest więc możliwe uzyskanie tego samego mnemonica używając tak samo ułożonej talii.
Robiąc to w ten sposób kierowałem się zasadą, że zachowanie mnemonica jest prostsze i pewniejsze niż zachowanie źródła entropii (ułożenia kart).
Po wskazaniu odpowiedniej ilości kart program wylicza mnemonic z dostarczonej entropii (binarna entropia to sha512 z układu kart+salt).
Program jest całkowicie samodzielny i nie wymaga żadnych plików, bibliotek ani połączenia z internetem - można go spokojnie odpalić na maszynie offline.
Źródła na githubie: https://github.com/Rav3nPL/SeedGenerator
Binarka: https://github.com/Rav3nPL/SeedGenerator/releases/