Co zrobić, jeśli transakcja nie zostanie potwierdzona? Czas potwierdzenia transakcji Bitcoin: jak długo czekać? Dlaczego potwierdzenie transakcji Bitcoin zajmuje dużo czasu?

Wiele osób prawdopodobnie spotkało się już z problemem zamrożonych bil białych (podczas wysyłania i odbierania).
W większości przypadków jest to spowodowane spamem sieciowym i niskimi opłatami dla górników (zwanymi dalej prowizją).
Przed wysłaniem bitcoinów radzę przyjrzeć się stanowi sieci i ustalić prowizję, którą polecają te serwisy:
https://btc.com/stats/unconfirmed-tx

Jeśli tak się stanie, że wysłałeś prowizję niższą od zalecanej lub po prostu Twoja transakcja utknęła w niepotwierdzeniu i nie jest uwzględniona w bloku, skorzystaj z tej usługi, aby „wypchnąć”:

Weź swoją transakcję th(id):
Przykład:

I wpisz identyfikator tutaj:


Notatka!

Kiedy sieć jest przeciążona, nie zawsze możliwe jest pomyślne wprowadzenie Bitcoina przy pierwszym użyciu tej usługi.

Możesz otrzymać taki komunikat:

Liczba zgłoszeń przekracza limit. Proszę spróbuj później.

Kliknij aby rozszerzyć...

Musisz jechać, aż uzyskasz status: Pomyślnie.

Następnie Twoja transakcja zostanie pobrana i wciągnięta do bloku w celu przetworzenia.

Co zrobić, jeśli Twoja transakcja Bitcoin nie została potwierdzona („zablokowana”)?

Na początku możesz po prostu poczekać. Jeśli minęło kilka godzin (lub nawet dni) i masz już dość czekania, istnieje kilka opcji:

  1. Dokonaj podwójnego wydatku. Funkcje: może to zrobić tylko nadawca.
  2. Skorzystaj z CPFP. Cechy: może to zrobić odbiorca i zwykle nadawca.
  3. Skorzystaj z opłaty zastępczej. Cechy: może to zrobić tylko nadawca i jeśli wcześniej zadbał o to; nie wszystkie portfele to potrafią.
  4. Użyj „akceleratora” z viabtc. Cechy: odbiorca i nadawca mogą, ale usługa jest często przeciążona i istnieją ograniczenia dotyczące transakcji.
Jak dokonać podwójnego wydatku (podwójnego wydatku)?

Postępujemy według następującego algorytmu (algorytm opisano dla portfela Bitcoin Core; w przypadku pozostałych portfeli działania są podobne, ale polecenia będą inne):

Cel spoilera"> Spojler: algorytm

1) Upewnij się, że oczekuje na potwierdzenie. W tym celu skopiuj swój identyfikator transakcji i wklej go w pasek wyszukiwania serwisu blockchain.info (a także bitaps.com, blocktrail.com/BTC lub podobnego). Następnie szukamy linii „transakcja niepotwierdzona”. Znalazłeś? Oznacza to, że transakcja oczekuje na potwierdzenie.
Notatka. Nie patrzymy na „Szacowany czas potwierdzenia” na stronie z transakcją na blockchain.info – nie wiemy, co tam jest.

2) Teraz zamknij portfel i uruchom go z wiersza poleceń z parametrem -zapwallettxes i poczekaj, aż się otworzy. Kiedy portfel się uruchomi, wszystkie niepotwierdzone z niego transakcje znikną (ale nadal będą w sieci!). W przypadku Bitcoin Core 0.14 będziesz musiał zmienić nazwę lub przenieść plik mempool.dat przed uruchomieniem (pamięć w tej wersji jest zapisywana w pliku, a stara transakcja pozostaje tam).
Notatka. Dlaczego nie z parametrem -salvagewallet? -zapwallettxes nie wpłynie na nazwy kluczy, ale -salvagewallet je usunie. Ponadto rdzeń Bitcoin czasami ulega awarii podczas uruchamiania z - salvagewallet, a następnie Twój portfel.dat zostanie uszkodzony. To prawda, że ​​\u200b\u200bkopia zostanie utworzona obok niego z wyprzedzeniem.

3) Teraz możesz utworzyć nową transakcję, nie zapominając o ustaleniu odpowiedniej prowizji. Ale! Ponieważ Twoja stara transakcja jest nadal w trybie online, pewnego dnia może zostać nieoczekiwanie potwierdzona. Jeśli to Ci nie odpowiada, nowa transakcja będzie musiała mieć przynajmniej jedno z danych wejściowych pasujących do jednego z danych wejściowych starej. Aby to zrobić, spójrz na kolumnę „wejściowe” na stronie transakcji na stronie blocktrail.com/BTC lub analogowej i wprowadź dokładny rozmiar danych wejściowych w bilach białych. Następnie podczas tworzenia transakcji w portfelu kliknij przycisk „wejścia…”, znajdź na liście dokładnie tę samą liczbę w bilach białych i wybierz ją (jeśli jest ich kilka, wybierz z tym samym odbiorem adres i godzina). Następnie wybieramy trochę więcej danych wejściowych, tak aby łączna kwota była większa niż kwota transakcji z przyszłą prowizją; Lepiej wybierać z rezerwą. Następnie jak zwykle wypełnij wszystkie pola (nie zapomnij o prowizji!) i wyślij.


Jak korzystać z CPFP? Co jeśli nie jestem nadawcą, ale odbiorcą transakcji?

Istnieje taka metoda i jest ona odpowiednia dla odbiorców; Jest to również odpowiednie dla nadawcy, jeśli Twoja transakcja uległa „zmianie” (zwykle tak jest). Metoda ta jest nieco droższa i nie wiadomo, ile pul ją obsługuje (od początku 2017 roku obsługują ją co najmniej dwie pule). Możesz spróbować skorzystać z mechanizmu CPFP (dziecko płaci za rodzica). Aby to zrobić, musisz wydać jeden z wyników problematycznej transakcji z prowizją wystarczającą na obie transakcje jednocześnie - nową i starą. Oznacza to, że po prostu tworzysz transakcję z jednym wejściem (powinno to być jedno z problematycznych wyjść, na przykład zmiana) i wysyłasz bitcoiny do siebie. Ustal prowizję tak, aby wystarczyła dla obu na raz: w tym celu zsumuj ich rozmiary, pomnóż przez liczbę z akapitu „Jak wybrać odpowiednią prowizję?”, podziel przez wielkość nowej w kilobajtach i wpisz ją w kolumnie „niestandardowa opłata transakcyjna” podczas wysyłania transakcji. Więcej szczegółów na temat portfela Bitcoin Core pod spoilerem:

SpoilerTarget">Spoiler

Załóżmy na przykład, że jesteś odbiorcą i powinieneś otrzymać 0,08500148 btc. Aby skorzystać z CPFP, w Bitcoin Core kliknij „Ustawienia” -> „Opcje” -> „Portfel” („Ustawienia” -> „Opcje” -> „Portfel”); zaznacz pola „Włącz funkcje kontroli monet” i „Wydawaj niepotwierdzoną resztę”, jeśli nie są zaznaczone (wtedy możesz je usunąć); Teraz zamknij okno ustawień i kliknij „Wyślij”, następnie kliknij przycisk „Wejścia…” i sprawdź kwotę 0,08500148; następnie „OK”, jako adresata wpisz swój adres; ilość ustawioną na 0,08500148 i checkbox „odejmij opłatę od kwoty”; ustaw prowizję „selektywnie” („niestandardową”), „za kilobajt” („za kilobajt”) i zapisz ją na podstawie 2 transakcji korzystając ze wzoru ((wielkość starej transakcji)/(wielkość nowej transakcji) + 1 )*(odpowiednia prowizja za kilobajt lub więcej). Wysyłanie.

Wszystko. Teraz poczekaj. Pule, które „rozumieją” ten schemat, chętnie zaakceptują obie transakcje na raz. Może to nie być szybkie, jeśli takich pul jest niewiele.


