How can I find the “real” difficulty on testnet?


As is well known, testnet has a "20-minute rule": if no block is found within 20 minutes, the mining difficulty drops to 1 until a block is found.

From some experimentation, it appears that bitcoind's getdifficulty function reports the difficulty of the most recent block. Thus, if the most recent block was mined under the 20-minute rule, getdifficulty returns 1.

In this case, how can I find the "real" difficulty level? That is, the difficulty that would be required of a block submitted less than 20 minutes after the previous one?

The best approach I have found so far is to follow the blockchain back until I find a block with a difficulty other than 1 (or less than 20 minutes after the block preceding it). But this will be prone to error if a difficulty adjustment has recently taken place.

bitcoind must know the real difficulty at all times; can I query...

0 0
0 0
0 0

The testnet is an alternative Bitcoin block chain, to be used for testing. Testnet coins are separate and distinct from actual bitcoins, and are never supposed to have any value. This allows application developers or bitcoin testers to experiment, without having to use real bitcoins or worrying about breaking the main bitcoin chain.

Run bitcoin or bitcoind with the -testnet flag to use the testnet (or put testnet=1 in the bitcoin.conf file).

There have been three generations of testnet. Testnet2 was just the first testnet reset with a different genesis block, because people were starting to trade testnet coins for real money. Testnet3 is the current test network. It was introduced with the 0.7 release, introduced a third genesis block, a new rule to avoid the "difficulty was too high, is now too low, and transactions take too long to verify" problem, and contains blocks with edge-case transactions designed to test implementation compatibility.


0 0

Here’s some of the latest news about Nxt over this past week in February:


Here below are more details about each:


Nxt Foundation – Designers and Writers Wanted

As we mentioned in our previous newsletter, the Nxt Foundation will attend Blockshow Europe 2017, an event organized by CoinTelegraph that will take place in Munich in just a few weeks. It’s expected to become the most important blockchain-related event in Europe this year.

Dave Pearce, board member of the Nxt Foundation, who is going to represent the Foundation in this event, asked for some community members to help make this event a success:

I’m working on a promo item for Nxt/Ardor to go into the goody bag that each attendee will receive, but we do need a couple of banners and a flier or brochure to give away, and I’m looking for volunteers to help with creating either of these:

Banners need...

0 0

How To Clone Scrypt Based Altcoins for Fun and Profit

Wait a second, why would you want to give out the secrets?!? Because its not a secret anymore and besides, why shouldn't everyone and their neighbors be able to create a plethora of these useless yet exciting math bits? The information in this article took me a few weeks to compile and what works for me is not guaranteed to work for you. Please use this guide as a starting point to learn a bit about C programming and compiling software.

I will NOT do tech support--just because you can't get something to work doesn't entitle you to bother me about it. Go read, dig, and read some more. Nearly everything in this guide is posted in some form or another on's altcoin forum. The rest of it I meticulously tracked down through trial and error and a healthy dose of Googling. Things are meant to break, you'll need to figure out why and make it work. By the end of this guide you should have a working coin,...

0 0
0 0

The Bitcoin Logo

Bitcoin is a decentralised digital currency which has been growing rapidly in popularity and use. You can send bitcoins to people and businesses around the world quickly, easily, and
with significantly less fees than international wire transfers, PayPal, or credit cards. You can even buy beer almost instantly; Here is a photo of me buying beer using Bitcoin.

If you’re developing a Bitcoin application, or even want to just play around with it, you can do so without costing anything and use a minimal amount of system resources. This blog post covers some technical topics about the Bitcoin block chain, which you might want to read up on the subject beforehand.

The different Bitcoin networks

The standard Bitcoin client, Bitcoin Core has three networks it can run on: mainnet, testnet, and regtest.


This is the real Bitcoin network, with the block chain that everyone uses. You can of course experiment with this...

0 0

A lot of things have happened in the past few weeks in the Ethereum ecosystem, so many that it might be hard for a casual observer to understand where we are and what’s available out there. So I would like to use my first post here to give you an overview of the tools we’ve built and how you can use them to build interesting things right now.

But first a short introduction: I am Alex Van de Sande and I am the lead designer on the Ethereum foundation. At DevconOne I gave a talk entitled “The Blockchain Versus The Average User” where I went into more details on the challenges to bringing the Ethereum ecosystem to the aforementioned “Average User”, one of which is the difficulty of defining what that term even means. When personal computers were introduced they were advertised as being “to the rest of us”, but the “rest of us” public they targeted was actually a very narrow audience interested in word processing, spreadsheets and desktop publishing. Today, those would be...

0 0
0 0

Find examples of how to build programs using Bitcoin.

The following guide aims to provide examples to help you start building Bitcoin-based applications. To make the best use of this document, you may want to install the current version of Bitcoin Core, either from source or from a pre-compiled executable.

Once installed, you’ll have access to three programs: bitcoind, bitcoin-qt, and bitcoin-cli.

bitcoin-qt provides a combination full Bitcoin peer and wallet frontend. From the Help menu, you can access a console where you can enter the RPC commands used throughout this document.

bitcoind is more useful for programming: it provides a full peer which you can interact with through RPCs to port 8332 (or 18332 for testnet).

bitcoin-cli allows you to send RPC commands to bitcoind from the command line. For example, bitcoin-cli help

All three programs get settings from bitcoin.conf in the Bitcoin application...

0 0

There are numerous sites on the Internet and search engines that can be used to help find people on the Internet. Below are some of the different sites and methods of locating someone online.

Note: Most of these services work best for finding someone that is alive. If you are looking for someone that is deceased, you may want to start with a Google search. Another option that could work better are genealogy sites, which can have more details for deceased people.

The sites and services on this page are primarily for those users who are in the United States. However, some of the sites listed do have other countries available and the Google search tips listed near the bottom of this page can be used by anyone in the world.

Tip: Many of these services require some registration or payment to get more detailed information about the person you are trying to find. There is no service or site we are aware of that will provide very personal information about a person for...

0 0
0 0

I'm getting a strange error in Solidity. I have the following public function:

event BidPlaced(bytes32 indexed game_id, BookType book, address bidder, uint amount, bool home, int64 line); function test(bytes32 game_id, bool home, int64 line) payable returns (int) { Game game = getGameById(game_id); Book book = game.books[uint(BookType.Spread)]; Bid memory bid = Bid(msg.sender, msg.value, home, line); // problem is right here book.homeBids.push(bid); BidPlaced(game_id, BookType.Spread, msg.sender, msg.value, home, line); return 0; }

When I call the function with, it returns 0, but when I run contract.test.sendTransaction(...), the BidPlaced event doesn't log.

When I check the receipt for how much gas is being used, it shows the expected amount, so I know an error isn't being thrown.

If I get rid of the book.homeBids.push(bid); line, the event logs properly. What about that line could cause a...

0 0
0 0