Panduan Teknis Zona yang Dapat Dibaca Mesin (MRZ) (ID)
Panduan teknis untuk Zona yang Dapat Dibaca Mesin: tata letak ICAO 9303 TD1, TD2, dan TD3, digit pemeriksa, jebakan penguraian, dan hubungannya dengan chip NFC.

MRZ berarti Zona yang Dapat Dibaca Mesin: blok karakter dengan lebar tetap yang terstandardisasi yang tercetak pada paspor, kartu identitas, dan dokumen perjalanan lain yang dapat dibaca mesin.
Ini mengkodekan bidang identitas dan dokumen tertentu untuk pengenalan karakter optik. Digit pemeriksa membantu mendeteksi kesalahan pembacaan atau transkripsi. Digit ini tidak membuktikan bahwa dokumen tersebut asli, bahwa otoritas tepercaya mengeluarkan data, atau bahwa presenter adalah pemegang yang sah.
Poin-poin Penting
- MRZ adalah keluarga tata letak, bukan satu string universal. TD1 menggunakan tiga baris 30 karakter, TD2 menggunakan dua baris 36, dan TD3 menggunakan dua baris 44.
- Posisi membawa makna. Parser harus mempertahankan batas baris, lebar bidang, karakter pengisi, dan skema yang dipilih untuk dokumen tersebut.
- Digit pemeriksa mendeteksi kesalahan; bukan tanda tangan. Perhitungan modulus-10 ICAO menggunakan nilai karakter dan bobot berulang 7, 3, dan 1.
- Nama dan tanggal membutuhkan kebijakan, bukan tebakan. Transliterasi, pemotongan, pengisi, dan tahun dua digit dapat membuat penguraian yang secara sintaksis valid menjadi semantik yang tidak pasti.
- MRZ dan NFC melayani fungsi kepercayaan yang berbeda. MRZ adalah data yang dapat dibaca secara optik; chip ePaspor yang terautentikasi dapat menyediakan data yang ditandatangani secara digital dan bukti anti-kloning opsional.
Apa itu MRZ?
Zona yang Dapat Dibaca Mesin adalah area yang dapat dibaca mesin yang wajib ada pada dokumen perjalanan yang dapat dibaca mesin yang sesuai dengan ICAO. Area ini muncul secara terpisah dari Zona Inspeksi Visual (VIZ), tempat seseorang melihat label, tanggal lengkap, potret, dan detail dokumen lainnya.
ICAO Doc 9303 mendefinisikan sistem dokumen perjalanan di berbagai bagian. Bagian 3 berisi spesifikasi umum untuk dokumen perjalanan yang dapat dibaca mesin. Bagian 4, 5, dan 6 mendefinisikan tata letak TD3, TD1, dan TD2 masing-masing. Tata letak tersebut menggunakan karakter OCR-B dan repertoar yang sengaja dibatasi:
- huruf kapital
AhinggaZ; - digit
0hingga9; - karakter pengisi
<.
Pengisi tidak bersifat dekoratif. Ini mengisi bidang dengan lebar tetap yang tidak digunakan, menggantikan spasi atau tanda baca yang tidak didukung jika ditentukan, dan memisahkan komponen nama. Menghapus setiap < sebelum penguraian akan menghancurkan informasi tentang batas bidang dan nama.
MRZ mengulang data dokumen yang dipilih. Ini dioptimalkan untuk pengambilan yang dapat dioperasikan, bukan untuk mempertahankan setiap bidang visual atau nama skrip nasional.
Perbandingan format TD1, TD2, dan TD3
Keputusan penguraian pertama adalah tata letak dokumen. Jumlah baris dan lebar yang tepat memberikan diskriminator awal terkuat.
| Format | Faktor bentuk umum | Bentuk MRZ | Total karakter | Lokasi nama |
|---|---|---|---|---|
| TD1 | Dokumen perjalanan resmi atau kartu identitas seukuran kartu kredit | 3 × 30 | 90 | Baris 3 |
| TD2 | Kartu yang lebih besar atau halaman data buklet | 2 × 36 | 72 | Baris 1 |
| TD3 | Paspor yang dapat dibaca mesin dan dokumen TD3 lainnya | 2 × 44 | 88 | Baris 1 |
Jangan menyimpulkan format hanya dari kode dokumen seperti P atau I. Pengambilan dapat menghilangkan satu baris, menggabungkan dua baris, menyisipkan spasi, atau mengembalikan potongan dari wilayah yang salah. Validasi geometri dan karakter yang diizinkan sebelum menetapkan posisi bidang.
TD1: tiga baris 30 karakter
Doc 9303 Bagian 5 mendefinisikan dokumen perjalanan resmi yang dapat dibaca mesin berukuran TD1. Karena kartu tersebut ringkas, MRZ membentang tiga baris.
TD1 baris 1: dokumen dan data opsional
| Posisi | Panjang | Bidang |
|---|---|---|
| 1–2 | 2 | Kode dokumen |
| 3–5 | 3 | Negara atau organisasi penerbit |
| 6–14 | 9 | Nomor dokumen |
| 15 | 1 | Digit pemeriksa nomor dokumen |
| 16–30 | 15 | Data opsional |
Karakter pertama dari kode dokumen adalah A, C, atau I di bawah tata letak Bagian 5. Posisi opsional yang tidak digunakan diisi dengan <.
Untuk nomor dokumen yang lebih panjang dari sembilan karakter, posisi baris atas 15 adalah <. Karakter kelanjutan menggunakan posisi 16 hingga paling banyak 28; digit pemeriksa nomor tersebut segera mengikuti di posisi 17–29, dan pengisi mengikuti digit tersebut. Uraikan pengecualian ini sebelum memperlakukan posisi 16–30 sebagai data opsional.
TD1 baris 2: atribut pemegang dan pemeriksaan gabungan
| Posisi | Panjang | Bidang |
|---|---|---|
| 1–6 | 6 | Tanggal lahir dalam format YYMMDD |
| 7 | 1 | Digit pemeriksa tanggal lahir |
| 8 | 1 | Jenis kelamin: F, M, atau < |
| 9–14 | 6 | Tanggal kedaluwarsa dalam format YYMMDD |
| 15 | 1 | Digit pemeriksa tanggal kedaluwarsa |
| 16–18 | 3 | Kewarganegaraan |
| 19–29 | 11 | Data opsional |
| 30 | 1 | Digit pemeriksa gabungan |
Digit gabungan mencakup posisi baris atas 6–30, kemudian posisi baris tengah 1–7, 9–15, dan 19–29. Ini tidak termasuk nama pemegang pada baris 3. Gabungkan rentang-rentang ini secara berurutan.
TD1 baris 3: nama
Semua 30 posisi memegang nama. Dua pengisi, <<, memisahkan pengidentifikasi utama—biasanya nama keluarga atau nama keluarga—dari pengidentifikasi sekunder. Satu < memisahkan komponen dalam salah satu kelompok.
Contoh:
ERIKSSON<<ANNA<MARIA<<<<<<<<<<
Ini mewakili pengidentifikasi utama ERIKSSON dan pengidentifikasi sekunder ANNA MARIA, diikuti oleh padding. Gunakan kelompok pengidentifikasi penerbit daripada mengasumsikan bahwa setiap budaya menggunakan satu nama keluarga diikuti oleh nama pemberian.
TD2: dua baris 36 karakter
Doc 9303 Bagian 6 mendefinisikan tata letak TD2.
TD2 baris 1
| Posisi | Panjang | Bidang |
|---|---|---|
| 1–2 | 2 | Kode dokumen |
| 3–5 | 3 | Negara atau organisasi penerbit |
| 6–36 | 31 | Nama |
Seperti pada TD1, karakter kode dokumen pertama adalah A, C, atau I. Nama mengikuti struktur pengidentifikasi utama yang sama, <<, pengidentifikasi sekunder, tetapi panjang yang tersedia berbeda.
TD2 baris 2
| Posisi | Panjang | Bidang |
|---|---|---|
| 1–9 | 9 | Nomor dokumen |
| 10 | 1 | Digit pemeriksa nomor dokumen |
| 11–13 | 3 | Kewarganegaraan |
| 14–19 | 6 | Tanggal lahir |
| 20 | 1 | Digit pemeriksa tanggal lahir |
| 21 | 1 | Jenis kelamin |
| 22–27 | 6 | Tanggal kedaluwarsa |
| 28 | 1 | Digit pemeriksa tanggal kedaluwarsa |
| 29–35 | 7 | Data opsional |
| 36 | 1 | Digit pemeriksa gabungan |
Digit gabungan mencakup posisi 1–10, 14–20, dan 22–35. Posisi kewarganegaraan 11–13 dan posisi jenis kelamin 21 tidak termasuk. Pengecualian itu adalah sumber umum dari implementasi yang “hampir benar”.
Untuk nomor dokumen yang lebih panjang dari sembilan karakter, posisi 1–9 memegang sembilan karakter utamanya, posisi 10 adalah <, dan karakter yang tersisa dimulai di posisi 29–35. Digit pemeriksa nomor dokumen mengikuti karakter kelanjutan terakhir, kemudian pengisi. Terapkan pengecualian ini sebelum menafsirkan posisi 29–35 semata-mata sebagai data opsional.
TD3: dua baris 44 karakter
Doc 9303 Bagian 4 mendefinisikan paspor yang dapat dibaca mesin dan dokumen berukuran TD3 lainnya.
TD3 baris 1
| Posisi | Panjang | Bidang |
|---|---|---|
| 1–2 | 2 | Kode dokumen |
| 3–5 | 3 | Negara atau organisasi penerbit |
| 6–44 | 39 | Nama |
Untuk paspor yang dapat dibaca mesin, karakter kode dokumen pertama adalah P. Karakter kedua mengidentifikasi jenis paspor di bawah aturan Bagian 4 yang berlaku. Komponen nama menggunakan struktur berbasis pengisi yang sama dengan TD1 dan TD2.
TD3 baris 2
| Posisi | Panjang | Bidang |
|---|---|---|
| 1–9 | 9 | Nomor paspor |
| 10 | 1 | Digit pemeriksa nomor paspor |
| 11–13 | 3 | Kewarganegaraan |
| 14–19 | 6 | Tanggal lahir |
| 20 | 1 | Digit pemeriksa tanggal lahir |
| 21 | 1 | Jenis kelamin |
| 22–27 | 6 | Tanggal kedaluwarsa |
| 28 | 1 | Digit pemeriksa tanggal kedaluwarsa |
| 29–42 | 14 | Nomor pribadi atau data opsional |
| 43 | 1 | Digit pemeriksa bidang opsional |
| 44 | 1 | Digit pemeriksa gabungan |
Ketika bidang nomor pribadi opsional tidak digunakan dan diisi dengan <, Bagian 4 mengizinkan posisi pemeriksanya menjadi 0 atau < sesuai pilihan penerbit. Validator harus menerima varian yang diizinkan tanpa melemahkan pemeriksaan pada bidang yang diisi.
Digit gabungan terakhir mencakup posisi 1–10, 14–20, dan 22–43. Oleh karena itu, ini mencakup digit pemeriksa individual dalam rentang tersebut tetapi tidak termasuk kewarganegaraan dan jenis kelamin.
Cara kerja digit pemeriksa MRZ
Digit pemeriksa ICAO menggunakan perhitungan modulus-10 yang deterministik.
1. Ubah setiap karakter menjadi nilai
| Karakter | Nilai |
|---|---|
0–9 | 0–9 |
A–Z | 10–35 |
< | 0 |
2. Terapkan bobot berulang
Mulai dengan karakter pertama di bidang yang dilindungi, kalikan nilai dengan:
7, 3, 1, 7, 3, 1, ...
3. Jumlahkan dan ambil sisa
Tambahkan produk dan hitung jumlah modulo 10. Sisa, dari 0 hingga 9, adalah digit pemeriksa.
Untuk nomor paspor sampel L898902C3:
Karakter: L 8 9 8 9 0 2 C 3
Nilai: 21 8 9 8 9 0 2 12 3
Bobot: 7 3 1 7 3 1 7 3 1
Produk: 147 24 9 56 27 0 14 36 3
Jumlah: 316
316 mod 10 = 6
Digit pemeriksa yang diharapkan adalah 6.
Validasi digit individual dan digit gabungan. Kegagalan individual mengidentifikasi masalah tingkat bidang yang mungkin; kegagalan gabungan saja dapat menunjukkan kesalahan dalam data opsional, konstruksi rentang, atau karakter lain yang tercakup.
Digit pemeriksa menangkap banyak substitusi dan transposisi, tetapi penyerang dapat menghitung ulang. Digit tersebut menyediakan deteksi kesalahan, bukan keaslian terhadap pemalsuan.
Jebakan penguraian yang merusak sistem produksi
Kehilangan struktur lebar tetap
Memangkas setiap baris, mengkolaps <, atau menghapus jeda baris sebelum deteksi format akan menggeser bidang. Normalisasi spasi luar hanya setelah mengisolasi MRZ, kemudian memerlukan tepat 30, 36, atau 44 karakter per baris.
Memperlakukan output OCR sebagai kebenaran mutlak
OCR umumnya membingungkan O dengan 0, I dengan 1, dan B dengan 8. Jangan menerapkan penggantian global: huruf valid dalam nomor dokumen, dan digit valid dalam tanggal. Gunakan set karakter yang diizinkan oleh bidang, digit pemeriksa, VIZ, dan penangkapan lain untuk memandu pemulihan. Catat hasil OCR mentah dan koreksi apa pun.
Menghapus pengisi terlalu dini
< dapat berarti padding, pemisah, nilai yang tidak ditentukan, atau penggantian yang disyaratkan oleh skema. Uraikan posisi terlebih dahulu. Tafsirkan pengisi hanya dalam bidang yang dipilih.
Mengasumsikan MRZ mempertahankan nama yang tercetak
MRZ menghilangkan tanda baca, mentransliterasi karakter nasional, dan dapat memotong nama agar sesuai. << memisahkan kelompok pengidentifikasi; < dalam suatu kelompok memisahkan komponen. Simpan nama MRZ mentah dan nama visual atau otoritatif dokumen secara terpisah daripada menimpa secara diam-diam satu dengan yang lain.
Karakter alfabet di posisi nama terakhir yang tersedia menandakan kemungkinan pemotongan. Sebuah nama dapat mengisi bidang dengan tepat dan memicu sinyal yang sama, jadi perlakukan itu sebagai ketidakpastian.
Menyimpulkan abad yang salah
Tanggal lahir dan kedaluwarsa MRZ menggunakan tahun dua digit. Digit pemeriksa memvalidasi enam digit yang tercetak tetapi tidak memilih abad. Selesaikan tanggal lengkap dengan jenis dokumen, aturan kedaluwarsa, tanggal pengambilan, konteks pemegang, dan kebijakan eksplisit. Simpan nilai YYMMDD mentah sehingga perubahan aturan di kemudian hari tetap dapat diaudit.
Memperlakukan kode tiga huruf sebagai pencarian pustaka negara generik
Otoritas penerbit dan kewarganegaraan menggunakan set kode yang ditentukan oleh Doc 9303, yang mencakup organisasi dan nilai khusus serta Negara. Pemetaan khusus ISO yang ketat dapat menolak dokumen yang valid atau salah melabeli penerbit. Versi dan uji tabel kode ICAO yang digunakan oleh parser.
Mengabaikan opsi penerbit dan nomor dokumen yang panjang
Data opsional ditentukan oleh penerbit, dan aturan nomor dokumen yang panjang dapat memindahkan karakter kelanjutan dan digit pemeriksa. Jangan menetapkan makna universal untuk setiap bidang opsional atau menggabungkannya ke dalam nomor dokumen tanpa bukti spesifik format.
“Memperbaiki” digit pemeriksa yang gagal secara diam-diam
Digit yang gagal mungkin berasal dari silau, pemotongan, baris yang rusak, konvensi penerbit yang tidak didukung, atau manipulasi. Pertahankan pengambilan mentah, identifikasi bidang yang gagal, dan minta pengambilan ulang atau tinjauan yang terkontrol. Koreksi diam-diam menghapus bukti yang diperlukan untuk memahami kegagalan.
Data chip MRZ versus NFC
MRZ dan NFC saling melengkapi, bukan versi pemeriksaan yang bersaing.
| Properti | MRZ Tercetak | Chip ePaspor atau eID tanpa kontak |
|---|---|---|
| Pengambilan | Kamera, pemindai, atau transkripsi manual | Pembaca berkemampuan NFC |
| Data | Bidang identitas dan dokumen lebar tetap yang dipilih | Kelompok data terstruktur, berpotensi termasuk potret berkualitas lebih tinggi |
| Kontrol kesalahan | Digit pemeriksa Modulus-10 | Hash kelompok data dan tanda tangan digital saat diautentikasi |
| Keaslian | Tidak ditetapkan oleh MRZ saja | Autentikasi Pasif dapat menetapkan tanda tangan otoritas penerbit dan integritas data |
| Anti-kloning | Tidak ada | Autentikasi Aktif atau Autentikasi Chip dapat memberikan bukti saat didukung |
| Ketersediaan | Luas di seluruh dokumen perjalanan yang dapat dibaca mesin | Hanya dokumen dengan chip tanpa kontak yang didukung dan jalur perangkat yang dapat dibaca |
MRZ juga dapat berpartisipasi dalam akses chip. Panduan kontrol akses ePaspor ICAO menjelaskan bahwa Kontrol Akses Dasar memperoleh kunci akses dari data yang dibaca dari halaman data paspor, biasanya melalui MRZ. PACE adalah protokol kontrol akses yang lebih kuat yang ditemui dalam dokumen yang lebih baru. Kontrol akses melindungi komunikasi chip; ini tidak sama dengan mengautentikasi tanda tangan penerbit.
Setelah akses, Autentikasi Pasif memeriksa tanda tangan digital sehingga sistem inspeksi dapat menentukan apakah data chip disimpan oleh otoritas penerbit dan diubah kemudian. Mekanisme autentikasi aktif atau chip opsional dapat menambahkan bukti anti-kloning.
Oleh karena itu, alur dokumen yang kuat dapat:
- mengambil MRZ dan memvalidasi struktur serta digit pemeriksanya;
- menggunakan data akses yang diperlukan untuk membangun sesi NFC yang dilindungi;
- membaca kelompok data chip;
- melakukan Autentikasi Pasif terhadap sertifikat penerbit tepercaya;
- melakukan mekanisme anti-kloning ketika dokumen mendukungnya;
- membandingkan chip, MRZ, dan data dokumen yang terlihat;
- memverifikasi secara terpisah bahwa pemohon terkait dengan dokumen.
Membaca chip tanpa memvalidasi tanda tangannya tidak setara dengan mengautentikasinya. Demikian juga, chip yang valid tidak dengan sendirinya membuktikan bahwa pemohon saat ini adalah pemegang yang sah.
Daftar periksa implementasi dan keamanan
Sebelum mengirim parser MRZ:
- mendeteksi TD1, TD2, atau TD3 dari geometri baris yang tepat sebelum memotong bidang;
- mempertahankan gambar mentah, baris OCR mentah, baris yang dinormalisasi, dan versi parser;
- hanya menerima repertoar karakter MRZ yang diizinkan setelah normalisasi terkontrol;
- menguraikan berdasarkan posisi ICAO berbasis satu yang diterjemahkan dengan hati-hati ke dalam pengindeksan bahasa pemrograman;
- memvalidasi setiap digit bidang yang berlaku dan digit gabungan spesifik format;
- mendukung kasus bidang kosong yang diizinkan penerbit dan nomor dokumen yang panjang;
- mempertahankan tanggal mentah dan yang ditafsirkan, kode, nama, dan data opsional secara terpisah;
- memunculkan pemotongan dan inferensi abad sebagai ketidakpastian eksplisit;
- membandingkan hasil MRZ dengan data VIZ atau chip tanpa menimpa perbedaan secara diam-diam;
- menghindari menempatkan string MRZ di analitik, URL, laporan kerusakan, atau log rutin;
- mengenkripsi data sensitif yang disimpan dan menerapkan kebijakan akses, retensi, dan penghapusan;
- menguji sampel asli di seluruh penerbit, format, nama panjang, pengambilan yang rusak, dan kebingungan OCR;
- menguji panjang baris, pengisi, karakter tidak valid, dan kegagalan digit pemeriksa;
- memisahkan kebijakan penerimaan dokumen dari keberhasilan penguraian.
Parser menjawab, “Karakter apa yang dikodekan, dan apakah digit pemeriksa konsisten?” Autentikasi dokumen dan verifikasi pemegang memerlukan bukti tambahan.
Di mana Didit berperan
Didit mencantumkan Verifikasi ID dan Pembacaan NFC sebagai modul dokumen dan identitas terpisah. Harga yang diterbitkan adalah $0,15 masing-masing. Orkestrator Alur Kerja tercantum sebagai gratis.
Tautan produk tersebut tidak mengubah perbedaan kepercayaan dalam panduan ini: penguraian MRZ, autentikasi chip, kebijakan dokumen, dan keterkaitan pemegang tetap merupakan kesimpulan terpisah. Tarif modul saat ini tersedia di halaman harga.
Pertanyaan yang sering diajukan
Apa kepanjangan dari MRZ?
MRZ adalah singkatan dari Machine Readable Zone, area karakter dengan lebar tetap yang terstandardisasi yang tercetak pada dokumen perjalanan yang dapat dibaca mesin.
Di mana letak MRZ pada paspor?
Pada halaman data paspor TD3, itu adalah blok dua baris 44 karakter per baris, biasanya di bagian bawah halaman data.
Apa perbedaan antara TD1, TD2, dan TD3?
Mereka adalah ukuran dokumen ICAO dan tata letak MRZ. TD1 memiliki tiga baris 30 karakter, TD2 memiliki dua baris 36, dan TD3 memiliki dua baris 44.
Dapatkah digit pemeriksa MRZ membuktikan paspor itu asli?
Tidak. Ini mendeteksi banyak kesalahan pembacaan yang tidak disengaja. Ini bukan tanda tangan digital dan dapat dihitung ulang setelah data diubah.
Mengapa MRZ menggunakan karakter <?
Ini mengisi posisi yang tidak digunakan, menggantikan spasi atau tanda baca yang tidak didukung jika diperlukan, memisahkan komponen nama, dan dapat mewakili bidang yang tidak ditentukan dalam konteks yang ditentukan.
Apakah MRZ adalah data yang sama dengan chip NFC?
Tidak. Beberapa bidang identitas tumpang tindih, tetapi chip dapat menyimpan kelompok data terstruktur dan objek keamanan kriptografi. Autentikasi chip yang tepat dapat memberikan bukti bahwa data yang ditandatangani berasal dari otoritas penerbit dan tidak diubah.
Haruskah aplikasi mempercayai data MRZ yang dikoreksi OCR?
Hanya dengan bukti eksplisit. Koreksi harus peka bidang, didukung oleh digit pemeriksa atau sumber lain, dan disimpan bersama dengan hasil OCR mentah. Inkonsistensi yang tidak terselesaikan harus memicu pengambilan ulang atau tinjauan.
Referensi utama
- Seri ICAO Doc 9303: Dokumen Perjalanan yang Dapat Dibaca Mesin
- ICAO Doc 9303 Bagian 3: Spesifikasi Umum untuk semua MRTD
- ICAO Doc 9303 Bagian 4: Paspor yang Dapat Dibaca Mesin dan MRTD Ukuran TD3 lainnya
- ICAO Doc 9303 Bagian 5: Dokumen Perjalanan Resmi yang Dapat Dibaca Mesin Ukuran TD1
- ICAO Doc 9303 Bagian 6: Dokumen Perjalanan Resmi yang Dapat Dibaca Mesin Ukuran TD2
- Peta Jalan Validasi ePaspor ICAO: Akses ke chip ePaspor
- Peta Jalan Validasi ePaspor ICAO: Persyaratan sistem inspeksi
Kesimpulan
MRZ berhasil karena dibatasi: panjang baris tetap, posisi tetap, set karakter terbatas, dan digit pemeriksa yang dapat diprediksi. Batasan yang sama menuntut penguraian yang disiplin. Pertahankan struktur mentah tetap utuh, pilih tata letak TD yang benar, hitung rentang yang dilindungi secara tepat, dan pertahankan ketidakpastian seputar nama, tanggal, dan opsi spesifik penerbit.
Kemudian berhenti pada batas apa yang dibuktikan oleh bukti. MRZ yang valid adalah data interoperable yang berguna. Data chip NFC yang diautentikasi dapat menambahkan bukti dokumen kriptografi. Verifikasi pemegang dan keputusan bisnis akhir tetap merupakan langkah terpisah.
Artikel terkait
- Penyaringan PEP: Definisi, Lingkup, dan Pemantauan (ID-1)
- Panduan Kepatuhan: Uji Tuntas yang Ditingkatkan (EDD) (ID)
- Panduan Teknis Zona yang Dapat Dibaca Mesin (MRZ) (ID)
- Perangkat Lunak Verifikasi Usia: Panduan Pembeli (ID)
- Integrasi Verifikasi Identitas di Aplikasi Flutter (ID)
- Spesifikasi Pengidentifikasi Terdesentralisasi (DID) W3C (ID)