Sabtu, 29 November 2014

HTTP / Protokol



A. HTTP protokol

HTTP adalah sebuah protokol meminta/menjawab antara client dan server. Sebuh
client HTTP seperti web browser, biasanya memulai permintaan dengan membuat hubungan
TCP/IP ke port tertentu di tuan rumah yang jauh (biasanya port 80). Sebuah server HTTP
yang mendengarkan di port tersebut menunggu client mengirim kode permintaan (request),
seperti "GET / HTTP/1.1" (yang akan meminta halaman yang sudah ditentukan), diikuti
dengan pesan MIME yang memiliki beberapa informasi kode kepala yang menjelaskan aspek
dari permintaan tersebut, diikut dengan badan dari data tertentu. Beberapa kepala (header)
juga bebas ditulis atau tidak, sementara lainnya (seperti tuan rumah) diperlukan oleh protokol
HTTP/1.1. Begitu menerima kode permintaan (dan pesan, bila ada), server mengirim kembali
kode jawaban, seperti "200 OK", dan sebuah pesan yang diminta, atau sebuah pesan error
atau pesan lainnya.

Pengembangan HTTP dikoordinasi oleh Konsorsium World Wide Web (W3C) dan grup
bekerja Internet Engineering Task Force (IETF), bekerja dalam publikasi satu seri RFC, yang
paling terkenal RFC 2616, yang menjelaskan HTTP/1.1, versi HTTP yang digunakan umum
sekarang ini.


B. HTTPS, TLS, and SSL

Kini telah terdapat cara untuk menangani masalah keamanan web. Yaitu dengan
HTTPS,. https adalah versi aman dari HTTP, protokol komunikasi dari World Wide Web.
Ditemukan oleh Netscape Communications Corporation untuk menyediakan autentikasi dan
komunikasi tersandi dan penggunaan dalam komersi elektris.

Pendekatan HTTPS sangatlah simpel, Client membuat koneksi ke server, melakukan
negosiasi koneksi SSL, kemudian mengirim HTTP tersebut melalui aplikasi SSL. Deskripsi
ini menjadikannya terlihat mudah.

Selain menggunakan komunikasi plain text, HTTPS menyandikan data sesi
menggunakan protokol SSL (Secure Socket layer) atau protokol TLS (Transport Layer
Security). Kedua protokol tersebut memberikan perlindungan yang memadai dari serangan
eavesdroppers, dan man in the middle attacks. Pada umumnya port HTTPS adalah 443.

Terdapat perbedaan port yang spesifik, HTTPS menggunakan port 443 sedangkan
HTTP menggunakan port 80 dalam berinteraksi dengan layer yang di bawahnya , TCP/IP.

HTTPS dan SSL mendukung penggunaan dari X.509 sertifikat digital dari server,
sehingga jika diperlukan , pengguna dapat mengotentikasi pengirimnya. Kecuali perbedaan
port yang spesifik, HTTPS menggunakan port 443 sedangkan HTTP menggunakan port 80
dalam berinteraksi dengan layer yang di bawahnya , TCP/IP.

Tingkat keamanan tergantung pada ketepatan dalam mengimplementasikan pada
browser web dan perangkat lunak server dan didukung oleh algorithma penyandian yang
aktual.Oleh karena itu, pada halaman web digunakan HTTPS, dan URL yang digunakan
dimulai dengan ‘https://’ bukan dengan ‘http://’

Efektifitas dari HTTPS dapat dibatasi oleh kurangnya implementasi dari browser atau
perangkat lunak server atau kurangnya dukungan dari beberapa algoritma. Selanjutnya,
walapun HTTPS dapat mengamankan perjalanan data antara server dan klien, setelah data
didekripsi tujuannya, itu hanya aman sebagai host komputer.

Kesalahpahaman yang sering terjadi pada pengguna kartu kredit di web ialah dengan
menganggap HTTPS “sepenuhnya” melindungi transaksi mereka. Sedangkan pada
kenyataannya, HTTPS hanya melakukan enkripsi informasi dari kartu mereka antara browser
mereka dengan web server yang menerima informasi. Pada web server, informasi kartu
mereke secara tipikal tersimpan di database server (terkadang tidak langsung dikirimkan ke
pemroses kartu kredit), dan server database inilah yang paling sering menjadi sasaran
penyerangan oleh pihak-pihak yang tidak berkepentingan

Refrensi :
Ferdian Pramudya P, Agung kaharesa W. "PROTOCOL HTTP DAN HANDSHAKING CLIENT-SERVER UNTUK BERKOMUNIKASI VIA HTTPS".

Semester3

3 komentar:

  1. Sangat berfmanfaat, terima kasih karena sudah memberikan ilmu dan membagikannya, semoga diberi kesehatan selalu agar terus membagi ilmunya kepada sesama manusia. keren keren!

    BalasHapus
  2. permisi gan, saya ada sedikit tulisan mengenai protokol WebSocket yang saya terapkan kedalam beberapa bahasa pemrograman berikut: http://datacomlink.blogspot.co.id/2015/11/implementasi-server-websocket-rfc-6455.html ditunggu feedbacknya gan, semoga menambah wawasan bersama, terima kasih gan.. :D

    BalasHapus