Friday, October 18, 2019

KEAMANAN KOMPUTER (M7)

KEAMANAN DEVIL PROGRAM

1.Program ada yang memerlukaninang(host program) dan 
   ada yang tidak memerlukan program inang.
2.Malicious program
   –> program jahat

Tipe-tipe Program Jahat:
1.Bacteria
2.Logic Bomb
3.Trapdoor
4.Trojan Horse
5.Virus

6.Worm

Bacteria
•Program yang mengkonsumsi sumber daya sistem dengan 
 mereplikasi dirinya sendiri.
•Program bacteria yang sederhana bisa mengeksekusi dua kopian 
 dirinya secara simultan multiprogramming.

Logic Bomb
•Logika yang ditempelkan pada program komputer agar 
 memeriksa suatu kumpulan kondisi disistem.
•Logikakan mengeksekusi fungsi yang menghasilkan aksi-aksi 
 tidak terotorisasi pada saat kondisi yang dimaksud ditemukan.

Trapdoor
•Titik masuk tidak terdokumentasi tanpa otentikasi normal
•Berfungsi untuk mencari kesalahan program.
•Debugging dan testing biasanya dilakukan pemogram saat 
 mengembangkan aplikasi.

Trojan Horse
•Program yang tidak terdokumentasi ditempelkan dalam satu 
 program sehingga ketika dijalankan maka program tak 
 terdokumentasi tereksekusi bersamaan.
•Program yang ditempeli trojanhorse biasanya secara 
 otomatisakan mengubah ijin akses.
•Trojan horse sulit terdekteksi karena kompilator yang dimodifikasi.

Virus
•Kode yang ditempelkan dalam satu program menyebabkan 
 penggandaan dirinya disisipkan kesatu program lain atau lebih 
 dengan cara memodifikasi program-program itu.
•Dapat menginfeksi program sehingga seringkali merusak sistem 
 komputer serta menghapus file,partisidisk / mengacaukan program.
•Kemampuan mengakses komputer dan layanan layanan komputer 
 lainnya merupakan fasilitas sempurna untuk penyebaran virus.

Siklus Hidup Virus
1.Fase tidur (dormant phase)
2.Fase propagasi (propagation phase)
3.Fase pemicuan (triggering phase)

4.Fase eksekusi (execution phase)

Klasifikasi Tipe Virus
•Parastic Virus
•Memory resident virus
•Boot sector virus
•Stealth virus

•Polymorphic virus

Worm
•Program yang mereplikasi dirinya dan mengirim kopian dirinya 
 dari komputer kekomputer lewat hubungan jaringan.
•Memiliki kemampuan eksekusi jarak jauh(remote execution capability) 
 yaitu worm mengeksekusi kopian dirinya disistem lain.

Anti Virus
•Pencegahan terhadap ancaman virus adalah solusi paling ideal.

•Setelah itu proses pendekatan seperti: Deteksi, Identifikasi, 
 dan Penghilangan.

GenerasiPerkembanganAntivirus
1.Generasi Pertama
   =>Scanner sederhana, Menscanprogram untuk menemukan 
       penanda (signature) virus.
2.Generasi Kedua
   =>Scanner pintar(heuristic scanner), tidak hanya menggunakan 
       penanda tetapi juga aturan aturan pintar dengan mencari fragmen-
      fragmen kodeyang sering merupakan bagian dari virus.
3.Generasi Ketiga
   =>Berisi jebakan-jebakan aktivitas (activity trap) untuk 
       mengidentifikasi kumpulan intruksi yang berjumlah sedikit dan 
       yang mengidentifikas iadanya usaha infeksi.
4.Generasi Keempat
   =>Proteksi penuh (full fetured protection).


Sumber : Diolah dari berbagai sumber

    
                  >>>>>TERIMAKASIH<<<<<

Saturday, October 12, 2019

PENJADUAL CPU (SISTEM OPERASI)

PENJADUAL CPU

