Matematika_Bitcoinu


Matematika-bitcoinu2

aneb Matematické principy Bitcoinové revoluce

(jasně že to má být správně „matematické principy bitcoinové revoluce“. ale…)


lorem

Github: https://github.com/agama-point/the_mathematics_of_Bitcoin
https://www.agamapoint.com/crypto_byte_26/


Aktuality

Tento obrázek nemá vyplněný atribut alt; název souboru je donio2511.jpg.

21.11.2025 | https://donio.cz/matematika-bitcoinu-manuscript


Další pododkazy:
https://www.agamapoint.com/apa/

https://www.agamapoint.com/mb_workshop/
https://www.agamapoint.com/the_matematics_of_bitcoin/explanations/

https://www.agamapoint.com/bitcoin


https://www.agamapoint.com/mb1_revize26/
https://www.agamapoint.com/bit%c2%b7block%c2%b7rithm/

https://www.podmorskysvet.cz/testgame
https://www.podmorskysvet.cz/testgame/osc_sphere.html


p = 115792089237316195423570985008687907852837564279074904382605163141518161494337

je prvočíslo. ✔️

Používá se jako modul v eliptické křivce secp256k1,
která je definována právě nad konečným tělesem 𝔽ₚ, a proto musí být p prvočíslo, aby vzniklo těleso (ne jen okruh).

Toto p má speciální tvar:p=2256−232−977p = 2^{256} – 2^{32} – 977p=2256−232−977

Tento tvar je zvolen kvůli rychlé aritmetice modulo p (efektivní redukce). ⚙️

Modulus používaný v secp256k1

má tvarp=2256−232−977p = 2^{256} – 2^{32} – 977p=2256−232−977

To umožňuje rychlou redukci modulo p, protože každé číslo větší než 22562^{256}2256 lze přepsat pomocí identity

2256≡232+977(modp)2^{256} \equiv 2^{32} + 977 \pmod{p}2256≡232+977(modp)

To plyne přímo z definice p:p=2256−232−977=0(modp)p = 2^{256} – 2^{32} – 977 = 0 \pmod{p}p=2256−232−977=0(modp)

tedy2256=232+977(modp)2^{256} = 2^{32} + 977 \pmod{p}2256=232+977(modp)


Jak se používá při redukci

Mějme číslo větší než 256 bitů, např.x=a⋅2256+bx = a \cdot 2^{256} + bx=a⋅2256+b

pak modulo p:x≡a(232+977)+bx \equiv a(2^{32}+977) + bx≡a(232+977)+b

tedy x ≡ a ⋅ 232 + 977 a + b

→ místo dělení modulo p stačí

sčítání

posun o 32 bitů

pár násobení