ENCODER - DECODER SANDI BLOK LINEAR (15,11) DENGAN DUA PC MENGGUNAKAN BLUETOOTH

  

ENCODER - DECODER SANDI BLOK LINEAR (15,11)

DENGAN DUA PC MENGGUNAKAN BLUETOOTH

TUGAS AKHIR

  

Diajukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik

Program Studi Teknik Elektro

  

Disusun oleh:

HERI SETIYONO

NIM : 025114062

  

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2007

  

LINEAR BLOCK CODE (15,11) ENCODER-DECODER

USING TWO PC’S AND BLUETOOTH

FINAL PROJECT

  

Presented as Partial Fulfillment of the Requirements

To Obtain the Sarjana Teknik Degree

In Electrical Engineering

  

By:

HERI SETIYONO

Student ID Number: 025114062

  

ELECTRICAL ENGINEERING STUDY PROGRAM

ELECTRICAL ENGINEERING DEPARTMENT

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2007

  

HALAMAN MOTTO

Penget ahuan akan menempat kan anda diant ar a or ang – or ang bij ak.

  Tindakan akan menempat kan anda diant ar a or ang – or ang sukses.

  Penger t ian akan menempat kan anda diant ar a or ang – or ang yang ber bahagia.

  (Dr . I br ahim Ellf iky) Kar ena it u Aku ber kat a kepadamu : apa saj a yang kamu mint a dan doakan, per cayalah bahwa kamu t elah mener imanya, maka hal it u akan diber ikan kepadamu. (Mat ius 11:24)

  Ayun langkah per t ama dalam iman. Anda t idak har us melihat selur uh anak t angga. Hanya mengambil langkah per t ama.

  (Dr . Mar t in Lut her King J r .) Kehor mat an bukanlah apa yang kit a t ampilkan keluar , namun apa yang kit a pancar kan dar i dalam : budi peker t i, ket egar an, dan ket er hor mat an.

  (J ansen H. Sinamo)

HALAMAN PERSEMBAHAN

  

Karya ini kupersembahankan unt uk :

Tuhan Yesus K ristus & Bunda M aria

  (

syukur atas kasih dan rahmatnya

  ) & KELUARGA TERCINTA

  

INTISARI

  Pentingnya sebuah sistem komunikasi data menuntut manusia selalu berusaha untuk mengembangkan teknologi komunikasi agar proses pengiriman data dapat dilakukan dengan baik tanpa ada kesalahan.

  Sandi blok linear merupakan salah satu metode penyandian yang dapat digunakan agar komunikasi data dapat dilakukan dengan baik tanpa ada kesalahan. Untuk membantu mempelajari tentang sandi blok linear maka dibuatlah simulasi

encoder – decoder sandi blok linear (15,11) menggunakan program Visual Basic.

Program simulasi yang dibuat mencakup pembuatan matriks generator, penyandian, pemberian galat, pendeteksian dan pengoreksian galat, serta pengawasandian.

  Sistem pengiriman data pada program ini dilakukan melalui media transmisi Bluetooth. Dengan penggunaan Bluetooth, pengiriman data dapat dilakukan lebih efektif dan efisien.

  Hasil simulasi menunjukkan dengan pemberian 0 galat (tanpa galat) dan 1 galat di semua posisi bit sandi, proses pendeteksian dan pengoreksian galat dapat dilakukan dengan baik.

  Kata kunci : Sandi blok linear, Bluetooth

  

ABSTRACT

  The important of data communicating system demand human to always try their best to develops communication technology so the process of data sending can be done properly without any mistakes.

  Linear block code is one of the coding methods which can use so the data communication can be done with properly without any mistakes. To assist learning about linear block code then a linear block code (15,11) encoder-decoder simulation was made using Visual Basic Program. Simulation program that made includes the made of matrix generator, coding, error testing, detecting and correction of error, also coding supervision.

  The data sending system on this program was done through Bluetooth transmission. Using Bluetooth, the data sending can be done more effectively and efficiently.

  The simulation shows the result of data without error (error given 0) and one error in all of code bit position, detection process and correction of errors was able to do with properly. Key words: Linear block code, Bluetooth

KATA PENGANTAR

  Puji syukur penulis panjatkan kepada Tuhan Yesus Kristus, oleh karena kasih dan penyertaan-Nya sehingga penulis dapat meyelesaikan Tugas Akhir yang berjudul “Encoder – Decoder Sandi Blok Linear (15,11) Dengan Dua PC

  

