return string instead of char* for signature()