EP 10: The Beale Treasure Ciphers

EP 10: The Beale Treasure Ciphers

ไม่รู้ทุกคนจะยังจำกันได้มั้ยว่าใน EP ที่แล้วเราได้แอบกระซิบบอกไว้ว่า จะพาทุกคนมาทดลองเข้ารหัสแบบ The Beale Treasure Ciphers เผื่อว่ามีใครอยากจะลองไปถอดรหัสอีก 2 แผ่นที่เหลือ หรืออาจจะอยากทำรหัสลับซ่อนสมบัติของคุณเองดูก็ได้นะ :rofl:

เพื่อไม่ให้เป็นการเสียเวลา ไปเริ่มกันเลย

The Beale Treasure Ciphers หรือ Beale Ciphers เป็นการเข้ารหัสรูปแบบหนึ่งของ Homophonic Substitution ที่เราเคยพูดถึงกันไปแล้วใน EP 7 หากใครยังไม่เคยอ่านสามารถกลับไปอ่านกันก่อนได้เลย เพราะหลักการเข้ารหัสของทั้ง 2 ตัวนี้จะเหมือนกัน คือเป็นการเเทนที่ตัวอักษรด้วยตัวอักษรหรือตัวเลขผสมกันไป แต่ถ้าทุกคนยังจำกระดาษรหัสลับของ Beale ได้ ก็จะรู้ว่า การเข้ารหัสแบบ Beale Ciphers จะใช้แค่ตัวเลข หลักหน่วย หลักสิบ และ หลักร้อย เท่านั้น ไม่มีตัวหนังอักษรใดๆ เลยนั่นเอง

ทุกคนสามารถ คลิกรูปภาพด้านล่าง เพื่อศึกษาวิธีการเข้ารหัสแบบ The Beale Treasure Ciphers

  1. กำหนดข้อความที่ต้องการเข้ารหัส คือ “I HAVE DEPOSITED IN THE COUNTY OF BEDFORD” (ฉันได้ฝังมันไว้ในเขตเบดฟอร์ด)

  2. สร้างตาราง Plain Text Alphabet

  3. ในการเข้ารหัสแบบ Beale จะไม่มีการกำหนดคำศัพท์ภาษาอังกฤษเป็นคีย์ แต่จะสร้างตาราง Cipher Text Alphabet โดยกำหนดตัวเลขแทนตัวอักษรใน Plain Text Alphabet แทนเลย ซึ่งสามารถกำหนดตัวเลขแทนได้หลายแบบ ทั้งหลักหน่วย หลักสิบ หรือหลักร้อย และในหนึ่งตัวอักษรสามารถกำหนดตัวเลขเเทนได้หลายตัวเลขไม่จำกัด ซึ่งเราสามารถใช้หลักการของ Frequency Analysis เพื่อกำหนดตัวเลขแทนที่ให้กับตัวอักษรที่มีการใช้งานบ่อยในภาษาอังกฤษเยอะกว่าตัวอักษรอื่น ๆ ได้ อย่างเช่น ในตัวอย่างจะกำหนดให้ตัวอักษร 12 ตัว ที่มีการใช้งานบ่อยในภาษาอังกฤษ อย่าง E, T, A, O, I, N, S, H, R, D, L, U มีตัวเลขแทนที่เยอะกว่าตัวอักษรอื่น ดังรูปที่ 1