Jak anulować transakcję? Czy transakcja może sama się anulować?

Po zatwierdzeniu transakcji (uwzględnieniu w bloku) nie można jej cofnąć ani cofnąć. Aby anulować niepotwierdzoną transakcję, należy utworzyć transakcję z nią konkurencyjną i upewnić się, że została uwzględniona w bloku - patrz punkt (2) odpowiedzi na pytanie „Co zrobić, jeśli wysłana przez Ciebie transakcja Bitcoin nie zostanie potwierdzona ( "zablokowany")?". W każdym razie nie ma tutaj gwarancji sukcesu.

Niepotwierdzonej transakcji nie można anulować – zmienić może się jedynie sposób jej wyświetlania w portfelu. Następnie zobacz odpowiedź na pytanie "Moja transakcja była niepotwierdzona przez kilka dni, a następnie zniknęła, a pieniądze zostały zwrócone. Teraz wszystko jest w porządku i czy mogę po prostu wysłać pieniądze jeszcze raz?"

Moja transakcja pozostawała niepotwierdzona przez kilka dni, po czym zniknęła, a pieniądze zwrócono. Teraz wszystko jest w porządku. Czy mogę po prostu wysłać pieniądze jeszcze raz?

NIE! Twoja stara transakcja jest nadal w trybie online i może zostać nieoczekiwanie potwierdzona. Aby tego uniknąć, patrz punkt (2) odpowiedzi na pytanie „Co zrobić, jeśli wysłana przez Ciebie transakcja Bitcoin nie została potwierdzona („zablokowana”)?” (pod spoilerem). Jeżeli zmienisz zdanie co do wykonania tłumaczenia, możesz wykonać je samodzielnie.

Jak uchronić się przed zamrożonymi transakcjami?

  1. Ustal odpowiednią prowizję.
  2. Włącz w swoim portfelu mechanizm wymiany na opłatę i oznacz wszystkie transakcje jako podlegające wymianie, jeśli Twój portfel to obsługuje (wydaje się, że Electrum to obsługuje). Umożliwi to łatwe zwiększenie prowizji, jeśli pojawi się problem.


Niepotwierdzona transakcja Bitcoinem to transakcja w sieci kryptowalut, która po zainicjowaniu nie dostała miejsca w kolejnym bloku łańcucha. Rośnie liczba transakcji Bitcoinem, przez co pojawia się konkurencja przy wypełnianiu elementów blockchaina. Rozmiar bloku pozostaje niezmieniony i wynosi tylko 1000 KB (1 MB). Nic dziwnego, że w sieci kryptograficznej coraz częściej występują opóźnienia trwające 5–7 godzin lub dłużej.

Takie sytuacje stwarzają trudności dla osób, które planowały szybko przelać pieniądze, ale spotkały ich nieoczekiwana przerwa w transakcji. Co robić? Co zrobić, jeśli płatność utknęła? Jakie są cechy poszczególnych metod? Rozważymy te i inne niuanse poniżej.

Dlaczego transakcja Bitcoin może utknąć?

Czas wysłania kryptowaluty innemu użytkownikowi zależy od wielu czynników - przeciążenia sieci w momencie przelewu, wielkości zainstalowanej kryptowaluty, wolumenu transakcji, a także priorytetu płatności. Aby wyjaśnić czas pozostały na potwierdzenie (przynajmniej w przybliżeniu), możesz udać się do specjalnego serwisu (na przykład blockchain.info), a następnie wskazać identyfikator operacji w wyszukiwanym haśle.

Istnieje wiele powodów, dla których transakcja Bitcoin nie zostaje potwierdzona:

  1. Transakcja jest wypychana z bloku przez inną operację, która ma priorytet. Jest to możliwe, gdy wielkość elementu łańcucha zbliża się do parametru ograniczającego, a transfer uczestnika sieci był ostatnim.
  2. Kończy się „czas życia” płatności, który wynosi 72 godziny.
  3. Pojawia się konflikt pomiędzy bieżącą transakcją a inną transakcją, która została wcześniej potwierdzona.
  4. Płatność jest zastępowana przez nadawcę inną płatnością.
Operacja „wyciśnięta” z bloku może powrócić do pamięci nadawcy (po otrzymaniu statusu transakcji zakończonej niepowodzeniem) lub zawiesić się. Czasami płatność jest wysyłana przez portfel wielokrotnie. W takiej sytuacji pieniądze zostają „zamrożone” i nie można ich wykorzystać. W portfelu pojawia się następująca informacja: „Status:0/niepotwierdzony, w puli pamięci”.

Ta ostatnia sytuacja zdarza się rzadko. Z reguły po 3 dniach pieniądze wracają do magazynu nadawcy. Dzieje się tak, jeśli ktoś przesłał niewielką kwotę i ustalił zbyt niską lub zerową prowizję.

Co zrobić, jeśli transakcja Bitcoin utknęła – wszystkie opcje


Wzrost popytu na Bitcoin i opóźnienia w potwierdzaniu transakcji doprowadziły do ​​nowej rundy dyskusji na temat kwestii skalowalności Bitcoina. Obecny rozmiar bloku wynoszący 1 MB nie jest wystarczający na pokrycie potrzeb użytkowników, którzy każdego dnia wykonują miliony przelewów. Jeśli przyjmiemy, że średni rozmiar transakcji wynosi 0,5 KB, w jednym bloku zmieści się 2000 transakcji, a rzeczywistych żądań jest kilkadziesiąt razy więcej. W rezultacie duże płatności z wysokimi prowizjami „przedostają się” do kolejnego węzła, a reszta wisi w statusie niepotwierdzonych i czeka na swoją kolej. Poniżej zastanowimy się, jak zachować się w sytuacji, gdy transakcja Bitcoinem utknęła.

Poczekaj na zakończenie transakcji

Jeśli czas nagli, nie musisz narzucać niczego na siłę i po prostu poczekać. Częstą przyczyną opóźnień jest obciążenie sieci i ograniczona liczba górników zaangażowanych w formowanie kolejnego bloku. Jeśli sieć nie charakteryzuje się dużą zmiennością i przeciążeniem, przyczyną mogą być niskie opłaty. Optymalną składkę możesz sprawdzić na btc.com/stats/unconfirmed-tx. Na dzień 11 kwietnia 2018 r. zalecana kwota płatności wynosi 0,00001 Bitcoina za 1 KB. Dlatego przy przeprowadzaniu transakcji o wolumenie 500 KB prowizja powinna wynosić co najmniej 0,0005 BTC.

Zamień na opłatę

Możesz bowiem zastąpić prowizję. Opcja ta jest dostępna dla nadawcy środków. Oficjalna nazwa opcji to Zastąp opłatą (RBF). Jeżeli go nie ma, powtórny przelew nie przejdzie weryfikacji i zostanie odrzucony przez blockchain. Wynika to z faktu, że podwójne wydatkowanie tych samych środków jest zabronione. Włączenie tej opcji informuje system o poprawności transakcji.

Istota funkcji jest prosta. Wiadomo, że płatności z niższą prowizją trwają dłużej niż transakcje, za które przypisana jest wyższa składka. Jeśli użytkownik zwiększy nagrodę, transakcja zostanie przesunięta do przodu w kolejce i będzie jedną z pierwszych, które zostaną zakończone. Ta funkcja nazywa się „selektywną zamianą prowizji” (Zastąp opłatą). Rzecz w tym, że operacja się nie zmienia – po prostu doliczane są do niej dodatkowe prowizje.

Podczas przeprowadzania takiej manipulacji należy zachować ostrożność, ponieważ system może odebrać to działanie jako podwójne wydanie i zablokować płatność. W przypadku skorzystania z opcji RBF odrzucenie transakcji jest wykluczone. Gdy funkcja jest włączona, sieć widzi operację, która wiąże się z dużą prowizją, po czym transakcja przesuwa się do przodu w kolejce i jest realizowana szybciej.

