Keamanan Lapisan Transportasi

Transport Layer Security (TLS), dan pendahulunya yang sudah usang, Secure Sockets Layer (SSL),[1] adalah protokol kriptografi yang dirancang untuk memberikan keamanan komunikasi melalui jaringan komputer.[2] Beberapa versi protokol menemukan penggunaan luas dalam aplikasi seperti browsing web, email, pesan instan, dan voice over IP (VoIP). Situs web dapat menggunakan TLS untuk mengamankan semua komunikasi antara server dan browser web mereka.

Protokol TLS bertujuan terutama untuk memberikan privasi dan integritas data antara dua atau lebih aplikasi komputer yang berkomunikasi.[2] Ketika diamankan oleh TLS, koneksi antara klien (misalnya, browser web) dan server (misalnya, wiki-indonesia.club) harus memiliki satu atau beberapa properti berikut:

  • Koneksi bersifat pribadi (atau aman) karena kriptografi simetris digunakan untuk mengenkripsi data yang dikirimkan. Kunci untuk enkripsi simetris ini dihasilkan secara unik untuk setiap koneksi dan didasarkan pada rahasia bersama yang dinegosiasikan pada awal sesi. Server dan klien menegosiasikan perincian algoritma enkripsi dan kunci kriptografi mana yang digunakan sebelum byte pertama data ditransmisikan. Negosiasi rahasia bersama aman (rahasia yang dinegosiasikan tidak tersedia untuk penyadap dan tidak dapat diperoleh, bahkan oleh penyerang yang menempatkan diri di tengah-tengah koneksi) dan dapat diandalkan (tidak ada penyerang dapat memodifikasi komunikasi selama negosiasi tanpa menjadi terdeteksi).
  • Identitas pihak yang berkomunikasi dapat diautentikasi menggunakan kunci kriptografi publik. Otentikasi ini dapat dibuat opsional, tetapi umumnya diperlukan untuk setidaknya salah satu pihak (biasanya server).
  • Koneksi ini dapat diandalkan karena setiap pesan yang dikirim mencakup pemeriksaan integritas pesan menggunakan kode otentikasi pesan untuk mencegah kehilangan atau perubahan data yang tidak terdeteksi selama transmisi.[2]

Gambaran

Protokol ini menyediakan authentikasi akhir dan privasi komunikasi di Internet menggunakan cryptography. Dalam penggunaan umumnya, hanya server yang diauthentikasi (dalam hal ini, memiliki identitas yang jelas) selama dari sisi client tetap tidak terauthentikasi. Authentikasi dari kedua sisi (mutual authentikasi) memerlukan penyebaran PKI pada client-nya. Protocol ini mengizinkan aplikasi dari client atau server untuk berkomunikasi dengan didesain untuk mencegah eavesdropping, [[tampering]] dan message forgery.

Baik TLS dan SSL melibatkan beberapa langkah dasar:

Sejarah dan pengembangan

Transport Layer Security Protocol (TLS) bersama dengan beberapa platform keamanan jaringan dasar lainnya, dikembangkan melalui inisiatif bersama yang dimulai pada Agustus 1986, di antara Badan Keamanan Nasional, Biro Standar Nasional, Badan Komunikasi Pertahanan, dan dua belas komunikasi dan komputer perusahaan yang memulai proyek khusus yang disebut Secure Data Network System (SDNS). Program ini dijelaskan pada bulan September 1987 di Konferensi Keamanan Komputer Nasional ke-10 dalam serangkaian makalah yang diterbitkan.

Program penelitian inovatif ini berfokus pada perancangan generasi berikutnya dari jaringan komunikasi komputer yang aman dan spesifikasi produk yang akan diimplementasikan untuk aplikasi pada jaringan publik dan swasta. Itu dimaksudkan untuk melengkapi standar internet OSI baru yang berkembang pesat baik dalam profil GOSIP pemerintah AS dan dalam upaya internet ITU-ISO JTC1 yang besar secara internasional. Awalnya dikenal sebagai protokol SP4, namanya diganti TLS dan kemudian diterbitkan pada tahun 1995 sebagai standar internasional ITU-T X.274 | ISO / IEC 10736: 1995.

Penerapan

SSL (Secure Socket Layer) merupakan file digital berupa data yang berfungsi melakukan enkripsi pada situs website. Secara visual SSL menampilkan url situs website dengan HTTPS atau adanya gembok hijau pada sisi kiri alamat url situs website.

Fungsi Sertifikat SSL ini menghindarkan situs website terkena serangan pihak ketiga yang tidak bertanggung jawab dan menyalahgunakan data. Berjalannya fungsi sertifikat SSL menggunakan kriptografi dua kunci yakni public key dan private key.

