...
Table of Contents | ||||
---|---|---|---|---|
|
Verifiable credentials (or VCs) are a standard format for the digital representation of credentials (documents that collect attributes about a subject) that are cryptographically secure, verifiable through machines, and that guarantee privacy by enabling methods such as minimum disclosure.
VCs can be used to describe identity credentials, such as academic diplomas, driver's licenses, passports, insurance cards, vaccination records (and so much more).
With Gataca Studio, you can create, validate, and digitally sign identity credentials according to W3C standards for global interoperability
...
.
You can easily create credential issuance templates to
...
integrate an issuance process into your website or application.
Below the introductory video, you can see the detailed step-by-step tutorial on how to issue your first credential.
1. Create an Issuance Template
...
To ensure credentials are shared and interpreted correctly, each of these credentials requires a template.
Panel | ||
---|---|---|
| ||
An issuance template defines an issuance process, including:
|
When accessing Gataca Studio, you can create a new issuance template from the main dashboard or click
...
New issuance
...
in the issuance templates section.
Creating an Issuance template involves a 4-step process:
Step 1: Basic configuration
Issuance ID - Name the issuance template
The first step is to
...
define your issuance template name
...
. We recommend this name be descriptive of the credential to be issued.
This name will be associated with the issuance process
...
and will
...
serve as
...
the primary reference to the
...
process when adding it to API Keys and throughout the platform.
Example:
General configuration
Requester DID
In some cases, you may need to create a DID first (See the tutorial on creating DIDs).
...
Requester DID
You will have to select
...
which DID you want to
...
state as the Issuer of this credential.
Example:
Select DID method
This field specifies how to deal with this DID. Computers understand where to fetch the DID when reading this part of the DID. For example, GATACA's DID method is denominated "gatc"
You can select between two different DID methods:
EBSI https://ec.europa.eu/digital-building-blocks/wikis/display/EBSIDOC/EBSI+DID+Method
GATACA https://github.com/gataca-io/gataca-did-method
Example:
QR Code viewing duration - How much time should the user view the QR code?
Amount of time that the user has to scan the QR Code, in seconds.
Usually between one and two seconds.
Example:
Consent duration - How much time should my company store and process data shared by users?
Amount of time your company has to store and process data shared by users in days.
According to the GDPR, the storage limitation principles state that you should keep personal data for as long as the purpose is unfulfilled. Once the data has served its purpose, you should then delete it.
However, this goes beyond data just serving its purpose. If you are collecting data and it is just sitting around, you will need to consider deleting it and stop any further collection of that specific data category.
Please check with your corresponding data privacy regulations if your organization is outside the EU.
Example:
Callback
URL of a service that is notified by a post notification with the session data when the session has been validated.
Example:
Service description - What to include in the service description?
Include briefly all relevant information about the service associated with the verifiable credential.
Example:
Issuance
...
By default, a DID has already been created for you with the alias name “My DID.” This DID can be selected for issuing your first issuance template. You can also decide to create another DID first.
Info |
---|
Step 2: Issuance
In this step, you define which credential type you want to use and what claims will be issued in this process.
Panel | ||
---|---|---|
| ||
If your organization requires a credential type not currently supported in Studio, please reach out and tell us your needs. |
Credential Types
All verifiable credentials must declare their type in their template.
...
A credential type
...
defines the content and format of a specific credential. Gataca Studio covers a
...
significant number of credential types. New credential types will be added soon.
Depending on the service you provide, select the most appropriate one.
...
Credential Attributes - What credential attributes should be included?
Credential attributes are
...
claims made about the subject. When selecting a credential Type, Studio will show all available attributes within the schema. Select which attributes will be contained in the credential
...
you will be issuing.
...
...
Step 3:
...
Credential Issuance Requirements
...
Requirements
In this step, you define which personal information (in the form of verifiable credentials) is necessary to verify your user before issuing your credential. Users will need to ensure they have these credentials in their wallets before requesting the issuance of their credentials.
Add credentials claims - What credentials should I request from the user?
Establish the data you will be requesting from your users in order to issue the credential.
Select which credentials you require your user to share with you by clicking the Add Credential Claims button.
Scroll the list and tick those credentials you want to select
...
or use the search bar on top.
...
How to select required credentials and optional credentials
From the list of credentials, you will be requesting, select those that will be required or will remain optional.
Required credentials mean that the information is critical to fulfilling the credential issuance. Any other
...
nice-to
...
-have information should be marked as optional.
Select those that will be required or will remain optional from the list of credentials you will be requesting.
...
Step 4: Constraints
Restrictions
...
Credential trust level - How to determine which credentials are trusted?
In this section, you will determine if the
...
credentials you
...
What does this mean?
...
request from the user for authentication purposes need to be trusted.
Panel | ||
---|---|---|
| ||
If your organization requires a credential type not currently supported in Studio, please reach out and tell us your needs. |
Panel | ||||||
---|---|---|---|---|---|---|
| ||||||
Trusted Credentials are those whose Issuer is registered in Gataca’s Public Issuer Registry. Unless your subscription tier allows you to request your DIDs to be registered in Gataca’s Public Issuer Registry, Credentials issued by you will not be trusted. Make sure you don’t require your issued credentials to be trusted for authentication purposes. |
Credential data agreement - How to select the credential purpose
In this section, you will determine the reason why you are requesting the previously
...
required credentials from your users. This will be shown to your users.
Explain list
How to create a custom purpose
Security configuration
Add app authentication
Add two-factor authentication
Successful configuration
How to add issuance template to API key
2. Create an API Key
3. Connect Wallet to Sandbox
4. Test it
Security configuration
In this last section, you’ll define the extra security mechanisms, such as 2FA via biometrics, OTPs, or in-app authentication.
The available security mechanisms will depend on your subscription.
Step 5: Successful configuration
Once you finish the configuration of an Issuance Template, you’ll see confirmation that the process has been successfully saved. You can now test your Issuance Template by adding it to an API Key.
Select an API Key
When clicking on Add to API Key, a list of the available API keys for your templates will open.
Panel | ||
---|---|---|
| ||
If this is your first template, the creation of an API Key will appear. If you already have API Keys, jump to Step 3. |
2. Create an API Key
An API Key is a unique identifier and authentication key providing access to specific issuance and/or verification templates to your applications calling the Gataca Studio APIs.
Once you reach the end of creating an issuance template, you can select to add this template to an API Key. If you don’t have an API Key yet, you’ll have to create one to test your Template. The following steps show you how to create a new API Key.
On the left menu, click on API Keys.
Click on New API Key and set the basic configuration:
API Key Name: Choose an identifier for your API Key
DID: Select the DID associated with the new API Key. This will determine which administrators can access this API Key (only those with permission to manage the corresponding DID).
SSI Operations: Select the credential issuance template you want to associate with this API Key from the SSI Operations dropdown.
You will be presented with the ID and password of the API Key created.
Panel | ||
---|---|---|
| ||
Make sure to store the API key password in a secure place. Once you close this tab, you will not be able to retrieve the password, you will only be able to regenerate a new password. Learn how to regenerate a password here. |
Anchor | ||||
---|---|---|---|---|
|
Step 1: Associate an API Key to your Issuance Template
Navigate to Issuance templates on the left menu. Find the desired Issuance template you want to test, click on the three dots, and then click Edit.
Once the issuance template opens, click on Add to API Key on the top right.
Fill up the API Key information:
Select API Key: Select an API Key you want to associate with the new template created.
Password: Insert the password provided when creating the API Key. If you lost your password, you could regenerate a new password from the API Keys menu.
Callback: This field is optional and not needed for testing purposes. Insert the URL of a service that is notified by a post notification with the session data when the session has been validated.
Step 2: Link your wallet to your Sandbox
You need to link your Wallet with your Sandbox to test your Issuance Template and issue this credential into your Wallet. If you have not yet linked your Wallet with your Sandbox, click the Scan Now button to access the QR Code to join your Sandbox. The Sandbox will allow you to perform private and secure tests of the platform.
Panel | ||
---|---|---|
| ||
You can skip to Step 3 (Generate a Testing QR) if you already linked your Wallet with your Sandbox |
Scan the QR code with your Wallet.
You will see confirmation in your Wallet if the connexion with your Sandbox has been successful.
Anchor | ||||
---|---|---|---|---|
|
Now click on Generating test and scan the QR code generated to start testing.
Scan the QR code with your Wallet.
Your Wallet will then ask you to share the requested credentials. Click on consent.
Step 4: Manually issue your credential
As an organization, you have the option to make the issuance process automatic by means of internal integrations.
Panel | ||
---|---|---|
| ||
Jump to the tutorial on how to integrate SSI with your applications |
Alternatively, you may issue a credential by filling up the information manually. This manual issuance is intended to facilitate testing of your issuance templates without the need to execute internal integrations.
To test a credential issuance template or to manually issue a credential, navigate to the Pending tab in the Credential Activity menu. Here you will see the list of credential issuance requests that users have done using one of your Issuance templates.
Approving a request and issuing the credential | Rejecting a request |
---|---|
Note: issued credentials will appear in the Issued tab. |
|
The credential will now appear under Issued Credentials and in your Wallet.
The credential will now appear under Issued Credentials and in your Wallet.