Python, BSV i OP_RETURN - wrzucamy tekst na blockchain!
Dawno nic nie wrzucałem w temacie Pythona i BSV, więc pora to nadrobić.
Jakiś czas temu przygotowałem sobie prostą aplikację w terminalu, która pozwala wysyłać tekst bezpośrednio na blockchain za pomocą OP_RETURN. O ręcznym składaniu takiej transakcji pisałem w tym miejscu. Postanowiłem trochę go dopracować, dodałem tworzenie klucza, json, tkinter i wyszła całkiem przyzwoita, prosta aplikacja.
Co potrafi?
Wysłać własny tekst na blockchain i dostać potwierdzenie w postaci hasha transakcji. Wszystko z poziomu prostego okienka, bez konieczności ręcznego składania transakcji.
Jak działa?
- Generujesz klucz prywatny. Aplikacja pozwala utworzyć nowy klucz, a następnie doładować go testowymi bitcoinami z kranu (faucet). Link do kranu znajdziesz bezpośrednio w programie - przeglądarka otworzy się automatycznie.
- Zostajesz na testnecie. Możesz przełączać sieci, ale do testowania nie ma takiej potrzeby. Najlepiej zrobić wszystko na testnecie, bez angażowania prawdziwych środków.
- Sprawdzasz saldo. Po otrzymaniu testowych monet wystarczy odświeżyć saldo w aplikacji.
- Wpisujesz swój tekst. Może to być krótka wiadomość, notatka albo dowolna treść, którą chcesz zapisać w blockchainie.
- Obliczasz koszt. Klikasz "Oblicz", a aplikacja przygotowuje krótkie podsumowanie transakcji - ile wyniesie opłata, ile środków zostanie wykorzystanych i ile dostaniesz reszty.
- Wysyłasz transakcję. Klikasz "Wyślij" i gotowe - Twój tekst trafia do transakcji w blockchainie.
- Otrzymujesz hash transakcji. Możesz go skopiować i wykorzystać do sprawdzenia transakcji w eksploratorze np. WhatsOnChain.
Co trafia do transakcji?
Domyślnie aplikacja tworzy trzy wyjścia transakcji:
- OP_RETURN - tutaj trafia Twój tekst.
- 333 satoshi na mój adres testowy - będę wiedział, że ktoś skorzystał z aplikacji.
- reszta dla Ciebie - wraca na Twój adres.
Skąd pobrać aplikację?
Kod znajdziesz na GitHubie. No i masz dwie możliwości uruchomienia programu:
- Klonujesz repozytorium i uruchamiasz aplikację za pomocą Pythona.
- Pobierasz plik ZIP, w którym znajduje się pojedynczy plik z aplikacją.
Po wygenerowaniu klucza prywatnego w folderze aplikacji pojawi się dodatkowo plik config.json, w którym przechowywana jest konfiguracja.
Szczegóły działania aplikacji i konfiguracji opisałem już w readme na GitHubie.
Jak potrzebujesz więcej przykładów z budowaniem transakcji, to znajdziesz je w sekcji Wszystkie Wpisy.
Miłego korzystania!
Cześć!
Komentarze
Prześlij komentarz