Penjadual CPU adalah basis dari multi programming sistem operasi. 
Dengan men-switch CPU diantara proses. Akibatnya sistem operasi 
bisa membuat komputer produktif. Dalam bab ini kami akan 
mengenalkan tentang dasar dari konsep penjadual dan beberapa 
algoritma penjadual. Dan kita juga memaparkan masalah dalam memilih 
algoritma dalam suatu sistem.


A.KONSEP DASAR
Tujuan dari multi programming adalah untuk mempunyai proses berjalan 
secara bersamaan, untuk memaksimalkan kinerja dari CPU. 
Untuk sistem uniprosesor, tidak pernah ada proses yang berjalan lebih
dari satu. Bila ada proses yang lebih dari satu maka yang lain harus 
mengantri sampai CPU bebas. Ide dari multi porgamming sangat 
sederhana. Ketika sebuah proses dieksekusi yang lain harus menunggu
sampai selesai. Di sistem komputer yang sederhana CPU akan 
banyak dalam posisiidle.Semua waktu ini sangat terbuang. 
Dengan multiprogamming kita mencoba menggunakan waktu secara
produktif. Beberapa proses di simpan dalam memori dalam satu waktu. 
Ketika proses harus menunggu. Sistem operasi mengmbil CPU untuk 
memproses proses tersebut dan meninggalkan proses yang sedang
dieksekusi. Penjadual adalah fungsi dasar dari suatu sistem operasi. 
Hampir semua sumber komputer dijadual sebelum digunakan. 
CPU salah satu sumber dari komputer yang penting yang menjadi
sentral dari sentral penjadual di sistem operasi.

1.Siklus Burst CPU-I/O
Keberhasilan dari penjadual CPU tergantung dari beberapa properti 
prosesor. Proses eksekusi mengandung siklus CPU ekskusi dan 
I/o Wait. Proses hanya akan bolak-balik dari dua state ini. 
Proses eksekusi dimulai dengan CPU Burst, setelah itu diikuti oleh
I/O burst, dan dilakukan secara bergiliran. Durasi dari CPU bust ini 
ditelah diukur secara ekstensif, walau pun mereka sangat berbeda
dari proses ke proses. Mereka mempunyai frekeunsi kurva yang sama.


2.Penjadual CPU
Kapan pun CPU menjadi idle, sistem opersai harus memilih salah satu 
proses untuk masuk kedalam antrian ready (siap) untuk dieksekusi. 
Pemilihan tersebut dilakukan oleh penjadual short term. Penjadual
memilih dari sekian proses yang ada di memori yang sudah siap 
dieksekusi, den mengalokasikan CPU untuk mengeksekusinya
Penjadual CPU mungkin akan dijalankan ketika proses:
1. Berubah dari running ke waiting state.
2. Berubah dari running ke ready state.
3. Berubah dari waiting ke ready.
4. Terminates.
Penjadual dari no 1 sampai 4 non premptive sedangkan yang lain 
premptive. Dalam penjadual nonpreemptive sekali CPU telah 
dialokasikan untuk sebuah proses, maka tidak bisa di ganggu, 
penjadual model seperti ini digunakan oleh Windows 3.x; 
Windows 95 telah menggunakan penjadual preemptive.

3.Dispatcher
Komponen yang lain yang terlibat dalam penjadual CPU adalan 
dispatcher. Dispatcher adalah modul yang memberikan kontrol 
CPU kepada proses yang fungsinya adalah:
1. Alih Konteks
2. Switching to user mode.
3. Lompat dari suatu bagian di progam user untuk mengulang progam.
Dispatcher seharusnya secepat mungkin.

4.Kriteria Penjadual
Algoritma penjadual CPU yang berbeda mempunyai property yang 
berbeda. Dalam memilih algoritma yang digunakan untuk 
situasi tertentu, kita harus memikirkan properti yang berbeda untuk
algoritma yang berbeda. Banyak kriteria yang dianjurkan utnuk 
membandingkan penjadual CPU algoritma. Kritria yang biasanya 
digunakan dalam memilih adalah:
1. CPU utilization: kita ingin menjaga CPU sesibuk mungkin. 
    CPU utilization akan mempunyai range dari 0 ke 100 persen. 
    Di sistem yang sebenarnya seharusnya ia mempunyai range dari 
    40 persen sampai 90 persen.
