diff --git a/include/psa/crypto.h b/include/psa/crypto.h
index 7efa315..9ceac0a 100644
--- a/include/psa/crypto.h
+++ b/include/psa/crypto.h
@@ -4478,7 +4478,7 @@
  *         results in this error code.
  */
 psa_status_t psa_pake_output(psa_pake_operation_t *operation,
-                             psa_pake_data_t type,
+                             psa_pake_step_t type,
                              uint8_t *output,
                              size_t output_size,
                              size_t *output_length);
@@ -4518,7 +4518,7 @@
  *         results in this error code.
  */
 psa_status_t psa_pake_input(psa_pake_operation_t *operation,
-                             psa_pake_data_t type,
+                             psa_pake_step_t type,
                              uint8_t *input,
                              size_t input_length);
 
diff --git a/include/psa/crypto_sizes.h b/include/psa/crypto_sizes.h
index 4428fc0..9d2f6c4 100644
--- a/include/psa/crypto_sizes.h
+++ b/include/psa/crypto_sizes.h
@@ -1144,7 +1144,7 @@
  * \param alg           A PAKE algorithm (PSA_ALG_XXX value such that
  *                      #PSA_ALG_IS_PAKE(\p alg) is true).
  * \param cipher_suite  A cipher suite that is compatible with algorithm \p alg.
- * \param output_step   A value of type ::psa_pake_data_t that is valid for the
+ * \param output_step   A value of type ::psa_pake_step_t that is valid for the
  *                      algorithm \p alg.
  * \return              A sufficient output buffer size for the specified
  *                      output, cipher suite and algorithm. If the cipher suite,
diff --git a/include/psa/crypto_types.h b/include/psa/crypto_types.h
index 09ff1c5..bf8ab15 100644
--- a/include/psa/crypto_types.h
+++ b/include/psa/crypto_types.h
@@ -397,7 +397,7 @@
  * This type is for encoding additional input and output data for such
  * algorithms.
  */
-typedef uint8_t psa_pake_data_t;
+typedef uint8_t psa_pake_step_t;
 
 /** Encoding of the type of the PAKE's primitive.
  *
diff --git a/include/psa/crypto_values.h b/include/psa/crypto_values.h
index ab064db..06aeec5 100644
--- a/include/psa/crypto_values.h
+++ b/include/psa/crypto_values.h
@@ -2554,7 +2554,7 @@
  * received. For values sent or received afterwards, use
  * #PSA_PAKE_DATA_KEY_SHARE_2 and #PSA_PAKE_DATA_KEY_SHARE_3.
  */
-#define PSA_PAKE_DATA_KEY_SHARE                 ((psa_pake_data_t)0x01)
+#define PSA_PAKE_DATA_KEY_SHARE                 ((psa_pake_step_t)0x01)
 
 /** A Schnorr NIZKP public key.
  *
@@ -2568,7 +2568,7 @@
  * key received. For values sent or received afterwards, use
  * #PSA_PAKE_DATA_ZK_PUBLIC_2 and #PSA_PAKE_DATA_ZK_PUBLIC_3.
  */
-#define PSA_PAKE_DATA_ZK_PUBLIC                 ((psa_pake_data_t)0x02)
+#define PSA_PAKE_DATA_ZK_PUBLIC                 ((psa_pake_step_t)0x02)
 
 /** A Schnorr NIZKP proof.
  *
@@ -2582,43 +2582,43 @@
  * received. For values sent or received afterwards, use
  * #PSA_PAKE_DATA_ZK_PROOF_2 and #PSA_PAKE_DATA_ZK_PROOF_3.
  */
-#define PSA_PAKE_DATA_ZK_PROOF                  ((psa_pake_data_t)0x03)
+#define PSA_PAKE_DATA_ZK_PROOF                  ((psa_pake_step_t)0x03)
 
 /** Marks the second key share sent and received.
  *
  * See #PSA_PAKE_DATA_KEY_SHARE.
  */
-#define PSA_PAKE_DATA_KEY_SHARE_2               ((psa_pake_data_t)0x04)
+#define PSA_PAKE_DATA_KEY_SHARE_2               ((psa_pake_step_t)0x04)
 
 /** Marks the second Schnorr NIZKP public key sent and received.
  *
  * See #PSA_PAKE_DATA_ZK_PUBLIC.
  */
-#define PSA_PAKE_DATA_ZK_PUBLIC_2               ((psa_pake_data_t)0x05)
+#define PSA_PAKE_DATA_ZK_PUBLIC_2               ((psa_pake_step_t)0x05)
 
 /** Marks the second Schnorr NIZKP proof sent and received.
  *
  * See #PSA_PAKE_DATA_ZK_PROOF.
  */
-#define PSA_PAKE_DATA_ZK_PROOF_2                ((psa_pake_data_t)0x06)
+#define PSA_PAKE_DATA_ZK_PROOF_2                ((psa_pake_step_t)0x06)
 
 /** Marks the third key share sent and received.
  *
  * See #PSA_PAKE_DATA_KEY_SHARE.
  */
-#define PSA_PAKE_DATA_KEY_SHARE_3               ((psa_pake_data_t)0x07)
+#define PSA_PAKE_DATA_KEY_SHARE_3               ((psa_pake_step_t)0x07)
 
 /** Marks the third Schnorr NIZKP public key sent and received.
  *
  * See #PSA_PAKE_DATA_ZK_PUBLIC.
  */
-#define PSA_PAKE_DATA_ZK_PUBLIC_3               ((psa_pake_data_t)0x08)
+#define PSA_PAKE_DATA_ZK_PUBLIC_3               ((psa_pake_step_t)0x08)
 
 /** Marks the third Schnorr NIZKP proof sent and received.
  *
  * See #PSA_PAKE_DATA_ZK_PROOF.
  */
-#define PSA_PAKE_DATA_ZK_PROOF_3                ((psa_pake_data_t)0x09)
+#define PSA_PAKE_DATA_ZK_PROOF_3                ((psa_pake_step_t)0x09)
 
 /**@}*/
 #endif /* PSA_CRYPTO_VALUES_H */
