Dator
 |  Startsida |  Hårdvara |  Nätverk |  Programmering |  Programvara |  Felsökning |  System |   
Programmering
  • C /C + + -programmering
  • Computer Programspråk
  • Delphi Programmering
  • Java Programming
  • JavaScript programmering
  • PHP /MySQL Programmering
  • perl Programmering
  • python Programming
  • Ruby programmering
  • Visual Basics Programmering
  • * Dator Kunskap >> Programmering >> Java Programming >> Content

    Hur du krypterar en stor fil i Java

    Om du behöver kryptera små filer i Java , är det tillräckligt för att ladda alla data i minnet , kryptera det och skriva det igen . Men för större filer som kan överstiga storleken på datorns minne , kommer detta tillvägagångssätt vara alldeles för långsam . Du kommer istället att behöva skicka data direkt i en ström från filen till den nya krypterade filen . Saker du behöver
    NetBeans
    Visa fler instruktioner
    1

    Skapa en tom textfil med namnet " Encrypter.java " och klistra in följande inledande kod i den :

    import java.io.File , import java.io.FileInputStream , import java.io.FileNotFoundException , import java.io.FileOutputStream , import java.io.IOException , import java.io.InputStream , import java . io.OutputStream , import java.security.InvalidAlgorithmParameterException , import java.security.InvalidKeyException , import java.security.NoSuchAlgorithmException , import java.security.spec.AlgorithmParameterSpec , import javax.crypto.Cipher , import javax.crypto.CipherOutputStream ; import javax . crypto.KeyGenerator , import javax.crypto.NoSuchPaddingException , import javax.crypto.SecretKey , import javax.crypto.spec.IvParameterSpec ;

    public class Encrypter {

    public static void kryptera ( SecretKey nyckel , InputStream in , OutputStream ut ) { }

    public void main ( String [] args ) { } }

    Detta har två metoder : en huvudsaklig metod som tar två argument - källfilen och målfilen - och en kryptera metod som tar två strömmar och en krypteringsnyckel
    2

    Klistra in följande inom parentes i den huvudsakliga metoden :

    File infile . = new File ( args [ 0 ] ) ; File outFile = new File ( args [ 1 ] ) ;

    try { SecretKey key = KeyGenerator.getInstance ( " DES " ) generateKey ( ) ; . Encrypter.encrypt ( nyckel , nytt FileInputStream ( infil ) , nya FileOutputStream ( outFile ) ) ;} catch ( FileNotFoundException e ) { } catch ( NoSuchAlgorithmException e ) { }

    Detta skapar en hemlig nyckel för Data Encryption Standard ( DES ) metod för kryptering och omedelbart kallar kryptera metoden , tillsammans med nyckeln och en ström för källan och filer destination
    3

    Klistra in följande i kryptera metoden : .

    try { byte [ ] IV = new byte [ ] { ( byte ) 0x8E , 0x12 , 0x39 , ( byte ) 0x9C , 0x07 , 0x72 , 0x6F , 0x5A };

    AlgorithmParameterSpec paramSpec = ny IvParameterSpec ( iv) ; Cipher c = Cipher.getInstance ( " DES/CBC/PKCS5Padding "); c.init ( Cipher.ENCRYPT_MODE , nyckel, paramSpec );

    ut = new CipherOutputStream ( ut , c); int count = 0 , byte [ ] buffer = new byte [ 1024 ] ;

    medan ( ( räkna = in.read ( buffert ) ) > = 0 ) { out.write ( buffert , 0 , count ) ; } ut . close ( ) ;} catch ( IOException e ) { } catch ( InvalidAlgorithmParameterException e ) { } catch ( InvalidKeyException e ) { } catch ( NoSuchAlgorithmException e ) { } catch ( NoSuchPaddingException e ) { }

    Detta ställer upp en initieringsvektor att använda för DES chiffret . Data läses från InputStream , krypterade och skrivit ut 1024 byte i taget , så att även flera gigabyte filer vara effektivt krypterad utan att överbelasta minnet . Spara ditt arbete
    4

    . Om du använde en Java Integrated Development Environment ( IDE ) , kan du kompilera genom att klicka på " Build " -knappen . Annars måste du köra följande kommando i kommandotolken för att kompilera det :

    javac Encrypter.java
    5

    vill kryptera en fil skriver du följande kommando i ett kommando prompt : .

    java Kryptera KÄLLKODFIL DestinationFile

    Ersätt " KÄLLKODFIL " och " DestinationFile " med de nödvändiga filnamn Addera

    Tidigare:

    nästa:
    relaterade artiklar
    ·En Java 3D API Tutorial
    ·Hur Infoga Java Faces som JSP Fragment
    ·Hur man sätter Tabs till strängar i Java
    ·Hur nära en kommentar i Java
    ·Vad är integrerade typer i Java
    ·Hur man gör ett formulär i JSP
    ·Hur man genomför en lista i Android XML
    ·Felsöka en Java-applet
    ·Hur man använder strängar för att räkna antalet fö…
    ·Vad är Java SDK
    Utvalda artiklarna
    ·Så här ställer du in DataGridView CurrentRow
    ·Hur konvertera tecken till ASCII i PHP
    ·Skriva ut Into en Etiketter Bildtext i Visual Basic 6.0…
    ·Hur till Öka DIV Höjd Enligt Övrigt DIV Innehåll
    ·Så här importerar VMWare Disk Into VirtualBox
    ·Hur köra applet i Java
    ·Hur man driver en process på en Remote PC Med Wmi VB.N…
    ·VBA String Metoder
    ·Dolda Struts i JavaScript
    ·Hur man lägger in ett Java-program till en webbsida
    Copyright © Dator Kunskap http://www.dator.xyz