27 / 736ADDR

Bitcoinová adresa

Údaj pro příjem platby, ne bankovní účet

Adresu z peněženky předáte tomu, kdo vám chce zaplatit bitcoinem. Jak ji bezpečně použít, proč se při dalším příjmu mění a co vám sama neřekne o příjemci?

Bitcoinová adresa je údaj pro příjem platby. Peněženka odesílatele z ní zjistí, jak má platbu připravit, aby ji mohl později utratit příjemce za příslušných podmínek. Adresu můžete předat plátci; není to tajný klíč ani záloha peněženky.

Bobovi má přijít platba od Alice. Ve své peněžence otevře Přijmout, zkontroluje zobrazenou adresu a pošle jí ji jako text nebo QR kód. Alice ji načte do své peněženky a před odesláním ověří příjemce i částku. Nemusí přitom rozumět jednotlivým znakům adresy: jejich význam zpracuje aplikace. Peněženka z adresy sestaví podmínku, kterou bude nutné splnit při pozdějším utracení peněz, obvykle pomocí podpisu správným soukromým klíčem. Tato podmínka se v transakci zapisuje jako skript zvaný scriptPubKey. Záznam obsahuje částku a skript, nikoli běžný text adresy. Proto je adresa praktický způsob předání platebních údajů, ne schránka, ve které by byly uložené mince. [1] [3]

Dlouhou adresu raději kopírujte nebo načtěte QR kódem, než abyste ji přepisovali. Tím ale kontrola nekončí. Škodlivý program může ve schránce zaměnit správnou adresu za jinou. Porovnejte celý údaj s adresou získanou od příjemce důvěryhodnou cestou; máte-li Hardware Wallet, ověřte jej i na jejím vlastním displeji. Začátek a konec nestačí, protože podvodná adresa je může napodobit. Adresy obsahují kontrolní součet, tedy pomůcku k odhalení překlepů. Ten neumí poznat, zda správně zapsaná adresa patří zamýšlenému člověku. Peněženka také musí podporovat příslušný formát a síť. Malá zkušební platba může pomoci, ale nenahrazuje kontrolu adresy při dalším převodu. Potvrzený převod na chybnou, přesto platnou adresu nelze v protokolu jednoduše stornovat. [2] [7] [8] [18]

Při příštím otevření tlačítka Přijmout může Bob uvidět jinou adresu. Není to známka zmizelých peněz. Nová přijímací adresa pomáhá soukromí: kdo zná jednu zveřejněnou adresu, může v blockchainu sledovat platby k ní, ale neměl by tím automaticky získat přehled o všech příjmech peněženky. Opakované používání stejné adresy toto propojení usnadňuje. Ani nové adresy ovšem nezaručují anonymitu; další souvislosti mohou odhalit pozdější transakce. Adresa se dá sdílet pro příjem, přesto není rozumné zveřejňovat ji bez rozmyslu. A jedna adresa neznamená jednoho člověka: prostředky může spravovat více lidí společně nebo služba pro své zákazníky. [1] [14]

Peněženka spravuje klíče, vyhledává platby, které umí utratit, a ukazuje jejich součet. Tento zůstatek tak může pocházet z mnoha adres. Běžná HD Wallet vytváří celé rodiny klíčů ze společného základu; nová adresa proto neznamená, že si zakládáte další peněženku. Při placení si aplikace může také poslat nevyužitý zbytek na vlastní adresu pro vrácení částky, označovanou Change Address. Samotné adresy však k obnově nestačí. Záloha musí umožnit obnovit potřebné klíče a pravidla jejich použití. U řady peněženek k tomu slouží Seed Phrase, tedy obnovovací slova; složitější nastavení může potřebovat další informace. Plátce tato slova ani soukromé klíče nikdy nepotřebuje. [10] [14]

QR kód je pouze způsob zápisu údajů. Může nést samotnou adresu, ale také platební požadavek začínající bitcoin:, který doplní částku, označení příjemce nebo zprávu. Tento způsob popisoval BIP21 a rozšiřuje jej BIP321. Před potvrzením proto zkontrolujte, co peněženka skutečně načetla. Požadavky pro Lightning Network, například invoice určená pro jednu platbu či offer, ze kterého lze opakovaně vyžádat novou invoice, využívají jiný platební postup; Lightning Address zase zjednodušuje vyžádání takové platby. Některé požadavky nabídnou více způsobů úhrady. Podobně ani digitální podpis zprávy není automatické potvrzení totožnosti: BIP322 umožňuje prokázat splnění podmínek daného skriptu, ale sám neprokazuje právní identitu ani souhlas s libovolnou fakturou. [15] [16] [17]

Base58Check spojí verzový bajt s datovou částí označovanou jako payload. Přidá první čtyři bajty SHA256(SHA256(version || payload)) a výsledek zapíše abecedou Base58. Na mainnetu znamená 0x00 formát P2PKH a 0x05 formát P2SH; proto adresy obvykle začínají 1 nebo 3. Testovací sítě používají jiné verze. Abeceda vynechává snadno zaměnitelné 0, O, I a l. Tento 32bitový checksum odhalí mnoho překlepů, ale nepotvrzuje totožnost příjemce. [2] [3]

