2021-10-17 13:36:48 +00:00
<!DOCTYPE html> < html lang = "en" > < head > < meta charSet = "utf-8" / > < meta http-equiv = "X-UA-Compatible" content = "IE=edge" / > < title > Wallet Price Example · bitcoin-s< / title > < meta name = "viewport" content = "width=device-width, initial-scale=1.0" / > < meta name = "generator" content = "Docusaurus" / > < meta name = "description" content = "This is a developer example to show to how build a" / > < meta name = "docsearch:version" content = "next" / > < meta name = "docsearch:language" content = "en" / > < meta property = "og:title" content = "Wallet Price Example · bitcoin-s" / > < meta property = "og:type" content = "website" / > < meta property = "og:url" content = "https://bitcoin-s.org/" / > < meta property = "og:description" content = "This is a developer example to show to how build a" / > < meta property = "og:image" content = "https://bitcoin-s.org/img/undraw_online.svg" / > < meta name = "twitter:card" content = "summary" / > < meta name = "twitter:image" content = "https://bitcoin-s.org/img/undraw_tweetstorm.svg" / > < link rel = "shortcut icon" href = "/img/favicon.ico" / > < link rel = "stylesheet" href = "https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css" / > < link rel = "stylesheet" href = "//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/default.min.css" / > < script >
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-61958686-2', 'auto');
ga('send', 'pageview');
2022-03-16 14:17:59 +00:00
< / script > < link rel = "stylesheet" href = "/css/code-block-buttons.css" / > < script type = "text/javascript" src = "https://buttons.github.io/buttons.js" > < / script > < script type = "text/javascript" src = "https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js" > < / script > < script type = "text/javascript" src = "https://fonts.googleapis.com/css?family=Montserrat:500" > < / script > < script type = "text/javascript" src = "https://www.googletagmanager.com/gtag/js?id=UA-61958686-2" > < / script > < script type = "text/javascript" src = "/js/code-block-buttons.js" > < / script > < script src = "/js/scrollSpy.js" > < / script > < link rel = "stylesheet" href = "/css/main.css" / > < script src = "/js/codetabs.js" > < / script > < / head > < body class = "sideNavVisible separateOnPageNav" > < div class = "fixedHeaderContainer" > < div class = "headerWrapper wrapper" > < header > < a href = "/" > < img class = "logo" src = "/img/favicon.ico" alt = "bitcoin-s" / > < h2 class = "headerTitleWithLogo" > bitcoin-s< / h2 > < / a > < a href = "/versions" > < h3 > next< / h3 > < / a > < div class = "navigationWrapper navigationSlider" > < nav class = "slidingNav" > < ul class = "nav-site nav-site-internal" > < li class = "siteNavGroupActive" > < a href = "/docs/next/core/core-intro" target = "_self" > Docs< / a > < / li > < li class = "" > < a href = "/download" target = "_self" > Download< / a > < / li > < li class = "" > < a href = "/api/org/bitcoins" target = "_self" > API< / a > < / li > < li class = "" > < a href = "/help" target = "_self" > Help< / a > < / li > < li class = "navSearchWrapper reactNavSearchWrapper" > < input type = "text" id = "search_input_react" placeholder = "Search" title = "Search" / > < / li > < / ul > < / nav > < / div > < / header > < / div > < / div > < div class = "navPusher" > < div class = "docMainWrapper wrapper" > < div class = "docsNavContainer" id = "docsNav" > < nav class = "toc" > < div class = "toggleNav" > < section class = "navWrapper wrapper" > < div class = "navBreadcrumb wrapper" > < div class = "navToggle" id = "navToggler" > < div class = "hamburger-menu" > < div class = "line1" > < / div > < div class = "line2" > < / div > < div class = "line3" > < / div > < / div > < / div > < h2 > < i > › < / i > < span > Wallet< / span > < / h2 > < div class = "tocToggler" id = "tocToggler" > < i class = "icon-toc" > < / i > < / div > < / div > < div class = "navGroups" > < div class = "navGroup" > < h3 class = "navGroupCategoryTitle" > Getting Started< / h3 > < ul class = "" > < li class = "navListItem" > < a class = "navItem" href = "/docs/next/getting-started" > Intro and Getting Started< / a > < / li > < li class = "navListItem" > < a class = "navItem" href = "/docs/next/bips" > Supported BIPs< / a > < / li > < / ul > < / div > < div class = "navGroup" > < h3 class = "navGroupCategoryTitle" > Getting Setup< / h3 > < ul class = "" > < li class = "navListItem" > < a class = "navItem" href = "/docs/next/getting-setup" > Getting Bitcoin-S installed on your machine< / a > < / li > < li class = "navListItem" > < a class = "navItem" href = "/docs/next/ui-setup" > Installing the DLC Wallet UI< / a > < / li > < / ul > < / div > < div class = "navGroup" > < h3 class = "navGroupCategoryTitle" > Applications< / h3 > < ul class = "" > < li class = "navListItem" > < a class = "navItem" href = "/docs/next/applications/cli" > CLI< / a > < / li > < li class = "navListItem" > < a class = "navItem" href = "/docs/next/applications/server" > Application Server< / a > < / li > < li class = "navListItem" > < a class = "navItem" href = "/docs/next/applications/gui" > GUI< / a > < / li > < li class = "navListItem" > < a class = "navItem" href = "/docs/next/applications/server-systemd" > Systemd installation< / a > < / li > < / ul > < / div > < div class = "navGroup" > < h3 class = "navGroupCategoryTitle" > Chain< / h3 > < ul class = "" > < li class = "navListItem" > < a class = "navItem" href = "/docs/next/chain/chain" > Blockchain Verification< / a > < / li > < li class = "navListItem" > < a class = "navItem" href = "/docs/next/chain/filter-sync" > Syncing Blockfilters< / a > < / li > < li class = "navListItem" > < a class = "navItem" href = "/docs/next/chain/chain-query-api" > Chain Query API< / a > < / li > < / ul > < / div > < div class = "navGroup" > < h3 class = "navGroupCategoryTitle" > Configuration< / h3 > < ul class = "" > < li class = "navListItem" > < a class = "navItem" href = "/docs/next/config/configuration" > Application Configuration< / a > < / li > < / ul > < / div > < div class = "navGroup" > < h3 class = "navGroupCategoryTitle" > Core Module< / h3 > < ul class = "" > < li class = "navListItem" > < a class = "navItem" href = "/docs/next/core/core-intro" > Core Module< / a > < / li > < li class = "navListItem" > < a class = "navItem" href = "/docs/next/core/addresses" > Generating Addresses< / a > < / li > <
2021-10-17 13:36:48 +00:00
var coll = document.getElementsByClassName('collapsible');
var checkActiveCategory = true;
for (var i = 0; i < coll.length ; i + + ) {
var links = coll[i].nextElementSibling.getElementsByTagName('*');
if (checkActiveCategory){
for (var j = 0; j < links.length ; j + + ) {
if (links[j].classList.contains('navListItemActive')){
coll[i].nextElementSibling.classList.toggle('hide');
coll[i].childNodes[1].classList.toggle('rotate');
checkActiveCategory = false;
break;
}
}
}
coll[i].addEventListener('click', function() {
var arrow = this.childNodes[1];
arrow.classList.toggle('rotate');
var content = this.nextElementSibling;
content.classList.toggle('hide');
});
}
document.addEventListener('DOMContentLoaded', function() {
createToggler('#navToggler', '#docsNav', 'docsSliderActive');
createToggler('#tocToggler', 'body', 'tocActive');
var headings = document.querySelector('.toc-headings');
headings & & headings.addEventListener('click', function(event) {
var el = event.target;
while(el !== headings){
if (el.tagName === 'A') {
document.body.classList.remove('tocActive');
break;
} else{
el = el.parentNode;
}
}
}, false);
function createToggler(togglerSelector, targetSelector, className) {
var toggler = document.querySelector(togglerSelector);
var target = document.querySelector(targetSelector);
if (!toggler) {
return;
}
toggler.onclick = function(event) {
event.preventDefault();
target.classList.toggle(className);
};
}
});
< / script > < / nav > < / div > < div class = "container mainContainer docsContainer" > < div class = "wrapper" > < div class = "post" > < header class = "postHeader" > < a class = "edit-page-link button" href = "https://github.com/bitcoin-s/bitcoin-s/blob/master/docs/wallet/wallet-price-example.md" target = "_blank" rel = "noreferrer noopener" > Edit< / a > < h1 id = "__docusaurus" class = "postHeaderTitle" > Wallet Price Example< / h1 > < / header > < article > < div > < span > < p > This is a developer example to show to how build a
DLC with < code > bitcoin-s-cli< / code > utility using the oracle
we built in our < a href = "/docs/next/oracle/oracle-price-example" > oracle price example< / a > < / p >
< p > This example will show you to collaborate with your peer
to create the funding transaction for your DLC.< / p >
< p > The last thing we will do is close the DLC by broadcasting
the contract execution transaction (CET) that is valid after
the oracle broadcasts its attestations.< / p >
< h2 > < a class = "anchor" aria-hidden = "true" id = "requirements-for-example" > < / a > < a href = "#requirements-for-example" 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 > Requirements for example< / h2 >
< p > You need to have a fully built DLC wallet.
You can follow < a href = "/docs/next/applications/server#building-the-server" > this guide< / a > to do this.< / p >
< p > You will also need a the < code > bitcoin-s-cli< / code > command line tool to interact with the server.
You can find how to build this < a href = "/docs/next/applications/cli" > here< / a > < / p >
< p > Since bitcoin-s is a self custodial wallet, you will need to either< / p >
< ol >
< li > < a href = "/docs/next/getting-setup#bitcoind-backend" > Connect your server to bitcoind< / a > < / li >
< li > < a href = "/docs/next/getting-setup#neutrino-node" > Do intial block download (IBD) with blockfilters< / a > . This can take a few hours.< / li >
< / ol >
< pre > < code class = "hljs" > .< span class = "hljs-meta-keyword" > /app/< / span > server< span class = "hljs-meta-keyword" > /target/< / span > universal< span class = "hljs-meta-keyword" > /stage/< / span > bin/bitcoin-s-server
< / code > < / pre >
< h2 > < a class = "anchor" aria-hidden = "true" id = "betting-on-bitcoin" > < / a > < a href = "#betting-on-bitcoin" 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 > Betting on bitcoin< / h2 >
< p > New financial markets are being built for bitcoin. Users are interested in financial
products designed to speculate on the price of bitcoin.< / p >
< h4 > < a class = "anchor" aria-hidden = "true" id = "oracle" > < / a > < a href = "#oracle" 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 > Oracle< / h4 >
< p > The first thing you need to create a DLC is an oracle that
is attesting to the real world event that you are interested in.< / p >
< p > In this case, we will be using the oracle we setup in our
< a href = "/docs/next/oracle/oracle-price-example#setting-up-the-btcusd-oracle" > oracle election example< / a > .< / p >
< p > The announcement that this oracle produced is< / p >
< pre > < code class = "hljs" > fdd< span class = "hljs-number" > 824< / span > fd< span class = "hljs-number" > 02< / span > b< span class = "hljs-number" > 9659e890< / span > eef< span class = "hljs-number" > 1< / span > b< span class = "hljs-number" > 223< / span > ba< span class = "hljs-number" > 45< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 9993< / span > f< span class = "hljs-number" > 88< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 7997859302< / span > fd< span class = "hljs-number" > 5510< / span > ac< span class = "hljs-number" > 23< / span > f< span class = "hljs-number" > 4< / span > cac< span class = "hljs-number" > 0< / span > d< span class = "hljs-number" > 4< / span > ee< span class = "hljs-number" > 8232< / span > a< span class = "hljs-number" > 77< / span > ecbdf< span class = "hljs-number" > 50< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 07< / span > f< span class = "hljs-number" > 093794370e6< / span > a< span class = "hljs-number" > 506< / span > a< span class = "hljs-number" > 836< / span > f< span class = "hljs-number" > 6< / span > b< span class = "hljs-number" > 0< / span > fb< span class = "hljs-number" > 54< / span > b< span class = "hljs-number" > 45< / span > f< span class = "hljs-number" > 1< / span > fb< span class = "hljs-number" > 662e1307166< / span > d< span class = "hljs-number" > 2e57030574< / span > f< span class = "hljs-number" > 77305826939< / span > fa< span class = "hljs-number" > 9124< / span > d< span class = "hljs-number" > 19< / span > bfa< span class = "hljs-number" > 8< / span > a< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 2< / span > f< span class = "hljs-number" > 00< / span > f< span class = "hljs-number" > 000586< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 58< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 79< / span > ee< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 77969< / span > a< span class = "hljs-number" > 949< / span > fdd< span class = "hljs-number" > 822< / span > fd< span class = "hljs-number" > 025300114762< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 188048< / span > a< span class = "hljs-number" > 953803< / span > f< span class = "hljs-number" > 0< / span > edeeeb< span class = "hljs-number" > 68< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 69e6< / span > cdc< span class = "hljs-number" > 1< / span > d< span class = "hljs-number" > 371< / span > ba< span class = "hljs-number" > 8< / span > d< span class = "hljs-number" > 517003< / span > accfe< span class = "hljs-number" > 05< / span > afc< span class = "hljs-number" > 4< / span > d< span class = "hljs-number" > 6588< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 3< / span > ea< span class = "hljs-number" > 326512< / span > bc< span class = "hljs-number" > 66< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 26< / span > a< span class = "hljs-number" > 841< / span > adffa< span class = "hljs-number" > 68330< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 723< / span > da< span class = "hljs-number" > 442792e731< / span > fb< span class = "hljs-number" > 19< / span > fda< span class = "hljs-number" > 94274< / span > a< span class = "hljs-number" > 7766< / span > bb< span class = "hljs-number" > 48e520< / span > f< span class = "hljs-number" > 118< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 100< / span > bbe< span class = "hljs-number" > 62< / span > dc< span class = "hljs-number" > 3806< / span > a< span class = "hljs-number" > 8< / span > d< span class = "hljs-number" > 05< / span > a< span class = "hljs-number" > 63< / span > d< span class = "hljs-number" > 92e23683< / span > a< span class = "hljs-number" > 04< / span > b< span class = "hljs-number" > 0< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 24148< / span > cd< span class = "hljs-number" > 166585< / span > a< span class = "hljs-number" > 6< / span > b< span class = "hljs-number" > 33< / span > b< span class = "hljs-number" > 995< / span > b< span class = "hljs-number" > 3< / span > d< span class = "hljs-number" > 6< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 083523< / span > a< span class = "hljs-number" > 8435< / span > b< span class = "hljs-number" > 156< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 05100< / span > d< span class = "hljs-number" > 88< / span > f< span class = "hljs-number" > 449< / span > f< span class = "hljs-number" > 4754310< / span > d< span class = "hljs-number
< / code > < / pre >
< p > This announcement contains all the cryptographic information
necessary for you and your counterparty to build a DLC.< / p >
< h4 > < a class = "anchor" aria-hidden = "true" id = "contract" > < / a > < a href = "#contract" 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 > Contract< / h4 >
< p > The next step for building a DLC is agreeing to a < a href = "https://github.com/discreetlogcontracts/dlcspecs/blob/master/Messaging.md#the-contract_info-type" > contract info< / a > .
A contract info contains information about< / p >
< ol >
< li > The oracles that will be used by the DLC< / li >
< li > The contract payout conditions based on the oracle.< / li >
< / ol >
< p > Up until this point all information in this example does
NOT contain any information specific to the bitcoin network.< / p >
< p > If the oracle has published their announcement to the
Suredbits oracle explorer, you can build this
< a href = "https://test.oracle.suredbits.com/event/362ae482860fc93bac5cbcca3f1f0e49b3c94eac92224a008bd81ef81292f43a/contracts/new" > via the contract explorer< / a > .< / p >
< p > < a href = "https://test.oracle.suredbits.com/contract/numeric/d4d4df2892fb2cfd2e8f030f0e69a568e19668b5d355e7713f69853db09a4c33" > Here< / a >
is a completed example of what we are going to build via the < code > bitcoin-s-cli< / code > < / p >
< p > Alice has decided that she wants to do a 1 bitcoin bet.
The amount of collateral Alice is going to contribute to the bet
is < code > 50,000< / code > sats.< / p >
< p > Bob, Alice's counterparty, has agreed to contribute
< code > 50,000< / code > sats in collateral to the bet.< / p >
< p > The next step is to create a < code > contractinfo< / code > < a href = "https://test.oracle.suredbits.com/contract/numeric/d4d4df2892fb2cfd2e8f030f0e69a568e19668b5d355e7713f69853db09a4c33" > via the contract explorer hosted by Suredbits< / a >
or locally that represents this bet.< / p >
< p > These next instructions are for if you decide to build it locally.< / p >
< p > We can do this with the < code > createcontractinfo< / code > rpc< / p >
2022-02-12 20:10:42 +00:00
< pre > < code class = "hljs" > ./bitcoin-s-cli createcontractinfo fdd< span class = "hljs-number" > 824< / span > fd< span class = "hljs-number" > 02< / span > b< span class = "hljs-number" > 9659e890< / span > eef< span class = "hljs-number" > 1< / span > b< span class = "hljs-number" > 223< / span > ba< span class = "hljs-number" > 45< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 9993< / span > f< span class = "hljs-number" > 88< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 7997859302< / span > fd< span class = "hljs-number" > 5510< / span > ac< span class = "hljs-number" > 23< / span > f< span class = "hljs-number" > 4< / span > cac< span class = "hljs-number" > 0< / span > d< span class = "hljs-number" > 4< / span > ee< span class = "hljs-number" > 8232< / span > a< span class = "hljs-number" > 77< / span > ecbdf< span class = "hljs-number" > 50< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 07< / span > f< span class = "hljs-number" > 093794370e6< / span > a< span class = "hljs-number" > 506< / span > a< span class = "hljs-number" > 836< / span > f< span class = "hljs-number" > 6< / span > b< span class = "hljs-number" > 0< / span > fb< span class = "hljs-number" > 54< / span > b< span class = "hljs-number" > 45< / span > f< span class = "hljs-number" > 1< / span > fb< span class = "hljs-number" > 662e1307166< / span > d< span class = "hljs-number" > 2e57030574< / span > f< span class = "hljs-number" > 77305826939< / span > fa< span class = "hljs-number" > 9124< / span > d< span class = "hljs-number" > 19< / span > bfa< span class = "hljs-number" > 8< / span > a< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 2< / span > f< span class = "hljs-number" > 00< / span > f< span class = "hljs-number" > 000586< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 58< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 79< / span > ee< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 77969< / span > a< span class = "hljs-number" > 949< / span > fdd< span class = "hljs-number" > 822< / span > fd< span class = "hljs-number" > 025300114762< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 188048< / span > a< span class = "hljs-number" > 953803< / span > f< span class = "hljs-number" > 0< / span > edeeeb< span class = "hljs-number" > 68< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 69e6< / span > cdc< span class = "hljs-number" > 1< / span > d< span class = "hljs-number" > 371< / span > ba< span class = "hljs-number" > 8< / span > d< span class = "hljs-number" > 517003< / span > accfe< span class = "hljs-number" > 05< / span > afc< span class = "hljs-number" > 4< / span > d< span class = "hljs-number" > 6588< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 3< / span > ea< span class = "hljs-number" > 326512< / span > bc< span class = "hljs-number" > 66< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 26< / span > a< span class = "hljs-number" > 841< / span > adffa< span class = "hljs-number" > 68330< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 723< / span > da< span class = "hljs-number" > 442792e731< / span > fb< span class = "hljs-number" > 19< / span > fda< span class = "hljs-number" > 94274< / span > a< span class = "hljs-number" > 7766< / span > bb< span class = "hljs-number" > 48e520< / span > f< span class = "hljs-number" > 118< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 100< / span > bbe< span class = "hljs-number" > 62< / span > dc< span class = "hljs-number" > 3806< / span > a< span class = "hljs-number" > 8< / span > d< span class = "hljs-number" > 05< / span > a< span class = "hljs-number" > 63< / span > d< span class = "hljs-number" > 92e23683< / span > a< span class = "hljs-number" > 04< / span > b< span class = "hljs-number" > 0< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 24148< / span > cd< span class = "hljs-number" > 166585< / span > a< span class = "hljs-number" > 6< / span > b< span class = "hljs-number" > 33< / span > b< span class = "hljs-number" > 995< / span > b< span class = "hljs-number" > 3< / span > d< span class = "hljs-number" > 6< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 083523< / span > a< span class = "hljs-number" > 8435< / span > b< span class = "hljs-number" > 156< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 05100< / span > d< span class = "hljs-number" > 88< / span > f< span class = "hljs-number" > 449< / span > f< span class = "hljs-number" > 475
2021-10-17 13:36:48 +00:00
< span class = "hljs-number" > 100000< / span > \
< span class = "hljs-string" > "[{\"outcome\":0,\"payout\":0,\"extraPrecision\":0,\"isEndpoint\":true}, \
{\"outcome\":40000,\"payout\":0,\"extraPrecision\":0,\"isEndpoint\":true}, \
{\"outcome\":42500,\"payout\":50000,\"extraPrecision\":0,\"isEndpoint\":true}, \
{\"outcome\":45000,\"payout\":100000,\"extraPrecision\":0,\"isEndpoint\":true}, \
{\"outcome\":131071,\"payout\":100000,\"extraPrecision\":0,\"isEndpoint\":true}]"< / span >
2022-02-12 20:10:42 +00:00
fdd< span class = "hljs-number" > 82< / span > efd< span class = "hljs-number" > 031< / span > f< span class = "hljs-number" > 00000000000186< / span > a< span class = "hljs-number" > 0< / span > fda< span class = "hljs-number" > 7204e0011< / span > fda< span class = "hljs-number" > 72642000400000000< / span > fda< span class = "hljs-number" > 728020000< / span > fd< span class = "hljs-number" > 9< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 40000000< / span > fda< span class = "hljs-number" > 728020000< / span > fda< span class = "hljs-number" > 604< / span > fdc< span class = "hljs-number" > 3500000< / span > fda< span class = "hljs-number" > 728020000< / span > fdafc< span class = "hljs-number" > 8< / span > fe< span class = "hljs-number" > 000186< / span > a< span class = "hljs-number" > 00000< / span > fda< span class = "hljs-number" > 728020000< / span > fe< span class = "hljs-number" > 0001< / span > fffffe< span class = "hljs-number" > 000186< / span > a< span class = "hljs-number" > 00000< / span > fda< span class = "hljs-number" > 724020000< / span > fda< span class = "hljs-number" > 712< / span > fd< span class = "hljs-number" > 02< / span > bffdd< span class = "hljs-number" > 824< / span > fd< span class = "hljs-number" > 02< / span > b< span class = "hljs-number" > 9659e890< / span > eef< span class = "hljs-number" > 1< / span > b< span class = "hljs-number" > 223< / span > ba< span class = "hljs-number" > 45< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 9993< / span > f< span class = "hljs-number" > 88< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 7997859302< / span > fd< span class = "hljs-number" > 5510< / span > ac< span class = "hljs-number" > 23< / span > f< span class = "hljs-number" > 4< / span > cac< span class = "hljs-number" > 0< / span > d< span class = "hljs-number" > 4< / span > ee< span class = "hljs-number" > 8232< / span > a< span class = "hljs-number" > 77< / span > ecbdf< span class = "hljs-number" > 50< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 07< / span > f< span class = "hljs-number" > 093794370e6< / span > a< span class = "hljs-number" > 506< / span > a< span class = "hljs-number" > 836< / span > f< span class = "hljs-number" > 6< / span > b< span class = "hljs-number" > 0< / span > fb< span class = "hljs-number" > 54< / span > b< span class = "hljs-number" > 45< / span > f< span class = "hljs-number" > 1< / span > fb< span class = "hljs-number" > 662e1307166< / span > d< span class = "hljs-number" > 2e57030574< / span > f< span class = "hljs-number" > 77305826939< / span > fa< span class = "hljs-number" > 9124< / span > d< span class = "hljs-number" > 19< / span > bfa< span class = "hljs-number" > 8< / span > a< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 2< / span > f< span class = "hljs-number" > 00< / span > f< span class = "hljs-number" > 000586< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 58< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 79< / span > ee< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 77969< / span > a< span class = "hljs-number" > 949< / span > fdd< span class = "hljs-number" > 822< / span > fd< span class = "hljs-number" > 025300114762< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 188048< / span > a< span class = "hljs-number" > 953803< / span > f< span class = "hljs-number" > 0< / span > edeeeb< span class = "hljs-number" > 68< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 69e6< / span > cdc< span class = "hljs-number" > 1< / span > d< span class = "hljs-number" > 371< / span > ba< span class = "hljs-number" > 8< / span > d< span class = "hljs-number" > 517003< / span > accfe< span class = "hljs-number" > 05< / span > afc< span class = "hljs-number" > 4< / span > d< span class = "hljs-number" > 6588< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 3< / span > ea< span class = "hljs-number" > 326512< / span > bc< span class = "hljs-number" > 66< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 26< / span > a< span class = "hljs-number" > 841< / span > adffa< span class = "hljs-number" > 68330< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 723< / span > da< span class = "hljs-number" > 442792e731< / span > fb< span class = "hljs-number" > 19< / span > fda< span class = "hljs-number" > 94274< / span > a< span class = "hljs-number" > 7766< / span > bb< span class = "hljs-number" > 48e520< / span > f< span class = "hljs-number" > 118< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 100< / span > bbe< span cla
2021-10-17 13:36:48 +00:00
< / code > < / pre >
< p > The < code > fdd824fd02b96...< / code > is the oracle announcement, the < code > 100000< / code > is the total collateral in the DLC
and the final json datstructure is the points on the payout curve. The x-axis is < code > outcome< / code >
and the y axis is < code > payout< / code > .< / p >
< p > You can decode this contract info with < code > decodecontractinfo< / code > < / p >
2022-02-12 20:10:42 +00:00
< pre > < code class = "hljs" > ./bitcoin-s-cli decodecontractinfo fdd< span class = "hljs-number" > 82< / span > efd< span class = "hljs-number" > 031< / span > f< span class = "hljs-number" > 00000000000186< / span > a< span class = "hljs-number" > 0< / span > fda< span class = "hljs-number" > 7204e0011< / span > fda< span class = "hljs-number" > 72642000400000000< / span > fda< span class = "hljs-number" > 728020000< / span > fd< span class = "hljs-number" > 9< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 40000000< / span > fda< span class = "hljs-number" > 728020000< / span > fda< span class = "hljs-number" > 604< / span > fdc< span class = "hljs-number" > 3500000< / span > fda< span class = "hljs-number" > 728020000< / span > fdafc< span class = "hljs-number" > 8< / span > fe< span class = "hljs-number" > 000186< / span > a< span class = "hljs-number" > 00000< / span > fda< span class = "hljs-number" > 728020000< / span > fe< span class = "hljs-number" > 0001< / span > fffffe< span class = "hljs-number" > 000186< / span > a< span class = "hljs-number" > 00000< / span > fda< span class = "hljs-number" > 724020000< / span > fda< span class = "hljs-number" > 712< / span > fd< span class = "hljs-number" > 02< / span > bffdd< span class = "hljs-number" > 824< / span > fd< span class = "hljs-number" > 02< / span > b< span class = "hljs-number" > 9659e890< / span > eef< span class = "hljs-number" > 1< / span > b< span class = "hljs-number" > 223< / span > ba< span class = "hljs-number" > 45< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 9993< / span > f< span class = "hljs-number" > 88< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 7997859302< / span > fd< span class = "hljs-number" > 5510< / span > ac< span class = "hljs-number" > 23< / span > f< span class = "hljs-number" > 4< / span > cac< span class = "hljs-number" > 0< / span > d< span class = "hljs-number" > 4< / span > ee< span class = "hljs-number" > 8232< / span > a< span class = "hljs-number" > 77< / span > ecbdf< span class = "hljs-number" > 50< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 07< / span > f< span class = "hljs-number" > 093794370e6< / span > a< span class = "hljs-number" > 506< / span > a< span class = "hljs-number" > 836< / span > f< span class = "hljs-number" > 6< / span > b< span class = "hljs-number" > 0< / span > fb< span class = "hljs-number" > 54< / span > b< span class = "hljs-number" > 45< / span > f< span class = "hljs-number" > 1< / span > fb< span class = "hljs-number" > 662e1307166< / span > d< span class = "hljs-number" > 2e57030574< / span > f< span class = "hljs-number" > 77305826939< / span > fa< span class = "hljs-number" > 9124< / span > d< span class = "hljs-number" > 19< / span > bfa< span class = "hljs-number" > 8< / span > a< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 2< / span > f< span class = "hljs-number" > 00< / span > f< span class = "hljs-number" > 000586< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 58< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 79< / span > ee< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 77969< / span > a< span class = "hljs-number" > 949< / span > fdd< span class = "hljs-number" > 822< / span > fd< span class = "hljs-number" > 025300114762< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 188048< / span > a< span class = "hljs-number" > 953803< / span > f< span class = "hljs-number" > 0< / span > edeeeb< span class = "hljs-number" > 68< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 69e6< / span > cdc< span class = "hljs-number" > 1< / span > d< span class = "hljs-number" > 371< / span > ba< span class = "hljs-number" > 8< / span > d< span class = "hljs-number" > 517003< / span > accfe< span class = "hljs-number" > 05< / span > afc< span class = "hljs-number" > 4< / span > d< span class = "hljs-number" > 6588< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 3< / span > ea< span class = "hljs-number" > 326512< / span > bc< span class = "hljs-number" > 66< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 26< / span > a< span class = "hljs-number" > 841< / span > adffa< span class = "hljs-number" > 68330< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 723< / span > da< span class = "hljs-number" > 442792e731< / span > fb< span class = "hljs-number" > 19< / span > fda< span class = "hljs-number" > 94274< / span > a< span class = "hljs-number" > 7766< / span > bb< span class = "hljs-number" > 48e520< / span > f< span class = "hljs-number" > 118< / span > < span class = "hljs-keywor
2021-10-17 13:36:48 +00:00
{
< span class = "hljs-string" > "totalCollateral"< / span > : < span class = "hljs-number" > 100000< / span > ,
< span class = "hljs-string" > "contractDescriptor"< / span > : {
< span class = "hljs-string" > "numDigits"< / span > : < span class = "hljs-number" > 17< / span > ,
< span class = "hljs-string" > "payoutFunction"< / span > : {
< span class = "hljs-string" > "points"< / span > : [
{
< span class = "hljs-string" > "outcome"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "payout"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "extraPrecision"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "isEndpoint"< / span > : < span class = "hljs-keyword" > true< / span >
},
{
< span class = "hljs-string" > "outcome"< / span > : < span class = "hljs-number" > 40000< / span > ,
< span class = "hljs-string" > "payout"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "extraPrecision"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "isEndpoint"< / span > : < span class = "hljs-keyword" > true< / span >
},
{
< span class = "hljs-string" > "outcome"< / span > : < span class = "hljs-number" > 42500< / span > ,
< span class = "hljs-string" > "payout"< / span > : < span class = "hljs-number" > 50000< / span > ,
< span class = "hljs-string" > "extraPrecision"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "isEndpoint"< / span > : < span class = "hljs-keyword" > true< / span >
},
{
< span class = "hljs-string" > "outcome"< / span > : < span class = "hljs-number" > 45000< / span > ,
< span class = "hljs-string" > "payout"< / span > : < span class = "hljs-number" > 100000< / span > ,
< span class = "hljs-string" > "extraPrecision"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "isEndpoint"< / span > : < span class = "hljs-keyword" > true< / span >
},
{
< span class = "hljs-string" > "outcome"< / span > : < span class = "hljs-number" > 131071< / span > ,
< span class = "hljs-string" > "payout"< / span > : < span class = "hljs-number" > 100000< / span > ,
< span class = "hljs-string" > "extraPrecision"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "isEndpoint"< / span > : < span class = "hljs-keyword" > true< / span >
}
]
},
< span class = "hljs-string" > "roundingIntervals"< / span > : {
2022-02-12 20:10:42 +00:00
< span class = "hljs-string" > "intervals"< / span > : [
]
},
< span class = "hljs-string" > "hex"< / span > : < span class = "hljs-string" > "fda7204e0011fda72642000400000000fda728020000fd9c40000000fda728020000fda604fdc3500000fda728020000fdafc8fe000186a00000fda728020000fe0001fffffe000186a00000fda724020000"< / span >
2021-10-17 13:36:48 +00:00
},
< span class = "hljs-string" > "oracleInfo"< / span > : {
< span class = "hljs-string" > "announcement"< / span > : {
< span class = "hljs-string" > "announcementSignature"< / span > : < span class = "hljs-string" > "659e890eef1b223ba45c9993f88c7997859302fd5510ac23f4cac0d4ee8232a77ecbdf50c07f093794370e6a506a836f6b0fb54b45f1fb662e1307166d2e5703"< / span > ,
< span class = "hljs-string" > "publicKey"< / span > : < span class = "hljs-string" > "0574f77305826939fa9124d19bfa8a8b2f00f000586b8c58c79ee8b77969a949"< / span > ,
< span class = "hljs-string" > "event"< / span > : {
< span class = "hljs-string" > "nonces"< / span > : [
< span class = "hljs-string" > "4762c188048a953803f0edeeeb68c69e6cdc1d371ba8d517003accfe05afc4d6"< / span > ,
< span class = "hljs-string" > "588c3ea326512bc66c26a841adffa68330b8c723da442792e731fb19fda94274"< / span > ,
< span class = "hljs-string" > "a7766bb48e520f118c100bbe62dc3806a8d05a63d92e23683a04b0b8c24148cd"< / span > ,
< span class = "hljs-string" > "166585a6b33b995b3d6c083523a8435b156c05100d88f449f4754310d5574d5e"< / span > ,
< span class = "hljs-string" > "88aad09af1b8ba942cfd305e728044ec6360d847254453ec05b1b518a36660e2"< / span > ,
< span class = "hljs-string" > "238360e02f3a004663a7f3a3534973d8b66a2646c1386779aa820672b6361b88"< / span > ,
< span class = "hljs-string" > "a8696395c0add87840b460dfd8a8c0d520017efc6bf58267d4c9d2a225c5d0e5"< / span > ,
< span class = "hljs-string" > "719068a7dda5d630d7432239b6c9d921d5f3842b584503460ca52612ac2e6433"< / span > ,
< span class = "hljs-string" > "7d299513690372e8f4770eb8a28080e8d7c29920ca32af470d65d6f916ee81e3"< / span > ,
< span class = "hljs-string" > "ac15ce02684ba6d2522a9ffea1de7e202b4b699ef7ec4f089dda07f3de5b7d1f"< / span > ,
< span class = "hljs-string" > "853b2c56471999be4efca82674a651c80f047ba3a2b9e6f9999f0cd4062c533d"< / span > ,
< span class = "hljs-string" > "1ae29cab2a5e33cbe98728b7b4271c67f7c5cd6e12e39128b9971e08496cbd84"< / span > ,
< span class = "hljs-string" > "cfa99c77c88867d33e73acef37022ba4422a5221776991d45416db71fb54bc6c"< / span > ,
< span class = "hljs-string" > "104f6a8e50e8905161709215104a7e7b97e866f32cf43233ffd615cab6669983"< / span > ,
< span class = "hljs-string" > "2ec607cf59c85a7f56fa957aa5f5d7ec9f46d84d5d4b777122d41ad76c6f4968"< / span > ,
< span class = "hljs-string" > "aeedca243f2030d4f502e58f4181130e9afb75309ac21637bcfd0717528bfb82"< / span > ,
< span class = "hljs-string" > "ffe1b6c9fadee6ba70357210990539184bcc913a0ec65837a736733a2fb6172d"< / span >
],
< span class = "hljs-string" > "maturity"< / span > : < span class = "hljs-string" > "2021-02-04T00:00:00Z"< / span > ,
< span class = "hljs-string" > "descriptor"< / span > : {
< span class = "hljs-string" > "base"< / span > : < span class = "hljs-number" > 2< / span > ,
< span class = "hljs-string" > "isSigned"< / span > : < span class = "hljs-keyword" > false< / span > ,
< span class = "hljs-string" > "unit"< / span > : < span class = "hljs-string" > "BTC/USD"< / span > ,
2022-02-12 20:10:42 +00:00
< span class = "hljs-string" > "precision"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "hex"< / span > : < span class = "hljs-string" > "fdd80a11000200074254432f555344000000000011"< / span >
2021-10-17 13:36:48 +00:00
},
< span class = "hljs-string" > "eventId"< / span > : < span class = "hljs-string" > "bitcoin-s-price-example"< / span >
2022-02-12 20:10:42 +00:00
},
< span class = "hljs-string" > "hex"< / span > : < span class = "hljs-string" > "fdd824fd02b9659e890eef1b223ba45c9993f88c7997859302fd5510ac23f4cac0d4ee8232a77ecbdf50c07f093794370e6a506a836f6b0fb54b45f1fb662e1307166d2e57030574f77305826939fa9124d19bfa8a8b2f00f000586b8c58c79ee8b77969a949fdd822fd025300114762c188048a953803f0edeeeb68c69e6cdc1d371ba8d517003accfe05afc4d6588c3ea326512bc66c26a841adffa68330b8c723da442792e731fb19fda94274a7766bb48e520f118c100bbe62dc3806a8d05a63d92e23683a04b0b8c24148cd166585a6b33b995b3d6c083523a8435b156c05100d88f449f4754310d5574d5e88aad09af1b8ba942cfd305e728044ec6360d847254453ec05b1b518a36660e2238360e02f3a004663a7f3a3534973d8b66a2646c1386779aa820672b6361b88a8696395c0add87840b460dfd8a8c0d520017efc6bf58267d4c9d2a225c5d0e5719068a7dda5d630d7432239b6c9d921d5f3842b584503460ca52612ac2e64337d299513690372e8f4770eb8a28080e8d7c29920ca32af470d65d6f916ee81e3ac15ce02684ba6d2522a9ffea1de7e202b4b699ef7ec4f089dda07f3de5b7d1f853b2c56471999be4efca82674a651c80f047ba3a2b9e6f9999f0cd4062c533d1ae29cab2a5e33cbe98728b7b4271c67f7c5cd6e12e39128b9971e08496cbd84cfa99c77c88867d33e73acef37022ba4422a5221776991d45416db71fb54bc6c104f6a8e50e8905161709215104a7e7b97e866f32cf43233ffd615cab66699832ec607cf59c85a7f56fa957aa5f5d7ec9f46d84d5d4b777122d41ad76c6f4968aeedca243f2030d4f502e58f4181130e9afb75309ac21637bcfd0717528bfb82ffe1b6c9fadee6ba70357210990539184bcc913a0ec65837a736733a2fb6172d601b3900fdd80a11000200074254432f55534400000000001117626974636f696e2d732d70726963652d6578616d706c65"< / span >
2021-10-17 13:36:48 +00:00
}
}
}
2022-02-12 20:10:42 +00:00
2021-10-17 13:36:48 +00:00
< / code > < / pre >
< h3 > < a class = "anchor" aria-hidden = "true" id = "building-funding-txdlcs-with-your-counterparty" > < / a > < a href = "#building-funding-txdlcs-with-your-counterparty" 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 > Building funding tx/dlcs with your counterparty< / h3 >
< p > Now that the contract terms are agreed upon, the next thing you need to do is
begin the < a href = "https://github.com/discreetlogcontracts/dlcspecs/blob/master/Protocol.md#contract-negotiation" > negotiation protocol< / a > with your counterparty.< / p >
< h4 > < a class = "anchor" aria-hidden = "true" id = "offer" > < / a > < a href = "#offer" 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 > Offer< / h4 >
< p > The first thing you need to send your counterparty is an < a href = "https://github.com/discreetlogcontracts/dlcspecs/blob/master/Protocol.md#the-offer_dlc-message" > < code > offer< / code > < / a > .
This message contains information about the utxos you will use to fund your side of the funding transaction.< / p >
< p > You can create the offer with the < code > createdlcoffer< / code > . As arguments this rpc takes< / p >
< ol >
< li > contract info (what we build last step)< / li >
< li > your collateral (the amount of money YOU are putting in the DLC)< / li >
< li > fee rate (sats/vbyte)< / li >
< li > locktime< / li >
< li > refund locktime< / li >
< / ol >
< p > As of this writing, the current block height is < code > 705161< / code > . For the sake of this example
I'm going to pick a < code > locktime=0< / code > and a refund locktime 2 weeks in advance < code > refundLocktime=707177< / code > < / p >
< p > Note: this RPC will fail if you don't have enough funds in your wallet to fund your collateral.< / p >
< pre > < code class = "hljs" > ./bitcoin-s-cli createdlcoffer fdd< span class = "hljs-number" > 82< / span > efd< span class = "hljs-number" > 032500000000000186< / span > a< span class = "hljs-number" > 0< / span > fda< span class = "hljs-number" > 720540011< / span > fda< span class = "hljs-number" > 72648000501000000000000000000000001< / span > fd< span class = "hljs-number" > 9< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 400000000000000000000001< / span > fda< span class = "hljs-number" > 604000000000000< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 350000001< / span > fdafc< span class = "hljs-number" > 800000000000186< / span > a< span class = "hljs-number" > 0000001< / span > fe< span class = "hljs-number" > 0001< / span > ffff< span class = "hljs-number" > 00000000000186< / span > a< span class = "hljs-number" > 00000< / span > fda< span class = "hljs-number" > 724020000< / span > fda< span class = "hljs-number" > 712< / span > fd< span class = "hljs-number" > 02< / span > bffdd< span class = "hljs-number" > 824< / span > fd< span class = "hljs-number" > 02< / span > b< span class = "hljs-number" > 9659e890< / span > eef< span class = "hljs-number" > 1< / span > b< span class = "hljs-number" > 223< / span > ba< span class = "hljs-number" > 45< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 9993< / span > f< span class = "hljs-number" > 88< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 7997859302< / span > fd< span class = "hljs-number" > 5510< / span > ac< span class = "hljs-number" > 23< / span > f< span class = "hljs-number" > 4< / span > cac< span class = "hljs-number" > 0< / span > d< span class = "hljs-number" > 4< / span > ee< span class = "hljs-number" > 8232< / span > a< span class = "hljs-number" > 77< / span > ecbdf< span class = "hljs-number" > 50< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 07< / span > f< span class = "hljs-number" > 093794370e6< / span > a< span class = "hljs-number" > 506< / span > a< span class = "hljs-number" > 836< / span > f< span class = "hljs-number" > 6< / span > b< span class = "hljs-number" > 0< / span > fb< span class = "hljs-number" > 54< / span > b< span class = "hljs-number" > 45< / span > f< span class = "hljs-number" > 1< / span > fb< span class = "hljs-number" > 662e1307166< / span > d< span class = "hljs-number" > 2e57030574< / span > f< span class = "hljs-number" > 77305826939< / span > fa< span class = "hljs-number" > 9124< / span > d< span class = "hljs-number" > 19< / span > bfa< span class = "hljs-number" > 8< / span > a< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 2< / span > f< span class = "hljs-number" > 00< / span > f< span class = "hljs-number" > 000586< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 58< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 79< / span > ee< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 77969< / span > a< span class = "hljs-number" > 949< / span > fdd< span class = "hljs-number" > 822< / span > fd< span class = "hljs-number" > 025300114762< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 188048< / span > a< span class = "hljs-number" > 953803< / span > f< span class = "hljs-number" > 0< / span > edeeeb< span class = "hljs-number" > 68< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 69e6< / span > cdc< span class = "hljs-number" > 1< / span > d< span class = "hljs-number" > 371< / span > ba< span class = "hljs-number" > 8< / span > d< span class = "hljs-number" > 517003< / span > accfe< span class = "hljs-number" > 05< / span > afc< span class = "hljs-number" > 4< / span > d< span class = "hljs-number" > 6588< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 3< / span > ea< span class = "hljs-number" > 326512< / span > bc< span class = "hljs-number" > 66< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 26< / span > a< span class = "hljs-number" > 841< / span > adffa< span class = "hljs-number" > 68330< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 723< / span > da< span class = "hljs-number" > 442792e731< / span > fb< span class = "hljs-number" > 19< / span > fda< span class = "hljs-number" > 94274< / span > a< span class = "hljs-number" > 7766< / span > bb< span class = "hljs-number" > 48e520< / span > f< span class = "hljs-number" > 118< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 100< / span > bbe< span class = "hljs-number" > 62< / span > dc< span class = "hljs-number" > 3806< / span > a< span class = "hljs-number" > 8< /sp
< span class = "hljs-number" > 50000< / span > \
< span class = "hljs-number" > 1< / span > \
< span class = "hljs-number" > 0< / span > \
> < span class = "hljs-number" > 707177< / span > \
a< span class = "hljs-number" > 71< / span > a< span class = "hljs-number" > 006< / span > fe< span class = "hljs-number" > 28< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 0< / span > ab< span class = "hljs-number" > 6< / span > f< span class = "hljs-number" > 1< / span > b< span class = "hljs-number" > 372< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 1< / span > a< span class = "hljs-number" > 6< / span > a< span class = "hljs-number" > 246< / span > ae< span class = "hljs-number" > 63< / span > f< span class = "hljs-number" > 74< / span > f< span class = "hljs-number" > 931e8365< / span > e< span class = "hljs-number" > 15< / span > a< span class = "hljs-number" > 089< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 68< / span > d< span class = "hljs-number" > 6190000000000< / span > fdd< span class = "hljs-number" > 82< / span > efd< span class = "hljs-number" > 032500000000000186< / span > a< span class = "hljs-number" > 0< / span > fda< span class = "hljs-number" > 720540011< / span > fda< span class = "hljs-number" > 72648000501000000000000000000000001< / span > fd< span class = "hljs-number" > 9< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 400000000000000000000001< / span > fda< span class = "hljs-number" > 604000000000000< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 350000001< / span > fdafc< span class = "hljs-number" > 800000000000186< / span > a< span class = "hljs-number" > 0000001< / span > fe< span class = "hljs-number" > 0001< / span > ffff< span class = "hljs-number" > 00000000000186< / span > a< span class = "hljs-number" > 00000< / span > fda< span class = "hljs-number" > 724020000< / span > fda< span class = "hljs-number" > 712< / span > fd< span class = "hljs-number" > 02< / span > bffdd< span class = "hljs-number" > 824< / span > fd< span class = "hljs-number" > 02< / span > b< span class = "hljs-number" > 9659e890< / span > eef< span class = "hljs-number" > 1< / span > b< span class = "hljs-number" > 223< / span > ba< span class = "hljs-number" > 45< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 9993< / span > f< span class = "hljs-number" > 88< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 7997859302< / span > fd< span class = "hljs-number" > 5510< / span > ac< span class = "hljs-number" > 23< / span > f< span class = "hljs-number" > 4< / span > cac< span class = "hljs-number" > 0< / span > d< span class = "hljs-number" > 4< / span > ee< span class = "hljs-number" > 8232< / span > a< span class = "hljs-number" > 77< / span > ecbdf< span class = "hljs-number" > 50< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 07< / span > f< span class = "hljs-number" > 093794370e6< / span > a< span class = "hljs-number" > 506< / span > a< span class = "hljs-number" > 836< / span > f< span class = "hljs-number" > 6< / span > b< span class = "hljs-number" > 0< / span > fb< span class = "hljs-number" > 54< / span > b< span class = "hljs-number" > 45< / span > f< span class = "hljs-number" > 1< / span > fb< span class = "hljs-number" > 662e1307166< / span > d< span class = "hljs-number" > 2e57030574< / span > f< span class = "hljs-number" > 77305826939< / span > fa< span class = "hljs-number" > 9124< / span > d< span class = "hljs-number" > 19< / span > bfa< span class = "hljs-number" > 8< / span > a< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 2< / span > f< span class = "hljs-number" > 00< / span > f< span class = "hljs-number" > 000586< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 58< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 79< / span > ee< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 77969< / span > a< span class = "hljs-number" > 949< / span > fdd< span class = "hljs-number" > 822< / span > fd< span class = "hljs-number" > 025300114762< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 188048< / span > a< span class = "hljs-number" > 953803< / span > f< span class = "hljs-number" > 0< / span > edeeeb< span class = "hljs-number" > 68< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 69e6< / span > cdc< span class = "hljs-number" > 1< / span > d< span class = "hljs-number" > 371< / span > ba< span class = "hljs-number" > 8< / span > d< span class = "hljs-number" > 517003< / span > accfe< span class = "hljs-number" > 05< / span > afc< span class = "hljs-number" > 4< / span > d< span class = "hljs-number" > 6588< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 3< / span > ea< span class = "hljs-number" > 326512< / span > bc< span class = "hljs-number" > 66< /sp
< / code > < / pre >
< p > You can decode the offer above with < code > decodeoffer< / code > < / p >
< pre > < code class = "hljs" > ./bitcoin-s-cli decodeoffer a< span class = "hljs-number" > 71< / span > a< span class = "hljs-number" > 006< / span > fe< span class = "hljs-number" > 28< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 0< / span > ab< span class = "hljs-number" > 6< / span > f< span class = "hljs-number" > 1< / span > b< span class = "hljs-number" > 372< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 1< / span > a< span class = "hljs-number" > 6< / span > a< span class = "hljs-number" > 246< / span > ae< span class = "hljs-number" > 63< / span > f< span class = "hljs-number" > 74< / span > f< span class = "hljs-number" > 931e8365< / span > e< span class = "hljs-number" > 15< / span > a< span class = "hljs-number" > 089< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 68< / span > d< span class = "hljs-number" > 6190000000000< / span > fdd< span class = "hljs-number" > 82< / span > efd< span class = "hljs-number" > 032500000000000186< / span > a< span class = "hljs-number" > 0< / span > fda< span class = "hljs-number" > 720540011< / span > fda< span class = "hljs-number" > 72648000501000000000000000000000001< / span > fd< span class = "hljs-number" > 9< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 400000000000000000000001< / span > fda< span class = "hljs-number" > 604000000000000< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 350000001< / span > fdafc< span class = "hljs-number" > 800000000000186< / span > a< span class = "hljs-number" > 0000001< / span > fe< span class = "hljs-number" > 0001< / span > ffff< span class = "hljs-number" > 00000000000186< / span > a< span class = "hljs-number" > 00000< / span > fda< span class = "hljs-number" > 724020000< / span > fda< span class = "hljs-number" > 712< / span > fd< span class = "hljs-number" > 02< / span > bffdd< span class = "hljs-number" > 824< / span > fd< span class = "hljs-number" > 02< / span > b< span class = "hljs-number" > 9659e890< / span > eef< span class = "hljs-number" > 1< / span > b< span class = "hljs-number" > 223< / span > ba< span class = "hljs-number" > 45< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 9993< / span > f< span class = "hljs-number" > 88< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 7997859302< / span > fd< span class = "hljs-number" > 5510< / span > ac< span class = "hljs-number" > 23< / span > f< span class = "hljs-number" > 4< / span > cac< span class = "hljs-number" > 0< / span > d< span class = "hljs-number" > 4< / span > ee< span class = "hljs-number" > 8232< / span > a< span class = "hljs-number" > 77< / span > ecbdf< span class = "hljs-number" > 50< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 07< / span > f< span class = "hljs-number" > 093794370e6< / span > a< span class = "hljs-number" > 506< / span > a< span class = "hljs-number" > 836< / span > f< span class = "hljs-number" > 6< / span > b< span class = "hljs-number" > 0< / span > fb< span class = "hljs-number" > 54< / span > b< span class = "hljs-number" > 45< / span > f< span class = "hljs-number" > 1< / span > fb< span class = "hljs-number" > 662e1307166< / span > d< span class = "hljs-number" > 2e57030574< / span > f< span class = "hljs-number" > 77305826939< / span > fa< span class = "hljs-number" > 9124< / span > d< span class = "hljs-number" > 19< / span > bfa< span class = "hljs-number" > 8< / span > a< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 2< / span > f< span class = "hljs-number" > 00< / span > f< span class = "hljs-number" > 000586< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 58< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 79< / span > ee< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 77969< / span > a< span class = "hljs-number" > 949< / span > fdd< span class = "hljs-number" > 822< / span > fd< span class = "hljs-number" > 025300114762< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 188048< / span > a< span class = "hljs-number" > 953803< / span > f< span class = "hljs-number" > 0< / span > edeeeb< span class = "hljs-number" > 68< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 69e6< / span > cdc< span class = "hljs-number" > 1< / span > d< span class = "hljs-number" > 371< / span > ba< span class = "hljs-number" > 8< / span > d< span class = "hljs-number" > 517003< / span > accfe< span class = "hljs-number" > 05< / span > afc< span class = "hljs-number" > 4< / span > d< span class = "hljs-number" > 6588< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 3< / span > ea< span class = "hljs-num
{
< span class = "hljs-string" > "contractFlags"< / span > : < span class = "hljs-string" > "0"< / span > ,
< span class = "hljs-string" > "chainHash"< / span > : < span class = "hljs-string" > "6fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d6190000000000"< / span > ,
< span class = "hljs-string" > "contractInfo"< / span > : {
< span class = "hljs-string" > "totalCollateral"< / span > : < span class = "hljs-number" > 100000< / span > ,
< span class = "hljs-string" > "contractDescriptor"< / span > : {
< span class = "hljs-string" > "numDigits"< / span > : < span class = "hljs-number" > 17< / span > ,
< span class = "hljs-string" > "payoutFunction"< / span > : {
< span class = "hljs-string" > "points"< / span > : [
{
< span class = "hljs-string" > "outcome"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "payout"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "extraPrecision"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "isEndpoint"< / span > : < span class = "hljs-keyword" > true< / span >
},
{
< span class = "hljs-string" > "outcome"< / span > : < span class = "hljs-number" > 40000< / span > ,
< span class = "hljs-string" > "payout"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "extraPrecision"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "isEndpoint"< / span > : < span class = "hljs-keyword" > true< / span >
},
{
< span class = "hljs-string" > "outcome"< / span > : < span class = "hljs-number" > 42500< / span > ,
< span class = "hljs-string" > "payout"< / span > : < span class = "hljs-number" > 50000< / span > ,
< span class = "hljs-string" > "extraPrecision"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "isEndpoint"< / span > : < span class = "hljs-keyword" > true< / span >
},
{
< span class = "hljs-string" > "outcome"< / span > : < span class = "hljs-number" > 45000< / span > ,
< span class = "hljs-string" > "payout"< / span > : < span class = "hljs-number" > 100000< / span > ,
< span class = "hljs-string" > "extraPrecision"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "isEndpoint"< / span > : < span class = "hljs-keyword" > true< / span >
},
{
< span class = "hljs-string" > "outcome"< / span > : < span class = "hljs-number" > 131071< / span > ,
< span class = "hljs-string" > "payout"< / span > : < span class = "hljs-number" > 100000< / span > ,
< span class = "hljs-string" > "extraPrecision"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "isEndpoint"< / span > : < span class = "hljs-keyword" > true< / span >
}
]
},
< span class = "hljs-string" > "roundingIntervals"< / span > : {
< span class = "hljs-string" > "intervals"< / span > : []
}
},
< span class = "hljs-string" > "oracleInfo"< / span > : {
< span class = "hljs-string" > "announcement"< / span > : {
< span class = "hljs-string" > "announcementSignature"< / span > : < span class = "hljs-string" > "659e890eef1b223ba45c9993f88c7997859302fd5510ac23f4cac0d4ee8232a77ecbdf50c07f093794370e6a506a836f6b0fb54b45f1fb662e1307166d2e5703"< / span > ,
< span class = "hljs-string" > "publicKey"< / span > : < span class = "hljs-string" > "0574f77305826939fa9124d19bfa8a8b2f00f000586b8c58c79ee8b77969a949"< / span > ,
< span class = "hljs-string" > "event"< / span > : {
< span class = "hljs-string" > "nonces"< / span > : [
< span class = "hljs-string" > "4762c188048a953803f0edeeeb68c69e6cdc1d371ba8d517003accfe05afc4d6"< / span > ,
< span class = "hljs-string" > "588c3ea326512bc66c26a841adffa68330b8c723da442792e731fb19fda94274"< / span > ,
< span class = "hljs-string" > "a7766bb48e520f118c100bbe62dc3806a8d05a63d92e23683a04b0b8c24148cd"< / span > ,
< span class = "hljs-string" > "166585a6b33b995b3d6c083523a8435b156c05100d88f449f4754310d5574d5e"< / span > ,
< span class = "hljs-string" > "88aad09af1b8ba942cfd305e728044ec6360d847254453ec05b1b518a36660e2"< / span > ,
< span class = "hljs-string" > "238360e02f3a004663a7f3a3534973d8b66a2646c1386779aa820672b6361b88"< / span > ,
< span class = "hljs-string" > "a8696395c0add87840b460dfd8a8c0d520017efc6bf58267d4c9d2a225c5d0e5"< / span > ,
< span class = "hljs-string" > "719068a7dda5d630d7432239b6c9d921d5f3842b584503460ca52612ac2e6433"< / span > ,
< span class = "hljs-string" > "7d299513690372e8f4770eb8a28080e8d7c29920ca32af470d65d6f916ee81e3"< / span > ,
< span class = "hljs-string" > "ac15ce02684ba6d2522a9ffea1de7e202b4b699ef7ec4f089dda07f3de5b7d1f"< / span > ,
< span class = "hljs-string" > "853b2c56471999be4efca82674a651c80f047ba3a2b9e6f9999f0cd4062c533d"< / span > ,
< span class = "hljs-string" > "1ae29cab2a5e33cbe98728b7b4271c67f7c5cd6e12e39128b9971e08496cbd84"< / span > ,
< span class = "hljs-string" > "cfa99c77c88867d33e73acef37022ba4422a5221776991d45416db71fb54bc6c"< / span > ,
< span class = "hljs-string" > "104f6a8e50e8905161709215104a7e7b97e866f32cf43233ffd615cab6669983"< / span > ,
< span class = "hljs-string" > "2ec607cf59c85a7f56fa957aa5f5d7ec9f46d84d5d4b777122d41ad76c6f4968"< / span > ,
< span class = "hljs-string" > "aeedca243f2030d4f502e58f4181130e9afb75309ac21637bcfd0717528bfb82"< / span > ,
< span class = "hljs-string" > "ffe1b6c9fadee6ba70357210990539184bcc913a0ec65837a736733a2fb6172d"< / span >
],
< span class = "hljs-string" > "maturity"< / span > : < span class = "hljs-string" > "2021-02-04T00:00:00Z"< / span > ,
< span class = "hljs-string" > "descriptor"< / span > : {
< span class = "hljs-string" > "base"< / span > : < span class = "hljs-number" > 2< / span > ,
< span class = "hljs-string" > "isSigned"< / span > : < span class = "hljs-keyword" > false< / span > ,
< span class = "hljs-string" > "unit"< / span > : < span class = "hljs-string" > "BTC/USD"< / span > ,
< span class = "hljs-string" > "precision"< / span > : < span class = "hljs-number" > 0< / span >
},
< span class = "hljs-string" > "eventId"< / span > : < span class = "hljs-string" > "bitcoin-s-price-example"< / span >
}
}
}
},
< span class = "hljs-string" > "fundingPubKey"< / span > : < span class = "hljs-string" > "03a63505d00a2f927904f9c7d3cd28b59cb105b8d028fc1b715ef243351cea0f33"< / span > ,
< span class = "hljs-string" > "payoutSPK"< / span > : < span class = "hljs-string" > "1600148cd33b6fadc74aaca3982d3fd1891b1100a01e99"< / span > ,
< span class = "hljs-string" > "payoutSerialId"< / span > : < span class = "hljs-number" > 7520084828858968064< / span > ,
2022-03-02 00:54:56 +00:00
< span class = "hljs-string" > "offerCollateral"< / span > : < span class = "hljs-number" > 50000< / span > ,
2021-10-17 13:36:48 +00:00
< span class = "hljs-string" > "fundingInputs"< / span > : [
{
< span class = "hljs-string" > "inputSerialId"< / span > : < span class = "hljs-number" > 3740391543456242688< / span > ,
< span class = "hljs-string" > "prevTx"< / span > : < span class = "hljs-string" > "020000000001023ef93b35f692ce8f7ee0cfeb034941dec751fd9237624482d447964cbca1b7660000000000fdffffff787320985c52d762a56cdc5e64ef1155f0ccc722e3f51bd164406261dbc0e3ab0100000000fdffffff035af1d70000000000160014eff30273b9aa3feb39fee0916a09bf2c2477df0a4a87010000000000220020740aa2449461fd922c136ac68cd954773896276f6fc1b3b98821bac43729f012248c4300000000001600147532253f570665ff9af4b53bcac49351f8236c8402473044022027fccc6f4f796465c36261d02db821a38253e44d968c9c02ae366f743cb51bf802202eedb11a6dd006e7c1b7aefb6a5f0d729f958ccc0f88887c73d756533958d9ac01210203772fc0e7d0550414e00254af8ef148999bff47a0ceb31f44b45d7f46b4d7ec0247304402207d008545f772aadc1a2c6a632140c0c720ea0371fcce8863a7fedcb7222b0f8102203f86e0ee14ac1b9b113294fc00b81f989e064441a35e86cb1d67075c7ab4029101210360d0f354faab35e3e2ee50a39059a72ba923162ca3f1ddb75a617de19447e83200000000"< / span > ,
< span class = "hljs-string" > "prevTxVout"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "sequence"< / span > : < span class = "hljs-number" > 4294967293< / span > ,
< span class = "hljs-string" > "maxWitnessLen"< / span > : < span class = "hljs-number" > 107< / span > ,
< span class = "hljs-string" > "redeemScript"< / span > : < span class = "hljs-keyword" > null< / span >
}
],
< span class = "hljs-string" > "changeSPK"< / span > : < span class = "hljs-string" > "16001404a16b09c5eba2e29899d2eaf5e9dde374be4940"< / span > ,
< span class = "hljs-string" > "changeSerialId"< / span > : < span class = "hljs-number" > 3404283908717475840< / span > ,
< span class = "hljs-string" > "fundOutputSerialId"< / span > : < span class = "hljs-number" > 6109310038405377024< / span > ,
< span class = "hljs-string" > "feeRatePerVb"< / span > : < span class = "hljs-number" > 1< / span > ,
< span class = "hljs-string" > "cetLocktime"< / span > : < span class = "hljs-number" > 0< / span > ,
< span class = "hljs-string" > "refundLocktime"< / span > : < span class = "hljs-number" > 707177< / span >
}
< / code > < / pre >
< p > Now what Alice needs to send Bob her< / p >
< ol >
< li > Offer< / li >
< li > Tor address< / li >
< / ol >
< p > She can retrieve her tor address with< / p >
< pre > < code class = "hljs" > < span class = "hljs-keyword" > .< / span > /bitcoin-s-cli getdlchostaddress
v573gl64h5zik544qvi725vxliiwwpsedarsziidp254u3cfnxlp6zqd.onion:2862
< / code > < / pre >
< h4 > < a class = "anchor" aria-hidden = "true" id = "accept" > < / a > < a href = "#accept" 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 > Accept< / h4 >
< p > Once Bob has received Alice's dlc host address and the offer, and reviews the terms of the offer with < code > decodeoffer< / code > , he
can accept the offer.< / p >
< pre > < code class = "hljs" > ./bitcoin-s-cli acceptdlc a< span class = "hljs-number" > 71< / span > a< span class = "hljs-number" > 006< / span > fe< span class = "hljs-number" > 28< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 0< / span > ab< span class = "hljs-number" > 6< / span > f< span class = "hljs-number" > 1< / span > b< span class = "hljs-number" > 372< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 1< / span > a< span class = "hljs-number" > 6< / span > a< span class = "hljs-number" > 246< / span > ae< span class = "hljs-number" > 63< / span > f< span class = "hljs-number" > 74< / span > f< span class = "hljs-number" > 931e8365< / span > e< span class = "hljs-number" > 15< / span > a< span class = "hljs-number" > 089< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 68< / span > d< span class = "hljs-number" > 6190000000000< / span > fdd< span class = "hljs-number" > 82< / span > efd< span class = "hljs-number" > 032500000000000186< / span > a< span class = "hljs-number" > 0< / span > fda< span class = "hljs-number" > 720540011< / span > fda< span class = "hljs-number" > 72648000501000000000000000000000001< / span > fd< span class = "hljs-number" > 9< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 400000000000000000000001< / span > fda< span class = "hljs-number" > 604000000000000< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 350000001< / span > fdafc< span class = "hljs-number" > 800000000000186< / span > a< span class = "hljs-number" > 0000001< / span > fe< span class = "hljs-number" > 0001< / span > ffff< span class = "hljs-number" > 00000000000186< / span > a< span class = "hljs-number" > 00000< / span > fda< span class = "hljs-number" > 724020000< / span > fda< span class = "hljs-number" > 712< / span > fd< span class = "hljs-number" > 02< / span > bffdd< span class = "hljs-number" > 824< / span > fd< span class = "hljs-number" > 02< / span > b< span class = "hljs-number" > 9659e890< / span > eef< span class = "hljs-number" > 1< / span > b< span class = "hljs-number" > 223< / span > ba< span class = "hljs-number" > 45< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 9993< / span > f< span class = "hljs-number" > 88< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 7997859302< / span > fd< span class = "hljs-number" > 5510< / span > ac< span class = "hljs-number" > 23< / span > f< span class = "hljs-number" > 4< / span > cac< span class = "hljs-number" > 0< / span > d< span class = "hljs-number" > 4< / span > ee< span class = "hljs-number" > 8232< / span > a< span class = "hljs-number" > 77< / span > ecbdf< span class = "hljs-number" > 50< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 07< / span > f< span class = "hljs-number" > 093794370e6< / span > a< span class = "hljs-number" > 506< / span > a< span class = "hljs-number" > 836< / span > f< span class = "hljs-number" > 6< / span > b< span class = "hljs-number" > 0< / span > fb< span class = "hljs-number" > 54< / span > b< span class = "hljs-number" > 45< / span > f< span class = "hljs-number" > 1< / span > fb< span class = "hljs-number" > 662e1307166< / span > d< span class = "hljs-number" > 2e57030574< / span > f< span class = "hljs-number" > 77305826939< / span > fa< span class = "hljs-number" > 9124< / span > d< span class = "hljs-number" > 19< / span > bfa< span class = "hljs-number" > 8< / span > a< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 2< / span > f< span class = "hljs-number" > 00< / span > f< span class = "hljs-number" > 000586< / span > b< span class = "hljs-number" > 8< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 58< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 79< / span > ee< span class = "hljs-number" > 8< / span > b< span class = "hljs-number" > 77969< / span > a< span class = "hljs-number" > 949< / span > fdd< span class = "hljs-number" > 822< / span > fd< span class = "hljs-number" > 025300114762< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 188048< / span > a< span class = "hljs-number" > 953803< / span > f< span class = "hljs-number" > 0< / span > edeeeb< span class = "hljs-number" > 68< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 69e6< / span > cdc< span class = "hljs-number" > 1< / span > d< span class = "hljs-number" > 371< / span > ba< span class = "hljs-number" > 8< / span > d< span class = "hljs-number" > 517003< / span > accfe< span class = "hljs-number" > 05< / span > afc< span class = "hljs-number" > 4< / span > d< span class = "hljs-number" > 6588< / span > < span class = "hljs-keyword" > c< / span > < span class = "hljs-number" > 3< / span > ea< span class = "hljs-numbe
< / code > < / pre >
< p > Currently this RPC doesn't return anything, but if you look at logs you should see your funding tx broadcast.
You can find logs at < code > ~/.bitcoin-s/{mainnet,testnet3,regtest}/bitcoin-s.log< / code > < / p >
< pre > < code class = "hljs" > [info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 21< / span > :< span class = "hljs-number" > 11< / span > UTC INFO [DLCClient] connecting to SOCKS5 proxy localhost/< span class = "hljs-number" > 127.0< / span > < span class = "hljs-number" > .0< / span > < span class = "hljs-number" > .1< / span > :< span class = "hljs-number" > 65396< / span >
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 21< / span > :< span class = "hljs-number" > 11< / span > UTC INFO [DLCClient] connected to SOCKS5 proxy localhost/< span class = "hljs-number" > 127.0< / span > < span class = "hljs-number" > .0< / span > < span class = "hljs-number" > .1< / span > :< span class = "hljs-number" > 65396< / span >
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 21< / span > :< span class = "hljs-number" > 11< / span > UTC INFO [DLCClient] connecting to v573gl64h5zik544qvi725vxliiwwpsedarsziidp254u3cfnxlp6zqd.onion:< span class = "hljs-number" > 2862< / span > via SOCKS5 localhost/< span class = "hljs-number" > 127.0< / span > < span class = "hljs-number" > .0< / span > < span class = "hljs-number" > .1< / span > :< span class = "hljs-number" > 65396< / span >
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 21< / span > :< span class = "hljs-number" > 48< / span > UTC INFO [DLCClient] connected to v573gl64h5zik544qvi725vxliiwwpsedarsziidp254u3cfnxlp6zqd.onion:< span class = "hljs-number" > 2862< / span > via SOCKS5 proxy localhost/< span class = "hljs-number" > 127.0< / span > < span class = "hljs-number" > .0< / span > < span class = "hljs-number" > .1< / span > :< span class = "hljs-number" > 65396< / span >
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 21< / span > :< span class = "hljs-number" > 48< / span > UTC INFO [DLCDataHandler] Received LnMessage DLCOfferTLV
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 21< / span > :< span class = "hljs-number" > 48< / span > UTC INFO [DLCWallet$DLCWalletImpl] Initializing DLC < span class = "hljs-keyword" > from< / span > received offer with tempContractId acdeaf6a46f3dab8be37e59a3684183cdbfd4e9fbc84a09fc420d67c1334466e
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 21< / span > :< span class = "hljs-number" > 48< / span > UTC INFO [HikariDataSource] bitcoin-s.dlc.db - Starting...
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 21< / span > :< span class = "hljs-number" > 48< / span > UTC INFO [HikariDataSource] bitcoin-s.dlc.db - Start completed.
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 21< / span > :< span class = "hljs-number" > 48< / span > UTC INFO [DLCWallet$DLCWalletImpl] Creating DLC Accept < span class = "hljs-keyword" > for< / span > tempContractId acdeaf6a46f3dab8be37e59a3684183cdbfd4e9fbc84a09fc420d67c1334466e
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 21< / span > :< span class = "hljs-number" > 49< / span > UTC INFO [DLCWallet$DLCWalletImpl] Spending UTXOs: < span class = "hljs-number" > 91< / span > de6518fbf9eb656d9690224655049f5f21ac1c2189a142b1e0ce586989740d:< span class = "hljs-number" > 2< / span >
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 21< / span > :< span class = "hljs-number" > 49< / span > UTC INFO [DLCWallet$DLCWalletImpl] UTXO < span class = "hljs-number" > 0< / span > details: TransactionOutput(< span class = "hljs-number" > 4426788< / span > sats,wpkh(< span class = "hljs-number" > 7532253f< / span > 570665ff9af4b53bcac49351f8236c84))
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 21< / span > :< span class = "hljs-number" > 49< / span > UTC INFO [DLCWallet$DLCWalletImpl] Creating CET Sigs < span class = "hljs-keyword" > for< / span > fc4807e44939b83576b50e2ae6e12ba84bdd4ff398addb07f91a3dc045c62701
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 21< / span > :< span class = "hljs-number" > 50< / span > UTC INFO [DLCWallet$DLCWalletImpl] Created DLCAccept < span class = "hljs-keyword" > for< / span > tempContractId acdeaf6a46f3dab8be37e59a3684183cdbfd4e9fbc84a09fc420d67c1334466e with contract Id fc4807e44939b83576b50e2ae6e12ba84bdd4ff398addb07f91a3dc045c62701
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 22< / span > :< span class = "hljs-number" > 07< / span > UTC INFO [DLCDataHandler] Received LnMessage DLCSignTLV
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 22< / span > :< span class = "hljs-number" > 07< / span > UTC INFO [DLCWallet$DLCWalletImpl] Verifying CET Signatures < span class = "hljs-keyword" > for< / span > contract fc4807e44939b83576b50e2ae6e12ba84bdd4ff398addb07f91a3dc045c62701
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 22< / span > :< span class = "hljs-number" > 09< / span > UTC INFO [DLCWallet$DLCWalletImpl] CET Signatures are valid < span class = "hljs-keyword" > for< / span > contract fc4807e44939b83576b50e2ae6e12ba84bdd4ff398addb07f91a3dc045c62701
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 22< / span > :< span class = "hljs-number" > 09< / span > UTC INFO [DLCWallet$DLCWalletImpl] Verifying < span class = "hljs-number" > 1< / span > funding sigs < span class = "hljs-keyword" > for< / span > contract fc4807e44939b83576b50e2ae6e12ba84bdd4ff398addb07f91a3dc045c62701
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 22< / span > :< span class = "hljs-number" > 11< / span > UTC INFO [DLCWallet$DLCWalletImpl] DLC fc4807e44939b83576b50e2ae6e12ba84bdd4ff398addb07f91a3dc045c62701 sigs are verified < span class = "hljs-keyword" > and< / span > stored, ready to broadcast
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 22< / span > :< span class = "hljs-number" > 12< / span > UTC INFO [DLCWallet$DLCWalletImpl] Created funding transaction < span class = "hljs-number" > 5096< / span > a88e0fca628dc882ebb0d06533949020016c24297b983d3aebbc56f2616f < span class = "hljs-keyword" > for< / span > contract fc4807e44939b83576b50e2ae6e12ba84bdd4ff398addb07f91a3dc045c62701
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 22< / span > :< span class = "hljs-number" > 12< / span > UTC INFO [DLCWallet$DLCWalletImpl] Broadcasting funding transaction < span class = "hljs-number" > 5096< / span > a88e0fca628dc882ebb0d06533949020016c24297b983d3aebbc56f2616f < span class = "hljs-keyword" > for< / span > contract fc4807e44939b83576b50e2ae6e12ba84bdd4ff398addb07f91a3dc045c62701
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 22< / span > :< span class = "hljs-number" > 12< / span > UTC INFO [DLCWallet$DLCWalletImpl] Adding UTXO to wallet: < span class = "hljs-number" > 6f< / span > 61f256bceb3a3d987b29246c012090943365d0b0eb82c88d62ca0f8ea89650:< span class = "hljs-number" > 2< / span > amt=< span class = "hljs-number" > 4376577< / span > sats
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 22< / span > :< span class = "hljs-number" > 12< / span > UTC INFO [DLCWallet$DLCWalletImpl] Successfully inserted UTXO < span class = "hljs-number" > 6f< / span > 61f256bceb3a3d987b29246c012090943365d0b0eb82c88d62ca0f8ea89650:< span class = "hljs-number" > 2< / span > < span class = "hljs-built_in" > int< / span > o DB
[info] < span class = "hljs-number" > 2021< / span > < span class = "hljs-number" > -10< / span > < span class = "hljs-number" > -15< / span > T21:< span class = "hljs-number" > 22< / span > :< span class = "hljs-number" > 12< / span > UTC INFO [DLCWallet$DLCWalletImpl] Processing tx < span class = "hljs-number" > 5096< / span > a88e0fca628dc882ebb0d06533949020016c24297b983d3aebbc56f2616f < span class = "hljs-keyword" > for< / span > < span class = "hljs-number" > 1< / span > DLC(s)
< / code > < / pre >
< p > You can check the state of the DLC with < code > getdlcs< / code > < / p >
< pre > < code class = "hljs" > ./bitcoin< span class = "hljs-_" > -s< / span > -cli getdlcs
[
{
< span class = "hljs-string" > "state"< / span > : < span class = "hljs-string" > "Broadcasted"< / span > ,
< span class = "hljs-string" > "dlcId"< / span > : < span class = "hljs-string" > "543249d7c34014a774810d3633fb7d19f339fbcd4e88ceccad7018fa7b611706"< / span > ,
< span class = "hljs-string" > "isInitiator"< / span > : < span class = "hljs-literal" > false< / span > ,
< span class = "hljs-string" > "lastUpdated"< / span > : < span class = "hljs-string" > "2021-10-15T21:22:12.149Z"< / span > ,
< span class = "hljs-string" > "tempContractId"< / span > : < span class = "hljs-string" > "acdeaf6a46f3dab8be37e59a3684183cdbfd4e9fbc84a09fc420d67c1334466e"< / span > ,
< span class = "hljs-string" > "contractId"< / span > : < span class = "hljs-string" > "fc4807e44939b83576b50e2ae6e12ba84bdd4ff398addb07f91a3dc045c62701"< / span > ,
< span class = "hljs-string" > "contractInfo"< / span > : < span class = "hljs-string" > "fdd82efd032500000000000186a0fda720540011fda72648000501000000000000000000000001fd9c400000000000000000000001fda604000000000000c350000001fdafc800000000000186a0000001fe0001ffff00000000000186a00000fda724020000fda712fd02bffdd824fd02b9659e890eef1b223ba45c9993f88c7997859302fd5510ac23f4cac0d4ee8232a77ecbdf50c07f093794370e6a506a836f6b0fb54b45f1fb662e1307166d2e57030574f77305826939fa9124d19bfa8a8b2f00f000586b8c58c79ee8b77969a949fdd822fd025300114762c188048a953803f0edeeeb68c69e6cdc1d371ba8d517003accfe05afc4d6588c3ea326512bc66c26a841adffa68330b8c723da442792e731fb19fda94274a7766bb48e520f118c100bbe62dc3806a8d05a63d92e23683a04b0b8c24148cd166585a6b33b995b3d6c083523a8435b156c05100d88f449f4754310d5574d5e88aad09af1b8ba942cfd305e728044ec6360d847254453ec05b1b518a36660e2238360e02f3a004663a7f3a3534973d8b66a2646c1386779aa820672b6361b88a8696395c0add87840b460dfd8a8c0d520017efc6bf58267d4c9d2a225c5d0e5719068a7dda5d630d7432239b6c9d921d5f3842b584503460ca52612ac2e64337d299513690372e8f4770eb8a28080e8d7c29920ca32af470d65d6f916ee81e3ac15ce02684ba6d2522a9ffea1de7e202b4b699ef7ec4f089dda07f3de5b7d1f853b2c56471999be4efca82674a651c80f047ba3a2b9e6f9999f0cd4062c533d1ae29cab2a5e33cbe98728b7b4271c67f7c5cd6e12e39128b9971e08496cbd84cfa99c77c88867d33e73acef37022ba4422a5221776991d45416db71fb54bc6c104f6a8e50e8905161709215104a7e7b97e866f32cf43233ffd615cab66699832ec607cf59c85a7f56fa957aa5f5d7ec9f46d84d5d4b777122d41ad76c6f4968aeedca243f2030d4f502e58f4181130e9afb75309ac21637bcfd0717528bfb82ffe1b6c9fadee6ba70357210990539184bcc913a0ec65837a736733a2fb6172d601b3900fdd80a11000200074254432f55534400000000001117626974636f696e2d732d70726963652d6578616d706c65"< / span > ,
< span class = "hljs-string" > "contractMaturity"< / span > : 706169,
< span class = "hljs-string" > "contractTimeout"< / span > : 707177,
< span class = "hljs-string" > "feeRate"< / span > : 1,
< span class = "hljs-string" > "totalCollateral"< / span > : 100000,
< span class = "hljs-string" > "localCollateral"< / span > : 50000,
< span class = "hljs-string" > "remoteCollateral"< / span > : 50000,
< span class = "hljs-string" > "fundingTxId"< / span > : < span class = "hljs-string" > "5096a88e0fca628dc882ebb0d06533949020016c24297b983d3aebbc56f2616f"< / span >
}
]
< / code > < / pre >
< p > You can find things like the < code > fundingTxId< / code > , < code > state< / code > , < code > dlcId< / code > , and < code > contractId< / code > from this RPC call. Since we just
broadcast the funding transaction, the state of the DLC is < code > Broadcast< / code > .< / p >
2022-01-04 15:29:38 +00:00
< / span > < / div > < / article > < / div > < div class = "docs-prevnext" > < a class = "docs-prev button" href = "/docs/next/wallet/wallet-election-example" > < span class = "arrow-prev" > ← < / span > < span > Wallet Election Example< / span > < / a > < a class = "docs-next button" href = "/docs/next/tor/tor" > < span > Tor Setup< / span > < span class = "arrow-next" > →< / span > < / a > < / div > < / div > < / div > < nav class = "onPageNav" > < ul class = "toc-headings" > < li > < a href = "#requirements-for-example" > Requirements for example< / a > < / li > < li > < a href = "#betting-on-bitcoin" > Betting on bitcoin< / a > < ul class = "toc-headings" > < li > < a href = "#building-funding-txdlcs-with-your-counterparty" > Building funding tx/dlcs with your counterparty< / a > < / li > < / ul > < / 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 & the bitcoin-s developers< / section > < / footer > < / div > < script type = "text/javascript" src = "https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.js" > < / script > < script >
2021-10-17 13:36:48 +00:00
document.addEventListener('keyup', function(e) {
if (e.target !== document.body) {
return;
}
// keyCode for '/' (slash)
if (e.keyCode === 191) {
const search = document.getElementById('search_input_react');
search & & search.focus();
}
});
< / script > < script >
var search = docsearch({
apiKey: '0a510688bf8448e19aeb380377d328d3',
indexName: 'bitcoin-s',
inputSelector: '#search_input_react'
});
< / script > < / body > < / html >