Bitcoin Developers Publish the Alert Key – Trustnodes

Bitcoin Developers Publish the Alert Key


Bitcoin’s alert key, which has on some rare occassions been used in emergency situations to notify nodes of vulnerabilities, has now publicly been revealed by Bryan Bishop as follows:

“mainnet public key:

mainnet private key:

testnet public key:

testnet private key:

The alert key functionality was removed from the protocol itself in 2016, when a final message was sent asking pre-segwit nodes running v0.12.x or older to upgrade to the segregated witnesses (segwit) client. It remained non-public knowledge, however, until today.

Pre-segwit nodes alerted to upgrade to segwit client.
Pre-segwit nodes alerted to upgrade to segwit client.

Previously, a number of individuals had access to the key, with any one of them able to remove or cancel an alert that had been sent.

It was used in 2013 when there was an unintentional fork and in other situations when nodes needed to be urgently notified.

As long as the key was operational, it was never misused. How or why the very last alert was sent, however, is unclear. While its removal was justified on the basis that it could be misused, it might have also been the case they may have worried one developer might remove the last alert that was sent out.

As can be seen in the featured image, the notification aimed at node operators was very unintrusive as shown above at the bottom left.

It was merely used as a method of directly notifying node operators who might have not kept up with developments.

Now, there currently is no such way of direct notification, but there is a moderated mailing list which can be used, although that is mainly for bitcoin code discussions.

Other bitcoin forks may have copied the alert key which has now been publicly revealed. Bitcoin Cash removed it long ago, but whether other bitcoin fork nodes have also done so is unclear.



Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>