Weekly Edition for Thursday, Mar 28

Potential Privacy Issue With Dual Funded Channels

Dual funding and splicing mechanisms allow initial negotiations between node to allow the node on the other end an opportunity to put funds at channel opening time or after it. Finding liquidity is a problem that had solutions suggested all the way back in November, the suggestion was, in summary, that a node will advertise initial liquidity matching via their node_announcement, this is meant to help these nodes source inbound capacity from a market of advertised liquidity rates as set by other nodes.

After a recent spec meeting, developer Rene Pickhardt noticed a potential privacy issue with this schema: a node can spam another probing for a lower bound for the amount of BTC available by this node, each time aborting the channel establishing before locking any of its own Bitcoin.



project release date
zap-desktop v0.4.0-beta

Bug Fixes

  • activity: make internal transactions searchable (1f29ff9)
  • activity: properly categorize pending transactions (6b828b1)
  • activity: show limbo amount for force close transactions (aad8154), closes #1176
  • app: do not display app until ready (ab81579)
  • app: retain wallets & settings data on logout (a5d6d24), closes #1723
  • bar: allow ui Bar to accept bg color prop (394974f)
  • btc: ensure convert always returns numbers (bf5ffda)
  • channels: display wallet balance on create form (865f89e), closes #1648
  • channels: improve channel create messages (e22d90a)
  • channels: refresh channels after LN payments (b1465f9), closes #1825
  • home: increase sidebar width (a9abf52)
  • i18n: change search results message (3fefe9b)
  • lnd: defer fetching data until sync complete (fba3cc9)
  • lnd: enable assumechanvalid on mainnet (d55d3fa)
  • lnd: enable assumechanvalid on mainnet (82c60b5)
  • lnd: show sync screen as early as possible (a287ec2)
  • lnd: switch to testnet3 and testnet4 btcd nodes (3835eca)
  • lnd: trigger resync for all local wallets (d2aae8b)
  • radio: fix padding when no desc or label is set (07119a8)
  • settings-edit: add support for btcpay connection (d2749e5)
  • sync: clean up text on sync screen (66739f5), closes #1530
  • sync: ensure QR code shown when syncing (46ab1d8), closes #1367
  • textarea: allow overriding props with rest (6425a5a)
  • ui: add close channel notification (c3c6c76)
  • ui: adjust language in onboarding network step (408c741)
  • ui: allow escape close standalone modals (af8a347)
  • ui: always use preset font sizes (370de90), closes #1786
  • ui: avoid channel capacity break in 2 lines (bc6b01d)
  • ui: bring activitymodal to modalstack (f82f1d0)
  • ui: bring receivemodal to modalstack (d8b87d0), closes #1614
  • ui: change invoice status color scheme (d75f27a)
  • ui: close all modals before opening pay form (f943bc8)
  • ui: correctly handle escape for stacked modals (ad1d2e2)
  • ui: disable launch button when opening wallet (9b2edb6)
  • ui: disable open channel button on submit (4cf556a)
  • ui: disable pointer events on fade (c89cea4)
  • ui: ensure dialogs are closed on unmount (33535f0)
  • ui: ensure notifications don't cover modal close button (8d507ba)
  • ui: fetch transactions on schedule (bb16174), closes #1683
  • ui: fix connection details tabcontrol (0fee8c3)
  • ui: fix last item dropshadow glitch in channel summary list (38e0028), closes #1671
  • ui: fix line heights for Heading component (4f6943a)
  • ui: improve channel search results header (e0e0f2c)
  • ui: improve opendialoginput (faa9821)
  • ui: include suggested nodes in search results (98855c3)
  • ui: incorrect currency address name (3b86d55), closes #1843
  • ui: incorrect currency dropdown opacity for offline channels (4bdc9ad), closes #1672
  • ui: make node search case insensitive (17dca90)
  • ui: only show fee widget for onchain transactions (a840e58)
  • ui: prevent breaking channel status text in 2 lines (de755b3), closes #1649
  • ui: prevent long name break in channel search (9009b16), closes #1659
  • ui: properly detect active submenu (e051c2e)
  • ui: repair delete wallet action (e425437)
  • ui: resolve inconsistency in channel forms (0a4c6ef)
  • ui: standardize hr line weights (e2ea161)
  • ui: top align message icon (a83f8e2)
  • ui: use consistent pay form icon (9c2ef11), closes #1610
  • wallet: better payment success/error handling (2485558)
  • wallet: ensure pay form auto submits on valid address (781a621)
  • wallet: ensure tickers are ready before displaying app (8cab8fc)
  • wallet: include limbo balance in wallet total (6914705), closes #1792
  • allow customize tabs with styled system (e0e24a9)
  • unsupported style property max-width console warning (193904b)
  • unsupported style property max-width console warning (b6c700c)
  • ui: incorrect fiat to satoshi conversion (e8654bd)
  • ui: make incoming/outgoing transaction more obvious (f2b4530), closes #1538
  • wallet: resolve broken link in help menu (41b5684)
  • improve loading screen messages (de9076e), closes #1178
  • forms: more robust handling for amount inputs (bbd3659), closes #1547
  • lnd: ensure lnd start errors are displayed (38ea8cc)
  • ui: blank screen while waiting for remote node reponse (90684fb)
  • ui: ensure amount input group has required flag (a9e7abe)
  • ui: implement themed delete wallet dialog (8ac4d43)
  • ui: improve checkbox component (2dddf58)
  • ui: incorrect save wallet action bar visibility (9ea181f)
  • ui: introduce singleton loading screen (04b6805)
  • ui: loading bolt dom position and style (2f08a1b)
  • ui: reduce default app width to 900px (dc28e5a)
  • wallet: do not crash after paying msat invoices (d5b405f), closes #1568
  • wallet: ensure currency unit is saved on change (46a3f1e)
  • wallet: include pending channel balance in wallet balance (d1771de), closes #1770
  • wallet: remove system confirmation dialog (136ba33)


  • activity: merge expired toggle with filters (09f51f9)
  • activity: new activity search and filters (dca93ab)
  • channels: add channel refresh button (884c5d4)
  • channels: categorise opening/funding transactions (de111c8), closes #902
  • channels: channel card list and view switcher (1493fb0), closes #1490
  • channels: channel create form summary (e448123), closes #1571
  • channels: channel detail view (9752dd1), closes #1427
  • channels: include loading chanels in listings (67ffbd5)
  • channels: manage channels menu item (6679da1), closes #1425
  • channels: new channel list search filters (7176335)
  • channels: new channel search form (7e2db64), closes #1571
  • channels: new channel summary list (1a89456), closes #1425
  • channels: new create channel form (cfd499a), closes #1448
  • channels: private channel toggle (61bea8d), closes #1570
  • channels: remember use selected channel view mode (c0979d6), closes #1688
  • channels: set fee rate when opening channel (20e9f7e), closes #1569
  • channels: show closing transaction in channel detail (3a5a7cc), closes #1687
  • channels: show notification when opening channel (cb58684)
  • channels: suggested nodes on channel form (b98e1e8), closes #1615
  • channels: use unconfirmed outputs in funding transaction (c494c70), closes #1495
  • channels: validate channel amount input (7b4f7f0), closes #1494
  • i18n: add uah currency and fix comment typo (5be6368)
  • inc-expiry-time: extend default invoice expiry time to 24hrs (7f5ff40)
  • lnd: generate lndconnect uri for remote nodes (fcb98c7)
  • lnd: lnd crash recovery (show dialog) (dc68ac9), closes #1824
  • onboarding: user selectable active network (8c038fc), closes #1767
  • ui: add ability to edit host cert and macaroon (4d37a48), closes #1182
  • ui: add ability to edit remote connections that use lndconnect (04175e9), closes #1624
  • ui: add ability to select macaroon and cert file from dialog (c4a6d1e)
  • ui: add close channel dialog (058b7e0), closes #1449
  • ui: add contextual help component (00c95e0), closes #1291
  • ui: add opening date to channel details (afbebe2)
  • ui: animate modals open close (fb3fc54)
  • ui: enable modal close on escape key (96cd9a0), closes #1195
  • ui: implement better getting started ui (ac74967), closes #1553
  • ui: implement wallet settings save (7e1596d), closes #1190
  • wallet: ability to set on-chain transaction fees (236d01b), closes #1754
  • wallet: add lndconnect qrcode to receive modal (f6b9c1d), closes #1145
  • wallet: full support for lndconnect links (ee6c27e), closes #1147
  • wallet: set default currency to sats (d4b28c0)
  • wallet: show confirmations in transaction detail (9f6e9b4), closes #1686
  • wallet: support bitcoin payment uris (bip-21) (9aa9981), closes #1692