Nativní segwitový zápis obsahuje prefix bc pro mainnet či tb pro testnet, oddělovač 1, witness verzi a data rozdělená do skupin po 5 bitech. Na konci je 6 znaků kontrolního součtu. BIP173 zavedl Bech32; po odhalení slabiny při některých vloženích a smazáních BIP350 ponechal Bech32 pro verzi 0 a určil Bech32m pro verze 1–16. Zápis smí být celý malými nebo celý velkými písmeny, nikdy směsí obojího. Limit kódování je 90 znaků. I platný zápis může patřit jiné síti či nepodporované verzi. [7] [8]

P2PKH a P2WPKH odkazují na 20bajtový HASH160 veřejného klíče. P2SH používá HASH160 skriptu redeemScript, zatímco P2WSH SHA256 skriptu witnessScript. SegWit v0 tedy rozeznává 20bajtový P2WPKH a 32bajtový P2WSH. P2TR podle BIP341 je jiný: jeho program verze 1 obsahuje 32bajtový upravený x-only výstupní klíč Q, nikoli hash obyčejného přijímacího klíče. Do Q se může promítnout i kořen stromu dalších skriptů, čímž je klíč kryptograficky propojen s těmito podmínkami utracení. Z adresy samotné proto nevyčtete všechny možnosti utracení. [6] [9]

První bitcoinové výstupy často platily přímo na veřejný klíč. P2PKH jeho zveřejnění odložil do utracení. BIP13 a BIP16 umožnily pomocí P2SH předávat hash složitějšího skriptu. BIP141 přidal verzované witness programy, BIP173 Bech32 a BIP341 s BIP350 formát Taproot s Bech32m. Za rozdílným vzhledem jsou tedy rozdílné podmínky ověření. Adresu ručně „nepřevádějte“ výměnou prefixu: můžete vytvořit jiný nebo neutratitelný výstup. Některé nestandardní skripty a rané výstupy pay-to-pubkey běžnou kanonickou adresu vůbec nemají. [4] [5] [6] [7] [8] [9] [3]

HD Wallet podle BIP32 odvozuje mnoho klíčů ze společného kořene. Cesty odlišují typ výstupu: BIP44 používá účel 44' pro P2PKH, BIP84 účel 84' pro P2WPKH a BIP86 účel 86' pro jednoklíčový P2TR. Pak následuje typ mince označovaný coin type, účet, přijímací či change větev a index adresy. Samotná Seed Phrase nemusí určit všechny cesty, účty a pravidla Multisig. Output Descriptor uchová i původ klíčů a konstrukci skriptu. Obnova musí najít skutečné prostředky, nestačí znovu zobrazit jednu známou adresu. [10] [11] [12] [13] [14]

U P2PKH a P2WPKH bývá zpočátku vidět hash klíče; při utracení se zveřejní veřejný klíč. P2SH a P2WSH odhalí použitý redeemScript nebo witnessScript. Taproot už ve výstupu nese upravený veřejný klíč. Při key-path spend se běžně přidá Schnorr Signature, zatímco script-path spend odhalí vybraný skript, control block a Merkleovu cestu; nepoužité větve mohou zůstat skryté. Tvrzení, že každá adresa skrývá veřejný klíč, proto neplatí. [6] [9]

Pro nejúplnější obraz čtěte toto heslo společně s Private Key, Peněženka, Change Address, Bitcoin, SegWit, Taproot. Opačným směrem na něj odkazují také Hash, SHA-256, Cold Storage, Watch-only Wallet.

01Je bitcoinová adresa číslem účtu?

Ne. Adresa říká peněžence odesílatele, jak připravit platbu pro příjemce. Podmínka jejího pozdějšího utracení se v transakci zapisuje jako scriptPubKey. Jedna peněženka může spravovat mnoho adres a adresa sama neprokazuje totožnost člověka.

02Mohu bitcoinovou adresu bezpečně používat opakovaně?

Technicky může starší adresa dál přijímat platby, pokud stále ovládáte potřebné klíče a umíte splnit její podmínky. Nová adresa ji nezneplatní. Opakování ale propojuje příjmy, proto pro další platbu používejte novou adresu z peněženky. U vkladů do služby se řiďte jejími aktuálními pokyny.

DOC · 001Bitcoin whitepaper — Transactions and PrivacyPrimární zdroj DOC · 002Bitcoin Core — Base58Check implementationPrimární zdroj DOC · 003Bitcoin Core — destination encoders and decodersPrimární zdroj DOC · 004BIP 13 — Address Format for pay-to-script-hashSpecifikace DOC · 005BIP 16 — Pay to Script HashSpecifikace DOC · 006BIP 141 — Segregated Witness consensus layerSpecifikace DOC · 007BIP 173 — Base32 address format for native v0-16 witness outputsSpecifikace DOC · 008BIP 350 — Bech32m format for witness v1 and laterSpecifikace DOC · 009BIP 341 — Taproot validation and output keysSpecifikace DOC · 010BIP 32 — Hierarchical deterministic walletsSpecifikace DOC · 011BIP 44 — Multi-account hierarchySpecifikace DOC · 012BIP 84 — Derivation for native P2WPKHSpecifikace DOC · 013BIP 86 — Derivation for single-key P2TRSpecifikace DOC · 014Bitcoin Core — Output descriptorsDokumentace DOC · 015BIP 21 — URI schemeSpecifikace DOC · 016BIP 322 — Generic signed message formatSpecifikace DOC · 017BIP 321 — URI schemePrimární zdroj DOC · 018Trezor — verify every address on your deviceDokumentace
Revidováno: Primární zdroje · Nejde o investiční doporučení