algoritma dan bil.bulat

Upload: harisman-nizar

Post on 27-Feb-2018

231 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/25/2019 Algoritma Dan Bil.bulat

    1/111

    Teknik Elektro 1

    Algoritma dan BilanganBulat

  • 7/25/2019 Algoritma Dan Bil.bulat

    2/111

    Algoritma

    Apa itu Algoritma ?

    Algoritma adalah Urutan logis langkah-

    langkah penyelesaian masalah yang disusunsecara sistematis.

    Menulis algoritma bisa dengan menggunakan

    kalimat deskriptif yang menjelaskan kejadiansecara runtut, dengan flowchart atau dengan

    Pseudocode.

    Teknik Elektro 2

  • 7/25/2019 Algoritma Dan Bil.bulat

    3/111

    Pseudocode

    Ada bagian struktur suatu algoritma, yaitu !

    ".#agian $udul %header&'.#agian (eklarasi

    .#agian Algoritma

    Teknik Elektro 3

  • 7/25/2019 Algoritma Dan Bil.bulat

    4/111

    )truktur teks Agoritma !

    P*+*AM namaprogram

    penjelasan tentang algoritma yg beisi uraian

    singkat mengenai masalah yg akan diselesaikan/

    (012A*A)3

    )emua nama yg dipakai, nama

    tipe,konstanta,4ar,prosedur,dan fungsi diumumkan

    disini/

    A2+*35MA

    )emua langkah6aksi algoritma dituliskan disini/

    Teknik Elektro 4

  • 7/25/2019 Algoritma Dan Bil.bulat

    5/111

  • 7/25/2019 Algoritma Dan Bil.bulat

    6/111

  • 7/25/2019 Algoritma Dan Bil.bulat

    7/111Teknik Elektro 7

    Sifat Pembagian pada Bilangan Bulat

    Misalkan adan bbilangan bulat, a>.

    a habis membagi b %a divides b& jika terdapatbilangan bulat c sedemikian sehingga b ac.

    @otasi! a b jika b ac, cZdan a>.

    Contoh 1! = "' karena "'= %bilangan bulat&atau "' = . 5etapi = " karena "= .' rC n.

  • 7/25/2019 Algoritma Dan Bil.bulat

    9/111Teknik Elektro 9

    Contoh #"%i& "D9:6D: '>, sisa =:!

    "D9: D: '> B =:

    %ii& E''6 E9, sisa '!

    E'' %E9& B '

    tetapi E'' %E:& E " salah

    karena r E" %syarat > rC n)

  • 7/25/2019 Algoritma Dan Bil.bulat

    10/111Teknik Elektro 10

    Pembagi Bersama Terbesar PBB!

    Misalkan adan bbilangan bulat tidak nol.

    Pembagi bersama terbesar %P## E greatestcommon di$isor atau gcd& dari a dan b adalah

    bilangan bulat terbesar dsedemikian hingga d a

    dan d b.

    (alam hal ini kita nyatakan bahwa P##%a, b& d.

  • 7/25/2019 Algoritma Dan Bil.bulat

    11/111Teknik Elektro 11

    Contoh %"

    Faktor pembagi =

    Faktor pembagi ;! ", ', , =, D, "', "9, ;GFaktor pembagi bersama =< dan ;! ", , D

    P##%=

  • 7/25/2019 Algoritma Dan Bil.bulat

    12/111Teknik Elektro 12

    Teorema #" Misalkan m dan n bilangan bulat,

    dengan syarat n8 > sedemikian sehingga

    m nqB r , > rC n

    maka P##%m, n& P##%n, r&

    Contoh &! m ;>, n "9,

    ;> "9 B "'

    maka P##%;>, "9& P##%"9, "'& ;

  • 7/25/2019 Algoritma Dan Bil.bulat

    13/111Teknik Elektro 13

    Algoritma Euclidean

    5ujuan! algoritma untuk

    mencari P## dari dua buah

    bilangan bulat.

    Penemu! 0uclides, seorang

    matematikawan Hunani yang

    menuliskan algoritmanyatersebut dalam buku,Element.

  • 7/25/2019 Algoritma Dan Bil.bulat

    14/111Teknik Elektro 14

    2ukisan 0uclides 4ersi lain

  • 7/25/2019 Algoritma Dan Bil.bulat

    15/111

  • 7/25/2019 Algoritma Dan Bil.bulat

    16/111

  • 7/25/2019 Algoritma Dan Bil.bulat

    17/111Teknik Elektro 17

    procedure Euclidean(input m, n : integer,

    output PBB : integer)

    { Mencari PBB(m, n) dengan syarat m dan n bilangan tak-

    negatif dan m n

    Masukan: m dan n, m n dan m, n 0

    Keluaran: PBB(m, n)

    }

    Kamus

    r : integer

    Algoritma:

    while n 0 do

    r m mod n

    m n

    n r

    endwhile{ n = 0, maka PBB(m,n) = m }

    PBB m

  • 7/25/2019 Algoritma Dan Bil.bulat

    18/111Teknik Elektro 18

    Contoh &" m? 9>, n? "' dan dipenuhi syarat mn

    9"';9> +=

    =9""' +=

    >='9 +=

    )isa pembagian terakhir sebelum > adalah =, maka P##%9>, "'& ?

    =.

  • 7/25/2019 Algoritma Dan Bil.bulat

    19/111Teknik Elektro 19

    1ombinasi 2anjar

    P##%a,b& dapat dinyatakan sebagai kombinasi lan'ar%linear combination& adan bdengan dengan koefisien-koefisennya.

    Contoh (! P##%9>, "'& = ,

    = %-"& 9> B : "'.

    Teorema %" Misalkan a dan b bilangan bulat positif,maka terdapat bilangan bulat m dan n sedemikiansehingga P##%a, b& maB nb.

  • 7/25/2019 Algoritma Dan Bil.bulat

    20/111Teknik Elektro 20

    Contoh )! @yatakan P##%'", =

  • 7/25/2019 Algoritma Dan Bil.bulat

    21/111Teknik Elektro 21

    Contoh .:@yatakan P##%"', :>& sebagai kombinasi lanjar "' dan :>.

    )olusi! 5erapkan algoritma 0uclidean untuk memperoleh P##%"', :>&!

    "' = :> B ' %i&

    :> ' ' B ; %ii& ' < ; B ' %iii&

    ; ' B > %i4&

    )isa pembagian terakhir sebelum > adalah ', maka PBB%1#+ )/! , #

    )usun pembagian nomor %iii& dan %ii& masing-masing menjadi

    ' ' E < ;%i4& ; :> E ' ' %4&

    )ulihkan %4& ke dalam %i4& menjadi

    ' ' E E ''& "' E B ">' "" ' E < :> %4i&

    )usun pembagian nomor %i& menjadi

    ' "' E =:> %4ii&

    )ulihkan %4ii& ke dalam %4i& menjadi

    ' "" ' E < :> "" %"' E = :>& E < :> "" . "' E =D :>

    $adi, P##%"', :>& ' "" "' E =D :>

  • 7/25/2019 Algoritma Dan Bil.bulat

    22/111

    Teknik Elektro 22

    *elatif Prima

    (ua buah bilangan bulat adan bdikatakan relati

    primajika P##%a, b& ".

    Contoh 0"

    %i& '> dan relatif prima sebab P##%'>, & ".

    %ii& : dan "" relatif prima karena P##%:, ""& ".

    %iii& '> dan < tidak relatif prima sebab P##%'>,

  • 7/25/2019 Algoritma Dan Bil.bulat

    23/111

    Teknik Elektro 23

    $ika adan brelatif prima, maka terdapat bilangan

    bulat mdan nsedemikian sehingga

    maB nb "

    Contoh 1/"#ilangan '> dan adalah relatif prima

    karena P##%'>, & ", atau dapat ditulis ' . '> B %E"& . " %m ', n E"&

    5etapi '> dan < tidak relatif prima karena P##%'>,

  • 7/25/2019 Algoritma Dan Bil.bulat

    24/111

    Teknik Elektro 24

    Aritmetika odulo

    Misalkan adan mbilangan bulat %m8 >&. +perasi

    amod m %dibaca Jamodulo mK&

    memberikan sisa jika adibagi dengan m.

    @otasi! amod m r sedemikian sehingga

    a mqB r, dengan > rC m.

    m disebut modulus atau modulo, dan hasil aritmetikamodulo m terletak di dalam himpunan >, ", ', I, mE"/.

  • 7/25/2019 Algoritma Dan Bil.bulat

    25/111

    Teknik Elektro 25

    Contoh 11" #eberapa hasil operasi denganoperator modulo!

    %i& ' mod < %' < = B &%ii& ': mod > %': D B >&

    %iii& ; mod 9 ; %; 9 > B ;&

    %i4& > mod "' > %> "' > B >&

    %4& E =" mod D = %E=" D %E&

    !en"elasan untuk #v):1arena anegatif, bagi adengan mmendapatkan sisa rL. Maka amod mmE rL bila rL >. $adi E =" mod D

  • 7/25/2019 Algoritma Dan Bil.bulat

    26/111

    Teknik Elektro 26

    Kongruen

    Misalnya 9 mod < dan " mod < , makadikatakan 9 " %mod

  • 7/25/2019 Algoritma Dan Bil.bulat

    27/111

    Teknik Elektro 27

    Contoh 1#"

    ": ' %mod & # % &abis membagi 1' ( 2 1*)

    E: "< %mod ""&

    #11 &abis membagi (' ( 1* (22)

    "' 6 ' %mod :&

    #' tidak &abis membagi 12 ( 2 1+ )

    E: 6 "< %mod &

    #% tidak &abis membagi (' ( 1* (22)

  • 7/25/2019 Algoritma Dan Bil.bulat

    28/111

    Teknik Elektro 28

    ab%mod m& dalam bentuk Jsama denganK dapat

    dituliskan sebagai

    a bB km %kadalah bilangan bulat&

    Contoh 1%"

    ": ' %mod & ": ' B <

    E: "< %mod ""& E: "< B %E'&""

  • 7/25/2019 Algoritma Dan Bil.bulat

    29/111

    Teknik Elektro 29

    amod m r dapat juga ditulis sebagai

    a

    r%mod m&

    Contoh 1&"

    %i& ' mod < ' %mod %mod &

    %iii& ; mod 9 ; ; ; %mod 9&

    %i4& > mod "' > > > %mod "'&

    %4& E =" mod D = E=" = %mod D&

    %4i& E D mod " > E D > %mod "&

  • 7/25/2019 Algoritma Dan Bil.bulat

    30/111

    Teknik Elektro 30

    Teorema &" Misalkan madalah bilangan bulat

    positif."&$ika a b %mod m& dan c adalah sembarang

    bilangan bulat maka

    %i& %aB c& %bB c& %mod m&

    %ii& acbc %mod m&

    %iii& apbp%mod m& ,pbilangan bulat tak-negatif

    '& $ika ab%mod m& dan cd%mod m&, maka%i& %aB c& %bB d& %mod m&

    %ii& acbd%mod m&

  • 7/25/2019 Algoritma Dan Bil.bulat

    31/111

    Teknik Elektro 31

    ukti%hanya untuk "%ii& dan '%i& saja&!

    "%ii& ab%mod m& berarti!

    a bB kmaE b km

    %aE b&c ckm

    ac bcBKm

    acbc%mod m&

    '%i& ab%mod m& a bB k"m

    cd%mod m& c dB k'm B

    %aB c& %bB d& B %k"B k'&m %aB c& %bB d& B km % k k"B k'&

    %aB c& %bB d& %mod m&

  • 7/25/2019 Algoritma Dan Bil.bulat

    32/111

    Teknik Elektro 32

    Contoh 1*"

    Misalkan ": ' %mod & dan "> = %mod &,

    maka menurut 5eorema =,

    ": B < ' B < %mod & '' : %mod &

    ": . < < ' %mod & 9< "> %mod &

    ": B "> ' B = %mod & ': ; %mod &

    ": . "> ' = %mod & ":> 9 %mod &

  • 7/25/2019 Algoritma Dan Bil.bulat

    33/111

    Teknik Elektro 33

    5eorema = tidak memasukkan operasi pembagian

    pada aritmetika modulo karena jika kedua ruas

    dibagi dengan bilangan bulat, maka kekongruenantidak selalu dipenuhi.

    Contoh 1(!

    "> = %mod & dapat dibagi dengan '

    karena ">6' < dan =6' ', dan < ' %mod &

    "= 9 %mod ;& tidak dapat dibagi dengan ', karena"=6' : dan 96' =, tetapi : 6 = %mod ;&.

  • 7/25/2019 Algoritma Dan Bil.bulat

    34/111

    Teknik Elektro 34

    2atihan

    $ika a b %mod m& dan c d %mod m& adalah

    sembarang bilangan bulat maka buktikan bahwa

    acbd %mod m&

    .

  • 7/25/2019 Algoritma Dan Bil.bulat

    35/111

    Teknik Elektro 35

    )olusi

    ab%mod m& a b - k1m

    cd%mod m& c d - k2m

    makaac %b - k1md - k2m)

    ac bd - bk2m - dk1m - k1k2m2

    ac bd - Km denganK bk2- dk1- k1k2m

    ac bd mod m! %terbukti&

  • 7/25/2019 Algoritma Dan Bil.bulat

    36/111

    Teknik Elektro 36

    Balikan Modulo (modulo invers)

    (i dalam aritmetika bilangan riil, in4ersi%inverse& dari perkalian adakah pembagian.

    7ontoh! 3n4ersi = adalah "6=, sebab = "6= ".

    (i dalam aritmetika modulo, masalahmenghitung in4ersi modulo lebih sukar.

  • 7/25/2019 Algoritma Dan Bil.bulat

    37/111

    Teknik Elektro 37

    $ika adan mrelatif prima dan m8 ", maka

    balikan %invers& dari amodulo mada.

    #alikan dari a modulo m adalah bilangan

    bulatsedemikian sehingga

    a" %mod m&(alam notasi lainnya, aE"%mod m&

  • 7/25/2019 Algoritma Dan Bil.bulat

    38/111

    Teknik Elektro 38

    #ukti! a dan m relatif prima, jadi P##%a, m& ", danterdapat bilangan bulatdan/sedemikian sehingga

    aB/m "

    yang mengimplikasikan bahwa

    aB/m" %mod m&

    1arena/m> %mod m&, maka

    a" %mod m&

    1ekongruenan yang terakhir ini berarti bahwa adalahbalikan dari amodulo m.

  • 7/25/2019 Algoritma Dan Bil.bulat

    39/111

    Teknik Elektro 39

    Pembuktian di atas juga menceritakan

    bahwa untuk mencari balikan dari amodulo

    m, kita harus membuat kombinasi lanjardari adan msama dengan ".

    1oefisien a dari kombinasi lanjar tersebutmerupakan balikan dari amodulo m.

  • 7/25/2019 Algoritma Dan Bil.bulat

    40/111

  • 7/25/2019 Algoritma Dan Bil.bulat

    41/111

    Teknik Elektro 41

    7atatan! setiap bilangan yang kongruen dengan

    E' %modD&

    juga adalah in4ersi dari =, misalnya :, E"", ";, dan

    seterusnya, karena

    : E' %modD& %D habis membagi : E %E'& D&

    E"" E' %modD& %D habis membagi E"" E %E'& ED&

    "; E' %modD& %D habis membagi "; E %E'& "9&

  • 7/25/2019 Algoritma Dan Bil.bulat

    42/111

    Teknik Elektro 42

    %b& 1arena P##%":, :& ", maka balikan dari ": %mod :& ada. (arialgoritma 0uclidean diperoleh rangkaian pembagian berikut!

    ": ' : B %i&

    : ' B " %ii& " B > %iii& %yang berarti! P##%":, :& "& &

    )usun %ii& menjadi!

    " : E ' %i4&

    )usun %i& menjadi

    ": E ' : %4& )ulihkan %4& ke dalam %i4&!

    " : E ' %": E ' :& " : E ' ": B = : < : E ' ":

    atau

    E' ": B < : "

    (ari persamaan terakhir diperoleh E' adalah balikan dari ": %mod :&

    E' ": " %mod :& %: habis membagi E' ": E " E

  • 7/25/2019 Algoritma Dan Bil.bulat

    43/111

    Teknik Elektro 43

    %c& 1arena P##%"9, ">& ' ", maka balikan dari

    "9 %mod ">& tidak ada.

  • 7/25/2019 Algoritma Dan Bil.bulat

    44/111

  • 7/25/2019 Algoritma Dan Bil.bulat

    45/111

    Teknik Elektro 45

    Contoh 1.! #alikan dari = %mod D& adalah sedemikiansehingga =" %mod D&

    =" %mod D& = " B Dk %" B Dk&6=

    Untuk k > tidak bulat k " tidak bulat

    k ' tidak bulat

    k %" B D . &6= :

    k -" %" B D. E"&6= -'#alikan dari = %mod D& adalah : %mod D&,

    -' %mod D&, dst

  • 7/25/2019 Algoritma Dan Bil.bulat

    46/111

    Teknik Elektro 46

    2atihan

    5entukan semua balikan dari D %mod ""&.

  • 7/25/2019 Algoritma Dan Bil.bulat

    47/111

    Teknik Elektro 47

    )olusi!

    Misalkan D-"%mod ""&

    Maka D" %mod ""& atau D " B ""katau

    %" B ""k&6D

    (engan mencoba semua nilai kyang bulat %k >, -", -', ...,", ', ...& maka

    diperoleh

  • 7/25/2019 Algoritma Dan Bil.bulat

    48/111

    Teknik Elektro 48

    Kekongruenan Lanjar

    1ekongruenan lanjar berbentuk!

    ab%mod m&

    %m8 >, adan bsembarang bilangan bulat, dan

    adalah peubah bilangan bulat&.

    Pemecahan! a bB km

    %7obakan untuk k >, ", ', I dan k E", E', Iyang menghasilkansebagai bilangan bulat&

    a

    kmb

    +=

    Contoh 10

  • 7/25/2019 Algoritma Dan Bil.bulat

    49/111

    Teknik Elektro 49

    Contoh 10"

    5entukan solusi! = %mod D& dan ' %mod =&

    Penyelesaian!

    %i& = %mod D&

    =D += k.

    k > % B > D&6= 6= %bukan solusi&

    k " % B " D&6=

    k ' % B ' D&6= '"6= %bukan solusi&k , k = tidak menghasilkan solusi

    k < % B < D&6= "'I

    k E" % E " D&6= E;6= %bukan solusi&

    k E' % E ' D&6= E"

  • 7/25/2019 Algoritma Dan Bil.bulat

    50/111

    Teknik Elektro 50

    Cara lain menghitung solusi

    ax bmod m!

    )eperti dalam persamaan biasa,

    = "' kalikan setiap ruas dengan "6= %yaituin4ers =&, maka "6= . = "' . "6=

    = %mod D& kalikan setiap ruas dengan balikan dari

    = %mod D& %dalam hal ini sudah kita hitung, yaitu E'&

    %-'& . =%-'& . %mod D& -9-; %mod D&

    1arena E9 " %mod D&, maka-; %mod D&. )emua blanganbulat yang kongruen dengan E; %mod D& adalah solusinya,yitu , "', I, dan E;, -"

  • 7/25/2019 Algoritma Dan Bil.bulat

    51/111

    Teknik Elektro 51

    %ii& ' %mod =&

    '

    = +=

    k

    1arena =k genap dan ganjil maka penjumlahannya

    menghasilkan ganjil, sehingga hasil penjumlahan tersebut jika

    dibagi dengan ' tidak menghasilkan bilangan bulat. (engan

    kata lain, tidak ada nilai-nilai yang memenuhi ' %mod

  • 7/25/2019 Algoritma Dan Bil.bulat

    52/111

    Teknik Elektro 52

    2atihan

    )ebuah bilangan bulat jika dibagi dengan

    bersisa ' dan jika ia dibagi dengan < bersisa

    . #erapakah bilangan bulat tersebut

  • 7/25/2019 Algoritma Dan Bil.bulat

    53/111

    Teknik Elektro 53

    )olusi

    Misal ! bilangan bulat mod ' ' %mod &

    mod < %mod

  • 7/25/2019 Algoritma Dan Bil.bulat

    54/111

    Teknik Elektro 54

    ' B k"

    ' B %' B

  • 7/25/2019 Algoritma Dan Bil.bulat

    55/111

    Teknik Elektro 55

    Chinese Remainder Problem

    Pada abad pertama, seorang matematikawan 7hina yang bernama)un 5se mengajukan pertanyaan sebagai berikut!

    0entukan sebua& bilangan bulat /ang bila dibagi dengan *

    men/isakan %, bila dibagi ' men/isakan *, dan bila dibagi 11men/isakan '.

    Misakan bilangan bulat tersebut . Formulasikan kedalam sistemkongruen lanjar!

    %mod

  • 7/25/2019 Algoritma Dan Bil.bulat

    56/111

    Teknik Elektro 56

    Teorema *" Chinese Remainder Theorem!Misalkan m", m', I, mn adalah bilangan bulat

    positif sedemikian sehingga P##%mi, m"& " untuk

    i". Maka sistem kongruen lanjar

    ak%mod mk&

    mempunyai sebuah solusi unik dalam modulo mm"m'I mn.

  • 7/25/2019 Algoritma Dan Bil.bulat

    57/111

    Teknik Elektro 57

    Contoh 1*"5entukan solusi dari pertanyaan )un 5se di atas.

    Penyelesaian!

    %mod

  • 7/25/2019 Algoritma Dan Bil.bulat

    58/111

  • 7/25/2019 Algoritma Dan Bil.bulat

    59/111

    Teknik Elektro 59

    Bilangan Prima

    #ilangan bulat positif p %p 8 "& disebut

    bilangan prima jika pembaginya hanya "

    danp.

    7ontoh! ' adalah bilangan prima karena ia

    hanya habis dibagi oleh " dan '.

  • 7/25/2019 Algoritma Dan Bil.bulat

    60/111

    Teknik Elektro 60

    1arena bilangan prima harus lebih besar dari ", makabarisan bilangan prima dimulai dari ', yaitu ', , , selain " dan '>sendiri.

  • 7/25/2019 Algoritma Dan Bil.bulat

    61/111

    Teknik Elektro 61

    Teorema (" The Fundamenal Theorem o!"rihmeic!" )etiap bilangan bulat positif yanglebih besar atau sama dengan ' dapat dinyatakan

    sebagai perkalian satu atau lebih bilangan prima.

    Contoh 1("

    D

    ">> ' ' < ">

    terdapat=

  • 7/25/2019 Algoritma Dan Bil.bulat

    67/111

    Teknik Elektro 67

    Aplikasi 5eori #ilangan

    3%nternational ook erial 3umber&

    Fungsi &as&

    1riptografiPembangkit bilangan acak-semu

    dll

  • 7/25/2019 Algoritma Dan Bil.bulat

    68/111

    Teknik Elektro 68

    3

    1ode 3)#@ terdiri dari "> karakter, biasanyadikelompokkan dengan spasi atau garis, misalnya>E>"&&.

  • 7/25/2019 Algoritma Dan Bil.bulat

    69/111

    Teknik Elektro 69

    1arakter uji dipilih sedemikian sehingga

    =

    ">

    "i ii.> %mod ""&

    =

    D

    "i ii. mod "" ? karakter uji

    7ontoh! 3)#@ > >"< =

  • 7/25/2019 Algoritma Dan Bil.bulat

    70/111

    Teknik Elektro 70

    7ontoh! 3)#@ >E>" B ' B > B = " B < < B ; = B

    : < B 9 ; B D " "

  • 7/25/2019 Algoritma Dan Bil.bulat

    71/111

    Teknik Elektro 71

    7atatlah bahwa untuk kode 3)#@ ini,

    =

    ">

    "i i

    i. ? =

    D

    "i i

    i. B ">.">? " 9 ? '"dan '" mod "" ? > atau '" > %mod ""&.

  • 7/25/2019 Algoritma Dan Bil.bulat

    72/111

    Teknik Elektro 72

    Fungsi4as&

    5ujuan! pengalamatan di memori

    #entuk! &%k& kmod m

    5 m! jumlah lokasi memori yang tersedia

    - k ! kunci %integer&

    - &%k& !lokasi memori untuk recorddengan

    kunci k

    7 h "" i l l i dib i i d k >

  • 7/25/2019 Algoritma Dan Bil.bulat

    73/111

    Teknik Elektro 73

    7ontoh! m "" mempunyai sel-sel memori yang diberi indeks >

    sampai ">. Akan disimpan data record yang masing-masing

    mempunyai kunci "

    &%"'& "' mod "" >

    &%">'& ">' mod ""

    &%' "< <

  • 7/25/2019 Algoritma Dan Bil.bulat

    74/111

    Teknik Elektro 74

    1olisi %collision& terjadi jika fungsi &as&menghasilkan nilai h yang sama untuk k yang

    berbeda.

    $ika terjadi kolisi, cek elemen berikutnya yangkosong.

    Fungsi &as&juga digunakan untuk me-locateelemen yang dicari.

  • 7/25/2019 Algoritma Dan Bil.bulat

    75/111

    Teknik Elektro 75

    1riptografi

    Pesan! data atau informasi yang dapatdibaca dan dimengerti maknanya.

    @ama lain! plainteks%plaintet&

    Pesan dapat berupa! teks, gambar, audio,4ideo.

    Pesan ada yang dikirim atau disimpan didalam media penyimpanan.

  • 7/25/2019 Algoritma Dan Bil.bulat

    76/111

    Teknik Elektro 76

    Cipherteks%cip&ertet&! pesan yang telahdisandikan sehingga tidak memiliki maknalagi.

    5ujuan! agar pesan tidak dapat dimengertimaknanya oleh pihak lain.

    7ipherteks harus dapat diubah kembali keplainteks semula

  • 7/25/2019 Algoritma Dan Bil.bulat

    77/111

    Teknik Elektro 77

    7ontoh!

    Plainteks!culik anak itu jam 11 siang

    7ipherteks!t^$g!i"#rewopd%&':puc*+

  • 7/25/2019 Algoritma Dan Bil.bulat

    78/111

    Teknik Elektro 78

    Enkripsi%encr/ption&! proses menyandikan

    plainteks menjadi ciphertek.

    Dekripsi%decr/ption&! Proses

    mengembalikan cipherteks menjadi

    plainteksnya.

  • 7/25/2019 Algoritma Dan Bil.bulat

    79/111

    Teknik Elektro 79

    plainteks chiperteks plainteks semulaenkripsi dekripsi

    Gambar 1.1 Enkripsi dan dekripsi

  • 7/25/2019 Algoritma Dan Bil.bulat

    80/111

    Teknik Elektro 80

    3riptografi cr#$ogra$h#!

    (ari #ahasa Hunani yang artinya Jsecret6ritingK

    (efinisi! kriptografi adalah ilmu dan seniuntuk menjaga keamanan pesan.

  • 7/25/2019 Algoritma Dan Bil.bulat

    81/111

  • 7/25/2019 Algoritma Dan Bil.bulat

    82/111

    Teknik Elektro 82

    )ejarah 1riptografi

    )udah digunakan di Hunani =>> #7

    Alat yang digunakan!sc/tale

    Gambar 1.2 Scytale

  • 7/25/2019 Algoritma Dan Bil.bulat

    83/111

    Teknik Elektro 83

    Aplikasi 1riptografi

    ". Pengiriman data melalui saluran

    komunikasi

    %data encr/ption on motion&.

    '. Penyimpanan data di dalam disk storage

    %data encr/ption at rest&

  • 7/25/2019 Algoritma Dan Bil.bulat

    84/111

    Teknik Elektro 84

    (ata ditransmisikan dalam bentuk chiperteks. (i

    tempat penerima chiperteks dikembalikan lagi

    menjadi plainteks.

    (ata di dalam media penyimpanan komputer

    %seperti &ard disk& disimpan dalam bentuk

    chiperteks. Untuk membacanya, hanya orang yang

    berhak yang dapat mengembalikan chiperteks

    menjadi plainteks.

  • 7/25/2019 Algoritma Dan Bil.bulat

    85/111

    Teknik Elektro 85

    7ontoh enkripsi pada dokumenPlainteks %plaint*t&!

    -etika sa.a /erjalanjalan di pantai,

    sa.a menemukan /an.ak sekali kepiting

    .ang merangkak menuju laut ereka

    adalah anakanak kepiting .ang /aru

    menetas dari dalam pasir 2alurimereka mengatakan /ahwa laut adalah

    tempat kehidupan mereka

    7ipherteks %ciphert*t&!

    +t3*4p56p7p5&t8.p9p;.p9p5s*5 p3p*4p5&p7p456t4p9*54t *3* ?7p?5=t8p?4p45=t>.>59p>3@5 At8t4

    ppsp9pw5pp4;pp454t *3*?57p

    ?5&p8>=tt3p65sp8*5sp9p=5 p6*8@5

    p9>8*=tt84p5=t?p3p4p5&pwCp59p> 3

    5psp9pw3t= p354tw*s> p5=t8t4p@

  • 7/25/2019 Algoritma Dan Bil.bulat

    86/111

    Teknik Elektro 86

    Plainteks %lena/mp&! 7ipherteks %lenaD/mp&!

  • 7/25/2019 Algoritma Dan Bil.bulat

    87/111

    Teknik Elektro 87

    Plainteks %siswad/&!

    @3M @ama 5inggi #erat

    000001 Elin amilah 1F0 G0

    00000D ari4 H 1GI J#00000K auik Lida.at 1IF FG

    00000J Miti 2urhali4a 1ID FI

    00000G Nma Orama 1I1 F0

    00000F 4i4 Burhan 1"1 GJ

    00000I Manti 2ursanti 1FI G#

    00000" Qut Ranti 1F# F1

    00000# Ona Ma/arina 1I1 FD

  • 7/25/2019 Algoritma Dan Bil.bulat

    88/111

    Teknik Elektro 88

    7ipherteks %siswaDd/&!

    @3M @ama 5inggi #erat

    000001 t8p?4p45=t>.>59>3 =>4p 6p7p

    00000D =tt3p65sp8*5sp p6*8@ 4tw*s>

    00000K 3t= p354tw*s> p5= 5=t8 sp8*5

    00000J 6p7p5=tt=>4p5&p7p4 &p7p4 w*s>

    00000G 6t4p9*54t *3*?7p p>35psp 6t4p9

    00000F sp8*5sp9p=5 p6*8@5 *3*? tt84p5=

    00000I +t3*4p56p7p5&t8.pp; >4p >.>59

    00000" &pwCp59p>35psp9pw +tw*s *3*?

    00000# t=>4p5&p7p456p9 &p7p >4p5&p

    1eterangan! hanyaield@ama, #erat, dan 5inggi yang dienkripsi.

  • 7/25/2019 Algoritma Dan Bil.bulat

    89/111

    Teknik Elektro 89

    @otasi Matematis

    Misalkan!

    7 chiperteks

    ! plainteks dilambangkan

    Fungsi enkripsiEmemetakan!ke 7,

    E%!& 7

    Fungsi dekripsi8memetakan 7ke!, 8%7& !

  • 7/25/2019 Algoritma Dan Bil.bulat

    90/111

    Teknik Elektro 90

    (engan menggunakan kunci K, maka fungsienkripsi dan dekripsi menjadi

    EK%!& 7

    8K%7& ! dan kedua fungsi ini memenuhi

    8K%EK%!&& !

  • 7/25/2019 Algoritma Dan Bil.bulat

    91/111

    Teknik Elektro 91

    K K

    plainteks chiperteks plainteks semulaenkripsi dekripsi

    Gambar 1.3 Enkripsi dan dekripsi dengan kunci

  • 7/25/2019 Algoritma Dan Bil.bulat

    92/111

    Teknik Elektro 92

    $ika kunci enkripsi sama dengan kunci dekripsi, makasistem kriptografinya disebut sistem simetri atausistemkon$ensional.

    Algoritma kriptografinya disebut algoritma simetri ataualgoritma kon4ensional .

    7ontoh algoritma simetri!

    -8E%8ata Enc/ption tandard&

    - *ijndael

  • 7/25/2019 Algoritma Dan Bil.bulat

    93/111

    Teknik Elektro 93

    )kema algoritma simetri

    $ika kunci enkripsi tidak sama dengan kunci dekripsi, maka sistemk i t fi di b t i t i i t i % t i t &

  • 7/25/2019 Algoritma Dan Bil.bulat

    94/111

    Teknik Elektro 94

    kriptografinya disebut sistemnirsimetri %as/mmetric s/stem&

    @ama lain! sistemkriptografi kunci4publik

    karena, kunci enkripsi bersifat publik %public ke/& sedangkan kunci dekripsibersifat rahasia %private ke/&.

    Pengirim pesan menggunakan kunci publik si penerima pesan untukmengenkripsi pesan

    Penerima pesan mendekripsi pesan dengan kunci pri4atnya sendiri.

    7ontoh algoritmai!9

  • 7/25/2019 Algoritma Dan Bil.bulat

    95/111

    Teknik Elektro 95

    Kunci publik Kunci privat

    plainteks cipherteks plainteks asal

    enkripsi dekripsi

  • 7/25/2019 Algoritma Dan Bil.bulat

    96/111

    Teknik Elektro 96

    Caesar Ci$her

    5iap huruf alfabet digeser huruf ke kanan

    i: B Q S E T L O - ' 2 N P U H M ! V % W R +

    ci : D E F G H I J K L M N O P Q R S T U ! " # $ A % &

    7ontoh!Plainteks! %MO MEHOW S2 E22R NBE'OW

    7ipherteks! D$DL D!HULA GDQ !HPDQQ%A REHOLA

  • 7/25/2019 Algoritma Dan Bil.bulat

    97/111

    Teknik Elektro 97

    Misalkan >, ", I,; '

  • 7/25/2019 Algoritma Dan Bil.bulat

    98/111

    Teknik Elektro 98

    p" AL > c"E%>& %> B & mod '; (L

    p' L '' c'E%''& %'' B & mod '; '< QL

    p AL > cE%>& %> B & mod '; (L

    p= )L "9 c=E%"9& %"9 B & mod '; '" RL

    dstI

    Alternatif lain: gunakan tabel substitusi

  • 7/25/2019 Algoritma Dan Bil.bulat

    99/111

    Teknik Elektro 99

    $ika pergeseran huruf sejauh k, maka!

    0nkripsi! ciE%pi& %piB k& mod ';(ekripsi!pi8%ci& %ciE k& mod ';

    k kunci rahasia

  • 7/25/2019 Algoritma Dan Bil.bulat

    100/111

    Teknik Elektro 100

  • 7/25/2019 Algoritma Dan Bil.bulat

    101/111

    Teknik Elektro 101

    "lgorima R%"

    (itemukan oleh tiga peneliti dariM0

    %Massac&ussets nstitute o 0ec&nolog/&,

    yaitu *on *i4est, Adi )hamir, dan 2en

    Adleman, pada tahun "D:;.

    5ermasuk algoritma kriptografi nirsimetri.

  • 7/25/2019 Algoritma Dan Bil.bulat

    102/111

    Teknik Elektro 102

    )etiap pengguna mempunya sepasan kunci!

    ". 1unci publik! untuk enkripsi

    '. 1unci pri4at! untuk dekripsi

    1unci publik tidak rahasia %diktehui semua

    orang&, kunci pri4at rahasia %hanyadiketahui pemilik kunci saja&

  • 7/25/2019 Algoritma Dan Bil.bulat

    103/111

    Teknik Elektro 103

    Pembangkitan pasangan kunci

    ". Pilih dua bilangan prima, adan b %rahasia&

    '. Situng n ab. #esaran ntidak perlu dirahasiakan.

    . Situng m %aE "&%bE "&.=. Pilih sebuah bilangan bulat untuk kunci publik, sebut

    namanya e, yang relatif prima terhadap m.

  • 7/25/2019 Algoritma Dan Bil.bulat

    104/111

    Teknik Elektro 104

    Enkripsi

    ". @yatakan pesan menjadi blok-blok plainteks!p",p',

    p, I %harus dipenuhi persyaratan bahwa nilaipi

    harus terletak dalam himpunan nilai >, ", ', I, nE "

    untuk menjamin hasil perhitungan tidak berada di

    luar himpunan&

    '. Situng blok cipherteks ciuntuk blok plaintekspi

    dengan persamaan

    cipiemodn

    yang dalam hal ini, eadalah kunci publik.

  • 7/25/2019 Algoritma Dan Bil.bulat

    105/111

    Teknik Elektro 105

    Dekripsi

    Proses dekripsi dilakukan dengan menggunakan

    persamaan

    pi cidmodn,

    yang dalam hal ini, dadalah kunci pri4at.

  • 7/25/2019 Algoritma Dan Bil.bulat

    106/111

    Teknik Elektro 106

    Contoh #1" Misalkan a =: dan b :" %keduanyaprima&, maka dapat dihitung

    n ab :

    m %aE "&%bE "& ''>.

    Pilih kunci publik e :D %yang relatif prima dengan''> karena pembagi bersama terbesarnya adalah "&.

    @ilai edan ndapat dipublikasikan ke umum.

  • 7/25/2019 Algoritma Dan Bil.bulat

    107/111

    Teknik Elektro 107

    )elanjutnya akan dihitung kunci dekripsi ddengankekongruenan!

    ed" %mod m&

    (engan mencoba nilai-nilai k ", ', , I,diperoleh nilai d yang bulat adalah ">"D. 3niadalah kunci dekripsi.

    :D

    &''>%" +=k

    d

  • 7/25/2019 Algoritma Dan Bil.bulat

    108/111

    Teknik Elektro 108

    Misalkan plainteks ! SA*3 3@3

    atau dalam desimal A)733! :';

  • 7/25/2019 Algoritma Dan Bil.bulat

    109/111

    Teknik Elektro 109

    c" :';:Dmod : '">

    digit.

    Menurut *i4est dan kawan-kawan, uasaha untukmencari faktor bilangan '>> digit membutuhkan

    waktu komputasi selama = milyar tahunT %denganasumsi bahwa algoritma pemfaktoran yangdigunakan adalah algoritma yang tercepat saat inidan komputer yang dipakai mempunyai kecepatan

    " milidetik&.