* allow "bytes" type to be null (len == -1)
* allow "key" value in Message to be null (keyLength == -1)