Menggunakan hybrid post-quantum TLS dengan AWS KMS - AWS Key Management Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menggunakan hybrid post-quantum TLS dengan AWS KMS

AWS Key Management Service (AWS KMS) mendukung opsi pertukaran kunci pasca-kuantum hibrida untuk protokol enkripsi jaringan Transport Layer Security (TLS). Anda dapat menggunakan TLS opsi ini saat Anda terhubung ke AWS KMS API titik akhir. Kami menawarkan fitur ini sebelum algoritma pasca-kuantum distandarisasi sehingga Anda dapat mulai menguji efek protokol pertukaran kunci ini pada panggilan. AWS KMS Fitur pertukaran kunci pasca-kuantum hibrida opsional ini setidaknya seaman TLS enkripsi yang kami gunakan saat ini dan cenderung memberikan manfaat keamanan jangka panjang tambahan. Namun, fitur-fitur tersebut memengaruhi latensi dan throughput dibandingkan dengan protokol pertukaran kunci klasik yang digunakan saat ini.

Data yang Anda kirim ke AWS Key Management Service (AWS KMS) dilindungi saat transit oleh enkripsi yang disediakan oleh koneksi Transport Layer Security (TLS). Suite cipher klasik yang AWS KMS mendukung TLS sesi membuat serangan brute force pada mekanisme pertukaran kunci tidak layak dengan teknologi saat ini. Namun, jika komputasi kuantum skala besar menjadi praktis di masa depan, rangkaian sandi klasik yang digunakan dalam mekanisme pertukaran TLS kunci akan rentan terhadap serangan ini. Jika Anda mengembangkan aplikasi yang mengandalkan kerahasiaan jangka panjang data yang melewati TLS koneksi, Anda harus mempertimbangkan rencana untuk bermigrasi ke kriptografi pasca-kuantum sebelum komputer kuantum skala besar tersedia untuk digunakan. AWS sedang bekerja untuk mempersiapkan masa depan ini, dan kami ingin Anda juga dipersiapkan dengan baik.

Untuk melindungi data yang dienkripsi hari ini terhadap potensi serangan future, AWS berpartisipasi dengan komunitas kriptografi dalam pengembangan algoritma tahan kuantum atau pasca-kuantum. Kami telah menerapkan suite cipher pertukaran kunci pasca-kuantum hibrida AWS KMS yang menggabungkan elemen klasik dan pasca-kuantum untuk memastikan bahwa TLS koneksi Anda setidaknya sekuat dengan suite cipher klasik.

Suite sandi hibrida ini tersedia untuk digunakan pada beban kerja produksi Anda di sebagian besar. Wilayah AWS Namun, karena karakteristik kinerja dan persyaratan bandwidth suite cipher hybrid berbeda dari mekanisme pertukaran kunci klasik, kami sarankan Anda mengujinya pada AWS KMS API panggilan Anda dalam kondisi yang berbeda.

Umpan Balik

Seperti biasa, kami menyambut baik umpan balik dan partisipasi Anda dalam repositori sumber terbuka kami. Kami terutama ingin mendengar bagaimana infrastruktur Anda berinteraksi dengan varian TLS lalu lintas baru ini.

  • Untuk memberikan umpan balik tentang topik ini, gunakan tautan Umpan Balik di sudut kanan atas halaman ini.

  • Kami sedang mengembangkan suite cipher hybrid ini di open source di s2n-tlsrepositori di. GitHub Untuk memberikan umpan balik tentang kegunaan rangkaian sandi, atau berbagi kondisi atau hasil pengujian baru, buat masalah di repositori. s2n-tls

  • Kami sedang menulis contoh kode untuk menggunakan hybrid post-quantum TLS dengan AWS KMS di aws-kms-pq-tls-example GitHubrepositori. Untuk mengajukan pertanyaan atau berbagi ide tentang mengonfigurasi HTTP klien atau AWS KMS klien Anda untuk menggunakan rangkaian sandi hibrida, buat masalah di repositori. aws-kms-pq-tls-example

Didukung Wilayah AWS

Post-quantum TLS for AWS KMS tersedia di semua Wilayah AWS yang AWS KMS mendukung kecuali China (Beijing) dan China (Ningxia).

catatan

AWS KMS tidak mendukung pasca-kuantum hibrida TLS untuk FIPS titik akhir di. AWS GovCloud (US)

Untuk daftar AWS KMS titik akhir untuk masing-masing Wilayah AWS, lihat AWS Key Management Service titik akhir dan kuota di. Referensi Umum Amazon Web Services Untuk informasi tentang FIPS titik akhir, lihat FIPStitik akhir di. Referensi Umum Amazon Web Services

Tentang pertukaran kunci pasca-kuantum hibrida di TLS

