Delegated Credential TLS Membatasi Eksposur Kunci Front End

Deployment TLS berskala besar sering menghentikan koneksi pada mesin yang jauh dari sistem pengelola private key sertifikat. Menyalin kunci berumur panjang itu ke setiap front end memang menyederhanakan handshake, tetapi juga memperbesar jumlah sistem yang jika disusupi dapat mengekspos kunci sertifikat.

RFC 9345 mendefinisikan delegated credential untuk TLS dan DTLS 1.3. Pemegang sertifikat dapat menandatangani credential terpisah berumur pendek yang memuat public key lain. Endpoint yang kompatibel kemudian memakai delegated credential beserta private key-nya untuk autentikasi handshake, sementara private key sertifikat dapat tetap berada di lingkungan dengan akses lebih ketat.

Mekanisme ini sengaja lebih sempit daripada menerbitkan sertifikat X.509 lain. Otoritas handshake didelegasikan di dalam identitas yang sudah diotorisasi oleh end-entity certificate.

Sertifikat menandatangani credential yang dibatasi

Delegated credential memuat nilai validitas, public key, dan informasi algoritma tanda tangan. Pemegang private key end-entity certificate menandatangani struktur tersebut dalam konteks yang mengikatnya ke sertifikat.

Gambaran deployment sederhana:

Back end pemegang kunci sertifikat
        |
        | menandatangani
        v
Delegated credential + private key berumur pendek
        |
        | didistribusikan
        v
Front end TLS
        |
        | Certificate + delegated credential
        v
Klien TLS 1.3 yang kompatibel

Front end tidak memerlukan private key sertifikat untuk mengautentikasi handshake yang memakai delegated credential. Kompromi terhadap delegated private key karena itu tidak langsung memberi penyerang kunci yang diperlukan untuk membuat delegated credential tambahan.

Pemisahan tersebut merupakan batas keamanan utama. Signing key dapat tetap berada di balik kontrol akses yang lebih ketat sementara terminasi TLS operasional memakai kunci dengan masa guna lebih pendek.

Dukungan klien dinegosiasikan

Server tidak dapat mengirim delegated credential kepada sembarang klien TLS. Klien yang bersedia memakai mekanisme ini mengiklankan ekstensi delegated_credential dalam ClientHello, termasuk signature scheme yang diterima untuk autentikasi terdelegasi.

Ketika dukungan tersebut diiklankan, server dapat memasang delegated credential pada CertificateEntry milik end-entity certificate. Klien tetap memvalidasi certificate chain normal dan mencocokkan sertifikat dengan identitas peer yang diharapkan. Setelah itu klien memvalidasi delegated credential dan memakai public key-nya untuk tahap autentikasi handshake.

Jika klien tidak mengiklankan dukungan, server tidak boleh mengirim delegated credential. Sifat ini menjaga interoperabilitas dengan peer yang memakai autentikasi sertifikat biasa.

RFC 9345 membatasi delegated credential untuk TLS atau DTLS 1.3 dan versi sesudahnya. Negosiasi versi protokol yang lebih lama tidak membuat objek delegasi tersebut dapat digunakan.

Delegasi memerlukan otorisasi eksplisit pada sertifikat

End-entity certificate tidak otomatis boleh membuat delegated credential. RFC 9345 mendefinisikan ekstensi X.509 DelegationUsage untuk tujuan tersebut.

Peer tidak boleh menerima delegated credential kecuali end-entity certificate memiliki DelegationUsage dan KeyUsage digitalSignature. Opt-in ini mencegah sertifikat yang tidak diterbitkan untuk penggunaan delegasi diam-diam memperoleh peran tersebut.

Delegated credential juga terikat secara kriptografis ke end-entity certificate dalam encoding DER. Credential tidak dapat begitu saja dilepas lalu dipasangkan dengan sertifikat lain yang kebetulan memakai material kunci terkait.

Validitas pendek membatasi kunci delegasi yang dicuri