Menggunakan Bluetooth” . Tugas Akhir ini disusun sebagai salah satu syarat untuk

  memperoleh gelar Sarjana pada jurusan Teknik Elektro, Fakultas Sains Dan Teknologi Universitas Sanata Dharma Yogyakarta.

  Tersusunnya tugas akhir ini tidak terlepas dari bantuan dan dukungan dari berbagai pihak. Pada kesempatan ini tidak lupa penulis mengucapkan terima kasih yang dalam kepada :

  1. Bapak Ir. Greg. Heliarko, S.J., S.S., B.S.T., M.A., M.Sc. selaku Dekan Fakultas Sains Dan Teknologi.

  2. Bapak Agustinus Bayu Primawan, S.T., M.Eng. selaku Ketua Jurusan Teknik Elektro.

  3. Bapak Damar Wijaya, S.T., M.T.,selaku Dosen Pembimbing I yang telah banyak memberikan bimbingan dan pengarahan hingga tugas akhir ini dapat tersusun.

  4. Ibu Ir. Th. Prima Ari Setyani, M.T., selaku Dosen Pembimbing II yang telah memberikan masukan dan saran.

  5. Semua Bapak dan Ibu dosen TE yang telah memberikan bimbingan dan pengetahuan.

  6. Bapak dan Ibuku atas doa, dukungan dan cinta yang besar yang telah diberikan dengan segenap kasih sayang.

  7. Kakakku : Mas Aris, Mba Enik, Mba Nuri, terima kasih atas dukungan dan doanya.

  8. Agung Broto, terima kasih pren atas bantuannya.

  9. Andre TE 2000 dan Adit TE2003, Thank’s ya dah dipinjamin Bluetooth.

  10. Vero terima kasih pinjaman printernya.

  11. My Friends : Nendi, Galuh, Andri, Alex, Adi. Terima kasih atas bantuan dan kebersamaannya selama ini.

  12. Anak kos-kosan 134B : Agung “Engkong”, Niko, Alven, Wawan, Fandy, Purba, Frankie, Sigit, Dino, Vin, Paul, Sinung, Yono, Koko,Widi, Charles terima kasih atas rasa kekeluargaannya

  13. Deta, Septi, Nisi, Ari , kapan jalan- jalan lagi 

  14. Teman – Teman JKMK semuanya

  15. Semua teman – teman TE2002 16. Seluruh teman – temanku yang ada di USD....

  17. Dan seluruh teman dan pihak – pihak lain yang tidak dapat saya sebutkan satu persatu.Terima kasih atas bantuan dan dukungannya.Gbu Penulis sungguh sangat menyadari bahwa masih banyak kekurangan dalam pembuatan dan penyusunan Tugas Akhir ini, maka dari itu segala saran dan kritik yang bersifat membangun sangat diharapkan penulis.

  Yogyakarta, September 2007 Penulis

  

DAFTAR ISI

HALAMAN JUDUL ........................................................................................... i HALAMAN PERSETUJUAN

  ............................................................................. iii

  

HALAMAN PENGESAHAN .............................................................................. iv

PERNYATAAN KEASLIAN KARYA ................................................................ v

HALAMAN MOTTO ............................................................................................. vi

HALAMAN PERSEMBAHAN ............................................................................ vii

  INTISARI

  ................................................................................................................ viii

  

ABSTRACT ....................................................................................................... .... ix

KATA PENGANTAR ......................................................................................... ... x

DAFTAR ISI ....................................................................................................... xii

DAFTAR GAMBAR ........................................................................................... xvi

DAFTAR TABEL

  ............................................................................................... xviii

  BAB I PENDAHULUAN ................................................................................. 1

  1.1 Judul ........................................................................................ 1

  1.2 Latar Belakang ......................................................................... 1

  1.3 Batasan Masalah ...................................................................... 3

  1.4 Tujuan Penelitian ..................................................................... 4

  1.5 Manfaat Penelitian ................................................................... 4

  1.6 Sistematika Penulisan .............................................................. 4

  

BAB II DASAR TEORI .................................................................................... 6

  2.1 Sandi Blok Linear (Linear Block Code) .................................. 7

  2.1.1 Matriks Generator .......................................................... 8

  2.1.2 Sandi Blok Linear Sistematis ........................................ 10

  2.1.3 Matriks Uji Paritas ......................................................... 12

  2.1.4 Pengujian Sindrom ......................................................... 13

  2.1.5 Koreksi Galat ................................................................. 15

  2.1.6 Bobot dan Jarak dari Vektor Biner ................................ 17

  2.1.7 Jarak Minimum dari Sandi Blok ................................ 18

  2.1.8 Kemampuan Deteksi dan Koreksi Galat dari Sandi blok linear ....................................................................... 19

  2.2 Bluetooth ............................................................................... 20

  2.2.1 Pengenalan Bluetooth ................................................ 20

  2.2.2 Aplikasi dan Layanan ................................................. 21

  2.2.3 Diskripsi Umum Sistem Bluetooth ............................ 21

  2.2.4 Pita Frekuensi dan Kanal RF ...................................... 22

  

