Digg StumbleUpon LinkedIn YouTube Flickr Facebook Twitter RSS Reset

Crypter un fichier à l’aide de l’algorithme ‘SHA digest’

 int,string,static, java
{filelink=19}

import java.io.*;
import java.security.*;
import javax.crypto.*;
import javax.crypto.spec.*;
 
public class ExCryptageDigest
{
 /*
  *  Lire un fichier
  *  Crypter le fichier avec
  *  l'algorithme de chiffrage
  */
  public static void main(String[] args)
   throws IOException, GeneralSecurityException {
 
    String fichier = "c:/test.txt";  // Le fichier à crypter
    String password = "sakoba2008";  // Le mot de passe(8 caractères minimum)
 
    if (password.length() < 8 )
    {
      System.err.println("Mot de passe trop court");
    }
 
    FileInputStream fin = new FileInputStream(fichier);
    FileOutputStream fout = new FileOutputStream(fichier +".des");
    FileOutputStream fichier_digest = new FileOutputStream(fichier + ".des.digest");
 
    // Créer la clé à partir de mot de passe.
    byte[] desKeyData = password.getBytes();
    DESKeySpec desKeySpec = new DESKeySpec(desKeyData);
    SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES");
    SecretKey desKey = keyFactory.generateSecret(desKeySpec);
 
    // Chiffrer les données.
    Cipher des = Cipher.getInstance("DES/ECB/PKCS5Padding");
    des.init(Cipher.ENCRYPT_MODE, desKey);
    CipherInputStream cin = new CipherInputStream(fin, des);
 
    // Appliquer l'algorithme 'SHA digest'.
    MessageDigest sha = MessageDigest.getInstance("SHA");
    DigestInputStream din = new DigestInputStream(cin, sha);
 
    byte[] input = new byte[64];
    while (true) {
      int bytesRead = din.read(input);
      if (bytesRead == -1) break;
      fout.write(input, 0, bytesRead);
    }
 
    fichier_digest.write(sha.digest());
    fichier_digest.close();
    din.close();
    fout.flush();
    fout.close();
  }
}

A Voir sur le même Sujet:

  • comment crypter dossier java
  • java comment créer un crypter
  • encoder mot de passe dans un fichier texte c++
  • comment lire un chiffre négatif dans un fichier en java
  • crypter chaine java
  • c++ crypter un fichier
  • java crypter un fichier
  • java crypter decrypter une image
  • crypter un fichier image java
  • java lire chaine cryptée à partir fichier