{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-guides/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["cards","card"]},"type":"markdown"},"seo":{"title":"Blockchain Basics - Keys, Addresses, Chains","projectTitle":"Vilna Docs","description":"Foundational blockchain concepts for developers integrating with Vilna. Learn about addresses, private keys, chain-specific formats, and BIP44.","siteUrl":"https://docs.vilna.io","keywords":["crypto asset management","blockchain monitoring","digital asset security","cryptocurrency API","wallet tracking","blockchain analytics","enterprise crypto","real-time blockchain","CAIP-19","BIP44"],"lang":"en-US","image":"https://cdn.vilna.io/docs/previews/guides.png","meta":[{"name":"og:type","content":"website"},{"name":"og:site_name","content":"Vilna Documentation"},{"name":"og:image:width","content":"1200"},{"name":"og:image:height","content":"630"},{"name":"twitter:card","content":"summary_large_image"}],"llmstxt":{"title":"Vilna API Documentation","description":"Vilna is a blockchain monitoring and wallet management platform. It provides a single unified REST API for tracking addresses, transactions, balances, and activity across top blockchains - Bitcoin, Ethereum, Solana, TRON, TON, Cosmos, and others. The API uses CAIP-2/CAIP-19 standards for cross-chain identification, HD wallet management (BIP-32/44) for address derivation, and RFC 7807 for error responses. Authentication is via API key in the X-Api-Key header.\n","excludeFiles":["legal/**/*.md","@l10n/**/*.md"],"sections":[{"title":"Overview","description":"What Vilna is, supported blockchains, and target audience","includeFiles":["overview.md"],"excludeFiles":[]},{"title":"Getting Started","description":"Quickstart guide and core API concepts","includeFiles":["guides/quickstart.md","guides/dashboard.md","guides/core-concepts.md","guides/authentication.md"],"excludeFiles":[]},{"title":"API Reference","description":"Platform API and Management API endpoint documentation","includeFiles":["apis/platform/index.md","apis/mgmt/index.md","apis/rpc/index.md","apis/platform/api.yaml","apis/mgmt/api.yaml"],"excludeFiles":[]},{"title":"Developer Guides","description":"Integration patterns, events, notifications, SDK, and error handling","includeFiles":["guides/events.md","guides/channels.md","guides/integration-patterns.md","guides/sdk.md","guides/mcp.md","guides/errors.md","guides/simulation.md","guides/invoices.md"],"excludeFiles":[]},{"title":"Business","description":"Value proposition, use cases, and onboarding","includeFiles":["business/index.md","business/use-cases.md"],"excludeFiles":[]},{"title":"Optional","description":"Additional reference material","includeFiles":["guides/blockchain-basics.md","guides/faq.md","apis/mgmt/guide.md","guides/widget.md","guides/storage-client.md","apis/platform/caip-standards.md","apis/mgmt/authorization.md"],"excludeFiles":[]}],"hide":false},"priority":0.5,"jsonLd":{"@context":"https://schema.org","@graph":[{"@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://docs.vilna.io/"},{"@type":"ListItem","position":2,"name":"Guides"},{"@type":"ListItem","position":3,"name":"Blockchain Basics"}]},{"@type":"TechArticle","headline":"Blockchain Basics - Keys, Addresses, Chains","description":"Foundational blockchain concepts for developers integrating with Vilna. Learn about addresses, private keys, chain-specific formats, and BIP44.","url":"https://docs.vilna.io/guides/blockchain-basics","datePublished":"2025-09-17","dateModified":"2026-05-26","proficiencyLevel":"Beginner","image":"https://cdn.vilna.io/docs/previews/guides.png","author":{"@id":"https://vilna.io/#organization"},"publisher":{"@id":"https://vilna.io/#organization"}}]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"blockchain-basics-for-developers","__idx":0},"children":["Blockchain basics for developers"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This page explains blockchain concepts you will encounter when integrating with the Vilna API. It is not a general blockchain tutorial - it covers only what you need to know to use Vilna effectively. If you already know how addresses, keys, and derivation paths work, skip ahead to ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/core-concepts"},"children":["Core Concepts"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"addresses---your-starting-point","__idx":1},"children":["Addresses - your starting point"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["An address is like a bank account number. It is the identifier where cryptocurrency is received. Every blockchain has its own address format, and the format tells you which network the address belongs to."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["EVM chains"]}," (Ethereum, Polygon, BSC, Arbitrum, Optimism, Base, Avalanche) all share one format: a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["0x"]}," prefix followed by 40 hexadecimal characters, for a total of 42 characters. The same address works across every EVM chain - if you have an Ethereum address, you can receive tokens on Polygon or Arbitrum with that same address. This is one of the key advantages of the EVM ecosystem."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Bitcoin"]}," has several address formats depending on the era and technology:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Format"},"children":["Format"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Starts with"},"children":["Starts with"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Example"},"children":["Example"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Legacy (P2PKH)"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Compatibility (P2SH)"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["3"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["3J98t1WpEZ73CNmQviecrnyiWrnqRhWNLy"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Native SegWit (P2WPKH)"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["bc1q"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf5mdq"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Taproot (P2TR)"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["bc1p"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["bc1p5d7rjq7g6rdk2yhzks9smlaqtedr4dekq08ge8ztwac72sfr9rusxg3s7p"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["TRON"]}," addresses start with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["T"]}," and are 34 characters long."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Solana"]}," addresses are base58-encoded strings, typically around 44 characters."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When you add an address to Vilna, you specify a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["chainFamily"]}," (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["evm"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["bitcoin"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["solana"]},", or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tron"]},") and the address format is auto-detected from the address value. The supported address formats are ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["evm"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["p2pkh"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["p2sh"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["p2wpkh"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["p2wsh"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["p2tr"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["solana"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tron"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"private-keys-and-public-keys","__idx":2},"children":["Private keys and public keys"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Think of a private key as the password to a bank account. Anyone who has it can spend the funds. A public key is derived from the private key using one-way mathematics - you can go from private to public, but never the reverse."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["An address is then derived from the public key. The full chain looks like this:"]},{"$$mdtype":"Tag","name":"Diagram","attributes":{"data-language":"mermaid","diagramType":"mermaid","diagramSource":"flowchart LR\n    PK[\"Private Key<br/>(secret)\"] --> PUB[\"Public Key<br/>(safe to share)\"]\n    PUB --> ADDR[\"Address<br/>(safe to share)\"]\n","diagramHtml":"<svg id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1\" width=\"100%\" xmlns=\"http://www.w3.org/2000/svg\" class=\"flowchart\" style=\"max-width: 589.578125px;\" viewBox=\"0 0 589.578125 94\" role=\"graphics-document document\" aria-roledescription=\"flowchart-v2\"><style>#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .error-icon{fill:#552222;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .error-text{fill:#552222;stroke:#552222;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .edge-thickness-normal{stroke-width:1px;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .edge-thickness-thick{stroke-width:3.5px;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .edge-pattern-solid{stroke-dasharray:0;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .edge-thickness-invisible{stroke-width:0;fill:none;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .edge-pattern-dashed{stroke-dasharray:3;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .edge-pattern-dotted{stroke-dasharray:2;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .marker{fill:#333333;stroke:#333333;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .marker.cross{stroke:#333333;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 svg{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 p{margin:0;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .label{font-family:\"Redocly Mermaid Sans\",sans-serif;color:#333;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .cluster-label text{fill:#333;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .cluster-label span{color:#333;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .cluster-label span p{background-color:transparent;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .label text,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 span{fill:#333;color:#333;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .node rect,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .node circle,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .node ellipse,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .node polygon,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .rough-node .label text,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .node .label text,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .image-shape .label,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .icon-shape .label{text-anchor:middle;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .rough-node .label,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .node .label,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .image-shape .label,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .icon-shape .label{text-align:center;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .node.clickable{cursor:pointer;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .arrowheadPath{fill:#333333;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .edgePath .path{stroke:#333333;stroke-width:1px;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .flowchart-link{stroke:#333333;fill:none;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .cluster text{fill:#333;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .cluster span{color:#333;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 rect.text{fill:none;stroke-width:0;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .icon-shape,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .icon-shape p,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .icon-shape .label rect,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 .node .neo-node{stroke:#9370DB;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 [data-look=\"neo\"].node rect,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 [data-look=\"neo\"].cluster rect,#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 [data-look=\"neo\"].node polygon{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 [data-look=\"neo\"].node path{stroke:#9370DB;stroke-width:1px;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 [data-look=\"neo\"].node .outer-path{filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 [data-look=\"neo\"].node .neo-line path{stroke:#9370DB;filter:none;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 [data-look=\"neo\"].node circle{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 [data-look=\"neo\"].node circle .state-start{fill:#000000;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 [data-look=\"neo\"].icon-shape .icon{fill:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 [data-look=\"neo\"].icon-shape .icon-neo path{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1 :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}</style><g><marker id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1_flowchart-v2-pointEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 0 L 10 5 L 0 10 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1_flowchart-v2-pointStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"4.5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 5 L 10 10 L 10 0 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1_flowchart-v2-pointEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"11.5\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"10.5\" markerHeight=\"14\" orient=\"auto\"><path d=\"M 0 0 L 11.5 7 L 0 14 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1_flowchart-v2-pointStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"1\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11.5\" markerHeight=\"14\" orient=\"auto\"><polygon points=\"0,7 11.5,14 11.5,0\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></polygon></marker><marker id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1_flowchart-v2-circleEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"11\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1_flowchart-v2-circleStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-1\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1_flowchart-v2-circleEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refY=\"5\" refX=\"12.25\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1_flowchart-v2-circleStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-2\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1_flowchart-v2-crossEnd\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"12\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1_flowchart-v2-crossStart\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"-1\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1_flowchart-v2-crossEnd-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"17.7\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5;\"></path></marker><marker id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1_flowchart-v2-crossStart-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"-3.5\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5; stroke-dasharray: 1, 0;\"></path></marker><g class=\"root\"><g class=\"clusters\"></g><g class=\"edgePaths\"><path d=\"M150.453,47L154.62,47C158.786,47,167.12,47,174.786,47C182.453,47,189.453,47,192.953,47L196.453,47\" id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1-L_PK_PUB_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_PK_PUB_0\" data-points=\"W3sieCI6MTUwLjQ1MzEyNSwieSI6NDd9LHsieCI6MTc1LjQ1MzEyNSwieSI6NDd9LHsieCI6MjAwLjQ1MzEyNSwieSI6NDd9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1_flowchart-v2-pointEnd)\"></path><path d=\"M366.016,47L370.182,47C374.349,47,382.682,47,390.349,47C398.016,47,405.016,47,408.516,47L412.016,47\" id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1-L_PUB_ADDR_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_PUB_ADDR_0\" data-points=\"W3sieCI6MzY2LjAxNTYyNSwieSI6NDd9LHsieCI6MzkxLjAxNTYyNSwieSI6NDd9LHsieCI6NDE2LjAxNTYyNSwieSI6NDd9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1_flowchart-v2-pointEnd)\"></path></g><g class=\"edgeLabels\"><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_PK_PUB_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_PUB_ADDR_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g></g><g class=\"nodes\"><g class=\"node default\" id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1-flowchart-PK-0\" data-look=\"classic\" transform=\"translate(79.2265625, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-71.2265625\" y=\"-39\" width=\"142.453125\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-41.2265625, -24)\"><rect></rect><foreignObject width=\"82.453125\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Private Key<br>(secret)</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1-flowchart-PUB-1\" data-look=\"classic\" transform=\"translate(283.234375, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-82.78125\" y=\"-39\" width=\"165.5625\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-52.78125, -24)\"><rect></rect><foreignObject width=\"105.5625\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Public Key<br>(safe to share)</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1-flowchart-ADDR-3\" data-look=\"classic\" transform=\"translate(498.796875, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-82.78125\" y=\"-39\" width=\"165.5625\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-52.78125, -24)\"><rect></rect><foreignObject width=\"105.5625\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Address<br>(safe to share)</p></span></div></foreignObject></g></g></g></g></g><defs><filter id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1-drop-shadow\" height=\"130%\" width=\"130%\"><feDropShadow dx=\"4\" dy=\"4\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#000000\"></feDropShadow></filter></defs><defs><filter id=\"diagram-2a979c32a3a061d2531aaea578f7c4ea23ba7a00c2c2c947c19aa16bcfe523c1-drop-shadow-small\" height=\"150%\" width=\"150%\"><feDropShadow dx=\"2\" dy=\"2\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#000000\"></feDropShadow></filter></defs></svg>","diagramHtmlDark":"<svg id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6\" width=\"100%\" xmlns=\"http://www.w3.org/2000/svg\" class=\"flowchart\" style=\"max-width: 589.578125px;\" viewBox=\"0 0 589.578125 94\" role=\"graphics-document document\" aria-roledescription=\"flowchart-v2\"><style>#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;fill:#ccc;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .error-icon{fill:#a44141;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .error-text{fill:#ddd;stroke:#ddd;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .edge-thickness-normal{stroke-width:1px;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .edge-thickness-thick{stroke-width:3.5px;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .edge-pattern-solid{stroke-dasharray:0;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .edge-thickness-invisible{stroke-width:0;fill:none;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .edge-pattern-dashed{stroke-dasharray:3;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .edge-pattern-dotted{stroke-dasharray:2;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .marker{fill:lightgrey;stroke:lightgrey;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .marker.cross{stroke:lightgrey;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 svg{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 p{margin:0;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .label{font-family:\"Redocly Mermaid Sans\",sans-serif;color:#ccc;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .cluster-label text{fill:#F9FFFE;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .cluster-label span{color:#F9FFFE;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .cluster-label span p{background-color:transparent;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .label text,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 span{fill:#ccc;color:#ccc;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .node rect,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .node circle,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .node ellipse,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .node polygon,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .node path{fill:#1f2020;stroke:#ccc;stroke-width:1px;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .rough-node .label text,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .node .label text,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .image-shape .label,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .icon-shape .label{text-anchor:middle;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .rough-node .label,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .node .label,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .image-shape .label,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .icon-shape .label{text-align:center;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .node.clickable{cursor:pointer;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .root .anchor path{fill:lightgrey!important;stroke-width:0;stroke:lightgrey;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .arrowheadPath{fill:lightgrey;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .edgePath .path{stroke:lightgrey;stroke-width:1px;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .flowchart-link{stroke:lightgrey;fill:none;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .edgeLabel{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .edgeLabel p{background-color:hsl(0, 0%, 34.4117647059%);}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .edgeLabel rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .labelBkg{background-color:rgba(87.75, 87.75, 87.75, 0.5);}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .cluster rect{fill:hsl(180, 1.5873015873%, 28.3529411765%);stroke:rgba(255, 255, 255, 0.25);stroke-width:1px;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .cluster text{fill:#F9FFFE;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .cluster span{color:#F9FFFE;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:12px;background:hsl(20, 1.5873015873%, 12.3529411765%);border:1px solid rgba(255, 255, 255, 0.25);border-radius:2px;pointer-events:none;z-index:100;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#ccc;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 rect.text{fill:none;stroke-width:0;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .icon-shape,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .image-shape{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .icon-shape p,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .image-shape p{background-color:hsl(0, 0%, 34.4117647059%);padding:2px;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .icon-shape .label rect,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .image-shape .label rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 .node .neo-node{stroke:#ccc;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 [data-look=\"neo\"].node rect,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 [data-look=\"neo\"].cluster rect,#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 [data-look=\"neo\"].node polygon{stroke:url(#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 [data-look=\"neo\"].node path{stroke:url(#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6-gradient);stroke-width:1px;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 [data-look=\"neo\"].node .outer-path{filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 [data-look=\"neo\"].node .neo-line path{stroke:#ccc;filter:none;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 [data-look=\"neo\"].node circle{stroke:url(#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 [data-look=\"neo\"].node circle .state-start{fill:#000000;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 [data-look=\"neo\"].icon-shape .icon{fill:url(#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 [data-look=\"neo\"].icon-shape .icon-neo path{stroke:url(#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6 :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}</style><g><marker id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6_flowchart-v2-pointEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 0 L 10 5 L 0 10 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6_flowchart-v2-pointStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"4.5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 5 L 10 10 L 10 0 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6_flowchart-v2-pointEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"11.5\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"10.5\" markerHeight=\"14\" orient=\"auto\"><path d=\"M 0 0 L 11.5 7 L 0 14 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6_flowchart-v2-pointStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"1\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11.5\" markerHeight=\"14\" orient=\"auto\"><polygon points=\"0,7 11.5,14 11.5,0\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></polygon></marker><marker id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6_flowchart-v2-circleEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"11\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6_flowchart-v2-circleStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-1\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6_flowchart-v2-circleEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refY=\"5\" refX=\"12.25\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6_flowchart-v2-circleStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-2\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6_flowchart-v2-crossEnd\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"12\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6_flowchart-v2-crossStart\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"-1\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6_flowchart-v2-crossEnd-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"17.7\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5;\"></path></marker><marker id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6_flowchart-v2-crossStart-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"-3.5\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5; stroke-dasharray: 1, 0;\"></path></marker><g class=\"root\"><g class=\"clusters\"></g><g class=\"edgePaths\"><path d=\"M150.453,47L154.62,47C158.786,47,167.12,47,174.786,47C182.453,47,189.453,47,192.953,47L196.453,47\" id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6-L_PK_PUB_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_PK_PUB_0\" data-points=\"W3sieCI6MTUwLjQ1MzEyNSwieSI6NDd9LHsieCI6MTc1LjQ1MzEyNSwieSI6NDd9LHsieCI6MjAwLjQ1MzEyNSwieSI6NDd9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6_flowchart-v2-pointEnd)\"></path><path d=\"M366.016,47L370.182,47C374.349,47,382.682,47,390.349,47C398.016,47,405.016,47,408.516,47L412.016,47\" id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6-L_PUB_ADDR_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_PUB_ADDR_0\" data-points=\"W3sieCI6MzY2LjAxNTYyNSwieSI6NDd9LHsieCI6MzkxLjAxNTYyNSwieSI6NDd9LHsieCI6NDE2LjAxNTYyNSwieSI6NDd9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6_flowchart-v2-pointEnd)\"></path></g><g class=\"edgeLabels\"><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_PK_PUB_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_PUB_ADDR_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g></g><g class=\"nodes\"><g class=\"node default\" id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6-flowchart-PK-0\" data-look=\"classic\" transform=\"translate(79.2265625, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-71.2265625\" y=\"-39\" width=\"142.453125\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-41.2265625, -24)\"><rect></rect><foreignObject width=\"82.453125\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Private Key<br>(secret)</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6-flowchart-PUB-1\" data-look=\"classic\" transform=\"translate(283.234375, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-82.78125\" y=\"-39\" width=\"165.5625\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-52.78125, -24)\"><rect></rect><foreignObject width=\"105.5625\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Public Key<br>(safe to share)</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6-flowchart-ADDR-3\" data-look=\"classic\" transform=\"translate(498.796875, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-82.78125\" y=\"-39\" width=\"165.5625\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-52.78125, -24)\"><rect></rect><foreignObject width=\"105.5625\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Address<br>(safe to share)</p></span></div></foreignObject></g></g></g></g></g><defs><filter id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6-drop-shadow\" height=\"130%\" width=\"130%\"><feDropShadow dx=\"4\" dy=\"4\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#FFFFFF\"></feDropShadow></filter></defs><defs><filter id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6-drop-shadow-small\" height=\"150%\" width=\"150%\"><feDropShadow dx=\"2\" dy=\"2\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#FFFFFF\"></feDropShadow></filter></defs><linearGradient id=\"diagram-b3ec42dd108e24eedd8ec08ad2e396489e7bdd1e9b9c8b3b5a0655d5131d02d6-gradient\" gradientUnits=\"objectBoundingBox\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\"><stop offset=\"0%\" stop-color=\"#cccccc\" stop-opacity=\"1\"></stop><stop offset=\"100%\" stop-color=\"hsl(180, 0%, 18.3529411765%)\" stop-opacity=\"1\"></stop></linearGradient></svg>"},"children":["flowchart LR\n    PK[\"Private Key<br/>(secret)\"] --> PUB[\"Public Key<br/>(safe to share)\"]\n    PUB --> ADDR[\"Address<br/>(safe to share)\"]\n"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The private key is the only piece that must remain secret. The public key and address can be shared freely."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Vilna never needs your private key."]}," To monitor addresses and track balances, Vilna only requires the public key or the address itself. When you import a public key into Vilna, you are giving it the ability to generate and watch addresses - not the ability to move funds."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For transaction signing, the Vilna Widget (in development, not yet available) will store the private key locally inside your browser extension. The key never leaves your device and is never sent to Vilna servers."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"hd-wallets-hierarchical-deterministic","__idx":3},"children":["HD wallets (Hierarchical Deterministic)"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Managing hundreds or thousands of individual private keys is impractical. HD wallets solve this by generating a tree of keys from a single master seed."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Here is the idea: you start with one secret (a seed phrase, typically 12 or 24 words). From that seed, the wallet can deterministically generate an unlimited number of key pairs. \"Deterministic\" means the same seed always produces the same keys in the same order."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"https://cdn.vilna.io/docs/hd-wallet-tree.svg","alt":"HD Wallet Tree - address derivation from master seed"},"children":[]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The practical benefit is significant. Instead of backing up thousands of keys, you back up one seed phrase. Instead of importing addresses one at a time, you import a single extended public key and generate addresses on demand."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This is exactly how exchanges and payment platforms work. They generate a unique deposit address for each customer, all derived from one master key."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"extended-public-keys-xpub-ypub-zpub","__idx":4},"children":["Extended public keys (xPub, yPub, zPub)"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["An extended public key is a special form of public key that can generate child addresses. There are three variants, each tied to a different address format:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Key prefix"},"children":["Key prefix"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Standard"},"children":["Standard"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Address type"},"children":["Address type"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["xPub"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["BIP-44"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Legacy addresses (starts with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1"]},")"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["yPub"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["BIP-49"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["SegWit-compatible addresses (starts with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["3"]},")"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["zPub"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["BIP-84"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Native SegWit addresses (starts with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["bc1q"]},")"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For Bitcoin Taproot (BIP-86), there is no widely adopted single-letter pub prefix. Use an xPub with derivation path ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["m/86'/0'/0'"]}," to generate Taproot addresses."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For EVM chains (Ethereum, Polygon, etc.), you use an xPub with BIP-44 derivation."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["These keys are safe to share with Vilna. An extended public key can only generate addresses and monitor balances. It cannot sign transactions or move funds."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When you import an xPub into Vilna with ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/apis/platform/api/public_key/create-public-key"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /public_keys"]}]},", you can then call ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/apis/platform/api/public_key/generate-next-public-key-address"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /public_keys/{public_key_id}/addresses/next"]}]}," to generate the next address in the sequence. Each new address is automatically registered for monitoring."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"derivation-paths","__idx":5},"children":["Derivation paths"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A derivation path is an instruction that tells the wallet which branch of the key tree to follow when generating addresses. Think of it as a folder path in a file system - it describes exactly where in the tree a particular key lives."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The format looks like this:"]},{"$$mdtype":"Tag","name":"Diagram","attributes":{"data-language":"mermaid","diagramType":"mermaid","diagramSource":"flowchart LR\n    M[\"m<br/>Root\"] --> P[\"purpose'<br/>44, 49, 84, 86\"]\n    P --> C[\"coin_type'<br/>0=BTC, 60=ETH\"]\n    C --> A[\"account'<br/>0, 1, 2...\"]\n    A --> CH[\"change<br/>0=external\"]\n    CH --> I[\"index<br/>0, 1, 2...\"]\n","diagramHtml":"<svg id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1\" width=\"100%\" xmlns=\"http://www.w3.org/2000/svg\" class=\"flowchart\" style=\"max-width: 1068.78125px;\" viewBox=\"0 0 1068.78125 94\" role=\"graphics-document document\" aria-roledescription=\"flowchart-v2\"><style>#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .error-icon{fill:#552222;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .error-text{fill:#552222;stroke:#552222;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .edge-thickness-normal{stroke-width:1px;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .edge-thickness-thick{stroke-width:3.5px;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .edge-pattern-solid{stroke-dasharray:0;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .edge-thickness-invisible{stroke-width:0;fill:none;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .edge-pattern-dashed{stroke-dasharray:3;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .edge-pattern-dotted{stroke-dasharray:2;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .marker{fill:#333333;stroke:#333333;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .marker.cross{stroke:#333333;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 svg{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 p{margin:0;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .label{font-family:\"Redocly Mermaid Sans\",sans-serif;color:#333;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .cluster-label text{fill:#333;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .cluster-label span{color:#333;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .cluster-label span p{background-color:transparent;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .label text,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 span{fill:#333;color:#333;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .node rect,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .node circle,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .node ellipse,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .node polygon,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .rough-node .label text,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .node .label text,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .image-shape .label,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .icon-shape .label{text-anchor:middle;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .rough-node .label,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .node .label,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .image-shape .label,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .icon-shape .label{text-align:center;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .node.clickable{cursor:pointer;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .arrowheadPath{fill:#333333;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .edgePath .path{stroke:#333333;stroke-width:1px;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .flowchart-link{stroke:#333333;fill:none;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .cluster text{fill:#333;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .cluster span{color:#333;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 rect.text{fill:none;stroke-width:0;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .icon-shape,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .icon-shape p,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .icon-shape .label rect,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 .node .neo-node{stroke:#9370DB;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 [data-look=\"neo\"].node rect,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 [data-look=\"neo\"].cluster rect,#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 [data-look=\"neo\"].node polygon{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 [data-look=\"neo\"].node path{stroke:#9370DB;stroke-width:1px;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 [data-look=\"neo\"].node .outer-path{filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 [data-look=\"neo\"].node .neo-line path{stroke:#9370DB;filter:none;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 [data-look=\"neo\"].node circle{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 [data-look=\"neo\"].node circle .state-start{fill:#000000;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 [data-look=\"neo\"].icon-shape .icon{fill:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 [data-look=\"neo\"].icon-shape .icon-neo path{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1 :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}</style><g><marker id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-pointEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 0 L 10 5 L 0 10 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-pointStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"4.5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 5 L 10 10 L 10 0 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-pointEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"11.5\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"10.5\" markerHeight=\"14\" orient=\"auto\"><path d=\"M 0 0 L 11.5 7 L 0 14 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-pointStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"1\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11.5\" markerHeight=\"14\" orient=\"auto\"><polygon points=\"0,7 11.5,14 11.5,0\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></polygon></marker><marker id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-circleEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"11\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-circleStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-1\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-circleEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refY=\"5\" refX=\"12.25\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-circleStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-2\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-crossEnd\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"12\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-crossStart\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"-1\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-crossEnd-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"17.7\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5;\"></path></marker><marker id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-crossStart-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"-3.5\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5; stroke-dasharray: 1, 0;\"></path></marker><g class=\"root\"><g class=\"clusters\"></g><g class=\"edgePaths\"><path d=\"M102.875,47L107.042,47C111.208,47,119.542,47,127.208,47C134.875,47,141.875,47,145.375,47L148.875,47\" id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1-L_M_P_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_M_P_0\" data-points=\"W3sieCI6MTAyLjg3NSwieSI6NDd9LHsieCI6MTI3Ljg3NSwieSI6NDd9LHsieCI6MTUyLjg3NSwieSI6NDd9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-pointEnd)\"></path><path d=\"M310.297,47L314.464,47C318.63,47,326.964,47,334.63,47C342.297,47,349.297,47,352.797,47L356.297,47\" id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1-L_P_C_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_P_C_0\" data-points=\"W3sieCI6MzEwLjI5Njg3NSwieSI6NDd9LHsieCI6MzM1LjI5Njg3NSwieSI6NDd9LHsieCI6MzYwLjI5Njg3NSwieSI6NDd9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-pointEnd)\"></path><path d=\"M532.188,47L536.354,47C540.521,47,548.854,47,556.521,47C564.188,47,571.188,47,574.688,47L578.188,47\" id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1-L_C_A_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_C_A_0\" data-points=\"W3sieCI6NTMyLjE4NzUsInkiOjQ3fSx7IngiOjU1Ny4xODc1LCJ5Ijo0N30seyJ4Ijo1ODIuMTg3NSwieSI6NDd9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-pointEnd)\"></path><path d=\"M705.141,47L709.307,47C713.474,47,721.807,47,729.474,47C737.141,47,744.141,47,747.641,47L751.141,47\" id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1-L_A_CH_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_A_CH_0\" data-points=\"W3sieCI6NzA1LjE0MDYyNSwieSI6NDd9LHsieCI6NzMwLjE0MDYyNSwieSI6NDd9LHsieCI6NzU1LjE0MDYyNSwieSI6NDd9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-pointEnd)\"></path><path d=\"M894.406,47L898.573,47C902.74,47,911.073,47,918.74,47C926.406,47,933.406,47,936.906,47L940.406,47\" id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1-L_CH_I_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_CH_I_0\" data-points=\"W3sieCI6ODk0LjQwNjI1LCJ5Ijo0N30seyJ4Ijo5MTkuNDA2MjUsInkiOjQ3fSx7IngiOjk0NC40MDYyNSwieSI6NDd9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1_flowchart-v2-pointEnd)\"></path></g><g class=\"edgeLabels\"><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_M_P_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_P_C_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_C_A_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_A_CH_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_CH_I_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g></g><g class=\"nodes\"><g class=\"node default\" id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1-flowchart-M-0\" data-look=\"classic\" transform=\"translate(55.4375, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-47.4375\" y=\"-39\" width=\"94.875\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-17.4375, -24)\"><rect></rect><foreignObject width=\"34.875\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>m<br>Root</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1-flowchart-P-1\" data-look=\"classic\" transform=\"translate(231.5859375, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-78.7109375\" y=\"-39\" width=\"157.421875\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-48.7109375, -24)\"><rect></rect><foreignObject width=\"97.421875\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>purpose'<br>44, 49, 84, 86</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1-flowchart-C-3\" data-look=\"classic\" transform=\"translate(446.2421875, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-85.9453125\" y=\"-39\" width=\"171.890625\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-55.9453125, -24)\"><rect></rect><foreignObject width=\"111.890625\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>coin_type'<br>0=BTC, 60=ETH</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1-flowchart-A-5\" data-look=\"classic\" transform=\"translate(643.6640625, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-61.4765625\" y=\"-39\" width=\"122.953125\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-31.4765625, -24)\"><rect></rect><foreignObject width=\"62.953125\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>account'<br>0, 1, 2...</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1-flowchart-CH-7\" data-look=\"classic\" transform=\"translate(824.7734375, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-69.6328125\" y=\"-39\" width=\"139.265625\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-39.6328125, -24)\"><rect></rect><foreignObject width=\"79.265625\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>change<br>0=external</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1-flowchart-I-9\" data-look=\"classic\" transform=\"translate(1002.59375, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-58.1875\" y=\"-39\" width=\"116.375\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-28.1875, -24)\"><rect></rect><foreignObject width=\"56.375\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>index<br>0, 1, 2...</p></span></div></foreignObject></g></g></g></g></g><defs><filter id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1-drop-shadow\" height=\"130%\" width=\"130%\"><feDropShadow dx=\"4\" dy=\"4\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#000000\"></feDropShadow></filter></defs><defs><filter id=\"diagram-60f42fc1e34fd0ded01d0756fb5c1bee55d02a67dbf9ced3ab77bdca21617cb1-drop-shadow-small\" height=\"150%\" width=\"150%\"><feDropShadow dx=\"2\" dy=\"2\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#000000\"></feDropShadow></filter></defs></svg>","diagramHtmlDark":"<svg id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e\" width=\"100%\" xmlns=\"http://www.w3.org/2000/svg\" class=\"flowchart\" style=\"max-width: 1068.78125px;\" viewBox=\"0 0 1068.78125 94\" role=\"graphics-document document\" aria-roledescription=\"flowchart-v2\"><style>#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;fill:#ccc;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .error-icon{fill:#a44141;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .error-text{fill:#ddd;stroke:#ddd;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .edge-thickness-normal{stroke-width:1px;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .edge-thickness-thick{stroke-width:3.5px;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .edge-pattern-solid{stroke-dasharray:0;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .edge-thickness-invisible{stroke-width:0;fill:none;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .edge-pattern-dashed{stroke-dasharray:3;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .edge-pattern-dotted{stroke-dasharray:2;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .marker{fill:lightgrey;stroke:lightgrey;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .marker.cross{stroke:lightgrey;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e svg{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e p{margin:0;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .label{font-family:\"Redocly Mermaid Sans\",sans-serif;color:#ccc;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .cluster-label text{fill:#F9FFFE;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .cluster-label span{color:#F9FFFE;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .cluster-label span p{background-color:transparent;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .label text,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e span{fill:#ccc;color:#ccc;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .node rect,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .node circle,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .node ellipse,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .node polygon,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .node path{fill:#1f2020;stroke:#ccc;stroke-width:1px;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .rough-node .label text,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .node .label text,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .image-shape .label,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .icon-shape .label{text-anchor:middle;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .rough-node .label,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .node .label,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .image-shape .label,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .icon-shape .label{text-align:center;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .node.clickable{cursor:pointer;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .root .anchor path{fill:lightgrey!important;stroke-width:0;stroke:lightgrey;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .arrowheadPath{fill:lightgrey;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .edgePath .path{stroke:lightgrey;stroke-width:1px;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .flowchart-link{stroke:lightgrey;fill:none;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .edgeLabel{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .edgeLabel p{background-color:hsl(0, 0%, 34.4117647059%);}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .edgeLabel rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .labelBkg{background-color:rgba(87.75, 87.75, 87.75, 0.5);}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .cluster rect{fill:hsl(180, 1.5873015873%, 28.3529411765%);stroke:rgba(255, 255, 255, 0.25);stroke-width:1px;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .cluster text{fill:#F9FFFE;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .cluster span{color:#F9FFFE;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:12px;background:hsl(20, 1.5873015873%, 12.3529411765%);border:1px solid rgba(255, 255, 255, 0.25);border-radius:2px;pointer-events:none;z-index:100;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#ccc;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e rect.text{fill:none;stroke-width:0;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .icon-shape,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .image-shape{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .icon-shape p,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .image-shape p{background-color:hsl(0, 0%, 34.4117647059%);padding:2px;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .icon-shape .label rect,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .image-shape .label rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e .node .neo-node{stroke:#ccc;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e [data-look=\"neo\"].node rect,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e [data-look=\"neo\"].cluster rect,#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e [data-look=\"neo\"].node polygon{stroke:url(#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e [data-look=\"neo\"].node path{stroke:url(#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-gradient);stroke-width:1px;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e [data-look=\"neo\"].node .outer-path{filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e [data-look=\"neo\"].node .neo-line path{stroke:#ccc;filter:none;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e [data-look=\"neo\"].node circle{stroke:url(#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e [data-look=\"neo\"].node circle .state-start{fill:#000000;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e [data-look=\"neo\"].icon-shape .icon{fill:url(#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e [data-look=\"neo\"].icon-shape .icon-neo path{stroke:url(#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}</style><g><marker id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-pointEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 0 L 10 5 L 0 10 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-pointStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"4.5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 5 L 10 10 L 10 0 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-pointEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"11.5\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"10.5\" markerHeight=\"14\" orient=\"auto\"><path d=\"M 0 0 L 11.5 7 L 0 14 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-pointStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"1\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11.5\" markerHeight=\"14\" orient=\"auto\"><polygon points=\"0,7 11.5,14 11.5,0\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></polygon></marker><marker id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-circleEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"11\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-circleStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-1\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-circleEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refY=\"5\" refX=\"12.25\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-circleStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-2\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-crossEnd\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"12\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-crossStart\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"-1\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-crossEnd-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"17.7\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5;\"></path></marker><marker id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-crossStart-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"-3.5\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5; stroke-dasharray: 1, 0;\"></path></marker><g class=\"root\"><g class=\"clusters\"></g><g class=\"edgePaths\"><path d=\"M102.875,47L107.042,47C111.208,47,119.542,47,127.208,47C134.875,47,141.875,47,145.375,47L148.875,47\" id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-L_M_P_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_M_P_0\" data-points=\"W3sieCI6MTAyLjg3NSwieSI6NDd9LHsieCI6MTI3Ljg3NSwieSI6NDd9LHsieCI6MTUyLjg3NSwieSI6NDd9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-pointEnd)\"></path><path d=\"M310.297,47L314.464,47C318.63,47,326.964,47,334.63,47C342.297,47,349.297,47,352.797,47L356.297,47\" id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-L_P_C_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_P_C_0\" data-points=\"W3sieCI6MzEwLjI5Njg3NSwieSI6NDd9LHsieCI6MzM1LjI5Njg3NSwieSI6NDd9LHsieCI6MzYwLjI5Njg3NSwieSI6NDd9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-pointEnd)\"></path><path d=\"M532.188,47L536.354,47C540.521,47,548.854,47,556.521,47C564.188,47,571.188,47,574.688,47L578.188,47\" id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-L_C_A_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_C_A_0\" data-points=\"W3sieCI6NTMyLjE4NzUsInkiOjQ3fSx7IngiOjU1Ny4xODc1LCJ5Ijo0N30seyJ4Ijo1ODIuMTg3NSwieSI6NDd9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-pointEnd)\"></path><path d=\"M705.141,47L709.307,47C713.474,47,721.807,47,729.474,47C737.141,47,744.141,47,747.641,47L751.141,47\" id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-L_A_CH_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_A_CH_0\" data-points=\"W3sieCI6NzA1LjE0MDYyNSwieSI6NDd9LHsieCI6NzMwLjE0MDYyNSwieSI6NDd9LHsieCI6NzU1LjE0MDYyNSwieSI6NDd9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-pointEnd)\"></path><path d=\"M894.406,47L898.573,47C902.74,47,911.073,47,918.74,47C926.406,47,933.406,47,936.906,47L940.406,47\" id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-L_CH_I_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_CH_I_0\" data-points=\"W3sieCI6ODk0LjQwNjI1LCJ5Ijo0N30seyJ4Ijo5MTkuNDA2MjUsInkiOjQ3fSx7IngiOjk0NC40MDYyNSwieSI6NDd9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e_flowchart-v2-pointEnd)\"></path></g><g class=\"edgeLabels\"><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_M_P_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_P_C_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_C_A_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_A_CH_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_CH_I_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g></g><g class=\"nodes\"><g class=\"node default\" id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-flowchart-M-0\" data-look=\"classic\" transform=\"translate(55.4375, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-47.4375\" y=\"-39\" width=\"94.875\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-17.4375, -24)\"><rect></rect><foreignObject width=\"34.875\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>m<br>Root</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-flowchart-P-1\" data-look=\"classic\" transform=\"translate(231.5859375, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-78.7109375\" y=\"-39\" width=\"157.421875\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-48.7109375, -24)\"><rect></rect><foreignObject width=\"97.421875\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>purpose'<br>44, 49, 84, 86</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-flowchart-C-3\" data-look=\"classic\" transform=\"translate(446.2421875, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-85.9453125\" y=\"-39\" width=\"171.890625\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-55.9453125, -24)\"><rect></rect><foreignObject width=\"111.890625\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>coin_type'<br>0=BTC, 60=ETH</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-flowchart-A-5\" data-look=\"classic\" transform=\"translate(643.6640625, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-61.4765625\" y=\"-39\" width=\"122.953125\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-31.4765625, -24)\"><rect></rect><foreignObject width=\"62.953125\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>account'<br>0, 1, 2...</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-flowchart-CH-7\" data-look=\"classic\" transform=\"translate(824.7734375, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-69.6328125\" y=\"-39\" width=\"139.265625\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-39.6328125, -24)\"><rect></rect><foreignObject width=\"79.265625\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>change<br>0=external</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-flowchart-I-9\" data-look=\"classic\" transform=\"translate(1002.59375, 47)\"><rect class=\"basic label-container\" style=\"\" x=\"-58.1875\" y=\"-39\" width=\"116.375\" height=\"78\"></rect><g class=\"label\" style=\"\" transform=\"translate(-28.1875, -24)\"><rect></rect><foreignObject width=\"56.375\" height=\"48\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>index<br>0, 1, 2...</p></span></div></foreignObject></g></g></g></g></g><defs><filter id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-drop-shadow\" height=\"130%\" width=\"130%\"><feDropShadow dx=\"4\" dy=\"4\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#FFFFFF\"></feDropShadow></filter></defs><defs><filter id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-drop-shadow-small\" height=\"150%\" width=\"150%\"><feDropShadow dx=\"2\" dy=\"2\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#FFFFFF\"></feDropShadow></filter></defs><linearGradient id=\"diagram-49e4db162e1ecd2528be3f55b2f6495bd569de9343ac2d15614209c96fd0cc6e-gradient\" gradientUnits=\"objectBoundingBox\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\"><stop offset=\"0%\" stop-color=\"#cccccc\" stop-opacity=\"1\"></stop><stop offset=\"100%\" stop-color=\"hsl(180, 0%, 18.3529411765%)\" stop-opacity=\"1\"></stop></linearGradient></svg>"},"children":["flowchart LR\n    M[\"m<br/>Root\"] --> P[\"purpose'<br/>44, 49, 84, 86\"]\n    P --> C[\"coin_type'<br/>0=BTC, 60=ETH\"]\n    C --> A[\"account'<br/>0, 1, 2...\"]\n    A --> CH[\"change<br/>0=external\"]\n    CH --> I[\"index<br/>0, 1, 2...\"]\n"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["m"]}," is the root (master key)"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["purpose"]}," identifies the standard (44, 49, 84, or 86)"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["coin_type"]}," identifies the blockchain (a number from the SLIP-44 registry)"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["account"]}," allows multiple accounts under one wallet (usually ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["0"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["'"]}," (apostrophe) after a number means \"hardened\" - a security feature that prevents child keys from being used to reverse-engineer the parent"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Here are the common paths you will encounter:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Path"},"children":["Path"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Blockchain"},"children":["Blockchain"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Standard"},"children":["Standard"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["m/44'/60'/0'"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Ethereum and all EVM chains"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["BIP-44"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["m/44'/0'/0'"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Bitcoin Legacy"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["BIP-44"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["m/49'/0'/0'"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Bitcoin SegWit-compatible"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["BIP-49"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["m/84'/0'/0'"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Bitcoin Native SegWit"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["BIP-84"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["m/86'/0'/0'"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Bitcoin Taproot"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["BIP-86"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["m/44'/195'/0'"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["TRON"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["BIP-44"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["m/44'/501'/0'"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Solana"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["BIP-44"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["coin_type"]}," numbers come from the SLIP-44 standard: 60 for Ethereum, 0 for Bitcoin, 195 for TRON, 501 for Solana."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Quick decision guide:"]}," If you are working with EVM chains, use ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["m/44'/60'/0'"]},". For Bitcoin, use ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["m/86'/0'/0'"]}," (Taproot) for the latest standard with the lowest fees, or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["m/84'/0'/0'"]}," (Native SegWit) for broader compatibility."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"how-to-get-your-xpub","__idx":6},"children":["How to get your xPub"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"from-hardware-wallets","__idx":7},"children":["From hardware wallets"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Ledger Live:"]}," Open an account, go to Advanced settings, and look for \"Extended Public Key.\""]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Trezor Suite:"]}," Open an account and select \"Show xPub.\""]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["MetaMask:"]}," MetaMask is an account-based wallet and does not support exporting an xPub. You can import individual addresses from MetaMask into Vilna as external addresses instead."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"programmatically-nodejs","__idx":8},"children":["Programmatically (Node.js)"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If you are generating wallets in code, you can derive the xPub like this:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"typescript","header":{"controls":{"copy":{}}},"source":"import { generateMnemonic, mnemonicToSeedSync } from \"bip39\";\nimport BIP32Factory from \"bip32\";\nimport * as ecc from \"tiny-secp256k1\";\n\nconst bip32 = BIP32Factory(ecc);\n\n// Generate a new wallet (store the mnemonic securely)\nconst mnemonic = generateMnemonic();\nconst seed = mnemonicToSeedSync(mnemonic);\nconst root = bip32.fromSeed(seed);\n\n// Derive the xPub for Ethereum (BIP-44, coin type 60)\nconst account = root.derivePath(\"m/44'/60'/0'\");\nconst xpub = account.neutered().toBase58();\n// xpub looks like: xpub6CUGRUonZSQ4TWtTMm...\n\n// Import this xPub into Vilna to generate addresses\n","lang":"typescript"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Store the mnemonic (seed phrase) securely and never expose it in code, logs, or version control. Vilna only needs the xPub."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"chain-families-in-vilna","__idx":9},"children":["Chain families in Vilna"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Vilna groups blockchains into families that share similar characteristics."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["EVM chains"]}," - Ethereum, BSC, Polygon, Arbitrum, Optimism, Base, Avalanche, and others. All use the same address format and transaction model. One EVM address works across all of them."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Bitcoin-like chains"]}," - Bitcoin, Litecoin, Dogecoin. These use the UTXO (Unspent Transaction Output) model and support multiple address formats. Each format has its own trade-offs in terms of fees and compatibility."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Solana"]}," - A unique address format and a different transaction model based on accounts rather than UTXOs."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["TRON"]}," - Similar to EVM internally but operates as a separate network with its own address format starting with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["T"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Vilna identifies each chain using CAIP-2 identifiers:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Identifier"},"children":["Identifier"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Chain"},"children":["Chain"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["eip155:1"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Ethereum"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["eip155:56"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["BNB Smart Chain"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["eip155:137"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Polygon"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["eip155:42161"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Arbitrum One"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["bip122:000000000019d6689c085ae165831e93"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Bitcoin"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Solana"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/core-concepts#blockchains-and-chain-ids-caip-2"},"children":["Core Concepts"]}," for the full list of supported chains."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"tokens-and-native-currencies","__idx":10},"children":["Tokens and native currencies"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Every blockchain has a native currency - the currency used to pay transaction fees and that exists without any smart contract. ETH on Ethereum, BTC on Bitcoin, SOL on Solana, TRX on TRON."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Tokens are additional currencies built on top of a blockchain using smart contracts. USDT, USDC, DAI, and thousands of others are all tokens. They piggyback on the underlying blockchain's infrastructure."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["On EVM chains, tokens follow standardized interfaces:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["ERC-20"]}," - fungible tokens (every unit is identical, like dollars)"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["ERC-721"]}," - non-fungible tokens (each one is unique, like serial-numbered items)"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["TRON has an equivalent standard called TRC-20."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Vilna identifies every asset - whether native or token - with a CAIP-19 identifier:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"eip155:1/slip44:60                                              - ETH on Ethereum\neip155:1/erc20:0xdAC17F958D2ee523a2206206994597C13D831ec7       - USDT on Ethereum\neip155:56/erc20:0x55d398326f99059fF775485246999027B3197955       - USDT on BSC\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Amounts in the API are always returned in two formats:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"base\": \"1500000000000000000\",\n  \"formatted\": \"1.5\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["base"]}," value is the raw amount in the token's smallest unit (like cents to dollars, but often with 18 decimal places). The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["formatted"]}," value is what a human would read. Use ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["base"]}," for calculations and storage; use ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["formatted"]}," for display."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"confirmations","__idx":11},"children":["Confirmations"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When someone sends a transaction, it does not become final immediately. Here is what happens:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The transaction is broadcast to the network and sits in a waiting area called the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["mempool"]},". At this point it is \"pending.\""]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["A miner or validator includes the transaction in a ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["block"]},". This is the first confirmation."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Each new block added to the chain after that block is an additional confirmation."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["More confirmations mean more certainty that the transaction will not be reversed. Different blockchains require different confirmation counts before a transaction is considered safe:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Chain"},"children":["Chain"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Typical confirmations needed"},"children":["Typical confirmations needed"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Bitcoin"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["~6"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Ethereum"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["~12"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["BSC"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["~15"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Polygon"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["~128"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Vilna tracks confirmation progress automatically. When you set up webhook notifications, Vilna will notify you when a transaction reaches the required confirmation threshold for its chain."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"whats-next","__idx":12},"children":["What's next"]},{"$$mdtype":"Tag","name":"Cards","attributes":{"columns":2,"cardMinWidth":240},"children":[{"$$mdtype":"Tag","name":"Card","attributes":{"title":"Quickstart","imagePosition":"start","iconPosition":"auto","layout":"vertical","align":"start","variant":"filled","to":"/guides/quickstart"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Make your first API call and monitor an address"]}]},{"$$mdtype":"Tag","name":"Card","attributes":{"title":"Core Concepts","imagePosition":"start","iconPosition":"auto","layout":"vertical","align":"start","variant":"filled","to":"/guides/core-concepts"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Vilna-specific terminology and API patterns"]}]},{"$$mdtype":"Tag","name":"Card","attributes":{"title":"Integration Patterns","imagePosition":"start","iconPosition":"auto","layout":"vertical","align":"start","variant":"filled","to":"/guides/integration-patterns"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Deposit detection, HD wallet management, and more"]}]},{"$$mdtype":"Tag","name":"Card","attributes":{"title":"Platform API","imagePosition":"start","iconPosition":"auto","layout":"vertical","align":"start","variant":"filled","to":"/apis/platform/"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Full endpoint documentation"]}]}]}]},"headings":[{"value":"Blockchain basics for developers","id":"blockchain-basics-for-developers","depth":1},{"value":"Addresses - your starting point","id":"addresses---your-starting-point","depth":2},{"value":"Private keys and public keys","id":"private-keys-and-public-keys","depth":2},{"value":"HD wallets (Hierarchical Deterministic)","id":"hd-wallets-hierarchical-deterministic","depth":2},{"value":"Extended public keys (xPub, yPub, zPub)","id":"extended-public-keys-xpub-ypub-zpub","depth":2},{"value":"Derivation paths","id":"derivation-paths","depth":2},{"value":"How to get your xPub","id":"how-to-get-your-xpub","depth":2},{"value":"From hardware wallets","id":"from-hardware-wallets","depth":3},{"value":"Programmatically (Node.js)","id":"programmatically-nodejs","depth":3},{"value":"Chain families in Vilna","id":"chain-families-in-vilna","depth":2},{"value":"Tokens and native currencies","id":"tokens-and-native-currencies","depth":2},{"value":"Confirmations","id":"confirmations","depth":2},{"value":"What's next","id":"whats-next","depth":2}],"frontmatter":{"seo":{"title":"Blockchain Basics - Keys, Addresses, Chains","description":"Foundational blockchain concepts for developers integrating with Vilna. Learn about addresses, private keys, chain-specific formats, and BIP44.","priority":0.5,"image":"https://cdn.vilna.io/docs/previews/guides.png","jsonLd":{"@context":"https://schema.org","@graph":[{"@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://docs.vilna.io/"},{"@type":"ListItem","position":2,"name":"Guides"},{"@type":"ListItem","position":3,"name":"Blockchain Basics"}]},{"@type":"TechArticle","headline":"Blockchain Basics - Keys, Addresses, Chains","description":"Foundational blockchain concepts for developers integrating with Vilna. Learn about addresses, private keys, chain-specific formats, and BIP44.","url":"https://docs.vilna.io/guides/blockchain-basics","datePublished":"2025-09-17","dateModified":"2026-05-26","proficiencyLevel":"Beginner","image":"https://cdn.vilna.io/docs/previews/guides.png","author":{"@id":"https://vilna.io/#organization"},"publisher":{"@id":"https://vilna.io/#organization"}}]}}},"lastModified":"2026-05-26T20:25:55.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/guides/blockchain-basics","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}