BAB III PERANCANGAN ................................................................................ 23

  3.1 Diagram Alir Program (Flowchart) Pada Menu Utama ........ 25

  3.1.1 Lay Out Pada Menu Utama ........................................... 26

  3.2 Proses Penyandian (Fungsi Pengirim) ................................... 27

  3.2.1 Diagram Alir Program (Flowchart) Pada Fungsi Pengirim ............................................................................... 34

  3.2.2 Lay Out Pada Fungsi Pengirim ..................................... 35

  3.3 Proses Pengawasandi (Fungsi Penerima) ................................ 36

  3.3.1 Diagram Alir Program (Flowchart) Pada Fungsi Penerima ...................................................................... 38

  3.3.2 Lay Out Pada Fungsi Penerima..................................... 40

  3.4 Bluetooth .................................................................................. 41

  

BAB IV PEMBAHASAN ................................................................................... 42

  4.1 Hasil Akhir Perancangan .......................................................... 42

  4.2 Cara Kerja Program .................................................................. 42

  4.2.1 Menu Utama ................................................................... 42

  4.2.2 Fungsi Pengirim (Encoder) ............................................ 44

  4.2.2.1 Proses Pengubahan Karakter Pesan ke Bentuk Bilangan Biner ............................................. 45

  4.2.2.2 Proses Penyandian (Encoder) .................................. 46

  4.2.2.3 Hasil Pengamatan pada Encoder (Pengirim) .......... 50

  4.2.3 Fungsi Penerima (Decoder)........................................... 57

  4.2.3.1 Hasil Pengamatan pada Decoder (Penerima).......... 61

  

BAB V KESIMPULAN DAN SARAN .............................................................. 67

  5.1 Kesimpulan .............................................................................. 67

  5.2 Saran ......................................................................................... 67

  

DAFTAR PUSTAKA ............................................................................................. 69

LAMPIRAN ............................................................................................................ 70

  

DAFTAR GAMBAR

Gambar 2.1 Sandi Blok...................................................................................... 7Gambar 3.1 Blok Encoder – Decoder Sandi Blok Linear Secara Umum........... 23Gambar 3.2 Sistem Komunikasi yang Menggunakan Bluetooth ....................... 24Gambar 3.3 Blok Rancangan Program pada Sandi Blok Linear ........................ 24Gambar 3.4 Flowchart Menu Utama ..................................................................25Gambar 3.5 Lay Out Menu Utama ..................................................................... 26Gambar 3.6 Diagram Blok Proses Penyandian (Fungsi Pengirim) ....... ............27Gambar 3.7 Matriks Generator [G] .................................................................... 34Gambar 3.8 Flowchart Penyandian + Pemberian Galat .................... ................ 34Gambar 3.9 Lay Out pada Fungsi Pengirim ...................................................... 35Gambar 3.10 Diagram Blok Proses Pengawasandi ............................................. 36 TGambar 3.11 Matriks H .................. ............................................................. ..... 37Gambar 3.12 Flowchart Proses Pengawasandi dan Koreksi Galat ................... 38Gambar 3.13 Lay Out pada Fungsi Penerima ...................................................... 40Gambar 4.1 Tampilan Menu Utama ................................................................... 43Gambar 4.2 Tampilan Fungsi Pengirim (Encoder) ........................................... 44Gambar 4.3 Tampilan Pengubahan Karakter Pesan Menjadi Bentuk Biner ....... 45Gambar 4.4 Pesan Biner yang telah Disandikan (15 Bit) ................................... 46Gambar 4.5 Matrik Generator ………....................................................... .......... 47Gambar 4.6 Tampilan Data Posisi Error Salah ........................... ...................... 48Gambar 4.7 Receive Word ...................................................................... ........... 49Gambar 4.8 Tampilan Penerima Saat Data Belum Terkoneksi............. ............. 56Gambar 4.9 Form Tampilan Fungsi Penerima .................................................... 57 TGambar 4.10 Matrik H ........................................................................................ 58Gambar 4.11 Data yang Diterima dan Hasil Cek Error .......................................59Gambar 4.12 Vektor Pesan dan Pesan yang Benar ...............................................60

  DAFTAR TABEL

