oto slajdy mojej prezentacji na @PresidioBitcoin Quantum Bitcoin Summit: TL;DR: Proponuję, aby zestaw parametrów sha2 SPHINCs+ (SLH-DSA/FIPS-205) dostosowany do mniejszych podpisów (~3KB, jak najmniejsze) został przyjęty w Bitcoinie jako schemat podpisu PQC.
Zbadam również, jakie są implikacje dla typu sig w całym stosie (zmiany w tapscript, itp). Największa zmiana polega na tym, że pochodzenie klucza publicznego BIP-32 już nie działa (np. na czym polegają portfele sprzętowe tylko do obserwacji), ponieważ podpisy oparte na haszach nie oferują typu struktury algebraicznej.
deterministyczne wyprowadzanie kluczy z ziarna jest nadal wspierane, ale nie będzie czegoś takiego jak "xpub"
więc możemy celować w mniejszą ilość dla maksymalnej ilości podpisów dla jednego klucza + dostosować inne parametry, aby zrekompensować nieco wolniejsze generowanie podpisów (walidacja wciąż jest szybka), dla mniejszych podpisów jeśli przekroczysz ten maksymalny cel, bezpieczeństwo się pogarsza (128-bit -> 112-bit), ale nie łamie się od razu
możliwe jest osiągnięcie zakresu parametrów z podpisami mniejszymi lub równymi ML-DSA (podpis oparty na siatce), z mniejszymi kluczami prywatnymi i publicznymi: * SLH-DSA: 32-bajtowe klucze publiczne, 64-bajtowe klucze prywatne * ML-DSA: klucze prywatne powyżej 2KB, klucze publiczne powyżej 1KB kompromis polega na braku dodatkowej struktury do zaawansowanej kryptografii.
mniej elastyczny, ale bardziej konserwatywny Bitcoin już wszędzie używa sha2 wszystkie podpisy mają funkcję haszującą gdzieś nie wprowadzono nowych założeń kryptograficznych (odporność na 1. lub 2. preimage itp.), robienie mnóstwa haszy jest szybkie, szczególnie z wektoryzowanymi instrukcjami + akceleracją sprzętową
gotowanie trochę kodu+specyfikacji 😈 nie jestem zbyt zainteresowany politycznym pytaniem, czy monety powinny być zamrożone/zajęte itd., itd. moim zdaniem łamie to fundamentalną zasadę Bitcoina, MUSIMY opierać się grupom próbującym koordynować efektywną redystrybucję bogactwa strata wartości z tego > złamanie PQ
19,8K