AWS KMS mendukung suite cipher pertukaran kunci pasca-kuantum hibrida. Anda dapat menggunakan AWS SDK for Java 2.x dan AWS Common Runtime pada sistem Linux untuk mengkonfigurasi HTTP klien yang menggunakan cipher suite ini. Kemudian, setiap kali Anda terhubung ke AWS KMS titik akhir dengan HTTP klien Anda, suite cipher hybrid digunakan.

HTTPKlien ini menggunakan s2n-tls, yang merupakan implementasi open source dari TLS protokol. Suite cipher hybrid yang s2n-tls menggunakan diimplementasikan hanya untuk pertukaran kunci, bukan untuk enkripsi data langsung. Selama pertukaran kunci, klien dan server menghitung kunci yang akan mereka gunakan untuk mengenkripsi dan mendekripsi data pada kabel.

Algoritma yang s2n-tls digunakan adalah hibrida yang menggabungkan Elliptic Curve Diffie-Hellman (ECDH), algoritma pertukaran kunci klasik yang digunakan saat ini, dengan TLS Kyber, enkripsi kunci publik dan algoritma pendirian kunci yang telah ditetapkan oleh Institut Nasional untuk Standar dan Teknologi () sebagai algoritma kesepakatan kunci pasca-kuantum standar pertama. NIST Hibrida ini menggunakan masing-masing algoritma secara independen untuk menghasilkan kunci. Selanjutnya menggabungkan dua kunci kriptografi. Dengans2n-tls, Anda dapat mengonfigurasi HTTP klien untuk memilih pasca-kuantumTLS, yang menempatkan ECDH dengan yang Kyber pertama dalam daftar preferensi. Algoritme pertukaran kunci klasik disertakan dalam daftar preferensi untuk memastikan kompatibilitasnya, namun lebih rendah dalam urutan preferensi.

Jika penelitian yang sedang berlangsung mengungkapkan bahwa Kyber algoritme tidak memiliki kekuatan pasca-kuantum yang diantisipasi, kunci hibrida setidaknya masih sekuat ECDH kunci tunggal yang saat ini digunakan. Sampai penelitian tentang algoritma pasca-kuantum selesai, kami merekomendasikan menggunakan algoritma hibrida, daripada menggunakan algoritma pasca-kuantum saja.

Menggunakan hybrid post-quantum TLS dengan AWS KMS

Anda dapat menggunakan hybrid post-quantum TLS untuk AWS KMS panggilan Anda. Saat menyiapkan lingkungan pengujian HTTP klien Anda, perhatikan informasi berikut:

Enkripsi dalam Transit

Suite cipher hybrid di hanya s2n-tls digunakan untuk enkripsi dalam perjalanan. Mereka melindungi data Anda saat bepergian dari klien Anda ke AWS KMS titik akhir. AWS KMS tidak menggunakan cipher suite ini untuk mengenkripsi data di bawah. AWS KMS keys

Sebaliknya, ketika AWS KMS mengenkripsi data Anda di bawah KMS kunci, ia menggunakan kriptografi simetris dengan kunci 256-bit dan Standar Enkripsi Lanjutan dalam algoritma Galois Counter Mode (AES-GCM), yang sudah tahan kuantum. Theoretical future, serangan komputasi kuantum skala besar pada ciphertext yang dibuat di bawah 256-bit AES - GCM kunci mengurangi keamanan efektif kunci menjadi 128 bit. Tingkat keamanan ini cukup untuk membuat serangan brute force pada AWS KMS ciphertext tidak layak.

Sistem yang Didukung

Penggunaan suite cipher hybrid di saat s2n-tls ini hanya didukung pada sistem Linux. Selain itu, cipher suite ini didukung hanya dalam SDKs mendukung AWS Common Runtime, seperti. AWS SDK for Java 2.x Sebagai contoh, lihat Cara mengkonfigurasi hybrid post-quantum TLS.

AWS KMS Titik akhir

Saat menggunakan suite cipher hybrid, gunakan endpoint standar AWS KMS . Suite sandi hibrida di s2n-tls tidak kompatibel dengan FIPS140-2 titik akhir yang divalidasi untuk. AWS KMS

Saat Anda mengonfigurasi HTTP klien untuk memilih TLS koneksi pasca-kuantums2n-tls, sandi pasca-kuantum adalah yang pertama dalam daftar preferensi sandi. Namun, daftar preferensi ini mencakup cipher klasik dan non-hibrida yang lebih rendah dalam urutan preferensi untuk kompatibilitas. Saat Anda mengonfigurasi HTTP klien untuk memilih pasca-kuantum TLS dengan titik akhir yang divalidasi AWS KMS FIPS 140-2, s2n-tls negosiasikan cipher pertukaran kunci klasik non-hibrida.

Untuk daftar AWS KMS titik akhir untuk masing-masing Wilayah AWS, lihat AWS Key Management Service titik akhir dan kuota di. Referensi Umum Amazon Web Services Untuk informasi tentang FIPS titik akhir, lihat FIPStitik akhir di. Referensi Umum Amazon Web Services

Kinerja yang Diharapkan

