Minggu, 02 Juni 2013

Data Encryption Standard

Nama Anggota Kelompok 2 “  Data Encryption Standard ” :

1. Fita Ardiyani                 11.01.53.0078
2. Indra Atmoko                11.01.53.0080
3. Saftian Jullyanto            11.01.53.0081
4. Yoga Aris Purwanto       11.01.53.0098
5. Samuel                           08.01.53.0126


    DES merupakan algoritma enkripsi yang dikembangkan oleh  NIST (National Institute of Standards and Technology) sebagai standar pengolahan informasi Federal AS. Secara umum, Data Encryption Standard (DES) terbagi menjadi tiga kelompok, yaitu pemrosesan kunci, enkripsi data 64 bit dan deskripsi data 64 bit, dimana satu kelompok saling berinteraksi satu dengan yang lainnya.
Data dienkripsi dalam blok-blok 64 bit menggunakan kunci 56 bit, DES mentransformasikan input 64 bit dalam beberapa tahap enkripsi ke dalam output 64 bit. Dengan demikian, DES termasuk lama block cipher dengan tahapan pemakaian kunci yang sama untuk deskripsinya.
Gambar 1. DES Schedule  

     
Secara umum skema Data Encryption Standard (DES) memiliki dua fungsi input, yaitu :
  1. Plaintext untuk dienkripsi dengan panjang 64 bit.
  2. Kunci dengan panjang 56 bit.
Skema dari pemrosesan DES adalah seperti gambar berikut :

Gambar 2. Gambaran Umum Algoritma DES


Proses initial permutasi (IP) Plaintext ada tiga  :
  1. Plaintext 64 bit diproses di Initial Permutasi (IP) dan menyusun kembali bit untuk menghasilkan permutasi input.
  2. Langkah untuk melakukan perulangan kata dari plaintext sebanyak 16 dengan melakukan fungsi yang sama, yang menghasilkan fungsi permutasi substitusi, yang mana output akhir dari hal tersebut berisi 64 bit (fungsi dari plaintext dan kunci), masuk ke swap, dan menghasilkan preouput.
  3. Preoutput diproses, dan permutasi di inverse dari initial permutasi yang akan menghasilkan ciphertext 64bit.
Proses dari kunci 56 bit :
  1. Kunci melewati fungsi dari permutasi
  2. Pergeseran kunci untuk memilih perulangan permutasi kunci sebanyak 16 kali yang menghasilkan Subkey(Ki) yang diproses dengan kombinasi permutasi.
  3. Perbedaan dari Subkey(Ki) akan dilakukan pergeseran kunci yang menghasilkan kombinasi plaintext 64 bit dengan kunci 56 bit.
Website Unisbank : unisbank.ac.id
Blog Dosen Pengajar : blogerahman.staff.unisbank.ac.id

Selasa, 30 April 2013

Hypercube Computer

        Hypercube merupakan topologi yang setiap dimensinya memiliki dua buah node. Secara umum hypercube dimensi merupakan gabungan dari dua buah hypercube (d-1) dimensi. Sebagai contoh hypercube dengan tiga dimensi memiliki delapan node. Dalam sistem hypercube dengan delapan prosessor dan setiap modul prosessor dan memory yang ditempatkan di titik kubus mempunyai diameter 3. Sebuah sistem yang berisi 2^N prosessor dengan masing-masing prosessor langsung terhubung ke N prosessor lainnya. Namun topologi ini mempunyai kekurangan yaitu topologi ini masih memerlukan banyak ehternet card jika pada topologi ini akan diperluas.
Dalam hypercube computer terdapat komuter paralel, komputer paralel dapat dilkasifikasikan dengan memperhatikan organisasi memori yang terdapat dalam komputer paralel. Berikut contoh gambar mengenai organisasi memori multi prosessor.

