Kemenangan adalah Orang - orang yang telah mencoba terus mencoba dalam menghadapi rintangan halangan yang membuat hatinya bersabar berdoa serta lapang dada dan selalu yakin kepada Allah SWT

Kembang Api


Minggu, 30 Juni 2013

E-commerce


Dari Wikipedia, ensiklopedia bebas 

Abstrak

Aplikasi perangkat lunak komputer dan Internet telah berkembang pesat pada dasawarsa ini, demikian pula aplikasi web dan browser internet maupun intranet. Aplikasi E-Commerce telah lama berkembang diawali dengan EDI (Electronic Data Interchange) yang telah berkembang dalam lingkup internasional. Disini akan diuraikan mengenai arsitektur sistem, tool dan konfigurasi yang diperlukan untuk mengimplementasi aplikasi web e-commerce, konsiderasi masalah keamanan sistem, juga perancangan flowchart aplikasi dan perancangan database. Digunakan bahasa pemrograman PHP karena kemudahan dalam pemrograman, dan kelengkapan fitur untuk mengimplementasi sistem e-commerce, kemampuan untuk cross platform, serta kemudahan untuk deployment bagi pengembang aplikasi
Electronic commerce, yang umum dikenal sebagai e-commerce, adalah pembelian dan penjualan produk atau jasa melalui sistem elektronik seperti internet dan jaringan komputer lainnya. Electronic commerce mengacu pada teknologi seperti mobile commerce , transfer dana elektronik , manajemen rantai suplai , pemasaran Internet , proses transaksi online , pertukaran data elektronik (EDI), sistem manajemen persediaan , dan otomatis pengumpulan data sistem. Perdagangan elektronik modern biasanya menggunakan World Wide Web setidaknya di satu titik dalam siklus hidup-transaksi itu, meskipun mungkin mencakup lebih luas teknologi seperti e-mail, perangkat mobile media sosial, dan telepon juga.
Electronic commerce umumnya dianggap sebagai aspek penjualan e-bisnis. Hal ini juga terdiri dari pertukaran data untuk memfasilitasi pembiayaan dan pembayaran aspek dari transaksi bisnis.
E-commerce dapat dibagi menjadi:
  • E-tailing atau "etalase virtual" di situs Web dengan katalog online, kadang-kadang berkumpul menjadi "mal virtual"
  • Pengumpulan dan penggunaan data demografis melalui kontak Web dan media sosial
  • Electronic Data Interchange (EDI), pertukaran bisnis-ke-bisnis data
  • E-mail dan faks dan penggunaannya sebagai media untuk menjangkau prospek dan pelanggan ditetapkan (misalnya, dengan newsletter)
  • Bisnis-ke-bisnis jual beli
  • Keamanan transaksi bisnis
