Formalizing and Safeguarding Blockchain-Based BlockVoke Protocol as an ACME Extension for Fast Certificate Revocation
Abstract
:1. Introduction
- RQ
- How to describe, formalize and secure the BlockVoke/ACME extension?
- RQ1
- What is the formalization of the BlockVoke/ACME extension?
- RQ2
- What are the security risks and threats of the BlockVoke/ACME extension?
- RQ3
- What are the required modifications to the BlockVoke/ACME extension to mitigate the identified security risks and threats?
2. Supplementary Literature and Related Work
2.1. The BlockVoke Protocol
2.1.1. Creating and Signing a Certificate
2.1.2. Revoking a Certificate
2.2. Introduction to ACME
2.3. Description of BlockVoke/ACME Extension
2.4. Formalizing BlockVoke
2.5. Security Risk Management and Security Risk-Oriented Patterns
2.6. Related Works
3. Formalization of the BlockVoke/ACME Extension
3.1. CPN Modelling Strategy
3.1.1. Top-Level Goal Model
3.1.2. Top-Level Behavioural Interface Model
3.1.3. Mapping AOM to CPN
3.2. Protocol Semantics of Top-Level CPN Model
3.3. Refining CPN Models
4. Risk and Threat Analysis of the BlockVoke/ACME Extension
4.1. Identification of Assets from CPN Model
4.1.1. Identification of Systems and Processes
- ACME Protocol: This is the primary protocol which the CO and ACME CA use to communicate with each other at various points during the certificate’s lifecycle. The ACME protocol has been described in Section 2.2.
- CA Certificate Communication System: The protocol(s) by which an end-user obtains the certificate of an ACME CA with whom they have implicit trust. These protocols are usually dependent on the end-user operating system, the end-user browser, etc.
- CO Certificate Communication System: The protocol(s) by which an end-user obtains the certificate of a CO with whom they do not have implicit trust. These protocols are also usually dependent on the end-user operating system, the end-user browser, etc.
- Blockchain: This term encompasses the various protocols of the blockchain network; used for communication of new transactions, blocks, etc.
- User devices and software: These systems can be classified as follows:
- –
- Certificate-related cryptographic software: These systems include software used for CSR or certificate generation and signing by COs and CAs and for certificate revocation by the CO. These systems also involve the ACME clients used by the COs to communicate with the ACME CA and manage their certificates.
- –
- Blockchain-related software: These systems include software used by COs and CAs; for instance, to generate addresses, create and sign transactions, etc. The end-user also uses similar software to operate a full node to be aware of new blocks and transactions.
- CSR Generation
- Certificate Generation
- Certificate Verification
- Transaction Creation
- Transaction Scrutinization
- Mine Transactions
- Add Transactions to Mempool
- Mark Certificates as Revoked
- Register ACME Account
- ACME Order Sending/Receiving
- ACME Validation
- ACME Revocation
- Transaction Sending/Receiving
- Certificate Sending/Receiving
- Block propagation
4.1.2. Identification of Exchanged Data Objects
4.2. Risk and Threat Identification
- ACME Validation Challenge/Response Modified
- ACME Validation DDoS
- Malicious CO
- Malicious CA
- Certificate Modified
- Certificate DDoS
- Transaction Modified
- End–User new revocations modified
- End–User new revocations DDoS
5. Risk and Threat Mitigation of the BlockVoke/ACME Extension
5.1. Identification of SRPs
5.2. Identification of Security Requirements and Controls
5.3. Application of SRPs
6. Evaluation
6.1. State-Space Simulation Evaluation
6.1.1. Evaluation of BlockVoke/ACME Extension CPN Model before Application of SRPs
6.1.2. Evaluation of BlockVoke/ACME Extension CPN Model after Application of SRPs
6.1.3. Limitations of State-Space Simulation Results
6.2. BlockVoke/ACME Extension Proof–of–Concept Implementation
6.2.1. Overview of Proof-of-Concept Implementation
6.2.2. Results of Proof-of-Concept Implementation
6.2.3. Limitations of Proof-of-Concept Implementation
7. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Acknowledgments
Conflicts of Interest
Appendix A. BlockVoke/ACME Extension Formalization
Appendix A.1. Goal Model
Appendix A.2. Behavioural Interfaces
Appendix A.3. CPN Model Figures
Appendix A.4. CPN Model
Appendix A.5. Protocol Semantics
Appendix A.6. Updated Goal Model
Appendix A.7. Updated CPN Model
Appendix A.8. Updated Protocol Semantics
Appendix B. Risk and Threat Analysis
Appendix C. State–Space Simulations
Appendix C.1. State–Space Simulation Report—Part–1
Appendix C.2. State–Space Simulation Report—Part–2
Appendix C.3. State–Space Simulation (Updated CPN Model) Report—Part–1
Appendix C.4. State–Space Simulation (Updated CPN Model) Report—Part–2
Appendix C.5. Partitioned CPN Models
Appendix C.6. (Updated) Partitioned CPN Models
Appendix D. Proof–of–Concept Implementation Test Results
References
- Bugzilla. Bugzilla #1619179—Let’s Encrypt: Incomplete Revocation for CAA Rechecking Bug. 2020. Available online: https://bugzilla.mozilla.org/show_bug.cgi?id=1619179#c7 (accessed on 20 September 2022).
- Jacob Hoffman-Andrews. Let’s Encrypt—29 February 2020 CAA Rechecking Bug. 2020. Available online: https://community.letsencrypt.org/t/2020-02-29-caa-rechecking-bug/114591 (accessed on 20 September 2022).
- JamesLE. Let’s Encrypt – Revoking Certain Certificates on 4 March 2020. Available online: https://community.letsencrypt.org/t/revoking-certain-certificates-on-march-4/114864 (accessed on 20 September 2022).
- Cohn-Gordon, K.; Cremers, C.; Dowling, B.; Garratt, L.; Stebila, D. A Formal Security Analysis of the Signal Messaging Protocol. J. Cryptol. 2020, 33, 1914–1983. [Google Scholar] [CrossRef]
- Kulik, T.; Dongol, B.; Larsen, P.G.; Macedo, H.D.; Schneider, S.; Tran-Jørgensen, P.W.; Woodcock, J. A Survey of Practical Formal Methods for Security. Form. Asp. Comput. 2022, 34, 1–39. [Google Scholar] [CrossRef]
- Jensen, K.; Kristensen, L.M.; Wells, L. Coloured Petri Nets and CPN Tools for Modelling and Validation of Concurrent Systems. Int. J. Softw. Tools Technol. Transf. 2007, 9, 213–254. [Google Scholar] [CrossRef]
- Dubois, E.; Heymans, P.; Mayer, N.; Matulevičius, R. A Systematic Approach to Define the Domain of Information System Security Risk Management. In Intentional Perspectives on Information Systems Engineering; Springer: Berlin/Heidelberg, Germany, 2010; pp. 289–306. [Google Scholar]
- Matulevičius, R. Fundamentals of Secure System Modelling; Springer International Publishing: Berlin/Heidelberg, Germany, 2017. [Google Scholar]
- Garba, A.; Bochem, A.; Leiding, B. BlockVoke – Fast, Blockchain-Based Certificate Revocation for PKIs and the Web of Trust. In Proceedings of the International Conference on Information Security, Bali, Indonesia, 16–18 December 2020; pp. 315–333. [Google Scholar]
- Sujatanagarjuna, A.; Bochem, A.; Leiding, B. Formalizing the Blockchain-Based BlockVoke Protocol for Fast Certificate Revocation Using Colored Petri Nets. Information 2021, 12, 277. [Google Scholar] [CrossRef]
- Barnes, R.; Hoffman-Andrews, J.; McCarney, D.; Kasten, J. Automatic Certificate Management Environment (ACME); RFC 8555; RFC: Nanjapuram, India, 2019. [Google Scholar]
- Aas, J.; Barnes, R.; Case, B.; Durumeric, Z.; Eckersley, P.; Flores-López, A.; Halderman, J.A.; Hoffman-Andrews, J.; Kasten, J.; Rescorla, E.; et al. Let’s Encrypt: An Automated Certificate Authority to Encrypt the Entire Web. In Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security. Association for Computing Machinery, London, UK, 11–15 November 2019; pp. 2473–2487. [Google Scholar]
- Smith, T.; Dickinson, L.; Seamons, K. Let’s Revoke: Scalable Global Certificate Revocation. In Proceedings of the 27th Annual Network and Distributed System Security Symposium (NDSS 2020), Diego, CA, USA, 23–26 February 2020. [Google Scholar]
- Cooper, D.; Santesson, S.; Farrell, S.; Boeyen, S.; Housley, R.; Polk, W. Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile. IETF RFC5280. May 2008. Available online: https://datatracker.ietf.org/doc/html/rfc5280 (accessed on 20 September 2022).
- Duo, W.; Xin, H.; Xiaofeng, M. Formal Analysis of Smart Contract Based on Colored Petri Nets. IEEE Intell. Syst. 2020, 35, 19–30. [Google Scholar] [CrossRef]
- Rahman, M.S.; Khalil, I.; Bouras, A. Formalizing Dynamic Behaviors of Smart Contract Workflow in Smart Healthcare Supply Chain. In Proceedings of the International Conference on Security and Privacy in Communication Systems, Washington, DC, USA, 21–23 October 2020; pp. 391–402. [Google Scholar]
- Liu, Z.; Liu, J. Formal Verification of Blockchain Smart Contract Based on Colored Petri Net Models. In Proceedings of the 2019 IEEE 43rd Annual Computer Software and Applications Conference (COMPSAC), Milwaukee, WI, USA, 15–19 July 2019; Volume 2, pp. 555–560. [Google Scholar]
- Leiding, B.; Norta, A. Mapping Requirements Specifications Into a Formalized Blockchain-Enabled Authentication Protocol for Secured Personal Identity Assurance. In Proceedings of the 4th International Conference on Future Data and Security Engineering—FDSE 2017, Ho Chi Minh City, Vietnam, 29 November–1 December 2017; pp. 181–196. [Google Scholar]
- Norta, A.; Matulevičius, R.; Leiding, B. Safeguarding a Formalized Blockchain-Enabled Identity-Authentication Protocol by Applying Security Risk-Oriented Patterns. Comput. Secur. 2019, 86, 253–269. [Google Scholar] [CrossRef]
- Leiding, B.; Cap, C.H.; Mundt, T.; Rashidibajgan, S. Authcoin: Validation and Authentication in Decentralized Networks. In Proceedings of the 10th Mediterranean Conference on Information Systems—MCIS 2016, Paphos, Cyprus, 4–6 September 2016. [Google Scholar]
- Jensen, K. Coloured Petri Nets. In Proceedings of the Discrete Event Systems: A New Challenge for Intelligent Control Systems, IEE Colloquium on IET, London, UK, 4 June 1993; pp. 1–5. [Google Scholar]
- Sterling, L.; Taveter, K. The Art of Agent-oriented Modeling; MIT Press: Cambridge, MA, USA, 2009. [Google Scholar]
- Mahunnah, M.; Norta, A.; Ma, L.; Taveter, K. Heuristics for Designing and Evaluating Socio–Technical Agent–Oriented Behaviour Models with Coloured Petri Nets. In Proceedings of the 38th International Computer Software and Applications Conference Workshops, Washington, DC, USA, 21–25 July 2014; pp. 438–443. [Google Scholar]
- Ahmed, N.; Matulevičius, R. Securing Business Process Using Security Risk-oriented Patterns. Comput. Stand. Interfaces 2014, 36, 723–733. [Google Scholar] [CrossRef]
- Ahmed, N.; Matulevičius, R. Presentation and Validation of Method for Security Requirements Elicitation from Business Processes. In Proceedings of the Information Systems Engineering in Complex Environments, Selected extended papers from CAiSE Forum 2014, Thessaloniki, Greece, 16–20 June 2014. [Google Scholar]
- Mayer, N. Model-based Management of Information System Security Risk. Ph.D. Thesis, University of Namur, Namur, Belgium, 2009. [Google Scholar]
- Yoder, J.; Barcalow, J. Architectural Patterns for Enabling Application Security. Urbana 1998, 51, 61801. [Google Scholar]
- Schumacher, M. Security Eengineering With Patterns: Origins, Theoretical Models, And New Applications; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2003; Volume 2754. [Google Scholar]
- Milner, R.; Parrow, J.; Walker, D. A Calculus of Mobile Processes, I. Inf. Comput. 1992, 100, 1–40. [Google Scholar] [CrossRef] [Green Version]
- Hoare, C.A.R. Communicating Sequential Processes. In The Origin of Concurrent Programming; Springer: Berlin/Heidelberg, Germany, 1978; pp. 413–443. [Google Scholar]
- Jensen, K.; Kristensen, L.M. Coloured Petri Nets: Modelling and Validation of Concurrent Systems; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2009. [Google Scholar]
- Bochem, A.; Leiding, B. Rechained: Sybil-Resistant Distributed Identities for the Internet of Things and Mobile Ad Hoc Networks. Sensors 2021, 21, 3257. [Google Scholar] [CrossRef] [PubMed]
- Basyouni, A.; Tavares, S. New Approach to Cryptographic Protocol Analysis Using Coloured Petri Nets. In Proceedings of the Electrical and Computer Engineering, 1997. Engineering Innovation: Voyage of Discovery, St. John’s, NF, Canada, 25–28 May 1997; Volume 1, pp. 334–337. [Google Scholar]
- Dresp, W. Security Analysis of the Secure Authentication Protocol by Means of Coloured Petri Nets. In Proceedings of the IFIP International Conference on Communications and Multimedia Security, Salzburg, Austria, 19–21 September 2005; pp. 230–239. [Google Scholar]
- Vanek, T.; Rohlik, M. Model of DoS Rresistant Broadcast Authentication Protocol in Colored Petri Net Environment. In Proceedings of the IWSSIP 2010 Proceedings, Rio de Janeiro, Brazil, 17–19 June 2010; pp. 264–267. [Google Scholar]
- Xu, Y.; Xie, X. Modeling and Analysis of Security Protocols Using Colored Petri Nets. JCP 2011, 6, 19–27. [Google Scholar] [CrossRef]
- Pinna, A.; Tonelli, R. On the use of Petri Nets in Smart Contracts Modeling, Generation and Verification. In Proceedings of the 2022 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER), Honolulu, HI, USA, 15–18 March 2022; pp. 1207–1211. [Google Scholar]
- Al-Azzoni, I.; Down, D.; Khedri, R. Modeling and Verification of Cryptographic Protocols Using Coloured petri Nets. Nord. J. Comput. 2005, 12, 200–228. [Google Scholar]
- Sornkhom, P.; Permpoontanalarp, Y. Security Analysis of Micali’s Fair Contract Signing Protocol by Using Coloured Petri Nets: Multi-session Case. In Proceedings of the Parallel & Distributed Processing, Rome, Italy, 23–29 May 2009; pp. 1–8. [Google Scholar]
- Yoshioka, N.; Washizaki, H.; Maruyama, K. A Survey on Security Patterns. Prog. Inform. 2008, 5, 35–47. [Google Scholar] [CrossRef] [Green Version]
- Samarütel, S.; Matulevičius, R.; Norta, A.; Nõukas, R. Securing Airline-turnaround Processes Using Security Risk-oriented Patterns. In Proceedings of the IFIP Working Conference on The Practice of Enterprise Modeling, Skövde, Sweden, 8–10 November 2016; pp. 209–224. [Google Scholar]
- Matulevičius, R.; Norta, A.; Udokwu, C.; Nõukas, R. Security Risk Management in the Aviation Turnaround Sector. In Proceedings of the International Conference on Future Data and Security Engineering, Can Tho City, Vietnam, 23–25 November 2016; pp. 119–140. [Google Scholar]
- Ahmed, N.; Matulevičius, R.; Khan, N.H. Eliciting Security Requirements for Business Processes using Patterns. In Proceedings of the 9th International Workshop on Security in Information Systems, Bordeaux, France, 15 March 2016. [Google Scholar]
- Liu, Y.; Tome, W.; Zhang, L.; Choffnes, D.; Levin, D.; Maggs, B.; Mislove, A.; Schulman, A.; Wilson, C. An End-to-End Measurement of Certificate Revocation in the Web’s PKI. In Proceedings of the 2015 Internet Measurement Conference, Tokyo, Japan, 28–30 October 2015; pp. 183–196. [Google Scholar]
- Basin, D.; Cremers, C.; Kim, T.H.J.; Perrig, A.; Sasse, R.; Szalachowski, P. Design, analysis, and implementation of ARPKI: An attack-resilient public-key infrastructure. IEEE Trans. Dependable Secur. Comput. 2016, 15, 393–408. [Google Scholar] [CrossRef]
Offset | Length | Content |
---|---|---|
0 | 10 | BlockVoke |
10 | 16 | First 16B of certificate fingerprint |
26 | 4 | Date of issuance in days since 2020-02-02 (uint32) |
30 | 1 | Revocation reason code according to RFC 5280 [14] (uint8) |
31 | 3 | Optional: If CA uses CRV, uint24 of revocation number RN |
34 | 6 | Optional: If CA uses CRV, unique CA identifier |
Meaning | Goal | Quality Goal | Role | Relationship between goals | Relationship between goals and quality goals |
---|---|---|---|---|---|
Symbol |
Name | CPN Notation |
---|---|
Connecting arc | |
Sub–goal or activity | |
Trigger or precondition | |
Postcondition | |
Goal | |
Precondition(s) |
Activity | Trigger | Precondition(s) | Postcondition(s) |
---|---|---|---|
Register ACME Account | CO wants to register a new ACME Account | CO has generated an ACME key–pair | ACME Account registered |
Generate Certificate | CA wants to generate CO’s certificate | CO’s CSR with information relevant to the certificate, CO’s (wallet) public key, CA’s signing key pair, CA’s (wallet) public key, ACME Account Registered | Generated certificate with CA’s signature ready to be verified by the end–user’s organization members. |
Verify Certificate | Certificate ready to be verified by the end user | Generated certificate, CA’s public key | Certificate has been verified by an end user. |
Revoke Certificate | CA or CO wants to revoke a certificate that they have signed/own respectively | Bitcoin wallet with small credit amount, signed certificate, certificate verified, RFC 5280 revocation code, optional CA identifier | Certificate has been revoked. |
Name | Type | Description |
---|---|---|
Wallet | (Wallet_Addr, Wallet_KeyPair, Wallet_Previous_Hash, Wallet_Balance) | A Wallet |
BlockVoke_Cert | ColorSet (CO_CN, CO_PublicKey, CO_Key_ID, CO_CN, CO_PublicKey, CO_Key_ID, Cert_Valid_From, Cert_Valid_To, Cert_Multisig_addr, Cert_Sig, Cert_Fingerprint, Cert_DOI | SSL Certificate with extra BlockVoke fields |
CSR | ColorSet (BlockVoke_Cert, Wallet_Addr) | Representation of a Certificate Signing Request |
RV | ColorSet (Cert_Fingerprint, Is_CA, Funds, Wallet_Addr, Fees, RFC5280_RevocationCode, Cert_Multisig_addr, Cert_DOI, CA_Key_ID) | ColorSet with information required for a Revocation |
ACME_KeyPair | ColorSet(RSAKeyPair) | ACME key pair |
ACME_Account | ColorSet(ACME_Contact, ACME_KeyPair, ACME_Status) | ColorSet representing ACME account |
bv_cert | Variable of color BlockVoke_Cert | Variable |
acme_account | Variable of color ACME_Account | Variable |
Value Name | Value Declaration |
---|---|
initialACMEAccount | 1`("www.co1-website.com", ((3127, 7), (3127, 431)), false)++ |
1`("www.co2-website.com", ((5767, 41), (5767, 137)), false)++ | |
1`("www.co3-website.com", ((7387, 7), (7387, 1031)), false)++ | |
1`("www.co4-website.com", ((4087, 17), (4087, 233)), false); | |
initialCAWallet | 1`("0x1", ("ca1_wallet_pubkey", "ca1_wallet_privkey"), "0x001", 100) |
initialCAKeypair | 1`("CA1", (25877, 5), (25877, 20429), "ca1") |
initialCOWallet | 1`("0x3", ("co1_pubkey", "co1_privkey"), "0x003", 100)++ |
1`("0x4", ("co2_pubkey", "co2_privkey"), "0x004", 100)++ | |
1`("0x5", ("co3_pubkey", "co3_privkey"), "0x005", 100)++ | |
1`("0x6", ("co4_pubkey", "co4_privkey"), "0x006", 100) | |
initialCOKeypair | 1`("www.co1-website.com", (33017, 7), (33017, 4663), "co1_website")++ |
1`("www.co2-website.com", (83767,13), (83767,6397), "co2_website")++ | |
1`("www.co3-website.com", (69451,5), (69451,13781), "co3_website")++ | |
1`("www.co4-website.com", (50299,3), (50299,33227), "co4_website") | |
initialCSR | 1`(("www.co1-website.com", (33017, 7), "co1_website", "CA1", |
(25877, 5), "ca1", "02/02/2021", "02/02/2022", "", 0, 0, ""), "co1_pubkey")++ | |
1`(("www.co2-website.com", (83767, 13), "co2_website", "CA1", | |
(25877, 5), "ca1", "03/03/2021", "03/03/2022", "",0, 0,""), "co2_pubkey")++ | |
1`(("www.co3-website.com", (69451, 5), "co3_website", "CA1", | |
(25877, 5), "ca1", "04/04/2021", "04/04/2022", "", 0, 0,""), "co3_pubkey")++ | |
1`(("www.co4-website.com", (50299, 3), "co4_website", "CA1", | |
(25877, 5), "ca1", "05/05/2021", "05/05/2022", "", 0, 0,""), "co4_pubkey") | |
initialCORevoke | 1`(1803, false, 10, "0x4", 1, "unused", "0xmultisig2", |
"12.02.2021", "ca1") | |
initialCARevoke | 1`(1825, true, 10, "0x1", 1, "cACompromise", "0xmultisig4", |
"12.02.2021", "ca1") |
Treatment | Countermeasure | Applicable Risks |
---|---|---|
Reduction | Make the data unreadable before transmission | |
Ensure integrity using a checksum | ACME Verification Challenge/Response modified, Certificate modified, Transaction modified, End–User new revocations modified | |
Avoidance | Change the transmission medium to one that cannot be intercepted |
Treatment | Countermeasure | Applicable Risks |
---|---|---|
Avoidance | Filter incoming data against validity | Malicous CO, Malicious CA |
Treatment | Countermeasure | Applicable Risks |
---|---|---|
Reduction | Decentralisation, load distribution and balancing | ACME Validation DDoS, Certificate DDoS, and End–User new revocations DDoS |
Risk Treatment | Risk Reduction |
---|---|
Security Requirements | Ensure integrity using a checksum. |
Controls | End–User signs the revocation information before transmitting to their organisation. |
Risk Treatment | Risk Avoidance |
---|---|
Security Requirements | Filter incoming Certificate for validity. |
Controls | CO Validates Bitcoin multi–signature address in Certificate extension field before use. |
Risk Treatment | Risk Reduction |
---|---|
Security Requirements | Reduction of certificate communication medium disruptions. |
Controls | Decentralisation, load distribution and balancing of the certificate communication medium. |
Risk Treatment | Risk Reduction |
---|---|
Security Requirements | Reduction of disruption in the communication medium used for communicating new revocations from an end–user to their organisation. |
Controls | Decentralisation, load distribution and balancing of the communication medium used for communicating new revocations from an end–user to their organisation. |
Activity | Trigger | Precondition(s) | Postcondition(s) |
---|---|---|---|
Validate Certificate Multisignature address | Certificate Generated by CA | Certificate multisignature address is valid | Certificate ready to be verified by end–user. |
Sign new Revocations | End–User wants to send new revocations, such as CRLite filter updates, to their organisation | New Tx:Revoke transaction(s), End–User’s private key used to sign new revocation information | New revocation information signed by End–User and communicated to their organisation |
Verify signed revocations | End–User’s organisation receives the signed revocation information | Signed revocation information, Organisation members have End–User’s public key | End–User’s organisation verify End–User’s signature and mark the certificate as revoked |
Loops | Home Markings | Dead Markings | Dead Transitions | Live Transitions |
---|---|---|---|---|
No | Yes (1) | Yes (1) | No | No |
Loops | Home Markings | Dead Markings | Dead Transitions | Live Transitions |
---|---|---|---|---|
No | No | Yes (2) | No | No |
Loops | Home Markings | Dead Markings | Dead Transitions | Live Transitions |
---|---|---|---|---|
No | Yes (1) | Yes (1) | No | No |
Loops | Home Markings | Dead Markings | Dead Transitions | Live Transitions |
---|---|---|---|---|
No | No | Yes (2) | No | No |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Sujatanagarjuna, A.; Bochem, A.; Leiding, B. Formalizing and Safeguarding Blockchain-Based BlockVoke Protocol as an ACME Extension for Fast Certificate Revocation. Cryptography 2022, 6, 63. https://doi.org/10.3390/cryptography6040063
Sujatanagarjuna A, Bochem A, Leiding B. Formalizing and Safeguarding Blockchain-Based BlockVoke Protocol as an ACME Extension for Fast Certificate Revocation. Cryptography. 2022; 6(4):63. https://doi.org/10.3390/cryptography6040063
Chicago/Turabian StyleSujatanagarjuna, Anant, Arne Bochem, and Benjamin Leiding. 2022. "Formalizing and Safeguarding Blockchain-Based BlockVoke Protocol as an ACME Extension for Fast Certificate Revocation" Cryptography 6, no. 4: 63. https://doi.org/10.3390/cryptography6040063
APA StyleSujatanagarjuna, A., Bochem, A., & Leiding, B. (2022). Formalizing and Safeguarding Blockchain-Based BlockVoke Protocol as an ACME Extension for Fast Certificate Revocation. Cryptography, 6(4), 63. https://doi.org/10.3390/cryptography6040063