2. Throughput: jika CPU sibuk mengeksekusi proses, jika begitu 
    kerja telah dilaksanakan.Salah satu ukuran kerja adalah 
    banyak proses yang diselesaikan per unit waktu, disebut througput.
    Untuk proses yang lama mungkin 1 proses per jam; untuk proses 
    yang sebentar mungkin 10 proses perdetik.
3. Turnaround time: dari sudur pandang proses tertentu, kriteria yang 
    penting adalah berapa lama untuk mengeksekusi proses tersebut. 
    Interval dari waktu yang diizinkan dengan waktu yang dibutuhkan 
    untuk menyelesaikan sebuah prose disebut turn-around time. 
    Trun around time adalah jumlah periode untuk menunggu 
    untuk bisa ke memori, menunggu di ready queue, eksekusi di CPU,
    dan melakukan I/O.
4. Waiting time: algoritma penjadual CPU tidak mempengaruhi waktu 
    untuk melaksanakan proses tersebut atau I/O; itu hanya 
    mempengaruhi jumlah waktu yang dibutuhkan proses di antrian ready.
    Waiting time adalah jumlah periode menghabiskan di antrian ready.
5. Response time: di sistem yang interaktif, turnaround time mungkin 
    bukan waktu yang terbaik untuk kriteria. Sering sebuah proses bisa 
    memproduksi output diawal, dan bisa meneruskan hasil yang baru 
    sementara hasil yang sebelumnya telah diberikan ke user. 
    Ukuran yang lain adalah waktu dari pengiriman permintaan sampai 
    respon yang pertama di berikan. Ini disebut response time, yaitu
    waktu untuk memulai memberikan respon, tetapi bukan waktu yang 
    dipakai output untu respon tersebut. Biasanya yang dilakukan 
    adalah memaksimalkan CPU utilization dan throughput, dan minimalkan
   turnaround time, waiting time, dan response time dalam kasus 
   tertentu kita mengambil rata rata.


B.Algoritma Penjadual First Come, First Served
Penjadual CPU berurusan dengan permasalahan memutuskan 
proses mana yang akan dillaksanakan, oleh karena itu 
banyak bermacam algoritma penjadual, di seksi ini kita akan 
mendiskripsikan beberapa algoritma. Ini merupakan algoritma 
yang paling sederhana, dengan skema proses yang meminta CPU
mendapat prioritas. Implementasi dari FCFS mudah diatasi dengan 
FIFO queue.

C.Penjadual Shortest Job First
Salah satu algoritma yang lain adalah Shortest Job First. 
Algoritma ini berkaitan dengan waktu setiap proses. 
Ketika CPU bebas proses yang mempunyai waktu terpendek untuk
menyelesaikannya mendapat prioritas. Seandainya dua proses 
atau lebih mempunyai waktu yang sama maka FCFS algoritma
digunakan untuk menyelsaikan masalah tersebut. Ada dua skema d
alam SJFS ini yaitu:
1. nonpremptive—ketika CPU memberikan kepada proses itu tidak 
    bisa ditunda hingga selesai.
2. premptive—bila sebuah proses datang dengan waktu prose lebih 
    rendah dibandingkan dengan waktu proses yang sedang 
    dieksekusi oleh CPU maka proses yang waktunya lebih rendah
    mendapatkan prioritas. Skema ini disebut juga Short - 
    Remaining Time First (SRTF).

