Membaca Kad CAC dengan XPressEntry - Adakah Kita Memerlukan FIPS 140-2?

Kami baru-baru ini ditanya sama ada kami Sistem pegangan tangan XPressEntry telah disahkan FIPS 140-2. Artikel ini menerangkan mengapa FIPS 140-2 tidak berkaitan langsung dengan pegangan tangan XPressEntry, apabila terikat dengan sistem kawalan akses fizikal (PACS). Sekiranya anda berminat dengan spesifikasi sebenar, berikut adalah pautan ke Standard FIPS 140-2.

Tajuk dokumen FIPS 140-2, Keperluan Keselamatan Untuk Modul Kriptografi, memberikan sebab utama mengapa ia tidak berlaku. Ini adalah perakuan untuk modul crypto, digunakan untuk pengiraan kriptografi dan pengesahan selamat. Ini mempunyai makna yang sangat spesifik ketika anda berinteraksi dengan cip melalui antara muka kenalan (ISO 7816) atau tanpa sentuh (ISO14443 A / B). Ini hanya berlaku apabila anda menggunakan kunci selamat yang disimpan dalam SAM (Security Access Module) untuk mengakses data selamat pada cip atau komunikasi ke cip tersebut. Ini bukan bagaimana PACS berfungsi dalam praktik.

Dokumen DOD ini, Panduan Pelaksanaan DoD untuk Peralihan PIV II SP 800-73 v1, menjelaskan salah satu fungsi asas kad CAC adalah untuk "membolehkan akses fizikal ke bangunan." Untuk mengaktifkannya, data pengenalan atau CHUID disediakan untuk dibaca terbuka (tidak disulitkan). Ini ditunjukkan dalam gambar di bawah.

Akses buffer CHUID
Akses baca CHUID dibuka melalui antara muka tanpa sentuh.

Sebilangan besar pemasangan kawalan akses fizikal DOD membuka pintu dan gerbang mereka menggunakan data terbuka ini. Harapannya ialah Kunci Pengesahan Kad PKI (CAK) dapat diperiksa secara kriptografi kepada pembaca, tetapi ini terbukti tidak praktikal. Apa yang dilaksanakan secara meluas dijelaskan pada ms. 41 standard FIPS 140.2 yang disebut sebelumnya:

Pra-pendaftaran Kad PIV dapat membantu mempercepat banyak langkah dalam mekanisme pengesahan PKI-CAK. Sekiranya sijil Pengesahan Kad kad diperoleh semasa proses prapendaftaran maka kad tersebut tidak perlu dibaca dari kad pada masa pengesahan ... maklumat status untuk sijil Pengesahan Kad dapat diperoleh dari proksi status cache daripada melakukan pengesahan sijil pada masa pengesahan.

Dengan menggunakan proksi cache ini, lencana PIV / CAC disahkan semasa pendaftaran menggunakan kunci pengesahannya. Proksi dikemas kini secara berkala dan sijil yang dicabut ditunjukkan kepada PACS. Produk seperti Modul Pengesahan pivCLASS HID (PAM) digunakan untuk tujuan ini. Produk seperti ini mestilah FIPS 140-2 kerana mengandungi modul crypto.

Dalam Lampiran C dokumen NIST 2018, Garis Panduan Penggunaan Kelayakan PIV Dalam Akses Kemudahan, NIST membincangkan beberapa alternatif untuk "penghentian mekanisme pengesahan CHUID." Walau bagaimanapun, cadangan ini tidak wajib, dan juga tidak sampai ke pasaran.

Sekarang kembali ke XPressEntry.

Beberapa kelayakan yang kami sokong, seperti Mifare, DESFire, SEOS, memerlukan kunci kriptografi untuk mengakses data yang selamat. Kad HF (13.56 MHz) lain mempunyai jumlah keselamatan yang berbeza-beza, dari tidak ada (akses CSN) hingga data yang sangat dienkripsi. Walau bagaimanapun, semua ini adalah proprietari standard dan tidak tertakluk kepada FIPS 140-2. Kad Proximity (LF / 125KHz) menghantar data mereka tanpa keselamatan sama sekali. Kad PIV / CAC kerajaan juga menyediakan data kawalan akses yang tidak disulitkan, hanya memerlukan membaca wadah aplikasi tertentu dalam memori lencana.

XPressEntry menggunakan data lencana terbuka ini (PIV / CAC / Prox / Other) hanya sebagai penunjuk untuk mencari pengguna untuk tujuan pengesahan. Di telefon bimbit kami, kami menyimpan data lencana di pangkalan data kami yang disulitkan. XPressEntry menghantar data melalui saluran yang disulitkan SSL. Kami memandang serius keselamatan sistem kami - cukup sehingga kami memilikinya penembusan sistem diuji. FIPS 140-2 secara khusus tidak berlaku kerana telefon bimbit kami bukan "modul kriptografi" dan kami juga tidak mempunyai pengesahan kriptografi data PIV / CAC PKI.