1.Nehalem
Intel Nehalem Microarchitecture sudah resmi diluncurkan. Benarkah terjadi perbedaan teknologi dan fitur yang signifikan? Pabrikan Intel masih menjadi yang nomor satu untuk urusan teknologi processor. Dibuktikan dengan diluncurkannya penerus Intel Core Microarchitecture, yaitu Intel Nehalem Mircoarchitecture pada Q4 tahun 2008 yang berjenis processor desktop dengan kode Core i7. Untuk processor server dan mobile yang menggunakan basis Nehalem akan menyusul pada tahun 2009 dan 2010.
Nehalem masih menggunakan metode manufacturing 45 nm yang sama dengan Penryn. Pada IDF tahun 2007, sudah diperlihatkan sistem yang bekerja dengan dua buah processor Nehalem, Nama Nehalem sendiri diambil dari sungai Nehalem yang ada di daerah Oregan, Amerika Serikat. Name code ini mengakhiri daftar panjang perubahan nama yang berawal sejak tahun 2000 yang lalu yang pada saat itu diperkirakan bernama NetBurst.
Teknologi yang Diusung
Nehalem mengalami perubahan yang cukup signifi kan untuk architecturenya yang sudah dianut sejak Pentium Pro tahun 1995 menjadi x86 microarchitecture. Termasuk di sini adalah penggantian komponen yang berbeda untuk pekerjaan yang berbeda pula. Beberapa sumber menjelaskan spesifikasi Nehalem seperti berikut:
- Dua, empat, atau delapan core, dengan 731 juta transistor untuk varian quad core.
- Proses manufacturing 45 nm.
- Memory controller terintegrasi dengan dukungan DDR3 SDRAM dari 1 hingga 6 channel.
- Integrated graphics processor (IGP) sudah terintegrasi di luar die (off-die), namun masih dalam satu CPU.
- Fungsi FSB diganti dengan Intel QuickPath Interconnect.
- MultiThreading dan hyperthreading, di mana pada satu core bisa dijalankan dua threads sekaligus.
- Native quad (4) dan octo core (8) processor. Terdapat di dalam sebuah die.
- Caches yang dimiliki, 32 KB L1 instruction dan 32 KB L1 data cache per core, 256 KB L2 cache per core, 2-3 MB L3 cache per core dibagi dari semua core.
- 33% lebih ramping dibandingkan Conroe.
- Level 2 untuk fitur Branch Predictor dan Level 2 untuk fitur translation Lookaside Buffer.
- Modular blocks of component, di mana untuk setiap core bisa ditambahkan, dikurangi untuk masing-masing market yang berbeda
Kinerja dari Nehalem dilaporkan mengalami peningkatan yang cukup signifikan dibandingkan dengan Penryn processor.

