3 DES暗号化メッセージ(DESede/ECB/PCCS 5 Paddingコンビネーションモードで補位)

1543 ワード

RSA MD 5 3 Des Base 64を統合暗号化するインタフェース要求が発生しました.
ニマ秘密保持の要求は高いですね....
3 DESは対称暗号化方式で、同じ鍵で暗号化と復号化を行う
何を準備する必要がありますか?
1.通信双方が知っている鍵(24バイト)が必要です
シングルdesキーは8バイト、トリプルdesキーは3*8=24バイトです.
2.明文...
	public void test_3des() throws Exception {
		byte[] keybyte = "abcdefghizklmnopqrstuvwx".getBytes("utf-8");        //  ,24          ,  utf-8
		SecretKey deskey = new SecretKeySpec(keybyte, "DESede");                //  javax  SecreKey,             
		byte[] input ="             ".getBytes("UTF-8");	         //            utf-8
		Cipher c1 = Cipher.getInstance("DESede/ECB/PKCS5Padding");                //emmm....    Cipher  
		c1.init(Cipher.ENCRYPT_MODE, deskey);                                       //         
		byte[] str1 = c1.doFinal(input);                                            //  ,      (  )
		// ------------------------------------------------------                //     
		SecretKey deskey2 = new SecretKeySpec(keybyte, "DESede");                    
		Cipher c2 = Cipher.getInstance("DESede");
		c2.init(Cipher.DECRYPT_MODE, deskey2);                                        //      
		byte[] str2 = c2.doFinal(str1);                                                //        
		String string = new String(str2, "utf-8");                        
		System.out.println(bytes2Hex(str2) + "   16     " + string);                                                    //    
	}

具体的にはこれだけ、簡単な使い方