„Krótko: w tej części portfela Bitcoin SV zamieniam PBKDF2 na Argon2id (odporność na ataki GPU), dodaję obsługę UTXO, checksum HMAC do keystore, bezpieczne czyszczenie mnemonika z pamięci i wysyłanie transakcji z walidacją adresu. To część 3 serii." W poprzedniej części obiecałem że zajmiemy się bezpieczeństwem i wysyłaniem transakcji. Tym razem pracy było sporo, bo po drodze okazało się że "trochę większe" bezpieczeństwo. to tak naprawdę kilka całkiem konkretnych rzeczy do zmiany. I znowu skończyło się na tym, że siedziałem i dłubałem.. Co się zmieniło względem części 2? Zanim wrzucę kod, powiem co i dlaczego. W poprzedniej wersji portfela używaliśmy PBKDF2 do wyprowadzania klucza z hasła. To całkiem przyzwoity algorytm, ale ma jedną słabość - jest podatny na ataki GPU. Karta graficzna może liczyć miliony prób na sekundę równolegle a atakujący z porządną kartą graficzną może dość sprawnie przeszukiwać słowniki haseł. PBKDF2 vs ...