Format Protokol UID
Protokol UID di IDCHAIN didasarkan pada format data standar yang dirancang untuk memastikan interoperabilitas, keamanan, dan efisiensi. Format ini mencakup UID (Universal Identifier), UID Document Schema, dan Verifiable Credential (VC), yang bersama-sama membentuk dasar dari ekosistem identitas digital.
Format UID (DID)
UID (Universal Identifier) adalah pengenal unik yang dikelola berdasarkan standar W3C Decentralized Identifier (DID). UID berfungsi sebagai "identitas digital" untuk individu, organisasi, atau entitas lain dalam sistem IDCHAIN.
Format UID (DID) yang digunakan dalam sistem IDCHAIN adalah sebagai berikut:
{
document: {
uri: 'did:uid: 4pqtbNkWCi73kThaxZxTsm3KFaFkcDa3PSVNYpKeh19SowwL',
authentication: [[Object]],
assertionMethod: [[Object]],
capabilityDelegation: [[Object]],
keyAgreement: [[Object]]
},
web3Name: "johndoe"
}
Penjelasan Komponen:
- uri
- Pengenal unik berbasis DID yang menunjuk ke identitas digital pengguna.
- Contoh:
did:uid:4pqtbNkWCi73kThaxZxTsm3KFaFkcDa3PSVNYpKeh19SowwL.
- authentication
- Metode autentikasi yang digunakan untuk membuktikan kepemilikan UID.
- assertionMethod
- Metode untuk memvalidasi klaim atau atribut yang terkait dengan UID.
- capabilityDelegation
- Kemampuan untuk mendelegasikan hak atau kewenangan kepada entitas lain.
- keyAgreement
- Informasi tentang kunci kriptografi yang digunakan untuk enkripsi data.
- web3Name
- Nama pengguna berbasis web3 yang lebih mudah diingat dibandingkan dengan URI UID.
Format UID Document Schema
UID Document Schema adalah struktur metadata yang didefinisikan untuk menyimpan informasi tambahan yang relevan dengan UID. Dokumen ini berfungsi sebagai "paspor digital" yang menyimpan informasi penting terkait UID dalam format standar JSON-LD.
{
"uidDocument": {
"$schema": "https://dummyjson.com/c/e5e3-ed54-49e2-93e4",
"properties": {
"channel_id": {
"type": "string"
},
"document_token": {
"type": "string"
},
"info": {
"type": "string"
},
"message": {
"type": "string"
},
"reference_number": {
"type": "string"
},
"signing_url": {
"type": "string"
},
"status": {
"type": "string"
}
},
"title": "PSrE Schema",
"type": "object",
"$id": "uid:document:0x439663891c78498ccd……………..bc231ea30"
},
"creator": "did:uid:4rpNbVf8ei……………..3sfU2jC",
"createdAt": "0x0000000000000017"
}
Penjelasan Komponen: 1. uidDocument: Objek utama yang berisi metadata dokumen UID. - $schema: URL yang mengacu pada definisi skema JSON. - properties: Daftar properti metadata seperti channel_id, document_token, dan lainnya. - $id: Pengenal unik untuk UID Document. - title: Judul nama identifikasi dari UID Document Schema.
- creator: DID dari entitas yang membuat UID.
- createdAt: Timestamp pembuatan UID Document.
Format Verifiable Credential
Verifiable Credential (VC) digunakan untuk memberikan bukti yang dapat diverifikasi terkait UID. Format VC dalam sistem IDCHAIN adalah sebagai berikut:
{
"uid_vc": "uid:vc:0x0a8fd…………daee",
"uid_document": "uid:document:0x4396…………ea30",
"uid_controller": "did:uid:4rp…………2jC",
"doc_type": "PSrE Schema",
"uid_subject": "did:uid:4pq…………owwL",
"proof": {
"reference_number": "QATESTDS150323009",
"channel_id": "001",
"document_token": "8a9468bd367fb92747bcdef808a0f59",
"status": "Uploaded",
"message": "Success",
"signing_url": "https://dev.dcid.io/1c32",
"info": "IQUSDFVBLQEDFOQIWDHGQBSDJKDNDKDMKSISHJFHGMDKDHJFNHMN"
},
"vc_status": "active",
"vc_metadata": {
"proofNonceMap": {
"0xe33aebfaf1a2ecd4665992cdf0b50875bbca4940ba5d21cf87ca8b06dd6772fa": "9edaf7b3-de80-4093-887c-8533e0656d84",
"0xab807b9ab614ef3e670004ee744c99deeba02eeffceff3662b7af87d0e411551": "621ac566-fe05-41f8-a5bf-2023f8a44405",
"0xcf4ff9b531eb021e5cded13d214ea814ddfd7b217f11f1a7a374348156059d17": "700bbd36-1c7e-40eb-9204-fd0561114ebc",
"0xb0614d174781b5e592745145baff9cec3dfd7f6b442e7b91111761a0df2b0d4e": "b81978bd-70b3-462b-9aeb-c5c2cd45a3b3",
"0x64e223274a852e0800eb21a57f0c6f3009e7803eaeef84a3ef070117d351132b": "bc61ffbb-f77d-4e70-ad42-58c7a642a01d",
"0x4dab2c6f098dc8add1b6b3eb1fc4296195e29a03f999fdb2b9d35648e8827202": "b505e2f0-bad9-4989-9923-69a9a827defd",
"0x7578eacf8710c4bbf7e51784517b86962c2f81e3a17fb58723bf069f0e45f37e": "cb245fd7-6bff-4954-b651-e4bea99654dd",
"0x3c653f14824d9275add3a9d7f62406a55ad3893ffc5fe607f6a437825d5e70cb": "e87a4495-2694-49d7-bb4e-a58f578c01b5"
},
"proofHashes": [
"0x219fd19c41b024a75b4aff5d7c30e27fd7a40ac3d624db2910ea2b394ef20585",
"0x27698920542a7c131ad1eb8bc72129b1ebd3f5387d1c3a1c0e8861f45802a6f4",
"0x2fcdfa0ee2e373b7c5688324986ea4cec398af7566cf80ba6a655c7b1efd05d1",
"0x4038b17eed9c632dbdbf8869d597e78f04f336e62f8e838af1153d4d79b7cfbb",
"0x45d11ca8972bd1f1c9b3db5536ce1a90b155896cb8d0bd62dc8e9a99fa972819",
"0xd4da1e746359c62f9c740a94b9edd2778c953c8f6b185c4db94d27ee904c02fc",
"0xd6243e164d70c698036a84ddbeb04d47a6a3085c184d16390311463430cc452f",
"0xf731f4a93b45729a03e13cfce9185c46c482232b5265f1bccc5de1a9cb689cc3"
]
}
}
Penjelasan Komponen:
- uid_vc: Pengenal unik VC.
- uid_document: Referensi ke UID Document yang terkait.
- uid_controller: DID dari entitas yang mengontrol UID.
- doc_type: Jenis dokumen, seperti "PSrE Schema."
- uid_subject: DID dari entitas yang menjadi subjek UID.
- proof: Metadata terkait validasi VC, seperti nomor referensi dan status.
- vc_status: Status VC (misalnya, "active").
- vc_metadata: Informasi tambahan untuk memverifikasi legitimasi VC
- proofHashes: Kumpulan hash unik yang didapatkan dari data proof.
- proofNonceMap: Kumpulan nilai random yang digunakan untuk menambah keamanan dan keaslian data sehingga tidak mudah dirubah oleh pihak lain.
Penggunaan Format
Setiap format memiliki peran spesifik dalam ekosistem IDCHAIN:
- UID (DID): Sebagai pengenal unik identitas.
- UID Document Schema: Untuk menyimpan metadata tambahan yang relevan dengan UID.
- Verifiable Credential: Memberikan bukti yang dapat diverifikasi tentang UID atau informasi terkait.
Dengan penggunaan format ini, IDCHAIN dapat menciptakan ekosistem yang aman, terdesentralisasi, dan fleksibel untuk mendukung berbagai aplikasi identitas digital.