Performance Improvements

  • ui: improve channel list rendering (bc0a6c6)
  • ui: use persistent tabs in channel management (332e47f)
  • ui: use react virtualized in channel card list (e25434a), closes #1537
  • ui: use react virtualized in channel summary list (98ab188)
Samurai Wallet 0.99.27

sha256 hash: 09bfc3e294b53f563ece6e6711280b59e2dcbae82ebb66c23c408f98e6c684e4

*** stealth launch, remote commands, SIM switch detection removed until further notice ***

Tor integrated in-app, Tor #Cahoots Easter Egg: 2-wallet coinjoins: Stowaway (payjoin spend), STONEWALLx2 Display transaction entropy pre-spend PayNym: 1-touch "refund" & "pay again" nLockTime staggered Ricochet label your utxos Stowaway on testnet: 2-wallet coinjoin testbed (PayJoin/P2EP) updated fee selection updated spend & receive UI sign messages from Address Calculator txTenna integration bitcoin only, no fiat fx PayNym may use Segwit addresses offline mode address calculation tools PayNym address calculation tool updated receive screen updated transaction sequence: compose-sign-broadcast display wallet amounts by address type full BIP84/bech32 support STONEWALL spend Ricochet 2.0 multi-hop spend sweep BIP84 (Bech32) & BIP49 (P2SH-P2WPKH) private keys displays YPUB of BIP49 account, ZPUB of BIP84 account OXT transaction view batch send improved fee selection & display support for PayNym.is BIP47 payment code directory optional setting: like-typed outputs (better privacy) vs all segwit outputs (lower fees) block utxo of non-broadcast transactions push any signed transaction (hex format) via 'broadcast transaction hex' in settings sign messages with Segwit (P2SH-P2WPKH) privkey like-typed inputs (p2pkh or segwit) will match type of outputs (wallet balance permitting) real time alert if wallet is being "dusted" (ie. incoming tx >546 & <1000) all utxo are now "blockable" and will not be spent if so marked optionally show redeem script of Segwit utxo full support for Segwit (P2SH-P2WPKH) Mule tools (offline transactions) balance & utxo via Samourai backend API fork detection read, validate, sweep OpenDime Segwit & UASF block explorers new metadata format improved wallet recovery UI/UX 0-fee tx possible using trusted node Custom fee lower limit now 1 sat/b Sign messages w/ any utxo privkey Exchange rate modifs (replace Bitcoin Average by Bitfinex) Updated launch icon Optionally show privkey of utxo Opt-in RBF (replace-by-fee) CPFP (child-pays-for-parent) for unconfirmed sent transactions CPFP (child-pays-for-parent) for unconfirmed received transactions display up-to-date miners' fees allow custom fee on spend PoW check when using trusted node spend via preferred trusted full node UTXO list dynamic fee for BIP47 notif tx