SJF algoritma mungkin adalah yang paling optimal, karena ia 
memberikan rata-rata minimum waiting untuk kumpulan dari 
proses yang mengantri. Dengan mengeksekusi waktu yang paling
pendek baru yang paling lama. Akibatnya rata-rata waktu menunggu 
menurun.Hal yang sulit dengan SJF algoritma adalah mengetahui 
waku dari proses berikutnya. Untuk penjadual long term (lama) 
di sistem batch, kita bisa menggunakan panjang batas waktu proses yg
user sebutkan ketika dia mengirim pekerjaan. Oleh karena itu 
sjf sering digunakan di penjadual long term. Walau pun SJF 
optimal tetapi ia tidak bisa digunakan untuk penjadual CPU short term.
Tidak ada jalan untuk mengetahui panjang dari CPU burst berikutnya. 
Salah satu cara untuk mengimplementasikannya adalah dengan 
memprediksikan CPU burst berikutnya. Contoh SJF premptive:
SJF algoritma mungkin adalah yang paling optimal, karena ia 
memberikan rata-rata minimum waiting untuk kumpulan dari proses 
yang mengantri.

D.Penjadual Prioritas
Penjadualan SJF (Shortest Job First) adalah kasus khusus untuk 
algoritma penjadual Prioritas.Prioritas dapat diasosiasikan 
masing-masing proses dan CPU dialokasikan untuk proses dengan
prioritas tertinggi. Untuk proritas yang sama dilakukan dengan FCFS.
Ada pun algoritma penjadual prioritas adalah sebagai berikut:
• Setiap proses akan mempunyai prioritas (bilangan integer). 
  Beberapa sistem menggunakan integer dengan urutan kecil untuk 
  proses dengan prioritas rendah, dan sistem lain juga bisa menggunakan
  integer urutan kecil untuk proses dengan prioritas tinggi. Tetapi 
  dalam teks ini diasumsikan bahwa integer kecil merupakan 
  prioritas tertinggi.
• CPU diberikan ke proses dengan prioritas tertinggi (integer kecil 
   adalah prioritas tertinggi).
• Dalam algoritma ini ada dua skema yaitu:
1. Preemptive: proses dapat di interupsi jika terdapat prioritas lebih 
    tinggi yang memerlukan CPU.
2. Nonpreemptive: proses dengan prioritas tinggi akan mengganti 
    pada saat pemakain time slice habis.
• SJF adalah contoh penjadual prioritas dimana prioritas ditentukan 
  oleh waktu pemakaian CPU berikutnya. Permasalahan yang muncul 
  dalam penjadualan prioritas adalah indefinite blocking atau starvation.
• Kadang-kadang untuk kasus dengan prioritas rendah mungkin 
  tidak pernah dieksekusi. Solusi untuk algoritma penjadual prioritas 
  adalah aging
• Prioritas akan naik jika proses makin lama menunggu waktu jatah CPU.

