Okay okay, before you rush and say "To prevent spam attacks!!", please wait and read this whole thread.
^The above argument is what I hear all the time. However, there is something not quite right about that reasoning. It doesn't make sense.
Let's start with a little background info...
Satoshi implemented the 1 MB blocksize limit without telling anyone; He just did it randomly. There was no discussion beforehand and after he did it, he did not mention it anywhere. People had to look at the code/use it to see the change. The mannerism in which the 1 MB blocksize limit was added is already strange in itself and as soon as it was done, debates/arguments among the community started happening.
Satoshi never told people that the 1 MB limit was to prevent spam - its just what everyone inferred.
Okay... history lesson over.
Now here is why it doesnt make sense:
The process of a transaction getting confirmed and added to the blockchain goes like this:
1) Tx. is broadcast with a custom fee
2) Tx. is added to the mempool
3) Miner collects tx. from the mempool (usually they will pic tx. based on which has the highest fee and work their way down from there)
4) Miner adds tx. to their block
5) Miner calculates the proof of work
6) Miner publishes block to the blockchain
Okay now we have the process outlined we can analyse the miners incentives/behaviour. I'll be using game theory to explain this and here is where it gets interesting.
The miners main goal is to make profit. This is why he adds tx. to his block in the first place (it allows for more fees and thus, more profits). So we can assume that without the blocksize limit, the miners would add infinite tx. to their block right? WRONG!
Allow me to explain:
Look at step 3.. Collecting the tx. from the mempool and adding it to their block takes a set amount of time and the longer that the miner spends collecting the tx. and adding it to their block, the less time they can spend calculating the proof of work - thereby giving their competition (other miners) the edge. The miners would naturally (based on game theory) find a nash equilibrium between collecting as many tx. as possible and finding enough time to calculate the proof of work in order to give them the maximum profitability. Thus, we can assume, that without a blocksize limit (infinite), the block size would stay relatively the same.
This is why an infinite block size limit is not an issue. I honestly cannot understand why he added the 1 MB limit.
Can someone please, please explain? I have been pondering this for over a month now. Thanks.