Proof of Giving for Beginners (Slovak)

By: R Andrews – preložené a doplnené: orbis

odkaz na originál: http://wiki.biblepay.org/Proof-of-Giving-for-Beginners

 

Vysvetlivky

Najskôr je asi potrebné vysvetliť niektoré pojmy. Tieto pojmy sa tu budú často opakovať, tak aby bolo aspoň ako tak jasno čo je čo.

Tithe – dá sa to preložiť ako desiatok. Niekedy povinný príspevok cirkvi, ktorý sa v súčasnosti robí dobrovoľne. V podstate si ho môžeme pre naše potreby a porozumenie preložiť ako „príspevok“, alebo „dar“. V Biblepay (BBP) je to tiež „dar“, za ktorý budete v konečnom dôsledku odmenený. V návode budem používať pojem Tithe, aby bolo jasné, že sa jedná o súčasť POG.

Wallet – peňaženka – program ktorý je potrebný na prácu s BBP. Môže byť na PC, alebo na mobile. V texte asi budem používať anglický ekvivalent, nakoľko peňaženka mi neznie prirodzene :). Wallet na PC môže byť grafický (GUI), alebo tzv. headless. GUI je klasický wallet, ktorý vidí väčšina ľudí na Windows, alebo MAC. Čiže klasické okno s gombíkmi a podobne. Headless je wallet vo forme príkazového riadku – toto sa používa väčšinou len na Linuxe (ale môžete aj inde). Bežný užívateľ sa stretne len GUI verziou.

Pool – nie je priamo bazén. Je to zoznam ľudí nejakým spôsobom zaregistrovaných do systému. Každý do tohto systému nejako prispieva a títo ľudia sa nakoniec delia o odmeny na základe vopred známeho algoritmu. POG pool bude vysvetlený ďalej.

Orphan foundation – v preklade nadácia pre siroty. V Biblepay je to adresa, na ktorú môže ktokoľvek poslať ľubovoľnú čiastku BBP, ktorá bude nakoniec vymenená za $ a poskytnutá na charitu. V texte budem používať pojem „nadácia“

Superblock – denný balík odmien, ktorý sa rozdeľuje medzi užívateľov vopred definovaným spôsobom.

Difficulty – náročnosť. V texte budem používať diff (skratku)

Coin-age – tak ako hovorí aj preklad, je to vek mincí. Akonáhle urobíte s mincami hocijaký obrat (transakciu – tx) tak Vaše mince s ktorými sa hýbalo budú mať coin-age = 0. Pre potreby POG sa coin-age počíta v dňoch.

POW – proof-of-work – algoritmus, ktorý hovorí o tom, že na to aby bol vygenerovaný nový blok mince, je potrebné vykonať nejakú prácu. V prípade BBP je to výpočet , ktorý keď je vykonaný správne odhalí jeden verš z Biblie. Užívateľ, ktorý tento výpočet vykoná ako prvý „chytí blok“ (v Biblepay sa nazýva reaper) a dostáva odmenu vo forme BBP.

 

Ako vysvetliť Proof-of-Giving (POG) novým užívateľom? 

POG je algoritmus ťaženia v Biblepay, ktorý odmeňuje tých, ktorí prispievajú (tithe) na siroty zo svojho walletu a sú zapojení do interného systému odmien (POG pool).

Suma tithe do nadácie z Vášho walletu za posledných ~24 hodín (205 blokov) stanoví Vašu tithe_weight vo vzťahu k ostatným užívateľom. V podstate je to pomer tithe, ktoré ste darovali, voči všetkým tithe darovaným za  ~24h (205 blokov).

Ak ste v POG poole, určite dostanete odmenu z nasledujúceho POG superbloku (ak je Vaša tithe_weight väčšia ako 0).

POG diff určuje Vašu spôsobilosť odosielať tithe do nadácie. Ak je diff vysoké, celkové množstvo tithe je obmedzené a POG vyžaduje vyšší coin-age.

Ten, kto chytí blok (nazýva sa reaper) dostane 20% z odmeny určenej na POW. Zvyšných 80% ide do POG poolu a následne je v dennom superbloku rozdelených medzi užívateľov na základe ich tithe_weight.

 

Príklad vyplácania

POG odmena (POG reward) sa uskutočňuje raz za deň (205 blokov) a všetci užívatelia v POG poole sú vyplatený v rovnaký čas.

Predstavme si 5 užívateľov POG poolu, ktorý darovali 10, 20, 30, 40, 50 BBP za posledných 205 blokov (cca 24h).

 

Predpokladajme, že denná odmena je 82000 BBP (toto je približná hodnota v termíne vytvárania návodu a funkčného POG + PODC (toto je aktuálne druhá možnosť ťaženia BBP)) 