Tabel 2.1 Tabel Polinomial Primitif ......................................................... 10Tabel 2.2 Larik Standar............................................................................ 15Tabel 2.3 Batas Frekuensi serta kanal RF ................................................... 22Tabel 2.4 Look Up Table ............................................................................ 39Tabel 2.5 Hasil Pengamatan Pada Proses Encoder...................................... 50Tabel 2.6 Hasil Pengamatan Pada Proses Decoder..................................... 61Tabel 2.7 Pemberian Error di Semua Posisi Bit ......................................... 66

BAB I PENDAHULUAN

  1.1 Judul Encoder – Decoder Sandi Blok Linear (15,11) dengan Dua PC Menggunakan Bluetooth.

  1.2 Latar Belakang

  Penyandian isyarat digital berguna untuk meningkatkan kinerja komunikasi dengan meningkatkan ketahanan sinyal terhadap berbagai gangguan saluran, seperti derau (noise), pelemahan sinyal (fading), perusakan sinyal oleh sinyal lain (jamming) [1]. Penyandian dikelompokkan dalam dua jenis, penyandian gelombang (waveform coding) dan urutan terstruktur (structured sequences/

  structured redudancy

  ). Waveform coding berhubungan dengan pengubahan bentuk gelombang menjadi bentuk gelombang yang ”lebih baik”, sehingga mengurangi terjadinya galat (error). Sedangkan structured sequences berhubungan dengan pengubahan urutan data menjadi urutan yang ”lebih baik” dan mempunyai bit berlebih (redundant bit) yang digunakan untuk mendeteksi dan mengoreksi error.

  Ada banyak sandi yang dapat digunakan untuk mendeteksi dan mengoreksi kesalahan dalam pengiriman data, salah satunya adalah sandi blok linear. Sandi blok linear adalah salah satu jenis sandi uji paritas yang mempunyai notasi (n, k) dan termasuk jenis sandi structured sequences.

  Dalam penyandian data digital antar dua PC diperlukan sebuah media transmisi agar data dapat dikirimkan dari satu komputer ke komputer lainnya. Ada banyak media transmisi yang sekarang ini digunakan seperti serial port, parallel port , dan wireless (tanpa kabel).

  Salah satu media transmisi wireless yang sedang populer di masyarakat adalah teknologi Bluetooth. Spesifikasi Bluetooth pertama kali dikembangkan oleh

  Ericsson , Sony Ericsson yang saat ini menjadi dan Ericsson mobile Platforms.

  Bluetooth kemudian diresmikan oleh Special Interest Group (SIG), yang berdiri pada 20 Mei 1999. Organisasi tersebut didirikan oleh Sony Ericsson ,

  IBM , Intel, Toshiba dan Nokia [2].

  Bluetooth adalah sebuah teknologi komunikasi wireless (tanpa kabel) yang beroperasi dalam pita frekuensi 2,4 GHz. Bluetooth menggunakan sebuah

  

frequency hopping transceiver yang mampu menyediakan layanan komunikasi

  data dan suara secara real-time antara dua host Bluetooth dengan jarak jangkauan layanan yang terbatas (sekitar 10 meter). Bluetooth dapat berupa card yang bentuk dan fungsinya hampir sama dengan card yang digunakan untuk wireless local area

  network (WLAN).

  Bluetooth mampu menawarkan fitur yang baik untuk teknologi mobile

  

wireless, dengan biaya yang relatif rendah, konsumsi daya yang rendah, dan

  mampu menawarkan solusi yang cukup efektif dan efisien dalam memberikan layanan kepada user. Untuk melakukan transfer data, Bluetooth memiliki kecepatan kurang dari 1 Mbit/s dan jangkauan yang relatif pendek.

  Dengan kelebihan Bluetooth untuk melakukan transfer data, maka penulis akan menggunakan Bluetooth sebagai media transmisi dalam penyandian sandi blok linear dengan dua PC.

1.3 Batasan Masalah

  Batasan masalah dari tugas akhir ini adalah:

  1. Penyandian sandi blok linear (15,11) 2.

   Menggunakan dua PC, dan setiap komputer dapat berfungsi sebagai transceiver .

