X509 certificates – Are there any naming conventions?

As per the title, what are the naming conventions when buying certificates ?

When buying a cert for TLS / https from a particular Server, naturally I will default to the Server name, for example, if the server is called MOONSERVER under Subject of the x509 Certificate I would set it as MOONSERVER.

Additionally, I need to use another cert for message signing. What shall I call this? What are the rules for valid names? e.g. are hyphens, underscores, etc Ok ? Are names case sensitive?