Pengujian benchmark awal kami menunjukkan bahwa suite cipher hybrid lebih lambat daripada suite cipher klasikTLS. s2n-tls Efeknya bervariasi berdasarkan profil jaringan, CPU kecepatan, jumlah inti, dan tingkat panggilan Anda. Untuk hasil tes kinerja, lihat Cara menyetel TLS kriptografi pasca-kuantum hibrida dengan Kyber.

Cara mengkonfigurasi hybrid post-quantum TLS

Dalam prosedur ini, tambahkan dependensi Maven untuk AWS Common Runtime Client. HTTP Selanjutnya, konfigurasikan HTTP klien yang lebih suka pasca-kuantumTLS. Kemudian, buat AWS KMS klien yang menggunakan HTTP klien.

Untuk melihat contoh kerja lengkap konfigurasi dan menggunakan hybrid post-quantum TLS with AWS KMS, lihat repositori. aws-kms-pq-tls-example

catatan

HTTPKlien Runtime AWS Umum, yang telah tersedia sebagai pratinjau, tersedia secara umum pada Februari 2023. Dalam rilis itu, tlsCipherPreference kelas dan parameter tlsCipherPreference() metode digantikan oleh parameter postQuantumTlsEnabled() metode. Jika Anda menggunakan contoh ini selama pratinjau, Anda perlu memperbarui kode Anda.

  1. Tambahkan klien AWS Common Runtime ke dependensi Maven Anda. Sebaiknya gunakan versi terbaru yang tersedia.

    Misalnya, pernyataan ini menambahkan versi 2.20.0 klien AWS Common Runtime ke dependensi Maven Anda.

    <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>aws-crt-client</artifactId> <version>2.20.0</version> </dependency>
  2. Untuk mengaktifkan suite sandi pasca-kuantum hibrida, tambahkan AWS SDK for Java 2.x ke proyek Anda dan inisialisasi. Kemudian aktifkan suite sandi pasca-kuantum hibrida pada HTTP klien Anda seperti yang ditunjukkan pada contoh berikut.

    Kode ini menggunakan parameter postQuantumTlsEnabled() metode untuk mengonfigurasi HTTPklien runtime AWS umum yang lebih menyukai rangkaian sandi pasca-kuantum hibrida yang direkomendasikan, dengan Kyber. ECDH Kemudian menggunakan HTTP klien yang dikonfigurasi untuk membangun instance klien AWS KMS asinkron,. KmsAsyncClient Setelah kode ini selesai, semua AWS KMS APIpermintaan pada KmsAsyncClient instance menggunakan hybrid TLS post-quantum.

    // Configure HTTP client SdkAsyncHttpClient awsCrtHttpClient = AwsCrtAsyncHttpClient.builder() .postQuantumTlsEnabled(true) .build(); // Create the AWS KMS async client KmsAsyncClient kmsAsync = KmsAsyncClient.builder() .httpClient(awsCrtHttpClient) .build();
  3. Uji AWS KMS panggilan Anda dengan hybrid post-quantumTLS.

    Saat Anda memanggil AWS KMS API operasi pada AWS KMS klien yang dikonfigurasi, panggilan Anda ditransmisikan ke AWS KMS titik akhir menggunakan hybrid TLS post-quantum. Untuk menguji konfigurasi Anda, panggil AWS KMS API, sepertiListKeys.

    ListKeysReponse keys = kmsAsync.listKeys().get();

Menguji hibrida pasca-kuantum TLS dengan AWS KMS

Pertimbangkan untuk menjalankan pengujian berikut dengan suite cipher hybrid pada aplikasi Anda yang memanggil. AWS KMS

  • Jalankan uji beban dan tolok ukur. Cipher suite hibrida melakukan secara berbeda dari algoritme pertukaran kunci tradisional. Anda mungkin perlu menyesuaikan batas waktu koneksi untuk memungkinkan waktu handshake yang lebih lama. Jika Anda menjalankan di dalam suatu AWS Lambda fungsi, perpanjang pengaturan batas waktu eksekusi.

  • Coba hubungkan dari lokasi yang berbeda. Bergantung pada jalur jaringan yang diambil permintaan Anda, Anda mungkin menemukan bahwa host perantara, proxy, atau firewall dengan deep packet inspection (DPI) memblokir permintaan tersebut. Ini mungkin hasil dari penggunaan cipher suite baru di ClientHellobagian TLS jabat tangan, atau dari pesan pertukaran kunci yang lebih besar. Jika Anda mengalami masalah dalam menyelesaikan masalah ini, bekerjalah dengan tim keamanan atau administrator TI Anda untuk memperbarui konfigurasi yang relevan dan membuka blokir rangkaian sandi baruTLS.

Pelajari lebih lanjut tentang pasca-kuantum TLS di AWS KMS

Untuk informasi lebih lanjut tentang penggunaan pasca-kuantum hibrida TLS di AWS KMS, lihat sumber daya berikut.