3. Program yang digunakan sebagai simulasi adalah Visual Basic.

  4. Pengiriman data dari satu komputer ke komputer lainnya menggunakan Bluetooth.

  5. Input terdiri 1 karakter saja (alphabets, numbers, symbols).

  6. Bluetooth yang digunakan memiliki jangkauan 100 meter.

  1.4 Tujuan Penelitian

  Menghasilkan program simulasi yang digunakan untuk mengetahui metode dan proses kerja penyandian sandi blok linear pada dua PC dengan media transmisi Bluetooth.

  1.5 Manfaat Penelitian

  Beberapa manfaat yang diharapkan dari penelitian ini adalah sebagai berikut:

  1. Dapat mempermudah pemahaman mahasiswa mengenai metode penyandian sandi blok linear.

  2. Dapat membantu dosen dalam menjelaskan encoder – decoder sandi blok linear menggunakan Bluetooth sebagai media transmisi.

  1.6 Sistematika Penulisan

  Sistematika penulisan tugas akhir ini adalah:

  BAB I PENDAHULUAN Bab pendahuluan ini berisi tentang judul, latar belakang, perumusan

  masalah, batasan masalah, tujuan penelitian, manfaat penelitian dan sistematika penulisan.

  BAB II DASAR TEORI Bab ini berisi dasar teori yang berkaitan dengan metode – metode penyandian sandi blok linear dan penjelasan mengenai Bluetooth. Selain itu disertai juga dengan penjelasan mengenai program Visual

Basic yang digunakan dalam perancangan program ini.

BAB III PERANCANGAN PENELITIAN Bab ini menjelaskan tentang diagram blok program dan diagram alir program yang akan dibuat dengan Visual Basic. BAB IV PEMBAHASAN Bab ini berisi hasil dari perancangan yaitu berupa program Visual Basic yang telah siap untuk menjalankan proses penyandian pada sandi blok linear beserta dengan pembahasannya. BAB V KESIMPULAN DAN SARAN Bab ini berisi kesimpulan dan saran – saran untuk pengembangan lebih lanjut.

BAB II DASAR TEORI

2.1. Sandi Blok Linear ( Linear Block Code)

  Sandi blok linear adalah salah satu jenis sandi uji paritas yang mempunyai notasi (n, k). Penyandi mengubah blok k digit pesan (vektor pesan) menjadi blok yang lebih panjang dengan n digit katasandi (vektor sandi).

  Sandi blok linear yang akan diteliti adalah sandi blok linear (15, 11). Penyandi mengubah blok 11 digit pesan (vektor pesan) menjadi blok yang lebih panjang dengan 15 digit katasandi (vektor sandi).

  Pembahasan tentang sandi blok linear dibatasi pada sandi biner. Pada sandi blok linear terdiri dari dua elemen (0 dan 1) atau tersusun menjadi deretan denyut-denyut 0 dan 1, maka sandi tersebut adalah sandi biner yang terdiri dari digit – digit biner (bit). k

  Sandi blok biner dapat dikatakan linear jika dan hanya jika 2 kata sandi membentuk subspace berdimensi k dari vektor space semua n tuples pada medan biner. Dengan kata lain, sandi blok biner dikatakan linear jika dan hanya jika penjumlahan modulo dua kata sandi juga merupakan kata sandi.

  Proses penyandian masing-masing sandi ke dalam suatu blok dengan n bit, yang terdiri dari k bit sandi pesan dan (n-k) bit sandi periksa, seperti pada Gambar 2.1.[3]

Gambar 2.1 Sandi Blok [3]

  k

  Pesan k-bit dari 2 urutan pesan yang berbeda disebut sebagai k-tuples

  6

  n

  (urutan dari k digit). Blok n-bit dapat membentuk 2 urutan yang berbeda disebut

  k

n-tuples . Prosedur penyandian mengalokasikan setiap 2 pesan k-tuples secara unik

k dipetakan menjadi 2 kata sandi n-tuples.

  Satu set n-tuples biner (V n ) disebut vektor space dari medan biner dua elemen (0 dan 1). Medan biner ini mempunyai dua operasi yaitu penjumlahan dan perkalian, sehingga semua hasil operasi sama dengan elemen biner. Operasi aritmatika penjumlahan dan perkalian ditentukan dengan medan aljabar yang disepakati. Dalam medan biner (binary field), aturan untuk penjumlahan dan perkalian adalah sebagai berikut [1]:

  Penjumlahan (XOR) Perkalian 0  0 = 0 0  0 = 0 0  1 = 1 0  1 = 0 1  0 = 1 1  0 = 0 1  1 = 0 1  1 = 1 Operasi penjumlahan dengan lambang  menunjukkan penjumlahan modulo-2.

  Untuk menentukan penyandian, vektor subspace harus diketahui lebih dahulu.

  Suatu subset dari S dari vektor space Va disebut subspace jika memenuhi persyaratan sebagai berikut :

  1. Vektor dengan semua elemen nol berada di dalam S.

  2. Penjumlahan dua vektor di dalam S juga terdapat di dalam S. Dua hal di atas adalah syarat fundamental dari karakterisasi aljabar sandi blok linear. Jika V i dan V j adalah dua kata sandi (vektor sandi) dalam sandi blok biner (n, k), maka sandi ini disebut linear jika, dan hanya jika, (V iV j ) juga merupakan vektor sandi. Jadi sandi blok linear adalah sandi yang tidak dapat menghasilkan vektor-vektor di luar subspace dari penjumlahan vektor sandi yang benar (anggota subspace ).