E.Penjadual Round Robin
Algoritma Round Robin (RR) dirancang untuk sistem time sharing
Algoritma ini mirip dengan penjadual FCFS, namun preemption 
ditambahkan untuk switch antara proses. Antrian ready diperlakukan 
atau dianggap sebagai antrian sirkular. CPU menglilingi antrian ready 
dan mengalokasikan masing-masing proses untuk interval waktu 
tertentu sampai satu time slice/ quantumBerikut algritma untuk 
penjadual Round Robin:
• Setiap proses mendapat jatah waktu CPU (time slice/ quantum
  tertentu Time slice/quantum umumnya antara 10-100 milidetik.
 1.Setelah time slice/ quantum maka proses akan di-preempt dan 
    dipindahkan ke antrian ready.
 2.Proses ini adil dan sangat sederhana.
• Jika terdapat n proses di "antrian ready" dan waktu quantum 
  q (milidetik), maka:
  1.Maka setiap proses akan mendapatkan 1/n dari waktu CPU.
  2.Proses tidak akan menunggu lebih lama dari: (n-1)q time units.
• Kinerja dari algoritma ini tergantung dari ukuran time quantum
  1.Time Quantum dengan ukuran yang besar maka akan sama 
     dengan FCFS
  2.Time Quantum dengan ukuran yang kecil maka time quantum 
     harus diubah ukurannya lebih besar dengan respek pada alih 
     konteks sebaliknya akan memerlukan ongkos yang besar.

Sumber : Diolah dari berbagai sumber

                                >>>>>TERIMAKASIH<<<<<



Friday, October 11, 2019

KEAMANAN KOMPUTER (M6)

KRIPTOGRAFI

TRANSPOSISI DAN ONE TIME PAD

A.Teknik Transposisi
Sebelumnya sudah dijelaskan bahwa metode kuno/ klasik terdiri 
dari 2 teknik yaitu:

1.Teknik Subtitusi, contoh: kode kaisar (geser, monoalphabet, 
   polyalphabet, playfair, dan lainnya)
2.Teknik Permutasi, contoh: kode transposisi.
   Teknik ini menggunakan permutasi karakter, yang mana dengan 
   menggunakan teknik ini pesan asli tidak dapat dibaca kecuali oleh 
   orang yang memiliki kunci untuk mengembalikan pesan tersebut ke 
   bentuk semula. 
   Sebagai contoh, ada 6 kunci untuk melakukan permutasi kode:





Dab 6 kunci untuk inversi dari permutasi tersebut:






Terlebih dahulu plaintext dibagi menjadi beberapa blok dan tiap 
blok nya terdiri dari 6 karakter, jika terjadi kekurang pada setiap 
blok maka disisipkan karakter yang disepakati sebelumnya. 
Perhatikan contoh dibawah ini: 
Plaintext: PERHATIKAN RAKYAT KECIL 
Cara memutasi plaintext tersebut adalah sebagai berikut:





Maka ciphertext yang dihasilkan adalah: 
RAPTHEARIANKAKKETYLXCXXI 

Sedangkan kunci inverse berfungsi untuk mengubah ciphertext 
menjadi plaintext. Perhatikan contoh dibawah ini:





Selain teknik mutasi-inversi ada beberapa teknik permutasi 
lainnya yaitu dengan menggunakan permutasi zigzag, segitiga, 
spiral, dan diagonal.

1) Zig-zag
Dengan memasukan plaintext seperti pola zig-zag. 
Plaintext: PERHATIKAN RAKYAT KECIL.






2) Segitiga

Dengan memasukan plaintext sepeti pola segitiga. 
Plaintext: PERHATIKAN RAKYAT KECIL.








Maka ciphertext yang dihasilkan adalah: 
KNEARCETAIPRIKLHKYXAAXTXX

3) Spiral

Dengan memasukan plaintext disusun seperti pola spiral. 
Plaintext: PERHATIKAN RAKYAT KECIL.










Maka ciphertextnya adalah: 
PTAYKEKXXAREXXRHCILNATIKA

4) Diagonal

Dengan memasukan plaintext disusun seperti pola dibawah ini, 
(Plaintext: PERHARTIKAN RAKYAT KECIL)











Maka ciphertextnya adalah: PTRTLEIAKXRKKEXHAYCXANAIX


B. One Time Pad
Pada umumnya algoritma kriptografi tidaklah sempurna, tetapi 
untuk mendapatkan algoritma yang lebih baik dan mempunyai 
sedikit kemunngkinan untuk dipecahkan adalah one time pad (OTP). 
Salah satu konsep OTP adalah dengan menggunakan enkripsi super.

Contoh dari ekripsi super adalah seperti dibawah ini:
Plaintext: PERHATIKAN RAKYAT KECIL
1) Menggunakan teknik subtitusi dengan algoritma kode geser sebanyak 7.





Ciphertext dari hasil teknik subtitusi di ubah menjadi ciphertext 
dengan teknik transposisi.

2) Menggunakan teknik transposisi dengan teknik diagonal 
    dengan kunci 5 x 5.












Maka ciphertext akhir yang dihasilkan adalah: 
VZXRKOGQXXQQKXNGEIXGTGOX

Teknik dari enkripsi super sangat penting dan banyak dari algoritma 
enkripsi modern yang menggunakan teknik ini sebagai dasar 
pembuatan suatu algoritma modern.


Sumber: Diolah dari berbagai sumber



                        >>>>>TERIMAKASIH<<<<<

ARSITEKTUR & ORGANISASI KOMPUTER (UNIT MASUKAN & KELUARAN)

UNIT MASUKAN DAN KELUARAN Definisi dan Fungsi: Unit masukan dan keluaran merupakan bagian komponen   utama dari sistem komputer ...