Rozdelenie denného superbloku – Odmeny:
  Tithe Tithe_weight Odmena
Užívateľ (sower) 1 10 0,067 5443,2 BBP
Užívateľ (sower) 2 20 0,133 10886,4 BBP
Užívateľ (sower) 3 30 0,200 16329,6 BBP
Užívateľ (sower) 4 40 0,267 21772,8 BBP
Užívateľ (sower) 5 50 0,333 27216 BBP
Spolu: 150 1 81648 BBP

Ekonomika

Vo februári 2019 vyzerá ekonomické rozdelenie BBP nasledovne: 

Celková odmena za blok je ~15,400 BBP, z toho 70% (10,800 BBP) sa odkladá do mesačného rozpočtu (ďalšia možnosť príjmu BBP) a na PODC odmeny (odmeny na PODC sú aktuálne približne 1 milión BBP denne). Zo zvyšných 4,800 BBP, je 4,300 daných na masternody (zase ďalší spôsob príjmu BBP – v Biblepay sa nazývajú sanctuary) a zostávajúcich 500 BBP je určených na POW (20% ide reaperovi – to je cca 100 BBP, a zvyšných cca 400 BBP ide do POG pool).

POG pool kumuluje aktuálne dennú odmenu cca 82,000 BBP (všetky hodnoty sú deflačné a časom sa znižujú (toto je 205 * 400BBP)).

Toto množstvo je vyplácané každých 205 blokov ako POG superblok.

Na zamedzenie množstva tithe prispievaných do nadácie (primárne ako ochrana proti pádu ceny BBP a udržanie mesačných výdavkov na charitu v súlade s plánom tvorby BBP), bol zavedený algoritmus POG difficulty, ktorý stráži množstvo tithe za deň – Tithe Cap, ktorý je aktuálne nastavený na 50,694 BBP denne (dá sa to skontrolovať príkazom titheinfo v konzole vo wallete). 

To znamená, že nadácia prijme cca 1,52M BBP mesačne pomocou tithe, ktoré budú následne použité na skutočné nadácie.

POG Difficulty algoritmus

POG difficulty (náročnosť) sa pohybuje medzi 0-65535, kde 65535 je najťažšie a 0 najľahšie. Diff je vypočítaná na základe toho, koľko tithe bolo celkovo prijatých (Tithe Cap) za posledných 24h (205 blokov). POG pool má nastavenú maximálnu kapacitu. Čím je pool viac „plný“ tým sa diff zvyšuje. Naopak, čím je prázdnejší, tým je diff menšia. Aj keď sa môže stať, že budete vidieť POG diff niekde aj väčší, je to v podstate jedno, lebo 65535 je maximum.

Diff určuje minimálny vek BBP mincí, ktoré sú potrebné na to, aby ste mohli prispieť do poolu (tithe). Darovanie (tithe) nie je také jednoduché, nakoľko musíte spĺňať okrem kritéria veku aj minimálne množstvo mincí v „balíku“. Tak isto je na základe diff limitované množstvo BBP, ktoré môžete poslať ako tithe.  Tieto tri parametre si môžete pozrieť aj v GUI wallete (pozri časť manuálne Tithe).

„Balík“ je taký môj preklad, ale vystihuje to podstatu toho, čo je sledované a používané. Vo svojom wallete máte väčšinou mince prijaté a odoslané na viac krát a každý tento pohyb vytvára vlastný „balíček“, ktorý má nejaké množstvo a vek. Toto je sledované pomocou POG diff. Tieto balíčky si viete pozrieť v GUI wallete nasledovne. Najskôr musíte povoliť jednu funkciu: Settings – Options – Wallet – Enable coin control features a dajte OK. Po slovensky: Nastavenia – možnosti – Peňaženka – Povoliť možnosti coin control. Keď to máte, choďte do Send (poslať) a hore sa Vám objaví tlačidlo Inputs (vstupy). Tam budete vidieť všetky vaše „balíčky“ mincí s množstvom, dátumom prijatia (z toho sa počíta coin age), počet potvrdení, atď. Na pozretie si balíčkov existuje aj príkaz. Ten si popíšeme ďalej.

Vysvetlenie mechanizmu POG Difficulty

Tak ako sa písalo vyššie existujú 3 komponenty, ktoré tvoria POG difficulty algoritmus:

  • MaxTitheAmount,
  • MinCoinValue, a
  • MinCoinAge.

 

Ako sa diff zvyšuje, MaxTitheAmount sa znižuje, MinCoinValue a MinCoinAge sa zvyšuje. Toto robí prispievanie tithe ťažším.

  • MinCoinAge: toto je minimálny vek mincí v dňoch, ktorý je potrebný na tithe
  • MinCoinValue: toto je minimálne množstvo mincí v „balíčku“ potrebné na tithe.
  • MaxTitheAmount: Toto je maximálne množstvo mincí, ktoré môžete použiť na tithe – teda toľko môžete prispieť do POG pool.

