Rsa algoritmi yordamida shifrlash. RSA shifrlash. RSA algoritmining tavsifi va bajarilishi. Zamonaviy xakerlik urinishlari
Ochiq kalitlarni shifrlash algoritmi RSA yigirmanchi asrning 70-yillari oxirida birinchilardan bo'lib taklif qilingan. Uning nomi mualliflarning ismlarining birinchi harflaridan iborat: R. Raivest (R. Rivest), A. Shamir (A.Shamir) va L. Adleman (L. Adleman). RSA algoritmi, ehtimol eng mashhur va keng tarqalgan assimetrik algoritm kriptografik tizimlarda.
Algoritm ko'p omillarni oddiy omillarga ajratish vazifasi qiyin ekanligiga asoslanadi. RSA kriptografik tizimi raqamlar nazariyasidan quyidagi ikkita dalilga asoslanadi:
raqamni soddaligi uchun tekshirish vazifasi nisbatan oson;
n \u003d pq (p va q - tub sonlar) shakllarning raqamlarini ajratish muammosi; Agar biz n va p va q - katta sonlarni bilsak, faktoring juda qiyin (bu "Faktorizatsiya muammosi" deb nomlanadi, batafsil ma'lumot uchun "Ochiq kalitlar kriptografiyasida ishlatiladigan raqamlar nazariyasi asoslari" ga qarang).
RSA algoritmi bu bloklangan shifrlash algoritmi bo'lib, unda shifrlangan va shifrlanmagan ma'lumotlar ba'zi n uchun 0 va n -1 o'rtasidagi butun sonlar sifatida taqdim qilinishi kerak.
Shifrlash
Shunday qilib, algoritmning o'zini ko'rib chiqing. Abonent A-ga shifrlangan xabarni V abonentiga yuborishni xohlasin. Bunday holda, V abonenti juftlikni (ochiq kalit; shaxsiy kalit) tayyorlab, A foydalanuvchiga ochiq kalitni yuborishi kerak.
Birinchi qadam - ochiq va shaxsiy kalitlarni yaratish. Buning uchun avval ikkita P va Q katta tub sonlarni tanlang. Keyin N mahsuloti hisoblanadi:
Shundan so'ng f yordamchi raqami aniqlanadi:
f \u003d (P - 1) (Q - 1).
Keyin tasodifiy ravishda d sonini tanlaydi< f и взаимно простое с f .
D va N raqamlari foydalanuvchining ochiq kaliti, e qiymati esa shaxsiy kalit bo'ladi.
Shunday qilib, ushbu bosqichda foydalanuvchi quyidagi jadvalda ko'rsatilgan ma'lumotlarga ega bo'lishi kerak:
B foydalanuvchisi A foydalanuvchisidan shifrlangan xabarni olishni istaganligi sababli, B foydalanuvchisi o'zining ochiq kalitini (d, N) A foydalanuvchiga yuborishi kerak. P va Q raqamlari endi kerak emas, ammo ularni hech kimga etkazib bo'lmaydi; barchasini unutish yaxshidir.
Ushbu nuqtada kalitni tayyorlash bosqichi yakunlandi va siz ma'lumotlarni shifrlash uchun asosiy RSA protokolidan foydalanishingiz mumkin.
Do'stlaringiz bilan baham: |