top of page

Counterparty Development Update #4

It’s Friday and time for our Development update. This week developers have been busy writing tests for free asset names, implementing the free asset names feature in Counterwallet, fixing bugs and improving code organization. Here’s a list of this week’s changes across all our repositories.


Protocol Changes Always Retroactive on Testnet The biggest change in counterpartyd this week was making all protocol changes (even multisig updates) be always retroactive on testnet. This means that almost every transaction you make on testnet won’t be recognized and that you will have to re-create your testnet assets with the new version. Furthermore, the BLOCK_FIRST_TESTNET was changed from 154908 to 281000 which will result in the following error when you run counterpartyd: “lib.exceptions.DatabaseError: First block in database is not block 281000”. In order to fix this error you have to rebuild testnet database by simply removing the database file and restarting counterpartyd, or using the new kickstart feature (./ --testnet kickstart). We apologize for this inconvenience, however it is important that testnet always runs the latest protocol version. Please note, however, that this change is currently implemented only in the develop branch, therefore those using the master branch do not need to implement this upgrade yet. If you run into any issues while rebuilding your testnet DB please contact our support at For more information on this change you can check out the pull request, or the related issue on GitHub #459.

Other changes and fixes

  1. scheduled mainnet numeric asset names for block 332000

  2. enabled multisig on mainnet from block 333000

  3. implemented new scriptpubkey_to_address()

  4. fixed the bug with inconsistent ledger hash on testnet and mainnet (develop) #455

  5. fixed the bug when print statements (e.g. dividends to be paid), don’t work with composition as API calls #74

  6. updated testnet checkpoints


Multisignature Addresses We already mentioned in our last development update that Counterwallet-develop now supports the creation of multisignature addresses. In order to test this feature go to for testnet, or for mainnet. In order to create a new multisig address click on the Create New Address button and select Create Multisig Address from the dropdown. Enter your address in the Address field and click Create New Address. Multisignature addresses are represented as a string '{m}{address}{address}{address}{n}', where the addresses are sorted alphabetically/numerically. Currently, 1-of-2, 2-of-2, 1-of-3, 2-of-3 and 3-of-3 addresses are supported. Note that every address in a multisig source must have already made at least one non-multisig transaction in the blockchain for counterpartyd to be able to retrieve its public key.

Creation of Free Asset Names Counterwallet now supports the creation of free asset names. This feature is available on develop and can be tried out using the Counterwallet beta for testnet, or mainnet. In order to create a free asset name click on the Address Actions button and select Create a Token (asset) from the dropdown. Note that you still need to have at least 0.0005 BTC on that address in order to be able to cover the Bitcoin fees. On the screen that follows select Free numeric name and a new numeric token name will be generated for you. Numeric assets work just like alphabetic assets: the only difference is in the form of the name.

Other Changes and Fixed

  1. fixed GUI bug in betting code #600

  2. added support for Russian, Danish and Chinese Taiwan language reviews That covers our development updates for this week. If you have any questions regarding recent or upcoming changes you can contact us via our support channel, forum or github. In order to stay up to date with our progress subscribe to our newsletter at the bottom of this page and receive weekly updates via email.


bottom of page