Perbedaan yang signifikan antara multi komputer dengan multi prosesor yterdapat pada memori yang dimiliki. Multi kumputer tidak memiliki memori bersama atau ruang memori bersama (QUIN87).
Hypercube Computer Dalam Interkoneksi Jaringan
Dalam hal ini akan diberikan contoh implementasi hypercube dalam interkoneksi jaringan. Misalkan dalam mesin MIMD (Multiple Instruction, Multiple Data) didistribusikan menggunakan interkoneksi hypercube yang berisi empat prosessor. Prosessor dan modul memori ditempatkan di setiap titik sudut persegi. Diameter dari sistem ini adalah jumlah minimum dari jumlah langkah-langkah yang diperlukan oleh satu prosesor untuk mengirim pesan ke prosesor yang jaraknya paling jauh dari prosesor lainnya. Sistem ini juga mempunyai kelemahan yaitu setiap perintah harus dikonfigurasikan dalam kelipatan dua sehingga mesin yang dibangun harus mempunyai prosesor yang lebih banyak dan benar-benar diperlukan untuk aplikasi tersebut.
MIMD (Multiple Instruction, Multiple Data) merupakan teknik komputer parallel yang terdiri dari beberapa unit control, beberapa prosesor, dan beberapa memori. MIMD adalah ungkapan untuk organisasi dan arsitektur komputer parallel yang dapat dan sudah diterapkan pada multiprosesor dan multicomputer. Pada konsep ini komputer memiliki kemampuan untuk memproses beberapa program dalam waktu yang sama. Arsitektur MIMD dapat digunakan dalam sejumlah aplikasi seperti desain komputer, simulasi, permodelan dan sebagai saklar komunikasi. MIMD dapat dijadikan memori bersama atau kategori memori terdistribusi. Dalam memori terdistribusi, prosesor memiliki lokasi memori tersendiri. Setiap prosesor tidak langsung mengetahui mengenai prosesor lain. Untuk data yang akan dikirim, maka harus lulus terlebih dahulu dari prosesor lain sebagai pesan. Hal ini dikarenakan memori yang digunakan tidak secara bersamaan. Salah satu cara untuk menghindari banyaknya sambungan adalah dengan menghubungkan setiap prosesor. Contoh memori terdistribusi yaitu MPP (Massively parallel processor)dan  Cluster Workstation.
Berikut terdapat contoh gambar jenis jaringan interkoneksi


Gambar (a) merupakan contoh jaringan interkoneksi pohon biner yang terdiri dari 7 buah node.
Gambar (b) merupakan contoh jaringan interkoneksi mesh yang terdiri dari 16 buah node.
Gambar (c) merupakan contoh jaringan interkoneksi cincin yang terdiri dari 8 buah node.
(Gambar d) merupakan contoh jaringan interkoneksi hypercube yang terdiri dari 16 node (dimensi=4)
Nama Anggota Kelompok 5 “Sistem Terdistribusi” :
1.      Fita Ardiyani (11.01.53.0078)
2.      Indra Atmoko (11.01.53.0080)
3.      Yoga Aris Purwanto(11.01.53.0098)
4.      Aldio Bayu Aji(11.01.53.0099)


Kamis, 13 Desember 2012

Ziel Band

Sudah lama tidak bermain musik akhirnya kembali lagi bermain musik ini band saya saat ini dan semoga behasil melejit ditahun 2013 untuk selanjutnya cek dibawah ini

                                                                Ziel Band
                                                                     
Band ini berdiri sejak bulan agustus 2012 dan terdiri dari 4 personil yaitu Izal (vokal dan guitar),Vai(Melody), Yoga(Keyboardist), Dede (Drumer).Sudah mempunyai 1 ambum yang bertema isi hati, untuk lebih lanjut cek aja bionya di

Facebook  : http://www.facebook.com/pages/Ziel-Band/147096605429858?fref=ts
Twitter       : @Ziel_band

Senin, 24 Oktober 2011

PROGRAM PENDETEKSI BILANGAN PRIMA

SOAL:
Buatlah algoritma dan program yang dapat digunakan untuk mendetaksi angka yang di inputkan termasuk bilangan PRIMA atau BUKAN PRIMA

JAWAB:






Algoritma dan Flowchart untuk Mencetak Bintang

SOAL:
Buat algoritma dengan flowchart untuk mencetak gambar segitiga sebanyak n baris, dengan n adalah diinput dari keyboard
JAWAB:

