Deploy website

Deploy website version based on fd7bef3aa7
This commit is contained in:
Docusaurus bot 2022-09-06 17:58:01 +00:00
parent a30deed8be
commit 991787f2bf
111 changed files with 285 additions and 285 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -80,7 +80,7 @@ reason to keep using legacy transaction formats.</p>
<span class="hljs-keyword">val</span> privkey = <span class="hljs-type">ECPrivateKey</span>()
<span class="hljs-comment">// privkey: ECPrivateKey = Masked(ECPrivateKey)</span>
<span class="hljs-keyword">val</span> pubkey = privkey.publicKey
<span class="hljs-comment">// pubkey: org.bitcoins.crypto.ECPublicKey = ECPublicKey(02a2bbe0be4bb9f2f907f0134d7ba1870a4b8a53a382c1f985b13324cae0760e80)</span>
<span class="hljs-comment">// pubkey: org.bitcoins.crypto.ECPublicKey = ECPublicKey(023fcad78c5485aff5786ea0dd4bdd9864c09472cfa562d4b3191d2998e4213659)</span>
<span class="hljs-keyword">val</span> segwitAddress = {
<span class="hljs-comment">// see https://bitcoin.org/en/glossary/pubkey-script</span>
@ -89,10 +89,10 @@ reason to keep using legacy transaction formats.</p>
<span class="hljs-keyword">val</span> scriptPubKey = <span class="hljs-type">P2WPKHWitnessSPKV0</span>(pubkey)
<span class="hljs-type">Bech32Address</span>(scriptPubKey, <span class="hljs-type">TestNet3</span>)
}
<span class="hljs-comment">// segwitAddress: Bech32Address = tb1qwjxa82qqqfml04gjlvf9dnyz87g22ca0rgd5rh</span>
<span class="hljs-comment">// segwitAddress: Bech32Address = tb1qf4tjsupa4y9xf6wyazql8ewshmlf0f6p5snwxc</span>
println(segwitAddress.toString)
<span class="hljs-comment">// tb1qwjxa82qqqfml04gjlvf9dnyz87g22ca0rgd5rh</span>
<span class="hljs-comment">// tb1qf4tjsupa4y9xf6wyazql8ewshmlf0f6p5snwxc</span>
</code></pre>
<h2><a class="anchor" aria-hidden="true" id="generating-legacy-base58-addresses"></a><a href="#generating-legacy-base58-addresses" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Generating legacy (base58) addresses</h2>
<p>If you need to generate legacy addresses for backwards
@ -101,10 +101,10 @@ Take a look:</p>
<pre><code class="hljs css language-scala"><span class="hljs-comment">// we're reusing the same private/public key pair</span>
<span class="hljs-comment">// from before. don't do this in an actual application!</span>
<span class="hljs-keyword">val</span> legacyAddress = <span class="hljs-type">P2PKHAddress</span>(pubkey, <span class="hljs-type">TestNet3</span>)
<span class="hljs-comment">// legacyAddress: P2PKHAddress = mr9EabytssdhEns9mGbUFEZ7BRxxPawX9K</span>
<span class="hljs-comment">// legacyAddress: P2PKHAddress = mnZtjfbwQsAt5ZesAi8M3nkXRkpX4uemHv</span>
println(legacyAddress.toString)
<span class="hljs-comment">// mr9EabytssdhEns9mGbUFEZ7BRxxPawX9K</span>
<span class="hljs-comment">// mnZtjfbwQsAt5ZesAi8M3nkXRkpX4uemHv</span>
</code></pre>
</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/next/core/core-intro"><span class="arrow-prev"></span><span>Core Module</span></a><a class="docs-next button" href="/docs/next/core/hd-keys"><span>HD Key Generation</span><span class="arrow-next"></span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#generating-segwit-bech32-addresses">Generating SegWit (bech32) addresses</a></li><li><a href="#generating-legacy-base58-addresses">Generating legacy (base58) addresses</a></li></ul></nav></div><footer class="nav-footer" id="footer"><section class="sitemap"><a href="/" class="nav-home"><img src="/img/favicon.ico" alt="bitcoin-s" width="66" height="58"/></a><div><h5>Docs</h5><a href="/docs/en/getting-started">Getting Started</a><a href="/docs/en/core/core-intro">Guides</a><a href="/api/org/bitcoins">API Reference</a></div><div><h5>Community</h5><a href="/en/users.html">User Showcase</a><a href="https://join.slack.com/t/suredbits/shared_invite/zt-eavycu0x-WQL7XOakzQo8tAy7jHHZUw" target="_blank" rel="noreferrer noopener">Slack</a><a href="https://gitter.im/bitcoin-s-core/">Gitter chat</a></div><div><h5>More</h5><a href="https://github.com/bitcoin-s/bitcoin-s">GitHub</a><a class="github-button" href="https://github.com/bitcoin-s/bitcoin-s" data-icon="octicon-star" data-count-href="/bitcoin-s/bitcoin-s-core/stargazers" data-show-count="true" data-count-aria-label="# stargazers on GitHub" aria-label="Star this project on GitHub">Star</a></div></section><section class="copyright">Copyright © 2022 Suredbits &amp; the bitcoin-s developers</section></footer></div><script type="text/javascript" src="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.js"></script><script>
document.addEventListener('keyup', function(e) {

View file

@ -80,7 +80,7 @@ reason to keep using legacy transaction formats.</p>
<span class="hljs-keyword">val</span> privkey = <span class="hljs-type">ECPrivateKey</span>()
<span class="hljs-comment">// privkey: ECPrivateKey = Masked(ECPrivateKey)</span>
<span class="hljs-keyword">val</span> pubkey = privkey.publicKey
<span class="hljs-comment">// pubkey: org.bitcoins.crypto.ECPublicKey = ECPublicKey(02a2bbe0be4bb9f2f907f0134d7ba1870a4b8a53a382c1f985b13324cae0760e80)</span>
<span class="hljs-comment">// pubkey: org.bitcoins.crypto.ECPublicKey = ECPublicKey(023fcad78c5485aff5786ea0dd4bdd9864c09472cfa562d4b3191d2998e4213659)</span>
<span class="hljs-keyword">val</span> segwitAddress = {
<span class="hljs-comment">// see https://bitcoin.org/en/glossary/pubkey-script</span>
@ -89,10 +89,10 @@ reason to keep using legacy transaction formats.</p>
<span class="hljs-keyword">val</span> scriptPubKey = <span class="hljs-type">P2WPKHWitnessSPKV0</span>(pubkey)
<span class="hljs-type">Bech32Address</span>(scriptPubKey, <span class="hljs-type">TestNet3</span>)
}
<span class="hljs-comment">// segwitAddress: Bech32Address = tb1qwjxa82qqqfml04gjlvf9dnyz87g22ca0rgd5rh</span>
<span class="hljs-comment">// segwitAddress: Bech32Address = tb1qf4tjsupa4y9xf6wyazql8ewshmlf0f6p5snwxc</span>
println(segwitAddress.toString)
<span class="hljs-comment">// tb1qwjxa82qqqfml04gjlvf9dnyz87g22ca0rgd5rh</span>
<span class="hljs-comment">// tb1qf4tjsupa4y9xf6wyazql8ewshmlf0f6p5snwxc</span>
</code></pre>
<h2><a class="anchor" aria-hidden="true" id="generating-legacy-base58-addresses"></a><a href="#generating-legacy-base58-addresses" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Generating legacy (base58) addresses</h2>
<p>If you need to generate legacy addresses for backwards
@ -101,10 +101,10 @@ Take a look:</p>
<pre><code class="hljs css language-scala"><span class="hljs-comment">// we're reusing the same private/public key pair</span>
<span class="hljs-comment">// from before. don't do this in an actual application!</span>
<span class="hljs-keyword">val</span> legacyAddress = <span class="hljs-type">P2PKHAddress</span>(pubkey, <span class="hljs-type">TestNet3</span>)
<span class="hljs-comment">// legacyAddress: P2PKHAddress = mr9EabytssdhEns9mGbUFEZ7BRxxPawX9K</span>
<span class="hljs-comment">// legacyAddress: P2PKHAddress = mnZtjfbwQsAt5ZesAi8M3nkXRkpX4uemHv</span>
println(legacyAddress.toString)
<span class="hljs-comment">// mr9EabytssdhEns9mGbUFEZ7BRxxPawX9K</span>
<span class="hljs-comment">// mnZtjfbwQsAt5ZesAi8M3nkXRkpX4uemHv</span>
</code></pre>
</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/next/core/core-intro"><span class="arrow-prev"></span><span>Core Module</span></a><a class="docs-next button" href="/docs/next/core/hd-keys"><span>HD Key Generation</span><span class="arrow-next"></span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#generating-segwit-bech32-addresses">Generating SegWit (bech32) addresses</a></li><li><a href="#generating-legacy-base58-addresses">Generating legacy (base58) addresses</a></li></ul></nav></div><footer class="nav-footer" id="footer"><section class="sitemap"><a href="/" class="nav-home"><img src="/img/favicon.ico" alt="bitcoin-s" width="66" height="58"/></a><div><h5>Docs</h5><a href="/docs/en/getting-started">Getting Started</a><a href="/docs/en/core/core-intro">Guides</a><a href="/api/org/bitcoins">API Reference</a></div><div><h5>Community</h5><a href="/en/users.html">User Showcase</a><a href="https://join.slack.com/t/suredbits/shared_invite/zt-eavycu0x-WQL7XOakzQo8tAy7jHHZUw" target="_blank" rel="noreferrer noopener">Slack</a><a href="https://gitter.im/bitcoin-s-core/">Gitter chat</a></div><div><h5>More</h5><a href="https://github.com/bitcoin-s/bitcoin-s">GitHub</a><a class="github-button" href="https://github.com/bitcoin-s/bitcoin-s" data-icon="octicon-star" data-count-href="/bitcoin-s/bitcoin-s-core/stargazers" data-show-count="true" data-count-aria-label="# stargazers on GitHub" aria-label="Star this project on GitHub">Star</a></div></section><section class="copyright">Copyright © 2022 Suredbits &amp; the bitcoin-s developers</section></footer></div><script type="text/javascript" src="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.js"></script><script>
document.addEventListener('keyup', function(e) {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -86,13 +86,13 @@ use that to generate further private and public keys:</p>
<span class="hljs-comment">// how long our phrase ends up being</span>
<span class="hljs-comment">// 256 bits of entropy results in 24 words</span>
<span class="hljs-keyword">val</span> entropy: <span class="hljs-type">BitVector</span> = <span class="hljs-type">MnemonicCode</span>.getEntropy256Bits
<span class="hljs-comment">// entropy: BitVector = BitVector(256 bits, 0x30bd50b7c62b1f395cb829a31eca6a150c4932ff2e65f13247a8fe960fb0339a)</span>
<span class="hljs-comment">// entropy: BitVector = BitVector(256 bits, 0x219be3f026aedd595a5318bcec95a99f5ef2ecd1ef914fccdd56cae01c63e433)</span>
<span class="hljs-keyword">val</span> mnemonicCode = <span class="hljs-type">MnemonicCode</span>.fromEntropy(entropy)
<span class="hljs-comment">// mnemonicCode: MnemonicCode = Masked(MnemonicCodeImpl)</span>
mnemonicCode.words <span class="hljs-comment">// the phrase the user should write down</span>
<span class="hljs-comment">// res0: Vector[String] = Vector(cost, tunnel, combine, middle, rapid, original, indicate, ahead, perfect, wagon, once, claw, setup, offer, witness, smile, van, mutual, tuition, wood, genius, submit, solar, garlic) // the phrase the user should write down</span>
<span class="hljs-comment">// res0: Vector[String] = Vector(canoe, tenant, winter, essence, universe, protect, harsh, glide, rude, gorilla, heavy, dirt, upset, island, element, vendor, exist, group, fiber, noise, achieve, cradle, move, lava) // the phrase the user should write down</span>
<span class="hljs-comment">// the password argument is an optional, extra security</span>
<span class="hljs-comment">// measure. all MnemonicCode instances will give you a</span>
@ -108,7 +108,7 @@ mnemonicCode.words <span class="hljs-comment">// the phrase the user should writ
bip39Seed)
<span class="hljs-comment">// xpriv: ExtPrivateKey = Masked(ExtPrivateKeyImpl)</span>
<span class="hljs-keyword">val</span> xpub = xpriv.extPublicKey
<span class="hljs-comment">// xpub: ExtPublicKey = zpub6jftahH18ngZwmMmNzWU6dPSfDRiLCHfWEJWqiYVf4MRSZU6N3YzbxM7SN46b7BHaE8v8H4ygNxT3v1Z2xV7vNDHUZj54gzySC1PL1N1UWC</span>
<span class="hljs-comment">// xpub: ExtPublicKey = zpub6jftahH18ngZxyZPSpTMZpATfenerQHrZbxY3jcotUrvwQzHGdXKs2HUhbCpEkfv3AChAuZJwtJr8735WxMFtYgMbzXxHed7GZLknKGxEUr</span>
<span class="hljs-comment">// you can now use the generated xpriv to derive further</span>
<span class="hljs-comment">// private or public keys</span>
@ -154,7 +154,7 @@ spend or steal any of your money.</p>
<span class="hljs-comment">// can generate addresses with it!</span>
accountXpriv.extPublicKey
}
<span class="hljs-comment">// accountXpub: ExtPublicKey = zpub6qXLq1EPUyws3ZACaBpduFbfoH2f1nnZCW6EdPF3iF2RfWPn8WGJDbDwD7NRetwtLzfDfnrSyrTGCpdpNvRXQ3uAVUPuKYGTsLchH9EhRFQ</span>
<span class="hljs-comment">// accountXpub: ExtPublicKey = zpub6rgvNTBUSXt19BossbZfYvXu7ZPwph8NAgX5ZSQKi2BJXyayDUefcoqwP6eGrG16jAyaNrzQHjm6ni8f74KZYS5fNSy6Ab4xQLrWrouWrHx</span>
<span class="hljs-comment">// address no. 0 ---------------┐</span>
<span class="hljs-comment">// external address ----------┐ |</span>
@ -177,12 +177,12 @@ spend or steal any of your money.</p>
<span class="hljs-keyword">val</span> scriptPubKey = <span class="hljs-type">P2WPKHWitnessSPKV0</span>(pubkey)
<span class="hljs-type">Bech32Address</span>(scriptPubKey, <span class="hljs-type">TestNet3</span>)
}
<span class="hljs-comment">// firstAccountAddress: Bech32Address = tb1qn94peq6ujt830wu98eg83shlm5tp4w55649yuq</span>
<span class="hljs-comment">// firstAccountAddress: Bech32Address = tb1q2yq8knlmhp87lu76cl8mj9dlg330vn2nk9h6gj</span>
<span class="hljs-comment">// tada! We just generated an address you can send money to,</span>
<span class="hljs-comment">// without having access to the private key!</span>
firstAccountAddress.value
<span class="hljs-comment">// res2: String = tb1qn94peq6ujt830wu98eg83shlm5tp4w55649yuq</span>
<span class="hljs-comment">// res2: String = tb1q2yq8knlmhp87lu76cl8mj9dlg330vn2nk9h6gj</span>
<span class="hljs-comment">// you can now continue deriving addresses from the same public</span>
<span class="hljs-comment">// key, by imitating what we did above. To get the next</span>

Some files were not shown because too many files have changed in this diff Show more