หรือหากเรารู้สึกว่าการส่งตาราง Cipher Text Alphabet ให้คู่สนทนาของเราโดยตรงมันเสี่ยงเกินไป หากถูกฝั่งตรงข้ามขโมยไปได้ เขาอาจจะถอดรหัสลับของเราได้หมด เราสามารถที่จะหยิบเอาบทความสักบทความหนึ่งขึ้นมา จากนั้นเอาข้อความที่เราต้องการเข้ารหัสไปเทียบกับคำต่าง ๆ ที่อยู่ในบทความนั้น แล้วนำเอาตำแหน่งของคำที่ในบทความมาสร้าง Cipher Text Alphabet อย่างเช่น กระดาษรหัสลับแผ่นที่ 2 ของ The Beale Treasure Ciphers ที่ใช้ตำแหน่งของคำใน “คำประกาศอิสรภาพแห่งสหรัฐ” มาแทนที่ หรือถ้าหากทุกคนอยากลองเข้ารหัสเอง อาจจะหยิบเอานิทานสั้น ๆ สักเรื่องหนึ่งมาลองใช้ในการเข้ารหัสดูก็ได้เช่นกัน

  1. นำตาราง Plain Text Alphabet และ Cipher Text Alphabet มาสร้างรหัสลับ โดยเราจะนำตัวอักษรในข้อความเทียบกับ Plain Text Alphabet ในตารางจากนั้น นำตัวเลขในตาราง Cipher Text Alphabet มาใช้ในการสร้างรหัสลับ ซึ่งหากเป็นตัวอักษร ที่มีตัวเลขแทนที่หลายตัว เราจะใช้เรียงไปตามลำดับตัวอักษรที่พบในข้อความธรรมดา เช่น
    “E” ตัวแรกที่พบในข้อความจะแทนด้วย “37” ส่วน “E” ตัวที่สองที่พบในข้อความจะแทนด้วย “196” เป็นต้น วนไปเรื่อย ๆ จนกว่าจะเข้ารหัสครบทุกตัวอักษรในข้อความ


    เมื่อเข้ารหัสจนครบเราจะได้ ชุดตัวเลขเข้ารหัส คือ “31 17 115 239 37 907 196 47 140 79 186 84 554 9 53 15 808 42 82 24 52 56 59 133 811 95 55 73 37 35 55 190 107 287”

  2. การเข้ารหัสแบบ Beale Ciphers จะไม่เขียนตัวเลขติดกันหรือเขียนตัวเลขเป็นให้เว้นช่องตามคำในข้อความธรรมดา แต่จะเขียนแยกกันเป็นตัว ๆ

เมื่อคุณได้รับรหัสลับ “31 17 115 239 37 907 196 47 140 79 186 84 554 9 53 15 808 42 82 24 52 56 59 133 811 95 55 73 37 35 55 190 107 287” สามารถทำตามขั้นตอนด้านล่างเพื่อถอดรหัส ดังนี้

  1. เราต้องทราบตาราง Cipher Text Alphabet ที่กำหนดไว้ ดังรูปที่ 3

  2. นำรหัสที่ได้เทียบกับ Cipher Text Alphabet ที่กำหนดไว้ จากนั้นก็เทียบกับ Plain Text Alphabet จะสามารถถอดรหัส ได้เป็น “I HAVE DEPOSITED IN THE COUNTY OF BEDFORD”

เป็นอย่างไรกันบ้าง สำหรับการเข้ารหัสแบบ The Beale Treasure Ciphers ที่เรานำมาเล่ากันใน EP นี้

จริง ๆ แล้วการเข้ารหัสแบบ The Beale Treasure Ciphers ค่อนข้างจะถอดรหัสไม่ยากเลย ถ้าเราทราบคีย์ ซึ่งก็คือรูปแบบของ Cipher Text Alphabet ที่ถูกกำหนดขึ้นมา แต่อย่างที่บอก ถ้าหากเราอยากให้รหัสลับที่เราสร้าง มีการถอดรหัสได้ยากมากขึ้น เราสามารถที่จะหยิบเอาบทความสักบทความหนึ่งขึ้นมาใช้ในการสร้าง Cipher Text Alphabet ได้ เพื่อทำให้การเข้ารหัสของเราดูมีลูกเล่น มีสีสัน ถอดได้ยากขึ้น สามารถนำไปเล่นกับกลุ่มเพื่อนได้อีกด้วย

รหัสลับจาก Hashpire ในวันนี้คือ XXX XXX XXX

@Pantitas ตรงนี้ทำภาพอธิบายดีๆ เหมือนบนความก่อนๆ ก็ได้ ที่เป็นการสื่อให้รู้ถึงการเลือกตัวเลขมาใช้แบบวนลูป

@Namtan อยากให้อธิบายแนวๆ ว่า เราสามารถนำไปประยุกต์ส่งคีย์โดยอาจจะบอกว่าเป็นคำประกาศอิสรภาพแห่งสหรัฐ แทนที่จำส่งตารางคีย์ให้ ก็จะเป็นการเพิ่มกิมมิคแถมจำคีย์ได้ง่ายมากยิ่งขึ้นอีก อะไรแนวๆ นี้อะครับ ลองเรียบเรียงดูใหม่นะครับ

@Namtan @Pantitas ธีมอันนี้อยากให้ออกมาแนวๆ พามาสร้างลายแทงสมบัติเลียนแบบ EP9 อะไรแนวๆ นี้ดีไหมครับ น่าจะตื่นเต้นดีว่าเราสามารถสร้างลายแทงได้ด้วยตัวเองด้วยนะ