Kryptoměna Bitcoin
Kryptoměna Bitcoin (5/9) · 11:32

Bitcoin - Transakční záznamy Základní mechanismus bitcoinových transakcí mezi dvěma stranami a co je zahrnuto v bitcoinovém transakčním záznamu.

Navazuje na Peníze a bankovnictví.
Bitcoin je ve své podstatě řetězec digitálních podpisů, které zohledňují cestu mince bitcoinovým ekosystémem. A víte co? Myslím, že je značně jednodušší přemýšlet o bitcoinech jako o kolektivních vstupech do účetní knihy spíše než jako o fyzické minci. Když se nad tím zamyslíte, v účetní knize máte zaznamenanou historii transakcí, neboli co se děje v bitcoinovém systému. Zatímco když máte fyzické mince, ty tuto paměť nemají. Fyzické mince si nepamatují, kde byla daná mince v minulosti. V tomto kontextu můžete uvažovat o transakci jen jako o digitálně podepsaném prohlášení jedné strany o jejím úmyslu převést některé bitcoiny, které vlastní, nějaké další straně. Když říkám, že jedna strana vlastní nějaké množství bitcoinů, myslím tím, že zde máme nějaké záznamy o předchozích transakcích, se kterými všichni souhlasí. V těchto transakcích účastník převádějící bitcoiny byl sám příjemcem předchozího převodu těchto bitcoinů, ano? Je mi jasné, že je to trošku složité. Abyste lépe pochopili mechanismus transakce, uvedu příklad, jak by to probíhalo v kontextu bitcoinové transakce. Řekněme, že máme účastníka, nazveme jej Alice, což je jméno, které se běžně používá pro účastníky kryptografických systémech. A řekněme, že Alice chce převést nějaké bitcoiny Bobovi. Alice by ráda... Má v úmyslu převést 50 bitcoinů Bobovi. Vzpomeňte si, že každý, kdo provádí transakce v bitcoinovém ekosystému, nedělá tyto transakce pod svým vlastním jménem. Ale jsou známí pouze pod určitou identitou, pod pseudonymem v rámci bitcoinového ekosystému. Tato identita, tento pseudonym vlastně odpovídá veřejnému ověřovacímu klíči pro schéma digitálního podpisu. V tomto případě řekněme, že Alicina identita v systému je určitým veřejným ověřovacím klíčem, který nazveme VK A, neboli Alicin ověřovací klíč. A v souvislosti s Bobem řekněme, že jeho ověřovací klíč je VK B. Toto jsou klíče, které se používají ve schématech digitálních podpisů. Můžeme předpokládat, že Alice svůj klíč vytvořila v určitém okamžiku a že to zveřejnila a že Bob udělal to samé. Takže teď mají oba svou identitu v rámci systému. Tyto identity jsou jen řady čísel, které odpovídají veřejným klíčům k ověření v kontextu digitálního kryptografického podpisu. Pamatujte si, že tyto hodnoty také odpovídají soukromým hodnotám. Každý člověk, který má veřejný klíč, bude mít také odpovídající soukromý klíč, přidružený k tomuto veřejnému klíči. V tomto případě jej nazveme soukromý klíč nebo také tajný klíč, což je vlastně v tomto kontextu podpisový klíč, SK A, Alicin podpisový klíč, a víme také, že Bobův podpisový klíč je SK B. A ty budou uchovávat tyto klíče soukromými. Teď řekněme, že Alice v minulosti obdržela tři bitcoinové transakce od dalších účastníků. Řekněme, že dostala 25 bitcoinů od Carol, nazveme Carol VK C, abychom to spojili s jejím klíčem. Řekněme, že dostala 20 veřejných... raději 20 bitcoinů od Davida a dalších 20 bitcoinů od Teda. Tyto bitcoiny odpovídají různým lidem, kteří v minulosti Alici poslali bitcoiny, takže jak můžete vidět, Alice teď má celkem 65 bitcoinů, což je 20 plus 20 plus 25 bitcoinů, takže ve výsledku má Alice dostatečné množství bitcoinů, aby mohla 50 z nich poslat Bobovi. Abychom tedy začali, převod bitcoinů od Alice Bobovi bude obsahovat informace o těchto předchozích transakcích. Takže každá z těchto předchozích transakcí, kdy Alice obdržela nějaké bitcoiny, všechno bude zaznamenáno v bitcoinovém ekosystému, Takže budou veřejné, stejně jako všechny ostatní transakce. A co může Alice dělat? Může vzít znázornění těchto transakcí a zahrnout je do nové transakce s Bobem. Vlastně jako upevnění tvrzení: „Obdržela jsem tyto bitcoiny a teď část z nich pošlu tobě, Bobe." V tomto kontextu Alice vlastně ani nepotřebuje zahrnout všechny transakční detaily v aktuálním transakčním záznamu pro Boba. Místo toho může udělat to, že vezme transakční detaily a použije na ně kryptografickou hašovací funkci, aby dostala sérii výpisů pro každou z transakcí. V tomto případě řekněme, že má Alice záznam, který odpovídá transakci Carola, má záznam, který odpovídá transakci od Davida a má záznam, který odpovídá transakci od Teda. A všechny tyto záznamy zahrne do transakčního záznamu. Tyto záznamy vám umožňují, umožňují v této záležitosti každému, aby si mohl ověřit tento řetězec vlastnictví těchto bitcoinů. Protože (uživatelé) mohou jednoduše vzít všechny transakční záznamy, které jsou, znovu opakuji, veřejně dostupné. Mohou aplikovat kryptografickou hašovací funkci na tyto různé transakční záznamy a mohou si ověřit, že tyto kryptografické haše, když je aplikujete na tyto transakční záznamy, vám dají hodnoty D (C), D (D) a D (T). A to vám zase dá určitou kryptografickou záruku, protože používáme kryptografickou hašovací funkci, máme kryptografickou záruku toho, že Alice byla koncovým příjemcem těchto transakcí od různých stran. Máme zde tuto historii, kterou můžeme zaznamenat a vlastně ji můžeme takto i dopátrat. Protože jsme použili kryptografickou hašovací funkci, máme teď ujištění, že Alice nemohla jen tak jednoduše v systému podvádět. V této fázi transakce... Udělám zde čáru. ...můžete vidět, kde jsou transakční detaily zaznamenány. V této fázi transakce máme detaily o vlastnictví Aliciných 65 bitcoinů a Alice má dostatek informací v této transakci, takže si každý může ověřit, že ona vlastní tyto mince. Tuto část transakce si můžete představovat jako zobrazení vstupů transakce Navíc ke vstupní části transakce je zde také výstupní část transakce. Výstupní část dám sem, ještě ji označím... Takže jako začátek výstupní sekce, Alice musí zahrnout seznam příjemců jejích bitcoinů. Víme, že Alice chce převést tyto bitcoiny Bobovi a musí tedy upřesnit Bobovu identitu v systému, což, jak jsem již říkal předtím, je Bobův veřejný klíč. Řekneme tedy, že Alice označí VK B a také musí zaznamenat a zmínit v této fázi, kolik bitcoinů chce Bobovi převést. A jak jsme si řekli na začátku, Alice chtěla převést přesně 50 svých bitcoinů Bobovi. Upřesní tedy číslo 50. Vlastně, ve skutečnosti upřesní jiné číslo, ale to číslo bude představovat 50 bitcoinů pro Boba. Aby Alice dostala zpět drobné, protože její vstup je 65 bitcoinů a Bobovi převádí pouze 50 bitcoinů, může se potom rozhodnout, že upřesní, aby se 14 z těchto bitcoinů vrátilo zpět k ní, jako drobné mince. Takže 14 z jejích bitcoinů bude znovu přiřazeno zpět k Alicinu veřejnému klíči. Alice tedy vezme všechna tato data, tato transakční data, tento vstup a tento výstup a digitálně tato data podepíše. Použije svůj podpisový klíč, aby digitálně podepsala všechna tato data, jako byste to udělali s digitálním podpisem i vy. A připojí tento podpis k aktuálnímu obsahu transakčního záznamu. A to vlastně sváže Alicinu identitu se samotným transakčním záznamem. Důvodem, proč se to takto sváže, je, že používáme schéma digitálního podpisu, takže každý, kdo vlastní Alicin veřejný klíč, který, znovu opakuji, je veřejný, může schválit, že jen Alice mohla vytvořit tento blok. Protože jen Alice, mohla teoreticky přijít s podpisem, který odpovídá jejímu veřejnému klíči. Protože ona je jedinou osobou, která by teoreticky měla vlastnit soukromý podpisový klíč, který by odpovídal jejímu veřejnému klíči. Potom budou všechna tato data vyslána, tato transakční data budou následně poslána všem možným klientům a uzlům v bitcoinové síti. Každý v bitcoinové síti se dozví, že VK A se pokouší poslat 50 bitcoinů VK B. V tuto chvíli jste si mohli všimnout drobné nesrovnalosti. Alice začala s 65 bitcoiny, to je naše vstupní strana. Ale na výstupní straně má jen 50 plus 14, neboli 64 bitcoinů, o kterých se zde účtuje. Vyvstává tedy otázka: Co se stalo s tím posledním zbývajícím bitcoinem? Zůstává nám zde jedna mince, kterou jsme nikde nezaúčtovali. Co s touto mincí uděláme, je, že tato mince bude použita jako transakční poplatek Alice tím vlastně říká, že tato jedna zbylá mince bude poskytnuta jako transakční poplatek pro tzv. bitcoin těžaře. Těžaři bitcoinů, jak jsem vysvětloval v předchozím videu, je vlastně základním subjektem v bitcoinovém systému. Vlastně kdokoli může být těžařem bitcoinů, ale je to uzel v bitcoinové síti, který se zapojuje ve snaze pomoci s širším ověřením transakce. Co myslím tím širším ověřením? Když se nad tím zamyslíte, v tuto chvíli jsme používali kryptografické hašování a digitální podpis k ověření, že Alice v určitém okamžiku vlastnila v systému odpovídající bitcoiny. A že nejen veřejně oznámila svůj záměr převést některé tyto bitcoiny Bobovi, ale také toto veřejné prohlášení digitálně podepsala. V důsledku toho je její veřejný ověřovací klíč, neboli její identita v bitcoinovém systému, je vázaný s touto transakcí. Ale co Bob ještě neví, přestože zná všechny tyto věci a může si je ověřit. Bob ale ještě neví, jestli se Alice nepokusila předtím podepsat, nebo připsat ty samé bitcoiny někomu jinému. Možná je tu ještě další strana. Řekněme, že Alice má kamarádku Evu. Možná se Alice rozhodla poslat tyto bitcoiny nejen Bobovi, ale mohla se také pokusit poslat ty samé bitcoiny i Evě. V tuto chvílil Bob nemá žádnou jistotu, že se Alice nepokusila zapojit do takového typu podvodu. Zde je složité, že přestože jsme mluvili o zveřejňování, protože u bitcoinů je potřeba zveřejňovat veškeré transakce, stále potřebujeme mechanismus. A musí to být decentralizovaný mechanismus, který nevyžaduje třetí stranu, která by byla sama o sobě důvěryhodná. Potřebujeme decentralizovaný mechanismus schvalování, který by schvaloval v pořadí, v jakém se transakce opravdu uskutečňovaly. Tím by se vyřešily všechny spory, které se váží k pokusům o utracení stejných peněz dvakrát. Tato podmínka, toto časové potvrzení, decentralizovaná časová známka, to je to, kde těžaři bitcoinů hrají velmi důležitou roli v bitcoinovém ekosystému. A o tom, jak to funguje a jak můžeme pracovat s časovým aspektem transakcí, budu mluvit v některém z následujících videí.
video