Crypteur-décrypteur aes-----------------------
Url : http://codes-sources.commentcamarche.net/source/53914-crypteur-decrypteur-aesAuteur : cs_dragooon74Date : 06/08/2013
Licence :
=========
Ce document intitulé « Crypteur-décrypteur aes » issu de CommentCaMarche
(codes-sources.commentcamarche.net) est mis à disposition sous les termes de
la licence Creative Commons. Vous pouvez copier, modifier des copies de cette
source, dans les conditions fixées par la licence, tant que cette note
apparaît clairement.
Description :
=============
Il s'agit d'un crypteur / décrypteur de texte ou fichier suivant l’
algorithme AES.
<br />PS: Ne faites pas attention à l'IHM elle en est &a
grave; ces tout débuts.
<br /><a name='source-exemple'></a><h2> Source /
Exemple : </h2>
<br /><pre class='code' data-mode='basic'>
import java.secur
ity.*;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
/*
<ul> <li> To change this template, choose Tools | Templates
</li> <li> and
open the template in the editor.
</li> <li>/</li></ul>
/*
<ul> <li> AESTo
ol.java</li></ul>
*
<ul> <li> Created on 25 déc. 2011, 12:10:24
</li> <li>
/</li></ul>
/**
*
<ul> <li> @author Mickael
</li> <li>/</li></ul>
public
class AESTool {
private static final String ALGORITHM = "AES";
private static final int ITERATIONS = 1;
private static final byte[]
keyValue =
new byte[] {'f','A','|','C','o','N','=','6','-','a','(','e'
,'@','*','A','"'};
public static String encrypt(String value, String
salt) throws Exception {
Key key = generateKey();
Cipher c =
Cipher.getInstance(ALGORITHM);
c.init(Cipher.ENCRYPT_MODE, key);
String valueToEnc = null;
String eValue = value;
for
(int i = 0; i < ITERATIONS; i++) {
valueToEnc = salt + eValue;
byte[] encValue = c.doFinal(valueToEnc.getBytes());
eVa
lue = Base64.encodeToString(encValue, true);
}
return eValue;
}
public static String decrypt(String value, String salt) throws Ex
ception {
Key key = generateKey();
Cipher c = Cipher.getInstan
ce(ALGORITHM);
c.init(Cipher.DECRYPT_MODE, key);
String dV
alue = null;
String valueToDecrypt = value;
for (int i = 0; i
< ITERATIONS; i++) {
byte[] decordedValue = Base64.decodeFast(va
lueToDecrypt);
byte[] decValue = c.doFinal(decordedValue);
dValue = new String(decValue).substring(salt.length());
valueT
oDecrypt = dValue;
}
return dValue;
}
private stat
ic Key generateKey() throws Exception {
Key key = new SecretKeySpec(key
Value, ALGORITHM);
return key;
}
}
</pre>
<br /><a name='conclu
sion'></a><h2> Conclusion : </h2>
<br />Projet qui en est à ses d&eacut
e;but et je compte sur vous pour m'aider à le mener à son terme ;)