2.1.1 Matriks Generator

  Karena satu set vektor sandi yang membentuk sandi blok mempunyai

  subspace

  berdimensi k dari vektor space biner berdimensi n (k < n ), maka akan

  k k

  ada satu himpunan n-tuples, kurang dari 2 yang dapat membangkitkan semua

  2

  , k

  vektor anggota dari subspace. Setiap set dari 2 vektor sandi U dapat ditulis sebagai berikut :

  Um 1 Vm 1 2 V  ...  m 2 k k V .........................................……........(2.1) dengan m = (0 atau 1) adalah digit pesan.

  Vektor sandi biasanya ditunjukkan oleh vektor baris. Jadi pesan m, dituliskan sebagai vektor baris (matrik 1  k yang mempunyai satu baris dengan k kolom).

  m = m , m , m 1 2 k ........................................................

  (2.2) Pembangkitan vektor sandi U, ditulis dalam notasi matrik sebagai hasil kali dari matrik m dan G:

  U

  = m . G............................................................…..(2.3) Secara umum matriks generator dapat ditentukan dengan larik kn

  V v vv

      n

  1

  11

  12

  1

      

  V v v v

  2

  21

  22 2 n

      

  G = ...............................……..(2.4)    

        

  

  V v v v k k 1 k 2 kn

      Jadi vektor sandi yang sesuai dengan vektor pesan adalah kombinasi linear dari baris matrik G. Karena sandi ditentukan oleh G, penyandi hanya perlu

  k menyimpan k baris dari matrik G (tidak total 2 vektor sandi).

  Untuk membuat matriks generator G dan matrik periksa paritas H yang digunakan pada sandi blok linear dengan Hamming, dilakukan langkah sebagai berikut :

  1. Memilih polinomial primitif sesuai dengan panjang bit periksa, seperti ditunjukkan pada Tabel 2.1.

  3. Membuat G dari polinomial primitif.

Tabel 2.1 Tabel Polinomial Primitif [3]

  Matriks generator dengan bentuk sistematis dapat dibuat dengan n-k+i polinomial pembangkit. Jika X dibagi dengan polinomial pembangkit g(X), dengan i = 0, 1, 2, … , k-1, maka diperoleh : n-k+i

  X = a (X) g(X) + b (X) ............................... ….(2.5)

  

i i

  dengan b i (X) adalah sisa dalam bentuk : n-k-1 b (X) = b + b X + … + b , X ................ ..(2.6)

  

i i0 i1 i n-k-1

  Sebuah matrik generator dalam bentuk sistematis akan terbentuk dari koefisien sisa b (X).

  i

2.1.2 Sandi Blok Linear Sistematis

  Sandi blok linear sistematis adalah pemetaan vektor pesan berdimensi k ke sandi berdimensi n dengan urutan yang dibangkitkan serupa dengan k digit pesan.

  Digit (n-k) sisanya merupakan digit paritas. Sandi blok linear sistematis mempunyai matriks generator dalam bentuk [1]: G = [PI k ]……………………………………………………………(2.7)

  G =

     ... 1 ...

  .........................................(2.12) dengan p 1 , p 2 ,…, p n-k adalah bit-bit paritas

  U = p 1 , p 2 , …,p n-k , m 1

, m

2 ,…, m k

  maka vektor sandi sistematis dapat dinyatakan sebagai

  , u 2 ,…,u n ............................................................. ..(2.11)

  = u 1

  U

  ...............................................................(2.10) dan vektor sandi n-tuple secara umum adalah

  m = m 1 , m 2 , …,m k

  = m i – n+k untuk i = (n-k + 1),…p Jika pesan k-tuple adalah

   = m 1 p 1i + m 2 p 2i + …+ m k p ki untuk i = 1, 2, …, (n-k)

  ...... .....(2.9) dengan u i

  ... ) ( , 1 ... 2 1 ) ( , 2 22 21 ) ( , 1 12 11 k n k k k k n k n p p p p p p p p p

  1 ...

  : ...

       

         

         

  ] x

  ,...,m k

  ,m 2

  u 1 ,u 2 ,…u n = [m 1

  adalah matriks identitas (nilai semua elemen adalah nol kecuali pada diagonal utama sama dengan satu) k x k. Dari persamaan (2.4) dan (2.7), setiap vektor sandi dapat dinyatakan sebagai berikut:

  k

  ……………………………(2.8) dengan P adalah sebagai larik paritas dari matriks generator, p ij = (0 atau 1), dan I

  ) ( , 2 1 ) ( , 2 22 21 ) ( , 1 12 11 k n k k k k n k n p p p P P P p p p

  ... 1 ...

  1 ...

  : ...

     ... 1 ...

       

  m 1 , m 2 ,…, m k adalah bi-bit pesan

  p 1 = m 1 p 11 + m 2 p 21 + … + m k p k1 p = m p + m p +… + m p 2 1 12 2 22 k k2

2.1.3 Matriks Uji Paritas

  Matriks uji paritas H, digunakan untuk pengawasandi vektor sandi yang diterima. Untuk setiap matriks generator (k x n), G, terdapat matriks H (n-k) x n,

  T T

  sedemikian sehingga baris pada G orthogonal dengan baris H, dan GH = 0. H adalah transpose dari H, dan 0 adalah matriks nol k x (n-k). untuk memenuhi orgonalitas, komponen matrik H ditulis [1]:

  T H = I n-k P ..................................................................(2.13)

  T

  dengan P adalah transpose dari matriks P. Dengan adanya matriks H, maka sandi linear (n,k) yang dibangkitkan dari G dapat diungkapkan sebagai berikut : v n-

  T

tuple adalah kata sandi yang dibangkitkan dari G jika dan hanya jika v.H = 0.

  Matriks H dapat ditulis sebagai berikut :

  T H

  = [I n-k  P ]

  1 11 21 k 1    1  p pp 12

22

k 2

   p pp

   H =

  .........................…(2.14)

    

     p pp

  1 1 ( nk ) 2 nk k ( nk )  ( )  

   T

  dan matriks H dapat ditulis:

  H T

  2

  Jika r = r

  1 , r

  2

  ,….,r

  n

  adalah vektor sandi yang diterima, yang merupakan hasil dari pengiriman U = u

  1 ,

  u

  ,….,u

  T = 0.

  n

  , maka r dapat ditulis [1]:

  r = U + e................................................................................... (2.17)

  dengan e = vektor galat yang terjadi pada kanal yaitu e = e

  1 ,

  e

  2

  ,…,e

  k

  2.1.4 Pengujian Sindrom

  Matriks U adalah vektor sandi yang dibangkitkan oleh matrik G jika, dan hanya jika, UH

  =

  : :

       

     

      P

  I k n

  =

              

              

   ) ( 2

1

) ( 2 22

21

) ( 1 12

11

...

  : : : ... 1 ...

  1 ...

  dibangun untuk memenuhi ortogonalitas di atas dapat digunakan untuk menguji apakah vektor yang diterima adalah anggota dari set kata sandi yang benar.

  1 k n k k k k n k n p p p p p p p p p

  ................... .(2.15) Perkalian UH

  T

  untuk setiap vektor sandi V yang dihasilkan G, dengan matriks H

  T

  , menghasilkan vektor nol:

  UH T

  = p 1 + p 1 , p 2 + p 2 , …p n-k + p n-k = 0............................(2.16) dengan p 1

  , p 2 ,…, p n-k adalah bit-bit paritas. Jadi matriks uji paritas, H, yang

  . Pengujian sindrom didapat dari persamaan :

  T S = rH

  ..........................................................................(2.18) Sindrom adalah hasil uji paritas yang dilakukan pada r untuk menentukan apakah

  

r merupakan anggota himpunan kata sandi yang benar. Jika r adalah anggota

  himpunan kata sandi, maka S akan sama dengan 0. Jika r mengandung galat yang dapat terdeteksi, maka S mempunyai elemen bernilai tidak nol yang dapat menandai adanya pola galat tertentu. Substitusi persamaan (2.16) dan (2.17), menghasilkan sindrom r yang dapat dituliskan sebagai berikut :

  T S = (U + e)H

  T T = UH + eH ................................................................ ...(2.19)

  T

  Karena vH = 0 untuk semua himpunan kata sandi, maka :

  T S = eH

  ............................................................................. ...(2.20) Pengujian sindrom yang dilakukan dari persamaan (2.18) sampai (2.21) pada vektor sandi yang terkena galat, maupun pada pola galat itu sendiri, menghasilkan sindrom yang sama. Dalam matrik uji paritas terdapat dua hal yang penting adalah

  1. Tidak ada kolom H yang semua elemennya bernilai nol, atau galat yang terjadi pada posisi vektor sandi yang bersesuaian tidak akan memberikan efek pada sindrom dan tidak dapat terdeteksi.

  2. Semua kolom H harus unik. Jika ada dua kolom yang sama, maka galat pada dua posisi vektor sandi yang bersesuaian tidak dapat dibedakan.

2.1.5 Koreksi Galat

  Galat tunggal (single error) dapat dideteksi dan telah ditunjukkan bahwa pengujian sindrom yang dilakukan pada vektor sandi terkena galat, maupun pada pola galat yang menyebabkannya, menghasilkan sindrom yang sama. Karena terdapat korespondensi satu-satu antara pola galat dan sindrom, maka hal ini merupakan petunjuk bahwa pola galat dapat dikoreksi. n

Tabel 2.2 menunjukkan larik standar (standard array) yang merupakan 2 ,

  n-tuple

  yang mewakili kemungkinan vektor yang diterima. Baris pertama larik ini, yang terdiri dari semua vektor sandi dimulai dengan vektor nol (semua elemen adalah nol). Kolom pertama terdiri dari semua pola galat yang dapat dikoreksi. Vektor nol pasti anggota dari set kata sandi. Setiap baris, disebut coset, mengandung pola galat dari kolom pertama (coset leader), diikuti dengan vektor sandi yang terkena pola galat. Format larik standar untuk sandi (n, k) adalah [1]:

  Tabel 2.2 Larik Standar [1] u u u u k 1 2 i   2

e ue ue u ke

2 2 2   i 2 2 2

e u e u e u k e

3 2      3 i 3 2 3    

e ueueu ke

j 2 j i j j 2

     

e nk ue nkue nku ke nk 2 2 i 2

n 2 2 2 Larik di atas mengandung semua 2 n-tuple dalam space V n (setiap n-tuple k hanya muncul pada satu lokasi). Setiap coset terdiri dari 2 n-tuple, sehingga n k n-k terdapat 2 /2 = 2 coset. Jika vektor sandi V i dikirimkan melalui kanal dengan vektor yang diterima akan diawasandikan dengan benar menjadi vektor terkirim V . Jika pola galat bukan coset leader, akan dapat menyebabkan pengawasandian i yang salah.

  Dalam aturan pembuatan larik standar, setiap n-tuple muncul paling tidak satu. Jika n-tuple muncul pada dua baris ke-1 dan ke-m dengan 1<m, maka n-tuple ini pasti sama dengan e

  1 + v i untuk beberapa i dan sama dengan e m + v j untuk

  • beberapa j, hasilnya e + v = e + v . Dari persamaan ini diperoleh e = e + (v

  1 i m j m i i

  v j ). Jika v i dan v j adalah sandi vektor dalam C, v i + v j juga sandi vektor dalam C, misalnya e = e m 1 + v s . Hal ini menyebabkan n-tuple e m berada pada baris ke-1 dari larik, hal ini tidak sesuai dengan aturan pembuatan larik yaitu e m (elemen pertama pada baris ke-m), tidak boleh dipakai pada setiap baris sebelumnya. Oleh karena itu, tidak ada n-tuple yang dapat muncul lebih dari satu baris pada larik. k

  Larik standar dari sandi linear C (n,k) mengandung 2 kolom yang tidak n-k berhubungan. Setiap kolom mengandung 2 n-tuple dengan elemen paling atas sebagai vektor sandi pada C. Jika D j menyatakan kolom ke-j dari larik standar, maka :

  D j = {v j , e

  2 + v j , e 3 + v j , …, e 2n-k + v j }.......................................(2.21) dengan v j adalah vektor sandi dari C dan e , e ,…, e adalah coset leader. k k

  

2

3 2n-k

  Kolom-kolom sebanyak 2 yang tidak berhubungan D

  1 , D 2 ,…, D 2 dapat

  digunakan untuk pengawasandian sandi C. Saat vektor sandi v j dikirim melintasi jalur berderau, vektor penerima r terdapat dalam D j jika pola galat disebabkan oleh jalur adalah coset leader. Dalam hal ini, vektor penerima r akan diawasandikan secara benar sebagai vektor sandi terkirim v j . Tetapi jika pola galat yang disebabkan oleh jalur bukan coset leader, akan menyebabkan kesalahan pada pengawasandian. Pola galat x yang disebabkan oleh jalur harus dalam beberapa

  

coset dan termasuk vektor tidak nol, misalnya coset ke-1 dan termasuk vektor

  sandi vi

  1 b + v i dan vektor yang diterima adalah :

  ≠ 0. Maka x = e

  r = v + x = e + (v + v ) = e + v j 1 i i 1 s

  .........................................(2.22) Jadi vektor diterima r dalam D dan diawasandikan sebagai v , yang bukan

  s s