From 32b1d55e053501403d6cada54a252823b3391892 Mon Sep 17 00:00:00 2001 From: librelois <elois@ifee.fr> Date: Thu, 9 Jan 2020 21:44:47 +0100 Subject: [PATCH] [fix] #11: rule BR_G27 : do not count certs being replayed twice --- rfc/0010_Duniter_Blockchain_Protocol_V12.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/rfc/0010_Duniter_Blockchain_Protocol_V12.md b/rfc/0010_Duniter_Blockchain_Protocol_V12.md index 46f41d0..f169f41 100644 --- a/rfc/0010_Duniter_Blockchain_Protocol_V12.md +++ b/rfc/0010_Duniter_Blockchain_Protocol_V12.md @@ -2171,8 +2171,14 @@ For each ENTRY in local MINDEX where `op = 'UPDATE', expired_on = 0`: For each ENTRY in local MINDEX where `type == 'JOIN' OR type == 'ACTIVE'`: +If `HEAD.version >= 12` + + ENTRY.enoughCerts = COUNT(UNIQ(CONCAT(PICK(GLOBAL_CINDEX[receiver=ENTRY.pub,expired_on=null], 'issuer'), PICK(LOCAL_CINDEX[receiver=ENTRY.pub,expired_on=null]], 'issuer')))) >= sigQty + +else + ENTRY.enoughCerts = COUNT(GLOBAL_CINDEX[receiver=ENTRY.pub,expired_on=null]) + COUNT(LOCAL_CINDEX[receiver=ENTRY.pub,expired_on=null]) >= sigQty - + > Functionally: any member or newcomer needs `[sigQty]` certifications coming *to* him to be in the WoT For each ENTRY in local MINDEX where `!(type == 'JOIN' OR type == 'ACTIVE')`: -- GitLab