Obecność takiej opcji nie gwarantuje jeszcze szybkiego transferu, ponieważ zależy to od górników tworzących bloki. Powodem jest to, że nie wszyscy uczestnicy sieci współpracują z Wymień za opłatą. Ponadto RBF nie ma znaczenia dla wszystkich portfeli. Dziś jest obsługiwany przez portfele Electrum i GreenAddress. Jeśli chodzi o Bitcoin Core, ta funkcja jest dostępna po włączeniu dodatkowych skryptów.

Aby aktywować opcję wystarczy wejść do swojego portfela i aktywować opcję Zamień na opłatę. Z reguły wystarczy to, aby przyspieszyć tłumaczenie i zapobiec jego utknięciu w sieci.

Akceleratory

Niepotwierdzone transakcje Bitcoinem można „wypchnąć” za pomocą specjalnych akceleratorów. Jedną z opcji jest pula wydobywcza viaBTC, która pozwala skrócić czas transferu. Pomimo względnej młodości usługa zyskała popularność w szerokich kręgach i często jest wykorzystywana do przyspieszania zablokowanych transakcji w sieci kryptowalut. Jeśli transakcja nie dotrze do odbiorcy w ciągu jednego lub więcej dnia, pomoc takiej puli będzie przydatna.

Wady viaBTC w celu przyspieszenia transakcji Bitcoin:

  1. Usługa jest trudna w zarządzaniu, dlatego warto poświęcić trochę czasu na rozważenie jej możliwości przed skorzystaniem z niej.
  2. Program działa z małą liczbą transakcji, co powoduje okresowe zawieszanie się aplikacji. W praktyce akcelerator realizuje kilka transakcji w ciągu 60 minut, co ogranicza jego możliwości.
  3. Nie zawsze można wejść na basen. Przykładowo 11 kwietnia 2018 roku pojawiły się z tym problemy. System poprosi Cię o późniejsze zalogowanie się na stronę.
  4. W przyszłości za usługi platformy będzie pobierana opłata, uzależniona od wielkości transakcji.
Do uruchomienia akceleratora wymagane jest podanie ID operacji oraz podanie captcha. Usługa sprawdza wprowadzone informacje i kolejkuje przelew. Jeżeli transakcja zostanie oznaczona przez serwis, zostaje przeniesiona do bloku otrzymanego przez pulę.

Alternatywą dla rozważanego miejsca jest basen AntPool. Ponadto w Internecie można znaleźć zasoby agregatora (na przykład perenosi.com), opracowywane są boty akceleracyjne dla komunikatora Telegram (na przykład @FastTXbot).

Podwójne wydatki

Jeśli transakcja Bitcoinem utknęła, możesz zastosować inną technikę – przelać pieniądze po raz drugi, korzystając z tej samej usługi. Na przykład uczestnik sieci widzi, że płatność nie przebiega przez długi czas i znajduje się w zawieszeniu. Tutaj możesz skorzystać z możliwości blockchaina – wykonując kilka operacji na raz.

Rzecz w tym, że w określonym momencie sprawdzana jest ilość środków na koncie. Jeżeli pierwszy przelew nie powiódł się, nadawca ma prawo zmienić niektóre parametry, np. zwiększyć kwotę składki i dokonać płatności ponownie. Nie ma się co martwić, czy obie operacje się powiodą. Zgodnie z zasadami sieci kryptowalut, przy wysyłaniu tego samego aktywa przeprowadzana jest transakcja, która ma korzystniejsze warunki dla uczestników sieci (górników). Pozostałe analogi ulegają zniszczeniu. Jedynym ryzykiem jest rozgałęzienie łańcucha, dlatego do korzystania z opcji Podwójne wydatki należy podchodzić ostrożnie.

Przyjrzyjmy się, co należy zrobić, aby zastosować tę technikę na przykładzie Bitcoin Core. Należy pamiętać, że w przypadku innych portfeli podejście pozostaje podobne. Różnica może leżeć w nazwach poleceń, ale ogólna kolejność się nie zmienia. Algorytm jest taki:

  1. Przygotowujemy się na podwójne wydatki. Aby to zrobić, ważne jest, aby upewnić się, że transakcja została zablokowana. Zdarzają się przypadki, gdy transakcja zostaje potwierdzona, ale z różnych powodów nie dociera do odbiorcy. Aby to sprawdzić, zaleca się skorzystanie ze wspomnianej wcześniej witryny blockchain.info. Jeżeli obok transakcji widnieje fraza „transakcja niepotwierdzona”, przejdź do dalszych kroków. Dodatkowo można zwrócić uwagę na czas realizacji transakcji, jednak jest on przybliżony.
  2. Zamknij program do przechowywania Bitcoinów, po czym w wierszu poleceń wpisujemy słowo „zapwallettxes”. Zabrania się korzystania z innych opcji poleceń, ponieważ istnieje ryzyko przypadkowego usunięcia klucza i utraty dostępu do pieniędzy.
  3. Czekamy na premierę portfela. Po uruchomieniu nie będzie już zamrożonych transakcji. Ale nie należy się cieszyć z wyprzedzeniem, ponieważ nadal są one przechowywane w sieci kryptowalut. Nawiasem mówiąc, użytkownicy Bitcoin Core starej wersji 0.14 muszą zmienić nazwę lub wysłać dokument mempool.dat do innego folderu, a następnie wejść do programu.
  4. Przeprowadzamy nową transakcję wskazując na wyższą prowizję. Pamiętaj, że ryzyko potwierdzenia poprzedniej transakcji po pewnym czasie pozostaje. Aby wykluczyć taką sytuację, ważne jest, aby w nowej płatności wskazać parametry możliwie najbardziej zbliżone do wcześniej wykonanej (nieudanej) operacji. W takim przypadku system nie pozwoli na jego wykonanie. Na przykład ważne jest, aby określić identyczny rozmiar danych wejściowych w Bitcoin (wymagany parametr można znaleźć w sekcji danych wejściowych). Jeśli chodzi o wielkość transakcji, można ją zwiększyć, aby przyspieszyć przelew.
  5. Wypełnij wymagane pola według zwykłego planu (jak przy przeprowadzaniu standardowej transakcji).
  6. Czekamy na zakończenie operacji, co powinno działać szybciej.

CPFP

Popularną metodą płatności push jest „Dziecko płaci za rodzica”. Nadaje się w sytuacji, gdy wykorzystywana pamięć nie pozwala na włączenie omówionej powyżej opcji RBF. Wadą tej metody jest to, że trzeba za nią zapłacić. Ponadto tylko niewielka liczba pul obsługuje korzystanie z CPFP. Aby „promować” transakcję, która sprawia trudności, musisz użyć dowolnego wyniku transakcji. Ważne jest, aby kwota na koncie wystarczyła na przeprowadzenie dwóch transakcji.

Chodzi o to, że nadawca tworzy kolejny przelew wykorzystując dane wyjściowe do realizacji nowej transakcji. Bitcoiny można wysłać na dowolny adres. Najważniejsze jest, aby wykorzystać resztę z zablokowanej płatności. Równie ważnym niuansem jest wysokość prowizji, którą należy określić dla dwóch operacji jednocześnie.

