diff --git a/dumper/dumper.c b/dumper/dumper.c
index 024f718..6128856 100644
--- a/dumper/dumper.c
+++ b/dumper/dumper.c
@@ -39,43 +39,52 @@
 #define CBOR_CONTEXT_PARAM
 #endif
 
-FOO AlgorithmMap[36] = {
-	{ "ES512", CN_CBOR_INT, -9, NULL, 0, 0 },
-	{ "ES384", CN_CBOR_INT, -8, NULL, 0, 0 },
-	{"ES256", CN_CBOR_INT, -7, NULL, 0, 0 },
+FOO AlgorithmMap[37] = {
+	{ "ECHD-SS+A256KW", CN_CBOR_INT, -34, NULL, 0, 0 },
+	{ "ECHD-SS+A192KW", CN_CBOR_INT, -33, NULL, 0, 0 },
+	{ "ECHD-SS+A128KW", CN_CBOR_INT, -32, NULL, 0, 0 },
+	{ "ECHD-ES+A256KW", CN_CBOR_INT, -31, NULL, 0, 0 },
+	{ "ECHD-ES+A192KW", CN_CBOR_INT, -30, NULL, 0, 0 },
+	{ "ECHD-ES+A128KW", CN_CBOR_INT, -29, NULL, 0, 0 },
+	{ "ECDH-SS + HKDF-512", CN_CBOR_INT, -28, NULL, 0, 0 },
+	{ "ECDH-SS + HKDF-256", CN_CBOR_INT, -27, NULL, 0, 0 },
+	{ "ECDH-ES + HKDF-512", CN_CBOR_INT, -26, NULL, 0, 0 },
+	{ "ECDH-ES + HKDF-256", CN_CBOR_INT, -25, NULL, 0, 0 },
+
+	{ "ECDSA 512", CN_CBOR_INT, -9, NULL, 0, 0 },
+	{ "ECDSA 384", CN_CBOR_INT, -8, NULL, 0, 0 },
+	{"ECDSA 256", CN_CBOR_INT, -7, NULL, 0, 0 },
+
 	{"direct", CN_CBOR_INT, -6, NULL, 0, 0 },
+
 	{"A256KW", CN_CBOR_INT, -5, NULL, 0, 0 },
 	{"A192KW", CN_CBOR_INT, -4, NULL, 0, 0 },
 	{"A128KW", CN_CBOR_INT, -3, NULL, 0, 0 },
+
 	{"AES-GCM 128", CN_CBOR_UINT, 1, NULL, 0, 0 },
 	{"AES-GCM 192", CN_CBOR_UINT, 2, NULL, 0, 0 },
 	{"AES-GCM 256", CN_CBOR_UINT, 3, NULL, 0, 0 },
-	{"HMAC 256//256", CN_CBOR_UINT, 4, NULL, 0, 0 },
-	{"HMAC 384//384", CN_CBOR_UINT, 5, NULL, 0, 0 },
-	{"HMAC 512//512", CN_CBOR_UINT, 6, NULL, 0, 0 },
+
+	{"HMAC 256//64", CN_CBOR_UINT, 4, NULL, 0, 0},
+	{"HMAC 256//256", CN_CBOR_UINT, 5, NULL, 0, 0 },
+	{"HMAC 384//384", CN_CBOR_UINT, 6, NULL, 0, 0 },
+	{"HMAC 512//512", CN_CBOR_UINT, 8, NULL, 0, 0 },
+
 	{"AES-CCM-16-64-128", CN_CBOR_UINT, 10, NULL, 0, 0 },
 	{"AES-CCM-16-64-256", CN_CBOR_UINT, 11, NULL, 0, 0 },
 	{"AES-CCM-16-128-128", CN_CBOR_UINT, 12, NULL, 0, 0 },
 	{"AES-CCM-16-128-256", CN_CBOR_UINT, 13, NULL, 0, 0 },
 	{"AES-CBC-MAC-128//64", CN_CBOR_UINT, 14, NULL, 0, 0},
 	{"AES-CBC-MAC-256//64", CN_CBOR_UINT, 15, NULL, 0, 0},
+
 	{"ChaCha20//Poly1305", CN_CBOR_UINT, 24, NULL, 0, 0 },
+
 	{"AES-CBC-MAC-128/128", CN_CBOR_UINT, 25, NULL, 0, 0},
 	{"AES-CBC-MAC-256/128", CN_CBOR_UINT, 26, NULL, 0, 0},
 	{"AES-CCM-64-64-128", CN_CBOR_UINT, 30, NULL, 0, 0 },
 	{"AES-CCM-64-64-256", CN_CBOR_UINT, 31, NULL, 0, 0 },
 	{"AES-CCM-64-128-128", CN_CBOR_UINT, 32, NULL, 0, 0 },
 	{"AES-CCM-64-128-256", CN_CBOR_UINT, 33, NULL, 0, 0 },
-	{"ECDH-ES + HKDF-256", CN_CBOR_UINT, 50, NULL, 0, 0 },
-	{"ECDH-ES + HKDF-512", CN_CBOR_UINT, 51, NULL, 0, 0 },
-	{"ECDH-SS + HKDF-256", CN_CBOR_UINT, 52, NULL, 0, 0 },
-	{"ECDH-SS + HKDF-512", CN_CBOR_UINT, 53, NULL, 0, 0 },
-	{"ECHD-ES+A128KW", CN_CBOR_UINT, 54, NULL, 0, 0 },
-	{ "ECHD-ES+A192KW", CN_CBOR_UINT, 55, NULL, 0, 0 },
-	{ "ECHD-ES+A256KW", CN_CBOR_UINT, 56, NULL, 0, 0 },
-	{ "ECHD-SS+A128KW", CN_CBOR_UINT, 57, NULL, 0, 0 },
-	{ "ECHD-SS+A192KW", CN_CBOR_UINT, 58, NULL, 0, 0 },
-	{ "ECHD-SS+A256KW", CN_CBOR_UINT, 59, NULL, 0, 0 },
 };
 
 FOO KeyMap[9] = {
@@ -168,12 +177,22 @@
 	{ "signatures", CN_CBOR_ARRAY, 0, &Signers, 1, 0 }
 };
 
+FOO Sign0Body[4] = {
+	{ "protected", CN_CBOR_BYTES, 0, &RecurseHeaderMap, 1, 0 },
+	{ "unprotected", CN_CBOR_MAP, 0, HeaderMap, _countof(HeaderMap), 0 },
+	{ "payload", CN_CBOR_BYTES, 0, NULL, 0, 0 }
+};
+
 FOO EnvelopedMessage = {
 	NULL, CN_CBOR_ARRAY, 0, EncryptedBody, _countof(EncryptedBody), 0
 };
 FOO SignedMessage = {
 	NULL, CN_CBOR_ARRAY, 0, SignBody, _countof(SignBody), 0
 };
+FOO Sign0Message = {
+	NULL, CN_CBOR_ARRAY, 0, Sign0Body, _countof(Sign0Body), 0
+};
+
 FOO MacMessage = {
 	NULL, CN_CBOR_ARRAY, 0, MacBody, _countof(MacBody), 0
 };
@@ -194,6 +213,10 @@
 	NULL, CN_CBOR_TAG, 999, &SignedMessage, 1, 0
 };
 
