Base64 Encoding and Decoding using Java, Python

In this post let’s see how can Base64 Encoding and Decoding works. This is widely used in API Testing for sending Basic Auth in the request header.

Java example:

import org.apache.commons.codec.binary.Base64;

public class Base64EncodeDecode {
	
	/**
	 * Base64 Encoding
	 * @param message
	 * @return
	 */
	public static String Base64Encode(String message) {
		
		byte[] bytesEncoded = Base64.encodeBase64(message.getBytes());
		return new String(bytesEncoded);
	}
	
	/**
	 * Base64 Decoding.
	 * @param encodedMessage
	 * @return
	 */
	public static String Base64Decode(String encodedMessage) {
		
		byte[] valueDecoded = Base64.decodeBase64(encodedMessage);
		return new String(valueDecoded);
	}
	
	
	public static void main(String[] args) {
		
		String clientId = "Buzz";
		String secret = "form.com";
		String message = clientId + ":" + secret;
		
		String encode = Base64Encode(message);
		System.out.println("Actual Message: " + message);
		System.out.println("Encode Message: " + encode);
		System.out.println("Decoded Message: "+Base64Decode(encode));
	}
}

Python:

import base64

message = "Buzz:form.com"
encoded_message = base64.b64encode(message)
decode_message = base64.b64decode(encoded_message)

print("Actual Message: " + message)
print("Encode Message: " + encoded_message)
print("Decoded Message: " + decode_message)

Results:

 Actual Message: Buzz:form.com
 Encode Message: QnV6ejpmb3JtLmNvbQ==
 Decoded Message: Buzz:form.com 

Leave a Reply

Your email address will not be published. Required fields are marked *