Kunci pribadi pengguna hanya digunakan untuk auth?

8

Saya punya pertanyaan sederhana tentang protokol OpenVPN. Misalkan kita memiliki dua pengguna yang berbeda, dengan kunci yang berbeda untuk server yang sama, dan kedua kunci 1024bits. Jika dua pengguna ini membuat permintaan yang persis sama, dan seseorang mengendus data di server, orang ini (sniffer) akan melihat data yang sama untuk pengguna atau data yang berbeda? Pertanyaannya adalah untuk mengetahui apakah kunci pribadi pengguna mengganggu kriptografi SETELAH otentikasi atau hanya digunakan dalam waktu otentikasi. Terima kasih.

pengguna2864778
sumber
Dengan enkripsi yang secara semantik aman, data yang dienkripsi akan berbeda walaupun kunci dan datanya sama. Jadi pertanyaan Anda dapat dinyatakan kembali dengan lebih tepat sebagai "Apakah protokol OpenVPN menggunakan enkripsi aman secara semantik?". Juga, dengan beberapa mode enkripsi, data apa pun yang Anda transfer akan memengaruhi enkripsi data yang dikirim nanti. Jadi, bahkan jika kunci hanya digunakan pada awalnya, itu masih akan mempengaruhi bagaimana data yang dienkripsi terlihat di seluruh koneksi.
kasperd

Jawaban:

10

Jika dua pengguna ini membuat permintaan yang persis sama, dan seseorang mengendus data di server, orang ini (sniffer) akan melihat data yang sama untuk pengguna atau data yang berbeda?

Data berbeda.

Pertanyaannya adalah untuk mengetahui apakah kunci pribadi pengguna mengganggu kriptografi SETELAH otentikasi atau hanya digunakan dalam waktu otentikasi.

Kunci publik / pribadi hanya digunakan selama otentikasi / negosiasi kunci.


OpenVPN dapat beroperasi dalam salah satu dari dua mode , kunci yang dibagikan sebelumnya atau menggunakan TLS dengan sertifikat. Kunci yang dibagikan sebelumnya bersifat statis, konstan, tetapi Anda bertanya tentang mode sertifikat.

Saya tidak akan membahas terlalu banyak detail, dan Anda dapat mencari sendiri TLS, tetapi pada dasarnya TLS menggunakan sertifikat (dan kunci pribadi) untuk otentikasi dan selama fase negosiasi kunci. Ini menghasilkan kunci enkripsi simetris (misalnya BlowFish, AES, dll.) Dan menggunakan kriptografi kunci publik untuk membagikan kunci itu dengan aman.

Pesan aktual kemudian dienkripsi dengan enkripsi simetris. Setiap sesi memiliki kunci enkripsi independennya sendiri (jadi jika Anda memutuskan dan menyambung kembali Anda benar-benar berakhir dengan kunci yang berbeda). Demikian juga, setiap pengguna akan memiliki sesi yang berbeda dan karena itu kunci yang berbeda.

Ada dua alasan untuk melakukan ini. Enkripsi simetris jauh lebih cepat daripada enkripsi asimetris, sehingga lebih disukai untuk throughput yang tinggi (kesulitannya adalah berbagi kunci, yang diselesaikan oleh fase negosiasi). Juga, dengan menghasilkan kunci baru setiap kali, lebih sulit bagi kunci yang dikompromikan untuk mengungkapkan data sesi lain ( FS ).

Bob
sumber
Ah, begitulah - jawaban bahwa saya sedang dalam proses penulisan, hanya diungkapkan lebih jelas. +1 dari saya.
MadHatter
+1 dan diterima sebagai jawaban. Jawaban Anda sangat berharga, dan menjawab pertanyaan saya. Terima kasih
user2864778
1

Setiap klien akan melakukan crypto datanya dengan kunci yang dinegosiasikan antara klien dan server, sehingga data yang diterima pada gateway VPN akan berbeda untuk kedua pengguna.

denisvm
sumber
2
Bagian pertama tidak benar. OpenVPN menggunakan TLS , yang tidak menggunakan kriptografi kunci publik untuk mengenkripsi pesan.
Bob