ตั้งแต่ปี 2010 · รองรับการใช้งานเครื่องมือกว่า 2 ล้านครั้งต่อเดือน
ตั้งแต่ปี 2010
เพิ่มใน Chrome

กล่องเครื่องมือของฉัน

โหมดอัตโนมัติ

ยังไม่มีเครื่องมือที่บันทึกไว้

อัปเกรดเป็นเวอร์ชันพรีเมียม
เครื่องมือที่เกี่ยวข้อง
ขั้นตอนถัดไป
เครื่องคำนวณอัลกอริทึมยูคลิดขยายเครื่องคิดเลขทฤษฎีเศษเหลือจีนเครื่องคิดเลขฟังก์ชันโทเชียนต์ออยเลอร์
เครื่องมือเพิ่มเติม
เครื่องมือเข้ารหัสวีเจแนร์
หน้าแรก > การแฮชและการตรวจสอบ
 

เครื่องจำลองการเข้ารหัส RSA ทีละขั้นตอน

เครื่องจำลองการเข้ารหัส RSA ทีละขั้นตอนของ MiniWebtool สาธิต RSA โดยใช้จำนวนเฉพาะ 2 จำนวนที่ป้อน ติดตามการสร้างกุญแจสาธารณะและกุญแจส่วนตัว เลขคณิตมอดุลาร์ การเข้ารหัส และการถอดรหัสในตัวอย่างเพื่อการศึกษา ไม่ใช่ขั้นตอนความปลอดภัยสำหรับระบบใช้งานจริง

ไม่แน่ใจว่าใช้อย่างไร? ถาม AI

เมื่อใช้ Gemini ให้วางคำถามที่คัดลอกลงในแชต คุณคัดลอกคำถามด้านล่างได้เช่นกัน

ดูคำถาม

ใช้ฟรีวันละ 3 ครั้งไม่ต้องสมัครสมาชิกผลลัพธ์ทันที
เครื่องจำลองการเข้ารหัส RSA ทีละขั้นตอนลองใช้เลย — ฟรี ▼
p = 61, q = 53, e = 17: 42 เข้ารหัสได้ 2,557 และถอดรหัสกลับเป็น 42

กรอกจำนวนเฉพาะสองจำนวน เลขชี้กำลังสาธารณะ และหมายเลขข้อความ ผลลัพธ์จะแสดงแต่ละขั้นตอนของการสร้างคีย์ การเข้ารหัส และการถอดรหัส

⚡ ตัวอย่างด่วน

Embed เครื่องจำลองการเข้ารหัส RSA ทีละขั้นตอน Widget

เกี่ยวกับ เครื่องจำลองการเข้ารหัส RSA ทีละขั้นตอน

การเข้ารหัส RSA คืออะไร?

RSA (Rivest-Shamir-Adleman) เป็นหนึ่งในระบบรหัสลับแบบกุญแจสาธารณะ (Public-key Cryptosystem) ระบบแรกๆ เผยแพร่ในปี 1977 โดย Ron Rivest, Adi Shamir และ Leonard Adleman ต่างจากการเข้ารหัสแบบสมมาตร (ที่ใช้กุญแจดอกเดียวกันในการเข้ารหัสและถอดรหัส) RSA ใช้ คู่กุญแจ (Key Pair): กุญแจสาธารณะที่ใครๆ ก็ใช้เข้ารหัสข้อมูลได้ และกุญแจส่วนตัวที่มีเพียงเจ้าของเท่านั้นที่ใช้ถอดรหัสได้

ความปลอดภัยทางคณิตศาสตร์ของ RSA ขึ้นอยู่กับ ปัญหาการแยกตัวประกอบของจำนวนเต็ม (Integer Factorization Problem): การคูณจำนวนเฉพาะขนาดใหญ่สองตัวนั้นทำได้ง่ายมาก แต่การแยกผลคูณนั้นกลับออกมาเป็นจำนวนเฉพาะเดิมนั้นทำได้ยากมากในทางคอมพิวเตอร์หากตัวเลขมีขนาดใหญ่เพียงพอ

