Programação  
 
Conhecimento computador >> Programação >> Programação em Java >> 
Como criptografar um arquivo grande em Java
Se você precisar criptografar arquivos pequenos em Java , é o suficiente para carregar todos os dados na memória, criptografá-lo e escrevê-lo de volta para fora . No entanto, para arquivos maiores que podem exceder o tamanho da memória do computador , esta abordagem será muito lento. Em vez disso você vai precisar passar dados diretamente em um córrego do arquivo para o arquivo recém- criptografada. Coisas que você precisa
Netbeans
Mostrar Mais instruções
1

Crie um arquivo de texto em branco com o nome " Encrypter.java " e cole o seguinte código inicial para ele:

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

public class Encrypter {

criptografar public static void ( chave secreta chave, InputStream in , OutputStream out) {}

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

Este tem dois métodos: um método main que vai levar dois argumentos - o arquivo de arquivo de origem e destino - e um método de criptografar que leva dois córregos e uma chave de criptografia
2

cole o seguinte dentro dos colchetes do método principal :

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

try { key = chave secreta KeyGenerator.getInstance ( " DES " ) GenerateKey (); . Encrypter.encrypt (key, new FileInputStream ( inFile ) , new FileOutputStream ( outFile ) );} catch ( FileNotFoundException e) {} catch ( NoSuchAlgorithmException e) {}

Isso cria uma chave secreta para o Data Encryption Standard (DES) método de criptografia e imediatamente chama o método de criptografar, juntamente com a chave e um fluxo para os arquivos de origem e de destino
3

cole o seguinte para o método de criptografar : .

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 , chave, paramSpec );

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

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

Isso configura um vetor de inicialização para usar para a cifra DES. Os dados são lidos a partir do InputStream , cifrado e escrito 1024 bytes de cada vez, permitindo que até mesmo arquivos de multi-gigabyte para ser eficientemente criptografada sem sobrecarregar a memória.
4

Salve seu trabalho. Se você usou um Java Ambiente de Desenvolvimento Integrado (IDE), você pode compilar , clicando no botão "Build" . Caso contrário, será necessário executar o seguinte comando no prompt de comando para compilá-lo :

javac Encrypter.java
5

Para criptografar um arquivo, digite o seguinte comando em um comando prompt:

java Criptografar sourceFile destinationfile

Substituir " sourceFile " e " destinationfile " com os nomes dos arquivos necessários

.

Anterior :

Próximo : No
  Os artigos relacionados
·Como converter Java para Python 
·Como forçar o Java para o Round Números 
·Como converter números para Inglês em Java 
·O que a matriz de dimensão em falta média em Programa…
·Como compilar um arquivo executável JAR 
·O que é Java Usado para em um computador 
·O que é o inicializador estático em Java 
·Como usar teclas de direção em Java 
·Como Analisar SAP em Logs Java 
·Como fazer um jogo para App grátis 
  Artigos em destaque
·Como Fazer um Botão visível no Visual C 
·O que é Declaração de Cobertura 
·Como criar uma página de logon no ASP 
·Qual é o significado de depuração 
·O que é o CLS SQL 
·Sem conexão proxy no NetBeans 
·Como criar uma função no Microsoft Visual C + + 
·Como compilar C Projetos 
·Como converter letras em números em uma tabela de Cord…
·As coisas para colocar em um Applet 
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados