Úvod do kryptografie Java

Programovanie v jazyku Java sa stalo najpopulárnejším jazykom v modernom svete. Používajú sa v rôznych oblastiach, ako sú webové prehľadávače, webové servery, aplikačné servery, služba zasielania správ v jazyku Java atď. Pretože sa to používa v rôznych oblastiach, bezpečnosť tohto jazyka by mala byť dôležitá, preto prichádza časť kryptografie Java. Na zabezpečenie Java sa používa niekoľko mechanizmov. V tomto článku sa pozrieme na kryptografické služby poskytované programom Java.

Služby Java Cryptography

Ďalej sú uvedené dve poskytované kryptografické služby:

  1. JCA
  2. JCE

1. JCA

  • JCA znamená Java Cryptography Architecture. Je to sada tried, ktorá poskytuje kryptografické možnosti pre programy Java. Je to predvolená súčasť vývojového prostredia Java aplikácií, tj JDK (Java Development Kit). JCA bola predstavená vo verzii JDK 1.1. JCA poskytuje základné kryptografické funkcie pre programátora pomocou jazyka Java. Kryptografické funkcie zahŕňajú riadenie prístupu, prehľad správ, pár kľúčov, oprávnenia a digitálne certifikáty. JCA poskytuje sadu abstraktných tried v balíku Java nazývaných bezpečnosť.
  • Architektúra Java Cryptography Architecture je známa aj pre architektúru poskytovateľa, pretože poskytuje bezpečnosť. Hlavným cieľom navrhovania tejto architektúry je oddeliť koncepty kryptografie od ich skutočnej implementácie. Na dosiahnutie tejto nezávislosti programovacieho jazyka používa koncept rozhraní. Rozhranie je skupina funkcií, ktoré špecifikujú správanie sa rozhrania, tj čo môže rozhranie urobiť. Nezobrazuje skutočnú implementáciu rozhrania. Pozrime sa na príklad, ako lepšie pochopiť tento pojem.
  • Keď si kúpime nový počítač, nemusíme sa obávať vnútorných detailov mobilu alebo PC, ako sú použité elektronické komponenty, čip, prúd alebo napätie atď. Používali sme iba telefón alebo počítač bez toho, aby sme vedeli, ako to funguje vo vnútri. Tento súbor vnútorných operácií sa nazýva implementácia. Máme len predstavu o pamäti RAM, pamäti, batérii atď. Nie o vnútornej práci. Rovnakým spôsobom rozhranie funguje v JCA.
  • Hlavným účelom tohto je JCA, ktorá slúži na zabezpečenie architektúry s možnosťou pripojenia. To znamená, že používateľovi umožňuje meniť interné údaje bez znalosti rozhrania smerovača. JCA poskytuje koncepčné kryptografické funkcie a umožňuje im ich implementovať rôznymi spôsobmi. To umožňuje rôznym dodávateľom zabezpečiť implementáciu kryptografických nástrojov.
  • Na dosiahnutie tejto Java pozostáva kryptografická architektúra z niekoľkých tried nazývaných triedy motorov. Trieda motora je logická implementácia kryptografických funkcií. V tejto architektúre je iba jedna trieda bezpečnostného podpisu Java, ktorá predstavuje všetky možné variácie triedy algoritmu digitálneho podpisu. Skutočnú implementáciu tohto algoritmu vykonáva iná trieda nazývaná poskytovateľ.

Správa kľúčov

Java verzia 2 poskytuje kľúčový nástroj, ktorý sa používa na samostatné ukladanie verejného kľúča a súkromného kľúča. Nástroj na ochranu kľúčov chráni oba kľúče pomocou hesiel. Kľúčové nástroje používajú databázu na ukladanie kľúčov, táto databáza sa nazýva Keystore.

Nižšie je uvedený zoznam služieb poskytovaných kľúčovým nástrojom:

  • Vývozné osvedčenia.
  • Importujte certifikáty iných ľudí na overenie podpisu.
  • Vytvorte páry kľúčov.
  • Vytvára certifikáty s vlastným podpisom.
  • Vydať CSR (Žiadosti o podpísanie certifikátu), ktoré je potrebné zaslať CA (Certifikačná autorita) na vyžiadanie osvedčenia.

2. JCE

JCE je skratka pre Java Cryptography Extension. Kryptografické funkcie šifrovania údajov patria do kategórie Java Cryptography Extension. Architektúra rozšírenia Java Cryptography Extension má rovnakú štruktúru ako architektúra Java Cryptography Architecture. Vychádza tiež z koncepcie tried poskytovateľov a tried motorov, ako sme diskutovali v JCA. Implementácia je predvolená, ktorú poskytuje spoločnosť Sun Microsystems. Pretože je architektúra podobná architektúre Java Cryptography Architecture, nebudeme o tom znova diskutovať.

záver

Architektúra Java Cryptography Architecture aj Java Cryptography Extension sú silné kryptografické architektúry. Boli starostlivo naplánované a navrhnuté tak, aby umožňovali ďalšiu expanziu a nezávislosť od dodávateľa. Najväčším problémom je použitie Java Cryptography, kde musíme čeliť problémom s licenciami. Kvôli svojim exportným zákonom, Java Cryptography Extension neprichádza ako súčasť základnej Java Development Kit. Teraz boli obmedzenia zrušené, vývojári aplikácií môžu ľahko používať rozšírenie Java Cryptography Extension.

Odporúčané články

Toto je sprievodca Java Cryptography. Tu diskutujeme Úvod do Java cyuptografie a Poskytovateľa služieb a implementátora pre kryptografiu. Viac informácií nájdete aj v našich súvisiacich článkoch -

  1. Top 5 kryptografických techník
  2. Kryptografia vs šifrovanie - najväčšie rozdiely
  3. Aký je účel a výhody kryptografie?
  4. Symetrické šifrovanie kľúčov

Kategórie: