· 7 years ago · Mar 09, 2018, 03:26 PM
1public static String cifraDES(String chave, String dado) throws Exception {
2 DESKeySpec keySpec = new DESKeySpec(hexStringToByteArray(chave));
3 SecretKeyFactory kf = SecretKeyFactory.getInstance("DES");
4 SecretKey passwordKey = kf.generateSecret(keySpec);
5 Cipher c = Cipher.getInstance("DES");
6 c = Cipher.getInstance("DES/ECB/NoPadding");
7 c.init(Cipher.ENCRYPT_MODE, passwordKey);
8 return bytesToHex(c.doFinal(hexStringToByteArray(dado)));
9}
10
11dado = "53495A45303030386E6F7661313031305858585858585858"
12 chave = "3455189635541968"
13 des = OpenSSL::Cipher.new('des-ecb').encrypt
14 des.key = chave
15 s = des.update(dado) + des.final
16
17 Base64.encode64(s).gsub(/n/, "")
18
19'key' be must 8 bytes