etherdelta
Etherdelta jest to zdecentralizowana giełda kryptowalut oparta na smart kontraktach, handel odbywa się tu tylko i wyłącznie za Ethereum, a na samej giełdzie będziecie mogli znaleźć wszystkie coiny ERC20.

Czytaj dalej

raiblocks

RaiBlocks na tle IOTA.

RaiBlocks najłatwiej opisywać w porównaniu do IOTA. Obydwa te systemy nie są Blockchainem per se. IOTA to DAG (Directed acylic graph) tak samo jak RaiBlocks ale tylko w pewnej części. IOTA w całości opiera się na tym charakterystycznym węźle (tangle):

RaiBlocks jest zaś swoistą kratą, nazywaną przez developerów Rai jako block-lattice:

Rai nie jest jednym łańcuchem bloków. IOTA to struktura, w której nowe bloki doczepiane są po zaakceptowaniu ich przez sieć. Rai jest swoistą bazą danych z personalnymi blockchainami dla każdego adresu stworzonego w sieci. Każdy blockchain w Rai składa się z dwóch części: Send blok i Recieve blok.

Działanie IOTA

IOTA działa na zasadzie takiej, że Ty jako klient, czyli osoba wysyłająca pewną kwotę pieniędzy przez IOTA, musisz wykonać na rzecz przeprowadzenia tej transakcji, minimalną ilość obliczeń na rzecz IOTA. IOTA nie ma minerów, Ty po części jesteś za każdym razem, kiedy chcesz skorzystać z sieci IOTA. To Ty potwierdzasz inne dwie transakcje, które są poprzedzającymi transakcjami w danym bloku do Twojej, do których Twoja transakcja się doczepia. Jak już dokonasz tego PoW, wtedy Twoja transakcja zamienia się w oczekującą i czeka, aż inna osoba, która dodała blok z transakcją wykona to co Ty przed chwilą. W teorii ma to zając bardzo mało czasu oraz rozwiązać 3 problemy Blockchainu: skalowalność, zużycie energii oraz opłatę za transakcję. Bardziej skomplikowanie mówiąc, do węzła są doczepiane po kolei kolejne bloki. Im więcej bloków, czyli im więcej transakcji zostanie doczepionych do węzła, tym szybciej nasza transakcja zostanie potwierdzona, ponieważ w teorii każda transakcja ma napędzać kolejne doczepione. Im większa ilość transakcji doczepianych do węzła, tym szybciej system działa. IOTA określiła swój projekt jako nieskończenie skalowalny, a w tym momencie czas oczekiwania jest wydłużony od tego początkowego. Moim zdaniem wynika to z braku optymalizacji kodu nodeów i wymaga to kilku zmian. Dodatkowo zmiana języka programowania z Javy, która wymaga uruchamiania przez kompiliator – Java Virtual Machine za każdym razem jak kod Javy jest wykonywany.

Działanie RaiBlocks

RaiBlocks nie tworzy swoistego węzła, a raczej kratowaty twór zwany block-lattice. Nie tworzy długiego łańcucha z blokami, jednakże stanowi bazę danych z personalnymi blockchainami dla każdego utworzonego adresu w RaiBlocks. Każdy z tych blockchainów ma w sobie 2 bloki, otrzymujący oraz wysyłający. Po wysłaniu środków, odbiorca otrzymuje poprzez zgarnięcie zaległych transakcji do swojego bloku otrzymującego transakcje. Zgarnięcie tych transakcji, to po prostu przypisanie im twojego prywatnego klucza. W RaiBlocks nie ma w przeciwieństwie do IOTA potwierdzeń twojej transakcji, przez inne transakcje. W Rai działa to na zasadzie systemu reprezentanta. Do przetworzenia transakcji wystarczy tylko to, aby twój blok był podpisany twoim prywatnym kluczem, nic więcej. Aby sprawdzić te warunki, Node przeszukuje blockchain aby potwierdzić twoje podpisy.

Teraz o najważniejszym, bo przez to mają szansę na sukces – skalowalność.

Czas transakcji

IOTA działa na zasadzie, im więcej transakcji tym szybciej zostanie przetworzona twoja. Tutaj nie zawsze to działa, IOTA ostatnimi czasy miała czasy oczekiwania aż po kilka dni. Kwestia techniczna.

Rai działa na prostej zasadzie. Podpisujesz swoją transakcję, podpisuje swoją transakcję osoba, która ją otrzymuje – załatwione.

Rozmiar

Zarówno IOTA jak i Rai mogą pochwalić się w miarę niską wagą. Kwestia rozwoju i sprawdzania jak developerzy radzą sobie z kompresją danych. Rai póki co zajmuje 3GB, IOTA ma fajny mechanizm ucinania starych transakcji, co w porównaniu do 150 GB sieci Bitcoin jest znaczną różnicą.