+FOO Sign0MessageWithTag = {
+	NULL, CN_CBOR_TAG, 997, &Sign0Message, 1, 0
+};
+
 FOO MacMessageWithTag = {
 	NULL, CN_CBOR_TAG, 996, &MacMessage, 1, 0
 };
@@ -573,7 +596,8 @@
 			case 992: root = &EnvelopedMessageWithTag; break;
 			case 993: root = &EncryptedMessageWithTag; break;
 			case 994: root = &MacMessageWithTag; break;
-			case 997: root = &Mac0MessageWithTag; break;
+			case 996: root = &Mac0MessageWithTag; break;
+			case 997: root = &Sign0MessageWithTag; break;
 			}
 		}
 	}
diff --git a/src/cose.h b/src/cose.h
index 609c4c6..3d9b0fe 100644
--- a/src/cose.h
+++ b/src/cose.h
@@ -80,10 +80,10 @@
 	COSE_Algorithm_AES_GCM_192 = 2,
 	COSE_Algorithm_AES_GCM_256 = 3,
 
-	COSE_Algorithm_HMAC_256_256 = 4,
-	COSE_Algorithm_HMAC_384_384 = 5,
-	COSE_Algorithm_HMAC_512_512 = 6,
-	COSE_Algorithm_HMAC_256_64 = 7,
+	COSE_Algorithm_HMAC_256_64 = 4,
+	COSE_Algorithm_HMAC_256_256 = 5,
+	COSE_Algorithm_HMAC_384_384 = 6,
+	COSE_Algorithm_HMAC_512_512 = 7,
 
 	COSE_Algorithm_CBC_MAC_128_64 = 14,
 	COSE_Algorithm_CBC_MAC_256_64 = 15,