Delegated credential dirancang berumur pendek. Kecuali application profile menentukan batas lain, RFC 9345 menetapkan masa validitas maksimum tujuh hari. Masa berlaku delegated credential juga tidak boleh melewati masa berlaku delegation certificate.

Jika delegated private key pada front end dicuri, penyerang dapat memakai credential tersebut untuk menyamar sebagai peer pada koneksi TLS baru yang kompatibel sampai credential kedaluwarsa. Penyerang tidak dapat memakai delegated key itu untuk menerbitkan delegated credential baru.

Ada batas operasional penting: delegated credential tidak memiliki mekanisme revocation independen. Revocation terhadap sertifikat dasar dapat membatalkan rantai autentikasi yang lebih luas, tetapi tidak ada kanal revocation terpisah untuk satu delegated credential yang dicuri. Validitas pendek karena itu merupakan bagian dari model pembatasan dampak, bukan sekadar pengaturan praktis.

Distribusi tetap merupakan operasi berprivilege

Menjauhkan kunci sertifikat dari front end mengurangi satu kelas eksposur, tetapi distribusi delegated credential tetap membawa material sensitif. Front end menerima private key yang dapat mengautentikasi layanan selama masa berlaku credential.

Kanal distribusi memerlukan access control, confidentiality, integrity, rotation, dan inventory yang sebanding dengan otoritas tersebut. Delegated credential tidak seharusnya diberikan kepada operator yang tidak tepercaya hanya karena masa berlakunya pendek.

Back end yang menandatangani delegated credential bahkan lebih sensitif. Akses ke private key sertifikat atau signing interface yang tidak dibatasi dapat merusak pemisahan yang hendak dibangun. Penyimpanan berbasis hardware, signing API yang sempit, dan jalur penerbitan yang dapat diaudit dapat mengurangi eksposur sesuai threat model deployment.

Pilihan algoritma dapat dipisahkan dari penerbitan CA

Delegated credential juga mengurangi satu keterikatan operasional antara certificate authority dan endpoint TLS. Public key dan algoritma tanda tangan yang dipakai delegated credential dapat berbeda dari yang digunakan end-entity certificate, dengan tetap mengikuti aturan negosiasi dan validasi protokol.

Hal ini memungkinkan operator memakai handshake signature scheme yang didukung klien meski CA-nya tidak menerbitkan end-entity certificate dengan jenis kunci tersebut. CA tetap mengendalikan identitas sertifikat dan harus menerbitkan sertifikat yang mengizinkan delegasi; delegated credential tidak melewati validasi sertifikat.

Pemisahan ini berguna saat transisi kriptografi. Masa berlaku dan algoritma kunci autentikasi front end dapat dipisahkan dari siklus penerbitan CA tanpa membangun hierarki PKI kedua.

Perilaku clock memengaruhi credential berumur pendek

Validitas pendek membuat akurasi clock relevan secara operasional. Peer memvalidasi waktu kedaluwarsa delegated credential relatif terhadap delegation certificate dan waktu lokalnya. Clock skew yang besar dapat membuat credential yang dianggap masih berlaku oleh server ditolak oleh klien.

Sistem rotation memerlukan overlap dan margin distribusi yang cukup untuk mengakomodasi perbedaan clock yang wajar tanpa memperpanjang masa berlaku credential melampaui policy. Monitoring juga perlu membedakan kegagalan validasi delegated credential dari kegagalan certificate chain biasa agar credential kedaluwarsa atau salah distribusi tidak terlihat sebagai outage TLS generik.

Delegated credential tidak menghapus kebutuhan untuk melindungi kunci sertifikat, memvalidasi certificate chain, atau mengamankan host terminasi TLS. Mekanisme ini mengubah lokasi tempat otoritas berumur panjang harus berada. Dengan opt-in sertifikat yang eksplisit, validitas pendek, distribusi terkontrol, dan peer TLS 1.3 yang kompatibel, kompromi front end dapat mengekspos kunci autentikasi sementara tanpa otomatis mengekspos private key sertifikat yang menjadi dasar delegasi berikutnya.