Gremlin Server currently uses a mix of base 64 encoded bytes and byte arrays for SASL negotiation. This can cause problems for certain serializers (like toString serialization with gryo) as the byte array won't be respected. In an effort to easily support virtually any serializer a switch to using just base 64 string is probably best.
This can be done in such a way as to be backward compatible. The base64 SASL value will be returned in the response message status attributes map in a key called "sasl". The original byte array will continue to be returned in the response message result. Eventually, we could phase out the byte array in the result - perhaps with 3.3.0.