Program menampilkan 10 angka bilangan genap

SOAL:
Buat program untuk menampilkan 10 angka genap yang pertama dimulai dari 1

JAWAB:





SOAL:
Buat program untuk menampilkan jumlah 10 angka genap yang pertama dimulai dari 1

JAWAB:



Sabtu, 15 Oktober 2011

perkalian

#include
#include

int main()
{
int bil1;
int bil2;
int perkalian;

printf("masukkan bilangan pertama: ");
scanf("%d", &bil1);

printf("masukkan bilangan kedua: ");
scanf("%d", &bil2);

perkalian = bil1 * bil2;

printf("jumlah kedua bilangan itu adalah:%dX%d=%d" ,bil1,bil2,perkalian);
return 0;
}

Alpro 1

#include
#include

int main()
{

printf(" <---------------- Yoga Aris P ------------->\n");
printf(" <------------------- 1101530098 -------------->\n\n ");
char angka;
printf("input salah satu angka (1-7):");
scanf("%c", &angka);

switch(angka)
{
case '1':
printf("hari ini hari senin\n\n\n\n");
break;
case '2':
printf("hari ini hari selasa\n\n\n\n");
break;
case '3':
printf("hari ini hari rabu\n\n\n\n");
break;
case '4':
printf("hari ini hari kamis\n\n\n\n");
break;
case '5':
printf("hari ini hari jumat\n\n\n\n");
break;
case '6':
printf("hari ini hari sabtu\n\n\n\n");
break;
case '7':
printf("hari ini hari minggu\n\n\n\n");
break;

default:
printf("input tidak dikenali anda masuk jurang !!!!!!\n\n\n\n");
break;

}

return 0;
}

Senin, 10 Oktober 2011

Alpro

1. Tulis rumus berikut dalam notasi algoritmik pseudocode

V = (4/3)* П r3

X = (-b + 2c2 +4ab)/2c

M = a - b (1 – b/cd)

3ac

Jawaban :

{notasi algoritmik psedeucode menghitung volume bola}

DEKLARASI

V,phi ß 3.14,r:float

ALGORITMA

read(r)

V ß (4/3)* phi* r*r*r

write (V)

{notasi algoritmik psedeucode mencari nilai X}

DEKLARASI

a,b,c:integer

X:float

ALGORITMA

X ß ((-b) + 2c*c +4*a*b)/2*c

Write(X)

{notasi algoritmik psedeucode mencari nilai M}

DEKLARASI

a,b,c,d,M:float

ALGORITMA

ß (a – b)* (1 – b/c*d)/(3*a*c)

write(m)

2.

Diameter A = 10, B = 12, C=14

  • Hitunglah luas daerah yang berwarna putih
  • Tuliskan dengan notasi algoritmik (pseudocode) dan Flowchart
  • Translate kedalam bahasa C

Jawaban :

Luas putih = (Luas Lingkaran B) – (Luas Lungkran A)

= (phi X rb X rb) – (phi X ra X ra)

= (3.14 X 6 X 6) – (3.14 X 5 X 5)

= 113.04 – 78.5

= 34.54

{notasi algoritmik psedeucode mencari Luas putih}

DEKLARASI

LB,LP,phiß3.14:float

LA,raß5,rbß6:int

ALGORITMA

LAßphi*ra*ra

LBßphi*rb*rb

LPßLB-LA

write(LP)

Flowchart “Mencari Luas bagian lingkaran yang berwarna putih

/* Program Menghitung Luas Lingkaran Warna Putih*/

#include

#include

int main()

{

float LB,LP, phi=3.14;/*LB (luas lingkaran B), LP (luas lingkaran putih)*/

int LA, rA=5, rB=6; /*LA (laus lingkaran A), rA (jari_jari LA), rB (jari_jari LB)*/

printf(" Jari_jari lingkaran_A adalah 5 cm\n");

LA=(phi*rA*rA);

printf(" Luas lingkaran_A adalah phi*r*r: %d\n",LA);

printf(" Jari_jari lingkaran_B adalah 6 cm\n");

LB=(phi*rB*rB);

printf(" Luas lingkaran_B adalah phi*r*r: %f\n",LB);/*rumus luas lingkaran adalah phi*r*r */

printf(" Luas lingkaran putih adalah luas_B - luas_A \n");

LP=(LB-LA);

printf(" Jadi luas lingkaran putih adalah: %f-%d=%f", LB, LA, LP);

return 0;

}