Rozważmy zastosowanie tej metody na przykładzie portfela Bitcoin Core. Warunkiem początkowym jest transakcja na kwotę 0,095 Bitcoinów. Algorytm jest taki:

  1. Przejdź do sekcji ustawień i wybierz przycisk opcji.
  2. Wchodzimy do podkategorii „Portfel” i umożliwiamy zarządzanie danymi wejściowymi (zaznacz specjalne pole). Tutaj stawiamy znacznik wyboru, umożliwiający wydanie niepotwierdzonej reszty. Zdarzają się sytuacje, gdy wspomniane checkboxy są już zaznaczone (w tym przypadku nic nie zmieniamy).
  3. Zamknij okno i kliknij przycisk wysyłania.
  4. Przejdź do sekcji danych wejściowych i umieść znacznik wyboru obok kwoty odsetek (w naszym przypadku 0,095 BTC).
  5. Wskazujemy adres odbiorcy, po czym zatwierdzamy działania klikając przycisk „OK”.
  6. Ustaw liczbę na 0,095 i kliknij checkbox obok polecenia „Odejmij prowizję od kwoty”. Tutaj zauważamy selektywną płatność prowizji za kilobajt. Co ważne, składka naliczana jest na podstawie dwóch transakcji. Obliczenia przeprowadza się w następujący sposób. Najpierw kwota poprzedniej transakcji jest dzielona przez kwotę nowej płatności. Do otrzymanej liczby dodawany jest jeden, a całość mnożona przez optymalną prowizję za 1 KB.
Jak zauważono, nie wszystkie pule współpracują z tym schematem, ale jeśli taka opcja jest dostępna, warto z niej skorzystać.

Dynamiczna zmiana prowizji

Jednym z powodów, dla których transakcje Bitcoin nie są potwierdzane, jest niska prowizja. Aby zmienić sytuację na swoją korzyść, możesz dynamicznie zmieniać ten parametr poprzez swój portfel. Aby to zrobić, portfel musi obsługiwać taką funkcję. Istotą magazynów specjalnych jest to, że automatycznie wyliczają optymalną kwotę wynagrodzenia, przy której operacja w sieci kryptowalut przebiega szybciej. Jeżeli właściciel portfela zgodzi się z proponowanym parametrem, transakcja zostaje niezwłocznie uwzględniona w kolejnym bloku.

Dynamiczna edycja prowizji pozwala na wyliczenie priorytetu transakcji. Podejście tutaj jest proste. Im wyższa składka, tym wyższy priorytet. Zasada ta jest szczególnie istotna w okresach maksymalnego obciążenia sieci. Jeśli użytkownik określił wysoką nagrodę, a transakcja nadal jest zablokowana, wymaga to pilnego działania. Często problem związany jest z używaniem starszych wersji portfeli Bitcoin. W takim przypadku są dwa sposoby - zaktualizuj istniejący lub zainstaluj nowy portfel.

Wycofaj niepotwierdzoną transakcję

Innym sposobem rozwiązania problemu zamrożenia jest anulowanie transakcji Bitcoin. Na przykład w przypadku Bitcoin Core musisz wykonać następujące czynności:

  1. Za pośrednictwem serwisu blockchain upewniamy się, że transakcja nie została potwierdzona.
  2. Wchodzimy do portfela, a następnie do sekcji debugowania, dla której przechodzimy ścieżką „pomoc, okno debugowania i konsola”. Jeśli portfel jest zaszyfrowany, wymagany jest dostęp. Aby to zrobić, wpisz polecenie portfelpassphrase< passphrase >.
  3. Otrzymujemy klucz osobisty pod wskazany adres. Aby to zrobić, określ frazę dumpprivkey< address >. Zmieniamy słowo w nawiasach klamrowych na adres użyty do transakcji. Wynikowy klucz należy skopiować do osobnej lokalizacji. W przypadku operacji grupowej, gdy Bitcoiny zostały wysłane z kilku kont, potrzebne są klucze do każdego z nich. Posiadanie tych danych umożliwia dostęp do konta.
  4. Zamykamy biuro i wyjmujemy portfel. Jedyne co warto zapisać to portfel.dat. Zaleca się wcześniejszą zmianę nazwy tego pliku i przeniesienie go do innego folderu.
  5. Restartujemy program i czekamy na utworzenie nowego portfela. Wklejamy do niego otrzymane klucze, przechodzimy do panelu debugowania i wpisujemy importprivkey< privkey >. Przesyłanie informacji zajmuje trochę czasu. Ważne jest, aby proces ten nie został przerwany.
  6. Sprawdźmy konto. Zablokowane transakcje zostaną usunięte, a zablokowane środki będą dostępne do przelewu. Teraz możesz ponownie sfinalizować transakcję, ale z wyższą prowizją.
Rozważana metoda nie daje wyników, jeśli do tłumaczenia używana jest pamięć w chmurze.

Jak uchronić się przed niepotwierdzonymi transakcjami Bitcoin?


Aby uchronić się przed problemami z zablokowanymi transakcjami Bitcoin w przyszłości, musisz wykonać następujące czynności:
  1. Natychmiast ustal optymalną składkę za transakcję. Chęć zaoszczędzenia pieniędzy może skutkować długim czasem oczekiwania na potwierdzenie operacji. Zdecyduj od razu, co jest ważniejsze – szybkość czy oszczędność.
  2. Przed dokonaniem transakcji ważne jest włączenie wspomnianej powyżej opcji RBF. Ponadto podczas przeprowadzania transakcji za pośrednictwem portfela zaleca się zaznaczenie Wymienne. Powinieneś jednak upewnić się, że Twój portfel obsługuje tę opcję.
Jeśli została ustalona odpowiednia prowizja, a transakcja nadal utknęła, nie możesz pozostać bezczynny. W takim przypadku istnieje duże ryzyko, że tłumaczenie utknie w miejscu na długi czas. Do rozwiązania problemu przydatne będą metody omówione w artykule. Najważniejsze to nie wpadać w panikę, ponieważ opóźnienia w transakcjach są częstym zjawiskiem w sieci kryptowalut Bitcoin. Najpierw musisz znaleźć przyczynę problemu, a dopiero potem zacząć go rozwiązywać. Z reguły pomaga akcelerator lub podwójne wydatki. Lepiej jednak uniknąć takich opóźnień i od razu ustalić aktualną prowizję.

Co zrobić, jeśli transakcja Bitcoin utknęła, zobacz następujący film:

Oznacza to, że więcej bloków jest wypełnionych. A ponieważ nie wszystkie transakcje mogą zostać od razu uwzględnione w łańcuchu bloków, pojawia się uciążliwość, którą górnicy nazywają „pamięcią” (rodzaj „kolejki transakcji”).

Górnicy zazwyczaj wybierają te transakcje, które mają wyższe prowizje i jako pierwsze uwzględniają je w bloku. Transakcje z niższymi opłatami „wysyłane” są na tzw. „rynek opłat” i pozostają w pamięci górnika do czasu znalezienia nowego bloku. Jeśli transakcja zostanie wysłana ponownie, ponownie będzie musiała poczekać na następny blok.

Może to spowodować, że doświadczenie użytkownika będzie mniej niż optymalne. Potwierdzenie transakcji z bardzo niskimi opłatami może zająć wiele godzin, a nawet dni, a w niektórych przypadkach może w ogóle nie zostać potwierdzone.

Oto, co możesz zrobić już dziś, aby zapobiec utknięciu transakcji.

Zanim to wyślesz

We wczesnych latach istnienia Bitcoina większość portfeli dodawała stałą opłatę za transakcje wychodzące: zazwyczaj 0,1 mBTC. Ponieważ górnicy mieli wystarczająco dużo miejsca w blokach, nie mieli problemu z włączeniem tych transakcji do pierwszego bloku, jaki udało im się wydobyć. (W rzeczywistości transakcje z jeszcze niższymi opłatami lub w ogóle bez opłat zostały uwzględnione w blokach równie szybko.)

Wraz z rosnącą konkurencją o miejsce w bloku, stała opłata w wysokości 0,1 mBTC stała się niewystarczająca, aby transakcja została natychmiast zaliczona do kolejnego bloku; wyprzedzają je transakcje, których opłaty są wyższe. Chociaż transakcja z niską opłatą prawdopodobnie zostanie potwierdzona, może to zająć sporo czasu.

Spróbuj zwiększyć swoją prowizję

