|
|
@@ -23,12 +23,11 @@ type StateQuery interface {
|
|
|
func CalcDifficulty(block, parent *types.Block) *big.Int {
|
|
|
diff := new(big.Int)
|
|
|
|
|
|
- bh, ph := block.Header(), parent.Header()
|
|
|
- adjust := new(big.Int).Rsh(ph.Difficulty, 10)
|
|
|
- if bh.Time >= ph.Time+13 {
|
|
|
- diff.Sub(ph.Difficulty, adjust)
|
|
|
+ adjust := new(big.Int).Rsh(parent.Difficulty(), 10)
|
|
|
+ if block.Time() >= parent.Time()+8 {
|
|
|
+ diff.Sub(parent.Difficulty(), adjust)
|
|
|
} else {
|
|
|
- diff.Add(ph.Difficulty, adjust)
|
|
|
+ diff.Add(parent.Difficulty(), adjust)
|
|
|
}
|
|
|
|
|
|
return diff
|