# A Blockchain-Based Decentralized Public Key Infrastructure Using the Web of Trust
## 5 System Overview
### System Architecture
#### 5.2.2 Validation  
Ensuring the authenticity of CSRs stands as a pivotal aspect of the certification process. To achieve this, our proposed decentralized PKI system introduces multiple introducers within the verification system. The initial phase involves identifying validators responsible for information validation, followed by the establishment of a key-ring network comprising trusted introducers, who will later undertake information verification. In summary, the system involves two types of validation: (I) public key certificate authenticity, focusing on information validation for issuing/revocating certificates, and (II) ring-member authenticity, which is applicable to introducer validation for their inclusion within the key-ring network. 1. **Public Key Certificate Authenticity:** In a decentralized PKI structure, there is no central authority for certification, so validated introducers act as CAs and sign certificates to ensure trustworthiness. Figure 3 demonstrates the process by which certificates can be authenticated by trusted introducers, bypassing the need for CAs. These members manually verify all information, requesting additional details or physical meetings when necessary, and document their verification methods within the signed certificates, thereby enhancing trust in user information for both the introducers and other ring members. During the process of signing a certificate, introducers are required to assess and define the level of trust for the examined certificate after verifying the CSR information. The PGP trust model relies on varying levels of trust determined by the introducers during certificate verification. We employ a similar approach to calculate the trust level of the certificate. The trust level assigned to a certificate falls into one of the following categories:  
* Not trusted;
* Marginally trusted;
* Fully trusted. Once the manual validation and signing process is completed by introducers, the system examines the number of signatures and their associated trust levels. It then employs a mathematical formula that takes into account several parameters to calculate the overall trust level. The mathematical equation used to determine the trust level of the public key certificate is as follows:  
\[L=\frac{1}{C}\sum_{i=1}^{C}\frac{1}{d_{i}}+\frac{1}{M}\sum_{i=1}^{m}\frac{1}{d _{i}} \tag{1}\]  
In Equation (1), the following variables are defined:  
Figure 2: Illustration of the process of generating a signed CSR and integrating it into the blockchain network. \(L\) represents the certificate trust level. \(c\) and \(m\) represent the number of signatures from fully trusted and marginally trusted introducers, respectively. \(C\) and \(M\) denote the number of signatures required from fully trusted and marginally trusted introducers to validate the certificate. These values are determined by the system authority, where \(C\geq 1\) and \(M\geq 1\). \(d\) represents the depth from the ring owner to the current introducer. In graph terms, the depth signifies the distance from the root node to the current node. Here, calculating the depth value allows us to define the closest to the furthest introducers in the ring hierarchy based on their distance from the ring owner. A depth constraint can also be imposed to reduce the expansion of the key-ring size. Based on the values obtained from introducers and utilizing the aforementioned mathematical equation, the public key certificate is deemed fully valid if \(L\geq 1\), marginally valid if \(0<L<1\), and unknown if \(L=0\). For instance, by setting \(C=1\) and \(M=3\), indicating the requirement of at least one signature from a fully trusted introducer or at least three signatures from marginally trusted introducers, and using a depth \(d\) of 1 for all the signers, the certificate will be fully trusted; otherwise, it will be marginally or not trusted. This trust level is subsequently appended to the requester's certificate, offering transparency for individuals from other communities to comprehend the level of trust they should place in it.