สรุปภาพรวม

เครื่องจำลองการเข้ารหัส RSA ทีละขั้นตอนสาธิต RSA ด้วยจำนวนเฉพาะสองจำนวนที่คุณป้อน แสดงการสร้างกุญแจ เลขคณิตมอดุลาร์ การเข้ารหัส และถอดรหัสเพื่อการเรียนรู้ ไม่ใช่เครื่องมือเข้ารหัสที่ปลอดภัย

เครื่องจำลองการเข้ารหัส RSA ทีละขั้นตอน: ฟีเจอร์โดยสรุป
ฟีเจอร์สิ่งที่ได้รับเหมาะสำหรับ
ใช้จำนวนเฉพาะของคุณป้อนจำนวนเฉพาะ p และ q เช่น 61 และ 53 พร้อมข้อความจำนวนเต็มบวกที่น้อยกว่า p × qทำตามตัวอย่าง RSA ในตำราด้วยตัวเลขขนาดเล็ก
เลขชี้กำลังสาธารณะ eป้อนค่า e หรือเว้นว่างเพื่อให้ระบบเลือกให้อัตโนมัติ ตัวเลือกที่ใช้บ่อยบนหน้า ได้แก่ 3, 17 และ 65537ลองค่าเลขชี้กำลังต่าง ๆ และดูว่าค่าใดใช้ได้
ขั้นตอนสร้างกุญแจแสดง n = p × q, ฟังก์ชันทอเทียนต์ φ(n) = (p−1)(q−1) และเลขชี้กำลังส่วนตัว d ที่หาโดยอัลกอริทึมยุคลิดแบบขยายทำความเข้าใจที่มาของกุญแจสาธารณะและส่วนตัว
เข้ารหัสและถอดรหัสป้อนจำนวนเต็มแล้วใช้ปุ่ม Encrypt หรือ Decrypt เพื่อใช้กุญแจที่สร้างขึ้นกับค่านั้นตรวจว่าการถอดรหัสได้ข้อความเดิมกลับมาหรือไม่
ใช้เพื่อการศึกษาเท่านั้นใช้จำนวนเฉพาะขนาดเล็กเพื่อการสอน ซึ่งแยกตัวประกอบได้ทันที หน้าเว็บระบุว่า RSA จริงต้องใช้กุญแจ 2048 ถึง 4096 บิตสาธิตการเข้ารหัสกุญแจสาธารณะในชั้นเรียน

ขั้นตอนการสร้างกุญแจ RSA

กระบวนการสร้างกุญแจ RSA ประกอบด้วย 5 ขั้นตอนพื้นฐาน:

  • ขั้นตอนที่ 1 – เลือกจำนวนเฉพาะ: เลือกจำนวนเฉพาะ p และ q ที่แตกต่างกันและมีค่ามาก ยิ่งจำนวนเหล่านี้ใหญ่เท่าไหร่ กุญแจก็จะยิ่งปลอดภัยมากขึ้น
  • ขั้นตอนที่ 2 – คำนวณ Modulus: คำนวณ n = p × q ความยาวบิตของ n จะเป็นตัวกำหนดขนาดของกุญแจ (เช่น 2048 บิต)
  • ขั้นตอนที่ 3 – ฟังก์ชันโทเชียนต์ของออยเลอร์: คำนวณ φ(n) = (p−1)(q−1) ค่านี้สำคัญมากในการเลือก e และคำนวณ d
  • ขั้นตอนที่ 4 – เลขชี้กำลังสาธารณะ: เลือก e โดยที่ 1 < e < φ(n) และ ห.ร.ม.(e, φ(n)) = 1 ตัวเลือกมาตรฐานคือ 65537
  • ขั้นตอนที่ 5 – เลขชี้กำลังส่วนตัว: คำนวณ d โดยใช้อัลกอริทึมแบบยุคลิดส่วนขยาย (Extended Euclidean Algorithm) เพื่อให้ d × e ≡ 1 (mod φ(n))