Jeśli chcesz, aby Twoje transakcje były potwierdzane szybciej, oczywistym rozwiązaniem jest doliczenie do tej transakcji wyższej opłaty. Jeśli Twój portfel (z ustawieniami domyślnymi) nie pobiera wystarczającej prowizji, możesz skonfigurować to ustawienie ręcznie, zarówno w ustawieniach portfela, jak i podczas wysyłania transakcji (lub w obu przypadkach).

Strony takie jak 21.co monitorują stan sieci i podpowiadają, jaki poziom prowizji za bajt transakcji będzie wystarczający, a także pokazują, jakiej szybkości potwierdzeń sieci można się spodziewać przy różnych poziomach pobieranych prowizji.

Jeśli chcesz, aby płatność zakończyła się w następnym bloku lub w poprzek bloku, musisz uiścić stosunkowo wysoką opłatę. W przypadku mniej pilnych płatności możesz dodać niższą opłatę; potwierdzenie zajmie trochę więcej czasu.

Sprawdź, czy Twój portfel obsługuje dynamiczne zmiany opłat

Obecnie większość portfeli obsługuje dynamiczne zmiany prowizji. W zależności od stanu sieci Bitcoin portfele te automatycznie pobierają opłatę, która będzie wystarczająca do uwzględnienia transakcji w kolejnym bloku, lub przynajmniej w jednym z kolejnych bloków.

Niektóre portfele dają również możliwość wyboru priorytetu opłat. Ponownie, wyższe opłaty pozwolą na szybsze potwierdzenie transakcji, transakcje z niskimi opłatami potrwają nieco dłużej.

Jeśli transakcje z Twojego portfela są często opóźnione w godzinach szczytu i nie masz możliwości pobrania wyższej opłaty, Twój portfel jest prawdopodobnie nieaktualny. Sprawdź, czy jest dostępna aktualizacja lub przejdź na nowy portfel.

Rozważ zmianę na inny portfel

Kiedy przejdziesz na nowy portfel, musisz oczywiście przelać środki ze starego portfela do nowego portfela. Jeśli nie masz nic przeciwko wydaniu trochę pieniędzy, możesz przelać środki ze starego portfela do nowego za pośrednictwem sieci Bitcoin. W końcu dotrą – nawet jeśli prowizja jest niska.

Ponadto niektóre portfele umożliwiają eksport kluczy prywatnych lub użycie zarodka klucza prywatnego, aby następnie zaimportować klucze do nowego portfela. W takim przypadku nie będziesz musiał dokonywać transakcji w sieci Bitcoin. Korzystając z nowego portfela, możesz od razu rozpocząć transakcje.

Po tym jak to wysłałeś

Jeśli wysłałeś już transakcję, ale ona utknęła, w niektórych przypadkach może ona spowodować „przeskok w kolejce”.

Selektywna wymiana prowizji

Aby transakcja przebiegła zgodnie z kolejką, najłatwiej jest skorzystać z opcji zwanej Opt-In Zamień na opłatę (Opt-In RBF). Daje to możliwość ponownego wysłania tej samej transakcji, ale z wyższymi opłatami.

W większości przypadków, gdy ta sama transakcja jest przesyłana przez sieć, ale z wyższymi opłatami, nowa transakcja jest odrzucana przez sieć. Węzły Bitcoin zwykle decydują, że nowa transakcja jest próbą podwójnego wydania, więc jej nie akceptują ani nie przetwarzają. Kiedy jednak przekazujesz transakcję za pomocą opcji RBF Opt-In, zasadniczo informujesz sieć, że przekazujesz tę samą transakcję, tylko za wyższą opłatą. W rezultacie większość węzłów Bitcoin akceptuje nową transakcję zamiast starej; umożliwiając wskoczenie nowej transakcji do kolejki.

To, czy Twoja nowa transakcja zostanie uwzględniona w jednym z nadchodzących bloków, będzie zależeć od górnika, który liczy następny blok: nie wszyscy górnicy obsługują Opt-In RBF. Jednak sporo górników również obsługuje tę opcję, więc tak czy inaczej Twoja transakcja zostanie uwzględniona w nadchodzących blokach.

Opt-In RBF jest obecnie obsługiwany przez dwa portfele: Electrum i GreenAddress. W zależności od portfela może być konieczne włączenie opcji Opt-In RBF w ustawieniach menu przed wysłaniem (pierwszej) transakcji.

Dzieci płacą za rodziców

Jeśli Twój portfel nie obsługuje Opt-In RBF, sytuacja staje się nieco bardziej skomplikowana.

Program „Dzieci płacą rodzicom” (CPFP) może być chwytem marketingowym. Korzystając z CPFP, górnicy niekoniecznie akceptują te transakcje, które mają najwyższe opłaty, ale zamiast tego mogą akceptować zestaw transakcji, które mają ogólnie wyższe opłaty.

Bez wchodzenia w szczegóły techniczne, większość transakcji wychodzących nie tylko wysyła Bitcoin do odbiorcy, ale także wysyła resztę do Ciebie. Możesz wydać tę resztę w następnej transakcji.

Niektóre portfele umożliwiają wydanie reszty od razu, bez czekania na potwierdzenie, dzięki czemu możesz wysłać resztę do siebie w ramach nowej transakcji. Tym razem upewnij się, że uwzględniłeś opłatę wystarczająco wysoką, aby zrównoważyć początkową niską opłatę transakcyjną. Górnik w tym przypadku pobierze cały zestaw transakcji i potwierdzi je wszystkie na raz.

Jeśli portfel nie pozwala wybrać, które bitcoiny zostały wydane – co oznacza, że ​​nie możesz potwierdzić, gdzie znajduje się niepotwierdzona zmiana – możesz spróbować wysłać do siebie wszystkie środki z portfela; w tym przypadku zmiana zostanie uwzględniona.

Podobnie jak w przypadku Opt-In RBF, nie wszyscy górnicy obsługują obecnie CPFP. Wystarczą one jednak, abyś miał pewność, że Twoja transakcja zostanie potwierdzona w jednym z kolejnych bloków.

Lub..

Jeśli nie jest dostępna ani opcja RBF, ani CPFP Opt-In, technicznie rzecz biorąc, nadal możesz spróbować przekazać pierwotną transakcję z wyższymi opłatami. Jest to powszechnie określane jako „zastąpienie pełnej opłaty” i niektórzy górnicy to akceptują. Jednakże dostępne portfele nie mają takiej opcji.

W przeciwnym razie prawdopodobnie będziesz musiał po prostu poczekać - na potwierdzenie transakcji lub na powrót bitcoinów do Twojego portfela. Należy pamiętać, że dopóki transakcja nie zostanie potwierdzona, bitcoiny z technicznego punktu widzenia znajdują się w Twoim portfelu – po prostu nie są dostępne za pomocą tej metody. Bitcoiny dosłownie nie utknęły w sieci i nie mogą się w niej zgubić.

Ponadto pula wydobywcza ViaBTC zaczęła oferować „akcelerator transakcji”. Jeśli Twoja zablokowana transakcja wiąże się z opłatą w wysokości co najmniej 0,1 mBTC za kilobajt, możesz przesłać ten identyfikator transakcji do ViaBTC, a pula nada jej wyższy priorytet niż innym transakcjom. Ponieważ ViaBTC kontroluje około siedmiu procent mocy mieszającej sieci Bitcoin, istnieje duża szansa, że ​​blok zawierający Twoją transakcję zostanie znaleziony w ciągu kilku godzin. Usługa ta ma jednak ograniczenie do maksymalnie 100 transakcji na godzinę.

Dla odbiorcy

Oczywiście transakcja może utknąć, nawet jeśli jesteś odbiorcą. Jeśli Twój portfel pozwala na wydawanie niepotwierdzonych transakcji, możesz także skorzystać z metody CPFP. W podobny sposób, jak wspomniano powyżej, możesz ponownie wysłać do siebie przychodzące niepotwierdzone bitcoiny, z opłatami wystarczająco wysokimi, aby zrekompensować początkową niską opłatę transakcyjną. Jeśli nowa opłata jest wystarczająca, transakcja jest zwykle potwierdzana w kolejnych blokach.

