When we get into Bitcoin, it's clear there's a bunch of terms tied to it, each interlinked in some way that keeps Bitcoin functioning as it was intended.
Lately, as I've been digging deeper into Bitcoin, I've bumped into a term that gets thrown around a lot: Blockchain. I see it all over BTT discussions, in Bitcoin news, articles, even in Bitcoin PDFs. It pops up so frequently that it's obvious how crucial it is in the crypto world. You probably notice it too.
But then I stumbled upon something interesting... Satoshi Nakamoto tossed out the term Timechain. I found it hard to wrap my head around what he meant, but to me, using Timechain seems like a way to depict Blockchain, kind of like this...
In that coded message, Satoshi sketches Timechain as a tree-like structure, starting with the Genesis block and then the following block (the candidate block), and so on. It feels pretty close to what we think of as Blockchain today.
From what I've gathered trying to compare Timechain and Blockchain, I think Blockchain rolls off the tongue easier, maybe because I'm just more familiar with it. Timechain, on the flip side, seems to relate more closely to the sequence in which blocks are arranged based on time. But honestly, I still can’t quite spot the difference compared to Blockchain. So here’s what I’m curious about:
1. Does "Timechain" really not have a clear, defined meaning?
2. Is my understanding above on point?
Does the term "Timechain" lack a clear definition?
11 replies 66 views
Well, the "timechain" is just the older word for "blockchain". In exactly the same way, "bitcoin" was not called that from the very beginning. It was called "e-cash" earlier, and instead of "bitcoin.pdf", you had "ecash.pdf". Some page about it: https://gwern.net/doc/bitcoin/2008-nakamoto
Because of the same reason, why many people sticked to "alt-coin" and "bit-coin", instead of "e-cash", "e-coin", and so on. Just one word being more popular than other, simply means, that the former will spread around the world, and the latter will be discarded, and used marginally.
There are more cases, when those two things were written separately, like "a time chain". For example:
If you try to CTRL+F the word "time", it will be closer to the word "chain", than if you do the same with the word "block".
It is the original copy. What else do you expect? One more step would be to receive a direct e-mail from Satoshi with the code. Because Cryddit was just some regular user, who received it from Satoshi, and just posted it. But you won't get "more original copy" than that. People just got those sources via e-mail, directly from Satoshi. So, if you are not the one, who was there in 2008 or 2009, then you won't have the chance to get it directly from the creator.
My educated guess is that before the term Blockchain settled in, satoshi might have sometimes referred to it as Timechain due to its roots in the concept of linked timestamping: https://queue.acm.org/detail.cfm?id=3136559
There might be some finer nuances to it, but as far as I can tell the terms are referring to the same thing.
I guess I didn't read the last quoted text above from Cryddit. Which means there was never an initial public release, but it was rather sent to individuals who offered to review the project.
I had to skim through the entire text due to it's length. I was about exiting, when I came across the part where the author talked about Blockchain. I think some of the things been said are relating to what you wrote above. Satoshi mainly tried to describe the Blockchain from the aspect of Linked timestamping, and it's usefulness to ensure a consistent global ordering of transactions in the face of network latency as stated by the author.
Here is also what was pointed out about Satoshi not mentioning the word Blockchain.
I also noticed this statement. If invalid blocks are rejected, then why are empty blocks not rejected as well?.
Can I recommend to OP the Gary Gensler Harvard Bitcoin lectures which are on Youtube. I know GG is a fairly divisive figure in the Bitcoin world but these lectures are quite informative. It's been a while since I have watched them but I seem to remember that in an early lecture he goes into the history and early usage of blockchains. Might answer some questions in the OP.
Because empty blocks are not invalid
More seriously though, I assume the rationale is that there's currently no good reason to see empty blocks as invalid, whereas accepting empty blocks was a necessity in the early days.
When Bitcoin first got started, empty blocks had to be seen as valid, otherwise there'd be no blockchain progress, given the lack of transactions. Nowadays they usually only occur if a block gets found immediately after another, with miners being incentivized to just get the block out there as fast as possible, regardless of whether they were already able to fill the block with transactions or not. At least it was that way a few years ago. As the halvings continue and fees become the main source of mining income over the block subsidy, the mining of empty blocks ceases to be economical.
(Also, technically, they are not empty blocks, they always contain at least the coinbase transaction. A truly empty block, i.e. one without even a coinbase transaction, would indeed be invalid.)
Because there are times, when you have no new transactions to mine (you can see for example empty blocks with "100% health", reported by block explorers, on testnet). In that case, it is better to mine an empty block, because:
1. If there would be a rule, that "blocks cannot be empty", then miners would be forced to artificially make some transactions, even though they would never be needed by anyone in the first place.
2. Miners should not simply stop mining at all. If they would, the true difficulty would be affected (because then, they could constantly work on some heavy chain in secret, without reporting it, and releasing all of that, when they see some new traffic in their mempools).
3. Empty blocks also have their use cases. Keeping the difficulty, where it should be, is one of those tasks. Another is to timestamp documents through commitments (then, you don't need any incentive, you are just focused on Proof of Work coverage, even if you produce no new UTXOs at all). Also, each block contributes to the block counter, which means, that timelocked transactions are affected by that.
4. If you have any coinbase transaction, which has less than 100 confirmations, then you have an incentive to mine even empty blocks, just to unlock it, and be able to move it somewhere else.
just like in any other language, words are used and words eventually die. it doesn't mean that because it is not commonly used anymore is it can't be defined anymore. a quick search on the internet will give you a definition of what a timechain is and what it is more commonly called now.
let's go back to the history of blockchain and terms used
how to time-stamp a digital document by stuart haber and w. scott first explored the concept of blockchain but did not have an exact term for it not until satoshi
it's actually important to note that satoshi never used the term blockchain. blockchain is a one-word terminology that came from satoshi's constant use of the words: block and chain.
so we see how even though it was never officially used by satoshi, the term blockchain was normalized and now it is all people use. it is the same way how no one seems to use or even know about the term timechain despite satoshi actually using it. it might also have something to do with how blockchain is viewed today
instead of focusing on the time aspect, it is easier to describe the concept with its structural aspects hence the blockchain.
Yes, Satoshi preferred words like chain of blocks, global ledger and block chain (with a space in-between) the word "Blockchain" wasn't used due to projects that don't meet the decentralization standards like Bitcoin using the term Blockchain. This link validates the fact Satoshi wasn't interested in the term Blockchain. https://github.com/bitcoinsSG/timechain
These two terms simplifies it; chains of block and chains of transaction. The later has to do with the records of all transaction history of any coin. The chain of block, sets a specific chain of transaction in an authoritative order, to fight double spending. They both initiate a rigid chain of events in time or a timechain, the indication of time simply means, what has occured cannot be erased. Read this
Your second question, from a source I read, timechain is not being used because it doesn't explain better to a lay man about how the timestamp works. For instance, blocks get added within ten minutes and the timestamp of each block is based on the time provided by the miner and validated by network nodes. Since it's not static, miners can adjust it provided it's within an acceptable time range it diminishes the reliability of the timechain initiative. (Though I'm not sure of his statement about Satoshi changing the name to Blockchain) Seems he's wrong, since Satoshi never mentioned Blockchain anywhere including this forum.
In my own perspective, I see Bitcoin as a clock. All events happen with time. Halving, mining, block difficulty, have a designated time when it'll happen. And once it hits the programmed time, the event begins. So using the term timechain solidly explains the technology than the term Blockchain.
However Bitcoin is a revolutionary innovation, things change as time creeps by, timechain isn't the only missing term. "hashtimechainbest" which meant the best block within the longest chain and it got interchanged by terms like "chain work" or "hashbestchain" meaning the difficulty and accumulated work in the block chain. So, things change and it completely defines how decentralized Bitcoin is, Satoshi isn't a centralized leader of this technology, developers can come up with a term which would be widely accepted by everyone and sidelines what Satoshi named it.
I think all these points are convincing enough and has enlightened me. The number one which was quoted above, just triggered something I read few weeks back, so instead of creating a random thread for it, let me better ask it here.
So, what I came across was an article that talks about tx fees and how it can be triggered in the future. I can't find the actual source link or even remember where I read it from right now, but this is what I think the article says:
The article suggest that: in the future (maybe) when mining reward is almost diminished, miners would opt for inflating tx fees, just by creating a particular transaction, and fixing a huge tx fees in it. For example, assuming I am mining, just because I observed some little congestion, I will want to take advantage just by creating a real tx and attaching a high tx fees, inorder to trigger similar behavior from those who have their tx in the mempool.
But this trick seems to raise lots of doubts. Even if the miner successfully trigger such action thereby making everyone want to increase their tx fees, there is also a very slim chance that he would be opportune to also pick that particular tx(used in triggering the whole action) and confirming it so as to also receive the tx fee he attached, which means another miner might likely get hold of it before he does.
So, do you think this kind of approach of inflating/triggering high tx fees would work later on?
I think I have learnt something, as your explanations are valid.
I think I also find your explanation valid. The link you shared contains nice information, but most of the articles are written in Portuguese. There is a book I saw on that site with a title: Chronicles of the Code Keepers: Rising of Titan. Is there a way I can get it?, because it seems the website requires subscription or something.
That doesn't sound particularily feasible to me, because it would require a large majority of miners to collude/cooperate while miners not participating in such behaviour would gain an economic advantage by not throwing high-value transactions into the pot/mempool.
Yes, some users even assume, that it already happened, in a form of Ordinals, and other types of transactions, related to pushing data. For example, if you have 10,000 coins, like here in 914a6348ba832b79c631a6f70ea9e2c3e1e433ee0b90633d51e3fe1164c05dc0, then, if the minimally accepted fee is one satoshi per vbyte, then you can push 1 TB of data, using that fee rate. And from 2009 to 2024, up to today, the Bitcoin network produced something around 600 GB, for 15 years.
Which means, that any whale, at any time, can flood mempools with a lot of data, just to force people to pay more. The maximum block size is 4 MB. Which means, the minimal price you have to pay, is something around 0.04 BTC. So, the price for flooding is 0.04 BTC per 10 minutes (or more).
Also, this is the reason, why I recommended starting testnet4 from "already after 12 halvings or so", instead of starting from 50 tBTC, and allowing new users to get a lot of coins, and open a way to flood the network from the very beginning, by giving each new miner an ability to push up to 5 GB of data, with every mined block.