Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> Java Programming >> Content
Hoe kan ik een groot bestand in Java versleutelen
Als u kleine bestanden op Java versleutelen , is het voldoende om alle gegevens in het geheugen geladen , versleutelen en schrijf het weer uit . Voor grotere bestanden die de omvang van het computergeheugen overschrijden , zal deze aanpak veel te traag . Je zal in plaats daarvan moet rechtstreeks gegevens doorgeven in een stroom van het bestand naar de nieuw gecodeerde bestand . Wat je nodig hebt
Netbeans
Toon Meer Aanwijzingen
1

Maak een leeg tekstbestand met de naam " Encrypter.java " en plak de volgende initiële code erin : < br

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
{

openbare statische nietige versleutelen
( SecretKey sleutel , Inputlijn in , OutputStream out ) { }

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

Dit heeft twee methoden: een belangrijke methode die twee argumenten zal nemen - het bronbestand en doelbestand - en een encrypt methode die twee stromen en een encryptiesleutel neemt
2

Plak volgende binnen de haakjes van de belangrijkste methode :

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

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

Dit creëert een geheime sleutel voor de data Encryption Standard ( DES ) methode van encryptie en meteen roept de encrypt methode , samen met de sleutel en een stroom voor de bron en de bestemming bestanden
3

Plak het volgende in het versleutelen methode : .

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

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

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

terwijl ( ( tel = in.read ( buffer ) ) > = 0 ) { out.write ( buffer , 0 , count ) ; } out . close ( ) ;} catch ( IOException e ) { } catch ( InvalidAlgorithmParameterException e ) { } catch ( InvalidKeyException e ) { } catch ( NoSuchAlgorithmException e ) { } catch ( NoSuchPaddingException e ) { }

Dit stelt een initialisatie vector te gebruiken voor de DES cipher . Gegevens worden gelezen van het InputStream , gecodeerd en geschreven uit 1024 bytes in een tijd , waardoor zelfs multi - gigabyte bestanden op efficiënte wijze worden versleuteld, zonder overbelasting van het geheugen .
4

Sla uw werk . Als u gebruikt een Java Integrated Development Environment ( IDE ) , kunt u samenstellen door te klikken op de " Build "-knop . Anders moet u het volgende commando in je command prompt om het te compileren :

javac Encrypter.java
5


Om een ​​bestand , het type coderen de volgende opdracht in een opdrachtregel prompt : .

java versleutelen SourceFile destinationFile


Vervang " bronbestand " en " destinationFile " met de bestandsnamen die nodig

Previous: Next:
  Java Programming
·Hoe te compileren en uitvoeren…
·Zon /Java & Error 1722 
·Wat is Multihomed Host in Java…
·Hoe maak je een Beep verdienen…
·Hoe de Java Error Message Logs…
·Hoe te Infinity gebruiken in J…
·Hoe een String kaart om een li…
·Ik kan niet vinden . APK voor …
·Hoe maak je een NetBeans File …
  Related Articles
Hoe maak je een Combo Box Maak in Visual…
Hoe maak je een Check Box Maak in Visual…
Hoe maak je een tekstvak maken in Visual…
Hoe maak je een optie Box in Visual Basi…
Hoe maak je een schijf keuzelijst in Vis…
Hoe kan ik een keuzelijst maken in Visua…
Hoe kan ik een Picture Box Maak in Visua…
Hoe een bestand keuzelijst Maak in Visua…
Hoe kan ik een afbeelding Box Maak in Vi…
  Programmering Articles
·Hoe te gebruiken TreeView te navigeren n…
·Hoe je lokale variabelen gebruiken in Py…
·Hoe te Curve Kruisingen Zoek in Matlab 
·Hoe Set Up Bytes om numerieke gegevens g…
·Hoe te Sessie variabelen wissen 
·Hoe maak je een CAB Maak in Windows Mobi…
·Hoe te Python converteren naar EXE 
·Hoe maak je een Python Decimal Verwijder…
·Hoe te Output krijgen van een Shell-opdr…
Copyright © Computer Kennis http://www.nldit.com