Red Hat dan Google memperkenalkan Sigstore, sebuah layanan untuk verifikasi kode kriptografi

Red Hat dan Google, bersama dengan Universitas Purdue, mendirikan proyek Sigstore, yang bertujuan untuk menciptakan alat dan layanan untuk memverifikasi perangkat lunak menggunakan tanda tangan digital dan memelihara log publik untuk mengonfirmasi keaslian (log transparansi). Proyek ini akan dikembangkan di bawah naungan organisasi nirlaba Linux Foundation.

Proyek yang diusulkan akan meningkatkan keamanan saluran distribusi perangkat lunak dan melindungi terhadap serangan yang bertujuan menggantikan komponen dan ketergantungan perangkat lunak (rantai pasokan). Salah satu masalah keamanan utama dalam perangkat lunak sumber terbuka adalah sulitnya memverifikasi sumber program dan memverifikasi proses pembangunan. Misalnya, sebagian besar proyek menggunakan hash untuk memverifikasi integritas rilis, namun seringkali informasi yang diperlukan untuk otentikasi disimpan pada sistem yang tidak dilindungi dan dalam repositori kode bersama, akibatnya penyerang dapat menyusupi file yang diperlukan untuk verifikasi dan memperkenalkan perubahan berbahaya. tanpa menimbulkan kecurigaan.

Hanya sebagian kecil proyek yang menggunakan tanda tangan digital saat mendistribusikan rilis karena kesulitan dalam mengelola kunci, mendistribusikan kunci publik, dan mencabut kunci yang disusupi. Agar verifikasi masuk akal, perlu juga mengatur proses pendistribusian kunci publik dan checksum yang andal dan aman. Bahkan dengan tanda tangan digital, banyak pengguna mengabaikan verifikasi karena mereka perlu meluangkan waktu mempelajari proses verifikasi dan memahami kunci mana yang dapat dipercaya.

Sigstore disebut-sebut setara dengan Let's Encrypt untuk kode, menyediakan sertifikat untuk menandatangani kode secara digital dan alat untuk mengotomatiskan verifikasi. Dengan Sigstore, pengembang dapat menandatangani artefak terkait aplikasi secara digital seperti file rilis, gambar container, manifes, dan executable. Fitur khusus Sigstore adalah materi yang digunakan untuk penandatanganan tercermin dalam log publik anti-rusak yang dapat digunakan untuk verifikasi dan audit.

Alih-alih kunci permanen, Sigstore menggunakan kunci sementara yang berumur pendek, yang dihasilkan berdasarkan kredensial yang dikonfirmasi oleh penyedia OpenID Connect (pada saat membuat kunci untuk tanda tangan digital, pengembang mengidentifikasi dirinya melalui penyedia OpenID yang ditautkan ke email). Keaslian kunci diverifikasi menggunakan log publik terpusat, yang memungkinkan untuk memverifikasi bahwa pembuat tanda tangan adalah persis seperti yang dia klaim dan tanda tangan tersebut dibentuk oleh peserta yang sama yang bertanggung jawab atas rilis sebelumnya.

Sigstore menyediakan layanan siap pakai yang sudah dapat Anda gunakan, dan seperangkat alat yang memungkinkan Anda menerapkan layanan serupa pada peralatan Anda sendiri. Layanan ini gratis untuk semua pengembang dan penyedia perangkat lunak, dan diterapkan pada platform netral - Linux Foundation. Semua komponen layanan ini bersifat open source, ditulis dalam Go dan didistribusikan di bawah lisensi Apache 2.0.

Di antara komponen yang dikembangkan, kami dapat mencatat:

  • Rekor adalah implementasi log untuk menyimpan metadata yang ditandatangani secara digital yang mencerminkan informasi tentang proyek. Untuk memastikan integritas dan melindungi terhadap korupsi data setelah kejadian tersebut, struktur seperti pohon β€œPohon Merkle” digunakan, di mana setiap cabang memverifikasi semua cabang dan node yang mendasarinya, berkat hashing gabungan (seperti pohon). Memiliki hash akhir, pengguna dapat memverifikasi kebenaran seluruh riwayat operasi, serta kebenaran status database sebelumnya (hash verifikasi root dari status database baru dihitung dengan mempertimbangkan status masa lalu ). Untuk memverifikasi dan menambahkan catatan baru, Restful API disediakan, serta antarmuka cli.
  • Fulcio (SigStore WebPKI) adalah sistem untuk membuat otoritas sertifikasi (Root-CA) yang menerbitkan sertifikat berumur pendek berdasarkan email yang diautentikasi melalui OpenID Connect. Masa pakai sertifikat adalah 20 menit, di mana pengembang harus memiliki waktu untuk membuat tanda tangan digital (jika sertifikat kemudian jatuh ke tangan penyerang, maka sertifikat tersebut sudah kedaluwarsa).
  • Π‘osign (Penandatanganan Kontainer) adalah perangkat untuk menghasilkan tanda tangan untuk kontainer, memverifikasi tanda tangan dan menempatkan kontainer yang ditandatangani di repositori yang kompatibel dengan OCI (Open Container Initiative).

Sumber: opennet.ru

Tambah komentar