java.security.NoSuchAlgorithmException: Algorithm DES not available
´úÂ룺import java.security.*;
import javax.crypto.*;
/**
* @author ANDY
*
* ¸ü¸ÄËùÉú³ÉÀàÐÍ×¢Ê͵ÄÄ£°åΪ
* ´°¿Ú > Ê×Ñ¡Ïî > Java > ´úÂëÉú³É > ´úÂëºÍ×¢ÊÍ
*/
/*
°²È«³ÌÐò DESede/DES²âÊÔ
*/
public class DESTest {
//
public static void main(String[] args){
DESTest my=new DESTest();
my.run();
}
//
public void run() {
//Ìí¼Óа²È«Ëã·¨,Èç¹ûÓÃJCE¾ÍÒª°ÑËüÌí¼Ó½øÈ¥
Security.addProvider(new com.sun.crypto.provider.SunJCE());
String Algorithm="AES"; //¶¨Òå ¼ÓÃÜËã·¨,¿ÉÓà DES,DESede,Blowfish
String myinfo="Òª¼ÓÃܵÄÐÅÏ¢";
try {
//Éú³ÉÃÜÔ¿
KeyGenerator keygen = KeyGenerator.getInstance(Algorithm);
SecretKey deskey = keygen.generateKey();
//¼ÓÃÜ
System.out.println("¼ÓÃÜǰµÄ¶þ½ø´®:"+byte2hex(myinfo.getBytes()));
System.out.println("¼ÓÃÜǰµÄÐÅÏ¢:"+myinfo);
Cipher c1 = Cipher.getInstance(Algorithm);
c1.init(Cipher.ENCRYPT_MODE,deskey);
byte[] cipherByte=c1.doFinal(myinfo.getBytes());
System.out.println("¼ÓÃܺóµÄ¶þ½ø´®:"+byte2hex(cipherByte));
//½âÃÜ
c1 = Cipher.getInstance(Algorithm);
c1.init(Cipher.DECRYPT_MODE,deskey);
byte[] clearByte=c1.doFinal(cipherByte);
System.out.println("½âÃܺóµÄ¶þ½ø´®:"+byte2hex(clearByte));
System.out.println("½âÃܺóµÄÐÅÏ¢:"+(new String(clearByte)));
} catch (java.security.NoSuchAlgorithmException e1) {
e1.printStackTrace();
} catch (javax.crypto.NoSuchPaddingException e2) {
e2.printStackTrace();
} catch (java.lang.Exception e3) {
e3.printStackTrace();
}
}
// ¶þÐÐÖÆ×ª×Ö·û´®
public String byte2hex(byte[] b) {
String hs="";
String stmp="";
for (int n=0;n<b.length;n++) {
stmp=(java.lang.Integer.toHexString(b[n] & 0XFF));
if (stmp.length()==1) {
hs=hs+"0"+stmp;
} else {
hs=hs+stmp;
}
if (n<b.length-1) {
hs=hs+":";
}
}
return hs.toUpperCase();
}
}
´íÎó£º
java.security.NoSuchAlgorithmException: Algorithm AES not available
at javax.crypto.SunJCE_b.a(DashoA6275)
at javax.crypto.KeyGenerator.getInstance(DashoA6275)
at com.DESTest.run(DESTest.java:37)
at com.DESTest.main(DESTest.java:26)
»·¾³:
j2sdk1.4.2_05
eclipse °Ñ¡°DES¡±¸ÄΪ¡°AES¡±£¬¡°RSA¡±£¬¡°DESede¡±»ò¡°Blowfish¡±£¬Ò²ÊÇÈç´Ë¡£
Ò³:
[1]