Post
Topic
Board Development & Technical Discussion
Merits 5 from 3 users
Re: Question about computation power for purposeful modification of blockchain data
by
DannyHamilton
on 21/03/2018, 13:41:38 UTC
⭐ Merited by ETFbitcoin (3) ,HeRetiK (1) ,BenOnceAgain (1)
This is not new "news".  This is news from 5 years ago that is just being noticed again.

For more details see comments from developer jgarzik in April 2013 here:
http://garzikrants.blogspot.com/2013/04/on-bitcoin-data-spam-and-evil-data.html

and bitcointalk post here:
https://bitcointalk.org/index.php?topic=191039

Worth being aware of...

Lightweight Wallets and SPV (such as Electrum) that are not nodes do not store any of this information.

Bitcoin Core with pruning turned on does not store this information.

Bitcoin Core with pruning turned off can be modified to avoid downloading and/or storing the transactions that have the undesired data once the data is identified. I'm not aware of anyone that has created such changes yet, but it wouldn't be excessively difficult to do, perhaps it could become an interesting open source project). It won't prevent you from receiving new data that you don't want, and it will continue to be possible for malicious people to encode undesired data into their transactions in the future.

Additionally, it is my understanding that any images encoded in the blockchain are not accessible without manipulating the data. You can't just open up one of the block files with an image viewer and see an image.  You need to process the blockchain with a specific algorithm to generate image data from the blockchain data.

Imagine that there is a famous book.  Imagine that someone discovered that if you:

  • Take the first letter of every sentence
  • Swap the positions of every 2 letters
  • Sort the middle 10 characters in the following order 3, 7, 2, 5, 9, 6, 10, 4, 1, 5, 8
  • Convert the letters to a binary representation using ASCII encoding
  • Perform an XOR of every binary digit with the binary exactly 9 positions to the right
  • Convert the resulting data into a bitmap encoding with 100 rows

Then the result can be opened with an image viewing program, and some objectionable image will result.

Since a process of manipulating the book data can result in an objectionable image, should the book be banned?

If you feel that it should, then we should probably ban every book that has ever existed.  Because, given a small enough image and any book of reasonable length, it is possible to invent an algorithm that will convert the text of that book into that image.  The algorithm will be specific to that one book and that image, but the same is true of each of the images in the blockchain.  The algorithm for converting a subset of blockchain data into an image is specific to the bitcoin blockchain and the reported image.