Warto także zapytać nadawcę środków, czy może skorzystać z opcji Opt-In RBF. Jeśli tak, może ponownie wysłać transakcję z wyższą opłatą. Oczywiście akcelerator transakcji ViaBTC (o którym była mowa powyżej) działa także w przypadku transakcji przychodzących.

Chcesz więcej wiadomości?

Los chciał, że miałem okazję zająć się kryptowalutami. To nie jest tak, że blisko z nimi współpracuję, ale czasami wysyłam i otrzymuję monety. Powiedzmy, że krok po kroku testuję nowy obszar od środka.

I pewnego dnia wydarzyły się kłopoty. Wysłałem kryptowaluty, ale nie dotarły one do odbiorcy. Właściwie post dotyczy sposobu zwrotu środków. No cóż, przemyślenia i rady na temat obecnej sytuacji na deser. Od razu zaznaczę, że poniższe informacje nie dotyczą żadnej konkretnej waluty, ale większości forków (jeśli nie wszystkich).

Zacznę od tego, że post jest miejscami pełen spekulacji na temat tego, co się dzieje. Mogę się gdzieś mylić. Obiektywne poprawki i uzupełnienia mile widziane.

Trochę o terminologii.

  • Nazwę plik portfel.dat portfelem.
  • Klucz publiczny (na przykład adres, na który przesyłane są środki) czasem też wygodniej jest nazwać portfelem, jednak żeby uniknąć nieporozumień, niech będzie to po prostu numer konta.
  • Prowizja - Opłata transakcyjna. Nazywanie tego prowizją, jak sądzę, nie jest do końca poprawne, ale jest to najbardziej znana i nie obraźliwa opcja, więc niech to będzie prowizja.
  • Rozmiar transakcji to rozmiar bloku danych, który zawiera wszystkie informacje o transakcji.
Początkowo podszedłem do tej całej kryptowalutowej kuchni jak typowy użytkownik – bez zagłębiania się w system. Zainstalowałem, uruchomiłem, działa - i OK. Czasami, próbując gdzieś wysłać środki, klient wyświetlał komunikat w stylu „ Rozmiar transakcji jest zbyt duży, nie można jej po prostu wysłać. Ale możesz doliczyć prowizję w wysokości N i wtedy wszystko będzie dobrze„- Zgodziłem się na dodanie prowizji i wszystko było naprawdę dobrze.

Wydawać by się mogło, że jeśli zostanę poproszony o dopłatę, gdy zajdzie taka potrzeba, to zapłacę, gdy zostaniesz o to poproszony (o ile prowizja mi odpowiada). To był główny błąd.

Wykonuję kolejny przelew na kwotę dużo większą niż zwykle. Środki opuściły konto, nie było propozycji wypłaty prowizji i... Nic. Środki nie docierają do odbiorcy, status transakcji to „0/Niepotwierdzona”. I obserwowałem to zdjęcie przez ponad tydzień, jednocześnie googlując i ponownie czytając Internet w poszukiwaniu informacji na temat rozwiązania podobnego problemu. Co więcej, szukałem konkretnej kryptowaluty, a w sumie - problemów jest mnóstwo, nie ma rozwiązania.

A właściwie co to za prowizja? Pomysł jest taki, że transakcje mogą odbywać się bez prowizji, ale tylko po spełnieniu określonych warunków:

  • Wielkość transakcji nie może przekraczać określonej kwoty.
  • Przekazana kwota musi być większa niż określony próg.
  • Transakcja musi mieć odpowiedni priorytet.
Jeśli pierwsze dwa punkty są mniej więcej jasne (nie podałem konkretnych wartości, uważam, że mogą się one różnić w zależności od widelca), to trzeci to pocieranie. Z grubsza mówiąc, gdy tworzone są transakcje, są one umieszczane w kolejce i sortowane według priorytetu. Kiedy generowany jest kolejny blok, uwzględniane są w nim transakcje z prowizją (która trafia jako nagroda dla tego, kto znalazł blok), a także transakcje bez prowizji o najwyższym priorytecie.

Sam priorytet zależy bezpośrednio od wielkości przekazywanych środków i liczby ich potwierdzeń (im dłużej te pieniądze znajdują się na Twoim koncie, tym w rzeczywistości wyższy powinien być priorytet) i odwrotnie, zależy od wielkości transakcji. Zatem w niefortunnych okolicznościach transakcja bez prowizji może zakończyć się zablokowaniem i niepotwierdzeniem, z czym się spotkałem.

Poszukiwanie rozwiązania pokazało, że jest to stosunkowo powszechny problem kryptowalut. Niestety wszystkie porady sprowadzały się do tego i często nie pomagały:

  • Poczekaj dzień lub dwa, Twoja transakcja zostanie uwzględniona w następnym bloku.
  • Poczekaj dzień lub dwa, program kliencki znudzi się czekaniem i sam anuluje transakcję.
  • Pobierz ponownie cały łańcuch bloków.
  • Uruchom klienta za pomocą magicznego klucza (-rescan / -reindex / -salvagewallet).
Czekałem ponad tydzień. Transakcja nie została ujęta w żadnym bloku. Nawet po wielokrotnym przesłaniu poprzez sendrawtransaction. Blockchain stwierdził, że nic nie wiedział o tej transakcji, a te same środki były na koncie i nigdzie nie poszły. I tylko klient nie podtrzymał swojego stanowiska: „Wysłałem transakcję, postępuj jak chcesz. Nie pozwolę wam zarządzać pieniędzmi, które już zostały wydane.”

Jaka jest zatem istota problemu? Transakcja nie dostała się do bloku i już tam nie trafi. Portfel przechowuje informację, że transakcja rzeczywiście miała miejsce, więc środki, które miały z nim iść, nie są dostępne do wykorzystania. Być może po jakimś czasie transakcja zostanie anulowana, mam co do tego kilka założeń:

  • Zależy od waluty, w niektórych miejscach anulowanie następuje szybko, w innych trzeba długo czekać.
  • Błąd dla konkretnego klienta.
  • Informacje o anulowaniu są nieprawidłowe.
W każdym razie tydzień to dość długo. Jeśli w tym czasie samo nie minęło, istnieje powód, by sądzić, że nie minie.

Jak normalny człowiek, gdy już wszystko się zepsuło, zabrałem się w końcu za zapoznanie się z instrukcjami. Próba powtórzenia transakcji z prowizją zakończyła się fiaskiem. Jednak niekończące się przeskakiwanie po linkach pomiędzy forami (w wynikach Google nie znalazło nic wartościowego) doprowadziło mnie do pewnego wpisu, w którym znalazłem przydatną wskazówkę. Niestety nie mogę teraz znaleźć tego postu, nawet nie wiem co to było za forum. Chyba coś w rodzaju Bitcoina.

Rozwiązanie opiszę na przykładzie najczęściej spotykanego dla forków klienta, znanego jako Klient Satoshi. O ile rozumiem, ma to zastosowanie do innych klientów, ale być może z własnymi niuansami.

Pomimo prostoty i oczywistości rozwiązania, niewiele osób na nie przychodzi, sądząc po wielostronicowych wątkach na forach. Środki na koncie są blokowane przez portfel i wystarczy uzyskać dostęp do konta poza bieżącym portfelem.

