md5 produces a hash of a text and it always produces a 32 byte length string. Always!
so its up to you. if your texts are shorter that 32 bytes then the cheapest way (in terms of size) is to use pure text.
as for the base64_encode it will always double (not just 30% increase) any text it will find because it will produce two characters for each byte of the text
but nakkaya do you really know what md5 does? I just answered a similar question, so if you are not 100% sure go ahead and read it 🙂
http://www.phpbuilder.com/board/showthread.php?s=&threadid=10226188