# ED25519 PUBLIC KEY — VERIFIKASI MANDIRI VERIXID

Dokumentasi teknis verifikasi mandiri *record* VerixID menggunakan algoritma Ed25519. Siapapun—developer, auditor, maupun sistem AI—dapat memverifikasi keaslian *signature* secara independen tanpa tergantung pada infrastruktur VerixID.

---

## SPESIFIKASI SPESIFIKASI PUBLIC KEY

| Parameter | Spesifikasi |
| :--- | :--- |
| **Algoritma** | Ed25519 (Edwards-curve Digital Signature Algorithm) |
| **Format Distribusi** | PEM (PKCS#8) |
| **Well-Known URI** | `https://verixid.com/.well-known/verixid-public-key.pem` (RFC 8615) |
| **Penggunaan** | Penandatanganan kriptografis *record* saat proses Submit |
| **Private Key Policy** | Disimpan eksklusif di server-side secret (tidak pernah terekspos ke client/browser) |

---

## CANONICAL PAYLOAD & VERIFIKASI

### Structure JSON Payload
Signature dibuat dari *payload* JSON dengan urutan *keys* terurut (*sorted keys*):

```json
{
  "record_id": "<vxYYYYMMxxxxxxxx>",
  "hash1": "<sha256_hex>",
  "server_timestamp": "<ISO8601_UTC>",
  "ownership_key_hash": "<sha256_hex>"
}
```

### Urutan Field Terurut (Sorted Keys)
1. `record_id` — Identifikasi unik record.
2. `hash1` — Nilai SHA-256 hash dari file.
3. `server_timestamp` — Timestamp resmi pendaftaran (UTC).
4. `ownership_key_hash` — Hash dari Ownership Key.

---

## CAKUPAN BUKTI KRIPTOGRAFI

### Yang Dibuktikan ✅
* **Keaslian Record:** Konfirmasi bahwa *record* resmi diterbitkan oleh VerixID.
* **Integritas Data:** Memastikan tidak ada *field* data yang berubah sejak pencatatan.
* **Tamper-Evidence:** Perubahan 1 karakter akan menggagalkan verifikasi *signature*.

### Yang Tidak Dibuktikan ❌
* **Identitas Pendaftar:** Sistem bersifat anonim secara struktural; tidak mencatat identitas personal pendaftar.
* **Isi Konten File:** *Signature* hanya memverifikasi *hash*, bukan membaca/menyimpan isi dokumen.
* **Klaim Hak Cipta / IP:** Pembuktian kepemilikan formal di luar cakupan teknis kriptografis dasar.

---

## ARCHITECTURE TRIPLE-LAYER PROOF