BTC Pay Server v1.0.3.89 2019-03-24
spruned 0.0.6

Welcome to spruned 0.0.6!

This new release comes with a major update: zeromq support. All the Core 0MQ topics are supported: hashblock, rawblock, hashtx, rawtx.

Summary: - new checkpoints: up to block 568150 (00000000000000000001ae8ead7f279a3f7038967a147a0fb35acb83ff16fd82) - new feature: zeromq - new electrum testnet servers (public servers are unreliable, I'm going to support also the testnet network) - jsonrpc: gettxout floats was returned as strings - jsonrpc: getblockchaininfo difficulty&chainwork are mocks but the syntax is now valid (was null values) - arguments: –daemon is deprecated, the argument is now useless and will be removed in next versions.



type rfc # title date status
bolt X Should the `htlc_maximum_msat` and `htlc_minimum_msat` fields in the `channel_update` be dynamic? 2019-03-27 Update
bolt routing gossip BOLT 7: fix message name(gossip_timestamp_range -> gossip_timestamp_filter) 2019-03-26 New PR
slip slip-0044 Update slip-0044.md - add OBSR 2019-03-27 Merged
slip slip-0044 Add Bitcoinzero to slip-0044 2019-03-27 Merged
slip slip-0044 Add GravityCoin to slip-0044 2019-03-27 Merged
slip slip-0044 slip-0044: add MASS 2019-03-26 Closed
slip slip-0044 Update slip-0044.md 2019-03-26 Closed
slip X add rco and eco 2019-03-26 Closed
slip slip-0044 slip-0044:add CranePay(CRP) 2019-03-26 Merged
slip slip-0173 slip-0173: add CranePay 2019-03-26 Update
slip slip-0044 Update slip-0044.md - add ION 2019-03-28 Merged
slip slip-0044 Update slip-0044.md - add SLX 2019-03-28 Merged