Berikut beberapa keunggulan Nehalem dibandingkan Penryn:
- 1.1x sampai 1.25x single threaded atau 1.2x sampai 2x untuk multithreaded pada keadaan kondisi daya yang normal.
- Penggunaan daya lebih hemat 30% untuk performa yang sama.
- Dengan fitur Core-wise dan clock for clock, Nehalem mampu meningkatkan performa hingga 15%-20% dibandingkan dengan Penryn.
Varian Nehalem
Processor ini akan hadir dalam beberapa varian, baik untuk server, desktop, dan juga notebook. CPU untuk server memiliki codenamed Beckton (empat socket), sedangkan untuk yaang dua socket memiliki codenamed Gainestown, dan single socket (biasa digunakan untuk desktop) ber kode nama Bloomfield.
Prosesor untuk server ini juga sudah mendukung DDR3 Registered. Nehalem Microarchitecture sendiri memiliki 7 codename yang berbeda, terdiri dari 2 processor server, 3 processor desktop, dan 2 processor mobile. Untuk Beckton processor, memiliki 44 bits physical memory address dan 48 bits virtual memory address. Sementara processor yang berada di kelas value dan mainstream, Havendale memiliki FDI bus, dua buah versi IGP yang berbeda dan setidaknya memiliki 6 buah part berbeda, dan 6 nilai frequency yang berbeda pula. Dengan begitu, nantinya diharapkan Havendale bisa menggantikan posisi dual core dan quad core Penryn CPU.
Penerus Nehalem
Belum juga pasar menikmati secara penuh processor Nehalem yang baru saja dilaunch, sudah berhembus kabar bahwa ke depan akan ada penerus dari Nehalem ini, yang disebut dengan nama Westmere atau Nehalem-C. Proses manufacturing sudah menggunakan 32 nm, versi ramping dari Nehalem yang asli. Kemungkinan Westmere akan siap pada tahun 2009, itu jika pihak Intel tidak mengubah lagi roadmap mereka. Namun sepertinya, Westmere ini akan diluncurkan pada tahun 2010, termasuk juga versi mobile-nya. disimpulkan beberapa pengembangan Westmere dibandingkan Nehalem, di antaranya, yaitu:
- Proses manufacturing 32 nm.
- 6 core processor.
- Instruction set yang baru, memberikan peningkatan tiga kali lipat untuk encryption dan decryption rate process Advanced Encryption Standart (AES).
- Pengembangan pada virtualization latency.
- Westmere Integrated graphics kemungkinan akan diluncurkan bersamaan.
- Perkiraan peluncuran, Q4 2009 sampai Januari 2010 untuk mobile chips, 2009 akhir atau awal 2010 untuk DP server chips, H1 2010 untuk high-end desktop chips (Penerus Bloomfield), H2 2010 untuk mainstream dan value desktop chips, jika memang Westmere akan dirilis untuk segmen tersebut
2. Bit Konversi
- 1 byte = 8 bits
- 1 kilobyte (K / Kb) = 2^10 bytes = 1,024 bytes
- 1 megabyte (M / MB) = 2^20 bytes = 1,048,576 bytes
- 1 gigabyte (G / GB) = 2^30 bytes = 1,073,741,824 bytes
- 1 terabyte (T / TB) = 2^40 bytes = 1,099,511,627,776 bytes
- 1 petabyte (P / PB) = 2^50 bytes = 1,125,899,906,842,624 bytes
- 1 exabyte (E / EB) = 2^60 bytes = 1,152,921,504,606,846,976 bytes
3. RISC dan CISC
Cara sederhana untuk melihat kelebihan dan kelemahan dari arsitektur RISC (Reduced Instruction Set Computers) adalah dengan langsung membandingkannya dengan arsitektur pendahulunya yaitu CISC (Complex Instruction Set Computers).
Perkalian Dua Bilangan dalam Memori

