Criptografar Arquivo

4 respostas
T

Amigos alguém pode me explicar como que eu faço para criptografar um arquivo ?

4 Respostas

M

De que forma? Simétrica ou assimétrica?

T

Qual a diferenças entre as duas amigo ?

M

Se você não sabe deve querer criptografia simétrica. Mas basicamente a diferença entre ambas é:

Simétrica: Eu uso a mesma chave para criptografar/descriptografar
Assimétrica: Eu tenho duas chaves: uma só eu conheço(privada) e outra todo mundo pode conhecer(pública). Eu mando a minha chave pública para as outras pessoas criptografarem e só é possível descriptografar com a chave privada. Também posso criptografar com a chave privada, só que nesse caso para abrir é necessário a chave pública, mas isso é usado para outra coisa.

Segue um exemplo de criptografia simétrica, utilizando o algoritmo Blowfish:

//geração da chave
		KeyGenerator keygen = KeyGenerator.getInstance("Blowfish");        
		SecretKey skey = keygen.generateKey();        
		byte[] encodedKey = skey.getEncoded();
		
		//encriptação
		SecretKeySpec skeySpec = new SecretKeySpec(encodedKey, "Blowfish");        
		Cipher cipher = Cipher.getInstance("Blowfish");        
		cipher.init(Cipher.ENCRYPT_MODE, skeySpec);        
		byte[] encrypted = cipher.doFinal("Teste para ver se funciona!".getBytes());
		System.out.println("cifrado (string): " + new String(encrypted));
		
		//decriptação
		Cipher cipherDec = Cipher.getInstance("Blowfish");
		cipherDec.init(Cipher.DECRYPT_MODE, skeySpec);
		byte[] decrypted = cipherDec.doFinal(encrypted);
		System.out.println("decifrado " + new String(decrypted));
T

marcio_gs muito bom valeu pela ajuda

Criado 3 de fevereiro de 2011
Ultima resposta 3 de fev. de 2011
Respostas 4
Participantes 2