Kirish
Java platformasi xavfsizlikni, jumladan, til xavfsizligi, kriptografiya, ochiq kalitlar infratuzilmasi, autentifikatsiya, xavfsiz aloqa va kirishni boshqarishni ta'kidlaydi.
JCA platformaning asosiy qismi boʻlib, raqamli imzolar, xabarlar dayjestlari (xeshlar), sertifikatlar va sertifikatlarni tekshirish, shifrlash (simmetrik/assimetrik bloklar/oqim shifrlari), kalitlarni yaratish uchun “provayder” arxitekturasini va API toʻplamini oʻz ichiga oladi. va boshqarish, va xavfsiz tasodifiy sonlar yaratish, bir necha nom. Ushbu API'lar ishlab chiquvchilarga xavfsizlikni o'zlarining dastur kodlariga osongina integratsiya qilish imkonini beradi. Arxitektura quyidagi printsiplar asosida ishlab chiqilgan:
Amalga oshirish mustaqilligi: Ilovalar xavfsizlik algoritmlarini amalga oshirishga hojat yo'q. Aksincha, ular Java platformasidan xavfsizlik xizmatlarini so'rashlari mumkin. Xavfsizlik xizmatlari Java platformasiga standart interfeys orqali ulangan provayderlarda amalga oshiriladi (pastga qarang). Ilova xavfsizlik funksiyalari uchun bir nechta mustaqil provayderlarga tayanishi mumkin.
Amalga oshirishning o'zaro muvofiqligi: Provayderlar ilovalar bo'ylab birgalikda ishlaydi. Xususan, dastur ma'lum bir provayderga bog'lanmagan va provayder ma'lum bir dasturga bog'lanmagan.
Algoritmning kengaytirilishi: Java platformasi bugungi kunda keng qo'llaniladigan xavfsizlik xizmatlarining asosiy to'plamini amalga oshiradigan bir qator o'rnatilgan provayderlarni o'z ichiga oladi. Biroq, ba'zi ilovalar hali joriy etilmagan yangi standartlarga yoki xususiy xizmatlarga tayanishi mumkin. Java platformasi bunday xizmatlarni amalga oshiradigan maxsus provayderlarni o'rnatishni qo'llab-quvvatlaydi.
JDK da mavjud bo'lgan boshqa kriptografik aloqa kutubxonalari JCA provayderi arxitekturasidan foydalanadi, lekin boshqa joyda tasvirlangan. Java Secure Socket Extension (JSSE) Secure Socket Layer (SSL) va Transport Layer Security (TLS) ilovalariga kirish imkonini beradi. Java Umumiy Xavfsizlik Xizmatlari (JGSS) (Kerberos orqali) API va Simple Autentifikatsiya va Xavfsizlik Layeri (SASL) aloqa ilovalari o'rtasida xavfsiz xabar almashish uchun ham foydalanish mumkin.
Terminologiya bo'yicha eslatmalar
JDK 1.4 dan oldin JCE birlashtirilmagan mahsulot edi va shuning uchun JCA va JCE muntazam ravishda alohida, alohida komponentlar deb atalar edi. JCE endi JDKda to'planganligi sababli, farq kamroq ravshan bo'lib bormoqda. JCE JCA bilan bir xil arxitekturadan foydalanganligi sababli, JCE JCAning bir qismi sifatida to'g'riroq ko'rib chiqilishi kerak.
JDK ichidagi JCA ikkita dasturiy komponentni o'z ichiga oladi:
provayderlar amalga oshirishni ta'minlovchi kriptografik xizmatlarni belgilaydigan va qo'llab-quvvatlaydigan ramka. Ushbu ramka java.security, javax.crypto, javax.crypto.spec va javax.crypto.interfaces kabi paketlarni o'z ichiga oladi.
Sun, SunRsaSign, SunJCE kabi haqiqiy kriptografik ilovalarni o'z ichiga olgan haqiqiy provayderlar.
Muayyan JCA provayderi tilga olinsa, u aniq provayder nomi bilan tilga olinadi.
OGOHLANTIRISH: JCA ilovangizga xavfsizlik xususiyatlarini kiritishni osonlashtiradi. Biroq, ushbu hujjat API-larni muhokama qilish uchun zarur bo'lgan tushunchalarga oddiy kirishdan tashqari xavfsizlik/kriptografiya nazariyasini qamrab olmaydi. Ushbu hujjat, shuningdek, maxsus algoritmlarning kuchli/zaif tomonlarini qamrab olmaydi, protokol dizaynini qamrab olmaydi. Kriptografiya ilg'or mavzu bo'lib, ushbu vositalardan to'g'ri foydalanish uchun qat'iy, yaxshisi yaqinda bo'lgan ma'lumotnomaga murojaat qilish kerak.
Siz har doim nima qilayotganingizni va nima uchun qilayotganingizni tushunishingiz kerak: tasodifiy kodni shunchaki KO'CHIRIB KO'CHMAYING va undan foydalanish stsenariyingizni to'liq hal qilishini kutmang. Noto'g'ri vosita yoki algoritm tanlanganligi sababli muhim xavfsizlik yoki ishlash muammolarini o'z ichiga olgan ko'plab ilovalar o'rnatildi.
Dostları ilə paylaş: |