Pada bagian kiri terlihat sebuah struktur memori (yang disederhanakan) suatu komputer secara umum. Memori tersebut terbagi menjadi beberapa lokasi yang diberi nomor 1 (baris): 1 (kolom) hingga 6:4. Unit eksekusi bertanggung-jawab untuk semua operasi komputasi. Namun, unit eksekusi hanya beroperasi untuk data-data yang sudah disimpan ke dalam salah satu dari 6 register (A, B, C, D, E atau F). Misalnya, kita akan melakukan perkalian (product) dua angka, satu disimpan di lokasi 2:3 sedangkan lainnya di lokasi 5:2, kemudian hasil perkalian tersebut dikembalikan lagi ke lokasi 2:3.
Pendekatan CISC
Tujuan utama dari arsitektur CISC adalah melaksanakan suatu perintah cukup dengan beberapa baris bahasa mesin sedikit mungkin. Hal ini bisa tercapai dengan cara membuat perangkat keras prosesor mampu memahami dan menjalankan beberapa rangkaian operasi. Untuk tujuan contoh kita kali ini, sebuah prosesor CISC sudah dilengkapi dengan sebuah instruksi khusus, yang kita beri nama MULT. Saat dijalankan, instruksi akan membaca dua nilai dan menyimpannya ke 2 register yag berbeda, melakukan perkalian operan di unit eksekusi dan kemudian mengambalikan lagi hasilnya ke register yang benar. Jadi instruksi-nya cukup satu saja…
MULT 2:3, 5:2
MULT dalam hal ini lebih dikenal sebagai “complex instruction”, atau instruksi yang kompleks. Bekerja secara langsung melalui memori komputer dan tidak memerlukan instruksi lain seperti fungsi baca maupun menyimpan.
Satu kelebihan dari sistem ini adalah kompailer hanya menerjemahkan instruksi-instruksi bahasa tingkat-tinggi ke dalam sebuah bahasa mesin. Karena panjang kode instruksi relatif pendek, hanya sedikit saja dari RAM yang digunakan untuk menyimpan instruksi-instruksi tersebut.
Pendekatan RISC
Prosesor RISC hanya menggunakan instruksi-instruksi sederhana yang bisa dieksekusi dalam satu siklus. Dengan demikian, instruksi ‘MULT’ sebagaimana dijelaskan sebelumnya dibagi menjadi tiga instruksi yang berbeda, yaitu “LOAD”, yang digunakan untuk memindahkan data dari memori ke dalam register, “PROD”, yang digunakan untuk melakukan operasi produk (perkalian) dua operan yang berada di dalam register (bukan yang ada di memori) dan “STORE”, yang digunakan untuk memindahkan data dari register kembali ke memori. Berikut ini adalah urutan instruksi yang harus dieksekusi agar yang terjadi sama dengan instruksi “MULT” pada prosesor RISC (dalam 4 baris bahasa mesin):
LOAD A, 2:3
LOAD B, 5:2
PROD A, B
STORE 2:3, A
Awalnya memang kelihatan gak efisien iya khan? Hal ini dikarenakan semakin banyak baris instruksi, semakin banyak lokasi RAM yang dibutuhkan untuk menyimpan instruksi-instruksi tersebut. Kompailer juga harus melakukan konversi dari bahasa tingkat tinggi ke bentuk kode instruksi 4 baris tersebut.
| CISC | RISC |
| Penekanan pada perangkat keras | Penekanan pada perangkat lunak |
| Termasuk instruksi kompleks multi-clock | Single-clock, hanya sejumlah kecil instruksi |
| Memori-ke-memori: “LOAD” dan “STORE” saling bekerjasama | Register ke register: “LOAD” dan “STORE” adalah instruksi2 terpisah |
| Ukuran kode kecil, kecepatan rendah | Ukuran kode besar, kecepatan (relatif) tinggi |
| Transistor digunakan untuk menyimpan instruksi2 kompleks | Transistor banyak dipakai untuk register memori |
Memisahkan instruksi “LOAD” dan “STORE” sesungguhnya mengurangi kerja yang harus dilakukan oleh prosesor. Pada CISC, setelah instruksi “MULT” dieksekusi, prosesor akan secara otomatis menghapus isi register, jika ada operan yang dibutuhkan lagi untuk operasi berikutnya, maka prosesor harus menyimpan-ulang data tersebut dari memori ke register. Sedangkan pada RISC, operan tetap berada dalam register hingga ada data lain yang disimpan ke dalam register yang bersangkutan.
Persamaan Unjuk-kerja (Performance)
Persamaan berikut biasa digunakan sebagai ukuran unjuk-kerja suatu komputer:
Pendekatan CISC bertujuan untuk meminimalkan jumlah instruksi per program, dengan cara mengorbankan kecepatan eksekusi sekian silus/detik. Sedangkan RISC bertolak belakang, tujuannya mengurangi jumlah siklus/detik setiap instruksi dibayar dengan bertambahnya jumlah instruksi per program.
Penghadang jalan (Roadblocks) RISC
Walaupun pemrosesan berbasis RISC memiliki beberapa kelebihan, dibutuhkan waktu kurang lebih 10 tahunan mendapatkan kedudukan di dunia komersil. Hal ini dikarenakan kurangnya dukungan perangkat lunak.
Walaupun Apple’s Power Macintosh menggunakan chip berbasis RISC dan Windows NT adalah kompatibel RISC, Windows 3.1 dan Windows 95 dirancang berdasarkan prosesor CISC. Banyak perusahaan segan untuk masuk ke dalam dunia teknologi RISC. Tanpa adanya ketertarikan komersil, pengembang prosesor RISC tidak akan mampu memproduksi chip RISC dalam jumlah besar sedemikian hingga harganya bisa kompetitif.

