boa noite gostaria de saber se alguem tem uma funcao pra essa critografia
crypt = fx0FGOB5mir6IMUVg1B
decrypt = ADRIANO DUARTE
me passa um executavel com isso gostaria q alguem me ajudase a fazer essa criptografia e descriptografar isso…
boa noite gostaria de saber se alguem tem uma funcao pra essa critografia
crypt = fx0FGOB5mir6IMUVg1B
decrypt = ADRIANO DUARTE
me passa um executavel com isso gostaria q alguem me ajudase a fazer essa criptografia e descriptografar isso…
E qual a sua dúvida?
cara vo te passar o exe…que tenho
só naum vo dispononilizar a FONTE?
ou é trabalhinho de facul pra passar de ano hein !!!
blz!!!
Segue abaixo o cod para fazer o que vc quer, mas saiba que o melhor é sempre adquirir conhecimentos.
Faça esse cod e tente entender como funciona.
package com.teste;
import javax.crypto.*;
import javax.crypto.spec.*;
import java.security.*;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.security.spec.KeySpec;
import sun.misc.BASE64Encoder;
import sun.misc.BASE64Decoder;
public class TesteCripto {
private static SecretKey skey;
private static KeySpec ks;
private static PBEParameterSpec ps;
private static final String algorithm = "PBEWithMD5AndDES";
private static BASE64Encoder enc = new BASE64Encoder();
private static BASE64Decoder dec = new BASE64Decoder();
static {
try {
SecretKeyFactory skf = SecretKeyFactory.getInstance(algorithm);
ps = new PBEParameterSpec (new byte[]{3,1,4,1,5,9,2,6}, 20);
ks = new PBEKeySpec ("EAlGeEen3/m8/YkO".toCharArray()); // esta é a chave que você quer manter secreta.
// Obviamente quando você for implantar na sua empresa, use alguma outra coisa - por exemplo,
// "05Bc5hswRWpwp1sew+MSoHcj28rQ0MK8". Nao use caracteres especiais (como ç) para nao dar problemas.
skey = skf.generateSecret (ks);
} catch (java.security.NoSuchAlgorithmException ex) {
ex.printStackTrace();
} catch (java.security.spec.InvalidKeySpecException ex) {
ex.printStackTrace();
}
}
public static final String encrypt(final String text)
throws
BadPaddingException,
NoSuchPaddingException,
IllegalBlockSizeException,
InvalidKeyException,
NoSuchAlgorithmException,
InvalidAlgorithmParameterException {
final Cipher cipher = Cipher.getInstance(algorithm);
cipher.init(Cipher.ENCRYPT_MODE, skey, ps);
return enc.encode (cipher.doFinal(text.getBytes()));
}
public static final String decrypt(final String text)
throws
BadPaddingException,
NoSuchPaddingException,
IllegalBlockSizeException,
InvalidKeyException,
NoSuchAlgorithmException,
InvalidAlgorithmParameterException {
final Cipher cipher = Cipher.getInstance(algorithm);
cipher.init(Cipher.DECRYPT_MODE, skey, ps);
String ret = null;
try {
ret = new String(cipher.doFinal(dec.decodeBuffer (text)));
} catch (Exception ex) {
}
return ret;
}
public static void main(String[] args) throws Exception {
String password = "TESTESENHA"; // esta é a tal senha do banco de dados que você quer criptografar
String encoded = TesteCripto.encrypt (password);
System.out.println (encoded); // imprime "4fWCjTdEhMPEluqE2n8ci4FiqWeb+DXc"
System.out.println (TesteCripto.decrypt (encoded).equals (password)); // imprime "true"
// Vamos alterar um caracter, só para ver o que ocorre
char[] enc = encoded.toCharArray();
enc[2] = (char) (enc[2] + 1);
encoded = new String (enc);
System.out.println (encoded); // imprime "4fXCjTdEhMPEluqE2n8ci4FiqWeb+DXc"
System.out.println (password.equals (TesteCripto.decrypt (encoded))); // imprime "false"
}
}
//POST ORIGINAL DE THINGOL
Flw
valeu vou testar…
valeu pela ajuda mais deu uma diferencia quando teste…
com o prg q eu recibi o resultado para TESTESENHA foi Kxl0REWi2KDR5A .
e no seu codigo foi J+ZNVGWpuo/5+xhrXb4u0g==
Cara para obter esse resultado ai vc deve fazer algumas alterações vc deve mexer no algoritmo, ou elaborar uma maneira de manipular os bytes com o resultado que vc quer.
Só lembrando para codificar está sendo usado a classe BASE64Encoder. Vc pode procurar alguma outra classe que possa te dar o resultado que vc espera.