-
Notifications
You must be signed in to change notification settings - Fork 2
/
index.html
889 lines (727 loc) · 71 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
<!DOCTYPE html>
<html>
<head>
<title>Víte, že ...</title>
<meta charset="UTF-8" />
<link rel="stylesheet" href="./css/styles.css" />
<link rel="shortcut icon" type="image/png" href="images/bitcoin-black.png"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js" type="text/javascript"></script>
<script src="js/menu.js" type="text/javascript"></script>
<script src="js/donate.js" type="text/javascript"></script>
<script src="js/qrcode.min.js" type="text/javascript"></script>
<script>
function onload() {
const queryString = window.location.search;
if (queryString == '?tips=easy')
{
window.location.replace('lightning:LNURL1DP68GURN8GHJ7URP0YH8XCT5WVHXX730D3H82UNVWQHKZURF9AMRZTMVDE6HYMP0XG6SAV8662');
}
}
</script>
</head>
<body class="content" onload="onload()">
<h1><a href="index.html">Víte, že... <span style="color:orange">Bitcoin</span></a></h1>
<hr />
<div id="navigation"></div>
<div class="fact" id="milion-dolaru-bitcoin">
<a href="#milion-dolaru-bitcoin"><h2>Bitcoin bude stát 1 milion dolarů</a></h2>
<p>Když někdo rozporuje, že jeden bitcoin může stát $1,000,000, tak neví, jak funguje složené úročení, respektive v tomto případě inflace, která se aplikuje rok co rok.</p>
<p>Bitcoin dnes znovu překročil $50,000 a je jen otázka času, než jej uvidíme za $1,000,000. Tohle není vlévání "hopia" do žil, ale když si spočítáte 2% inflaci na fiat měnách každý rok, dojdete k závěru, že bitcoin bude stát milion dolarů nejpozději za cca 150 let jen díky inflaci.</p>
<p>V dlouhodobém měřítku je téměř hloupé tvrdit, že tolik stát nebude. Musíme se ovšem dívat na kupní sílu takové částky. Otázkou zůstává, jestli si za milionový bitcoin koupíme v budoucnu vilu nebo maximálně ojeté auto.</p>
<p>Nekoukejte na hodnotu v dolarech, korunách, złotých, eurech. Štosujte saty, přidávejte si postupně měsíc co měsíc něco málo a použijte Bitcoin jako spoření nebo pojištění.</p>
</div>
<div class="fact" id="wasabi">
<a href="#wasabi"><h2>Svoje bitcoiny můžete anonymizovat přes různé mixery</a></h2>
<p>K tomuto účelu slouží např. Wasabi wallet, nahrajete tam své BTC, Wasabi z nich udělá obrovské transakce společně s dalšími účastníky, které mají třeba 50 vstupů a 50 stejně velkých výstupů. Takovouto operaci provede několikrát, až je historie v podstatě nedohledatelná.</p>
<p>Pozor však, takové bitcoiny byste neměli posílat na burzu, mohou s nimi mít problém, případně vám smazat účet. Jsou tedy určeny výhradně pro Non-Kyc obchody, ideálně P2P.</p>
<p>Stále platí, že lightningové transakce žádnou historii nemají. Vytvoření kanálů z takovýchto coinů by neměl být žádný problém.</p>
</div>
<div class="fact" id="velikost-blockchainu">
<a href="#velikost-blockchainu"><h2>Místem v blockchainu bychom měli opravdu šetřit</a></h2>
<p>Dnešní bitcoinový blockchain má cca 500 GB, což je poměrně dost. Stáhnutí takového množství dat je i dnes záležitost na několik hodin, někdy desítek hodin. Dalším parametrem je cena uložení, protože každý nemá v PC asi 500GB jen tak.</p>
<p>Za několik let už se 500 GB nebude zdát zase tolik, jak jde technika dopředu, nicméně musíme udržet zdravý růst této decentralizované databáze. Pokud se utrhneme z rětězu, naše děti budou stahovat terabajty dat.</p>
<p>Tento problém řeší Lightning network. Pomocí ní nebudeme do blockchainu zapisovat každé kafe, každé pivo, každý jeden nákup. Můžeme udělat vyrovnání na základní vrstvu třeba jednou za rok. Pokud tohle bude používat většina lidí, technologie budou růst rychleji a nebude tak problém blockchain pořád ukládat i v domácích podmínkách. </p>
<p>Velký blockchain by znamenal, že jej budou moci uchovávat jen velké společnosti, čímž by výrazně utrpěla decentralizace. Čím menší bude, tím snazší pro lidi bude mít vlastní full node (celý blockchain) doma a tím bude vyřešená i decentralizace.</p>
</div>
<div class="fact" id="proof-of-work-adam-back">
<a href="#proof-of-work-adam-back"><h2>Proof of work nepřišel až s Bitcoinem, ale je tu už od roku 1997</a></h2>
<p>Adam Back použil proof of work (PoW) ve svém projektu Hashcash již roce 1997, kde zabraňoval DoS útokům a spamu.</p>
<p>Proof of work je důkaz o vykonané práci. Není to fyzická ani lidská práce, ale jedná se o výpočetní výkon. Funguje na principu, kdy uživatel (těžař) zkouší různé kombinace dat (transakcí), než mu vyjde správný hash. Tohle spotřebuje nějaký výpočetní výkon, tedy elektrickou energii. Ověření správnosti už je potom triviální.</p>
<p>V Bitcoinu jsou tedy role rozděleny na dvě. První - těžaři soupeří, kdo najde správný výsledek dřív, spotřebovávají tak elektřinu a bitcoinové uzly (malé počítače, klidně bez velkého výkonu, mobily) jen jednoduše ověří správnost daného bloku.</p>
<p>Vykonaná práce, spálená elektřina zajišťuje, aby se nevyplatilo podvádět, dává celému blockchainu punc pravosti.</p>
</div>
<div class="fact" id="shamir">
<a href="#shamir"><h2>Shamir Backup a k čemu slouží</a></h2>
<p>Shamir Backup je metoda "rozdělení" seedu na několik různých částí, jejichž počet si může uživatel zvolit. Pokud si zvolíme rozdělení na 5 částí, můžeme určit, že k obnově seedu použijeme minimálně 3 z 5 (nebo 4 z 5, 5 ze 7, 13 ze 17 apod). </p>
<p>Vhodná peněženka (Trezor T) vám tento "seed" vygeneruje a vy si postupně zapíšete vašich 5 částí seedu ve variantě 3 z 5 (je to tedy např. 5 x 20 slov). Slova si ukryjete na bezpečných místech. Každé části říkejme fragment. Každý fragment samostatně je úplně k ničemu, potřebujeme požadovaný počet fragmentů, aby Trezor byl schopen obnovit naše privátní klíče a adresy.</p>
<p>Dva fragmenty (v našem případě) tedy můžeme úplně ztratit, tři nám budou stačit. Tato metoda je považována za bezpečnější, než mít někde uložený celý seed, jehož zůstatek lze potom jednoduše vybrat, pokud seed někdo objeví. Proto taky používejte passphrase se Shamir i bez Shamir Backup.</p>
<p>Uložení takových fragmentů je pak na kreativitě, ale je důležité, abyste měli nějaký záložní plán, kdybyste třeba zapomněli, kde máte vaše fragmenty uložené, případně instruovat okolí, jak fragmenty najít a co s nimi udělat (včetně předání passphrase).</p>
<p>Se svobodou přichází odpovědnost.</p>
</div>
<div class="fact" id="bitcoiny-nikdo-neukradne">
<a href="#bitcoiny-nikdo-neukradne"><h2>Bitcoiny vám nikdo neukradne</a></h2>
<p>Bitcoin využívá asymetrickou kryptografii, kterou je zabezpečená většina systémů na světě. Neexistuje zatím způsob, jak prolomit jeho šifrování, to by vyžadovalo vyřešit problém diskrétního logaritmu. Pokud tedy nikomu nevyzradíte svůj náhodně vygenerovaný seed, není možné vaše bitcoiny ukrást. To nemůžeme říct o některých DeFi projektech. Z jednoho nedávno hacker ukradl přes 600 milionů dolarů. Kupte si Bitcoin a nespekulujte, to je má rada.</p>
</div>
<div class="fact" id="monetarni-politika">
<a href="#monetarni-politika"><h2>Bitcoin má jasnou a dopředu danou měnovou politiku</a></h2>
<p>Již přes 12 let v Bitcoinu existuje jasná politika, kolik bitcoinů se do oběhu uvolňuje tzv. těžbou. Na začátku to bylo 50 BTC za každý blok. Tato inflace se každé cca 4 roky snižuje na polovinu. Stejně, jako tomu bylo, bude tomu tak i v budoucnu, až v roce cca 2140 odměny v podobě nových BTC sníží na 0 BTC a síť budou živit pouze poplatky transakcí.</p>
<p>Bitcoin nemění svoji monetární politiku každých 14 dnů a tak přesně víte, jak bude vypadat i za 100 let. Můžete se tak připravit na na jakoukoliv situaci, aniž by vám do plánu hodil kdokoliv vidle, ať už je to centrální banka nebo vývojáři ETH.</p>
</div>
<div class="fact" id="double-spend">
<a href="#double-spend"><h2>Bitcoin vyřešil problém dvojí útraty</a></h2>
<p>Dvojí útrata neboli double spend je problém, který jsme vždy řešili nějakou autoritou. Banky zařizují, že stejná stokoruna, kterou jsme zaplatili na internetu nebude utracena ještě jinde na internetu. Pro hotovostní peníze je touto autoritou stát. Vydává vlastní peníze a za jejich padělání vám hrozí vězení.</p>
<p>U bitcoinových transakcí je tento centrální kontrolní mechanismus nahrazen konceptem proof of work, který zajišťuje, aby z případných dvou transakcí utrácející stejné coiny (stejnou stokorunu), byla platná pouze jedna. </p>
<p>Těžaři tedy do bloku zahrnou pouze platné transakce podle pravidel, jinak by nedostali odměnu za vytěžený blok a chrání si tak své finanční zájmy. Kdyby chtěli podvádět, ostatní uzly v síti takové neplatné bloky odmítnou a tudíž by odměna za tento blok připadla někomu jinému, kdo hraje podle pravidel.</p>
</div>
<div class="fact" id="prvni-tezebni-pool-slushpool">
<a href="#prvni-tezebni-pool-slushpool"><h2>První těžební pool vymyslel čech, Marek "Slush" Palatinus</a></h2>
<p>Asi už víte, že těžba bitcoinů samostatně už je dnes v domácích podmínkách téměř nemožná. Síť už má takový hashrate, že byste potřebovali halu plnou speciálních minerů.</p>
<p>Dříve byl ale standard těžit na grafických kartách, případne v úplných začátcích na CPU.</p>
<p>Slush těžil bitcoiny na svém laptopu, ale jak se hashrate zvyšoval, čekal pak už měsíce na plnou odměnu 50 BTC.</p>
<p>Přišel tak s nápadem spojit málo výkoné počítače, aby mohl spolu s ostatními konkurovat těm, kteří už pro těžbu používali výkonnější grafické karty.</p>
<p>Vzniknul tak SlushPool, první těžební pool, který měl v jednu chvíli přes 30 % hashratu celé sítě. </p>
<p>Ukázal takto světu, jaká je budoucnost těžby a dnes už je to zavedený standard. Kde bychom bez něj dnes vůbec byli.</p>
</div>
<div class="fact" id="z-vice-adres-na-vic-adres">
<a href="#z-vice-adres-na-vic-adres"><h2>Posílat bitcoiny můžete z několika adres opět na několik adres</a></h2>
<p>Šetříte tak místo, protože poslat jednu transakci, která má 5 výstupů (příjemců) je levnější než poslat 5 jednotlivých transakcí. Některé peněženky dokonce podporují Coin Control, což je vybírání a posílání kontrétních UTXO.</p>
<p>Dnes ještě není placení v BTC tak časté, ale teoreticky můžete zaplatit nákup na třeba 10 e-shopech jen jednou transakcí, stejně by mohl zaměstnavatel zaplatit své zaměstnance jedním transferem, místo 100 malých plateb.</p>
<p>Tohle je důvod, proč např. výběr z burzy vás stojí 1,000 satů, ale vy v peněžence vidíte poplatek třeba 50,000 satů. Burza vezme poptávky k výběru od klientů, a až jich je více, obslouží jednou transakcí všechny - poplatek rozdělí mezi klienty.</p>
</div>
<div class="fact" id="vlastni-full-node">
<a href="#vlastni-full-node"><h2>Pokud chcete mít naprostou jistotu, že vaše transakce jsou platné, měli byste mít doma vlastní full node</a></h2>
<p>Většinou si jej lidé skládají jako počítač na Raspberry Pi, protože nespotřebuje moc elektřiny a stačí výkonově na ověřování transakcí. </p>
<p>Vlastním nodem přispějete k robustnosti sítě a ve vlastní kopii blockchainu si můžete procházet předchozí transakce, které váš node předtím ověřil, takže pokud vidíte např. 6 potvrzení, je téměř 100%, že vaše transakce už je nevratná.</p>
<p>Pokud se díváte do veřejných prohlížečů, nemůžete si být 100% jistí, že vám tvrdí pravdu.</p>
<p>Komponenty, z jakých si postavit bitcoinový (a případně i lightningový) node najdete zde: <a href="https://discord.com/channels/669914567689895946/789067261737828352/801737071344746496">discord.com</a></p>
</div>
<div class="fact" id="jak-funguje-poplatek">
<a href="#jak-funguje-poplatek"><h2>Bitcoinová transakce neobsahuje žádnou informaci o nastaveném poplatku</a></h2>
<p>Každá bitcoinová transakce se skládá ze vstupů (odkud bitcoiny posíláme) a výstupů (kam bitcoiny posíláme). V peněžence si také nastavujeme výši poplatku v sat/B nebo sat/vB. Protože peněženka ví, jak bude transakce veliká (v bajtech), ukáže nám i přesně, kolik bude poplatek, ale kam se tedy zadává?</p>
<p>No vlastně nikam. Poplatek je jen rozdíl mezi tím, co do transakce vstupuje a tím, co z ní vystupuje. Obvykle je tento rozdíl celkem minimální, ale každý tento minimální "poplatek" si může utratit pouze těžař, který vytěží daný blok. V transakci tedy specifikuji, že posílám třeba 1 BTC a pokud chci, aby moje transakce byla vytěžena v dalším bloku, v transakci pošlu třeba jen 0.99 BTC. Rozdíl mezi těmito částkami si tedy "připíše" těžař.</p>
</div>
<div class="fact" id="nepouzivejte-brainwallet">
<a href="#nepouzivejte-brainwallet"><h2>Nepoužívejte brainwallets!</a></h2>
<p>Brainwallet je způsob uložení, kdy nemáte nikde zapsaný seed. Buď si ho pamatujete a nebo (většinou) jsou to nějaká snadno zapamatovatelná slova v jistém pořadí. Pokud si takto sám vytvořím peněženku (brainwallet, jednu adresu, jeden klíč), je skoro jisté, že mi ji někdo vykrade. Princip např. hardwarových nebo i softwarových peněženek je takový, že generují (pseudo)náhodné číslo, které slouží jako výchozí bod pro generování adres (a soukromých klíčů). Takovouhle vlastnost, generování náhodného čísla nemá dokonalou ani sám počítač, natož člověk a náš mozek.</p>
<p>Pokud by někdo použil třeba slova "satoshi sakamoto" pro vytvoření bitcoinové adresy, je obrovská šance, že to již někdo zkusil a nebo minimálně někdo takovou adresu sleduje a čeká, jestli tam někdo něco nepošle, aby ji mohl "vybrat". Počítače mohou zkoušet miliardy takových kombinací slov za sekundu a věřte, že se za chvíli trefí.</p>
<p>Příklad:<br />
"satoshi nakamoto" ➔ <a target="_blank" href="https://mempool.space/address/1Q7f2rL2irjpvsKVys5W2cmKJYss82rNCy">1Q7f2rL2irjpvsKVys5W2cmKJYss82rNCy</a></p>
<p>Ke generování adres tedy používejte Trezor a nebo důvěryhodné softwarové peněženky.</p>
</div>
<div class="fact" id="seed-slova-seedu">
<a href="#seed-slova-seedu"><h2>Víte, že slova bitcoinového seedu jsou jen převedená čísla do čitelného textu pomocí jednoduchého "slovníku"? Peněženky je ale vnímají jen jako jedničky a nuly za sebou.</a></h2>
<p>Váš 12slovný nebo 24slovný seed máte jistě bezpečně zapsaný a víte, že ta slova jsou velice důležitá. Ve skutečnosti ale jen každé slovo reprezentuje číslo od 1 do 2048 a není za tím žádná velká věda. Např. slovo "amazing" je v anglickém bitcoinovém "<a target="_blank" href="https://github.com/bitcoin/bips/blob/master/bip-0039/english.txt">slovníku</a>" na pozici 63. </p>
<p>Příkladem může být seed "song wreck display sniff possible manage camp crack guilt junior bomb trust". Nikdy tenhle seed na nic nepoužívejte, ale pro ukázku nám poslouží.</p>
<p>Každé slovo najdeme ve slovníku a podíváme se na jeho index. 1658 (song), 2034 (wreck) ... Od indexů odečteme jedničku a zapíšeme:
1657, 2033, 508, 1643, 1348, 1079, 262, 398, 829, 969, 201,1869.</p>
<p>Pokud je převedeme do binární soustavy, ve které pracují sw i hw peněženky a poskládáme za sebe, dostáváme číslo, což je náš seed v binární podobě. Jako byste házeli korunou 128x dokola a zapisovali si buď 1 nebo 0 (poslední slovo je odvozené z předchozích jedenácti).</p>
11001111001 11111110001 00111111100 11001101011 10101000100 10000110111 00100000110 00110001110 01100111101 01111001001 00011001001 1110100</p>
<p>Pokud by někdo chtěl uhodnout váš seed, je to tedy téměř nemožné, protože by musel 128x hodit kostkou a hodit naprosto stejné číslo jako vy.</p>
</div>
<div class="fact" id="bitcoinovy-uptime">
<a href="#bitcoinovy-uptime"><h2>Bitcoinová síť má neuvěřitelný uptime přes 99.98 %</a></h2>
<p>Od 3.ledna 2009 potkaly Bitcoin pouze 2 události, které ochromily celou síť, které ale byly vyřešeny za cca 6-8 hodin.</p>
<p>První z nich, 15.8.2010, se pojí s chybou v Bitcoinu, kdy někdo vytěžil přes 180 miliard (popisovali jsme v jenom z předchozích Víte, že). Týmu vývojářů se ale povedlo dodat opravu do několika hodin a celkem tedy první výpadek trval 8h27m. </p>
<p>Druhý výpadek popisoval Slush u Urzy na streamu. Počet vstupů v aktuálním bloku byl extrémní, což nody verze pod 0.8 nezvládaly a odmítaly tyto bloky, došlo tedy k forku sítě. Slush tedy downgradoval SlushPool na verzi 0.7 a taky tedy pomohl opět sjednotit dva chainy, které běžely paralelně vedle sebe. Slush tak "zahodil" 1200 vytěžených bitcoinů, které tehdy SlushPool vytěžil na již neplatném chainu. Než se zkoordinovaly všechny úkony, Bitcoin tak vypadnul asi na 6h20m. </p>
<p>Celkem tedy necelých 15 hodin od roku 2009 je doba, kdy Bitcoin nebyl funkční. Zkuste to srovnat se svojí bankou, která vám každý měsíc píše, že bude od 00:00 do 05:00 nefunkční internet banking, platby kartou, ať si vyberete hotovost.</p>
<p><a href="https://www.buybitcoinworldwide.com/bitcoin-uptime/">buybitcoinworldwide.com</a><br />
<a href="https://youtu.be/QU6KEe8sU54?t=2661">youtube.com</a></p>
</div>
<div class="fact" id="never-gonna-give-you-up">
<a href="#never-gonna-give-you-up"><h2>Text písně Never Gonna Give You Up leží na všech bitcoinových uzlech, stejně jako opening crawl Star Wars: A New Hope?</a></h2>
<p>Dvě zajímavé transakce lze identifikovat v blockchainu. První podle jejího OP_RETURN výstupu. Vtipálek nebo prostě jen popový nadšenec tento výstup zaplnil textem písně Never Gonna Give You Up od Ricka Astleyho a navždy zvěčnili již tak populární počin. <br />
<a target="_blank" href="https://explorer.sats.cz/tx/d29c9c0e8e4d2a9790922af73f0b8d51f0bd4bb19940d9cf910ead8fbe85bc9b">explorer.sats.cz</a><br />
<a target="_blank" href="https://www.youtube.com/watch?v=dQw4w9WgXcQ">btc-zdarma.cz</a></p>
<p>Pravděpodobně nadšenec do Bitcoinu tak StarWars uložil do blockchainu také opening crawl Star Wars: A New Hope "It is a period of civil war. Rebe spaceships...". Není ale uložený v OP_RETURN, ale ukrytý v bitcoinových adresách. Tyto adresy musel tzv. bruteforce metodou vygenerovat a stálo ho to jistě nemalé množství prostředků (adresy si není možné vygenerovat libovolně, takže zkoušel a zkoušel, než mu vyšla např. adresa např. "1EpisodeiV111111111111111111wbq9i2" nebo "1ANewHope1111111111111111111vnYm6D".<br />
<a target="_blank" href="https://explorer.sats.cz/tx/143a3d7e7599557f9d63e7f224f34d33e9251b2c23c38f95631b3a54de53f024">explorer.sats.cz</a></p>
</div>
<div class="fact" id="lightningove-platby-anonymni">
<a href="#lightningove-platby-anonymni"><h2>Lightningové platby jsou naprosto anonymní?</a></h2>
<p>Problém, který Bitcoinu komplikuje používání je možnost stopovat v blockchainu vaše transakce. Například, kdysi jste si koupili 1 BTC za pár dolarů, dnes je z něj poměrně hodně peněz. Pokud ale kamarádovi zaplatíte třeba za oběd, z adresy může odejít celý 1 BTC a 0.99 BTC se vám vrátí zpět na change adresu v jedné transakci. Váš kamarád v tuto chvíli ví, že vlastníte alespoň jeden bitcoin. Někomu by tohle mohlo vadit.</p>
<p>Lightningové platby fungují ale naprosto anonymně. Není možné zjistit, od koho vám platba po Lightning network přišla, protože ani samotné uzly, přes které tyto prostředky "tečou", o platbě nevědí nic kromě toho, z jakého posledního uzlu jim platba přišla a na jaký další uzel ji mají poslat. Po cestě může být třeba 1000 uzlů, ale každý jen ví nutné minimum. Vše je ukryto v Lightningové síti už z principu. Jediné, co příjemce odhaluje je svůj veřejný klíč - v ln invoice. </p>
<p>Odesílatel, ani příjemce pak nemohou o svém protějšku vědět, kam kdo si bitcoiny případně přeposlal, jak je tomu v případě on-chain bitcoinů. Do blockchainu se v tomto případě totiž nic nezapisuje. Nikdo vám tedy nebrání používat Bitcoin plně anonymně, stačí mít Lightning peněženku a používat ho jako výchozí způsob. Ideální je nakupovat rovnou Lightningový zůstatek. Velké částky samozřejmě ale patří na Trezor, takže si z Phoenix můžete "vybrat" na Trezor nějaké prostředky, než si je zase (za měsíce, roky) do Phoenix nahrajete, abyste je mohli utrácet.</p>
</div>
<div class="fact" id="posilani-na-ip">
<a href="#posilani-na-ip"><h2>Bitcoinové transakce posílané "na IP adresu"</a></h2>
<p>Je to tedy záležitost opravdu historická, ale dříve prý opravdu bylo možné posílat bitcoiny na IP adresu. V Bitcoin Core nižším než 0.8.0 se nacházel kód, který tuto funkcionalitu zajišťoval. Bylo třeba zveřejnit svoji IP adresu spolu s veřejným klíčem, což bylo o něco (24 bajtů za každý výstup) efektivnější než posílat přímo na adresu (hash veřejného klíče).</p>
<p>Vtipný je také poznatek uživatele gmaxwell na githubu, který chtěl tyto IP adresy využít k loterii o bitcoiny, kde by soutěžili uzly s nejnovější verzí kódu a motivoval je tak k upgradu. Těžko říct, jak moc vážně to myslel.</p>
<p>Tento satoshiho návrh měl své zastánce, transakce byly o něco menší a teoreticky by příjemci takových transakcí mohly transakci ještě odmítnou, než by vůbec byla provedená, což je jistě zajímavé. Není ovšem jasné, jestli této možnosti, jak odeslat své bitcoiny někdo využil a jestli to celé bylo plně funkční. V podcastu The Van Wirdum Sjorsnado ji také zmiňoval přímo jeden z vývojářů Bitcoinu, ale o nikom, kdo by ji někdy použil nevěděl.</p>
<p>Prakticky se ale tato funkcionalita neuchytila a byla nejdřív v bitcoinovém rozhraní skryta, později úplně odstraněna i z Bitcoin Core ve verzi 0.8.0.</p>
<p><a target="_blank" href="https://bitcointalk.org/index.php?topic=9334.msg2154396#msg2154396">bitcointalk.org</a><br />
<a target="_blank" href="https://github.com/bitcoin/bitcoin/pull/253">github.com</a><br />
<a target="_blank" href="https://open.spotify.com/show/3rFFqjJF22nNyvJXv6avOX?si=OPAqf0YJR3-rI73YziXq-g&dl_branch=1">spotify.com</a><br /></p>
</div>
<div class="fact" id="bitcoin-pred-seedem">
<a href="#bitcoin-pred-seedem"><h2>V začátcích Bitcoinu vůbec neexistoval seed?</a></h2>
<p>Původně se klíče k bitcoinovým adresám ukládaly do souboru na počítači, který jste si museli střežit. S myšlenkou, jak offline uchovat své bitcoiny, respektive klíče k nim pomocí 12 nebo 24 anglických (či jiných, ale doporučuje se nepoužívat jiné jazyky, protože většina peněženek je stejně nepodporuje) slov přišla čtveřice Marek Palatinus, Pavol Rusnák, Aaron Voisine a Sean Bowe. První dvě jména vám mohou být povědomá.</p>
<p>Později přišli Marek Palatinus (Slush) a Pavol Rusnák (Stick) i s metodou, jak tato slova bezpečně vygenerovat a uchovávat pomocí malého a jednoduché počítače, dnes známého pod značkou Trezor. Česká stopa tedy zásadně ovlivňuje bitcoinový svět. Bez těchto průkopníků by Bitcoin tak daleko nebyl.</p>
<p><a target="_blank" href="https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki">github.com</a><br />
<a target="_blank" href="https://trezor.io/">trezor.io</a></p>
</div>
<div class="fact" id="lightning-v-praxi">
<a href="#lightning-v-praxi"><h2>Vstup na Lightning je dražší než jedna on-chain transakce. Jak přesně funguje vyvážení kanálů ve Phoenix?</a></h2>
<p>Provozovatelé peněženek, jako je <a target="_blank" href="https://phoenix.acinq.co/">Phoenix</a> (teď rozebíráme non-custodial peněženky) si vezmou např. 1 % z platby, která je tak velká, že už se nevejde do vašich stávajících kanálů (nebo pokud žádný nemáte). A je to správně! Phoenix musí otevřít platební kanál, což stojí on-chain poplatek, který musí zaplatit (toto břemeno tedy převede na vás formou poplatku). </p>
<p>Otevřením kanálu tedy Phoenix zamkne svoje bitcoiny a okamžitě vám je vzniknutým kanálem přepošle na vaši stranu. Na vaši stranu už se tedy více nevejde. Funguje to jako např. injekční stříkačka, která má nějaký objem (kapacita kanálu) a víc už do ní nenaberete, není kam. To je případ, když si dobijete Phoenix. Pro opětovné přijmutí do kanálu musíte z kanálu poslat ven, abyste uvolnili místo pro příjem (jako když stlačíte píst stříkačky, vznikne místo pro další nabrání tekutiny). Pokud to neuděláte a budete se snažit přijmout znovu, Phoenix nemůže připsat prostředky do existujícího kanálu (ten je plný), tak musí vytvořit nový. Vezme si tedy opět 1 % poplatek.</p>
<p>Není tedy žádoucí štosovat do "nepřipravené" peněženky (ze které průběžně neutrácíte), protože s každou další platbou se otevře další kanál, což je zbytečné a ve výsledku dražší, než jen poslání on-chain (logicky, je to on-chain + poplatek Phoenixu).</p>
<p>Jak tedy peněženku připravit na průběžné štosování? Jenoduše. Převeďte si na Phoenix první platbou větší částku (klidně i větší, než vůbec chcene na LN mít) a jakmile k vám Phoenix otevře kanál (kterým teď nejde příjmat), pošlete ty prostředky ven z peněženky (Android aplikace to umí nativně, iOS využijte nějaké směnárny jako <a href="https://boltz.exchange">boltz.exchange</a> ) zpět na Trezor nebo kamkoliv jinam. Doporučuji minimálně takovou částku, aby vám to dávalo smysl. Minimálně bych doporučil vyšší stovky tisíc satoshi, spíš miliony satoshi.</p>
<p>V tuhle chvíli jste vašim kanálem "poslali ven" a jste ready už jen příjmat po LN bez problému (samozřejmě můžete i utrácet, to vám zase dělá prostor pro další přijímání) i malé částky. Je to trochu k zamyšlení, ale investice v zaplacení 1% poplatku se časem vyplatí. Vstup na LN je záměrně dražší. Pokud byste tohle chtěli obejít, museli byste používat custodial peněženky a potom si to jednou za čas vybrat. Řešení popsané v odstavcích výše vyžaduje zanedbatelnou důvěru ve Phoenix a spravujete si svoje prostředky pod vlastními klíči.</p>
<p>Velký lightningový kanál je INVESTICE!</p>
</div>
<div class="fact" id="darovani-bitcoinu">
<a href="#darovani-bitcoinu"><h2>Darovat bitcoiny je dnes velice jednoduché díky Lightning network</a></h2>
<p>Nejen Kicom se kdysi zamýšlel, jak jednoduše někomu darovat část bitcoinu tak, aby si to dejme tomu kamarád opravdu vybral a aby nebyl kompromitovaný seed (mnou, když bych si pro jistotu nechal kopii).</p>
<p>Dnes už je možné vytvořit tzv. LNURL withdrawal odkaz (odkaz pro vybrání prostředků z vaší peněženky), který stačí kamarádovi dát. On jej může až za několik týdnů, měsíců nascanovat svojí peněženkou a obnos si převést na svoji peněženku, až uzná za vhodné. Do té doby leží bitcoiny na vaší peněžence, takže kdyby ztratil váš "voucher", můžete mu jednoduše vystavit nový.</p>
<p><a target="_blank" href="https://pay.sats.cz/withdraw/CmfkZwFT7CQxQ6tqM5qYc9">pay.sats.cz</a></p>
</div>
<div class="fact" id="elonuv-tweet-inevitable">
<a href="#elonuv-tweet-inevitable"><h2>Tweet od Elona Muska "In retrospect, it was inevitable" najdete zapsaný v blockchainu</a></h2>
<p>Krátce předtím, než Tesla oznámila nákup bitcoinů, Elon Musk si v profilu nastavil pouze "#Bitcoin" a tweetnul právě tento tweet, jenž znamená "Vlastně to bylo nevyhnutelné". V tu chvíli tím pravděpodobně myslel ještě tehdy neveřejný nákup.</p>
<p>V transakci <a target="_blank" href="https://mempool.space/tx/88349380e1f6be0eaefcad8f5abe3303769596caeed63d5de6150bf420e8b0f0">883493...e8b0f0</a> zvěčnil F2Pool tento tweet, když ho zapsal do coinbase transakce bloku č. <a target="_blank" href="https://mempool.space/block/000000000000000000023c31edf49adb2306d0db74e6f1f032ef76deaa7a464a">668197</a>. Ať už si o Elonovi myslíme cokoliv, tak tohle byl důležitý okamžik pro Bitcoin, jenž rozšířil povědomí o kryptoměnách k davům, které by o ně jinak nezavadily.</p>
<p><a target="_blank" href="https://explorer.sats.cz/block/000000000000000000023c31edf49adb2306d0db74e6f1f032ef76deaa7a464a">explorer.sats.cz</a></p>
</div>
<div class="fact" id="xpub-privatni-klic-risk">
<a href="#xpub-privatni-klic-risk"><h2>Vyzrazení xPub a libovolného soukromého klíče může vést ke ztrátě všech prostředků na peněžence</a></h2>
<p>Privátní neboli soukromé klíče jsou opravdu velice soukromá záležitost, o to víc, pokud jde o peníze (o Bitcoin). To, že nikomu neukazujete váš seed, beru jako samozřejmost, to byste opravdu dělat neměli, pokud nechcete o své prostředky přijít. Seed je ale takový "rodič" vašich dalších privátních klíčů (ke každé adrese je právě jeden), a chránit byste měli i tyhle "potomky", aby je nikdo neznal (aby se ani jediný nedostal na veřejnost). Dokonce je žádoucí, abyste ho vůbec sami neznali, to zajišťují hardwarové peněženky, které tyto klíče nikdy neopustí a dokonce je neukáží ani vám. Vám stačí znát "rodiče", seed, který na ně dohlíží. Softwarové peněženky by vám tyhle klíče ukázat mohly (např. pro import do jiné peněženky).</p>
<p>V žádném případě nikomu nesdělujte ani jediný privátní klíč. Tento úkon sám o sobě by nebyla taková pohroma. Pohroma by mohla nastat, pokud používáte svůj rozšířený veřejný klíč (xpub, ypub nebo zpub ... odteď jen jako "xpub") pro "watch only" peněženku a uniknul vám společně s libovolným privátním klíčem. Samotný xpub není problém, pokud se jej někdo dozví, v nejhorším případě se může koukat na vaše transakce, ale neudělá žádnou škodu tím, že by vám vaše mince ukradnul.</p>
<p>Ve spojení xpub s jakýmkoliv privátním klíčem ale přichází na řadu matematika. Pokud máte tyto dva údaje, jste schopní dopočítat všechny další privátní klíče, a tudíž vybrat celý účet (jen adresy, které se sledují stejným xpub). Je proto důležité nikomu neposílat soukromý klíč k jedné adrese, ani kdyby na adrese nebyly žádné bitcoiny. Prostředky na jiných účtech nebo dokonce pod jinými passphrase v žádném ohrožení nejsou.</p>
<p>Pokud používáte Ledger nebo Trezor, nemusíte se bát. Není způsob, jak je z toho hardwaru dostat jako běžný uživatel. Nicméně pokud používáte nějaké softwarové peněženky, myslete na to, že privátní klíč se nikam neposílá, za žádných okolností.</p>
<p>
<a target="_blank" href="https://www.ztohoven.cz/?p=798">ztohoven.cz</a> <br />
<a target="_blank" href="https://btc-slovnik.cz/pages/wallet.html">btc-slovnik.cz</a>
</p>
</div>
<div class="fact" id="puleni">
<a href="#puleni"><h2>Půlení není přesně každé čtyři roky</a></h2>
<p>Půlení je událost v bitcoinové síti, kdy se těžařům sníží odměna z vytěženého bloku na polovinu (tím jsou myšleny nové bitcoiny, co se dostávají do oběhu, odměny z poplatků se tohle netýká). Tohle se děje tedy cca každé 4 roky, ale to je jen důsledek toho, jak je bitcoin nastaven. Blok by se měl vytěžit jednou za deset minut, v průměru. Půlení nastává jednou za 210,000 bloků, což když si správně roznásobíme a podělíme, dostaneme se ke výsledku cca 4 let. Nicméně jestli to bude třeba týden dřív nebo později opravdu nejde odhadnout.</p>
<p>Stejně se počítá například úprava obtížnosti. Ta probíhá každých 2016 bloků (každých 14 dní). Pokud by tedy hashrate spadnul např. o 90 % a nevrátil se na svoji úroveň do nějaké doby, trvalo by 2016 bloků, než by se obtížnost upravila, a každý blok by trvalo vytěžit zásadně delší dobu než normálně. Způsobilo by to určitě krátkodobé "zasekání" sítě, transakce by zdražily a chvíli byste se museli spoléhat pouze na Lightning network. Ta bude fungovat, i když by se těžba na nějakou dobu úplně zastavila.</p>
</div>
<div class="fact" id="kryptograficky-podpis">
<a href="#kryptograficky-podpis"><h2>Ověření vlastnictví adresy je velice jednoduché</a></h2>
<p>Uveďme příklad, že mi někdo pošle donate např. 1 BTC. Následně v e-mailu najdu dvě zprávy. Jedna bude obsahovat "Vrat mi to prosim na adresu XXX." a druhá "Diky za tvoji praci, pokracuj v tom co delas!". Jak poznám, kterému člověku mám věřit? Vrátit platbu nebo si ji mám nechat?</p>
<p>Protože adresa je jen hash veřejného klíče, stačí, aby dárce podepsal svoji zprávu soukromým klíčem (kterým se bitcoiny odesílají) a poslal mi tento podpis. To můžete každý udělat ve webovém rozhraní Trezoru nebo třeba Electru. Adresa, ze které bitcoin přišel je 3FsJKPVA2kJKwLhpXNjzckd1T3txEdRgCY. Pro ověření nám tedy stačí zpráva, podpis a adresa, ze které donate přišel.</p>
<p>Zpráva 1: "Vrat mi to prosim na adresu XXX." <br />
Podpis z e-mailu: "I/Xp1dLgQWx+omnMq49QucfF8wVO+2G1qDZ1KHp6f7zgHwFOA9UcmLAf6h3a/U+ZldwgeeierXVkNH4HLfRbAXg="</p>
<p>Zpráva 2: "Diky za tvoji praci, pokracuj v tom co delas!"<br />
Podpis z e-mailu: "JDAU/7Kf7QEMB+AdgRsu+deO7oRiE9jUx4isDoKMTkYMIxP9QlazIgX2sz25kpegkL5W43hbo4Ykqb5XrAGri+0="</p>
<p>Tyto údaje teď ověříme spolu s "3FsJKPVA2kJKwLhpXNjzckd1T3txEdRgCY" adresou, ze které nám přišel bitcoin (zkuste si sami na odkazu níže, zadejte <b>všechno</b> uvnitř uvozovek, můžete použít i trezor wallet na webu nebo electrum).<br />
<a target="_blank" href="https://www.verifybitcoinmessage.com/">verifybitcoinmessage.com</a></p>
<p>Pro zprávu č.1 peněženka hlásí neplatný podpis (červené pozadí), ale pro zprávu č.2 hlásí "Podpis úspěšně ověřen" (zeleně). Podpis, otisk původní zprávy tedy byl podepsán stejným klíčem, jakým byl odeslán příspěvek na tuto adresu. Můžu si být tedy 100% jistý, že dotyčný, který poslal zprávu č.2 je majitelem adresy, ze které mi příspěvek došel.</p>
</div>
<div class="fact" id="rbf">
<a href="#rbf"><h2>Transakční poplatek lze zvýšit</a></h2>
<p>Spousta dnešních peněženek (já vycházím z Trezor Suite) již podporuje zvýšení poplatku bitcoinové transakce. Při odesílání akorát zatrhnete možnost RBF (Replace by fee), a pokud transakce z důvodu nízkého poplatku zůstane "viset", tak můžete jednoduše navýšit poplatek ve své peněžence.</p>
<p>Replace by fee by se do kontextu v češtině dalo přeložit jako "nahraď transakci a zvyš poplatek". V peněžence tuto funkcionalitu aktivujete jedním kliknutím, ale na pozadí se vlastně vytvoří úplně nová transakce, ve které je nastavené akorát vyšší fee. Tato transakce přepíše v mempoolu (shromaždišti nepotvrzených transakcí) původní transakci a uzly s tou původní již přestanou počítat. I kdyby ji uzly nevyřadily z mempoolu, pak stejně bude vytěžena jen jedna, protože obě najednou platit nemohou. Ve většině případů si těžař vybere tu s vyšším poplatkem. Původní se potom ztratí, jakoby neexistovala.</p>
<p>Dobré je připomenout, že tato funkcionalita musí být explicitně povolená v prvotní transakci. Trezor Suite ji má zapnutou ve výchozím stavu. Pokud tato funkcionalita není zapnutá u původní transakce, není možné již zvýšit poplatek a musíte tak počkat, než projde, případně až ji uzly "zapomenou" po delší době a odeslat ji znovu.</p>
<p><a target="_blank" href="https://wiki.trezor.io/Replace-by-fee_(RBF)">wiki.trezor.io</a></p>
</div>
<div class="fact" id="passphrase">
<a href="#passphrase"><h2>Passphrase není jen tak nějaké heslo</a></h2>
<p>Pokud používáte passphrase (a já věřím, že používáte), tak passphrase se v algoritmu, jakým se generuje celá peněženka (soukromé klíče, adresy apod) projeví ze začátku procesu jako parametr, který kompletně změní a znáhodní výsledek funkce (PBKDF2_HMAC, abych byl konkrétní), takže bez vaší passphrase se začnou generovat úplně, ale úplně jiné adresy a k nim soukromé klíče (hesla).</p>
<p>Docílíte tak vyšší bezpečnosti, protože případnému útočníkovi, který by získal nebo nějak odposlechl váš seed (online phishing, vaší chybou apod.) bude naprosto k ničemu, protože není možnost reprodukovat vaše adresy a klíče právě bez vaší passphrase (pokud vaši passphrase zapomenete nebo špatně opíšete, tak se k prostředkům nedostanete, i když máte svůj seed!). Takovýchto passphrase můžete mít spousty. Útočník by zcizil jen prostředky, které si pošlete na "Standardní peněženku", bez passphrase. Ve skutečnosti i obyčejná peněženka, bez passphrase obsahuje tento passphrase parameter.</p>
<p>Samotný parametr té funkce je slovo "mnemonic" následovaný hned vaší passphrase. Pokud bych měl passphrase "GorrdyhoTajnáPeněženka", bitcoin si to zpracuje jako "mnemonicGorrdyhoTajnáPeněženka", kdežto bez passphrase se předá pouze "mnemonic".</p>
<p><a target="_blank" href="https://btc-slovnik.cz/pages/wallet.html">btc-slovnik.cz</a></p>
</div>
<div class="fact" id="nejmensi-jednotka-satoshi">
<a href="#nejmensi-jednotka-satoshi"><h2>Nejmenší bitcoinové jednotce se říká satoshi</a></h2>
<p>Jednu stomiliontinu bitcoinu nazýváme satoshi (zkr. sat). V češtině používáme "štosovat saty", "kupovat satoshi", v angličtině "stack sats". Návrh na pojmenování různých částeček bitcoinu se objevil na bitcointal.org už v roce 2010. Tehdy šlo v peněženkách zobrazovat zůstatky s přesností na 0.01 BTC (i když bitcoinová síť uměla i tehdy pracovat s osmi desetinnými místy), a tak uživatel ribuck navrhul pojmenovat satoshi právě část bitcoinu 0.01. S tím ale neuspěl, a tak o 4 měsíce později přichází s nápadem pojmenovat tak jednotku nejmenší, tedy jednu stomiliontinu (0.00000001 BTC). <br />
<a target="_blank" href="https://bitcointalk.org/index.php?topic=407442.0">bitcointalk.org</a> - návrh na pojmenování 0.01 satoshi<br />
<a target="_blank" href="https://bitcointalk.org/index.php?topic=3311.msg46648#msg46648">bitcointalk.org</a> - návrh na pojmenování nejmenší jednotky satoshi</p>
<p>Rozhodující post, jak nejmenší jednotce napsal na fórum uživatel marcus_of_augustus 18.02.2011 a název se ujal.<br />
<a target="_blank" href="https://bitcointalk.org/index.php?topic=3574.msg50647#msg50647">bitcointalk.org</a></p>
<p>V historii i dnes se občas používají i další jednotky jako 'bitcent', 'milicent', 'microcent', 'milibitcoin', 'microbitcoin', ale osobně jejich význam nějak nespatřuji a už dnes je přemýšlení v základní, nejmenší, bitcoinové jednotce vlastně standardem v bitcoinové komunitě. K dnešnímu dni je hodnota 150 sat = 1 Kč. Pokud cena celého bitcoinu vystoupá zpět na 1 milion korun, nastane parita 1 haléř = 1 satoshi a tedy 100 sat = 1 Kč. </p>
<p><a target="_blank" href="https://twitter.com/btcslovnik/status/1391049471321063427">twitter.com/btcslovnik</a></p>
</div>
<div class="fact" id="native-segwit-taproot-adresy">
<a href="#native-segwit-taproot-adresy"><h2>Proč je v bitcoinové adrese vždy bc1 na začátku?</a></h2>
<p>Pokud používáte nejnovější standard (native segwit), což byste měli, pak jste si všimli, že každá adresa začíná znaky "bc1". Jde o lidsky čitelnou část adresy, aby bylo zřejmé, že se jedná o adresu Bitcoinu. Litecoin např. používá začátek adresy ltc1. Ale to sem nepatří.</p>
<p>Začátek je tedy jasný, jen nám ukazuje, že se jedná o bitcoin. Ale ukážeme si kouzlo. Vygenerujte si novou "bc1" adresu. Jaká je šance, že tipnu další znak právě ve vaší adrese? Je to malé "q"? Rád bych tvrdil, že mám jasnovidecké schopnosti, ale asi vám došlo, že to "q" je tam zatím vždy a tak všechny aktuální adresy začínají vlastně "bc1q". Dvojice znaků "bc" tedy značí Bitcoin, následuje "1", což je jen pouhý oddělovač, nezastává žádnou funkci, a poslední ze čtveřice je písmeno "q", označuje verzi adresy. Aktuálně používáme adresy "verze segwitu 0" zastávanou právě písmenem "q".</p>
<p>S blížícím se softforkem Taproot, a taky "verzí segwitu 1", budeme jako čtvrtý znak v adrese používat písmeno "p" (zástupce pro číslo 1). Budoucí bitcoinové adresy se tedy budou lišit opravdu minimálně:</p>
<p>Aktuální: <b>bc1q</b>w3kky508zj7eytzsfu3t2kc047x5cn02mg2c5n</p>
<p>Taproot: <b>bc1p</b>n5c2gm20nc5x740ck2t3ufsztye7jz805ykk3w</p>
</div>
<div class="fact" id="vetsina-bitcoinu-behem-12-let">
<a href="#vetsina-bitcoinu-behem-12-let"><h2>99.5 % bitcoinů se vytěží už za tři půlení</a></h2>
<p>Každé cca 4 roky probíhá bitconové půlení, krácení odměn těžařů na polovinu. V začátcích odměňovala síť těžaře 50 BTC za blok, následně 25, 12.5 až dnes odměna klesla k 6.25 BTC za blok.</p>
<p>Všechny bitcoiny budou vytěženy v roce 2140, ale drtivá většina už po dalších třech půleních, za cca 11 let.</p>
<p>98.5 % bitcoinů se dostane do oběhu už v roce 2028, a za další 4 roky, po třech půleních (ode dneška) už podíl vystoupá na právě oněch 99.5 %.</p>
<p>Spousta lidí se obává roku 2140 kvůli tomu, že odměna za bloky klesne k nule, ale reálně už za 12 let bude naprosto minimální a místo aktuálních 6.25 BTC se sníží postupně až na cca 0.78 BTC.</p>
<p>Nicméně se není čeho obávat, odměny těžařů jsou dvousložkové a místo block subsidy zaplatíme těžařům vyššími poplatky za transakce.</p>
<p>Používejte Lightning.</p>
</div>
<div class="fact" id="bitcoinovy-bug-184-mld-bitcoinu">
<a href="#bitcoinovy-bug-184-mld-bitcoinu"><h2>V začátcích Bitcoinu někdo vytěžil 184 miliard bitcoinů </a></h2>
<p>Odehrálo se to celé v bloku č. <a target="_blank" href="https://mempool.space/block/000000000069e1affe7161ab4bcbeacebb4ddf155b50e807f42de971b688a09b">74638</a>, kdy se v blockchainu objevila transakce se dvěma výstupy, každým po 92 miliardách bitcoinů. Tuto skutečnost se podařilo zjistit až teprve po ~90 minutách. V ten okamžik začalo pátrání, co se vlastně stalo. Bug byl způsoben technickou záležitostí, útočník nastavil takový poplatek, aby součet vstupů, výstupů vyšel záporně, a vyústilo to v nesmyslný efekt, připsání miliard bitcoinů na dvě adresy.</p>
<p>Kritická chyba byla opravena asi po dvou hodinách dvojicí Gavin Andresen a Satoshi Nakamoto, a tato 184 miliardová transakce byla zneplatněna, což vyústilo v soft fork. Tehdy bylo celkem obtížné kontaktovat přes 50 % provozovatelů nodů, ale nakonec většina upgradovala své nody na Bitcoin Core 0.3.10 a vytvořila tak delší chain, tu větev, kterou používáme i dnes.</p>
<p><a target="_blank" href="https://news.bitcoin.com/bitcoin-history-part-10-the-184-billion-btc-bug/">news.bitcoin.com</a></p>
</div>
<div class="fact" id="hw-penezenka">
<a href="#hw-penezenka"><h2>Hardwarová peněženka je jen generátor náhodného čísla</a></h2>
<p>Umí to tedy extrémně bezpečně, aniž by se tohle číslo dostalo někam ven ze samotné peněženky, ale váš seed je opravdu jen jedno číslo od 0 do 2²⁵⁶ (pro představu je to číslice 1 a dalších 77 míst).</p>
<p>Tohle číslo lze zapsat binárně jako 256 po sobě jdoucích jedniček nebo nul. Pokud chcete, můžete si vyzkoušet tohle číslo vygenerovat třeba hody mincí.</p>
<p>Stačí 256× hodit mincí a zapisovat si, na kterou stranu padla jako 1 nebo 0. Jakmile budete mít zapsané všechny hody a všech 256 jedniček nebo nul, rozdělte je do skupin po 11. Každá skupina číslic (převedeno do desítkové soustavy + přičteme číslo 1) potom reprezentuje index slova v bitcoinovém slovníku <a target="_blank" href="https://github.com/bitcoin/bips/blob/master/bip-0039/english.txt">github.com</a>.</p>
<p>Jakmile máme těch 24 slov, všechno, co potom peněženka dělá už je předem dané a žádné další náhodné jevy se nepoužívají. Tzn. že kdokoliv disponuje seedem, disponuje všemi prostředky, které se na adresy jím vygenerované kdy pošlou.</p>
<p>*tohle platí pro 24 slovný seed, pro 12 slovný se počítá s 128 hody místo 256</p>
<p>Přesný postup pro fajnšmekry, kteří si to chtějí vyzkoušet: <a target="_blank" href="https://btc-slovnik.cz/pages/wallet.html">btc-slovnik.cz</a></p>
</div>
<div class="fact" id="nejvetsi-transakce">
<a href="#nejvetsi-transakce"><h2>Blok <a target="_blank" href="https://mempool.space/block/000000000000000003dd2fdbb484d6d9c349d644d8bbb3cbfa5e67f639a465fe">364292</a> obsahoval transakci tak velkou, že se tam už žádná další nevlezla</a></h2>
<p>Popravdě, blok obsahoval transakce dvě, coinbase (mincetvornou, za kterou si připsal F2Pool 25 BTC) a k tomu mega-transakci, která zaplnila zbytek bloku. Uzlům trvalo neuvěřitelných 25 sekund ověřit jenom tuto transakci. Zde se můžete podívat na tento blok a jeho 2 transakce. <br />
<a target="_blank" href="https://mempool.space/block/000000000000000003dd2fdbb484d6d9c349d644d8bbb3cbfa5e67f639a465fe">mempool.space</a></p>
<p>Mega-transakce měla neuvěřitelných 5570 vstupů (neutracených UTXO z předchozích transakcí), všechny tyto vstupy pochází ze 3 adres. Protože si ji F2Pool vytěžil sám, nemusel zaplatit žádný poplatek za její zpracování. Otázkou je, jestli se to vyplatilo. Objem, který takto F2Pool zachránil byl 0.0556 BTC, tehdy asi $15, v dnešní hodnotě je to sice asi $2,000, ale připravil se tak o "běžné" poplatky z běžných transakcí. Bloky s odměnou z poplatků přes 0.5 BTC (dnes přes $17,000) nebyly výjimkou. Pokud bychom kalkulovali s tímto rozdílem, připravil se tehdy F2Pool o dnešních asi $15,000.</p>
<p>Nicméně motivací mohl být zrovna prázdný mempool a příležitost zachránit malá UTXO z těchto adres "zdarma" (nebyla alternativa jiných transakcí). Zajímavým faktem je, že to nebyly prostředky F2Poolu, ale nezabezpečených brainwallets (to je když si vygeneruji peněženku třeba ze 3-4 vlastních slov, které zadám do nějakého programu, který mi z nich vygeneruje seed - tohle je extrémně nebezpečné, je pak strašně snadné odhadnout jen pár slov). Další motivací by mohlo být vytvoření největší transakce a "zapsat se do historie".</p>
<p>Z finančního hlediska mi tahle "konsolidace" ale nedává smysl, protože prostě mohli těch $15 nechat být, odepsat a vzít si odměnu z klasických transakcí v daleko větší hodnotě. Ale něco mi říká, že to udělali, protože mohli. Je to tedy dokonalý příklad, že nechávat si na adresách zůstatky po pár korunách nebo centech není dobré řešení. V podstatě jsou nadobro ztraceny, protože utratit je stojí více než je jejich zůstatek.</p>
<p>
<a target="_blank" href="https://rusty.ozlabs.org/?p=522">rusty.ozlabs.org</a> <br />
</p>
</div>
<div class="fact" id="seed-z-hw-pouze-v-hw">
<a href="#seed-z-hw-pouze-v-hw"><h2>Nikdy nezadávat seed z Trezoru do softwarové peněženky, ani naopak</a></h2>
<p>Vygenerovat si bezpečně seed na počítači nebo telefonu je docela oříšek. Jak zjistíte, že si nestahujete škodlivou aplikaci, která si váš seed přepošle, a jakmile si na peněženku nahrajete dost vysoký obnos, a nepřesune ho z vaší peněženky do té svojí? Nemusí to být hned škodlivá aplikace, stačí, aby v ní byla chyba (nebo chyba v operačním systému). Pak se může stát, že si všichni uživatelé budou generovat stejný seed. A to opravdu nechcete.</p>
<p>Váš seed je tak bezpečný, jako zařízení, kde byl vytvořen. Žebříček těchto zařízení podle bezpečnosti může vypadat např. takto (od nejvíce bezpečných shora).</p>
<p>Hardwarová (HW) peněženka(Trezor, Ledger) <br />
iPhone <br />
Android telefon<br />
Mac/PC<br />
PC v kavárně<br />
PC kamaráda, který si holduje v různorodém obsahu na internetu</p>
<p>Po tomhle žebříku se neleze nahoru, pouze dolů. Jestliže si vygenerujete seed na kamarádově zavirovaném počítači, pravděpodobně tam už bude mít pár virů, které scanují každý krok. Zadat takovýto seed potom do HW peněženky je z pohledu bezpečnosti k ničemu, protože mohl uniknout jinou, snazší cestou. Vygenerování v HW peněžence je naopak extrémně bezpečné, protože tento mini-počítač dělá jen to, k čemu byl vytvořen a nemůžete ho nijak infikovat nebo hacknout.</p>
<p>Opačně to taky smysl nedává. Seed vygenerovaný v HW peněžence nesmím zadat do jakéhokoliv méně bezpečného zařízení (maximálně do jiné HW peněženky, to je ok), třeba právě počítače někde v kavárně (sestoupit na žebříku níž). Ve chvíli, co bych to udělal není sice zvýšená šance, že mi někdo hackne můj Trezor/Ledger, ten je stále stejně bezpečný, ale ten útočník nepotřebuje. Mu stačí pouze seed, který jste zadali na počítači, kde číhá jeho virus a hledá.</p>
<p>Takže seed ze SW peněženky nezadáváme do Trezoru, protože tím ztrácí pořízení Trezoru smysl (to už jsem mohl používat rovnou tu SW peněženku). A nikdy nezadáváme seed z Trezoru do jakékoliv SW peněženky (android, ios, pc...), protože tak sestoupíme na žebříku bezpečnosti dolů a v tu chvíli je Trezor opět naprosto neužitečný, protože šance na prozrazení seedu se ohromně zvýšila.</p>
</div>
<div class="fact" id="100blokovy-limit-pro-utratu-novych-bitcoinu">
<a href="#100blokovy-limit-pro-utratu-novych-bitcoinu"><h2>Nově vytvořené bitcoiny, po vytěžení, nejdou utratit dřív než po 100 blocích</a></h2>
<p>Jakmile se těžaři povede uhodnout blok, může si odměnu nechat vyplatit na svoji adresu. Nemůže ji však utratit po 100 bloků, což je asi 17 hodin. Zabraňuje to komplikacím, kdyby se v bitcoinové síti odehrála reorganizace vrcholu blockchainu, což není úplně výjimečný úkaz, občas se to prostě stane (když dva těžaři vytěží stejný blok ve stejnou chvíli).</p>
<p>Komplikací by byly právě již utracené nově vytvořené mince, protože není jednoduché vzít coinbase transakci a jen ji přesunout do jiného bloku, což s klasickými transakcemi, které utrácejí dávno vytisknuté mince, není problém.</p>
<p>Nejčastější reorganizace jsou 1-2 bloky, výjimečně se stane, že je reorganizace většího rozsahu, takže vypadá, že 100 bloků bohatě dostačuje jako rezerva.</p>
</div>
<div class="fact" id="sha256-mining-bruteforce">
<a href="#sha256-mining-bruteforce"><h2>Těžení je jen hádání, není to žádný složitý matematický výpočet</a></h2>
<p>
Aby těžař dostal odměnu za blok, musí vzít data předchozího bloku,
zkombinovat s transakcemi, které čekají na potvrzení (nejspíš ty s nejvyšším
poplatkem), k tomu přidat číslo od 0 do 4,294,967,295 (0 - ffffffff) a
aplikovat na tohle celé hashovací funkci (hashovací funkce vám udělá z
libovolného množství dat unikátní otisk o zavedené délce, takže je pak
jednodušší porovnávat tyto otisky, než celá data).
</p>
<p>Hash (výsledek) je potom úplně náhodné číslo, např.</p>
<p>
<b style="color:green; word-wrap:break-word;">00000000000000000000</b
>706c7f21388b285414c4829ee3981398e0cac82e43e3.
</p>
Pokud je tohle číslo nižší, než je aktuální cíl těžby, např.
<p>
<b style="color:red; word-wrap:break-word;">0000000000000000000</b
>cdf6f0000000000000000000000000000000000000000,
</p>
blok je platný (to zde splňujeme, viz zelené nuly, je jich víc než
červených). Pokud je vyšší, tak ho těžař zahodí a zkouší znovu. I když nonce
k hádání je přes 4 miliardy, těžaři už dnes mají k dispozici takový výkon, že
tento počet kombinací vyzkouší na zlomek sekundy. Ale protože jakákoliv změna
v bloku způsobí změnu i výsledného hashe, stačí prohodit pár transakcí a může
opět zkoušet další 4 miliardy pokusů.
<p>
Tohle je extrémně náročné na výpočetní výkon, protože většina práce, co
uděláte přijde "vniveč". Naopak ověření, že je hash menší než cíl obtížnosti
je velice primitivní. Stačí vzít data z bloku, transakce a nonce, kterou vám
poskytne těžař, který ji "trefil" a vyzkoušet si to. Tohle přesně dělají
nody. Pokud je blok takto platný, zahrnou ho do svého blockchainu a kolečko
se opakuje.
</p>
<p>
<a target="_blank" href="https://btc-slovnik.cz/pages/block.html">btc-slovnik.cz</a><br />
<a target="_blank" href="https://learnmeabitcoin.com/technical/mining"
>learnmeabitcoin.com</a
>
</p>
</div>
<div class="fact" id="platebni-kanal">
<a href="#platebni-kanal"><h2>
Platební (lightningový) kanál je jenom adresa kterou kontrolují dvě
protistrany
</a></h2>
<p>
Platební kanál totiž není nic jiného, než že se Alice dohodne s Bobem a
vytvoří trošku složitější adresu, jejíž zůstatek lze utratit, jen pokud to
schválí oba. Platba na lightning network je potom jenom změna stavu "účtů".
Dejme tomu, že na začátku má Alice i Bob každý 0.5 BTC, který zamknou do
platebního kanálu. V tuhle chvíli vzniknul tedy platební kanál o kapacitě 1
BTC a každý z nich má v tuhle chvíli stejnou část, tedy 0.5 BTC, což si obě
strany schválily a podepsaly transakci, která by každému z nich poslala
adekvátní část na jinou, svoji, bitcoinovou adresu.
</p>
<p>
Alice si bude chtít od Boba koupit telefon, a Bob jí ho tedy chce prodat za
0.1 BTC. Alice i Bob tedy vytvoří a podepíší transakci, ve které je napsáno,
že Alice dostane 0.4 BTC a BoB 0.6 BTC (0.1 BTC se vlastně "přesunulo" od
Alice k Bobovi, i když se fyzicky nic nepohnulo), ale nepošlou ji do
bitcoinové sítě, jen si ji nechají u sebe. Oba tuhle transakci drží a
kdokoliv z nich by ji poslal do sítě, tak bude platná a zůstatky se
vypořádají, i kdyby Bob spadnul do Macochy.
</p>
<p>
Alice s Bobem takto mezi sebou obchodují další měsíce a roky, podepisují
další a další transakce, které neposílají do blockchainu, ale kdyby chtěli,
tak mohou (uzavřeli by tak platební kanál, na té multisig adrese by nezbylo
nic).
</p>
<p>
Bob se rozhodne odstěhovat do Austrálie, a tak udržovat platební kanál s
Alicí přestane mít smysl. Mohou se tedy dohodnout a platební kanál uzavřít
(vypořádat si zůstatky k sobě na své adresy). V součtu je to tedy stálo dvě
on-chain transakce. Jednu, ve které tento kanál "nabili" zůstatkem a druhou,
ve které si zůstatek rozdělili mezi sebe. Mezitím mohla proběhnout klidně
miliarda malých nebo mikro transakcí, o kteých žádný blockchain nemá ani
tušení. Na blockchain se potom jen zapíše koncový stav.
</p>
</div>
<div class="fact" id="prvnich-50-btc">
<a href="#prvnich-50-btc"><h2>Odměna 50 BTC z prvního bloku nejde utratit</a></h2>
<p>
Transakce totiž není zahrnutá v databázi transakcí, i když v blockchainu
samotném je. Což občas způsobuje drobné trable, když někdo vyvíjí třeba
průzkumníka blockchainu.
</p>
<p>
Nevíme, jestli to Satoshi udělal úmyslně či neúmyslně, nicméně prvních 50
BTC je zabetonováno na adrese
<a
target="_blank"
href="https://mempool.space/address/1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa"
>1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa</a
>, protože nody by blok s transakcí, jejíž předchůdce není v databázi,
odmítnuly.
</p>
<p>
Ostatní UTXO (neutracené výstupy) by měly jít odeslat z této adresy dál. Ale
je nepravděpodobné, že privátní klíč k této adrese vůbec existuje, resp.
jestli jej někdy Satoshi vůbec někam zaznamenal nebo zálohoval.
</p>
</div>
<div class="fact" id="whitepaper-v-blockchainu">
<a href="#whitepaper-v-blockchainu"><h2>V blockchainu je uložený celý bitcoinový whitepaper bitcoin.pdf</a></h2>
<p>
Do transakce
<a
target="_blank"
href="https://bitcoinexplorer.org/tx/54e48e5f5c656b26c3bca14a8c95aa583d07ebe84dde3b7dd4a78f4e4186e713"
>54e48e...86e713</a
>
byl zapsán kompletní bitcoinový whitepaper tak, jak ho publikoval Satoshi
Nakamoto. Tato transakce stála neuvěřitelných 0.596 BTC na poplatku, ale
výsledkem je absolutně decentralizované uložení významného dokumentu. Nemůže
se tedy stát, že by jej někdo úspěšně zcenzuroval, protože kdokoliv s
bitcoinovým plným uzlem si jej může z této transakce vyexportovat.
</p>
<p>
Na linuxu s plným uzlem jej můžete získat tímto způsobem pomocí
bitcoin-cli.<br />
<code style="word-wrap: break-word;"
>./bitcoin-cli getrawtransaction
54e48e5f5c656b26c3bca14a8c95aa583d07ebe84dde3b7dd4a78f4e4186e713 0
00000000000000ecbbff6bafb7efa2f7df05b227d5c73dca8f2635af32a2e949 | sed
s/0100000000000000/n/g | tail -n +2 | cut -c7-136,139-268,271-400 | tr -d n
| cut -c17-368600 | xxd -p -r > bitcoin.pdf</code
>
</p>
<p>
SHA256SUM mého bitcoin.pdf<br />
umbrel@umbrel:~/umbrel/bin $ sha256sum bitcoin.pdf<br />
<b style="word-wrap: break-word;"
>e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855</b
>
bitcoin.pdf
</p>
<p>
Pokud provozujete bitcoinový uzel, tak stačí nainstalovat
<a target="_blank" href="https://github.com/janoside/btc-rpc-explorer"
>Bitcoin RPC Explorer</a
>, který vám jej dekóduje.
</p>
<p>
Poté si jej stáhnete nebo přečtete přímo v prohlížeči, např. na adrese
<a target="_blank" href="#"
>https://192.168.1.111:3002/bitcoin-whitepaper</a
>
(nahraďte IP/port vašeho node).<br />
<a target="_blank" href="https://bitcoinexplorer.org/bitcoin-whitepaper"
>Ukázka na veřejném bitcoinexplorer.org</a
>
</p>
</div>
<div class="fact" id="bounties">
<a href="#bounties"><h2>
V blockchainu je ukrytá "minihra". A nejen jedna, je jich vlastně pět
</a></h2>
<p>
V blockchainu se vyskytuje několik adres, kde jsou přichystané bitcoiny pro
člověka, který najde alespoň jeden případ kolize hashů jakýchkoliv dat.
Programu stačí dát jakýkoliv text a on by vám měl vytvořit jeho unikátní
otisk, a my hledáme jeden případ, kdy bude otisk stejný (dojde ke
kolizi).<br />
<br />
SHA1 (dohráno)<br />
SHA256<br />
RIPEMD160<br />
RIPEMD160(SHA256())<br />
SHA256(SHA256())<br />
<br />
SHA funkce (<a
target="_blank"
href="https://cs.wikipedia.org/wiki/Secure_Hash_Algorithm"
>cs.wikipedia.org</a
>)<br />
RIPEMD funkce (<a
target="_blank"
href="https://cs.wikipedia.org/wiki/RIPEMD"
>cs.wikipedia.org</a
>)
</p>
<p>
Zkusit si to můžete sami třeba zde, ale nebudu vám lhát, ručně se vám to
nejspíš nepovede. Najdete zde i konkrétní popis všech funkcí.
<a
target="_blank"
href="https://learnmeabitcoin.com/technical/hash-function"
>learnmeabitcoin.com</a
>
</p>
<p>
Jedna z "miniher" už je dohraná. První kolize byla opravdu nalezena pro
funkci SHA1, jenž už je prakticky odepsaný algoritmus, protože se podařilo
nalézt v něm chyby, a už přes 15 let ji lidé považují za nepraktickou.
Přesto tuto kolizi hashů někdo vyrobil až v roce 2017 a bitcoiny si z adresy
vybral. Nicméně odhaduje se, že najít takovou kolizi mělo vyjít na cca 2.3
milionů dolarů, proto asi nikdo nebyl až tak motivován tuto odměnu vybírat.
<a
target="_blank"
href="https://bitcoinexplorer.org/address/37k7toV1Nv4DfmQbmZ8KuZDQCYK9x5KpzP"
>bitcoinexplorer.org</a
>
</p>
<p>
SHA256 už bude větší oříšek. Číslo 2<sup>256</sup> >> 2<sup>128</sup>.
I kdybychom hádali pouze 2<sup>128</sup> možností (což není polovina,
polovina z 2<sup>256</sup> je 2<sup>255</sup>), trvalo by to pravděpodobně
3.6 × 10<sup>13</sup> let při aktuálním výkonu celé bitcoinové sítě. Nicméně
pokud se na to cítíte, běžte do toho.
<a
target="_blank"
href="https://bitcoinexplorer.org/address/35Snmmy3uhaer2gTboc81ayCip4m9DT4ko"
>bitcoinexplorer.org</a
>
</p>
<p>
Pro další 3 případy je to vlastně obdobné, zatím se žádný příklad další
kolize, kromě SHA1 nepodařilo demonstrovat.<br />
RIPEMD160
<a
target="_blank"
href="https://bitcoinexplorer.org/address/3KyiQEGqqdb4nqfhUzGKN6KPhXmQsLNpay"
>bitcoinexplorer.org</a
><br />
RIPEMD160(SHA256())
<a
target="_blank"
href="https://bitcoinexplorer.org/address/39VXyuoc6SXYKp9TcAhoiN1mb4ns6z3Yu6"
>bitcoinexplorer.org</a
><br />
SHA256(SHA256())
<a
target="_blank"
href="https://bitcoinexplorer.org/address/3DUQQvz4t57Jy7jxE86kyFcNpKtURNf1VW"
>bitcoinexplorer.org</a
><br />
</p>
<p>
Tohle je vlastně geniální ukazatel bezpečnosti těchto algoritmů. Pokud se
vám podaří najít jeden případ, můžete si tyto odměny vybrat na jakoukoliv
adresu. Pokud by někdo "porazil" tyto algoritmy v efektivním čase a za
efektivní cenu, první na řadě budou tyto prostředky, protože jsou to
jednoduše free money. Dokud tam ty zůstatky jsou, můžete být v klidu.
</p>
</div>
<div class="fact" id="utraceni-celeho-utxo">
<a href="#utraceni-celeho-utxo"><h2>Nemůžete posílat jen část svých bitcoinů, musíte odeslat všechny</a></h2>
<p>
Běžnou bitcoinovou transakci si spousta lidí představí tak, že část svého
zůstatku z peněženky pošle protistraně, jako když někomu posílá peníze na
účet a tedy se jim odečte pouze odesílaná částka. Přesně takhle ... to ale
nefunguje. Ze své adresy musíte odeslat všechny svoje bitcoiny. Samozřejmě
to neznamená, že když zaplatíte někde pivo, tak restauratér dostane všechny
vaše bitcoiny, dostane pouze takovou část, kterou vypíšete, že chcete
zaplatit.
</p>
<p>
Nicméně platí, že transakce opravdu obsahuje celé vaše jmění. Rozdíl mezi
placenou částkou a celkovým zůstatkem se vám vrátí nazpět do peněženky, na
novou, tzv. change adresu, kde opět bude tento výstup (zůstatek) čekat na
další utracení. Tomuto zůstatku se říká neutracený výstup, který má na první
pohled strašidelnou anglickou ztratku UTXO [jů-tý-ex-ou] (unspent
transaction output), ale na tu si rychle zvyknete. Je to snažší než říkat
pořád dokola "neutracený výstup bitcoinové transakce" :)
</p>
<p>
V předchozích odstavcích jsem trochu zalhal, schválně, pro zjednodušení.
Utratit musíte pouze celý neutracený výstup (UTXO), nikoliv obsah celé
adresy nebo dokonce peněženky. UTXO totiž vniká pokaždé, když na adresu
dojdou nějaké bitcoiny. Pokud si tedy 10x pošlu po 1 BTC z burzy, vytvoří se
mi 10 UTXO, každé o hodnotě 1 BTC. Je jedno, jestli posílám na různé adresy
nebo jen na jednu adresu. Nové UTXO vznikne i v případě, kdy už na adrese
nějaké jiné UTXO je, a tak jich tam bude prostě více.
</p>
<p>
Pokud máte 10 různých neutracených výstupů (ať už na jedné nebo více
adresách) v hodnotě 1 BTC a chcete poslat 2.5 BTC, stačí tedy odeslat 3 BTC
ze 3 UTXO (dva by bylo málo, více je zbytečné), a zbytek vám peněženka vrátí
na novou adresu, čímž vznikne nové UTXO o hodnotě asi 0.5 BTC (3 BTC
odesílané minus 2.5 BTC minus poplatek, které posíláme protistraně). Plně
jste tak využili dva výstupy, třetí sice jen z poloviny, ale musíme ho
utratit celý a vytvořit nový o hodnotě právě rozdílových 0.5 BTC na jiné,
change adrese. Zbytku se dotknout nemusím a ty čekají na příští transakce.
Pokud bych chtěl znovu zaplatit třeba 0.1 bitcoinu, tak se vezme pouze jeden
z výstupů. Který, to záleží na peněžence, ale měla by "ukrajovat" z
nejmenších možných.
</p>
</div>
<div class="fact" id="maximalni-pocet-bitcoinu">
<a href="#maximalni-pocet-bitcoinu"><h2>Bitcoinů nikdy nebude 21 milionů</a></h2>
<p>
Víte, že nikdy nebude celých 21,000,000 bitcoinů? Bitcoin funguje tak, že se
s každým blokem do oběhu dostane nejdřív bitcoinů 50, 25, 12.5, 6.25, 3.125
... až budou všechny v roce cca 2140 vytěženy (budou dotěženy spíše dříve).
</p>
<p>
V součtu tyhle jednotlivé zůstatky za každý blok dají ale jen
20,999,999.9769. To znamená, že 21,000,000 opravdu nikdy nebudeme mít k
dispozici, i kdybychom každý jeden bitcoin střežili jako oko v hlavě.
</p>
<p>
V bitcoinové síti ale kvůli různým chybám, experimentům nebo flexení došlo k
transakcím, které odeslaly nějaké bitcoiny na neplatné nebo neznámé adresy.
</p>
<p>
Uživatel MidnightMagic si záměrně vyplatil odměnu za vytěžený blok č. 124724
o 1 satoshi nižší, než mohl (1). V bloku 501,726 zase jiný těžař špatným
vytvořením transakce spálil celou odměnu za tento blok, což bylo 12.5 BTC.
Těchto transakcí lze po internetu dohledat spousta, např. blok č. 150,951
jich obsahuje poměrně dost (2). Tyhle bitcoiny tedy nejdou utratit, protože
k nim nejsou vygenerovatelné privátní klíče a nebo ani nebyly vytvořeny.
Např. zde spálených skoro 500 BTC (3)
</p>
<p>Celkový počet takto spálených bitcoinů je asi 2,733.9. (4)</p>
<p>
Ztracené bitcoiny, kterými myslím opravdu ztracené privátní klíče, tudíž také
bez možnosti obnovy se odhaduje, že by mohlo být spousta. Satoshiho mince,
začátky Bitcoinu nikdo nebral vážně, bude tam spousta mincí ležet do konce
věků. Studie uvádějí, že těch ztracených mincí bude něco okolo 2,304,824
(5). Další mince jsou Satoshiho, odhadem 980,000 bitcoinů.
</p>
<p>
Jen tenhle předpoklad nám tedy dává 20,999,999.9769 - 2,304,824 - 980,000 =
17,715,175.9749 je maximální počet vytěžených bitcoinů, pokud by se nám je
dařilo od teď již neztrácet. 17.7 milionu místo původních ~21 milionů. Ztracených mincí
tedy může být okolo 20 % z celkového počtu.
</p>
<p>
Čísla mohou být trochu nepřesná, ale řádově to takto bude. Každý milion
ztracených mincí by se měl projevit jako 4-5% nárůst hodnoty bitcoinů
zbývajících. Můžete tyhle mince tedy vnímat jako donate všem.
</p>
<p>
Zdroje:<br />
1) Ztracený Satoshi -
<a
target="_blank"
href="https://mempool.space/tx/5d80a29be1609db91658b401f85921a86ab4755969729b65257651bb9fd2c10d"
>mempool.space</a
><br />
2) Hodně spálených bitcoinů v jednom bloku -
<a target="_blank" href="https://bitcointalk.org/index.php?topic=50206.0"
>bitcointalk.org</a
><br />
3) Skoro 500 spálených bitcoinů v jedné transakci -
<a
target="_blank"
href="https://mempool.space/tx/03acfae47d1e0b7674f1193237099d1553d3d8a93ecc85c18c4bec37544fe386"
>mempool.space</a
><br />
4) Celkový počet spálených bitcoinů -
<a
target="_blank"
href="https://bitcoinwhoswho.com/blog/2016/12/21/btc-burn-addresses/"
>bitcoinwhoswho.com</a
><br />
5) Ztracené mince uživatelů -
<a target="_blank" href="https://ritholtz.com/2017/11/lost-bitcoins/"
>ritholtz.com</a
>
</p>
</div>
<div class="fact" id="ztraceny-satoshi">
<a href="#ztraceny-satoshi"><h2>Satoshi se ztratil v blockchainu</a></h2>
<p>
Víte, že těžař, jenž vytěžil blok č. 124,724 si záměrně vyplatil méně*, než
50 BTC? Připravil se tedy jen o 1 satoshi (stomiliontina bitcoinu, nejmenší
bitcoinová jednotka), takže asi moc neutrpěl, ale tento "1 chybějící
satoshi" má symbolicky vzdát hold skutečnému Satoshimu Nakamotovi, jenž
zmizel z veřejného prostoru a už jsme o něm nikdy neslyšeli.
</p>
<p>
* Těžař si může při vytěžení určit, kolik dostane. 50 BTC byla tehdy horní
hranice.
</p>
<p>
"Missing Satoshi" transakce:
<a
target="_blank"
href="https://bitcoinexplorer.org/tx/5d80a29be1609db91658b401f85921a86ab4755969729b65257651bb9fd2c10d"
>bitcoinexplorer.org</a
>
</p>
</div>
<div class="fact" id="transakce-s-nulovym-poplatkem">
<a href="#transakce-s-nulovym-poplatkem"><h2>Transakce s nulovým poplatkem jsou out</a></h2>
<p>
Víte, že dnes již nelze poslat transakci s nulovým poplatkem (0 sat/B)?
</p>
<p>
Dříve to bylo běžné, protože Bitcoin nikdo nepoužíval a často vás těžař
zahrnul do svého bloku, protože chtěl pomoct síti a udělal to dobrovolně.
Dnes je to téměř nemožné. Bitcoinové uzly tyto "transakce zdarma" neposílají
dál, protože takových transakcí by se najednou objevily tisíce,
desetitisíce, možná statisíce, což by mohlo zaspamovat síť.
</p>
<p>
Tyto transakce by se téměř jistě nikdy nepovedlo vytěžit, takže je vlastně
zbytečné je brát v úvahu dlouhodobě.
</p>
</div>
<div class="fact" id="prijmani-ln-bitcoinu">
<a href="#prijmani-ln-bitcoinu"><h2>Příjmat Lightning network je velice snadné</a></h2>
<p>
Víte, že můžete příjmat Lightningové satoshi úplně jednoduše, aniž byste se museli starat o nějaké QR faktury pro příjem satů?
Umožňuje to právě standard LNURL. Pro ne-custodial řešení si můžete nainstalovat LNbits na svůj node, ale už to chce trochu nastavování. LNURL je vlastně jen požadavek, který se pošle na uzel a ten vám do peněženky pošle klasickou lightningovou fakturu, kterou peněženka proplatí. Umožňuje to tak používat 1 QR kód pro více plateb.
</p>
<p>lnurl1dp68gurn8ghj7urp0yh8xct5wvhxx730d3h82unvwqhkzurf9amrztmvde6hymp0xymqlgh2vm <br /> <a onclick="insertQr(); return false;" href="#donate" >Ukázat QR</a></p>
<p>
PS: Uložte si URL odkaz peněženky, je to v podstatě váš přístupový kód. Na vlastním nodu jsou vaše prostředky v bezpečí ale i bez této URL.
</p>
<p><a target="_blank" href="https://pay.sats.cz/">pay.sats.cz</a></p>
</div>
<div class="fact" id="limit-adres-uctu">
<a href="#limit-adres-uctu"><h2>Jsou tu limity pro bitcoinové účty a adresy, ale jsou obrovské</a></h2>
<p>
Víte, že pod jedním seedem si můžete vygenerovat více než 2.1 mld. bitcoinových účtů? Na
každém z těchto účtů je dále možné vygenerovat přes 2.1 mld. bitcoinových adres. Není tedy důvod používat adresy opakovaně.
</p>
<p>
<a target="_blank" href="https://btc-slovnik.cz/pages/wallet.html">btc-slovnik.cz</a>
</p>
</div>
<hr />
<footer id="footer"></footer>
<hr />
</div>
</body>
</html>