Decentralizacja

IOTA nie jest w pełni zdecentralizowana. Rai jest zdecentralizowany, nie ma żadnych centralnych struktur.

Podsumowanie

Obydwa systemy są rokujące. Wymagają sporo pracy jak każdy system, który się rozwija. Podchodzą do problemu decentralizacji zupełnie inaczej niż Bitcoin, Ethereum. Obydwa są przystosowane do przeprowadzania mikrotransakcji oraz do wchodzącego IoT. System RaiBlocks jest banalnie prosty, szybki i po prostu działa.

Ponadto IOTA cierpi na spore luki bezpieczeństwa. Dodatkowo nie jest w pełni zdecentralizowana i czeka ją sporo zmian. Rai natomiast jest zbyt młody, aby oceniać – posługują się głównie językiem C++.

Dodatkowo z analizy kodu widać sporo DŁUGICH linijek kodu, sporo zagnieżdżeń, sporo spaghetti code. Czeka ich spora refraktoryzacja, czyli uporządkowanie, ponowne przepisane zastosowując mniej skomplikowane struktury, aby kod był mniej podatny na ataki. Póki co oceniam podatność Rai na ataki jako niska, ale aby to utrzymać muszą popracować nad refraktoryzacją kodu.

Rai oceniam jako projekt z ogromnym potencjałem, plusy to skalowalność, prostota i działanie.

Minusy to, że jest to początek i trzeba zobaczyć, jak działa na pełnym obciążeniu. Oraz możliwość ataków w przyszłości, jeśli kod nie zostanie zrefraktoryzowany to pod pełnym obciążeniem jest spora szansa na ataki.

IamHellToday

Większość inwestorów nie przywiązuje uwagi do bezpieczeństwa i sposobu w jaki przechowują swoje  coiny. Trzymasz coiny na giełdzie ? Coś Ci powiem, nie są tam bezpieczne. Dlaczego ?

Zakładasz konto na giełdzie i automatycznie stwarzasz dla siebie portfel. Klucze prywatne w tej chwili są przechowywane na giełdzie i zasadniczo nie masz wyjścia – musisz im zaufać ze ich polityki bezpieczeństwa uchronią Cię przed utratą twoich środków.

Czytaj dalej

Zastanawialiście się kiedyś, jak to jest używać superkomputera? Gigantyczna moc obliczeniowa dostępna w rozsądnym pakiecie cenowym. Można z jego pomocą szukać odpowiedzi na pytania, np. o cel życia, jak powstał wszechświat lub jak Bachu wykręcił tak świetne % wyniki ostatnio.

No właśnie, a naprzeciwko temu wychodzą Rosjanie z ich projektem SONM. Oprócz tego, że mają super nazwę oraz zajebiste logo, to mają fajny pomysł na stworzenie superkomputera. Ale żeby było jeszcze ciekawiej, ten superkomputer będzie zdecentralizowany. Nie jesteś jeszcze zaciekawiony? To czytaj dalej.

Czym dokładnie jest SONM? Jest zdecentralizowanym superkomputerem, zbudowanym na bazie fog-computingu, przeznaczonym do wszelkich celów od tworzenia hostingów stron aż po obliczenia wykorzystywane do celów badawczych. Podsumowując – Rosjanie tworzą superkomputer, składający się z X liczby peerów w sieci, którzy użyczają swojej mocy obliczeniowej, aby skumulować ją w taki sposób, aby powstał zdecentralizowany superkomputer, który można wykorzystać do każdego zadania. Tworzenie nowych substancji chemicznych w procesie planowania i obliczeń? SONM. Tworzenie elementów związanych z bio-informatyką? SONM. Obliczanie modeli aerodynamicznych? SONM. Przewidywanie trajektorii meteorytów? SONM.

Z czego się składa? Główne składniki układanki to BTSync – zapewnia transfer danych, Cocaine – zdecentralizowana platforma obliczeniowa w technologii PaaS, oraz Blockchain Ethereum – smart kontrakty. SONM adoptuje rozwiązania także z dziedziny Machine Learningu, w szczególności najbardziej popularne oraz najbardziej wydajne sieci neuronowe. Omówienie tej kwestii wymagałoby napisania książki, dlatego zaznaczamy w tym miejscu, że Rosjanie podeszli do sprawy bardzo poważnie. SONM będzie się uczył na podstawie wprowadzanych danych do systemu. Wszystko po to, aby zabezpieczać sieć przed bad actorami w sieci oraz zapewniać najbardziej optymalne, dopasowane rozwiązania problemów do konkretnej osoby, która korzysta z sieci SONM do własnych celów.

