i
Upozornění: Všechny služby týkající se Samourai Wallet vč. příslušných projektů jako oxt.me, kycp.org, nextblock.is, gitlab repozitář a další byly pozastaveny vládou Spojených států amerických. Žádnou část z celkové infrastruktury nemají vývojáři pod kontrolou a proto ani není bezpečné aplikace používat či aktualizovat.
Když se vývojáři Samourai Wallet rozhodli vydat do světa svůj backend server zvaný Dojo, a umožnit tak každému, aby na svém počítači provozoval bitcoinový full node s možností připojit svoji Samourai Wallet na tento server, byl to velký krok. Několik odvážlivců ale vidělo potenciál tohoto nástroje a rozhodli se jej využít. Co kdyby bylo možné tento server provozovat za minimálních pořizovacích a provozních nákladů, 24 hodin denně a se správou tak jednoduchou, že ji zvládne i mírně pokročilý uživatel? Představujeme RoninDojo – projekt, který cílí na provozování Samourai Dojo na Raspberry Pi.
RoninDojo byl z počátku projekt, který neměl velké ambice. Byla to sbírka návodů, která měla pomoci uživatelům zprovoznit Dojo na jejich Raspberry Pi, což vyžadovalo mnoho konfigurování, úprav v kódu a instalování knihoven.
Skupina lidí pod pseudonymy BTCxZelko, Burcak, Crazyk031 a Guerra Moneta brzy zjistila, že udržování aktuálnosti návodů a pomoc začátečníkům je neudržitelná – museli začít automatizovat. A tak se z RoninDojo stal automatizovaný instalační asistent s příjemným terminálovým UI a možností ovládat Dojo a další nástroje pohodlně za použití příkazové řádky.
i
Full node označuje uzel, který má celou historii (celý bitcoinový blockchain) a validuje všechny bloky a transakce, které mu posílají ostatní uzly. Díky tomu není potřeba důvěřovat třetím stranám.
Pokud svůj vlastní bitcoinový full node ještě nepoužíváte, raději se bez odkládání mrkněte na náš článek: Co to je Bitcoin full node? (ZÁKLADY BITCOINU)
Jak bylo řečeno, RoninDojo cílí na samostatné uživatele s pomocí minipočítače Raspberry Pi, což si může každý zprovoznit v pohodlí svého obýváku. Jméno tedy není náhodné, protože Ronin v japonštině označuje Samuraie, jenž nemá pána.
RoninDojo je doporučen pouze pro Raspberry Pi verze 4, jelikož tato jediná verze dokáže uspokojit nároky na paměť (ideálně 4GB RAM). K tomu je zapotřebí i externí paměť, ideálně SSD o kapacitě 1TB, ale i HDD je použitelné, i když znatelně pomalejší. Externí paměť je zapotřebí k uchování bitcoinového blockchainu a záloze dalších dat, kdyby bylo například potřeba přeinstalovat operační systém.
Dále je doporučeno mít Raspberry v krytu s aktivním chlazením – to z důvodu, že prvotní stažení bitcoinového blockchainu je výpočetně náročné (je třeba ověřit všechna data), a chlazení by mělo zároveň pomoci snížit potřebnou dobu ke stažení a ověření (což může být i týden).
Co se týká operačního systému, RoninDojo vyžaduje, aby uživatel použil operační systém Manjaro XFCE ve verzi pro Raspberry Pi. Tento systém byl zvolen z důvodu lepší kompatibility s knihovnami a nástroji, které jsou pro běh Dojo potřebné. Manjaro je dobře udržovanou distribucí Linuxu, která je postavena na distribuci Arch Linux – zkušenější uživatelé by tedy neměli mít problém.
Mohlo by se zdát, že RoninDojo je konkurencí jiným projektům, jako třeba RaspiBlitz nebo MyNode (o kterém jsme psali zde). Není to ale tak zcela pravda – RaspiBlitz i myNode cílí na společnou cílovou skupinu díky tomu, že obsahují několik aplikací pro Lightning Network, jako například Zap, Ride The Lightning, BTCPay Server a další.
RoninDojo se oproti tomu nesnaží přidávat další aplikace, jen aby jich podporovalo co nejvíc, a soustředí se čistě na to, jaký byl původní záměr – poskytovat dobrou podporu pro Dojo a další nástroje Samourai Wallet ekosystému. To samozřejmě neznamená, že kdyby si někdo chtěl zprovoznit Lightning Network, tak nemůže, právě naopak. Jen v tom nemůže očekávat automatizaci a podporu od týmu RoninDojo.
V poslední verzi RoninDojo přidalo i podporu pro Electrs (Electrum Rust Server), jelikož i interní systém Dojo používá upravený Electrs pro indexování adres. Pro uživatele to znamená, že se může přes Tor připojit ke svému Electrum serveru, například kvůli připojení hardware peněženky nebo pro připojení LN peněženky Phoenix.
Fanoušky soukromí potěší hlavně snadná instalace a provozování Whirlpool CLI, díky němuž mohou své bitcoiny nechat mixovat nepřetržitě.
i
Whirlpool je nástroj na mixování bitcoinů, tedy prostředek k získání zaměnitelnosti (fungibility) bitcoinů – jasná konkurence nástrojům jako JoinMarket nebo Wasabi wallet. Díky své architektuře však Whirlpool tyto konkurenty nechává za sebou, zašlapané do země.
Co tedy RoninDojo podporuje a k čemu je určeno? Ve zkratce: instalaci, správu a upgrade nástrojů Dojo, Whirlpool a nově i Electrs (Electrum server) a navíc základní nastavení firewallu. Více detailů o Dojo a Whirlpool se dočtete v našem obsáhlém článku o Samourai Wallet.
Projekt RoninDojo je vymyšlen a koncipován tak, aby mohl každý za minimální náklady získat hlavní výhody, které Bitcoin přináší. Nejvhodnějším hardwarem jsou tzv. SBC (single board computer) počítače založené na architektuře ARM. Jedná se o miniaturní zařízení s minimální spotřebou, které můžete někam strčit a nebude vám překážet.
i
Vhodný hardware pro RoninDojo:
Nejznámějším zařízením, o němž každý jistě slyšel, je minipočítač Raspberry Pi. Aktuálně je nejlepší volbou výše uvedený Raspberry Pi 4, model B se 4 GB RAM. Vzhledem k velikosti bitcoinového blockchainu se už neobejdete bez 1TB SSD. Je možno použít i HDD, ale z principu se nejedná o moc příjemnou zkušenost, jelikož klasický pevný disk je příliš pomalý.
Díky veřejné wiki by měl i středně pokročilý uživatel dokázat vybrat vhodný hardware a na nové Raspberry Pi nainstalovat RoninDojo. Všechny otázky i odpovědi jsou na oficiální RoninDojo Wiki.
Sekce Hardware popisuje tři možnosti zvoleného hardwaru od nejlevnější po nejdražší – nutno říct, že Dojo poběží perfektně i na té nejlevnější.
Další krok, Preparation, se týká instalace samotného operačního systému Manjaro XFCE. Nejdříve je třeba instalovat Manjaro dle oficiální dokumentace. Následně je doporučeno vše provést vzdáleně, na lokální síti, přes SSH (Secure SHell) připojení. Případně by tyto kroky bylo možné provést i v terminálu z uživatelského rozhraní.
Po těchto dvou krocích by měl mít uživatel nainstalované Manjaro a základní RoninDojo setup, díky němuž se při dalším přihlášení přes SSH nebo zavolání příkazu „ronin“ v příkazové řádce spustí program na instalaci a správu RoninDojo.
Následně by měl uživatel přistoupit k instalaci a nastavení přímo v RoninDojo pomocí „System Setup & Installs“. Zde může zvolit několik možností: „Setup System“ nastaví firewall a další systémová nastavení pro hladký běh Dojo, „Install Dojo“ nainstaluje Dojo a potřebné závislosti. A nakonec „Install Whirlpool“ instaluje Whirlpool CLI, které může uživatel použít k mixování svých bitcoinů.
Instalace může trvat několik desítek minut a může vyžadovat uživatelův souhlas k instalaci některých nástrojů – je tedy třeba trpělivost. Potom, co se instaluje Dojo a začne se synchronizovat bitcoinový blockchain, je možné opustit příkaz pomocí zkratky „CTRL+C“ a program přejde k instalaci Whirlpoolu.
Následně je třeba čekat na stažení a ověření celého bitcoinového blockchainu, což může trvat několik dní, v závislosti na zvoleném hardwaru, internetovém připojení atd. Pokud uživatel v průběhu instalace zvolil, že chce instalovat také Electrs (Electrum server), jeho indexování může trvat další den až dva.
Pro zobrazení aktuálního stavu synchronizace blockchainu je třeba jít v menu RoninDojo do sekce Dojo > View Logs > Bitcoind logs a hledat text „progress“. Jakmile se progress rovná 1.00000, je blockchain plně stažen a ověřen.
i
Proč provozovat vlastní Dojo?
Samourai Wallet je peněženka zaměřující se na soukromí uživatelů. Aby taková peněženka mohla být skutečně soukromá, je potřeba, aby ji bylo možné připojit vlastnímu bitcoin full node, což vývojáři umožnili vydáním Dojo. Díky Dojo nemusí uživatel důvěřovat, že jeho adresy nejsou poskytovány třetím stranám či nejsou ukládány pro pozdější použití. A ačkoliv vlastní Dojo není podmínkou pro fungování peněženky, i vývojáři velmi doporučují jej používat.
Pro připojení vaší peněženky je třeba navštívit administraci Dojo. K tomu je zapotřebí hlavně Tor prohlížeč a adresa, na které se administrace nachází. Pro získání adresy je potřeba v RoninDojo zvolit „Dojo > Tor Hidden Service Address“ a terminál zobrazí příslušné údaje.
„Dojo Maintenance Tool hidden service address (v3)“ je adresa, která musí být zadána do adresního řádku Tor prohlížeče. „Dojo Maintenance Tool Password“ je heslo, které je potřeba vložit, aby mohl uživatel administrovat své Dojo. Po přihlášení uživatel uvidí dva QR kódy – ten nalevo slouží ke spárování Dojo se Samourai Wallet. Je nutno říci, že spárování je možné pouze při čisté instalaci a není možné existující peněženku napojit na Dojo – to je hlavně z důvodu ochrany uživatele, aby jeho adresy nebyly známy serverům Samourai Wallet.
A to je prakticky vše, co je potřeba. Analogický přístup slouží například k připojení k Electrum serveru – z menu stačí přejít do Electrum menu a získat Tor adresu vašeho Electrum serveru. Tuto adresu lze následně použít i v oficiálním Electrum klientovi, jak je popsáno například zde.
Připojení k Whirlpool CLI je aktuálně možné pouze z lokální sítě, nicméně autoři by brzy měli umožnit připojení přes Tor, a proces tedy bude velmi podobný i pro Whirlpool GUI. Z Whirlpool GUI se tedy stačí připojit na adresu Dojo v lokální síti s portem 8899 a spárovat svoji Samourai Wallet peněženku – buď pomocí naskenování QR kódu, který uživatel nalezne v nastavení Samourai Wallet, nebo pomocí zkopírování textu z téže obrazovky.
i
Nespornou výhodou vlastního Dojo serveru je možnost sdílení např. s rodinou. Pokud vaši rodiče používají Samourai Wallet, můžete jim aplikaci napojit na své Dojo, což je lepší, než kdyby používali cizí server. Sice budete mít možnost sledovat jejich transakční pohyby, o čemž by měli vědět, ale je to pořád lepší než používat peněženku a mixovat bitcoiny v tzv. light módu.
Instalací a spárováním samozřejmě vše nekončí. RoninDojo slouží i jako spolehlivý správce a je pomocí něj možné ovládat a monitorovat všechny potřebné součásti. Uživatel zde tedy nalezne funkce k zastavení i opětovného startu Dojo, Whirlpoolu i Electrs, sledování logů všech těchto nástrojů, nebo dokonce možnosti bezpečně vypnout/restartovat systém. Tato možnost je velmi hodnotná vzhledem k tomu, že správně ukončí všechny běžící procesy a následně vypne/restartuje celé Raspberry Pi.
Další užitečná možnost je zálohovat všechna potřebná data na externí disk kvůli případnému přeinstalování systému nebo přenosu na jiné Raspberry Pi. Systémová možnost „Send block data to backup“ by měla všechno bezpečně zazálohovat, aby při další instalaci nebylo nutné stahovat a ověřovat opět celý blockchain.
Neméně užitečnou vlastností je možnost aktualizovat RoninDojo. Tato funkce by měla obstarat bezstarostnou aktualizaci RoninDojo a případnou přípravu na aktualizaci Dojo a dalších komponent. Je doporučeno vždy aktualizovat RoninDojo před samotnou aktualizací Samourai Dojo. Aktualizaci RoninDojo uživatel nalezne v menu „System Menu > Update Ronin UI“. Aktualizace samotného Samourai Dojo probíhá přes menu „Dojo menu > Upgrade Dojo“. Tato aktualizace opět může zabrat nějaký čas, který je potřebný k tomu, aby se všechny komponenty opětovně správně nainstalovaly.
Pro uživatele Whirlpool CLI je připravena i perlička ve funkci Whirlpool Stat Tool, kterou naleznou ve Whirlpool menu. Do této funkce stačí vložit ID transakce pro vstup do Whirlpoolu (tzv. Premix) a tato funkce vypočítá zpětný a dopředný anonset. Tato funkce může být žádoucí pro uživatele, kteří dbají na svoje transakční soukromí.
Je opravdu obdivuhodné, že takto šikovný nástroj vytvořila a dále spravuje ve svém volném čase skupina nadšenců, která se vše učila za pochodu. Pokud vám tedy Ronin ušetří námahu a zalíbí se vám, zvažte přispění několika satoshi.
RoninDojo cílí hlavně na uživatele Samourai Wallet, kteří mají v úmyslu být nezávislí, osamostatnit se a provozovat vlastní bitcoinový full node. Spolu s dalšími vlastnostmi, které Samourai Wallet nabízí, je toto nejlepší řešení pro zachování vašeho soukromí. Nejen že můžete mít na Raspberry Pi zprovozněný bitcoinový full node, ale ještě navíc mixovací službu a Electrum server pro vaši hardware peněženku. A to vše za minimální náklady. Tomu já říkám dobrý nástroj.