Jeśli więc transakcja utknęła i nie ma potwierdzeń:

  1. Proszę być cierpliwym. Nie panikuj od razu. Poczekaj kilka dni i nagle samo zniknie.
  2. Sprawdź, czy transakcja została zablokowana. Przejdź do Block Explorer (zwykle Google dla „blockchain% nazwa kryptowaluty%)” i sprawdź, czy nic nie wiedzą o zablokowanej transakcji i czy rzeczywiście na koncie znajdują się pieniądze.
  3. Przejdź do konsoli debugowania (Pomoc - Okno debugowania - Konsola)
  4. Jeśli portfel jest zaszyfrowany (czy jest zaszyfrowany?), to najpierw musisz uzyskać dostęp za pomocą polecenia hasło portfela .
  5. Teraz musisz zdobyć klucz prywatny dla żądanego konta. klucz zrzutu
    . Zamiast
    należy podać numer rachunku publicznego, na którym znajdują się zablokowane środki. W odpowiedzi otrzymasz klucz prywatny tego konta. Musisz to gdzieś skopiować, będziesz potrzebować później. Jeśli środki na transakcję zostały pobrane z kilku rachunków, wszystkie należy zaimportować. I tak, nigdy nie przechowuj kluczy prywatnych w miejscu dostępnym dla każdego. Znajomość klucza daje pełny dostęp do odpowiedniego konta.
    Należy również pamiętać, że każde polecenie w konsoli debugowania otrzymuje odpowiedź. Może i jest pusty, ale zawsze tam jest. Później będzie jasne, co mam na myśli.
  6. Zamknij klienta i usuń portfel. Lokalizacja portfela (wallet.dat) zależy od konkretnego klienta i systemu operacyjnego. Oczywiście nie należy go całkowicie usuwać, lepiej zmienić jego nazwę lub przenieść w bezpieczne miejsce.
  7. Uruchom ponownie klienta. Zostanie utworzony nowy portfel. Musisz zaimportować do niego wcześniej uzyskane klucze. Wchodzimy do konsoli debugowania i piszemy importprivkey . Import może zająć dość dużo czasu. Pozwól mu się zakończyć - poczekaj na odpowiedź na polecenie.
  8. W nowym portfelu powinno pojawić się konto z jego rzeczywistym stanem. Dla bezpieczeństwa możesz zrestartować klienta za pomocą przełącznika -rescan, ale myślę, że nie jest to konieczne. Zablokowane wcześniej środki znów będą dostępne do wysłania. Wyślij je ponownie, tym razem nie zapomnij o doliczeniu prowizji. ( w upd3 znajdują się ważne uzupełnienia na ten temat)
  9. Jeśli na starym portfelu masz jeszcze inne używane i ważne konta, możesz do niego wrócić ponownie.
W ten prosty sposób udało nam się zwrócić kryptowaluty. Chociaż już zaczynałem myśleć, że zupełnie się zgubili. Generalnie nie oczekuj cudów, przed skorzystaniem z nowego klienta upewnij się, że prowizja jest zawsze wliczona w cenę. Myślę, że lepiej poszukać zalecanej wielkości prowizji od zasobów dedykowanych kryptowalutie, z której korzystasz.

Aktualizacja: Konieczność wykonania opisanej operacji zależy od wykorzystywanego klienta (a ponieważ wiele kryptowalut ma jednego klienta, również od używanych walut). Wygląda na to, że w niektórych przypadkach informacje o transakcji nie są zapisywane w pliku portfela, a jedynie w lokalnym blockchainie. W tej sytuacji pomocne może być usunięcie istniejącego łańcucha lub uruchomienie klienta z kluczami.

Aktualizacja 2: Wspomniany już wcześniej klucz -salwagewallet może znacznie uprościć opisany proces przenoszenia kont do nowego portfela. Po uruchomieniu klienta z tym kluczem tworzony jest nowy plik portfel.dat, do którego importowane są wszystkie konta ze starego, a historia transakcji dla niego pobierana jest z łańcucha bloków (dzięki grich za opis). Niestety, uruchamianie za pomocą tego klucza nie jest zaimplementowane we wszystkich klientach.

Aktualizacja 3: Jeśli po imporcie nie przelejesz całej kwoty na konto, wówczas część środków (zmiana z wykorzystanych wyjść) zostanie przeniesiona na inne konto nowego portfela. Pamiętaj o tym, jeśli planujesz wrócić do starego portfela:

  • Po zaimportowaniu konta do nowego portfela przenieś z niego wszystkie środki na drugie konto, wróć do starego portfela i dopiero wtedy zarządzaj zwróconymi środkami.
  • Po dokonaniu transakcji z nowego portfela ustal, na które konto wpadła zmiana i zaimportuj to konto do starego portfela.