Jest to bardzo kompleksowy projekt. Developerzy SONM postawili poprzeczkę bardzo wysoko, w iście akademicki sposób opisując wszelkie rozwiązania zaadoptowane do swojego dzieła. W celu pełnego pokrycia tematu, wymagałoby to napisania artykułu na 30 stron. Dlatego na ten moment poruszyłem kwestie esencjonalne, a w oddzielnej publikacji – znacznie większej, rozwinę to co zostało napisane tutaj.

25.12 został zdeployowany testnet. Rok 2018 także stoi pod znakiem nowych wersji SONM.

IamHellToday

Smart Contracty. Czym są? Po co mi one? Na pierwsze pytanie zaraz odpowiemy, a Ty się zastanów jak ta odpowiedź przełoży się na pytanie numer dwa.

Samo pojęcie Smart Contract zostało stworzone długo przed Bitcoinem, już w 1997 roku. Smart Contract najprościej mówiąc jest to program komputerowy, który jest wbudowany w Blockchain. Ale omówmy to na przykładzie. Posłużmy się Kickstarterem.

Kickstarter jest platformą na której każdy z was może stworzyć swój projekt, opisać go i zebrać za pomocą kickstartera pieniądze na rozwój tego projektu. Kickstarter jest pośrednikiem pomiędzy osobami wspierającymi projekt, a osobami które projekt tworzą. Najfajniejszy projekt zbiórki pieniędzy na Kickstarterze? Zbiórka na sałatkę jarzynową. Oczywiście przebiła kilkuset krotnie koszt sałatki. Najważniejsze w tym momencie jest to, że osoby wspierające zarówno jak i osoby, które pieniądze zbierają – ufają Kickstarterowi w prostych słowach. W momencie w którym projekt się kończy, wspierający chcą aby Kickstarter przesłał zebrane pieniądze twórcom projektu, a twórcy projektu chcą te pieniądze od Kickstartera otrzymać. Lub w alternatywnej sytuacji, aby doszło do zwrotu pieniędzy jeśli określone minimum zbiórki się nie spełni.

Idąc ideą Blockchainu i porzucaniem pośredników, za pomocą Smart Contractów możemy stworzyć podobny system, jednakże bez kogoś po środku całego procesu. Na przykładzie Blockchain Ethereum, możemy stworzyć smart contract, który trzyma otrzymane pieniądze osób zaangażowany w jakiś projekt np. ICO Neuromation do momentu, w którym nie zostanie spełnione założenie – zgromadźmy 300 ETH. Jeśli smart contract Neuromation zgromadzi 300 ETH, wtedy pieniądze zgromadzone są przesyłane do twórców Neuromation. Jeżeli nie zostanie spełnione, pieniądze wracają do osób które wpłaciły. Przewagą smart contractów jest to, że są one oparte na Blockchainie. Nikt nie kontroluje pieniędzy dopóki nie zostanie spełniony jeden z dwóch warunków. Zebranie odpowiedniej kwoty, lub nie. Dodatkowo, zaletą tego że powstają na bazie Blockchainiu jest to, że są niezmienne oraz są rozpowszechnione w sieci. Niezmienne tzn. że nikt nie może ich zmienić, ponieważ zabezpiecza to sieć. To, że są rozpowszechnione oznacza, że wynik twojego smart contractu jest sprawdzany przez każdego node’a w sieci. Nie da się zmienić jego wyniku, ponieważ nie zostanie osiągnięty konsensus w sieci. Najbardziej elastyczną platformą dla smart contractów jest Ethereum.

IamHellToday

Proof of Stake to Proof of Work? Czy może jednak nie? A tak w ogóle, to czym są? No i po co zostały stworzone? Wyjaśnimy te kwestie. W tym artykule dowiesz się czym jest Proof of Stake.

 

Proof of Stake

Posłużymy się przykładem Ethereum i tego, co chcą wprowadzić w następnym hard-forku, określanym mianem Constantinopole – czyli PoS oparty o algorytm Casper. Generalnie, PoS jest próbą ratowania planety i zużycia energii. Jest bardzo podobne w zamyśle do PoW, jednakże nie angażuje tak znaczącej liczby kopaczy. No i nie nazywają się oni już kopaczami tylko stake’erami lub minte’erami. Rozwiązanie zagadki kryptologicznej opiera się nie na tym, jak dużo mocy obliczeniowej posiadasz, a na tym jak dużo posiadasz Ethereum. Największe prawdopodobieństwo, że to Ty będziesz rozwiązywał hash-zagadkę wystąpi wtedy, kiedy będziesz miał najwięcej ETH w sieci. Minter nie otrzymuje już nagrody z bloku, tylko otrzymuje dywidendę z opłat za transakcję. Naturalnie, im więcej ETH posiadasz, większą dywidendę otrzymasz.

