Blum Blum Shub Generator การเพิ่มอัตราเร็วของแหล่งกำเนิดบลัม บลัม ชับ Speed Increasing of Blum Blum Shub Generator การเพิ่มอัตราเร็วของแหล่งกำเนิดบลัม บลัม ชับ อาจารย์ที่ปรึกษา ผศ. พิเชษฐ เชี่ยวธนะกุล อาจารย์ผู้ร่วมประเมิน อ.ดร. ชัชชัย คุณบัว อ.ดร. ภัทรวิทย์ พลพินิจ โดย นายวีรพล รัชดาสกุล รหัส 493040173-0 นายเฉลิมพล รัฐภรณ์ปริพัตร รหัส 493041123-0
รายละเอียดการนำเสนอ ที่มาของโครงการ เป้าหมายและขอบเขตของโครงการ ทฤษฎีที่เกี่ยวข้อง แนวคิดการประยุกต์บลัม บลัม ชับ Symmetric Cryptosystem การทำงานของโปรแกรม สรุป
ที่มาของโครงการ ความปลอดภัยในการสื่อสารและแลกเปลี่ยนข้อมูลผ่านทางเครือข่ายอินเทอร์เน็ตเป็นสิ่งจำเป็น การเกิดปัญหา Collision ในการสร้างบิตสุ่มเพื่อใช้ในการผลิตกุญแจด้วยวิธีทั่วไปเช่น Secure Hash Algorithm (SHA) ทำให้ Attackers สามารถพยากรณ์ตัวเลขสุ่มได้ การคำนวณในบลัม บลัม ชับยังทำได้ช้า
เป้าหมายและขอบเขตของโครงการ เป้าหมายของโครงการ สามารถผลิตลำดับตัวเลขสุ่มที่มีประสิทธิภาพสูง ไม่สามารถพยากรณ์ได้ทางสถิติ เพื่อนำไปประยุกต์ ใช้กับการเข้ารหัสแบบสมมาตรที่ใช้กันอย่างแพร่หลายให้มีความปลอดภัยสูงยิ่งขึ้น ขอบเขตของโครงการ ผลิตตัวลำดับเลขสุ่มเพื่อใช้ในการเข้ารหัสข้อมูลแบบสมมาตร (Symmetric Cryptosystems)
ทฤษฎีที่เกี่ยวข้อง มิลเลอร์ – ราบิน บลัม บลัม ชับ Data Encryption Standard (DES) Triple Data Encryption Standard (3DES) RSA
มิลเลอร์ – ราบิน คืออะไร มิลเลอร์ – ราบิน เป็นอัลกอริทึมที่ใช้ในการตรวจสอบว่าเลขที่ได้จากการสุ่มมานั้นเป็นจำนวนเฉพาะหรือไม่
แนวคิดการประยุกต์บลัม บลัม ชับ บลัม บลัม ชับหมายถึงแหล่งกำเนิดบิตเทียมที่สอดคล้องกับแหล่งกำเนิดชั้นส่วนตกค้างกำลังสองดังสมภาค บลัม บลัม ชับ เป็นปัญหาหนึ่งทางทฤษฎีจำนวนที่ยังไม่สามารถหาผลเฉลยหรือฟังก์ชันผกผันได้ เมื่อทราบ image ของฟังก์ชัน ซึ่งผลก็คือไม่สามารถคาดเดาลำดับตัวเลขสุ่มถัดไปได้
แนวคิดการประยุกต์บลัม บลัม ชับ การเพิ่มประสิทธิภาพของบลัม บลัม ชับ สามารถทำได้โดยการแยกบิตที่มีความสำคัญน้อยออกเป็นจำนวน k บิตดังสมการ โดยที่ค่า N คือผลคูณระหว่างจำนวนเฉพาะขนาดใหญ่ 2 จำนวนคือ p และ q
Symmetric Cryptosystem ด้วย DES Data Encryption Standard (DES) เป็นวิธีการเข้ารหัสและถอดรหัสข้อมูลในรูป 64 bit โดยในที่นี้จะใช้บิตสุ่มที่ผลิตจาก Blum Blum Shub แทนวิธีทาง Data structure มาใช้ในการสร้างกุญแจซึ่งจะทำให้ได้ผลลัพธ์ออกมาในรูป Cipher Text 64 bit
Symmetric Cryptosystem ด้วย 3DES Triple Data Encryption Standard หรือ 3DES จะมีวิธีการทำงานคล้ายคลึงกับ DES โดยที่จะทำการผลิตกุญแจขนาด 192 บิต แล้วจึงทำการแบ่งเป็นกุญแจขนาด 64 บิตจำนวน 3 ชุด เพื่อใช้ในการเข้ารหัสให้ได้ออกมาเป็น Cipher Text ถึงแม้ 3DES จะมีความเร็วที่ช้ากว่า DES แต่ 3DES นั้นก็มีความปลอดภัยมากกว่า DES มาก 3DES เป็นวิธีการเข้ารหัสแบบสมมาตรที่มีความปลอดภัยสูงและยังสามารถรองรับ Application ต่างๆในปัจจุบันได้เป็นอย่างดี จึงทำให้3DES ถูกนำมาใช้กันอย่างแพร่หลายในปัจจุบัน
การเข้ารหัสด้วยวิธี RSA RSA เป็นอัลกอริทึมสำหรับการเข้ารหัสแบบ Public-Key และเป็น อัลกอริทึมแรกที่เหมาะสำหรับ Digital Signature ซึ่งมีการใช้งานใน Protocol สำหรับ Electronic Commerce โดยที่ RSA นั้นจะทำการสร้าง Public Key และ Private Key เพื่อใช้ในการเข้ารหัสและถอดรหัสโดยที่ ฝั่งผู้สั่งจะเข้ารหัสโดยใช้ Public Key และ ฝั่งผู้รับจะใช้ Private Key ในการถอดรหัส
การเข้ารหัสด้วยวิธี RSA การทำงานของ RSA algorithm สร้างเลขจำนวนเฉพาะขึ้นมา 2 ตัว p และ q คำนวณ n = pq และ ค่า phi = (p-1)(q-1) คำนวณ e โดยที่ 1 < e < phi และ gcd(e,phi) = 1 คำนวณ d โดยที่ 1 < d < phi และ ed 1 (mod phi) ซึ่งจะได้ (n,e) เป็น public key และ (n,d) เป็น private key
การเข้ารหัสด้วยวิธี RSA การเข้ารหัสฝั่งผู้ส่ง เราได้ Message m เราจะทำการเข้ารหัสเพื่อส่งไปยังผู้รับโดยใช้ Public key (n, e) โดย c = me mod n โดยที่ c คือ CipherText การถอดรหัสฝั่งรับ เมื่อได้ c ที่เป็น cipher text มานั้นทำการถอดรหัสโดยใช้ Private key (n, d) โดย m = cd mod n
Algorithm1: Blum Blum Shub Secret key Generator
ผลการทำงานของ Algorithm1
ผลการเปรียบเทียบประสิทธิภาพ
การประยุกต์ Algorithm1 ที่ออกแบบ ใน 3DES
PlainTextFromDecrypt Generate Key PlainText KeyText RSA Encrypt 3DES Encrypt CipherKeyText RSA Decrypt KeyText CipherText 3DES Decrypt PlainTextFromDecrypt
สรุป สร้างลำดับตัวเลขสุ่มที่ไม่สามารถคาดเดาตัวเลขสุ่มถัดไปได้ ประยุกต์ใช้งานสำหรับการเข้ารหัสข้อมูลแบบสมมาตรได้
Thank You for Your Attention Q & A Thank You for Your Attention