3.

Suatu ember berbentuk tabung dengan tutupnya terbuka berisi air penuh. Jari-jari alas ember adalah 10.5 cm, dan tingginya 5 cm. Kemudian sebuah kerucut dengan jari-jari alas yang berbentuk lingkaran adalah 4 cm dan tingginya 4.7 cm dimasukkan ke dalam ember. Akibatnya sebagian air dalam ember tumpah.

  • Dengan menggunakan program C++ hitunglah berapa liter air yang tumpah?
  • Tuliskan juga Flowchart dan Pseudocodenya
style="margin-bottom: 0.0001pt; text-align: justify; line-height: normal;">

Jawaban :

style="margin-bottom:0in;margin-bottom:.0001pt;text-indent: .5in;line-height:normal">
/*Program C++ Menghitung Volume Air yang Tumpah*/

#include

#include

int main()
{

float VK, Vtumpah, phi=3.14, tK=4.7;

int VT, rT=10.5, rK=4, tT=5;

VT= (phi*rT*rT*tT);

printf(" Volume tabung phi x r x r x t: %d cm^3\n",VT);

VK= (phi*rK*rK*tK)/3;

printf(" Volume kerucut 1/3 x phi x r x r x t: %f cm^3\n",VK);

printf(" Volume air yang tumpah adalah volume tabung-volume kerucut \n");

Vtumpah=(VT-VK);

printf(" Volume air yang tumpah adalah: %d-%f = %f cm^3 \n", VT, VK, Vtumpah);

Vtumpah=(VT-VK)/1000;

printf(" Jadi volume air yang tumpah adalah: %d-%f = %f liter \n", VT, VK, Vtumpah);

return 0;

}

/*Keterangan:
rT=jari-jari tabung, rK=jari-jari kerucut, VK=volume kerucut,
VT=volume tabung, Vtumpah=volume air yang tumpah*/

PSEDEUCODE menghitung volume air yang tumpah

{Algoritma Menghitung Volume Air yang Tumpah }

Deklarasi:

vK,v_Tumpah, phiß3.14, tKß4.7:float

vT, rTß10.5, rKß4, tTß5 int

Algoritma:

read(rT,rK,vT,vK, v_Tumpah)

vTß(phi*rT*rT*tT)

vKß(phi*rK*rK*tK)/3

v_Tumpahß(vT-vK)

v_Tumpahß(vT-vK)/1000

write(v_tumpah);


Flowchart menghitung volume air yang tumpah

4. Sebuah mobil bergerak dengan kecepatan tetap v km/jam. Jika mobil tersebut berjalan selama t jam, tuliskan algoritma untuk menghitung jarak yang sudah ditempuh mobil (dalam km). Algoritma hasur mampu membaca v dan t, dan penghitungan jarak menggunakan rumus s = v*t, kemudian mencetak jarak tersebut.Tuliskan dalam flowchart, Pseudoceode dan transformasikan dalam bahasa C++.

Jawaban:

Flowchart menghitung jarak tempuh mobil dengan kecepatan tetap


{psedeucode menghitung jarak tempuh mobil dengan kecepatan tetap}

Deklarasi
s, v, t: float

Algoritma

read(v,t)

sßv*t

write(s)

psedeucode menghitung jarak tempuh mobil dengan kecepatan tetap

/* psedeucode menghitung jarak tempuh mobil dengan kecepatan tetap*/

#include

#include

int main()

{

float s,v,t;

printf("Masukkan kecepatan mobil [dalam km/jam] : ");

scanf("%f",&v);

printf("Masukkan lama waktu mobil berjalan [dalam jam] : ");

scanf("%f",&t);

s=v*t;

printf("Jadi mobil tsb telah menempuh jarak sepanjang : %f km",s);

return 0;

}