@@ -99,30 +99,36 @@
 	COSE_Algorithm_AES_CCM_64_128_128 = 32,
 	COSE_Algorithm_AES_CCM_64_128_256 = 33,
 
-	COSE_Algorithm_ECDH_ES_HKDF_256 = 50,
-	COSE_Algorithm_ECDH_ES_HKDF_512 = 51,
-	COSE_Algorithm_ECDH_SS_HKDF_256 = 52,
-	COSE_Algorithm_ECDH_SS_HKDF_512 = 53,
+	COSE_Algorithm_ECDH_ES_HKDF_256 = -25,
+	COSE_Algorithm_ECDH_ES_HKDF_512 = -26,
+	COSE_Algorithm_ECDH_SS_HKDF_256 = -27,
+	COSE_Algorithm_ECDH_SS_HKDF_512 = -28,
 
-	COSE_Algorithm_ECDH_ES_A128KW = 54,
-	COSE_Algorithm_ECDH_ES_A192KW = 55,
-	COSE_Algorithm_ECDH_ES_A256KW = 56,
-	COSE_Algorithm_ECDH_SS_A128KW = 57,
-	COSE_Algorithm_ECDH_SS_A192KW = 58,
-	COSE_Algorithm_ECDH_SS_A256KW = 59,
+	COSE_Algorithm_ECDH_ES_A128KW = -29,
+	COSE_Algorithm_ECDH_ES_A192KW = -30,
+	COSE_Algorithm_ECDH_ES_A256KW = -31,
+	COSE_Algorithm_ECDH_SS_A128KW = -32,
+	COSE_Algorithm_ECDH_SS_A192KW = -33,
+	COSE_Algorithm_ECDH_SS_A256KW = -34,
 
 	COSE_Algorithm_AES_KW_128 = -3,
 	COSE_Algorithm_AES_KW_192 = -4,
 	COSE_Algorithm_AES_KW_256 = -5,
 
 	COSE_Algorithm_Direct = -6,
-	COSE_Algorithm_PS256 = -26,
-	COSE_Algorithm_PS384 = -27,
-	COSE_Algorithm_PS512 = -28,
+
+	COSE_Algorithm_Direct_HKDF_HMAC_SHA_256 = -10,
+	COSE_Algorithm_Direct_HKDF_HMAC_SHA_512 = -11,
+	COSE_Algorithm_Direct_HKDF_AES_128 = -12,
+	COSE_Algorithm_Direct_HKDF_AES_256 = -13,
+
+	COSE_Algorithm_PS256 = -8,
+	COSE_Algorithm_PS384 = -37,
+	COSE_Algorithm_PS512 = -38,
 
 	COSE_Algorithm_ECDSA_SHA_256 = -7,
-	COSE_Algorithm_ECDSA_SHA_384 = -8,
-	COSE_Algorithm_ECDSA_SHA_512 = -9,
+	COSE_Algorithm_ECDSA_SHA_384 = -35,
+	COSE_Algorithm_ECDSA_SHA_512 = -36,
 } COSE_Algorithms;
 
 typedef enum {
