BAB II LANDASAN TEORI Dalam bab ini penulis menguraikan tentang kriptografi, tujuan kriptografi, kriptografi modern, algoritma dan kunci, algoritma simetri dan perangkat yang digunakan. 2.1 Penyandian Data (Kriptografi) Kriptografi (cryptograhy)berasal dari bahasa yunani yaitu ” cryptos ” yang artinya ” secret ” atau rahasia sedangkan ” graphein ” artinya ” writing ” atau tulisan2. Jadi kriptografi memiliki arti yaitu tulisan rahasia. Kriptografi berguna untuk mengacak ( kata yang lebih tepat adalah masking ) data sedemikian rupa sehingga tidak bisa dibaca oleh pihak ketiga. Kriptografi ( Cryptography ) merupakan ilmu dan seni untuk menjaga keamanan pesan atau bisa juga di definisikan sebagai ilmu mempelajari teknik – teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data serta otentikasi. Dalam menjaga kerahasiaan data, kriptografi mentransformasikan data jelas (plain text) ke dalam bentuk sandi (ciphertext) yang tidak dapat dikenali. Ciphertext inilah yang kemudian dikirimkan oleh pengirim (sender) kepada penerima
(receiver).
Setelah
sampai
di
penerima,
ciphertext
tersebut
ditransformasikan kembali ke dalam plaintext agar dapat dikenali. Proses
2
Rinaldi, Munir, 2004, ” Bahan Kuliah IF5054 Kriptografi ”, Departemen Teknik Informatika, ITB
8
9
transformasi dari plaintext menjadi ciphertext disebut proses encipherment atau enkripsi (encryption), sedangkan proses mentransformasikan kembali ciphertext menjadi plaintext disebut proses dekripsi (decryption). Data yang diacak harus bisa dikembalikan ke bentuk semula oleh pihak yang berwenang. Data yang ingin diacak biasanya disebut Plain Teks (Plain Text). Data diacak dengan menggunakan Kunci Enkripsi (Encryption Key). Proses pengacakan itu sendiri disebut Enkripsi (Encryption). Plain Teks yang telah diacak disebut Cipher Teks (Chiper Text). Kemudian proses untuk mengembalikan Cipher Teks ke Plain Teks disebut Dekripsi (Decryption). 2.2 Tujuan Kriptografi Kriptografi memiliki beberapa tujuan penting dalam melakukan pengamanan data, antara lain : 1. Kerahasian (confidentiality) Kerahasian (confidentiality), adalah layanan yang ditujukan untuk menjaga agar pesan tidak dapat dibaca oleh pihak-pihak yang tidak berhak. Didalam kriptografi, layanan in direalisasikan dengan menyandikan pesan menjadi cipherteks. 2. Integritas data (data integrity) Integritas data (data integrity), adalah layanan yang menjamin bahwa pesan masih asli/utuh atau belum pernah dimanipulasi selama pengiriman.
10
3. Otentikasi (authentication) Otentikasi (authentication), adalah layanan yang berhubung dengan identifikasi, baik mengidentifikasi kebenaran pihak-pihak yang berkomunikasi (user authentication atau entity authentication) maupun mengidentifikasi kebenaran sumber pesan (data origin authentication). 4. Penyangkalan (non-repudiation) Penyangkalan (non-repudiation), adalah layanan untuk mencegah entitas yang berkomunikasi melakukan penyangkalan, yaitu pengirim pesan menyangkal melakukan pengiriman atu penerima pesan menyangkal telah menerima pesan. 2.3 Kriptografi Modern Kriptografi modern menggunakan gagasan dasar yang sama seperti kriptografi klasik (permutasi dan transposisi) tetapi penekanannya berbeda. Algoritma kriptografi modern umumnya beroperasi dalam mode bit ketimbang mode karakter (seperti yang dilakukan pada cipher subsitusi atau cipher transposisi dari algoritma kriptografi klasik). Perkembangan algoritma kriptografi modern berbasis bit didorong oleh penggunaan komputer digital yang mempresentasikan data dalam bentuk biner. Algoritma enkripsi dan dekripsi memproses semua data dan informasi dalam bentuk rangkaian bit. Rangkaian bit yang menyatakan plainteks di enkripsi menjadi cipherteks dalam bentuk rangkaian bit, demikan sebaliknya.
11
2.4 Algoritma dan Kunci Algoritma kriptografi selalu terdiri dari dua bagian yaitu fungsi enkripsi dan dekripsi. Bila keamanan algoritma tergantung pada kerahasiaan algoritma bekerja, maka algoritma tersebut dikatakan algoritma terbatas (terbatas kemampuannya). Kriptografi modern dapat menyelesaikan masalah algoritma terbatas ini dipecahkan dengan merahasiakan kunci (key) tanpa harus menyembunyikan algoritmanya sendiri. Kunci (K) dapat juga disebut sebagai password. Keamanan enkripsi hanya tergantung pada kunci, dan tidak bergantung apakah algoritmanya dilihat orang lain atau tidak. Kunci pada proses enkripsi dan dekripsi tersebut dapat berupa sekumpulan nilai yang panjangnya dibatasi oleh ukuran kunci tersebut. Semakin panjang ukuran kunci maka semakin banyak kombinasi kunci yang ada, tetapi hanya satu kombinasi kunci yang akan digunakan sehingga menambah tingkat pengiriman data. Bila keseluruhan keamanan algoritma ini tergantung kunci dan tak satu pun yang didasarkan pada detail algoritma maka algoritma ini dapat dipublikasikan
dan
dianalisis
oleh
semua
orang.
Produk-produk
yang
menggunakan algoritma tersebut dapat diproduksi secara masal. Tidak masalah jika penyadap mengetahui algoritma tersebut, jika tidak diketahui kunci rahasianya, maka tetap tidak bisa membuka pesan yang ada. 2.5 Pesan, Plaintext dan chipertext Pesan ( message ) adalah data atu informasi yang dapat dibaca dan dimengerti maknanya. Nama lain dari pesan adalah plainteks ( plaintext ) atau teks
12
jelas ( cleartext ). Pesan dapat berupa data atau informasi yang dikirim ( melalui kurir, saluran telekomunikasi, dsb) atau yang disimpan di dalam media perekaman ( kertas, storage, dsb). Pesan yang terimpan tidak hanya berupa teks, tetapi juga dapat berbentuk citra ( image ), suara/bunyi (audio), dan video atau berkas biner lainnya. Agar pesan tidak dapat dimengerti maknanya oleh pihak lain, maka pesan perlu disandikan ke dalam bentuk lain yang tidak dapat dipahami. Bentuk pesan yang tersandi disebut ciperteks ( chipertext ) atau kriptogram ( cryptogram ). Ciperteks harus dapat ditransformasikan kembali menjadi plainteks semula agar pesan yang diterima bisa di baca. 2.6 Enkripsi dan dekripsi Proses menyandikan plainteks menjadi cipherteks disebut enkripsi (encryption), sedangkan proses mengembalikan cipherteks menjadi plainteks semula dinamakan dekripsi (decryption). Enkripsi dan dekripsi dapat diterapkan baik pada pesan yang dikirim maupun pada pesan yang tersimpan. 2.7 Chiper dan kunci Algoritma kriptografi disebut juga chiper yaitu aturan untuk enchipering dan dechipering, atau fungsi matematika yang digunakan untuk enkripsi dam dekripsi. Beberapa chipering memerlukan algoritma yang berbeda untuk enciphering dan deciphering. Konsep matematis yang mendasari algoritma kriptografi adalah relasi antara duabuah himpunan yaitu himpunan yang berisi elemen-elemen plainteks dan himpunan yang berisi cipherteks. Enkripsi dan dekripsi merupakan fungsi
13
yang memetakan elemen-elemen antara kedua himpunan tersebut. Misalkan P menyatakan plainteks dan dan C menyatakan chiperteks, maka fungsi enkripsi E memetakan P ke C, E(P) = C Dan fungsi dekripsi D memetakan C ke P, D(C) = P Karena proses enkripsi kemudian dekripsi mengembalikan pesan ke pesan asal, maka kesamaan berikut harus benar. D(E(P)) = P Keamanan suatu pesan tergantung pada kunci ataupun kunci-kunci yang digunakan, dan tidak tergantung pada algoritma yang digunakan. Sehingga algoritma-algoritma yang digunakan tersebut dapat dipublikasikan dan dianalisis, serta produk-produk yang menggunakan algoritma tersebut dapat diproduksi massal. Tidaklah menjadi masalah apabila seseorang mengetahui algoritma yang kita gunakan. Selama ia tidak mengetahui kunci yang dipakai, ia tetap tidak dapat membaca pesan. Pada skema enkripsi konvensional atau symetric-key, digunakan sebuah kunci untuk melakukan proses enkripsi dan dekripsinya. Kunci tersebut dinotasikan dengan K. Sehingga proses kriptografinya adalah sebagai berikut: EK(P) = C Dan fungsi dekripsi DK memetakan C ke P, DK(C) = P
atau DK(EK(P)) = P
14
Sedangkan pada sistem asymetric-key, digunakan kunci umum (public key) untuk enkripsi dan kunci pribadi (private key) untuk proses dekripsinya. Sehingga kedua proses tersbut dinyatakan dengan: EPK(P) = C Dan fungsi dekripsi DPK memetakan C ke P, DPK(C) = P
atau
Gambar 2.1
DSK(EPK(P)) = P
memperlihatkan skema enkripsi dan dekripsi dengan
menggunakan kunci, sedangkan Gambar 2.2 mengilustrasikan enkripsi dan dekripsi terhadap sebuah pesan.
Gambar 2.1Skema enkripsi dan dekripsi
Gambar 2.2 Contoh ilustrasi enkripsi dan dekripsi pesan 2.8 Sistem Kriptografi Kriptografi membentuk sebuah sistem yang dinamakan sistem kriptografi. Sistem kroptografi (cryptosystem) adalah kumpulan yang terdiri dari algoritma
15
kriptogarafi, semua plainteks dan cipherteks. Di dalam sistem kriptografi, chiper hanyalah salah satu komponen saja. 2.9 Algoritma Simetri Algoritma simetri disebut juga sebagai algoritma konvensional adalah algoritma yang menggunakan kunci enkripsi yang sama dengan kunci dekripsinya. Algoritma simetri sering juga disebut algoritma kunci rahasia, algoritma kunci tunggal atau algoritma satu kunci, dan mengharuskan pengirim dan penerima menyetujui suatu kunci tertentu sebelum dapat dilakukan komunikasi dengan aman. Keamanan algoritma simetri tergantung pada kunci, membocorkan kunci berarti bahwa orang lain dapat mengenkripsi dan mendekripsi pesan, agar komunikasi tetap aman maka kunci harus tetap dirahasiakan. Yang termasuk algoritma kunci simetri adalah DES, RC2, Blowfish, dan sebagainya
Gambar 2.3 Kriptografi Simetri Gambar 2.3 memperlihatkan kriptografi simetri yang biasa disebut juga sebagai kriptografi kunci konvensional. Dalam algoritma simetrik, pengirim data
16
dan penerima data menggunakan kunci yang sama. Proses enkripsi dengan menggunakan suatu kunci akan mengubah plaintext menjadi Chipertext dan proses dekripsi dengan menggunakan kunci yang sama dengan kunci yang digunakan untuk proses dekripsi, maka akan diperoleh data yang tidak sama dengan data asli. Jika kunci untuk proses enkripsi diketahui maka kunci untuk proses dekripsi dapat diperoleh karena menggunakan kunci yang sama. Fungsi matematika dari proses enkripsi dan proses dekripsi algoritma simetri : Ek(P) = C Dk(C) = P Dk(Ek(P)) = P dengan P adalah plaintext, C adalah Chipertext, Ek adalah proses enkripsi menggunakan kunci, dan Dk adalah proses dekripsi menggunakan kunci. berikut ini adalah kriptografi yang merupakan kelompok Algoritma Simetri yaitu Algoritma Skipjack, BlowFish, Stream Cheaper dan Block Cheaper. 2.10 Perangkat yang Digunakam 1. Pengantar Borland Delphi Borland Delphi merupakan program aplikasi database yang berbasis object Pascal dari Borland. Borland Delphi memliki komponen komponen visual maupun non visual berintegrasi yang akan menghemat penulisan program. Borland Delphi memberikan fasilitas pembuatan aplikasi visual. Terutama dalam hal perancangan antarmuka grafis (Graphical User Interface), kemampuan Borland Delphi untuk menggunakan Windows API
17
(Application Programming Interface) ke dalam komponen – komponen visual menyebabkan pemrograman Borland Delphi yang bekerja dalam lingkungan Windows menjadi lebih mudah. Komponen visual Borland Delphi digunakan untuk pembuatan aplikasi yang memiliki sifat WYSIWYG. Komponen – komponen visual tersebut terdapat dalam beberapa halaman yang terpisah dalam palet komponen. Borland Delphi masih memiliki sekelompok komponen non-visual. Komponen – komponen ini ini tidak dapat berdiri sendiri tetapi harus dilekatkan pada sebuah form. Saat bekerja dengan komponen – komponen ini
seringkali
dibutuhkan
penulisan
kode
program
agar
dapat
menggunakan fasilitas setiap komponen. Beberapa komponen non-visual memiliki fasilitas khusus dalam perancangannya, seperti pada komponen Menu dan komponen Query. Kelebihan Borland Delphi dalam hal kompilasi program juga menjadi faktor yang mempengaruhi pemilihan bahasa pemrograman yang digunakan. Karena program dikembangkan berdasarkan bahasa pascal yang telah dikenal luas, maka untuk pengembangan program akan lebih mudah. Borland Delphi memiliki tampilan bidang kerja yang disebut dengan IDE (Integrated Development Environtment). IDE ini secara garis besar terdiri atas tiga bagian utama, yaitu window utama, object inspector dan editor. Window utama teridi atas menu bar, tool bar dan component pallete. Object Inspector menyediakan dua kelompok pengaturan
18
komponen, yaitu properties dan event. Editor disediakan ada dua buah yaitu form editor dan code editor.
Object Inspector
Menu Component Pallete
Form Code Editor
Tool Bar
Gambar 2.4 Tampilan IDE Delphi 7 a. Menu Bar Menu bar dipakai untuk mengatur semua window di Delphi, mengelola proses desain aplikasi, mengatur lingkungan kerja Delphi, serta menyediakan fasilitas online help. Menu bar menyediakan kelompok perintah yang digolongkan dalam sebelas menu. Menu tersebut antara lain File, Edit, Search, View, Project, Run, Component, Database, Tools, Options, dan Help.
Gambar 2.5. Menu Bar
19
Menu Bar memilki beberapa komponen, yaitu : 1) File Kelompok perintah yang berfungsi untuk pengaturan suatu file. Misalnya New, Save, Open, dan sebagainya. 2) Edit Menyimpan perintah-perintah untuk pengeditan. Mulai dari pengeditan objek, pengeditan komponen maupun pengeditan kode pada Code Editor. Contohnya Cut, Paste, Align. 3) Search Kelompok perintah yang berfungsi untuk melakukan proses pencarian, baik objek, kata, kalimat dan sebagainya. 4) View Menampung
perintah-perintah
untuk
mengaktifkan
bagian
pendukung Integrated Development Environment. 5) Project Kelompok perintah yang berfungsi untuk manajemen proyek berikut bagian - bagian pendukungnya. 6) Run Kelompok perintah untuk menangani proses kompilasi program seperti Run, Build, Step Over, Debug dan seterusnya. 7) Component Mengatur suatu komponen.
20
8) Database Mengandung
perintah-perintah
untuk
pengaturan
aplikasi
database. 9) Tools Kelompok perintah yang berfungsi sebagai penyedia perlengkapan tambahan yang diperlukan dalam penyusunan program seperti Image Editor, Database Engine dan lain-lain. 10) Opntions Mengatur komposisi bidang kerja Delphi. 11) Help Memberikan informasi yang bersifat menolong pemakai dalam menggunakan Delphi. b. Tool Bar Tool Bar adalah bagian dari Delphi yang menyediakan tomboltombol speed. Tombol speed fungsinya sama dengan perintah yang ada pada menu. Tombol ini disediakan dengan tujuan meringkas atau mempercepat pekerjaan kita. Untuk mengakses suatu perintah dengan menggunakan menu, langkah yang kita lakukan adalah klik menu lalu klik submenu lantas klik perintah tersebut. Sedangkan untuk mengakses perintah dengan menggunakan tombol speed, langkah yang kita lakukan hanya mengklik tombol yang kita inginkan.
21
Gambar 2.6 Tool Bar c. Component Pallete Component pallete berfungsi untuk menyimpan komponen – komponen yang bisa kita pasangkan pada form sesuai keperluan kita. Telah tersedia berbagai komponen yang dikelompokkan dalam sebelas kelompok seperti tampak pada gambar.
Gambar 2.7 Component Pallete d. Object Inspector Object inspector adalah sarana pengaturan objek yang kita pasangkan pada form atau form itu sendiri. Object inspector memiliki dua halaman, yaitu halaman Properti dan halaman event. Properti adalah yang terkait dengan sifat komponen seperti ukuran, warna dan sebagainya. Sedangkan event adalah kejadian atau peristiwa yang kita inginkan terpasang pada komponen tersebut kaitannya dengan proses pemakaian. Contoh event misalnya klik, klik ganda, drag (geser), drop dan sebagainya.
22
Gambar 2.8 Object Inspector e. Form Form adalah bahan dasar yang akan menjadi jendela aplikasi kita. Pada form terdapat tiga tombol kontrol, yaitu Minimize, Maximize atau Restore dan Close. Terdapat juga caption bar tempat kita menempatkan judul Form (yang kelak menjadi judul window) dan icon. Pembatas form juga bisa diubah ukurannya dengan cara drag (geser)-drop. Pada form kita bisa meletakkan komponen-komponen yang kita perlukan dalam suatu User Interface.
Gambar 2.9 Form f. Code Editor Code Editor adalah tempat kita menuliskan program dalam bahasa Object Pascal. Secara default Code Editor ini terletak di
23
belakang Form Editor. Untuk menuliskan kode yang kita pasangkan pada suatu komponen, klik ganda komponen tersebut, Code Editor akan otomatis aktif dan menempatkan kursor di lokasi penulisan kode.
Gambar 2.10 Code Editor 2. Dasar Pemrograman Borland Delphi a. Operasi Kondisional 1) If-Then-Else Statement If-Then-Else digunakan untuk mengeksekusi sebuah blok jika memenuhi kondisi tertentu. Bila kondisi yang diseleksi terpenuhi, maka blok yang mengikuti Then akan diproses, sebaliknya bila kondisi tidak terpenuhi, maka yang akan diproses blok berikutnya. Sintaks penggunaannya adalah : If Kondisi Then [blok perintah1] Else [blok perintah2]
24
2) Case-Of Jika pilihan kondisi hanya sedikit, kita bisa menggunakan If. Namun jika pilihannya banyak, kita harus menggunakan Case Of. Statement Case – Of digunakan untuk percabangan yang banyak, Sintaks penggunaannya adalah : Case Variabel Kondisi Of Case – Label 1: [blok perintah1]; Case – Label 2: [blok perintah2]; Case – Label 3: [blok perintah3]; ........ Case – Label n ; [blok perintahn] ; end;
b. Operasi Pengulangan 1) Repeat…Until Statement repeat akan melaksanakan perulangan proses terhadap blok perintah sampai suatu keadaan dinyatakan True (bernilai benar). Sintaks penggunaannya adalah sebagai berikut: Repeat [blok perintah] until kondisi
2) While…Do Statement while digunakan untuk mengeksekusi sebuah blok secara berulang selama memenuhi kondisi pada while masih bernilai benar. Sintaks penggunaannya adalah sebagai berikut: While kondisi Do
25
begin [blok perintah]; end;
3) For…Do Statement for digunakan untuk mengeksekusi sebuah blok secara
berulang
dalam
sebuah
range
tertentu.
Sintaks
penggunaannya adalah sebagai berikut: For variabelawal To akhir Do [blok perintah]
3. Komponen Borland Delphi a. Objek Fasilitas yang digunakan dalam pemebentukan antarmuka sebuah aplikasi. Delphi menampung objek – objek tersebut ke dalam suatu paket yang diberi nama VCL (Visual Component Library) dan diimplementasikan dengan suatu palet komponen. Beberapa contoh objek yang teerdapat dalam Delphi, yaitu : 1) Frames Membuka kotak dialog (dialog box) dan menampilkan daftar ke dalam projek aktif. 2) MainMenu Membuat system menubar (menu pull-down). 3) Label Membuat tampilan teks.
26
4) Edit Membuat isian teks (text input) dengan daya tampung maksimal 256. 5) Timer Membuat perulangan suatu event dari ketentuan interval. dll. b. Properti Objek – objek yang disediakan oleh Delphi secara keseluruhan memiliki properti. Contoh properti pada Delphi : 1) Caption dan Text Untuk
memuat
tulisan/teks
yang
tampil
dalam
suatu
kontrol/komponen. 2) Enable dan Visible Suatu control dapat disembunyikan dengan mengubah properti visible dengan diberi nilai false. Kontrol atau komponen yang properti enable bernilai false tidak dapat diakses oleh pemakai tetapi dapat diakses secara kode. 3) Font Merupakan properti bersarang (majemuk) yang memiliki sub property di dalamnya. 4) Color dan font.color Properti ini mempengaruhi warna tulisan dan warna latar belakang.
27
5) Cursor Properti ini menentukan bentuk kursor mouse ketika berada di atas suatu kontrol/komponen. dll. c. Event Semua aplikasi windows memakai event-driven untuk mengelola interaksi antar program dan pemakainya. Semua event yang muncul ditimbulkan oleh pemakai atau oleh suatu operasi dalam sistem windows. Dalam Delphi, untuk merespon event tersebut mengaktifkan suatu kerangka prosedur yang disebut prosedur penanganan event. Jika tidak ada prosedur yanng disiapkan untuk merespon event maka event tersebut diabaikan. Contoh event dalam Delphi : 1) OnClick Terjadi ketika pemakai melakukan klik pada tombol kiri mouse. 2) OnDblClick Terjadi ketika pemakai melakukan klik dua kali pada tombol kiri mouse. 3) onChange Dibangkitkan ketika isi dari suatu objek berubah. 4) OnEnter Dibangkitkan ketika objek menerima focus.
28
5) OnKeyDown Dibangkitkan ketika pemakai menekan tombol pada keyboard tepat ketika objek memiliki fokus. dll. d. Method Method adalah sebuah prosedur atau fungsi yang menerangkan tingkah laku yang dimikinya. Contoh method dalam Delphi : 1) Refresh Menyebabkan suatu objek akan digambar ulang secara otomatis. 2) SetFocus Method ini memindahkan fokus input ke kontrol tertentu. Sesuatu masalah yang sering terjadi adalah method ini akan menyebabkan error ketika diterapkan pada kontrol yang sedang di-disable atau dalam keadaan invisible untuk menghindari hal tersebut, method setfocus jangan digunakan pada bagian event load dari form dan perlu dilakukan pengecekan terlebih dahulu terhadap properti enable dan visible dari sebuah objek yang akan diberi method ini. 3) Read Method yang digunakan untuk membaca data dari media storage tertentu seperti file. Read digunakan untuk membaca dan menyimpan byte dari file ke dalam buffer dan akan kembali ke beberapa byte yang belum dibaca. Ia akan terus membaca file
29
sampai seluruh byte terbaca. Byte yang sudah dibaca tidak ikut dibaca lagi. 4) Write Method yang digunakan untuk menulis pada media storage tertentu seperti file. Write berusaha menulis dengan menghitung byte dari buffer dan penulisan file diletakkan setelah byte terakhir pada file. 5) Create Method untuk menyusun sebuah objek atau menginisial data sebelum objek untuk pertama kali digunakan. dll. 4. Kelebihan – kelebihan Borland Delphi Delphi menyediakan fasilitas yang luas mulai dari fungsi untuk membuat form hingga untuk menggunakan beberapa format file basis data yang popular (dBase, Pardox, dsb.). Fasilitas Delphi, antara lain : a. Komponen visual dan non-visual sudah tersedia dalam Delphi. b. Delphi dapat mengakses objek – objek VBX secara langsung. Dalam Delphi VBX dianggap sebagai kumpulan komponen yang dapat digunakan langsung untuk membuat aplikasi. c. Dalam Delphi telah didefinisikan template aplikasi dan template form yang dapat dipakai untuk membuat semua aplikasi dengan cepat. d. Dalam Delphi terdapat beberapa fasilitas yang dapat diatur sesuai kebutuhan, yaitu palet komponen, editor program dan template form.
30
e. Di dalam Delphi program yang dihasilkan benar – benar program yang terkompilasi tanpa interpreter dan pcode sehingga dapat berjalan lebih cepat. f. Program Delphi yang kecil dapat diserahkan dalam bentuk sebuah file EXE tanpa harus menyertakan file DLL. g. Dalam Delphi terdapat Borland Database Engine (BDE) yang digunakan untuk mengakses format file data dalam berbagai macam format. 2.11 Sistem Operasi Windows XP Windows XP adalah jajaran sistem operasi berbasis grafis yang dibuat oleh Microsoft untuk digunakan pada komputer pribadi, yang mencakup komputer rumah dan desktop bisnis, laptop, dan pusat media (Media Center). Nama “XP” adalah kependekan dari “Experience”. Windows XP merupakan penerus Windows 2000 Professional dan Windows Me, dan merupakan versi sistem operasi Windows pertama yang berorientasi konsumen yang dibangun di atas kernel dan arsitektur Windows NT. Windows XP pertama kali dirilis pada 25 Oktober 2001, dan lebih dari 400 juta salinan instalasi digunakan pada Januari 2006, menurut perkiraan seorang analis IDC. Windows XP digantikan oleh Windows Vista, yang dirilis untuk pengguna volume license pada 8 November 2006, dan di seluruh dunia untuk masyarakat umum pada tanggal 30 Januari 2007. Banyak Original Equipment Manufacturer (OEM) dan juga penjual ritel menghentikan produksi perangkat
31
dengan Windows XP pada tanggal 30 Juni 2008. Microsoft sendiri terus menjual Windows XP melalui Custom-built PC (OEM kecil yang menjual komputer rakitan) sampai dengan 31 Januari 2009. Windows XP mungkin akan tetap tersedia bagi para pengguna korporasi dengan volume licensing, sebagai sarana downgrade untuk komputer-komputer yang belum siap menjalankan sistem operasi baru, Windows Vista Business Edition atau Ultimate Edition atau Windows 7 Professional.