|
Amaliyot 2 Mavzu: Openssl kutubxonasi yordamida dsa algoritmi asosida eri yaratish
|
Sana | 12.01.2024 | Hajmi | 231,58 Kb. | | #135492 |
Bog'liq Amaliyot 2
Amaliyot 2
Mavzu: OpenSSL kutubxonasi yordamida dsa algoritmi asosida eri yaratish.
DSA (ingl. Digital Signature algoritm raqamli imzo algoritmi) elektron imzo yaratish uchun, lekin shifrlash uchun emas (RSA va el-Gamal sxemasidan farqli o'laroq) shaxsiy kalit (kalitlar juftligidan: ) yordamida kriptografik algoritm. Imzo maxfiy ravishda yaratiladi (shaxsiy kalit bilan), lekin ommaviy ravishda tekshirilishi mumkin (ochiq kalit bilan). Bu shuni anglatadiki, faqat bitta mavzu xabar imzosini yaratishi mumkin, ammo har kim uning to'g'riligini tekshirishi mumkin. Algoritm cheklangan maydonlarda logarifmlarni olishning hisoblash murakkabligiga asoslangan.
Algoritm 1991 yil avgust oyida milliy standartlar va texnologiyalar instituti (AQSh) tomonidan taklif etilgan va patentlangan (patent muallifi David W. Kravitz), NIST ushbu patentni royaltisiz foydalanish uchun taqdim etdi. DSA DSS (ingl. Digital Signature Standard raqamli imzo standarti), birinchi marta 1998 yil 15 dekabrda nashr etilgan (FIPS-186 hujjati (ingl. Federal axborotni qayta ishlash standartlari — federal axborotni qayta ishlash standartlari)). Standart bir necha bor yangilandi, FIPS-ning so'nggi versiyasi 186-4.
Rasm-9.1. Dsa ishining tasviri
Raqamli imzo sxemasi parametrlari
Raqamli imzo tizimini yaratish uchun siz quyidagi amallarni bajarishingiz kerak:
H(x) kriptografik Xash funktsiyasini tanlash.
O'lchamlari n bitlarda h(x) Xash funktsiyasi qiymatlari bitlaridagi o'lchamga to'g'ri keladigan q tub sonini tanlash.
P ning asosiy sonini tanlash (p-1) q ga bo'linadi. P ning bit uzunligi l (2^(L-1)
Uni hisoblash uchun g = h^((p-1)/q) mod p formulasidan foydalanishingiz mumkin, bu erda h ba'zi ixtiyoriy son, 1
Yuqorida aytib o'tilganidek, raqamli imzo sxemasining asosiy parametri-bu xabar matnini imzo hisoblangan raqamga aylantirish uchun zarur bo'lgan kriptografik Xash funktsiyasi. Ushbu funktsiyaning muhim xususiyati chiqish ketma-ketligining bit uzunligi bo'lib, undan keyin n bilan belgilanadi, DSS standartining birinchi versiyasida sha-1 funktsiyasi va shunga mos ravishda imzolangan raqamning bit uzunligi 160 bit tavsiya etiladi. Endi SHA - 1 endi xavfsiz emas. Standartda l va N sonlarining quyidagi mumkin bo'lgan juftliklari ko'rsatilgan:
L = 1024, N = 160
L = 2048, N = 224
L = 2048, N = 256
L = 3072, N = 256
Ushbu standartga muvofiq SHA-2 oilasining Xash funktsiyalari tavsiya etiladi. AQSh davlat tashkilotlari dastlabki uchta variantdan birini qo'llashlari kerak, sertifikat idoralari abonentlar foydalanadigan juftlikka teng yoki undan yuqori bo'lgan juftlikdan foydalanishlari kerak. Tizimni loyihalash har qanday ruxsat etilgan Xash funktsiyasini tanlashi mumkin. Shuning uchun, ma'lum bir Xash funktsiyasidan foydalanishga e'tibor qaratilmaydi.
Dsa-ga asoslangan kriptosistemaning chidamliligi ishlatilgan Xash funktsiyasining chidamliligidan va juftlikning (L,N) chidamliligidan oshmaydi, ularning chidamliligi har bir raqamning alohida-alohida chidamliligidan oshmaydi. Tizim qancha vaqt xavfsiz bo'lishi kerakligini ham hisobga olish kerak. Hozirgi vaqtda 2010 (2030) yilgacha chidamli bo'lishi kerak bo'lgan tizimlar uchun 2048 (3072) bit uzunlik tavsiya etiladi.
Ochiq va maxfiy kalitlar
1. Maxfiy kalit 02. Ochiq kalit y=g^{x} mod p formulasi bilan hisoblanadi
Ochiq parametrlar raqamlar (p, q, g, y). Bunday holda, raqamlar (p, q, g) foydalanuvchilar guruhi uchun umumiy bo'lishi mumkin va x va y raqamlari mos ravishda ma'lum bir Foydalanuvchining shaxsiy va ochiq kalitlari hisoblanadi. Xabarni imzolashda x va k maxfiy raqamlari ishlatiladi va har bir keyingi xabarning imzosini hisoblashda k raqami tasodifiy tanlanishi kerak (amalda soxta tasodifiy).
(P, q, g) bir nechta foydalanuvchilar uchun ishlatilishi mumkinligi sababli, amalda foydalanuvchilar ko'pincha ba'zi mezonlarga ko'ra bir xil (p, q, g) guruhlarga bo'linadi. Shuning uchun ushbu parametrlar domen parametrlari (domen parametrlari) deb nomlanadi.
Amaliy qism
Rasm:9.1. Shaxsiy kalitni yaratish
Rasm:9.2. Ochiq kalitni yaratish
Rasm:9.3. Sertifikat yaratish
Rasm:9.4. Yaratish elektron raqamli imzo
Rasm:9.5. Tekshirish elektron raqamli imzo
Rasm: 9.6. Eri fayli
Vazifa: OPENSSL kutubxonasi yordamida dsa algoritmi asosida elektron raqamli imzo yarating.
|
| |