Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

อัลกอริธึม RSA ในความปลอดภัยของข้อมูลคืออะไร?


RSA ย่อมาจาก Rivest, Shamir, Adleman พวกเขาเป็นผู้ก่อตั้งเทคโนโลยีการเข้ารหัสคีย์สาธารณะซึ่งเป็นระบบเข้ารหัสคีย์สาธารณะสำหรับการส่งข้อมูลที่มีการป้องกัน เป็นวิธีการเข้ารหัสมาตรฐานสำหรับการส่งข้อมูลที่ตอบสนอง โดยเฉพาะขณะถ่ายโอนข้อมูลทางอินเทอร์เน็ต

Rivest-Shamir-Adleman (RSA) อัลกอริทึมการเข้ารหัสแบบอสมมาตรที่ใช้กันอย่างแพร่หลายในผลิตภัณฑ์และบริการบางอย่าง มีการสร้างคีย์ส่วนตัวและคีย์สาธารณะ โดยทุกคนสามารถใช้คีย์สาธารณะได้ และคีย์ส่วนตัวจะเป็นคีย์ส่วนตัวที่ผู้สร้างชุดคีย์รู้จักเท่านั้น

ด้วย RSA คีย์ส่วนตัวหรือสาธารณะสามารถเข้ารหัสข้อมูลได้ ในขณะที่คีย์อื่นถอดรหัสข้อมูลดังกล่าว นี่เป็นหนึ่งในเหตุผลที่ RSA เป็นอัลกอริธึมการเข้ารหัสแบบอสมมาตรมือสอง

จำนวนเฉพาะคือจำนวนที่หารด้วยตัวเดียวและตัวมันเองเท่านั้น ตัวอย่างเช่น 3 เป็นจำนวนเฉพาะเพราะมันหารด้วย 1 หรือ 3 เท่านั้น แต่ 4 ไม่ใช่จำนวนเฉพาะเพราะนอกจาก 1 และ 4 ก็สามารถหารด้วย 2 ได้เช่นกัน 5, 7, 11, 13, 17….เป็นจำนวนเฉพาะในขณะที่ 6, 8, 9, 10, 12 เป็นตัวเลขที่ไม่ใช่จำนวนเฉพาะ

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

RSA Information Security เป็นผู้บุกเบิกและทำการตลาดเทคโนโลยีที่ทำให้สามารถเชื่อมต่อและถ่ายโอนข้อมูลและเอกสารได้อย่างปลอดภัยบนเว็บ และสร้างและตรวจสอบตัวตนของคู่ค้าเสมือนจริง การพัฒนาที่สำคัญต่อการยอมรับการค้าดิจิทัลอย่างแพร่หลาย

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

RSA ใช้เลขชี้กำลังสองตัวรวมถึง e และ d โดยที่ e ถูกทำให้เป็นสาธารณะและ d เป็นส่วนตัว ให้ P เป็นข้อความธรรมดาและ C เป็นข้อความเข้ารหัส มีโครงสร้างเกี่ยวกับพีชคณิต 2 แบบ ได้แก่ วงแหวนและกลุ่ม

  • วงแหวนเข้ารหัส/ถอดรหัส − RSA ต้องการแหวน R =n , +, x> สำหรับการเข้ารหัสและถอดรหัสด้วยการดำเนินการเลขคณิตสองแบบคือ การบวกและการคูณ ใน RSA วงแหวนนี้เป็นแบบสาธารณะเนื่องจากโมดูลัส n เป็นสาธารณะ ใครบางคนสามารถส่งข้อความถึงผู้ที่ใช้วงแหวนนี้เพื่อทำการเข้ารหัสได้

  • กลุ่มการสร้างคีย์ − RSA ต้องการกลุ่มการคูณ G =фn ,*, X> forkey generation กลุ่มนี้มีเฉพาะการคูณและการหารซึ่งจำเป็นสำหรับการสร้างคีย์สาธารณะและคีย์ส่วนตัว กลุ่มนี้เป็นความลับจากสาธารณะเพราะโมดูลัส ф(n) เป็นความลับจากสาธารณะ