I'm trying to test a Soap Security header in PHP with values supplied by the client.
They are supplying a value like...
wTAmCL9tmg6KNpeAQOYubw==
...and saying it's a Base64 encoded value.
However, when I run it through PHP's Base64 decode function...
base64_decode("wTAmCL9tmg6KNpeAQOYubw==");
it translates it as: �0&�m6@�.o
If I decode it in Java...
import java.util.Base64; import java.util.Arrays; /** * hello */ public class hello { public static void main(String[] args) { Base64.Decoder decoder = Base64.getDecoder(); Base64.Encoder encoder = Base64.getEncoder(); String stringEncoded = "wTAmCL9tmg6KNpeAQOYubw=="; System.out.println("This is a decoded value: " + decoder.decode(stringEncoded)); System.out.println("This is a re-coded value: " + encoder.encode(decoder.decode(stringEncoded))); } } I get a decoded string like this: [B@7229724f
But then if I try to re-encode that string, I get this: [B@4c873330
What am I missing here?