diff --git a/include/psa/crypto.h b/include/psa/crypto.h
index 7e61565..3eee382 100644
--- a/include/psa/crypto.h
+++ b/include/psa/crypto.h
@@ -136,7 +136,39 @@
 #define PSA_KEY_TYPE_IS_ECC(type)                                       \
     (((type) & PSA_KEY_TYPE_ECC_TEST_MASK) == PSA_KEY_TYPE_ECC_TEST_VALUE)
 
-typedef uint32_t psa_algorithm_type_t;
+typedef uint32_t psa_algorithm_t;
+
+#define PSA_ALG_HASH_BITS                       0x01000000
+#define PSA_ALG_RSA_HASH_MASK                   0x000000ff
+#define PSA_ALG_MD2                             0x01000001
+#define PSA_ALG_MD4                             0x01000002
+#define PSA_ALG_MD5                             0x01000003
+#define PSA_ALG_SHA_256_128                     0x01000004
+#define PSA_ALG_RIPEMD160                       0x01000005
+#define PSA_ALG_SHA_1                           0x01000006
+#define PSA_ALG_SHA_256_160                     0x01000007
+#define PSA_ALG_SHA_224                         0x01000008
+#define PSA_ALG_SHA_256                         0x01000009
+#define PSA_ALG_SHA_384                         0x0100000a
+#define PSA_ALG_SHA_512                         0x0100000b
+#define PSA_ALG_SHA_512_224                     0x0100000c
+#define PSA_ALG_SHA_512_256                     0x0100000d
+#define PSA_ALG_SHA3_224                        0x01000010
+#define PSA_ALG_SHA3_256                        0x01000011
+#define PSA_ALG_SHA3_384                        0x01000012
+#define PSA_ALG_SHA3_512                        0x01000013
+
+#define PSA_ALG_RSA_PKCS1V15_RAW                0x40000100
+#define PSA_ALG_RSA_PSS_MGF1                    0x40000200
+#define PSA_ALG_RSA_OAEP                        0x40000300
+#define PSA_ALG_RSA_PKCS1V15(hash_alg)          \
+    (PSA_ALG_RSA_PKCS1V15_RAW | ((hash_alg) & PSA_ALG_RSA_HASH_MASK))
+#define PSA_ALG_IS_RSA_PKCS1V15(alg)            \
+    (((alg) & 0x7fffff00) == PSA_ALG_RSA_PKCS1V15_RAW)
+#define PSA_ALG_RSA_GET_HASH(alg)               \
+    (((alg) & PSA_ALG_RSA_HASH_MASK) | PSA_ALG_HASH_BITS)
+
+#define PSA_ALG_VENDOR_FLAG                     0x80000000
 
 /**@}*/
 
@@ -208,6 +240,40 @@
                             size_t data_size,
                             size_t *data_length);
 
+
+/**@}*/
+
+/** \defgroup asymmetric Asymmetric cryptography
+ * @{
+ */
+
+/**
+ * \brief Sign a hash or short message with a private key.
+ *
+ */
+psa_status_t psa_asymmetric_sign(psa_key_slot_t key,
+                                 psa_algorithm_t alg,
+                                 const uint8_t *hash,
+                                 size_t hash_length,
+                                 const uint8_t *salt,
+                                 size_t salt_length,
+                                 uint8_t *signature,
+                                 size_t signature_size,
+                                 size_t *signature_length);
+
+/**
+ * \brief Verify the signature a hash or short message using a public key.
+ *
+ */
+psa_status_t psa_asymmetric_verify(psa_key_slot_t key,
+                                   psa_algorithm_t alg,
+                                   const uint8_t *hash,
+                                   size_t hash_length,
+                                   const uint8_t *salt,
+                                   size_t salt_length,
+                                   uint8_t *signature,
+                                   size_t signature_size);
+
 /**@}*/
 
 #ifdef __cplusplus