POOL ROUND mechanizmus

POG pool je vždy 205 blokov (24h) „široký“, čo znamená, že tithe_weight sa určí vždy v rozmedzí aktuálneho bloku a 205 blokov späť. Teda, že vidíte, čo všetko sa prispelo do poolu za 205 blokov.

Príklad: Ak POG diff je 0, tak môžete prispieť (tithe) v rozmedzí 0,05 až 300BBP, s hocijakými mincami (hocijaký vek a množstvo v balíčku). Avšak ak je POG diff 32000, váš balíček musí byť aspoň 30 dní starý, musí v ňom byť minimálne 12500BBP a vy z neho môžete prispieť maximálne 150BBP.

Tabuľka POG diff:

príklad  
Diff MinCoinAge MinCoinValue MaxTitheAmount
.50 .01 1 300
650 6 2500 270
32767 30 12500 150
60000 54 22500 30

 

Ako nastaviť POG

Na to aby ste sa mohli zapojiť do POG musíte do súboru biblepay.conf doplniť nasledovné: 

tithe=1
gen=1
nickname=vaše_meno (toto je použité, aby ste sa mohli jednoduchšie identifikovať v POG poole, ale ostatní môžu toto meno vidieť tiež – tento parameter je voliteľný)

Toto nastavenie povie Biblepay, že chcete používať Vaše BBP na tithe keď to bude profitabilné.

Tri spôsoby ako darovať (tithe): GUI, RPC, alebo Auto

GUI – manuálne odoslanie tithe:

Klik na Send (Odoslať), zaškrtnúť check box „POG tithe?“. Po zakliknutí tohto políčka sa Vám automaticky prednastaví adresa (adresa nadácie) a zobrazia všetky parametre, ktoré je potrebné vedieť pre POG. V prvom riadku sú parametre POG – diff,  MinCoinAge, MinCoinValue a MaxTitheAmount. V druhom riadku je popísaná Vaša schopnosť prispieť (tithe): Qty – množstvo balíčkov, ktoré spĺňa kritériá POG diff, Largecoin – najväčší balíček, AvgAge – priemerný vek balíčkov, ktoré spĺňajú kritériá, TotalTitheBalance – celkové množstvo v použiteľných balíčkoch, Tithability – max. množstvo ktorým môžete prispieť (vo väčšine prípadov bude rovnaké ako MaxTitheAmount), Summary – v podstate zhrnutie, či môžete, alebo nemôžete použiť tithe (Yes, No).

Ak je summary „Yes“ potom vložte do políčka „Suma“ množstvo, ktoré chcete použiť na tithe a stlačte odoslať. Ak máte zaheslovaný wallet zadajte heslo a je to.

RPC: 

Toto je forma zadávania príkazov cez konzolu. Konzolu nájdete Tools (Nástroje) – Debug console (Konzola pre ladenie). Tieto príkazy sa dajú používať aj v príkazovom riadku napr. na linuxe, ale vždy musí byť pred príkazom „biblepay-cli“.

Napíšte do konzoly: „tithe XXX“ kde XXX je suma BBP použitá na tithe. Ak máte mince, ktoré spĺňajú POG diff kritériá, Vaše tithe budú zaslané do poolu a zobrazí sa Vám číslo transakcie (TXID) v ktorej boli poslané.

Auto:

Ak ste si nastavili biblepay.conf podľa návodu vyššie a Váš wallet ostane zapnutý, tak sa wallet pokúsi automaticky každé 4 hodiny poslať mince, ktoré spĺňajú POG diff kritériá. Ak takéto mince nájd, tak ich pošle do poolu, ak nie, tak to skúsi znova o 4 hodiny. Ak chcete používať wallet v tomto móde a máte ho zaheslovaný, tak ho pri štarte vždy odomknite. V GUI je to jednoduché, tam pri štarte iba vyplňte heslo, keď Vás wallet vyzve. Ak ho nezadáte, tak to nebude fungovať. Keď používate headless wallet, tak po štarte a načítaní zadajte príkaz:

biblepay-cli -headlesspodcpassword exec podcpasswordlength“ – tento Vás vyzve na zadanie hesla. Týmto spôsobom nie je heslo čitateľné z príkazového riadku ak by sa k Vám aj niekto nabúral.

Hociktorá z týchto troch metód je rovnocenná a zaradí Vás do POG pool.

Zaujímavé RPC príkazy

getmininginfo

