Code:
Block Hash (as big integer value)
|(y)
|
|
| -------------------------------+
| --- * #---#---# (C) |
| \ / |
| \ / +---------------------(Difficulty bound)
| \ /
| *---*---*---* (A)
| \
| \
| \
| +---+ (B)
|
+---+---+---+---+---+---+---+---+---+---+---+---+----+---+-(x)
n-1 n n+1 n+2 n+3
n - Height
|(y)
|
|
| -------------------------------+
| --- * #---#---# (C) |
| \ / |
| \ / +---------------------(Difficulty bound)
| \ /
| *---*---*---* (A)
| \
| \
| \
| +---+ (B)
|
+---+---+---+---+---+---+---+---+---+---+---+---+----+---+-(x)
n-1 n n+1 n+2 n+3
n - Height
In the above diagram we represent three different block chains as curves where y(Block Hash as integer) and x(block Height n)
Correct me if i am wrong but according to current Bitcoin POW
Block chain (C) wins as the longest with adequate proof of work (sum of nBits)
Chains (A) and (B) although harder to generate don't count, as shorter.
What if we measured the area bellow each curve as Proof of work for a chain*?
Then a really low hash value in a chain would be taken into account making it further difficult to generate better curves given a known one.
*We would then have to minimize the area at given height.
[EDIT]
You're proposing that the total work be based on the value of the individual hashes, instead of the hash targets, is that correct?
This could incentivize a miner who happens to find a hash with an unusually low value to refrain from immediately broadcasting it. See, for example, this attack proposed a few years ago by casascius, which becomes viable with this proposed change.
Thanks to btchris for feedbackThis could incentivize a miner who happens to find a hash with an unusually low value to refrain from immediately broadcasting it. See, for example, this attack proposed a few years ago by casascius, which becomes viable with this proposed change.
As a measure of performance of a curve/blockchain in order to avoid the above attack we could sum the sign changes between two curves +1,0,-1 comparing curve values point wise and assuming max value were a curve lucks a point.
the scores of the curves would then became
(A)-(C)=+1+1-1
(B)-(A)=+1+1-1
(B)-(C)=+1+1-1-1