Kryptering giver en af de bedste metoder til at sikre digitale data. Kryptering giver brugeren mulighed for at sløre data gennem en kode, der kun kan dekrypteres af brugeren eller andre betroede personer. Ikke overraskende har programmeringssprog som Java, der bruges til at styre netværkstrafik og netværksgrænseflader, indbyggede biblioteker til at understøtte datakryptering. Der findes mange krypteringsstandarder i Java-bibliotekerne, inklusive AES 256-standarden.
AES-kryptering
Advanced Encryption Standard blev etableret i 2002 af National Institute of Standards and Technology som standarden for datakryptering. AES-kryptering bruger Rijndael-krypteringsalgoritmen, som involverer substitution og permutationsmetoder til at skabe krypterede data fra en besked. AES-standarder bruges i vid udstrækning til kryptering af virksomheder og regeringer. Implementering kan være kompleks for dem, der ikke er fortrolige med kryptografi, men mange programmeringssprog, herunder Java, inkluderer biblioteker, der gør krypteringsteknologi let tilgængelig for brugerne.
Dagens video
256-bit kryptering
Ved kryptering af beskeder genereres en "nøgle". I de fleste offentlige krypteringssystemer arbejder offentlige og private nøgler sammen for at sikre, at brugere kan dele krypterede data. AES 256 er en symmetrisk nøglealgoritme, hvilket betyder, at den samme nøgle krypterer og dekrypterer beskeden. Den pågældende nøgle vil være repræsenteret i 256 bit, hvilket betyder, at nogen, der forsøger at bryde ind i meddelelsen, skal finde ud af 256-bit nøgleværdien. Teknologien til at dechifrere en 256-bit nøgle inden for rimelig tid er endnu ikke opfundet.
AES 256 Java biblioteker
Java Encryption API krypterer meddelelser og opretter nøgler til programmøren gennem en grænseflade med krypteringsklassemetoder. Programmører opretter en besked for at kryptere, importerer de korrekte krypteringsbiblioteker og bruger derefter metoderne i disse biblioteker til at specificere en krypteringsmetode, generere nøgler og kryptere beskeden. Krypteringsbibliotekerne indeholder også måder at afkode krypterede meddelelser på ved hjælp af den samme krypteringsnøgle.
Eksempler
Et simpelt Java-kodningseksempel viser, hvordan man bruger krypteringsbiblioteker med AES 256-specifikationen. Det følgende viser, hvordan man opretter kryptering, nøgle- og chifferobjekter i Java for at kryptere en besked:
importer java.security.; importer javax.crypto.; importer javax.crypto.spec.; importer java.io.;
class Encrypt{ public static void main (String[] args) throws Exception {
String message="Besked der skal afkodes";
KeyGenerator key = KeyGenerator.getInstance("AES"); key.init (256);
SecretKey s = key.generateKey(); byte[] raw = s.getEncoded();
SecretKeySpec sskey= ny SecretKeySpec (rå, "AES");
Cipher c = Cipher.getInstance("AES");
cipher.init (Cipher. ENCRYPT_MODE, skey);
byte[] krypteret = c.doFinal (message.getBytes()); System.out.println("krypteret streng: " + asHex (krypteret));
} }