Tayo’y maglibang sa pagtingin ng ilang halimbawa ng simple o tradisyonal na cryptography. Makakatulong din ito upang mailatag ang konsepto ng cryptography at kung bakit dapat pinapaigting ito.
Umpisahan natin sa halimbawang mensahe na ito:
UMATAKE NG MADALING ARAW
Caesar Cipher
Ito ay isa sa pinakasimpleng anyo ng encryption, na tinatawag ding shift cipher. Ito ay ipinangalan kay Julius Caesar dahil ginamit nya ito sa mga pribadong pag-susulatan.
Ang bawat letra ay binibigyan ng katumbas na ibang letra sa pamamagitan ng pag-usog (shift) ng ilang posisyon base sa pagkakasunud-sunod ng alpabeto. Halimbawa, bigyan natin ng katumbas ang normal na alpabeto sa pamamagitan ng pag-usog ng 3 posisyon pakaliwa.
Plain | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
Cipher | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C |
Iikot lamang ang helera, kaya para sa mga huling letra (XYZ), ibabalik lang ang umpisang mga letra ng alpabeto (ABC).
Gamit ito, ang pagbabago ng orihinal na mensahe ay:
Plaintext: UMATAKE NG MADALING ARAW
Ciphertext: XPDWDNH QJ PDGDOLQJ DUDZ
Para maibalik sa orihinal na mensahe, babaliktarin lamang ng nakatanggap ang pag-usog ng mga letra (3 posisyon pakanan).
Sa halimbawang ito, ang nagpadala at tumanggap lamang ang dapat nakakaalam ng cipher. Kapag nalaman ito ng kalaban, mabibisto ang mensahe.
Kung di marunong magbasa ang kalaban, na karaniwan nung mga unang panahon, maaaring epektibo ang Caesar Cipher. Pero malamang naiisip mo na madali lang ito mahulaan. Tama ka dyan. Iilang posibilidad lang ang meron sa encryption na ito sa alpabetong may 26 na titik: 25 (sa ika-26 na ikot kasi, balik ka na sa orihinal na alpabeto).
Kung hindi mo alam na Caesar Cipher ang gamit, maari mo pa rin itong hulaan sa pag-inspeksyon ng frequency o dalas ng paggamit ng mga letra. Sa wikang Ingles halimbawa, ang letrang E ang pinakamadalas gamitin. Sa wikang Filipino naman, letrang A. Kung mahaba ang mensahe mas magiging malinaw kung anong mga letra ang madalas lumabas kumpara sa iba. Sa halimbawa natin, maraming A ang orihinal na mensahe. Sa paghula ng kalaban, una nyang ipagpapalagay na ang letrang D malamang ay letrang A, atbp.
Magagamitan ng frequency analysis ang klaseng ito dahil ang cipher natin ay monoalphabetic – ibig sabihin, ang bawat tamang letra ay may katumbas na isang letra lamang. Halimbawa, ang letrang E ay laging letrang H ang katumbas.
Simple Substitution Cipher
Ang susunod na uri ng encryption na titignan natin ay ang tinatawag na simple substitution cipher. Sa pamamaraang ito, ang tagapadala at ang tagatanggap ay may pinagkakasunduang permutasyon ng mga letra. Ibig sabihin nito, pipili ng isa sa mga posibleng pagkakahelera ng letra na itutumbas sa normal na pagkakasunud-sunod ng alpabeto. Mas maigi na random ang cipher. Pero pwede rin gumamit ng susing salita sa unahan, saka ihahanay ang mga natitirang letra na wala doon. Halimbawa sa baba, may susing salita na ZIGURAT.
Plain | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
Cipher | Z | I | G | U | R | A | T | B | C | D | E | F | H | J | K | L | M | N | O | P | Q | S | V | W | X | Y |
Gamit ito, ang pagbabago ng orihinal na mensahe ay:
Plaintext: UMATAKE NG MADALING ARAW
Ciphertext: QHZPZER JT HZUZFCJT ZNZV
Para maibalik sa orihinal na mensahe, titignan lang uli ng nakatanggap ang alpabetong cipher, at babaliktarin ang proseso.
Mas mahirap hulaan ang cipher dahil ang dami ng posibilidad ay 26! (26 factorial = 26 x 25 x 24…x 2 x 1). Subalit dahil monoalphabetic din ang cipher na ito, pwede rin itong gamitan ng frequency analysis. Mapapansin agad, aba, ang daming letrang Z sa ciphertext!
Vigenère Cipher
Ang klase ng cipher na ito ay polyalphabetic. Ibig sabihin, nag-iiba iba ang katumbas ng isang letra sa plaintext, papuntang ciphertext.
Ang Vigenère Cipher ay parang kombinasyon ng maraming Caesar Cipher, na mapapakita natin sa halimbawang ito:
- Gumamit tayo ng isang susing salita: BITAG
- Kunin ang katumbas na bilang ng mga letra: 2, 9, 20, 1, 7
- Tatapatan natin ang mga bilang na ito paulit-ulit sa kabuuan ng mensahe, na syang magsasabi kung ilang shift ang gagamitin para mahanap ang katumbas na cipher.
Plaintext | U | M | A | T | A | K | E | N | G | M | A | D | A | L | I | N | G | A | R | A | W |
Susing salita | B | I | T | A | G | B | I | T | A | G | B | I | T | A | G | B | I | T | A | G | B |
Shift | 2 | 9 | 20 | 1 | 7 | 2 | 9 | 20 | 1 | 7 | 2 | 9 | 20 | 1 | 7 | 2 | 9 | 20 | 1 | 7 | 2 |
Ciphertext | W | V | U | U | H | M | N | H | H | T | C | M | U | M | P | P | P | U | S | H | Y |
Babaliktarin lang din ng nakatanggap ng mensahe ang proseso para maibalik mula ciphertext papuntang plaintext.
Kung mapapansin mo, naiiba-iba ang katumbas ng isang letra. Kaya mas mahirap ito hulaan gamit ang frequency analysis. Pero posible pa rin itong mahulaan. Si Friedrich Kasiski at si Charles Babbage ay mga kilalang nakagawa ng solusyon upang mahulaan ang mensaheng gumamit ng Vigenère Cipher.
Kung mapapansin mo rin, habang humihirap hulaan ang mensahe, tumataas ang seguridad ng cipher. Ang epektibong cryptography ay nangangailangan ng sobrang habang panahon para mahulaan, na tila hindi na praktikal itong paghirapan.
One-time Pad
Sa tradisyonal na cryptography, ang One-time pad ang imposibleng mahulaan basta nasusunod ng tama. Ito ay substitution cipher kung saan:
- Singhaba ng susing salita o cipher ang plaintext
- Ang susing salita ay random talaga ang pagkakakuha
- Ang susing salita ay gamit isang beses lamang. Bawat bagong mensahe ay may ibang susing salita na kukunin.
Makikita mong mahirap gamitin ang One-time pad base sa mga dapat sundin. Lalo na kung mahaba ang mensahe. Malamang hindi mo na kayang tandaan ang random na susing salita. Hindi na ito salita, sa totoo lang.
Marami pang mga tradisyonal na cipher, na hindi na natin pag-uusapan. Makikita na sa paglalaro ng alpabeto umiikot ang mga tradisyonal na cipher. Epektibo sila sa panahon ng manu-mano. Sa panahon ng elektrical at mekanical na mga gamit, madali nalang mahulaan ng masamang loob ang mga cipher, maliban sa One-time pad. Lalo naman sa panahon ng mga computer. Kaso, napakahirap, kung hindi imposible, tandaan ang susing salita o cipher para sa One-time pad. Kailangan isulat o gumamit ng mga storage device. Pero problema mo naman ang maingat na pag-aabot nito.
At paano naman ang matipid na pagpapasahan ng mensahe ng mga taong magkalayo? Kailangan natin ng solusyon na hindi mabigat para sa mga tao ang trabaho ng pagpapasahan ng sikreto, at akma sa panahon ng mga computer at Internet.
Kitakits sa ika-21.
Salamat sa litrato (pinaghalo sa ilustrasyon):
- Photo by SHVETS production from Pexels: https://www.pexels.com/photo/low-angle-shot-of-the-augustus-of-prima-porta-statue-7947144/
- https://caesarcipher.net/wp-content/uploads/2022/11/caesar-cipher-wheel-.webp