ข้ามไปเนื้อหา

รหัสวีฌแนร์

จากวิกิพีเดีย สารานุกรมเสรี
ตารางวีฌแนร์ หรือ tabula recta สามารถใช้สำหรับเข้ารหัสหรือถอดรหัส

รหัสวีฌแนร์ (อังกฤษ: Vigenère Cipher) คือ อัลกอริทึมที่ใช้เข้ารหัสข้อความที่เป็นตัวอักษร ใช้รูปแบบง่ายๆของการทดแทนเป็นตัวเลขใด ๆ เป็นการเลื่อนตำแหน่งอักษรตามสูตรคำนวณที่กำหนดขึ้นมาเรียกว่า rectula tabula, Vigenère square หรือ Vigenère table

ตารางจะประกอบด้วยตัวอักษรที่เขียนออกมา 26 ครั้งในแต่ละแถว โดยแต่ละตัวจะเลื่อนไปทางซ้ายเมื่อเทียบกับตัวอักษรก่อนหน้าไปเรื่อย ๆ เท่าที่เป็นไปได้

แนวคิด

[แก้]

ขั้นตอนวิธีของเบล Vigenère Cipher นั้นมีแนวคิดดังนี้

  1. กำหนดสูตรคำนวณในการเลื่อนตำแหน่งตัวอักษรเป็นตัวเลข กี่ตัวก็ได้
  2. เลือกคำศัพท์หรือตัวอย่างอักษรที่ต้องการเข้ารหัสคำ
  3. ทำการ Shift ตัวอักษรไปตามสูตรคำนวณที่กำหนดไว้ ทีละตัวอักษร

การเข้ารหัสลับ [1]

P คือ plaintext หรือข้อความธรรมดา และ K คือ key จะได้

Ei = (Pi + Ki) mod 26

การถอดรหัส [2]

Di = (Ei - Ki + 26) mod 26

ตัวอย่าง

Plaintext : ATTACKATDAWN

Key : LEMONLEMONLE

Ciphertext : LXFOPVEFRNHR