tento príkaz ukáže stav v akom sa nachádza Vaše ťaženie a niektoré parametre siete z pohľadu ťaženia. Posledných 7 riadkov sa týka info o POG.

pogpool

ukáže zoznam užívateľov poole s adresou príjmu odmien, sumou tithe, tithe_weight, height (číslo bloku v ktorom bolo poslané najstaršie započítané tithe) a nickname (ak je zadané v biblepay.conf). V spodnej časti sú potom informácie, ktoré sa týkajú POG a Vás. Start block (aktuálny blok – 205), End block (aktuálny blok), High tithe (najvyšší príspevok jednotlivca v poole), Total tithes (tithe poslané do poolu za 24h – 205 blokov), total participants (počet užívateľov v poole), POG diff, My tithes (Vaše tithe), My nickname (Vaše meno).

Ak chcete krajšie zobrazenie tohto príkazu, tak v GUI wallete je priamo v menu „POG Leaderboard“. Je to veľmi podobné, akurát možno trochu prehľadnejšie a ak máte definovaný nickname, tak Vás to aj podfarbí, takže sa tam skôr nájdete.

tithe tithe_amount min_coin_age min_coin_amount

Tento príkaz prehľadá Váš wallet na mince staršie ako min_coin_age a balíček väčší ako hodnota min_coin_amount a pošle tithe v hodnote tithe_amount. Môžete použiť príkaz aj vo forme tithe tithe_amount a wallet určí min_coin_age a min_coin_amount na základe aktuálnej POG diff.
Príklad: tithe 270 6 2500 – toto odošle tithe 270BBP z balíčku, ktorý je 6 dní starý a 2500BBP veľký

exec getdimensional balance min_coin_age min_coin_amount

Tento príkaz prehľadá Váš wallet a na mince ktoré sú staršie ako min_coin_age a v balíčkoch väčších ako min_coin_amount. Vytvorí report, v ktorom vypíše koľko mincí máte a s akým vekom (coin_age). Takto si zistíte ako ste na tom so svojimi mincami a budete mať aspoň aký taký prehľad o tom, kedy by ste mohli mať šancu poslať tithe.

Príklad „exec getdimensionalbalance 0 0“ by mal ukázať všetky mince s tým, že vypíše ich vek.

exec getdimensionalbalance 10 10000“ vypíše zoznam balíčkov, ktoré sú staršie ako 10 dní a majú viac ako 10000 BBP.

exec bankroll quantity denomination

Tento príkaz Vám pomôže vytvoriť si vlastné balíčky v počte „quantity“ a veľkosťou „denomination“. Teda príkaz „exec bankroll 50 5000“ vytvorí 50 balíčkov s hodnotou 5000BBP. Samozrejme za predpokladu, že máte 250000BBP :). Tieto balíčky potom môžete nechať starnúť a používať ich na tithe. Nezabudnite, že akonáhle spravíte tento príkaz, tak je to v podstate operácia s mincami a všetky novovytvorené balíčky budú mať coin_age = 0. Dostal som otázky, že aké balíčky je najvhodnejšie vytvoriť. Neviem na to presne odpovedať 🙂 Ale zoberme si nejaký príklad:
ideálny: chcete robiť auto tithe bez obmedzení – to znamená darovať každé 4h (tak je to nastavené), potrebujete teda na jeden deň 6 balíčkov, aby ste mohli poslať tithe aj keď je max diff, tak potrebujete aby bol balíček veľký aspoň 25000BBP a starý 60 dní. To znamená, že potrebujete 6 * 60 * 25000 = 9M BBP 🙂 ale akonáhle Vám z balíčka odíde nejaké tithe už nebude pri max diff použiteľné 🙂 takže by tam bolo vhodné mať nejakú rezervu. Samozrejme, toto je úplne prehnané, lebo kto by poslal 1BBP do poolu z takého balíčku 🙂
reálny: vždy je nutné si spraviť balíčky podľa toho koľko vlastníte BBP a tiež podľa toho, že nebudete chcieť prispievať „drobnými”. Tak napr. pri diff 650 potrebujete mince ktoré sú staré 6 dní a v balíčkoch po 2500, aby ste mohli robiť auto tithe potrebujete 6 * 6 * 2500 = 90000BBP. A vite pri nich poslať tithe 270BBP, čo je už zaujímavé. Otázne je ako často sa dostaneme na diff 650 🙂

Upozornenie: takto vytvorené balíčky sú označené tak, že podc_update tieto balíčky preskočí, takže ich nepoužije na PODC, preto ak ste zapojený aj do PODC, použite len také množstvo, aby ste si neohrozili podc_update.

 

To je asi všetko. Dúfam, že je to teraz zrozumiteľnejšie a dajte tomu nejaký čas, aby sme zistili, či sa to oplatí, alebo nie.