Decred Journal — November 2020
November’s top stories:
- The v1.6 Release Candidates have been tested by the community and received many bug fixes and user experience refinements, problems are hard to find now so that usually means graduation to a full-fledged release will happen soon.
- dcrdex released a patch release with some edge case fixes and a stash of UI and backend improvements for the next release.
- Funding for continued development of mobile wallets and a new GoDCR desktop wallet was approved, the funding for GoDCR also includes sponsorship of the Gio library which it uses for the interface.
- VSPs are onboarding to vspd, and already four providers have upgraded to support the new account-less and optionally mixed tickets which Decrediton offers in v1.6.
v1.6 Release Candidate 4
Thanks everyone for helping to test the builds and move closer to the release of the epic v1.6.
Unless otherwise noted, the work reported here has the “merged to master” status. It means that the work is completed, reviewed, and integrated into the source code that advanced users can build and run, but is not yet available in release binaries for regular users.
Decentralized treasury consensus rules have been activated on testnet without issues.
Merged in master (work towards v1.7) and backported to v1.6 release branch:
- limited mempool to not track stats for too many unconfirmed ancestor transactions. This prevents the possibility of a number of complexity attacks and speeds up block template generation for large chains of unconfirmed transactions.
- corrected treasury vote status handling in RPC commands
- added new fields to output of some RPC commands to indicate treasurybase and treasuryspend inputs (funds coming from the new treasury) and updated the docs
- fixed minor sync issue in the treasury code discovered on testnet
- default curve to generate RPC certificates changed to P-256 because Chromium (used by Decrediton) removed support for a stronger P-521.
- gencerts tool gained the ability to generate certificates signed by a local CA certificate and key, which helps to reduce configuration complexity
- fixed concurrency issues
- more tests for rpcserver
- refactored database upgrade logic to deduplicate and make it faster to write future upgrades
- use random coin selection for all regular sends
- save unpublished VSP fee transaction to prevent double spends across wallet restarts
- send ticket’s parent transaction along the VSP fee address request (to register the ticket faster, the VSP needs to be aware of the output funding the ticket, which typically comes from the “split transaction” mined in the same block and not always immediately visible by the VSP)
- use correct change account for paying VSP fees when performing a mixed ticket purchase, in order to prevent unmixed change from being used with a mixed account (there was no privacy leak because mixed VSP staking is not released yet and there was no such issue for mixed solo staking)
- make max VSP fee configurable
- bug fixes and documentation updates
- updating of Trezor firmware (a step towards Trezor staking support)
- Privacy page reworked for simplicity, following the updated design
- help page introducing Privacy features
- show logs on the Privacy page
- ability to allow sending transactions from accounts other than mixed account
- display filter for mixed transactions
- fixed wrong change destination for privacy wallets
- filter proposals that finished voting by their approved or rejected status
- don’t allow to close Decrediton while certain operations are running
- AppImage packaging where Decrediton comes as a single executable file (as a side effect this allows GNOME users to avoid having to launch it via command line)
- removed max wallets limit
- updated Chinese translation
- added partial new translations to Arabic, Italian and Polish
- many UI tweaks
Around 60 bugs were fixed in October and ~65 in November. The growing list of Decrediton’s features requires more testing firepower. Big thanks to all testers who help to improve Decrediton!
- migration to grpc-js to significantly reduce build time and binary size
- automated tests for Get Started and Settings pages
- Trezor ticket purchasing on testnet
- TOTP code check on login (those 6-digit codes for 2FA)
- inline images in drafts
- numerous design fixes
- automated UI testing using cypress
- bug fixes
- infrastructure for tracking GitHub activity stats which will be used to ensure that developers’ progress matches their billed hours
- stats for past invoices and GitHub contributions on the Invoice page to help admins with the review
- multiple fixes
- frontend support for TOTP login
- do not reject tickets with invalid vote choices (this is desirable to not stall the registration of tickets when client or server are not up to date, explained here)
- accept optional parent transaction in fee address request (see dcrwallet section above)
- bug fixes and code cleanup
- completed Postgres implementation. All database tests are now run against both Bolt and Postgres. BoltDB only allows to deploy a single instance of dcrpool since it’s an embedded key/value database. With Postgres, multiple dcrpool instances can be deployed against the same Postgres database.
- extracted errors package to support extracting database into its own package
- bug fixes and code cleanup
It is recommended to upgrade to the latest master or release candidate tag of dcrlnd.
Merged in master:
- close buttons on modal dialogs
- confirmation counts on order details page
- batch redemption transactions to possibly save some coins on tx fees
- visible notification when an order is revoked
- more chart interactivity (highlight hovered orders on the depth chart and more)
- TUI removed (:terminal lifeforms dropping little tears:)
- do not allow trading while blockchain is syncing
- run contract auditing asynchronously to not block incoming messages and other activities for the trade
- improved shutdown sequence
- avoid wallet locked errors
- optimized memory usage of order books
- configurable lot limits for new users and users with good swap history
- admin functions to retrieve market data
- faster and richer test harnesses
- load testing bot with customizable “programs” to stress the system
- dexc Dockerized
- spec for DEX client’s RPC protocol to help programs other than dexctl (such as Decrediton) use the DEX client
- fixed several edge cases
A total of 37 PRs from 6 contributors were merged, adding 7K and deleting 4K lines of code.
- max order estimation
- user reputation
- resuming swaps from the database
- market data API endpoints to allow external parties and websites to pull data from the DEX
Merged in dcrlibwallet shared library:
- ability to send custom inputs (to support coin control features)
- prevent more than one wallet from using the same seed
- French translation
- bug fixes and UI tweaks
- bug fixes for the Markets page
- updated to Rosetta spec v1.4.5
- unit test coverage for every service call of the backend and the majority of the code paths
- improved handling of connection to dcrd
- return peer list and sync status
- make Construction API methods usable in offline instance as required by the spec
- press releases converted to separate pages
- content updates
- release tool got a bunch of upgrades to automate more steps of the release process
Welcome to new first time contributors with code merged to master: @HlloWrld (dcrweb).
Community stats as of Dec 1:
- Twitter followers: 40,897 (+79)
- Reddit subscribers: 9,982 (+45)
- Matrix #general users: 253 (+31)
- Discord users: 1,501
- Telegram users: 2,339 (-55)
- YouTube subscribers: 4,250 (+40), views: 162K (+3K)
- LinkedIn followers: 932 (+8)
- GitHub dcrd stars: 567 (+1), forks: 246 (+0)
In November the Treasury received 11,975 DCR and spent 13,846 DCR. Using November’s daily average DCR/USD rate of $18.19, this is $218K received and $252K spent. At October’s average daily rate of $12.01, the USD figure billed for past work is $166K. As of Dec 4, the Treasury balance is 636,385 DCR (16.4 million USD at $25.69).
There were 4 proposals published in October, 3 have been approved and 1 has been abandoned.
- GoDCR proposal from @raedah requested a budget of $60K to further develop (8 months) a Go-native desktop wallet using Gio library. This proposal includes a $1,000/month sponsorship of Gio, for which GoDCR has become a pioneering project. Approved with 92% support and 38% turnout.
- A related mobile wallets proposal from @raedah requested $44K for a further 8 months of work on the Android and iOS wallets. Both mobile wallets and GoDCR share the dcrlibwallet component, which allows all three to access new features added to it. Approved with 93% support and 38% turnout.
- A proposal from @joegruff to further develop a Decred Address Scanner Android app requested $3,000 for work already completed (app has been open source and in the Google Play store for a year) and $6,000 maximum for necessary updates and new features. By popular demand in comments Joe agreed to add compact filters support to improve privacy, and even work voluntarily if needed (because it was too late to edit the proposal with this feature). The vote was tense as the support stayed below 60% most of the time, but eventually the proposal was approved with 67% support and 34% turnout.
- A proposal from @paris_smithson to fund artwork production and marketing for WhyDecred.com originally requested $16,800 to fund 16 artworks, was edited to drop the request by $10K (to $6,800), before ultimately being abandoned with the idea that the site will be completed before another proposal is submitted.
Politeia Digest issue 39 has more details on the month’s proposals.
decredcommunity/proposals repository has been reorganized for consistent structure. The repo currently holds 52 updates for 13 proposals. Please submit updates for your proposals as it helps to collect them in one place (vs searching across chats and Reddit) and protect from loss. (summon @bee if you don’t want to face GitHub alone)
Hashrate: November’s hashrate opened at ~226 Ph/s and closed ~293 Ph/s, bottoming at 215 Ph/s and peaking at 566 Ph/s throughout the month. Pool hashrate distribution as of Dec 1: UUPool 44%, Poolin 35%, easy2mine 13%, Huobipool 2.6%, Antpool 2%, F2Pool 1.6%, BTC.com 1.2%, Luxor 1%, CoinMine 0.02%.
Staking: 30-day average ticket price was 158.66 DCR (+6.96). The price varied between 139.3–188.9 DCR. Locked amount was 6.09–6.61 million DCR, which corresponded to 49.88–53.64% of the available supply participating in PoS.
The ticket price once again reached new high of 188.85 DCR while stake participation (DCR locked in tickets) has hit an all-time high of 53.6%.
Nodes: Throughout November there was an average of 114 public listening nodes and 166 total nodes per dcr.farm. Average version distribution for November: 28% dcrd v1.5.2, 20% dcrd v1.5.1, 13% dcrd v1.6 dev builds, 5% dcrd v1.5.0, 3.4% dcrd v1.7 dev builds, 3% dcrd v1.5 dev and RC builds, 1.1% dcrd v1.4, 12% dcrwallet v1.5.1, 2.5% dcrwallet v1.6 dev and RC builds, 1.3% dcrwallet v1.5, 0.8% dcrwallet v1.4, 9% others.
In other news:
- Decred network has processed 500,000 blocks!
- there’s a new @CoinShuffle_BOT account that tweets Decred’s daily mixing stats
- wealth distribution study by Coin Metrics has found that Decred is second after Bitcoin by their Network Distribution Factor metric (note: NDF is based on addresses and many addresses may be controlled by the same person, discussion here)
Welcome the new vsp.decredcommunity.org service that is running a mainnet instance of the new vspd software. As of writing it has ~70 live and ~30 voted tickets.
As of writing we have a total of 5 mainnet vspd services to choose from. Thank you all for supporting a more private way to stake.
Staked announced the closure of their Decred VSP for lack of economic viability. As of Dec 8, Decred is still featured on the site and VSP stats page shows 133 active users, 308 total users and 31 live tickets.
Hotbit Korea announced that they would list DCR/KRW market on Nov 26.
Warning: the authors of the Decred Journal have no idea about the trustworthiness of any of the services above. Please do your own research before trusting your personal information or assets to any entity.
dcrtime was used by VotoLegal to record and timestamp donations to Brazil’s 2020 municipal elections campaign. According to Geek Insider, more than 24K donations have been tracked totalling more than $600K as of Nov 19. (discussion)
To address the longstanding challenge of spreading content and news, @Exitus and others have assembled a Marketing Workgroup in Telegram to help coordinate:
Thus far, it has proven to be a productive and a positive force. If anyone would like to participate and add value, please DM me.
Mastodon server launched by Stakey.net VSP for their support account is open to the Decred community via this invite link. Mastodon is an open-source, self-hosted microblogging alternative to Twitter and is part of the Fediverse.
Decred is now listed as a sponsor at gioui.org.
Decred in Spanish published 5th monthly report of activities and expenses for their second proposal that is ending in December. A big final report covering June-December was published together with the 3rd proposal to continue the effort.
Blockchain Learning Challenge (co-organized by Decred in Spanish and Talent Land Network) had 6 projects that made it to the finals. Participants published source code on GitHub and presented their projects in short video pitches. 5 judges have rated each project in 5 areas (how much data was used and how, how original and relevant for Decred the idea is, how easy it is to use the app, how finished the app is, and how well things are documented). Summary of the finals with all ratings and links is here, and the final award video is here.
@michae2xl published a report of his November activities for the Brazil Marketing proposal.
Monde PR’s achievements for November:
- created and pitched one story idea to finance and crypto publications
- responded to 3 requests for comments
- secured 2 media interviews
News coverage secured by Monde PR:
- @richardred appeared on the Hitechies podcast talking about decentralization and the future of DeFi
- @jy-p appeared on the Crypto Conversation podcast talking about the DCRDEX launch
- an article in Crypto Briefing featuring commentary from @jy-p on Decred’s use in Brazil’s election, syndicated to 6 news outlets including Coin Market Cap
- an article in Cryptonomist featuring commentary from @jy-p on Decred’s use in Brazil’s election, syndicated to 3 news outlets including Bitcoin Ethereum News
- an article in Geek Insider featuring commentary from @jy-p on Decred’s use in Brazil’s election
- an article in Blockchain Latino America featuring commentary from @jy-p on Decred’s use in Brazil’s election
- an article in Explica.co about Decred’s use in Brazilian election
- an article in Cointelegraph featuring commentary from @jy-p on the U.S. being the most crypto-friendly country, syndicated to 33 news outlets including Cointelegraph Italy and Investing.com
- an article in Master of Nodes featuring commentary from @jy-p on Decred’s use in Brazil’s election
- @lukebp appeared on the Digital Cash Network podcast talking about Decred’s governance model
- an article in Cointelegraph featuring commentary from @jy-p on Bitcoin’s bull and bear cycles, syndicated to 17 news outlets including Cointelegraph Germany, Cointelegraph Brazil and Cointelegraph Italy
- Nov 2 — Blockchain Summit Latam — Internet. @elian gave a talk “Governance in public protocols” about the similarities and differences between several public blockchains and how does Decred stand out from these. (video)
- Nov 5 — Hablemos Decred 20 — Internet. @elian and Fernando Quiros of Cointelegraph in Spanish talked about the possible use cases for blockchain technology and cryptocurrencies in the context of journalism, communication and advertising. (video)
- Nov 9 — Talent Land Latinoamerica — Internet. @adcade, @elian, @francov_ and @pablito talked about “Our money, our rules: Leaving behind the national currencies”. (video)
- Nov 12 — Hablemos Decred 21 — Internet. Joined by guest Cristobal Pereira (CEO LatAmTech) to recap Blockchain Summit Latam and discuss perspectives for the Latam ecosystem. (video)
- Nov 19 — Hablemos Decred 22 — Internet. Joined by guest Joaquin Moreno to discuss the topic “Companies buying Bitcoin, are you ready?”. (video)
- Nov 19 — University of El Salvador — Internet. @adcade talked to students of the economics faculty about cryptocurrencies, Decred, governance and contribution opportunities. It was a 2 hour conference with 77 people, extended to +1 hour with ~45 people.
- Nov 27 — Hablemos Decred 23 — Internet. Joined by @caibarrad from Decred in Spanish and guest Felipe Montoya to discuss similarities and differences between “DLTs” and crypto. (video)
- Nov 28 — Partnership agreement with OMJD — Casablanca, Morocco. Following an online meetup with The Moroccan Organization of Young Decision Makers (OMJD) in July, @arij signed a 2-year agreement with them in order to hold meetups, workshops and conferences about Decred and blockchain technology for the benefit of the young.
Spanish Decred events keep getting announcements at Cointelegraph in Spanish.
Our events repository that serves as a master source for event data above was upgraded with new “tech”. Now key info about events is saved in (mostly human-readable) YAML files, and requires writing less prose than full reports. Such structure allows us to generate a pretty website where each event gets a nice link with everything about it. This should help with reporting and knowledge sharing. To get your event listed please follow these steps.
- Polkadot governance overview by @richardred (blockcommons.red)
- Uniswap/SushiSwap governance overview by @richardred (blockcommons.red)
- Decred bi-weekly news update — New 1.6 release is inbound & DEX is live! by @Exitus (youtube)
- Decred bi-weekly news update — Development progress, staking participation all-time high — and more! by @Exitus (youtube)
- Decred — The hybrid blockchain by Decred Society (youtube)
- Luke Powell on Decred governance, hybrid consensus, and new decentralized treasury on the Digital Cash Network (youtube, odysee.com, anchor.fm)
- Interview with Permabull Niño (@PermabullNino) by Staked Podcast (youtube)
- Interview with Le_Hibou_ (@Frenchy_LeDegen) by Staked Podcast (youtube)
- Interview with L.O.L. DEFI (@loldefi) by Staked Podcast (youtube)
- Crypto Convo — Eduardo Lima of the Staked Podcast feat. DubDigital (youtube)
- Hitechies Podcast — Richard Red and Pramod Dhakalrr talk about DeFi challenges, ETH, banking industry, future of payment systems and more. (hitechies.com)
- Crypto Conversation 074 — How the Decred DEX plans to disrupt the crypto exchange market with @jy-p (bravenewcoin.com, youtube)
- Decred in Depth 33: Seth Simmons on DCR + Monero privacy (libsyn)
- Rough Consensus 12: Bitcoin has entered the China shop. The lads are joined by @ck_SNARKs, co-host of @POVCryptoPod and Bitcoin Magazine, to discuss Bitcoin adoption, lessons from altcoin boom and bust cycles, the role of price within the cryptocurrency space, and more. (libsyn)
- Rough Consensus 13: Digital autonomy and freedom. The spidermen are joined by Frank Braun (@thefrankbraun) in a wide ranging conversation covering: cypherpunk digital societies, privacy and freedom in the digital age, role of BTC, DCR, Scrit and others in a brighter future. (libsyn)
Art and memes:
- Decred DAO space invitation poster by @Exitus
- Swiss Army Knife of sound money by @Checkmate
- Hidden Hydra teaser clip by @New_Copernicus
- check out OfficialCrypto’s merch designs at Redbubble (did you know Decred logo matches perfectly to “Real Defi“)?
- How I learned to stop worrying and love the Decred DEX — in Spanish by @francov_
- Monero and Decred are the new Bitcoin — in Spanish by @francov_
- Utility of cryptoassets — in Spanish by @francov_
- Decred Journal October 2020 was translated to Arabic (@arij, @abdulrahman4), Chinese (@Dominic), Spanish (@francov_) and Vietnamese (@duyenemdo). Vietnamese readers can also catch up on August events. Thank you all for your continued work!
- If you translate Decred content, come say hi in the #translations chat room.
Selected Reddit posts:
- Forward Thinking Saturday Nov 14 started with the suggestion to pick “Decred is being repriced” as the new narrative
- creating multisig addresses
- a collection of original marketing ideas by u/oiezz and others
- why obfuscating votes is a bad idea
- applicability of higher-level script languages like Miniscript, Minsc or RGB to Decred
Selected Twitter discussions:
- @PermabullNino’s diagram of value flows on dcrdex shows why injecting a token into the trade process is not necessary
- @withdecred’s fact-packed Decred pitch thread
In November DCR was trading between USD 11.71–24.78 / BTC 0.00086–0.00135. The average daily rate was $18.19.
The TIE has demonstrated a correlation between the climbing DCR/USD and 30-day average tweet volume.
An odd panic spike down to BTC 0.00075 was observed on Binance.
On Nov 12 @jy-p informed that the DEX had traded 191K DCR in total. This averages to 10 BTC/day.
Those wishing to peek at DCRDEX without installing anything can check the 24/7 streaming on YouTube.
The replacement for P2SH in BSV’s Electrum wallet was found to be fundamentally broken, allowing anyone to spend coins held in multi-sig hashes on the BSV chain.
The Value DeFi protocol was hacked for $7M, although the attacker returned $2M to the contract address for unknown reasons. The exploit was executed with a flash loan, coming less than 24 hours after Value DeFi had tweeted (now deleted) to boast about robust security with “flash loan attack prevention”.
The OUSD stablecoin was hacked with a flash loan used to conduct a reentrancy attack, to print and rebase (debase) OUSD equivalent to almost the entire circulating supply, allowing the hacker to extract $7M in value.
A flash loan was also used to exploit MakerDAO’s governance system, by borrowing $7M worth of MKR tokens and using these to vote before immediately repaying the loan. MakerDAO’s response has been to disable certain executive functions in case an attacker is able to access them, and extend the cooling off period during which the community can respond to unexpected proposals passing. Such a weakness would not be exposed if MKR holders were required to lock tokens for some time in order to vote — or if the amount of MKR available to borrow was less than the amount legitimately engaged in the governance system.
The soft-fork implementation of Schnorr signatures and Taproot was merged to Bitcoin Core in October, but as yet there is no agreement on the method for activating the change on the network. There is also an unpopular argument that Taproot will make Bitcoin’s privacy situation even worse for regular users by introducing a yet another address scheme. Taproot will add a new type of Schnorr signature, which will allow for greater flexibility with multi-signature wallets and for these transactions to look the same as regular transactions.
The Ethereum 2.0 beacon chain deposit contract was released in early Nov and reached the target 540,000 ETH deposited on Nov 24, with the final 150,000 ETH coming just hours before a deadline set for a Dec 1 launch. The beacon chain is the first of 4 phases to the launch and migration to Ethereum 2.0, in this initial form the chain’s only purpose is to ensure PoS validators can remain in consensus.
The latest Bitcoin Cash hard fork occurred in November, this time the focus of dispute is funding for the ABC developers. This hash war had a clear winner, with the BCHN chain (no dev funding) attracting virtually all of the mining power. Ahead of the fork, over 1 million BCH was observed moving to exchanges (selling a risky asset and receiving split coins are two common reasons for doing so).
Ethereum network experienced a disruption on Nov 11. A recent version of Geth node software silently fixed a consensus bug that was dormant for over a year. Since it changed consensus code, it had a risk of an unintended hard fork. One vendor discovered the bug independently and seeing that the majority of nodes have upgraded, decided to test it in production and see what would happen. To everyone’s surprise, among the minority of nodes running old software was Infura, a popular service provider used by “dapps” to sync with Ethereum network. The bug-triggering transaction halted Infura and a bunch of “decentralized” finance apps that relied on it, including Metamask, MakerDAO, Uniswap, Compound, and others. Binance and other exchanges have also halted trading after noticing conflicting transaction histories. Infura resolved the issue within hours and posted a post-mortem explaining why they didn’t upgrade and calling out the danger of silent consensus fixes. Ethereum developer also published a post-mortem for Geth, which explained that the fix was done silently to not attract unwanted attention from attackers. Among other things, the incident teaches us that deploying critical fixes is challenging because it is a trade-off between informing good actors while not informing bad ones.
The Aragon project is in the process of decommissioning the ANJ token which was introduced one year ago as the token to use with “Aragon Court”, a dispute resolution service for Aragon DAOs. The ANJ token is now seen as a barrier to the success of Aragon Court, and will be bought out by the ANT holders by issuing ~1–5% inflation to the holders of ANJ.
US authorities seized 69,370 BTC (and forks) worth around $1 billion, apparently with the consent of an unnamed hacker who had stolen the funds from Silk Road in 2013.
About This Issue
This is issue 32 of Decred Journal. Index of all issues, mirrors, and translations is available here.
Most information from third parties is relayed directly from source after a minimal sanity check. The authors of the Decred Journal have no ability to verify all claims. Please beware of scams and do your own research.
Credits (alphabetical order):
- writing and editing: adcade, bee, degeri, elian, l1ndseymm, richardred
- reviews and feedback: davecgh, dnldd, jholdstock, JoeGruff, lukebp
- title image: saender
- funding: Decred Treasury