Protocol SSL dan TLS berjalan pada layer di bawah application protocol seperti HTTP, SMTP and NNTP dan di atas layer TCP transport protocol, yang juga merupakan bagian dari TCP/IP protocol. Selama SSL dan TLS dapat menambahkan keamanan ke protocol apa saja yang menggunakan TCP, keduanya terdapat paling sering pada metode akses HTTPS. HTTPS menyediakan keamanan web-pages untuk aplikasi seperti pada Electronic commerce. Protocol SSL dan TLS menggunakan cryptography public-key dan sertifikat publik key untuk memastikan identitas dari pihak yang dimaksud. Sejalan dengan peningkatan jumlah client dan server yang dapat mendukung TLS atau SSL alami, dan beberapa masih belum mendukung. Dalam hal ini, pengguna dari server atau client dapat menggunakan produk standalone-SSL seperti halnya Stunnel untuk menyediakan enkripsi SSL.

Sertifikat digital

 
Contoh situs web dengan sertifikat digital

Sertifikat digital mengesahkan kepemilikan kunci publik oleh subjek bernama sertifikat, dan menunjukkan penggunaan yang diharapkan dari kunci tersebut. Ini memungkinkan orang lain (mengandalkan pihak) untuk mengandalkan tanda tangan atau pada pernyataan yang dibuat oleh kunci pribadi yang sesuai dengan kunci publik bersertifikat.

Algoritma

Pertukaran kunci atau perjanjian kunci

Sebelum klien dan server dapat mulai bertukar informasi yang dilindungi oleh TLS, mereka harus secara aman bertukar atau menyetujui kunci enkripsi dan cipher untuk digunakan saat mengenkripsi data. Di antara metode yang digunakan untuk pertukaran kunci / perjanjian adalah: kunci publik dan pribadi yang dihasilkan dengan RSA (dilambangkan TLS_RSA dalam protokol jabat tangan TLS), Diffie-Hellman (TLS_DH), ephemeral Diffie–Hellman (TLS_DHE), kurva elips Diffie-Hellman ( TLS_ECDH), kurva-elips epiferal Diffie-Hellman (TLS_ECDHE), Diffie-Hellman anonim (TLS_DH_anon), pre-shared key (TLS_PSK)[3] dan Secure Remote Password (TLS_SRP).[4]

Metode perjanjian kunci TLS_DH_anon dan TLS_ECDH_anon tidak mengotentikasi server atau pengguna dan karenanya jarang digunakan karena mereka rentan terhadap serangan man-in-the-middle. Hanya TLS_DHE dan TLS_ECDHE yang memberikan kerahasiaan ke depan.

Sertifikat kunci publik yang digunakan selama pertukaran / perjanjian juga bervariasi dalam ukuran kunci enkripsi publik / swasta yang digunakan selama pertukaran dan karenanya ketahanan keamanan yang diberikan. Pada Juli 2013, Google mengumumkan bahwa mereka tidak akan lagi menggunakan kunci publik 1024-bit dan akan beralih ke kunci 2048-bit untuk meningkatkan keamanan enkripsi TLS yang diberikannya kepada penggunanya karena kekuatan enkripsi terkait langsung dengan ukuran kunci.[5]

Standar

Standar primer

Versi TLS yang disetujui saat ini adalah versi 1.3, yang ditentukan dalam:

  • RFC [rfc:8446 8446]: "Protokol Transport Layer Security (TLS) Versi 1.3".

Standar saat ini menggantikan versi sebelumnya, yang sekarang dianggap usang:

  • RFC [rfc:2246 2246]: "Protokol TLS Versi 1.0".
  • RFC [rfc:4346 4346]: "Protokol Transport Layer Security (TLS) Versi 1.1".
  • RFC [rfc:5246 5246]: "Protokol Transport Layer Security (TLS) Versi 1.2".

Serta SSL 2.0 dan 3.0 yang tidak pernah distandarisasi, yang dianggap usang:

Refrensi

  1. ^ Langley, Adam; Pironti, Alfredo; Barnes, Richard; Thomson, Martin. "Deprecating Secure Sockets Layer Version 3.0". tools.ietf.org (dalam bahasa Inggris). Diakses tanggal 2020-05-30. 
  2. ^ a b c Rescorla <ekr@networkresonance.com>, Eric. "The Transport Layer Security (TLS) Protocol Version 1.2". tools.ietf.org (dalam bahasa Inggris). Diakses tanggal 2020-05-30. 
  3. ^ Tschofenig, Hannes; Eronen, Pasi. "Pre-Shared Key Ciphersuites for Transport Layer Security (TLS)". tools.ietf.org (dalam bahasa Inggris). Diakses tanggal 2020-05-30. 
  4. ^ Perrin, Trevor; Wu, Tom; Mavrogiannopoulos, Nikos; Taylor, David. "Using the Secure Remote Password (SRP) Protocol for TLS Authentication". tools.ietf.org (dalam bahasa Inggris). Diakses tanggal 2020-05-30. 
  5. ^ "Google updates SSL certificates to 2048-bit encryption". www.computing.co.uk (dalam bahasa Inggris). 2013-07-31. Diakses tanggal 2020-05-30.