Contoh Aplikasi E-Commerce                                                                                         Beberapa aplikasi umum e-commerce adalah:
* E-mail dan Messaging
* Content Management Systems
* Dokumen, spreadsheet, database
* Akunting dan sistem keuangan
* Informasi pengiriman dan pemesanan
* Pelaporan informasi dari klien dan enterprise
* Sistem pembayaran domestik dan internasional
* Newsgroup
* On-line Shopping
* Conferencing
* Online Banking
Stateless Web Server
Untuk aplikasi E-Commerce ini web server harus dapat mengingat identitas user yang sedang melakukan browsing setiap halaman. Pada dasarnya aplikasi web dan protokol HTTP adalah stateless. Artinya setiap merespon sebuah request HTTP, server akan selesai bekerja (complete) dan tidak melakukan pencatatan apapun yang telah dilakukan oleh user sebelumnya dan terhadap siapa identitas user. Server memperlakukan informasi request secara serial, satu persatu pada saat request masuk. Tidak ada koneksi permanen (persistence) yang berjalan setePerbandingan State dalam Sistem Aplikasi
Gambar 3. Perbandingan State dalam Sistem Aplikasi: A.State yang kontinyu dalam Aplikasi desktop, dan B.Stateless protokol dalam Aplikasi web
Agar sebuah situs web mempunyai memori / state, sehingga Aplikasi ini mampu mengingat ‘siapa memesan apa’, maka beberapa informasi yang mengidentifikasi user harus dikirim dengan setiap request halaman web. Informasi tersebut disimpan menggunakan session. Session tersebut digunakan untuk merekam / tracking aktivitas user yang melalui sejumlah halaman pada website, misalnya pada jenis Aplikasi Shopping Cart (kereta belanja). Direkam pula informasi identitas user yang memiliki kereta belanja tersebut.
Dengan PHP, untuk penggunaan session ini awalnya dilakukan pengaturan pada file php.ini yang menunjukkan session dimulai (start). Dengan ini PHP akan membuat suatu identifier unik dan file yang berkaitan, yang disimpan di server (lokasinya di atur di php.ini dan nilai defaultnya di direktori /tmp). Kemudian pada saat user berkunjung pada halaman-halaman situs web, semua informasi variabel yang dipilih oleh user akan disimpan dalam file pada server, dan semua script yang dibutuhkan untuk melacak sebagai identifier unik.
Implementasi session dapat menggunakan cookie yang disimpan pada sisi client, atau dipropagasikan melalui alamat URL. Untuk penggunaan cookie, yaitu dengan passing variabel melalui cookie yang menyimpan informasi semua elemen barang belanja dan harganya. Namun ini memiliki keterbatasan yaitu dari (http://www.netscape.com/ newsref/std/cookie_spec.html) mengenai spesifikasi cookie yang hanya mengijinkan 20 cookie per domain dan berukuran hanya 4 bytes per cookie. Cara lain adalah memberi identifier unik pada masing-masing user, yang berfungsi mengidentifikasi siapa user tersebut. Sehingga saat user menambahkan satu item pada kereta belanja, informasi yang berkaitan dengan identifier unik tadi disimpan di komputer server. Jika menggunakan cookie untuk fungsi penyimpan informasi tadi, diperlukan suatu string unik yang akan diletakkan dalam cookie, dalam direktori di server akan terdapat sebuah file yang memiliki nama yang sama sebagai ID user yang unik. Dalam file tersebut dapat disimpan semua variabel yang berkaitan dengan user. Contohnya terdapat array berisi item-item barang yang ditambahkan oleh seorang user ke dalam kereta belanjanya. Terdapat keterbatasan penggunaan cookie, yakni bila browser user di atur untuk menolak (reject) cookie.
Metode lain yang digunakan adalah propagasi URL, yaitu mengaktifkan flag –enable-trans-sid dalam konfigurasi PHP, hal ini agar session id secara otomatis akan ditambahkan ke setiap relative link pada tiap halaman web setiap kali session telah dimulai.


Arsitektur dan Konfigurasi Sistem
Arsitektur dasar dari aplikasi web ini adalah arsitektur client/server. Artinya pemrosesan aplikasi ini dijalankan melibatkan 2 sisi yakni server pusat dan client. Hal ini berbeda dengan misalnya aplikasi Microsoft Word yang hanya melibatkan 1 sisi saja yaitu sisi client. Atau bagi user mesin VAX yang hanya menggunakan sisi server saja sedangkan sisi client hanya dumb terminal saja yang tidak melakukan pemrosesan apapun di client.
Arsitektur Client/Server
Gambar 2. Arsitektur Client/Server

2.2 Konfigurasi Sistem dan Tool Yang Digunakan
Masalah lain dalam aplikasi ini adalah aspek keamanan dalam memperoleh informasi dari user, terutama data mengenai penggunaan kartu kredit. Informasi ini perlu diverifikasi oleh institusi yang berkualifikasi dan memerlukan pengaturan konfigurasi serta penggunaan beberapa macam tool.
Dalam membangun aplikasi ini dipergunakan algoritma untuk memelihara (maintain) state, pengambilan informasi secara secure terhadap kartu kredit, menggunakan kode pemrograman khusus dan penggunaan opsi instalasi khusus. Di bawah ini akan dibahas mengenai teori dasar enkripsi dan sekuriti Web. Kemudian akan dibahas tool mandatory untuk instalasi web server Apache.

2.2.1 Enkripsi Public-Key / Private-Key
Web server menggunakan skema keamanan Public-key/Private-key. Artinya komputer yang akan berkomunikasi dan menggunakan data terenkripsi harus memiliki 2 buah kunci untuk mengenkripsi data dan mendekripsinya. Pertama, public-key tersedia bagi siapapun yang ingin melakukan komunikasi terhadapnya. Sehingga siapapun yang ingin melakukan komunikasi terhadap sebuah server secara secure akan memiliki salinan dari Public key mesin tersebut. Namun public key ini tidak cukup untuk dapat mendekripsi data, masih dibutuhkan Private key yang bersifat rahasia. Misalnya pada pemrosesan kartu kredit dengan sebuah bank, nasabah memiliki Public key bank tersebut dimana ia dapat melakukan dekripsi informasi, namun masih diperlukan Private key yang disimpan oleh bank tersebut, untuk dapat melakukan dekripsi data.
Pengiriman Data Terenkripsi antara Pengguna dengan Server E-Commerce
Gambar 4. Pengiriman Data Terenkripsi antara User dengan Server E-Commerce



2.2.2.Sertifikat
Meski masalah keamanan sudah ditangani dengan adanya Public key / Private key, masih ada masalah yang perlu diperhatikan yakni pesan yang diperoleh adalah benar dari pihak yang memiliki otorisasi, bukan dari pihak lain yang tidak berkepentingan atau yang menyalahgunakan. Untuk itu dibutuhkan pihak ketiga untuk memverifikasi pesan yang datang.
Pesan terenkripsi yang dikirim dan diterima akan memiliki semacam ‘signature’, dan verifikasi selanjutnya dilakukan terhadap ‘signature’ tersebut. Untuk itu, organisasi yang akan mempergunakan komunikasi melalui web memerlukan kerjasama dengan organisasi lain yang mengeluarkan sertifikat yang memverifikasi pengirim pesan. Organisasi ini pulalah yang memberikan Publik key dan Private key. Salah satu contoh organisasi yang menerbitkan sertifikat sekuriti adalah VeriSign.

2.2.3. Secure Protocol
Protokol HTTP secara alamiah bersifat terbuka terhadap penyusupan. Paket-paket data yang melintas melalui router internet dapat disadap dan dibaca. Namun informasi kartu kredit diinginkan agar tidak mudah terbaca, untuk itu dibutuhkan penggunaan Secure Socket Layer atau SSL. SSL adalah protokol tambahan dimana key dan sertifikat dari suatu situs e-commerce akan ditransfer ke browser atau ke server lain. Melalui SSL, browser akan dapat memverifikasi sertifikat dari situs tersebut sehingga dapat mengetahui identitas pengirim sebenarnya. Tata cara enkripsi ini masih mengandung kelemahan yakni pada aspek sumber daya manusia apabila kurang jujur, yakni jika terjadi akses tidak sah dilakukan oleh orang yang sudah berada dalam sistem.

2.2.4. Enkripsi dan Tool Sekuriti
Untuk web server Apache, ditambahkan modul SSL pada saat instalasinya.
Untuk dapat melakukan autorisasi kartu kredit, diperlukan sertifikat. Contoh yang paling sering digunakan adalah VeriSign, yang memiliki layanan PayfloPro.
Setelah Apache dikonfigurasi dengan SSL, maka website aplikasi dapat berkomunikasi dengan browser secara secure. Cirinya: URL dimulai dengan https:// , browser akan mencari Port 443 dan mencari serifikat. Dalam PHP, banyak fitur yang dapat digunakan untuk dapat berhubungan dengan situs lain. Misalnya fungsi fopen(). Namun fungsi-fungsi berhubungan dengan filesystem atau URL tidak mendukung bekerja dengan SSL, sehingga diperlukan kumpulan fungsi khusus atau program diluar PHP. Opsi-opsi dalam PHP 4 dapat mendukung layanan proses pembayaran.
Komunikasi Antar Situs dalam Aplikasi E-Commerce
Gambar 5. Komunikasi Antar Situs dalam Aplikasi E-Commerce

2.2.5. Penggunaan Firewall
Firewall digunakan untuk melindungi jaringan lokal dari serangan luar. Ada beberapa pilihan untuk menempatkan web server :
• web server ditempatkan di luar dari Firewall (lihat gambar 6), adapun keuntungan dengan menempatkan server diluar dari firewall adalah bahwa web server mungkin saja menjadi subject penyerangan dari pihak luar; maka mereka “sniffer” tidak akan dapat meningkatkan serangan berikutnya untuk merusak server-server lainnya. Dengan kata lain web server tidak akan dapat keuntungan dari segala macam bentuk pelindungan yang diusahakan firewall.
Web Server di Luar Firewall
Gambar 6. Web Server di Luar Firewall
• Web server di dalam firewall (lihat gambar 7). Jika diterapkan seperti ini, perlu dikonfigurasi agar firewall melewatkan transaksi pada TCP port 80, atau dengan membolehkan secara langsung melewatkan paket maupun dengan menggunakan mekanisme proxy. Keuntungan dari menempatkan web server di dalam firewall yaitu firewall akan memblok akses dari luar yang menggunakan layanan Internet lainnya, seperti Telnet, FTP. Tetapi apabila penyusup “sniffer” tersebut menggunakan kesalahan dari program CGI script, mereka akan mempunyai akses tak terbatas ke jaringan lokal.
Web Server yang Diletakkan Di dalam Firewall
Gambar 7. Web Server yang Diletakkan Di dalam Firewall
• Pilihan ketiga, yang paling baik, yaitu menggunakan dua firewall: satu untuk melindungi jaringan internal / lokal dan yang satunya lagi untuk melindungi web server (lihat gambar 8).
Webserver yang Diletakkan di Antara Internal Firewall dan External Firewall
Gambar 8. Webserver yang Diletakkan di Antara Internal Firewall dan External Firewall

2.2.6. PayFloPro dan Cybercash
Untuk penggunaan VeriSign pemrosesan kartu kredit, diperlukan instalasi pustaka kode ( code library) yang diperoleh dari VeriSign. Selanjutnya dikompilasi ulang dengan PHP sehingga dapat mengenali fungsi-fungsi tersebut (fungsi-fungsi pfpro) . Fungsi-fungsi tersebut akan memproses request dan akan mengembalikan jawaban (response). Setelah itu response tersebut akan dibandingkan dengan kode yang telah diketahui, setelah itu akan diketahui apakah transaksi tersebut sukses atau tidak. Selain PayFloPro, dapat juga digunakan Cybercash, yang diinstal sebagai library pada PHP (fungsi-fungsi cybercash).

2.2.7. CURL
Merupakan akronim dari fungsi-fungsi pustaka Client URL. Kode library ini digunakan untuk berkomunikasi melalui internet menggunakan sembarang protokol di sisi lawan. Kode ini mendukung Gopher, Telnet, dan HTTPS. Untuk dapat menggunakan fungsi ini, konfigurasi instalasi PHP harus menyertakan flag –with-curl.

2.3. Pemrosesan Kartu Kredit
Pemrosesan kartu kredit dilakukan oleh perusahaan yang khusus untuk itu, terdapat beberapa nama perusahaan yang cukup dikenal, namun semuanya memiliki kesamaan cara kerja. Awalnya dikirim request tentang informasi kartu kredit: nomor, tanggal kadaluarsa, alamat, dan sebagainya, kemudian perusahaan tersebut akan mengirimkan kode kembalian sebagai respon. Kode PHP di sini adalah berfungsi untuk membandingkan kode yang diterima dengan nilai yang didapat sebelumnya dari agen pemrosesan. Untuk aplikasi ini dipergunakan Authorizenet.com sebagai pemroses kartu kredit.

Kesimpulan

Proses yang ada dalam E-commerce adalah sebagai berikut :
           Presentasi electronis (Pembuatan Web site) produk dan layanan.
           Pemesanan secara langsung dan tersedianya tagihan.
           Otomasi account Pelanggan secara aman (baik nomor rekening maupun nomor Kartu Kredit).
          Pembayaran yang dilakukan secara Langsung (online) dan penanganan transaksi

Keuntungan yang diperoleh dengan menggunakan transaksi melalui E-commerce bagi suatu perusahaan adalah sebagai berikut :
• Meningkatkan pendapatan dengan menggunakan online channel yang biayanya lebih murah.
• Mengurangi biaya-biaya yang berhubungan dengan kertas, seperti biaya pos surat, pencetakan,report,dan sebagainya.
• Mengurangi keterlambatan penggunaan transfer elektronik / pembayaran yang tepat waktu dan dapat langsung dicek.
• Mempercepat pelayanan ke pelanggan, dan pelayanan lebih responsif.


Arsitektur dasar dari aplikasi web ini adalah arsitektur client/server. Artinya pemrosesan aplikasi ini dijalankan melibatkan kedua sisi yakni sisi mesin server pusat dan sisi client.
-Untuk aplikasi E-Commerce ini web server harus dapat mengingat siapa / identitas pengguna yang sedang melakukan browsing setiap halaman. Pada dasarnya aplikasi web dan protokol HTTP adalah stateless. Artinya setiap merespon sebuah request HTTP, server akan selesai bekerja (complete) dan tidak melakukan pencatatan apa yang telah dilakukan oleh pengguna sebelumnya dan terhadap siapa identitas pengguna.
-Pemrograman untuk aplikasi e-commerce ini diimplementasikan dengan PHP. Fungsi-fungsi utama yang dipergunakan dalam kode program di sini adalah fungsi yang berhubungan dengan session dan fungsi yang berkaitan dengan pustaka cURL.

-Agar sebuah situs web mempunyai memori / state, dalam hal ini aplikasi ini mampu mengingat ‘siapa memesan apa’, beberapa informasi yang mengidentifikasi pengguna harus dikirim dengan setiap request halaman web. Informasi tersebut disimpan dengan menggunakan session.
-Mesin di web menggunakan skema keamanan Public-key/Private-key. Artinya komputer yang akan berkomunikasi menggunakan data terenkripsi harus memiliki dua buah kunci untuk mengenkripsi data dan mendekripsinya
-Firewall digunakan untuk melindungi jaringan lokal dari serangan luar.
-Yang penting diperhatikan untuk pengembangan aplikasi e-commrce adalah informasi nomor kartu kredit dan informasi personal lainnya harus aman dan tidak mudah dilihat oleh orang yang tidak berhak.

-Pemrograman untuk aplikasi e-commerce ini diimplementasikan dengan PHP.
-Fungsi session_register() digunakan untuk menyatakan memulai session, sekaligus didefinisikan variabel apa saja yang akan disimpan dalam session.
-Fungsi session_register() diletakkan pada baris pertama program, karena fungsi ini mengirim cookies yang merupakan salah satu tipe dari HTTP header.
Kesimpulan :
Pengembangan aplikasi e-commerce bagi sebuah perusahaan / lembaga merupakan proses yang cukup kompleks. Melibatkan beberapa organisasi / situs dalam penanganan sekuriti dan otorisasi.
Keuntungan yang diperoleh dengan menggunakan transaksi melalui E-commerce bagi suatu
perusahaan adalah sebagai berikut :
Meningkatkan pendapatan dengan menggunakan online channel yang biayanya lebih
murah.
Mengurangi biaya-biaya yang berhubungan dengan kertas, seperti biaya pos surat,
pencetakan, report, dan sebagainya.
Mengurangi keterlambatan dengan mengunakan transfer elektronik / pembayaran
yang tepat waktu dan dapat langsung dicek.
Mempercepat pelayanan ke pelanggan, dan pelayanan lebih responsif
Share:

0 komentar:

Posting Komentar

Flag Couter

Flag Counter

BTemplates.com

Diberdayakan oleh Blogger.

Pengikut

NOAH

My Facebook

https://www.facebook.com/rico.adam

Translate

Jam Digital

My Calender

Trafic Feed