Crypteur-décrypteur aes

Description

Il s'agit d'un crypteur / décrypteur de texte ou fichier suivant l’algorithme AES.
PS: Ne faites pas attention à l'IHM elle en est à ces tout débuts.

Source / Exemple :


import java.security.*;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
/*

  • To change this template, choose Tools | Templates
  • and open the template in the editor.
  • /
/*
  • AESTool.java
*
  • Created on 25 déc. 2011, 12:10:24
  • /
/** *
  • @author Mickael
  • /
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()); eValue = Base64.encodeToString(encValue, true); } return eValue; } public static String decrypt(String value, String salt) throws Exception { Key key = generateKey(); Cipher c = Cipher.getInstance(ALGORITHM); c.init(Cipher.DECRYPT_MODE, key); String dValue = null; String valueToDecrypt = value; for (int i = 0; i < ITERATIONS; i++) { byte[] decordedValue = Base64.decodeFast(valueToDecrypt); byte[] decValue = c.doFinal(decordedValue); dValue = new String(decValue).substring(salt.length()); valueToDecrypt = dValue; } return dValue; } private static Key generateKey() throws Exception { Key key = new SecretKeySpec(keyValue, ALGORITHM); return key; } }

Conclusion :


Projet qui en est à ses début et je compte sur vous pour m'aider à le mener à son terme ;)

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.