From 4479d21d26a91249fd415fa59f3de8624d579d5f Mon Sep 17 00:00:00 2001 From: Martin Schanzenbach Date: Thu, 26 May 2022 18:06:08 +0200 Subject: modify difficulty calculation --- draft-schanzen-gns.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/draft-schanzen-gns.xml b/draft-schanzen-gns.xml index 960d6f5..f113141 100644 --- a/draft-schanzen-gns.xml +++ b/draft-schanzen-gns.xml @@ -686,8 +686,8 @@ zTLD[126..129].zTLD[63..125].zTLD[0..62] Usually, PoW schemes require to find one POW value such that - at least D leading zeroes are found in the hash result. - D is then referred to as the difficulty of the PoW. + a specific number of leading zeroes are found in the hash result. + This number is then referred to as the difficulty of the PoW. In order to reduce the variance in time it takes to calculate the PoW, a valid GNS revocation requires that a number Z different PoWs must be found that on average have D leading zeroes. @@ -709,7 +709,7 @@ zTLD[126..129].zTLD[63..125].zTLD[0..62]
Z
The number of PoWs that are required. Its value is fixed at 32.
D
-
The minimum average difficulty. Its value is fixed at 22.
+
The lower limit of the average difficulty. Its value is fixed at 22.
EPOCH
A single epoch. Its value is fixed at 365 days in microseconds.
@@ -757,7 +757,7 @@ zTLD[126..129].zTLD[63..125].zTLD[0..62] microseconds in network byte order. The field SHOULD be set to EPOCH * 1.1. Given an average number of leading zeros D', then the field value - MAY be increased up to (D'-D) * EPOCH * 1.1. + MAY be increased up to (D'-D+1) * EPOCH * 1.1. Validators MAY reject messages with lower or higher values when received. The EPOCH is extended by @@ -847,7 +847,7 @@ zTLD[126..129].zTLD[63..125].zTLD[0..62]
  • The signature MUST be verified against the zone key.
  • The set of POW values MUST NOT contain duplicates which MUST be checked by verifying that the values are strictly monotonically increasing.
  • The average number of leading zeroes D' resulting from the provided - POW values MUST be greater than and not equal to D. Implementers + POW values MUST be greater than or equal to D. Implementers MUST NOT use an integer data type to calculate or represent D'.
  • @@ -861,7 +861,7 @@ zTLD[126..129].zTLD[63..125].zTLD[0..62] The validity period of the revocation is calculated as - (D'-D) * EPOCH * 1.1. The EPOCH is extended by + (D'-D+1) * EPOCH * 1.1. The EPOCH is extended by 10% in order to deal with unsynchronized clocks. The validity period added on top of the TIMESTAMP yields the expiration date. -- cgit v1.2.3