Difficulty-Retargetting
為什麼不在每個區塊上重新定位?
應該使事情更順暢並減少振盪。重新定位只是每 2016 個區塊有什麼原因嗎?
我想唯一正確的答案是“因為這就是中本聰實現它的方式”。他這樣做的原因可能包括易於實現,易於保證節點之間的一致性,或者很少擔心校正算法的不穩定性。
更新頻率會導致一些權衡。
更快的更新增加了隔離攻擊的風險——網路的一個分區部分速度恢復到標稱速度。更快的更新也會增加可能的振盪量。從好的方面來說,它們使網路能夠更快地響應變化。
許多山寨幣已更改為更快的規則,但絕大多數都設法以錯誤和易受攻擊的方式做到這一點。例如:有些應用了滑動視窗過濾器,但然後一遍又一遍地應用相同的變化,而不是它的 n 次根,從而導致大量振盪。其他人使用前一個區塊的時間戳來設置目前難度——這可以讓你將時間戳設置得比你應該設置的略低,以使下一個區塊具有更高的難度,從而保證它會在比賽中獲勝,因為有更多的總工作。其他方案具有狂野的非線性,這使得礦工在爆發式而不是連續式挖礦中更有利可圖。
當我看到其他規則被搞砸的所有不同方式時,以及比特幣的“緩慢”更新在實踐中是多麼無關緊要。我認為比特幣的創造者做出了一個很好的決定,所有這些都考慮到了。