Some contracts/messages (if not all) contain non-ascii characters to present a type of formatting such as "\n" and other hidden characters of that nature. The sign message window should detect base64 input and if it looks like a base64 string it should pop-up a text box displaying the decoded message.
With out base64 incorporation, any document containing hidden characters that are presented through a stream will not match the receipts signature with the senders signature. I think the decoded message should be displayed as well since users deserve to know what they are signing with out having to trust third-party applications to decode the base64 for them.