Credentialing System
Introduction
A credentialing system on-chain refers to a system where credentials, such as qualifications, certifications, or achievements, are stored and managed on a blockchain. This allows individuals to securely store their credentials on a decentralized and transparent platform, ensuring the authenticity and integrity of the information.
Benefits
Increased Security: the data stored on the blockchain is resistant to tampering or unauthorized alterations, ensuring the highest level of security for individual credentials.
Enhanced Transparency: the decentralized nature of blockchain technology enables interested parties to easily verify credentials. This transparency is crucial in various fields where accurate and trustworthy credential verification is essential.
Credentials
In the context of this credentialing system, a credential refers to a digital representation that attests to an individual's qualifications, certifications, or achievements. These credentials are securely stored and managed on a blockchain, providing a tamper-resistant and transparent record. The system supports various types of credentials, including:
Training Certification: certificates issued upon the completion of specific training programs. These credentials verify that the individual has successfully finished a training course.
Skills Verification: documents confirming an individual's skills and expertise in a particular area. This could include proficiency in a language, a specific technology, or any other relevant skill set.
KYC (Know Your Customer): documents validating the identity of the user. This could include government-issued identification, address verification, or any other information necessary for identity verification.
Each credential is authenticated and signed by the Reputation Oracle, ensuring its authenticity and allowing interested parties to easily verify the information on the blockchain.
Workflow
Credentials Information on Human App:
On the Human App users can access a list of available credentials they can get.
By clicking on a specific credential, they are redirected to the credentials verification provider's platform for more details.
Training Completion Notification:
Once a user completes a training, the credentials verification provider notifies the Reputation Oracle about the achievement.
Adding Certificates on Chain:
From this point forward, users on the Human App can add a certificate issued by the Reputation Oracle to the blockchain using the KVStore. This is how the certificate should look:
"{CREDENTIAL-REFERENCE}-{REPORACLE-ADDRESS}" : "{SIGNED-MESSAGE}"
Certificate Authentication:
The certificate is signed by the Reputation Oracle, ensuring its authenticity. This signature allows interested parties to verify the legitimacy of the credential.
How to Use Credentials:
Users can log in to the Human App, where their credentials are seamlessly included in a JSON Web Token (JWT). This way users can use their credentials to access jobs with specific requirements.
Implementation details
Reputation Oracle
Create a new credential verification
POST
/credential
Creates a new available credential verification.
Headers
Name | Value |
---|---|
Content-Type |
|
Authorization* |
|
Body
Name | Type | Description |
---|---|---|
| string | Unique reference of the credential |
| string | Description of the credential |
| datetime | Date from which the credential becomes accessible for verification |
| datetime | Date from which the credential becomes inaccessible for verification |
Response
Get credential verifications
GET
/credential
Get the list of credential verifications.
Headers
Name | Value |
---|---|
Content-Type |
|
Authorization* |
|
Query
Name | Type | Description |
---|---|---|
| string? | Status of the credential
|
| string? | Unique reference of the credential |
Response
Response
Add a verified credential to a user
POST
/credential/verified
Invoked by the credential verification provider upon the successful verification for a specific user.
Headers
Name | Value |
---|---|
Content-Type |
|
Authorization* |
|
Body
Name | Type | Description |
---|---|---|
| string | Unique reference of the credential |
| string | Address of the user that completed the training |
Response
Certificate added on chain
POST
/credential/on-chain
Notifies to the Reputation Oracle that a certificate has been added on chain.
Headers
Name | Value |
---|---|
Content-Type |
|
Authorization* |
|
Body
Name | Type | Description |
---|---|---|
| int | Id of the credential |
Response
Last updated