Method and blockchain-based system for managing credentials in batch with selective attributes disclosure/hiding and auditable merkle tree
AssigneesVietnam National University Ho Chi Minh City, International University (IU)—Vietnam National University HCM City
InventorTung Thanh Tran
Life of this patent
Estimating the term…
Abstract
A blockchain based system for managing credentials in batch with selective attributes disclosing/hiding capability and auditable Merkle tree are disclosed with include a SmartCert unit coupled to a blockchain ecosystem and a public key infrastructure (PKI); the SmartCert unit further includes an issuer SmartCert and SmartCert verifier interface so that the holder can select to hide optional components completely from the verifier; and the verifier can check the certificate using the auditable Merkle tree.
Claims18
A method for managing credentials with selective disclosure/hiding on a blockchain ecosystem, comprising:
- (a) providing mandatory components and optional components to each of a plurality of digital certificates using a smart contract of said blockchain ecosystem, wherein said optional components are characterized to be invisible to verifiers when they are unselected;
- (b) publishing said plurality of digital credentials in batch to said blockchain ecosystem;
- (c) generating an auditable Merkle tree wherein each leaf node and a root node includes Hash values and attributes of children leaf nodes by adding an extracting and combining function at each of said root node and said leaf nodes;
- and
- (d) verifying said plurality of digital certificates using said auditable Merkle tree and said smart contract and information on issuer receipts generated by said blockchain ecosystem upon the receipt of said smart contract by (i) extracting a first Hash value and a first attribute of a certificate to be verified, a second Hash value and a second attribute of an adjacent certificate paired to said certificate to be verified, a third Hash value and a third attribute from a third certificate located in a leaf node one level higher and adjacent to a parent leaf node of said first Hash value and said second Hash value;
- (ii) deriving a Hash value of said root node from said first Hash value, said second Hash value and said third Hash value, wherein said steps above obey iterative equations:
- Hash
- i
- j
- =
- Hash
- (
- Hash
- i
- -
- 1
- j
- -
- 1
- ,
- Hash
- i
- j
- -
- 1
- )
- Attr
- i
- j
- =
- Combine
- (
- Attr
- i
- -
- 1
- j
- -
- 1
- ,
- Attr
- i
- j
- -
- 1
- )
- wherein i, j are positive integers;
- i representing number of said plurality of certificates, and j representing a height of said auditable Merkle tree.
A blockchain-based system, comprising:
- (v) a certification unit attached to and operable in cooperation with an Ethereum platform to:
- (i) provide an issuer graphic user interface (GUI) page, a holder GUI, and a verifier GUI;
- (ii) providing mandatory components and optional components to each of a plurality of digital certificates using a smart contract of said Ethereum platform, wherein said optional components are characterized to be invisible to verifiers when they are unselected;
- (iii) publish said plurality of digital credentials in batch to said Ethereum platform;
- (iv) generate an auditable Merkle tree wherein each leaf node and a root node includes Hash values and attributes of children leaf nodes by adding an extracting and combining function at each of said root node and said leaf nodes;
- and (v) verify said plurality of digital certificates using said auditable Merkle tree and said smart contract and information on issuer receipts generated by said Ethereum platform upon the receipt of said smart contract by (a) extracting a first Hash value and a first attribute of a certificate to be verified, a second Hash value and a second attribute of an adjacent certificate paired to said certificate to be verified, a third Hash value and a third attribute from a third certificate located in a leaf node next level higher and adjacent to a parent leaf node of said first Hash value and said second Hash value;
- (b) deriving a Hash value of said root node from said first Hash value, said second Hash value and said third Hash value, wherein said steps above obeys iterative equations:
- Hash
- i
- j
- =
- Hash
- (
- Hash
- i
- -
- 1
- j
- -
- 1
- ,
- Hash
- i
- j
- -
- 1
- )
- Attr
- i
- j
- =
- Combine
- (
- Attr
- i
- -
- 1
- j
- -
- 1
- ,
- Attr
- i
- j
- -
- 1
- )
- wherein i, j are positive integers and i representing number of said plurality of certificates, j representing a height of said auditable Merkle tree;
- and
- (h) a public key infrastructure (PKI) unit coupled to said Ethereum platform and said certification unit via a world wide web.
Dependencies are inferred from the claim text.