Przejdź do głównej zawartości

Co to jest portfel programowy?

U
Napisane przez UKey Wallet

Portfele programowe wykorzystują do generowania liczby losowe Głównyklucz prywatny.

Następnie przejdź Algorytm deterministyczny i nieodwracalny, może uzyskać nieograniczoną liczbę subklucz prywatny.

Po co nam deterministyczne i nieodwracalne algorytmy?
ponieważ pewność oznacza, że wszystkie potomne klucz prywatny mogą być zawsze generowane z tego samego głównego klucz prywatny, podczas gdy Nieodwracalne Oznacza to, że głównego klucz prywatny nie można zrekonstruować z żadnego podrzędnego klucz prywatny.

dlatego to się nazywa Portfel hierarchiczny deterministyczny (HD).. Struktura wyprowadzania klucz prywatny jest podobna do drzewa: klucz nadrzędny może wyprowadzić wiele kluczy podrzędnych, każdy klucz podrzędny może wyprowadzić wiele kluczy wnuków, a proces ten może trwać w nieskończoność.

Podczas tworzenia portfela HD lub portfela kopia zapasowa po raz pierwszy zostanie on wygenerowany fraza nasienna. fraza nasienna składa się z zestawu kolejnych angielskich słów. Ta sekwencja zostanie użyta do wygenerowania nasiona, a następnie wygeneruj wszystkie klucz prywatny w portfelu z materiału siewnego. Innymi słowy, fraza nasienna to portfel kopia zapasowa, którego można używać w portfelu przywrócić; a ziarno odpowiada oryginalnej liczbie losowej znajdującej się za deterministycznym portfelem.

Jedną z największych zalet portfela HD jest to, że wymaga tylko Głównyklucz publiczny może wygenerować dowolną liczbę subklucz publiczny. Oznacza to, że nowe adresy publiczne można utworzyć z głównego klucz publiczny bez konieczności uzyskiwania dostępu do głównego klucz prywatny lub sub-klucz prywatny. Jednakże te wygenerowane adresy są ostatecznie kontrolowane przez główny klucz prywatny.

Oczywiście ten projekt wiąże się z ryzykiem. Jeśli fraza nasienna zostanie ujawniony, zasadniczo ujawni wszystkie klucz prywatny. Kiedy to nastąpi, bezpieczeństwo zasobów cyfrowych w portfelu zostaje skutecznie utracone.

Dlaczego potrzebujesz tak wielu klucz prywatny?

Dlaczego użytkownicy potrzebują tak dużo klucz prywatny? Można to osiągnąć poprzez transakcje Bitcoin mechanizm zmian zrozumieć.

Handel Bitcoinem to wejście i wyjście Struktura danych zawiera również informacje o skrypcie potrzebne do przesłania wartości ze źródła (wejście) na adres docelowy (wyjście).

Aby zrozumieć wejścia i wyjścia Bitcoina, musisz najpierw zrozumieć UTXO(Niewydane dane wyjściowe transakcji). UTXO jest podstawową jednostką transakcji Bitcoin i reprezentuje wynik transakcji, który nie został jeszcze wydany. Pojedynczy Bitcoin może w rzeczywistości być dystrybuowany jako UTXO w wielu transakcjach i wielu blokach. Bitcoin nie ma centralnie rejestrowanego prostego salda konta; zamiast tego na łańcuchu ma tylko zdecentralizowane UTXO, kontrolowane przez ich odpowiednich właścicieli.

UTXO może reprezentować dowolną wartość, ale raz stworzony jest niepodzielny, tak jak fizycznej monety nie można podzielić na pół. Jeżeli wartość UTXO jest większa niż kwota wymagana do transakcji, nadal należy wydać całe UTXO, a nadwyżka zostanie zwrócona jako reszta.

Załóżmy na przykład, że masz UTXO o wartości 20 jednostek i chcesz zapłacić 1 jednostkę. Transakcja musi zużyć pełne 20 jednostek UTXO i utworzyć dwa wyjścia: jeden, który wysyła 1 jednostkę do odbiorcy, a drugi, który wysyła 19 jednostek z powrotem do Twojego portfela jako resztę. Dlatego większość transakcji Bitcoin generuje zmiany.

Prowadzi to do kolejnego pytania: czy zmianę należy odesłać na pierwotny adres, czy na nowo wygenerowany adres?

Kiedy Satoshi Nakamoto zaprojektował Bitcoin, przedstawił go Zmień mechanizm adresu: Zazwyczaj tworzony jest nowy adres w celu otrzymania zmian dla każdej transakcji. Pomaga to chronić prywatność użytkowników i łagodzi niektóre zagrożenia bezpieczeństwa.

W prawdziwym życiu przypomina to otwieranie wielu kont bankowych pod różnymi nazwiskami i tożsamościami w różnych bankach. Nawet gdyby ktoś mógł obserwować przepływ środków na każdym koncie, miałby trudności z odnalezieniem wszystkich środków aż do prawdziwego właściciela zasobu cyfrowego. Jest to jeden z powodów względnej anonimowości Bitcoina.

Dlatego użytkownicy portfeli potrzebują dużych ilości klucz prywatny. Ponieważ klucz publiczny i klucz prywatny zawsze występują w parach, a każda transakcja może generować nowy adres zmiany, przechowywanie klucz prywatny odpowiadającego tym adresom kopia zapasowa jeden po drugim będzie wiązać się z wysokimi kosztami zarządzania. Portfel HD rozwiązuje ten problem, wyprowadzając dowolną liczbę sub-klucz publiczny i sub-klucz prywatny z jednego klucza głównego i znacznie poprawia użyteczność portfeli cyfrowych.

Czy to odpowiedziało na twoje pytanie?