My question arises from the assumption that it's best practice not to handle passwords as String
in a JVM environment. Android actually handles text inside EditText
s as array of char
and provides a getChars
method to get such array.
Given that I can handle a password this way, what happens when I have to serialize it to put it in a request body? Should I receive it on my server endpoint as char[]
? Even with this option, client-side it will be eventually serialized to something like ['p','w','d']
which is again, a String
.
To try to figure this out, I observed outbound traffic from a device to Amazon's authentication endpoints and there's actually my password in plain sight in a request body; so my question may even turn into: how big of a concern is this whole passwords vs Strings matter (at least in Android)?
Edit: an explanation of why I have this concern.