Postanowiono na takie podejście z czystego założenia. Jeżeli masz dużo waluty ETH, to logiczne jest, że jest najmniej prawdopodobne, iż będziesz chciał wyrządzić krzywdę sieci podczas kopania. Jeśli będziesz sabotował kopanie waluty, którą trzymasz – jej wartość automatycznie spada. Casper wprowadzi także validate nodes, czyli użytkowników odpowiedzialnych za autoryzację PoS. Za dobrze wykonaną pracę, dostaną także dywidendę. Za źle wykonanie prace, sabotowanie sieci – ich saldo ETH się znacznie pomniejszy.

Podsumownie

Poniżej prezentuje proste porównanie PoW i PoS

IamHellToday

Proof of Stake to Proof of Work? Czy może jednak nie? A tak w ogóle, to czym są? No i po co zostały stworzone? Wyjaśnimy te kwestie. W tym artykule dowiesz się czym jest Proof of Work.

 

 

 

Proof of Work

Kiedy słyszysz Proof of Work od razu kojarzy Ci się to z kopaniem Bitcoina. Sam PoW nie został wymyślony przez Satoshiego Nakamoto. Został przez niego zaadoptowany. PoW jest ogólnie mówiąc barierą dzielącą system od udanego ataku DDoS. W Blockchainie dodatkowo służy do weryfikowania transakcji – sprawdzania, czy nie zostały zmanipulowane lub nie zachodzi problem podwójnego wydatku. Jednakże, jak działa w praktyce?
PoW nie egzystuje bez kopania. W tym wypadku posłużmy się Bitcoinem.

Działanie

Zakładam, że wiesz mniej więcej jak działa Blockchain oraz jesteś zaznajomiony z pojęciami typu hash, nonce itd. Jeżeli nie, odeślę Cię do mojego felietonu odnośnie Blockchainu. Od tego momentu, PoW będziemy nazywać algorytmem. Algorytmem, którego celem jest osiągnięcie konsensusu pomiędzy node’ami w sieci P2P inkorporującej Blockchain. Konsensus, którego przedmiotem jest odpowiedni stan Blockchainu. W momencie, w którym powstaje nowy blok zawierający transakcje, musi zostać dołączony do całego łańcucha bloków znajdujących się już w Blockchainie. Od tego momentu wszyscy kopacze (minerzy) starają się ten nowy blok wykopać. Co rozumiemy przez kopanie? Kopanie to nic innego jak hashowanie wszystkich transakcji z bloku oraz szukanie brakującego elementu tej układanki, czyli nonce.

Noncem jest 32 bitowy losowy numer, który używany jest tylko raz. W momencie, w którym uda im się znaleźć odpowiedni nonce dla hash’a wtedy układanka jest skończona. Zaznaczmy, że kopacze doskonale wiedzą czego szukają, jednakże szukają tego metodą prób i błędów. Jeżeli już uda im się odnaleźć odpowiedni nonce dla ich hash’a, połączą go ze sobą w ciąg znaków (string) i zahashują ostatni raz, otrzymują rozwiązanie całej układanki i przyłączają dany blok do całego Blockchainu. Nowy hash, czyli rozwiązanie układanki zaczyna się od około 20 zer. Jeżeli nie trafią z poprawnym noncem, cała zabawa zaczyna się od początku. Szukamy nowego nonce’a, dołączamy go do istniejącego hasha bloku, łączymy je, hashujemy i sprawdzamy, czy jest to rozwiązanie łamigłówki. I tak w kółko, aż do skutku lub do momentu, w którym inny kopacz odgadł sekwencję. Zwycięzca tego wyścigu zostaje wynagrodzony pewną ilością Bitcoina, w zależności od trudności całego procesu. Do PoW używa się algorytmów hashujących np. SHA-256 czy X11.

Podsumowanie

Podsumowując, kopanie Bitcoinów to rozszyfrowywanie sekwencji znaków, na które przypada sporo mocy obliczeniowej oraz zużytej energii. Opiera się to na założeniu, że najszybszy i najbardziej wydajny kopacz dostarczy rozwiązanie do sieci. Minusami jest tak jak wspominane, zużycie energii ergo koszty elektryczności oraz tak zwana tragedy of the commons. Wraz z obłożeniem sieci Bitcoina transakcjami, kopacze będą dostawać coraz mniejsze nagrody a wymagane będzie coraz większe zużycie energii. Nikt nie chce dostawać mniej, poświęcając więcej. Dlatego sieć Bitcoina może stać się coraz bardziej podatna na ataki DDoS z uwagi na to, że coraz mniej osób będzie kopać.

W następnej części skupimy się na Proof of Stake oraz algorytmie Casper.

IamHellToday