อัลกอริทึมแบบยุคลิดส่วนขยาย (Extended Euclidean Algorithm)

การคำนวณเลขชี้กำลังส่วนตัว d ต้องใช้การหา ตัวผกผันการคูณมอดุลาร์ (Modular Multiplicative Inverse) ของ e มอดุโล φ(n) อัลกอริทึมแบบยุคลิดส่วนขยายช่วยแก้ปัญหานี้ได้อย่างมีประสิทธิภาพ โดยขยายจากอัลกอริทึม ห.ร.ม. มาตรฐานเพื่อหาค่าสัมประสิทธิ์ x และ y ที่ทำให้ a·x + b·y = ห.ร.ม.(a, b)

เมื่อ ห.ร.ม.(e, φ(n)) = 1 อัลกอริทึมจะให้ค่า x ที่ทำให้ e·x ≡ 1 (mod φ(n)) ซึ่งจะได้ d = x mod φ(n)

ข้อควรพิจารณาด้านความปลอดภัยของ RSA

  • ขนาดกุญแจ: RSA สมัยใหม่ใช้กุญแจขนาด 2048 หรือ 4096 บิต จำนวนเฉพาะขนาดเล็กในตัวจำลองนี้มีไว้เพื่อการศึกษาเท่านั้นและสามารถแยกตัวประกอบได้ทันที
  • รูปแบบการเติมข้อมูล (Padding): ในการใช้งานจริง RSA จะใช้การเติมข้อมูล (เช่น OAEP, PKCS#1) เพื่อป้องกันการโจมตีทางคณิตศาสตร์ต่อข้อมูลดิบ
  • ประสิทธิภาพ: RSA ช้ากว่าการเข้ารหัสแบบสมมาตรมาก ในทางปฏิบัติ RSA มักใช้เข้ารหัสกุญแจสมมาตรแบบสุ่ม แล้วจึงใช้กุญแจนั้นเข้ารหัสข้อมูลจริง (การเข้ารหัสแบบผสม หรือ Hybrid Encryption)
  • ภัยคุกคามจากควอนตัม: อัลกอริทึมของ Shor บนคอมพิวเตอร์ควอนตัมที่มีประสิทธิภาพเพียงพอ สามารถแยกตัวประกอบจำนวนขนาดใหญ่ได้อย่างรวดเร็ว ซึ่งเป็นภัยต่อ RSA ปัจจุบันมีการพัฒนาวิทยาการรหัสลับหลังควอนตัม (Post-quantum cryptography) เพื่อเป็นมาตรการตอบโต้

การใช้งาน RSA ในทางปฏิบัติ

  • TLS/SSL (HTTPS): RSA ถูกใช้ในระหว่างการ Handshake เพื่อแลกเปลี่ยนกุญแจเซสชันแบบสมมาตรอย่างปลอดภัย
  • ลายเซ็นดิจิทัล: RSA ใช้ลงนามในเอกสารโดยการเข้ารหัสค่าแฮชด้วยกุญแจส่วนตัว ซึ่งตรวจสอบได้ด้วยกุญแจสาธารณะ
  • การเข้ารหัสอีเมล: PGP และ S/MIME ใช้ RSA ในการเข้ารหัสการสื่อสารทางอีเมล
  • การตรวจสอบสิทธิ์ SSH: คู่กุญแจ RSA ช่วยให้สามารถตรวจสอบสิทธิ์เพื่อเข้าถึงเซิร์ฟเวอร์ระยะไกลได้โดยไม่ต้องใช้รหัสผ่าน
  • การลงนามรหัส (Code Signing): ผู้เผยแพร่ซอฟต์แวร์ลงนามในไฟล์ที่รันได้ด้วย RSA เพื่อพิสูจน์ความแท้จริงและความถูกต้องของข้อมูล

คำถามที่พบบ่อย

การเข้ารหัส RSA คืออะไร?
RSA (Rivest-Shamir-Adleman) เป็นอัลกอริทึมการเข้ารหัสแบบอสมมาตรที่ใช้กุญแจสองดอกที่แตกต่างกัน: กุญแจสาธารณะสำหรับการเข้ารหัส และกุญแจส่วนตัวสำหรับการถอดรหัส ความปลอดภัยขึ้นอยู่กับความยากทางคณิตศาสตร์ในการแยกตัวประกอบของจำนวนเฉพาะขนาดใหญ่
การสร้างกุญแจ RSA ทำงานอย่างไร?
การสร้างกุญแจ RSA เกี่ยวข้องกับการเลือกจำนวนเฉพาะขนาดใหญ่ p และ q, คำนวณ n = p × q, คำนวณฟังก์ชันโทเชียนต์ของออยเลอร์ φ(n) = (p−1)(q−1), เลือกเลขชี้กำลังสาธารณะ e ที่เป็นจำนวนเฉพาะสัมพัทธ์กับ φ(n), และคำนวณเลขชี้กำลังส่วนตัว d เป็นตัวผกผันมอดุลาร์ของ e mod φ(n)
บทบาทของฟังก์ชันโทเชียนต์ของออยเลอร์ใน RSA คืออะไร?
ฟังก์ชันโทเชียนต์ของออยเลอร์ φ(n) จะนับจำนวนเต็มตั้งแต่ 1 ถึง n ที่เป็นจำนวนเฉพาะสัมพัทธ์กับ n ในระบบ RSA ฟังก์ชันนี้ช่วยรับรองว่าการเข้ารหัสและถอดรหัสเป็นส่วนกลับทางคณิตศาสตร์ต่อกัน ทำให้ความสัมพันธ์ e·d ≡ 1 (mod φ(n)) เป็นจริงได้
ทำไม p และ q ต้องเป็นจำนวนเฉพาะที่แตกต่างกัน?
หาก p = q จะได้ n = p² และการหาค่า p จาก n จะทำได้ง่ายมาก (เพียงแค่ถอดรากที่สอง) การใช้จำนวนเฉพาะที่ต่างกันช่วยให้มั่นใจได้ว่าการแยกตัวประกอบ n นั้นทำได้ยากมากสำหรับตัวเลขขนาดใหญ่
ตัวจำลองนี้ปลอดภัยสำหรับการเข้ารหัสจริงหรือไม่?
ไม่ ตัวจำลองนี้ใช้ตัวเลขขนาดเล็กเพื่อวัตถุประสงค์ทางการศึกษาเท่านั้น RSA ที่ใช้งานจริงต้องใช้กุญแจขนาด 2048–4096 บิต (จำนวนเฉพาะที่มีความยาวหลายร้อยหลัก) โปรดใช้ไลบรารีรหัสลับมาตรฐานสำหรับการรักษาความปลอดภัยจริงเสมอ

อ้างอิงเนื้อหา หน้าหรือเครื่องมือนี้ว่า:

"เครื่องจำลองการเข้ารหัส RSA ทีละขั้นตอน" ที่ https://MiniWebtool.com/th/เครื่องจำลองการเข้ารหัส-rsa-ทีละขั้นตอน/ จาก MiniWebtool, https://MiniWebtool.com/

พูดคุยกับ AI ที่คุณชื่นชอบ

เมื่อใช้ Gemini ให้วางคำถามที่คัดลอกลงในแชต คุณคัดลอกคำถามด้านล่างได้เช่นกัน

ดูคำถาม

การแฮชและการตรวจสอบ:

เครื่องมือยอดนิยมและอัปเดตล่าสุด:

เครื่องจำลองลูกคิดญี่ปุ่น โซโรบันตัดบรรทัดตามจำนวนตัวอักษรเครื่องคำนวณ ABV เบียร์โฮมบรูว์ดูทั้งหมด →
หน้าแรก > การแฮชและการตรวจสอบ > เครื่องจำลองการเข้ารหัส RSA ทีละขั้นตอน