Reklama

Zonda - Największa Polska giełda cyfrowych walut
5 września 2013 | 19:28

Zastanawialiście się kiedyś dlaczego trzeba czekać akurat na 6 potwierdzeń zanim transakcja zostanie zaakceptowana? Przecież przeprowadzając tradycyjną transakcję pieniężną face-to-face wystarczy otrzymać tylko jedno potwierdzenie (od osoby akceptującej transakcję). Wynika to z budowy sieci i kwestii bezpieczeństwa.

Nt7GEgt

W systemie Bitcoin transakcja jest potwierdzona za każdym razem kiedy górnik doda ją do bloku transakcji. Kolejne bloki teoretycznie powinny być generowane co 10 minut, ale obecnie czas ten jest krótszy. Większość giełd i portfeli online czeka na 6 potwierdzeń przed oznaczeniem transakcji jako w pełni potwierdzonej. W ten sposób zabezpieczają się przed podwójnym wydaniem środków (en. double-spending).

Double-spending może mieć miejsce kiedy pewna nieuczciwa osoba stara się wydać tego samego Bitcoina w dwóch różnych miejscach. W całej sieci Bitcoin obowiązuje zasada ograniczonego zaufania – a właściwie braku zaufania. Jedno potwierdzenie oznacza, że górnik zgłosił blok transakcji do sieci. Ale co jeśli okaże się, że to górnik jest nieuczciwy i spróbuje zapisać w bloku dwie różne transakcje dla jednego Bitcoina?

Satoshi Nakamoto w swoim manifeście zawarł matematyczne wyliczenia, z których wnioskujemy, że jeśli atakujący ma kontrolę nad 10% sieci, dla każdego potwierdzenia Z istnieje prawdopodobieństwo P, że napastnik znajdzie kolejny blok jako pierwszy:

z=0 P=1.0000000
z=1 P=0.2045873
z=2 P=0.0509779
z=3 P=0.0131722
z=4 P=0.0034552
z=5 P=0.0009137
z=6 P=0.0002428
z=7 P=0.0000647
z=8 P=0.0000173
z=9 P=0.0000046
z=10 P=0.0000012

Im więcej potwierdzeń otrzymamy tym mniejsze jest prawdopodobieństwo, że ci górnicy nie są nieuczciwi i nie próbują podwójnie wydać środków. Więc jak widać przy sześciu potwierdzeniach jest 0.02% szansy, że atakujący będzie w stanie odwrócić transakcję. Natomiast przy pierwszym potwierdzeniu jest aż 20% szans. Tak więc uznano, że sześć potwierdzeń zapewnia wystarczające bezpieczeństwo.

Oczywiście to giełdy, kantory, portfele i sklepy mogą zadecydować ile potwierdzeń jest wymaganych. Należy jednak pamiętać, że na kolejne potwierdzenia trzeba będzie zaczekać dłużej, co mogłoby być dość niekomfortowe. Czasami wystarczy zero, albo jedno potwierdzenie, żeby odbiorca uznał płatność. Przykładowo kiedy jesteśmy w kawiarni i płacimy za kawę Bitcoinami używając aplikacji w naszym smartfonie to prawdopodobieństwo oszustwa jest niemal zerowe, więc sprzedawca może zaakceptować 0 potwierdzeń ponieważ nie naraża się na spore straty. Natomiast jeśli transakcja jest przeprowadzana na sumę kilkuset, albo kilku tysięcy złotych to odbiorca dla bezpieczeństwa powinien zaczekać na kilka potwierdzeń. Ktoś kiedyś stwierdził na forum:

Bezpiecznie będzie akceptować 0 potwierdzeń przy transakcji na kilka złotych i 6 potwierdzeń przy zakupie domu. Wszystko inne zawiera się pomiędzy zaufaniem do osoby z którą handlujesz i osobistym poziomem dopuszczalnego ryzyka.

Reklama

Zonda - Największa Polska giełda cyfrowych walut