33 lines
836 B
Python
33 lines
836 B
Python
import asyncio
|
|
import didkit
|
|
import json
|
|
from jinja2 import Environment, FileSystemLoader, select_autoescape
|
|
import idhub_ssikit
|
|
|
|
jwk_issuer = didkit.generate_ed25519_key()
|
|
jwk_subject = didkit.generate_ed25519_key()
|
|
|
|
did_issuer = didkit.key_to_did("key", jwk_issuer)
|
|
did_subject = didkit.key_to_did("key", jwk_subject)
|
|
|
|
|
|
env = Environment(
|
|
loader=FileSystemLoader("vc_templates"),
|
|
autoescape=select_autoescape()
|
|
)
|
|
unsigned_vc_template = env.get_template("member-credential.json")
|
|
data = {
|
|
"vc_id": "http://example.org/credentials/3731",
|
|
"issuer_did": did_issuer,
|
|
"subject_did": did_subject,
|
|
"issuance_date": "2020-08-19T21:41:50Z",
|
|
"subject_is_member_of": "Pangea"
|
|
}
|
|
signed_credential = idhub_ssikit.render_and_sign_credential(
|
|
unsigned_vc_template,
|
|
jwk_issuer,
|
|
data
|
|
)
|
|
|
|
print(signed_credential)
|