I am familiar with how Git creates SHA1 hashes for files (blobs), but not how they are created for tag objects. I assume they are, if I create an annotated tag, but what is
It's pretty much the same, although the smallish header prepended to the commit object is different. You can use git cat-file to see the actual format.