Tagi: Dodaj tagi

  • Systemy płatności
  • Los chciał, że miałem okazję zająć się kryptowalutami. To nie jest tak, że blisko z nimi współpracuję, ale czasami wysyłam i otrzymuję monety. Powiedzmy, że krok po kroku testuję nowy obszar od środka.

    I pewnego dnia wydarzyły się kłopoty. Wysłałem kryptowaluty, ale nie dotarły one do odbiorcy. Właściwie post dotyczy sposobu zwrotu środków. No cóż, przemyślenia i rady na temat obecnej sytuacji na deser. Od razu zaznaczę, że poniższe informacje nie dotyczą żadnej konkretnej waluty, ale większości forków (jeśli nie wszystkich).

    Zacznę od tego, że post jest miejscami pełen spekulacji na temat tego, co się dzieje. Mogę się gdzieś mylić. Obiektywne poprawki i uzupełnienia mile widziane.

    Trochę o terminologii.

    • Nazwę plik portfel.dat portfelem.
    • Klucz publiczny (na przykład adres, na który przesyłane są środki) czasem też wygodniej jest nazwać portfelem, jednak żeby uniknąć nieporozumień, niech będzie to po prostu numer konta.
    • Prowizja - Opłata transakcyjna. Nazywanie tego prowizją, jak sądzę, nie jest do końca poprawne, ale jest to najbardziej znana i nie obraźliwa opcja, więc niech to będzie prowizja.
    • Rozmiar transakcji to rozmiar bloku danych, który zawiera wszystkie informacje o transakcji.
    Początkowo podszedłem do tej całej kryptowalutowej kuchni jak typowy użytkownik – bez zagłębiania się w system. Zainstalowałem, uruchomiłem, działa - i OK. Czasami, próbując gdzieś wysłać środki, klient wyświetlał komunikat w stylu „ Rozmiar transakcji jest zbyt duży, nie można jej po prostu wysłać. Ale możesz doliczyć prowizję w wysokości N i wtedy wszystko będzie dobrze„- Zgodziłem się na dodanie prowizji i wszystko było naprawdę dobrze.

    Wydawać by się mogło, że jeśli zostanę poproszony o dopłatę, gdy zajdzie taka potrzeba, to zapłacę, gdy zostaniesz o to poproszony (o ile prowizja mi odpowiada). To był główny błąd.

    Wykonuję kolejny przelew na kwotę dużo większą niż zwykle. Środki opuściły konto, nie było propozycji wypłaty prowizji i... Nic. Środki nie docierają do odbiorcy, status transakcji to „0/Niepotwierdzona”. I obserwowałem to zdjęcie przez ponad tydzień, jednocześnie googlując i ponownie czytając Internet w poszukiwaniu informacji na temat rozwiązania podobnego problemu. Co więcej, szukałem konkretnej kryptowaluty, a w sumie - problemów jest mnóstwo, nie ma rozwiązania.

    A właściwie co to za prowizja? Pomysł jest taki, że transakcje mogą odbywać się bez prowizji, ale tylko po spełnieniu określonych warunków:

    • Wielkość transakcji nie może przekraczać określonej kwoty.
    • Przekazana kwota musi być większa niż określony próg.
    • Transakcja musi mieć odpowiedni priorytet.
    Jeśli pierwsze dwa punkty są mniej więcej jasne (nie podałem konkretnych wartości, uważam, że mogą się one różnić w zależności od widelca), to trzeci to pocieranie. Z grubsza mówiąc, gdy tworzone są transakcje, są one umieszczane w kolejce i sortowane według priorytetu. Kiedy generowany jest kolejny blok, uwzględniane są w nim transakcje z prowizją (która trafia jako nagroda dla tego, kto znalazł blok), a także transakcje bez prowizji o najwyższym priorytecie.

    Sam priorytet zależy bezpośrednio od wielkości przekazywanych środków i liczby ich potwierdzeń (im dłużej te pieniądze znajdują się na Twoim koncie, tym w rzeczywistości wyższy powinien być priorytet) i odwrotnie, zależy od wielkości transakcji. Zatem w niefortunnych okolicznościach transakcja bez prowizji może zakończyć się zablokowaniem i niepotwierdzeniem, z czym się spotkałem.

    Poszukiwanie rozwiązania pokazało, że jest to stosunkowo powszechny problem kryptowalut. Niestety wszystkie porady sprowadzały się do tego i często nie pomagały:

    • Poczekaj dzień lub dwa, Twoja transakcja zostanie uwzględniona w następnym bloku.
    • Poczekaj dzień lub dwa, program kliencki znudzi się czekaniem i sam anuluje transakcję.
    • Pobierz ponownie cały łańcuch bloków.
    • Uruchom klienta za pomocą magicznego klucza (-rescan / -reindex / -salvagewallet).
    Czekałem ponad tydzień. Transakcja nie została ujęta w żadnym bloku. Nawet po wielokrotnym przesłaniu poprzez sendrawtransaction. Blockchain stwierdził, że nic nie wiedział o tej transakcji, a te same środki były na koncie i nigdzie nie poszły. I tylko klient nie podtrzymał swojego stanowiska: „Wysłałem transakcję, postępuj jak chcesz. Nie pozwolę wam zarządzać pieniędzmi, które już zostały wydane.”

    Jaka jest zatem istota problemu? Transakcja nie dostała się do bloku i już tam nie trafi. Portfel przechowuje informację, że transakcja rzeczywiście miała miejsce, więc środki, które miały z nim iść, nie są dostępne do wykorzystania. Być może po jakimś czasie transakcja zostanie anulowana, mam co do tego kilka założeń:

    • Zależy od waluty, w niektórych miejscach anulowanie następuje szybko, w innych trzeba długo czekać.
    • Błąd dla konkretnego klienta.
    • Informacje o anulowaniu są nieprawidłowe.
    W każdym razie tydzień to dość długo. Jeśli w tym czasie samo nie minęło, istnieje powód, by sądzić, że nie minie.

    Jak normalny człowiek, gdy już wszystko się zepsuło, zabrałem się w końcu za zapoznanie się z instrukcjami. Próba powtórzenia transakcji z prowizją zakończyła się fiaskiem. Jednak niekończące się przeskakiwanie po linkach pomiędzy forami (w wynikach Google nie znalazło nic wartościowego) doprowadziło mnie do pewnego wpisu, w którym znalazłem przydatną wskazówkę. Niestety nie mogę teraz znaleźć tego postu, nawet nie wiem co to było za forum. Chyba coś w rodzaju Bitcoina.

    Rozwiązanie opiszę na przykładzie najczęściej spotykanego dla forków klienta, znanego jako Klient Satoshi. O ile rozumiem, ma to zastosowanie do innych klientów, ale być może z własnymi niuansami.

    Pomimo prostoty i oczywistości rozwiązania, niewiele osób na nie przychodzi, sądząc po wielostronicowych wątkach na forach. Środki na koncie są blokowane przez portfel i wystarczy uzyskać dostęp do konta poza bieżącym portfelem.

    Jeśli więc transakcja utknęła i nie ma potwierdzeń:

    1. Proszę być cierpliwym. Nie panikuj od razu. Poczekaj kilka dni i nagle samo zniknie.
    2. Sprawdź, czy transakcja została zablokowana. Przejdź do Block Explorer (zwykle Google dla „blockchain% nazwa kryptowaluty%)” i sprawdź, czy nic nie wiedzą o zablokowanej transakcji i czy rzeczywiście na koncie znajdują się pieniądze.
    3. Przejdź do konsoli debugowania (Pomoc - Okno debugowania - Konsola)
    4. Jeśli portfel jest zaszyfrowany (czy jest zaszyfrowany?), to najpierw musisz uzyskać dostęp za pomocą polecenia hasło portfela .
    5. Teraz musisz zdobyć klucz prywatny dla żądanego konta. klucz zrzutu
      . Zamiast
      należy podać numer rachunku publicznego, na którym znajdują się zablokowane środki. W odpowiedzi otrzymasz klucz prywatny tego konta. Musisz to gdzieś skopiować, będziesz potrzebować później. Jeśli środki na transakcję zostały pobrane z kilku rachunków, wszystkie należy zaimportować. I tak, nigdy nie przechowuj kluczy prywatnych w miejscu dostępnym dla każdego. Znajomość klucza daje pełny dostęp do odpowiedniego konta.
      Należy również pamiętać, że każde polecenie w konsoli debugowania otrzymuje odpowiedź. Może i jest pusty, ale zawsze tam jest. Później będzie jasne, co mam na myśli.
    6. Zamknij klienta i usuń portfel. Lokalizacja portfela (wallet.dat) zależy od konkretnego klienta i systemu operacyjnego. Oczywiście nie należy go całkowicie usuwać, lepiej zmienić jego nazwę lub przenieść w bezpieczne miejsce.
    7. Uruchom ponownie klienta. Zostanie utworzony nowy portfel. Musisz zaimportować do niego wcześniej uzyskane klucze. Wchodzimy do konsoli debugowania i piszemy importprivkey . Import może zająć dość dużo czasu. Pozwól mu się zakończyć - poczekaj na odpowiedź na polecenie.
    8. W nowym portfelu powinno pojawić się konto z jego rzeczywistym stanem. Dla bezpieczeństwa możesz zrestartować klienta za pomocą przełącznika -rescan, ale myślę, że nie jest to konieczne. Zablokowane wcześniej środki znów będą dostępne do wysłania. Wyślij je ponownie, tym razem nie zapomnij o doliczeniu prowizji. ( w upd3 znajdują się ważne uzupełnienia na ten temat)
    9. Jeśli na starym portfelu masz jeszcze inne używane i ważne konta, możesz do niego wrócić ponownie.
    W ten prosty sposób udało nam się zwrócić kryptowaluty. Chociaż już zaczynałem myśleć, że zupełnie się zgubili. Generalnie nie oczekuj cudów, przed skorzystaniem z nowego klienta upewnij się, że prowizja jest zawsze wliczona w cenę. Myślę, że lepiej poszukać zalecanej wielkości prowizji od zasobów dedykowanych kryptowalutie, z której korzystasz.

    Aktualizacja: Konieczność wykonania opisanej operacji zależy od wykorzystywanego klienta (a ponieważ wiele kryptowalut ma jednego klienta, również od używanych walut). Wygląda na to, że w niektórych przypadkach informacje o transakcji nie są zapisywane w pliku portfela, a jedynie w lokalnym blockchainie. W tej sytuacji pomocne może być usunięcie istniejącego łańcucha lub uruchomienie klienta z kluczami.

    Aktualizacja 2: Wspomniany już wcześniej klucz -salwagewallet może znacznie uprościć opisany proces przenoszenia kont do nowego portfela. Po uruchomieniu klienta z tym kluczem tworzony jest nowy plik portfel.dat, do którego importowane są wszystkie konta ze starego, a historia transakcji dla niego pobierana jest z łańcucha bloków (dzięki za opis). Niestety, uruchamianie za pomocą tego klucza nie jest zaimplementowane we wszystkich klientach.

    Aktualizacja 3: Jeśli po imporcie nie przelejesz całej kwoty na konto, wówczas część środków (zmiana z wykorzystanych wyjść) zostanie przeniesiona na inne konto nowego portfela. Pamiętaj o tym, jeśli planujesz wrócić do starego portfela:

    • Po zaimportowaniu konta do nowego portfela przenieś z niego wszystkie środki na drugie konto, wróć do starego portfela i dopiero wtedy zarządzaj zwróconymi środkami.
    • Po dokonaniu transakcji z nowego portfela ustal, na które konto wpadła zmiana i zaimportuj to konto do starego portfela.