Kemerosotan juga disebabkan munculnya Intel, walaupun chip-chip CISC mereka semakin susah digunakan dan sulit dikembangkan, Intel memiliki sumberdaya untuk menjajagi dan melakukan berbagai macam pengembangan dan produksi prosesor-prosesor yang ampuh. Walaupun prosesor RISC lebih unggul dibanding Intel dalam beberapa area, perbedaan tersebut kurang kuat untuk mempengaruhi pembeli agar merubah teknologi yang digunakan.
Keunggulan RISC
Saat ini, hanya Intel x86 satu-satunya chip yang bertahan menggunakan arsitektur CISC. Hal ini terkait dengan adanya kemajuan teknologi komputer pada sektor lain. Harga RAM turun secara dramatis. Pada tahun 1977, DRAM ukuran 1MB berharga %5,000, sedangkan pada tahun 1994 harganya menjadi sekitar $6. Teknologi kompailer juga semakin canggih, dengan demikian RISC yang menggunakan RAM dan perkembangan perangkat lunak menjadi semakin banyak ditemukan.
sumber:http://agfi.staff.ugm.ac.id/blog/index.php/2008/12/risc-vs-cisc/
4. OSI Layer VS TCP/IP
Persamaan Model OSI dan TCP/IP :
1) Keduanya memiliki layer (lapisan).
2) Sama – sama memiliki Application layer meskipun memiliki layanan yang berbeda.
3) Memiliki transport dan network layer yang sama.
4) Asumsi dasar keduanya adalah menggunakan teknologi packet switching.
5) Dua-duanya punya transport dan network layer yang bisa diperbandingkan.
6) Dua-duanya menggunakan teknologi packet-switching, bukan circuit-switching ( Teknologi Circuit-Switching digunakan pada analog telephone).
Perbedaan Model OSI dan TCP/IP :
1) TCP/IP menggabungkan presentation dan session layers kedalam application layers.
2) TCP/IP menggabungkan OSI-data link dan physical layers kedalam network access layer.
3) TCP/IP Protocol adalah standar dalam pengembangan internet.
Prinsip Kerja OSI Layer :
Ketika data ditransfer melalui jaringan, sebelumnya data tersebut harus melewati ke-tujuh layer dari satu terminal, mulai dari layer aplikasi sampai physical layer, kemudian di sisi penerima, data tersebut melewati layer physical sampai aplikasi. Dari masing-masing layer mempunyai tugas tersendiri demi kelancaran data yang akan dikirimkan. Berikut adalah deskripsi singkat beberapa tugas dari masing-masing layer dari layer application sampai physical.
Prinsip Kerja TCP/IP :
- Untuk memindahkan data antara dua komputer yang berbeda dalam suatu jaringan yang terdiri dari banyak komputer, dibutuhkan alamat tujuan dan perantara untukmemindahkan sinyal elektronik pembentuk data secara aman dan langsung.
- Internet menggunakan protokol untuk menjamin sampainya data secara aman di tempat tujuan.
- Saat seorang pengguna Internet mengirim sekelompok teks ke mesin lain, TCP/IP mulai bekerja. TCP membagi teks tersebut menjadi paket-paket data kecil, menambahkan beberapa informasi (dapat dianggap sebagai pengiriman barang), sehingga computer penerima memastikan bahwa paket yang diterimanya tidak mengalami kerusakan sepanjang pengiriman. IP menambahkan label yang berisikan informasi alamat pada paket tersebut.
- Deretan paket-paket TCP/IP berjalan menuju tujuan yang sama dengan menggunakan berbagai jalur yang berbeda. Sebuah perangkat khusus yang disebut router dipasang di titik persimpangan antar jaringan dan memutuskan jalur mana yang paling efisien yang menjadi langkah berikut dari sebuah paket. Router membantu mengatur arus lalu lintas di Internet dengan membagi beban, sehingga menghindari kelebihan beban pada suatu bagian dari sistem yang ada.
- Saat paket-paket TCP/IP tiba di tempat tujuannya, komputer akan membuka label alamat IP lalu menggunakan daftar pengiriman yang ada pada paket TCP untuk memeriksa apakah ada kerusakan paket yang terjadi selama pengiriman, dan menyusun kembali paket-paket tsb menjadi susunan teks seperti aslinya. Saat komputer penerima menemukan paket yang rusak, komputer tsb akan meminta komputer pengirim untuk mengirim salinan baru dari paket yang rusak.
- Sebuah perangkat khusus yang disebut gateway memungkinkan beragam tipe jaringan yang ada di horison elektronik untuk berkomunikasi dengan Internet menggunakan TCP/IP. Gateway menerjemahkan protokol asli jaringan komputer tersebut menjadi TCP/IP dan sebaliknya.
- Bagi seorang pemakai, Internet hadir seperti jaringan global raksasa yang tidak terbatas, yang langsung merespon jika diminta. Komputer, gateway, router, dan protokol yang membuat ilusi ini bekerja.
PERTEMUAN 2
1. Layer 3 Switching
Layer 3 Switching memungkinkan komunikasi antar VLAN atau antar segmen jaringan dengan kecepatan tinggi mendekati kecepatan komunikasi kabel Ethernet pada umumnya. Komunikasi antar jaringan pada layer 3 biasa menggunakan piranti Router yang umum digunakan untuk komunikasi antar site lewat WAN Cloud. Salah satu piranti Layer 3 Switching adalah GSM7324 NETGEAR layer 3 Switch. Layer 3 Switching sangat berguna untuk mengurangi latensi dan meningkatkan kinerja komunikasi antar segmen di suatu jaringan berskala business sedang sampai jaringan corporasi yang complex.
GSM7324 NETGEAR layer 3 SwitchPenggunaan layer 3 Switching akan dapat membantu menyelesaikan masalah latensi komunikasi antar segmen dan juga batasan kinerja yang biasa digunakan oleh paket filtering yang menggunakan routing berdasarkan processor. Layer 3 Switching adalah technology LAN yang digunakan untuk meningkatkan kinerja routing antar VLAN dan tercapainya kecepatan forwarding transparent. NETGEAR GSM7324 layer 3 Switch memberikan semua akan kebutuhan Switching Layer 3.
Kebutuhan minimum standard untuk kinerja LAN dan Layer 3 Switching adalah sebagai berikut:
- Semua Links harus dimaksimalkan untuk throughput dan semua masalah bottleneck harus diselesaikan. Jika terdeteksinya masalah bottlenecks maka perlu dipertimbangkan untuk meng-upgrade link backbone yang bersifat critis dan segment2 server juga perlu diupgrade. Tentunya ada mekanisme untuk menganalisa troughput dari Switcing dan Routing.
- Untuk mencapai suatu kinerja tinggi dalam komunikasi antar LAN atau antar VLAN maka solusi pemakaian Layer 3 Swicthing sangat diperlukan.
- Suatu Layer 3 Swicting setidaknya menawarkan rate forwarding pada atau diatas 5 sampai 10 Mpps (Million packets per second) atau bisa diskalakan pada kecepatan yang didapatkan pada jaringan LAN 100/1000 Mbps.
- Suatu layer 3 Switching setidaknya juga memberikan access-list extended (paket filtering) Checking In Silicon untuk meningkatkan kecepatan forwarding paket dan mengurangi latensi jaringan. Link jaringan kecepatan tinggi bisa menggunakan layanan Ethernet Gigabit. Kecepatan Links lebih jauh bisa ditingkatkan dengan menggunakan teknologi Ether Channel technologies (FEC\GEC). Teknologi ini bisa memberikan pipa data yang lebar masing2 sekitar 800 Mbps (untuk FEC) atau 8 Gbps (untuk GEC)
Multi-layer switching (MLS) adalah Switching hardware yang bisa melakukan Switching layer-2, layer-3 dan layer-4 atau bahkan layer lebih tinggi lainnya. Hal ini adalah sangat penting jika dalam satu perangkat tunggal diperlukan untuk memberikan switching dan routing didalam LAN dengan kinerja yang tinggi. Layer-4 Switching adalah penting jika keterbatasan masalah kinerja dan latensi paket filtering lewat extended access-list perlu diatasi.
Layer 3 Switching DiagramPerforma jaringan seharusnya di optimalkan dengan cara yang effektif agar memadai untuk kebutuhan kinerja jaringan saat ini maupun dimasa mendatang. Bottlenecks jaringan seharusnya di selesaikan agar kinerja jaringan menjadi lebih baik begitu juga response time aplikasi.
Dengan tidak menggunakan Layer 3 Switching antar segmen jaringan performa tinggi, maka bottleneck routing akan tidak terhindarkan.
NETGEAR GSM7324 layer 3 Switch
Berikut ini adalah GSM7324 Netgear layer 3 Switch yang merupakak Layer 3 Switch penuh dengan fungsional Gigabit dengan harga terjangkau. GSM7324 Netgear layer 3 Switch ini adalah switch dengan management full memberikan fitur Layer 3 yang anda harapkan, troughput maksimal dan fleksibilitas tuntutan jaringan2. GSM7324 Netgear layer 3 Switch sangat ideal untuk backbone links Swicthes kecepatan tinggi, server Gigabit, atau untuk tuntutan jaringan semua Gigabit.
GSM7324 Netgear layer 3 Switch memberikan switching fungsional Layer-2 dan Layer-3 yang bisa di manage dikombinasikan dengan kualitas layanan L2/L3/L4, pembekalan bandwidth, dan fitur access control memungkinkan telephoni VoIP, video converancing, dan aplikasi hemat biaya lainnya. Fitur berikut ini menjadikan GSM7324 Netgear layer 3 Switch sebagai inti semua tuntutan jaringan Gigabit.
- Kemampuan routing: routing IPv4 pada kecepatan Ethernet, dengan routing sampai 512 route per unit; VRRP (IP redundancy), ICMP, RIP I dan RIP II, OSPF, dan DHCP/BOOTP relay
- Kemampuan Switching: Port trunking, proteksi STP broadcast storm, extensive VLAN support, IGMP snooping, Rapid Spanning Tree, dan link aggregation
- Fitur kualitas layanan: DiffServ, access control lists, dan pembekalan bandwidth menggunakan informasi L2, L3, dan L4.
Harga sangat terjangkau, GSM7324 Netgear Layer 3 Switchmemberikan fleksibilitas koneksi dari 12 / 24 port Gigabit atau dengan modul SFP (small form-factor pluggable) dijual terpisah.
2.Allgoritma Enkripsi dan deskripsi
a. Chosen-Plaintext AttackChosen-Plaintext attack adalah salah satu cara “code breaking” (cryptanalysis) dengan cara membandingkan dan menganalisa contoh plaintext dan ciphertextnya. Dalam chosen plaintext attack, code breaker memiliki kebebasan untuk menentukan plaintext yang diiginkannya.
Untuk mendapatkan contoh plaintext dan ciphertextnya, saya melakukan langkah berikut ini setelah login sebagai seorang user biasa:
- Ubah Password
- Lihat ciphertext dari tabel user dengan SQLinjection
Apa saja plaintext yang saya pilih? Berikut chosen-plaintext dan ciphertextnya yang saya pilih:
| Plaintext | Ciphertext |
|---|---|
| d | 92254325 |
| dd | 831214121412 |
| ddd | 6180128012807280 |
| dddd | 15013601660186017601 |
| abcd1234 | 433034273428242944308379538023819382 |
Saya sengaja memilih plaintext berurutan (d,dd,ddd,dddd) untuk melihat apa ada pola yang muncul. Perhatikan pada plaintext “dd”, ciphertextnya adalah 831214121412, terlihat pola berulang pada angka 412 sebanyak 2x. Dalam ciphertext ini saya menyimpulkan bahwa 412 adalah kode untuk karakter ‘d’.
Untuk plaintext “ddd”, ciphertextnya adalah 6180128012807280, terlihat pola berulang pada angka 280 sebanyak 3 kali. Dalam ciphertext ini saya menyimpulkan bahwa 280 adalah kode untuk karakter ‘d’.
Begitu juga pada plaintext “dddd”, ciphertextnya adalah 15013601660186017601, dengan pola berulang pada angka 601 sebanyak 4 kali. Dalam ciphertext ini, saya menyimpulkan bahwa 601 adalah kode untuk karakter ‘d’.
Ingat bahwa untuk setiap penambahan satu karakter plaintext membuat ciphertext bertambah 4 digit. Ternyata 4 digit tersebut adalah satu digit apapun diikuti dengan 3 digit kode karakter. Chosen plaintext dalam contoh sebelumnya saya pecah-pecah menjadi kelompok 4 digit dipisahkan dengan karakter ‘#’ dan dari 4 digit tersebut saya pecah dua menjadi 1 digit dan 3 digit dengan karakter ‘-’.
| Plaintext | Ciphertext | Kode |
|---|---|---|
| d | 9-225#4-325 | 325 = ‘d’ |
| dd | 8-312#1-412#1-412 | 412 = ‘d’ |
| ddd | 6-180#1-280#1-280#7-280 | 280 = ‘d’ |
| dddd | 1-501#3-601#6-601#8-601#7-601 | 601 = ‘d’ |
Kini saya harus mengetahui bagaimana hubungan antara kode yang berurutan, untuk itu saya memilih plaintext “abcd1234″ dengan ciphertext 433034273428242944308379538023819382. Mari kita pecah ciphertext tersebut menjadi kelompok 4 digit seperti tabel di atas.
4-330#3-427#3-428#2-429#4-430#8-379#5-380#2-381#9-382
Dari pengelompokan tersebut kita bisa simpulkan bahwa:
427 = ‘a’, 428 = ‘b’, 429 = ‘c’, 430 = ‘d’, 379 = ’1′, 380 = ’2′, 381=’3′, 382=’4′
Perhatikan bahwa kode-kode tersebut sengaja saya pilih berurut ‘a’->’b’->’c’->’d’ dan ternyata ciphertextnya pun ikut berurut 427->428->429->430. Begitu juga untuk ’1′->’2′->’3′->’4′, ciphertextnya juga berurut 379->380->381->382. Saya mencurigai bahwa enkripsi ini memakai kode ASCII karena memang kode ASCII untuk ‘abcd’ dan ’1234′ berurutan.Kode ASCII untuk ‘a’=97, ‘b’=98,’c’=99,’d’=100,’1′=49,’2′=50,’3′=51,’4′=52.
Terlihat ada jarak yang cukup jauh antara kode ASCII dan kode pada ciphertext. Contohnya ‘a’ dengan ASCII 97, dalam ciphertext dikodekan dengan 427, selisihnya 427-97 adalah 330. Begitu juga dengan ’1′ dengan ASCII 49, dalam ciphertext dikodekan menjadi 379, dengan selisih 379-49 adalah 330. Ternyata kalau dilihat semua kode pada ciphertext juga berjarak 330 dengan kode ASCII. Pertanyaannya, darimana angka 330 ini muncul?
Mari kita lihat sekali lagi ciphertext dari ‘abcd1234′ (setelah dikelompokkan 4 digit):
4-330#3-427#3-428#2-429#4-430#8-379#5-380#2-381#9-382
Adakah angka 330 dalam ciphertext tersebut? Aha, ternyata ada! Ingat bahwa plaintext satu karakter, ciphertextnya adalah 8 digit, padahal tiap karakter dikodekan dalam 4 digit, jadi ada kelebihan 4 digit. Ternyata pada kelompok 4 digit pertama mengandung offset dengan kode ASCII, yaitu pada digit ke-2 hingga ke-4.
Jadi sekarang misteri enkripsi ini terpecahkan. Mari kita coba dekrip contoh ciphertext yang saya kumpulkan di awal:
- 804881451156416021528145
- 9436353935332546555225378546953924846491
Pada akhirnya dengan mengetahui teknik enkripsi yang dipakai, saya berhasil mendapatkan password seseorang dengan hak administrator. Tidak lama kemudian GAME OVER, webshell uploaded
Kesimpulan
Pelajaran yang bisa diambil dari kasus tersebut adalah bahwa membuat algoritma kriptografi yang kuat tidaklah mudah, jangan pernah memakai enkripsi buatan sendiri, walaupun algoritmanya anda rahasiakan. Selalu gunakan algoritma enkripsi terbuka yang sudah teruji oleh para ahli.
Sedangkan untuk password, sebaiknya jangan gunakan enkripsi, tapi gunakan one-way hash function yang kuat seperti SHA1. Enkripsi tidak cocok dipakai untuk menyimpan password karena ketika terjadi compromised, maka semua password yang ada di tabel akan bisa diambil attacker dengan cara menjalankan rutin dekripsi yang pasti tersedia di salah satu file script seperti PHP pada web tersebut.
Walaupun algoritma dekripsinya anda rahasiakan, suatu saat ketika terjadi compromised, seorang attacker akan bisa melakukan dekripsi dengan membaca source code php untuk men-dekrip password. Biasanya rutin dekripsinya tidak jauh dari file php yang terkait dengan halaman login.
Sumber:http://www.ilmuhacking.com/cryptography/memecahkan-kriptografi-dengan-chosen-plaintext-attack/
b. Algoritma subtitusi (Caesar cipher) —|
========== Enkripsi —|
Pada algoritma caesar klasik, setiap huruf plainteks diganti dengan barisan
huruf berikutnya sesuai dengan kunci yang diberikan.
contoh:
plainteks = “aku”
kunci = 7 (artinya setiap huruf cipher teks akan
diganti dengan 7 huruf berikutnya)
maka cipherteks:
a –> 7 = h
k –> 7 = r
u –> 7 = b
jadi cipherteks dari “aku” adalah “hrb”
dalam perhitungan matematis dinyatakan sebagai:
C = (P + K) mod 26
dimana–> C : Cipherteks
P : Plainteks
K : Kunci
Jadi secara matematis plainteks “aku” diatas di-enkripsi
dengan cara:
a=1 , C = ( 1 + 7 ) mod 26=8, 8=h
k=12, C = ( 12 + 7 ) mod 26=19,19=r
u=21, C = ( 21 + 7 ) mod 26=2, 2=b
========= Dekripsi —|
Untuk melakukan dekripsi pesan pada algoritma subtitusi, kita mengganti setiap
huruf cipherteks dengan huruf sejauh kunci sebelum huruf cipher tersebut,
contoh:
plainteks = “hrb”
kunci = 7 (artinya setiap huruf cipher teks akan
diganti dengan 7 huruf sebelumnya)
maka cipherteks:
h <– 7 = a
r <– 7 = k
b C : Cipherteks
P : Plainteks
K : Kunci
Jadi secara matematis plainteks “aku” diatas di-enkripsi
dengan cara:
h=8 , C = ( 8 – 7 ) mod 26=1, 1=a
r=18, C = ( 18 – 7 ) mod 26=11, 11=k
b=2, C = ( 2 – 7 ) mod 26=21, 20=u
========= Kelemahan Algoritma Subtitusi —|
Kelemahan utama dari algoritma subtitusi adalah frekuensi kemunculan setiap
huruf atau karakter pada chperteks yang mewakili huruf atau karakter tertentu
dari plainteks. Dengan hal tersebut, attacker dapat membuat tabel sederhana,
misalnya mengganti semua huruf atau karakter yang paling sering muncul dengan
huruf vokal (a, i, u, e, o) pada chiperteks yang dia peroleh
c. Algoritma XOR—|
Enkripsi/Dekripsi
secara deskriptif, algoritma XOR mengenkrip plainteks dengan cara melakukan
operasi XOR terhadap plainteks dengan kunci,
contoh:
Enkripsi:
A dalam notasi biner : 0 1 0 0 0 0 0 1
kunci B : 0 1 0 0 0 0 1 0
————————————– XOR
Jadi cipherteks : 0 0 0 0 0 0 1 1 atau dalam asci: 3
Dekripsi::
3 dalam notasi biner : 0 0 0 0 0 0 1 1
kunci B : 0 1 0 0 0 0 1 0
————————————– XOR
Jadi cipherteks : 0 1 0 0 0 0 0 1 atau dalam asci: A
d. Algortima RC4 —|
========= Pendahuluan —|
RC4 adalah algoritma yang dibuat oleh Ron Rivest ( RC sendiri adalah singkatan
dari Ron’s Code) RC4 merupakan salah satu chiper jenis aliran yang digunakan
oleh SSL ( Secure Socket Layer) dan beberapa protocol security yang lainnya.
Pengertian Stream Cipher / Cipher Aliran
” Algoritma kriptografi yang beroperasi dalam bentuk bit tunggal,
dimana setiap prosess enkripsi dan deskripsi dilakukan per bit, yang
artinya prosess enkripsi dan deskripsi dilakukan satu bit setiap kali”
========= Enkripsi/Deskripsi —|
———————————————————-//
for (i = 0; i < 256; i++)
S[i] = i;
for (i = j = 0; i S[255]
2. Jika panjang kunci kurang dari 256 byte,lakukan padding(penambahan byte semu)
sehingga panjang kunci sama dengan 256 byte
3. Lakukan permutasi nilai-nilai dalam larik S
4. Pembangkitan Aliran kunci.
e. Algortima Combo (Combo Encryption) —|
Pola enkripsi combo yang saya pakai alurnya seperti berikut:
1. Diberikan sebuah kunci dengan maximal panjang 256 bit
2. Hitung panjang dari karakter kunci kemudian tambahkan dengan interget
tertentu
printf(“\nMasukan kunci anda:”);gets(kunci);
n = (strlen((char*)kunci));
y = n +1024;
3. Lakukan inisialisasi pada kunci yang diberikan dengan algoritma RC4
rc4_init(kunci, n);
int z;
for ( z = 0; z < n; z++){
rc4_gen[z] = (kunci[z]) ^ (rc4_output());
}
4. Enkripsi pertama dengan algoritma Subtitusi
5. Enkripsi kedua dengan algoritma XOR
6. Enkripsi ketiga dengan XOR yang kuncinya telah diinisialisasi oleh RC4
cipher = (plain + y ) % 256 ;
cipher2 = cipher ^ kunci[x];
rc4 = rc4_gen[x] ^ cipher2;
putc(rc4,output);
Proses deskripsi dilakukan dengan membalikan prosess enkripsi. Hal diatas adalah
salah satu contoh pola super enkripsi, dari hal tersebut anda bisa membuat
variasi maupun bentuk baru dari algoritma yang ada.

terima kasih gan atas ilmu nya....
BalasHapus