The input of all transactions (with one exception) references a specific unspent output.
^^^could you please clarify this?
Every solved block is allowed by the protocol to contain exactly one transaction that has no inputs, and still be considered to be a valid transaction when all the peers verify the block before relaying it. The sum of outputs of this special transaction are not allowed to exceed the sum of the transaction fees of all other transactions in the block plus the current block subsidy.
This transaction is often called a "coinbase" transaction, and it is both how new bitcoins come into existence with each block, and how the miners are rewarded for their effort in securing the blockchain.
Since this is an educational thread, a few pedantic points that you need to keep track of if you move from the "pop-tech" sources (like the forum) to the "hard-tech" sources (like the source and mailing list).
That special transaction is the "generate transaction" and it
does have an input, of sorts. (At the very least, the #TxIn field exists and is 1 instead of zero.) Normally, an input contains a reference to a previous UTXO and a SigScript. In a generate transaction, the reference is bogus (hash of 0x00 and sequence of 2
32-1) and the SigScript is just garbage That garbage is called the coinbase. The coinbase is required to include the height of the block containing it, in (normalized?) cScript encoding.
https://en.bitcoin.it/wiki/File:TxBinaryMap.png