In the beginning, Bitcoin allowed data.
In Bitcoin, a world of data was open. The following OP_Codes and the limits could allow data to be pushed into the blockchain and exchanged. These (still enabled but castrated through block size) script commands worked by sending the next byte that contained the number of bytes to be pushed onto the stack.
OP_PUSHDATA1 76 255 max data - The next byte contains the number of bytes to be pushed onto the stack. OP_PUSHDATA2 77 65K max data - The next two bytes contain the number of bytes to be pushed onto the stack. OP_PUSHDATA4 78 4.3G max data - The next four bytes contain the number of bytes to be pushed onto the stack.
Right now, due to the 520-byte limit (520=0x208), we only need at most two bytes to represent the number 520. So, with OP_PUSHDATA4 the smallest number using four bytes is 0x10000000=268435456; well, this is an enabled but dead OP_CODE.
The truth is, data is the ideal business to add, and in late November you will see how this relates to malleability. No, there is no need for a mal fax, and in fact, a mal fix kills the protocol. Dead… well, it is still walking… for a time.
Sorry, but the entire Internet is about to change.
Data is easy and inexpensive for miners to hold and process. If miners try to withhold data, they will find that they have a block orphaned. So, the reality is: data is a good source of revenue for miners.
OP_PUSHDATA4 sets the next 4 bytes to be interpreted as an integer which indicates the size of the next piece of data that will be pushed onto the stack. This allowed up to 4.3 GB of data to be included in a SINGLE push.
At the CoinGeek Week Conference we will demonstrate why this all matters.
In 2019, we move to remove the limits, the shackles on Bitcoin and set it free.
Bitcoin is cash, and it is more than you could have imagined.