2015-05-30 22 views
-1

我正在使用ldap,在java上工作,那裏的密碼值是base64格式,如何將我的普通文本密碼sarath_dev轉換爲Based for Ldap?如何使用Java將密碼轉換爲Based for Ldap?

+3

你能展示一些你已經嘗試過的代碼嗎? – Nobita

+0

你是什麼意思的代碼?我只想在ldap瀏覽器中輸入base64格式的密碼....多數民衆贊成在所有! –

+0

你想在base64中編碼你的密碼? –

回答

0

對於那些不熟悉base64 encoding算法的算法,這裏是基本的介紹。 Base64編碼(使用64位可打印字符來替換原始字符串中的每個字符)算法序列中的每個字符,以便稍後可以對其進行解碼。 Base64編碼通過將數據編碼爲ASCII格式來防止誤用數據。雖然有更高級的加密算法,如RSA-SHAMD5,您應該使用那些在生產中,但base64是真正簡單和易於使用的簡單編碼需求。

編碼&解碼字符串成Base64的在Java

以下是在base64 encoding算法字符串的編碼和解碼的一個簡單的例子。我們首先將字符串轉換爲字節數組,然後傳遞給Base64.encodeBase64(byte[]),根據base64 encoding算法對字節數組 進行編碼,並返回並編碼字節數組,並將其轉換爲字符串。在稍後的一半,我們將通過調用Base64.decodeBase64(byte[])方法來解碼字符串。

import org.apache.commons.codec.binary.Base64; 
public class Base64EncodingExample{ 

    public static void main(String args[]) throws IOException { 
     String orig = "original String before base64 encoding in Java"; 

     //encoding byte array into base 64 
     byte[] encoded = Base64.encodeBase64(orig.getBytes());  

     System.out.println("Original String: " + orig); 
     System.out.println("Base64 Encoded String : " + new String(encoded)); 

     //decoding byte array into base64 
     byte[] decoded = Base64.decodeBase64(encoded);  
     System.out.println("Base 64 Decoded String : " + new String(decoded)); 

    } 
} 


Output: 
Original String: original String before base64 encoding in Java 
Base64 Encoded String : b3JpZ2luYWwgU3RyaW5nIGJlZm9yZSBiYXNlNjQgZW5jb2RpbmcgaW4gSmF2YQ== 
Base 64 Decoded String : original String before base64 encoding in Java