Author

Topic: Idea: embedding client update info in the blockchain (Read 972 times)

sr. member
Activity: 476
Merit: 250
Did it tonight with Namecoin:

MeowBit - Now with Update Alerts Over the Blockchain
http://meowbit.com/?p=2017

Didn't find this thread until we were about to release it and were searching to see if it had been done.

Great! I hope others will follow suit.

Yup! Our source code is GNU-licensed and on GitHub if people want to examine it/ use it.
legendary
Activity: 1100
Merit: 1032
Did it tonight with Namecoin:

MeowBit - Now with Update Alerts Over the Blockchain
http://meowbit.com/?p=2017

Didn't find this thread until we were about to release it and were searching to see if it had been done.

Great! I hope others will follow suit.
sr. member
Activity: 476
Merit: 250
Did it tonight with Namecoin:

MeowBit - Now with Update Alerts Over the Blockchain
http://meowbit.com/?p=2017

Didn't find this thread until we were about to release it and were searching to see if it had been done.
legendary
Activity: 1792
Merit: 1111
Has probably been discussed before, but here goes, since none of the existing clients (AFAICT) support that:

Embedding client wallet update information into the blockchain

Currently updating the client wallets means manually checking news, downloading a client wallet from some website, trusting that the website hasn't been hacked, trusting that the client is okay, hasn't been tempered with, etc. Even when compiling from source, there is a degree of trust involved (since you can't manually check everything).

So the idea would be that client wallets would check for transactions from a special address in the blockchain (hardcoded into the client for each version), and those transactions would encode in their outputs (either via vanitygen'ed destination addresses and/or special amounts) information about new versions
  • hash of the updated/upgrade binary (so you don't just have to trust a website or a download)
  • basic update info (minor upgrade, compulsory major upgrade, hard fork coming, etc.)

This would allow a safe update notification and a safe signed upgrade mechanisms that doesn't rely on how the update binary is delivered. And only the devs (or rather whoever holds the private key to the special address) would be able to both announce and certify the update.

This wouldn't involve any protocol updates, and other/custom clients would be unaffected by what they would see as regular transaction.

We already have an emergency key to deliver such message
legendary
Activity: 1100
Merit: 1032
Has probably been discussed before, but here goes, since none of the existing clients (AFAICT) support that:

Embedding client wallet update information into the blockchain

Currently updating the client wallets means manually checking news, downloading a client wallet from some website, trusting that the website hasn't been hacked, trusting that the client is okay, hasn't been tempered with, etc. Even when compiling from source, there is a degree of trust involved (since you can't manually check everything).

So the idea would be that client wallets would check for transactions from a special address in the blockchain (hardcoded into the client for each version), and those transactions would encode in their outputs (either via vanitygen'ed destination addresses and/or special amounts) information about new versions
  • hash of the updated/upgrade binary (so you don't just have to trust a website or a download)
  • basic update info (minor upgrade, compulsory major upgrade, hard fork coming, etc.)

This would allow a safe update notification and a safe signed upgrade mechanisms that doesn't rely on how the update binary is delivered. And only the devs (or rather whoever holds the private key to the special address) would be able to both announce and certify the update.

This wouldn't involve any protocol updates, and other/custom clients would be unaffected by what they would see as regular transaction.
Jump to: