Lompat ke isi

Sandi Vigenère: Perbedaan antara revisi

Ensiklopedia Pengetahuan Universitas Islam Sultan Agung
Maintenance script (bicara | kontrib)
Impor teks terkontrol dari Wikipedia bahasa Indonesia; revisi 29530553; atribusi sumber disertakan.
 
Maintenance script (bicara | kontrib)
Presentation V4: sitasi, referensi, Math, Wikimedia Commons, dan atribusi
 
Baris 1: Baris 1:
'''Sandi Vigenère''' adalah metode [[enkripsi|menyandikan]] teks [[alfabet]] dengan menggunakan deretan [[sandi Caesar]] berdasarkan huruf-huruf pada [[kata kunci]]. Sandi Vigenère merupakan bentuk sederhana dari sandi [[substitusi polialfabetik]]. Kelebihan sandi ini dibanding sandi Caesar dan [[sandi monoalfabetik]] lainnya adalah sandi ini tidak begitu rentan terhadap metode [[kriptoanalisis|pemecahan sandi]] yang disebut [[analisis frekuensi]]. Giovan Batista Belaso menjelaskan metode ini dalam buku ''La cifra del. Sig. Giovan Batista Belaso'' ([[1553]]); dan disempurnakan oleh [[diplomat]] [[Prancis]] [[Blaise de Vigenère]], pada [[1586]]. Pada abat ke-19, banyak orang yang mengira Vigenère adalah penemu sandi ini, sehingga, sandi ini dikenal luas sebagai "sandi Vigenère".
[[File:Vigenere.jpg|thumb|right|280px|Sandi Vigenère dinamai untuk menghormati Blaise de Vigenère (gambar), sekalipun [[Giovan Batista Belaso]]
 
'''Sandi Vigenère''' adalah metode [[enkripsi|menyandikan]] teks [[alfabet]] dengan menggunakan deretan [[sandi Caesar]] berdasarkan huruf-huruf pada [[kata kunci]]. Sandi Vigenère merupakan bentuk sederhana dari sandi [[substitusi polialfabetik]].<ref>[https://www.britannica.com/topic/Vigenere-cipher Vigenere cipher Definition, Table, Example, & Facts Britannica]. ''Encyclopedia Britannica''.</ref> Kelebihan sandi ini dibanding sandi Caesar dan [[sandi monoalfabetik]] lainnya adalah sandi ini tidak begitu rentan terhadap metode [[kriptoanalisis|pemecahan sandi]] yang disebut [[analisis frekuensi]]. Giovan Batista Belaso menjelaskan metode ini dalam buku ''La cifra del. Sig. Giovan Batista Belaso'' ([[1553]]); dan disempurnakan oleh [[diplomat]] [[Prancis]] [[Blaise de Vigenère]], pada [[1586]]. Pada abat ke-19, banyak orang yang mengira Vigenère adalah penemu sandi ini, sehingga, sandi ini dikenal luas sebagai "sandi Vigenère".


Sandi ini dikenal luas karena cara kerjanya mudah dimengerti dan dijalankan, dan bagi para pemula sulit dipecahkan. Pada saat kejayaannya, sandi ini dijuluki '''le chiffre indéchiffrable''' ([[bahasa Prancis]]: 'sandi yang tak terpecahkan'). Metode pemecahan sandi ini baru ditemukan pada abad ke-19. Pada tahun [[1854]], [[Charles Babbage]] menemukan cara untuk memecahkan sandi Vigenère. Metode ini dinamakan [[tes Kasiski]] karena [[Friedrich Kasiski]]-lah yang pertama memublikasikannya.
Sandi ini dikenal luas karena cara kerjanya mudah dimengerti dan dijalankan, dan bagi para pemula sulit dipecahkan. Pada saat kejayaannya, sandi ini dijuluki '''le chiffre indéchiffrable''' ([[bahasa Prancis]]: 'sandi yang tak terpecahkan'). Metode pemecahan sandi ini baru ditemukan pada abad ke-19. Pada tahun [[1854]], [[Charles Babbage]] menemukan cara untuk memecahkan sandi Vigenère. Metode ini dinamakan [[tes Kasiski]] karena [[Friedrich Kasiski]]-lah yang pertama memublikasikannya.


== Cara kerja ==
== Cara kerja ==
 
Sandi Vigenère sebenarnya merupakan pengembangan dari [[sandi Caesar]]. Pada sandi Caesar, setiap huruf teks terang digantikan dengan huruf lain yang memiliki perbedaan tertentu pada urutan alfabet. Misalnya pada sandi Caesar dengan geseran 3, <code>A</code> menjadi <code>D</code>, <code>B</code> menjadi <code>E</code> and dan seterusnya. Sandi Vigenère terdiri dari beberapa sandi Caesar dengan nilai geseran yang berbeda.<ref>Muhammad Andika, Felix, Louis Marcellino, Kristien Margi Putra, Rustan, Liwe, Suryaningrum. [https://pdf.sciencedirectassets.com/280203/1-s2.0-S1877050923X00118/1-s2.0-S1877050923017799/main.pdf?X-Amz-Security-Token=IQoJb3JpZ2luX2VjEGwaCXVzLWVhc3QtMSJHMEUCIGx3zdJsKOsZzb0WZ2r1qyKvIgJRl%2F1yvD2tMoxdJmWDAiEA00PQbHNEkHgS7QTEg%2FyNqVjX6fd7cJGaR74f2Y%2Bv0JEqsgUINBAFGgwwNTkwMDM1NDY4NjUiDOo977BAQHRUMWGR%2ByqPBXmH0WMJ7rGNszGgEyQhAyhffJ%2FZystv57I8dxw9B7DkNHHPBrBQqU3o1NuWilj2S3o6FH33o7jSLbNGDg9JqnlF83ficIfBGmYprQqzM%2ByZF5icVGx2lwaxtqji6KWuUs4OgWNmNU%2BcsxCuX9AGlytcu4NSI9jgxP09fVx1rLEu1XvxhjYZTm3dHdQJyrMlgnCRhiYcI4ewvHA8yfJ5yGx9u7QhP6fc2RHuMKG%2FC3bvMqLPOqp4KN7fb0GwawPf931sSpae%2BmS4BmWFXHTLD%2FRp3pcmqJlo5A7GHGGTHyWQo3tMvBDraig7glyZkfGkwA4Q45gf11LZmgtH5zk4jzeIwFdc6x5Zy0rSI9ZDc6k43EXvy9Eb4ZzGMP3a63VsqrY8rET%2FghwIKXYGS7dUn4ejXHIRp%2BzsFiyJzod5w0tXnBXgME%2BD1YLozmysKw6BCtQJ6FRCuiy0k0sooyUzPrxX%2B%2FdwvyYIGEoOqjC%2FphcsHTLFEKJyXgVrYFyRH8YQr1tESDQ7Krb2PSBhbjBHnxlcy1N%2BZk5WK38%2F3YWiZWBypOW5H4d%2FfZPPXam5fv03%2FXzrnQKPhdRhlCAFzhbafQwhEnpYAQNahoOzQfFMBvdgzJDQxa9eh3A6DYIy2GXF0EDtLhob8BvjWMEZpcSRmNVEs8gNkYyG3fW0eTeXOKh8cmz6fM%2BZV1rh4%2BzF6lIWHUDpDssCIQSsRfaY5dNMRcG2GYdz69PmHqD20gelgunZ7CUMiMPJU0lOQNHI%2Bl3wB2bIHRfPqKhmXyDlBEQlMAhEwEFIyHDV0XcshHTc5O8saJnkNEfUNcg28GtT2Z5lbzUSXLWQji5DcTeX6WRNk8d22mfMB5x5vPbrJQmu1MowzrTbywY6sQE%2BQ%2BSFGdbXQhOl3r7YbiM3yV6C2FuTXh63SRWMs1R25W2%2BnIvCL5w9tAKnWRalvwjkiZ0jUKgpQy92U3bl3brOgzifbMEtg80Gb7k2wjuUHeAvIbaQJD2WGazEgZqVeplT8tZDCeavOH3eMgVn9zu1cQ%2FrxXuED9i4eB74nkAXraWHBlxa1%2FSNH0Ob%2F6YIvORmpux5rncRCZ4qUxF95bFQG%2Fiv816oyIB7PfBF2rPQAyQ%3D&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20260126T033839Z&X-Amz-SignedHeaders=host&X-Amz-Expires=300&X-Amz-Credential=ASIAQ3PHCVTYQ6GOHPUS%2F20260126%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=191a562314fdc3b1c76f74a698757c243fcbe9f6b9d5bcd455b5a6d30eb99b47&hash=89a3f29064e1e661fee0bb0ab7543fe27a607fe8fa23ec88ea2631edf25d7d48&host=68042c943591013ac2b2430a89b270f6af2c76d8dfd086a07176afe7c76c2c61&pii=S1877050923017799&tid=spdf-ca23bd8e-d475-47d5-b25f-0745fd6292ac&sid=6d987d011f25b94d5a4be0388c8fde3f4182gxrqb&type=client&tsoh=d3d3LnNjaWVuY2VkaXJlY3QuY29t&rh=d3d3LnNjaWVuY2VkaXJlY3QuY29t&ua=13015e0c51070501570306&rr=9c3cfa8da9510ddc&cc=id Securing Text File Using Combination of Vigenere and One – Time Pad Cipher Algorithm]. ''Procedia Computer Science 227 (2023) 1030–1038''. 2023. Vol. 227 (2023) (1030–1038).</ref>
 
Sandi Vigenère sebenarnya merupakan pengembangan dari [[sandi Caesar]]. Pada sandi Caesar, setiap huruf teks terang digantikan dengan huruf lain yang memiliki perbedaan tertentu pada urutan alfabet. Misalnya pada sandi Caesar dengan geseran 3, <code>A</code> menjadi <code>D</code>, <code>B</code> menjadi <code>E</code> and dan seterusnya. Sandi Vigenère terdiri dari beberapa sandi Caesar dengan nilai geseran yang berbeda.


Untuk menyandikan suatu pesan, digunakan sebuah tabel alfabet yang disebut [[tabel Vigenère]] ([http://upload.wikimedia.org/wikipedia/commons/c/c7/Vigenere-square.png gambar]). Tabel Vigenère berisi alfabet yang dituliskan dalam 26 baris, masing-masing baris digeser satu urutan ke kiri dari baris sebelumnya, membentuk ke-26 kemungkinan sandi Caesar. Setiap huruf disandikan dengan menggunakan baris yang berbeda-beda, sesuai kata kunci yang diulang;
Untuk menyandikan suatu pesan, digunakan sebuah tabel alfabet yang disebut [[tabel Vigenère]] ([http://upload.wikimedia.org/wikipedia/commons/c/c7/Vigenere-square.png gambar]). Tabel Vigenère berisi alfabet yang dituliskan dalam 26 baris, masing-masing baris digeser satu urutan ke kiri dari baris sebelumnya, membentuk ke-26 kemungkinan sandi Caesar. Setiap huruf disandikan dengan menggunakan baris yang berbeda-beda, sesuai kata kunci yang diulang;
Baris 17: Baris 17:
:<code>PIZZAPIZZAP</code>
:<code>PIZZAPIZZAP</code>
Huruf pertama pada teks terang, <code>S</code>, disandikan dengan menggunakan baris berjudul <code>P</code>, huruf pertama pada kata kunci. Pada baris <code>P</code> dan kolom <code>S</code> di tabel Vigenère, terdapat huruf <code>H</code>. Demikian pula untuk huruf kedua, digunakan huruf yang terletak pada baris <code>I</code> (huruf kedua kata kunci) dan kolom <code>E</code> (huruf kedua teks terang), yaitu huruf <code>M</code>. Proses ini dijalankan terus sehingga
Huruf pertama pada teks terang, <code>S</code>, disandikan dengan menggunakan baris berjudul <code>P</code>, huruf pertama pada kata kunci. Pada baris <code>P</code> dan kolom <code>S</code> di tabel Vigenère, terdapat huruf <code>H</code>. Demikian pula untuk huruf kedua, digunakan huruf yang terletak pada baris <code>I</code> (huruf kedua kata kunci) dan kolom <code>E</code> (huruf kedua teks terang), yaitu huruf <code>M</code>. Proses ini dijalankan terus sehingga
 
{|
| Teks terang: || <code>serbuberlin</code>
|-
| Kata kunci: || <code>PIZZAPIZZAP</code>
|-
| Teks bersandi: || <code>HMQAUQMQKIC</code>
|}


Proses sebaliknya (disebut [[dekripsi]]), dilakukan dengan mencari huruf teks bersandi pada baris berjudul huruf dari kata kunci. Misalnya, pada contoh di atas, untuk huruf pertama, kita mencari huruf <code>H</code> (huruf pertama [[teks tersandi]]) pada baris <code>P</code> (huruf pertama pada kata kunci), yang terdapat pada kolom <code>S</code>, sehingga huruf pertama adalah <code>S</code>. Lalu <code>M</code> terdapat pada baris <code>I</code> di kolom <code>E</code>, sehingga diketahui huruf kedua teks terang adalah <code>E</code>, dan seterusnya hingga didapat perintah "<code>serbuberlin</code>".
Proses sebaliknya (disebut [[dekripsi]]), dilakukan dengan mencari huruf teks bersandi pada baris berjudul huruf dari kata kunci. Misalnya, pada contoh di atas, untuk huruf pertama, kita mencari huruf <code>H</code> (huruf pertama [[teks tersandi]]) pada baris <code>P</code> (huruf pertama pada kata kunci), yang terdapat pada kolom <code>S</code>, sehingga huruf pertama adalah <code>S</code>. Lalu <code>M</code> terdapat pada baris <code>I</code> di kolom <code>E</code>, sehingga diketahui huruf kedua teks terang adalah <code>E</code>, dan seterusnya hingga didapat perintah "<code>serbuberlin</code>".
Baris 36: Baris 42:


== Pehitungan Sandi Vigenere ==
== Pehitungan Sandi Vigenere ==
'''Rumus enkripsi vigenere cipher:'''
'''Rumus enkripsi vigenere cipher:'''


Baris 67: Baris 72:
Sebagai contoh, jika plaintext adalah '''STIKOMBALI''' dan kunci adalah '''KAMPUS''' maka proses enkripsi yang terjadi adalah sebagai berikut:
Sebagai contoh, jika plaintext adalah '''STIKOMBALI''' dan kunci adalah '''KAMPUS''' maka proses enkripsi yang terjadi adalah sebagai berikut:


{|
| Plaintext: || <code>'''STIKOMBALI'''</code>
|-
| Key: || <code>'''KAMPUSKAMP'''</code>
|-
| Ciphertext: || <code>'''CTUZIELAXX'''</code>
|}


Pada contoh diatas kata kunci '''KAMPUS''' diulang sedemikian rupa hingga panjang kunci sama dengan panjang plainteksnya. Jika dihitung dengan rumus enkripsi vigenere&nbsp; plainteks huruf pertama '''S''' (yang memiliki nilai '''Pi=18''') akan dilakukan pergeseran dengan huruf '''K''' (yang memiliki '''Ki=10''') maka prosesnya sebagai berikut:
Pada contoh diatas kata kunci '''KAMPUS''' diulang sedemikian rupa hingga panjang kunci sama dengan panjang plainteksnya. Jika dihitung dengan rumus enkripsi vigenere&nbsp; plainteks huruf pertama '''S''' (yang memiliki nilai '''Pi=18''') akan dilakukan pergeseran dengan huruf '''K''' (yang memiliki '''Ki=10''') maka prosesnya sebagai berikut:
Baris 85: Baris 97:


== Referensi ==
== Referensi ==
<references />


== Sumber dan atribusi ==


Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=Sandi+Vigen%C3%A8re&oldid=29530553 Wikipedia bahasa Indonesia], revisi 29530553 (2026-08-06T01:34:48Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Gambar pada artikel ini bersumber dari Wikimedia Commons dan mengikuti ketentuan lisensi masing-masing berkas. Mohon gunakan konten dan media secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.


== Sumber dan atribusi ==
<!-- WIKI_UNISSULA_PRESENTATION_V4 -->
 
Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=Sandi+Vigen%C3%A8re&oldid=29530553 Wikipedia bahasa Indonesia], revisi 29530553 (2026-08-06T01:34:48Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.

Revisi terkini sejak 24 Agustus 2026 14.02

[[File:Vigenere.jpg|thumb|right|280px|Sandi Vigenère dinamai untuk menghormati Blaise de Vigenère (gambar), sekalipun Giovan Batista Belaso

Sandi Vigenère adalah metode menyandikan teks alfabet dengan menggunakan deretan sandi Caesar berdasarkan huruf-huruf pada kata kunci. Sandi Vigenère merupakan bentuk sederhana dari sandi substitusi polialfabetik.[1] Kelebihan sandi ini dibanding sandi Caesar dan sandi monoalfabetik lainnya adalah sandi ini tidak begitu rentan terhadap metode pemecahan sandi yang disebut analisis frekuensi. Giovan Batista Belaso menjelaskan metode ini dalam buku La cifra del. Sig. Giovan Batista Belaso (1553); dan disempurnakan oleh diplomat Prancis Blaise de Vigenère, pada 1586. Pada abat ke-19, banyak orang yang mengira Vigenère adalah penemu sandi ini, sehingga, sandi ini dikenal luas sebagai "sandi Vigenère".

Sandi ini dikenal luas karena cara kerjanya mudah dimengerti dan dijalankan, dan bagi para pemula sulit dipecahkan. Pada saat kejayaannya, sandi ini dijuluki le chiffre indéchiffrable (bahasa Prancis: 'sandi yang tak terpecahkan'). Metode pemecahan sandi ini baru ditemukan pada abad ke-19. Pada tahun 1854, Charles Babbage menemukan cara untuk memecahkan sandi Vigenère. Metode ini dinamakan tes Kasiski karena Friedrich Kasiski-lah yang pertama memublikasikannya.

Cara kerja

Sandi Vigenère sebenarnya merupakan pengembangan dari sandi Caesar. Pada sandi Caesar, setiap huruf teks terang digantikan dengan huruf lain yang memiliki perbedaan tertentu pada urutan alfabet. Misalnya pada sandi Caesar dengan geseran 3, A menjadi D, B menjadi E and dan seterusnya. Sandi Vigenère terdiri dari beberapa sandi Caesar dengan nilai geseran yang berbeda.[2]

Untuk menyandikan suatu pesan, digunakan sebuah tabel alfabet yang disebut tabel Vigenère (gambar). Tabel Vigenère berisi alfabet yang dituliskan dalam 26 baris, masing-masing baris digeser satu urutan ke kiri dari baris sebelumnya, membentuk ke-26 kemungkinan sandi Caesar. Setiap huruf disandikan dengan menggunakan baris yang berbeda-beda, sesuai kata kunci yang diulang;

Misalnya, teks terang yang hendak disandikan adalah perintah "Serbu Berlin":

serbuberlin

Sedangkan kata kunci antara pengirim dan tujuan adalah "Pizza"

"PIZZA" diulang sehingga jumlah hurufnya sama banyak dengan teks terang:
PIZZAPIZZAP

Huruf pertama pada teks terang, S, disandikan dengan menggunakan baris berjudul P, huruf pertama pada kata kunci. Pada baris P dan kolom S di tabel Vigenère, terdapat huruf H. Demikian pula untuk huruf kedua, digunakan huruf yang terletak pada baris I (huruf kedua kata kunci) dan kolom E (huruf kedua teks terang), yaitu huruf M. Proses ini dijalankan terus sehingga

Teks terang: serbuberlin
Kata kunci: PIZZAPIZZAP
Teks bersandi: HMQAUQMQKIC

Proses sebaliknya (disebut dekripsi), dilakukan dengan mencari huruf teks bersandi pada baris berjudul huruf dari kata kunci. Misalnya, pada contoh di atas, untuk huruf pertama, kita mencari huruf H (huruf pertama teks tersandi) pada baris P (huruf pertama pada kata kunci), yang terdapat pada kolom S, sehingga huruf pertama adalah S. Lalu M terdapat pada baris I di kolom E, sehingga diketahui huruf kedua teks terang adalah E, dan seterusnya hingga didapat perintah "serbuberlin".

Enkripsi (penyandian) dengan sandi Vigenère juga dapat dituliskan secara matematis, dengan menggunakan penjumlahan dan operasi modulus, yaitu:

Ci(Pi+Ki)mod26

atau C = P + K kalau jumlah dibawah 26 & - 26 kalau hasil jumlah di atas 26

dan dekripsi,

Pi(CiKi)mod26

atau P = C - K kalau hasilnya positif & + 26 kalau hasil pengurangan minus

Keterangan: Ci adalah huruf ke-i pada teks tersandi, Pi adalah huruf ke-i pada teks terang, Ki adalah huruf ke-i pada kata kunci, dan mod adalah operasi modulus (sisa pembagian).

Pehitungan Sandi Vigenere

Rumus enkripsi vigenere cipher:

Ci(Pi+Ki)mod26

atau

Ci = ( Pi + Ki ) – 26 kalau hasil penjumlahan Pi dan Ki lebih dari 26

Rumus dekripsi vigenere cipher:

Pi(CiKi)mod26

atau

Pi = ( Ci – Ki ) + 26 kalau hasil pengurangan Ci dengan Ki minus

Dengan:

Ci = nilai desimal karakter ciphertext ke-i

Pi = nilai desimal karakter plaintext ke-i

Ki = nilai desimal karakter kunci ke-i

Nilai desimal karakter:

A=0 B=1 C=2 ... Z=25

Sebagai contoh, jika plaintext adalah STIKOMBALI dan kunci adalah KAMPUS maka proses enkripsi yang terjadi adalah sebagai berikut:

Plaintext: STIKOMBALI
Key: KAMPUSKAMP
Ciphertext: CTUZIELAXX

Pada contoh diatas kata kunci KAMPUS diulang sedemikian rupa hingga panjang kunci sama dengan panjang plainteksnya. Jika dihitung dengan rumus enkripsi vigenere  plainteks huruf pertama S (yang memiliki nilai Pi=18) akan dilakukan pergeseran dengan huruf K (yang memiliki Ki=10) maka prosesnya sebagai berikut:

 Ci = ( Pi + Ki ) mod 26
    = (18 + 10) mod 26
    = 28 mod 26
    = 2    

Ci=2 maka huruf ciphertext dengan nilai 2 adalah C . Begitu seterusnya dilakukan pergeseran sesuai dengan kunci pada setiap huruf hingga semua plainteks telah terenkripsi menjadi ciphertext. Setelah semua huruf terenkripsi maka proses dekripsinya dapat dihitung sebagai berikut:

 Pi = ( Ci – Ki ) + 26
    = ( 2 – 10 ) + 26
    = –8 + 26
    = 18

Pi=18 maka huruf plainteks dengan nilai 18 adalah S. Begitu seterusnya dilakukan pergeseran sesuai dengan kunci pada setiap huruf hingga semua ciphertext telah terdekripsi menjadi plainteks.

Referensi

  1. Vigenere cipher Definition, Table, Example, & Facts Britannica. Encyclopedia Britannica.
  2. Muhammad Andika, Felix, Louis Marcellino, Kristien Margi Putra, Rustan, Liwe, Suryaningrum. Securing Text File Using Combination of Vigenere and One – Time Pad Cipher Algorithm. Procedia Computer Science 227 (2023) 1030–1038. 2023. Vol. 227 (2023) (1030–1038).

Sumber dan atribusi

Konten artikel ini diadaptasi dari Wikipedia bahasa Indonesia, revisi 29530553 (2026-08-06T01:34:48Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Gambar pada artikel ini bersumber dari Wikimedia Commons dan mengikuti ketentuan lisensi masing-masing berkas. Mohon gunakan konten dan media secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.