Java editor de texto o IDE Java
Ver Más instrucciones
1
crear la clase FileEncrypter .
FileEncrypter clase pública {
public static void main ( String [] args ) throws Exception {
<< insertar código aquí >> ,
}
}
La clase requiere las siguientes importaciones:
import java . io.File
GO java.io.FileInputStream importación
GO java.io.FileOutputStream importación
GO importación javax . crypto.Cipher
GO javax.crypto.KeyGenerator importación
GO importación javax.crypto.SecretKey
GO
< ; . br /> Hay una serie de extensiones y mejoras que usted debería ser capaz de añadir a esta clase por su cuenta, sino que proporcionará una funcionalidad básica de cifrado para que usted construya las características tales como una interfaz de usuario en la parte superior
Página 2
declarar e inicializar las variables que usted necesita. Como mínimo, se necesita un cifrado , un KeyGenerator y SecretKey . Usted también necesitará una matriz de bytes cada uno para mantener la cifrados y sin cifrar datos.
byte [ ] plainData
GO byte [ ] encryptedData
GO KeyGenerator keygen = KeyGenerator.getInstance ( \\ " DES \\ ")
GO clave SecretKey = keygen.generateKey ()
GO Cipher cipher = Cipher.getInstance ( \\ " DES /ECB/PKCS5Padding \\ ")
GO cipher.init ( Cipher.ENCRYPT_MODE , key)
GO
Esta función usará encriptación DES , pero el Java Cryptography Extension también incluye una variedad de otros esquemas . Usted también necesitará inicializar un archivo de entrada y salida y rellenar la matriz plainData partir de los datos del archivo de entrada .
Archivo f = new archivo ( \\ " input.txt \\ ")
GO FileInputStream en = new FileInputStream ( f ) < br /> GO
plainData = new byte [ (int ) f.length ()]
GO in.read ( plainData ) ;
3
realizar el cifrado . Esto es en realidad la tarea más fácil para usted para llevar a cabo y se puede lograr en una sola línea.
encryptedData = cipher.doFinal ( plainData ) ;
4
Escribe los datos cifrados en un nuevo archivo .
FileOutputStream target = nueva FileOutputStream ( nuevo archivo ( \\ " encrypted.txt \\ "))
GO target.write ( encryptedData )
GO target.close ();