diff --git a/library/aesce.c b/library/aesce.c
index ee0c8e1..0f6c323 100644
--- a/library/aesce.c
+++ b/library/aesce.c
@@ -39,7 +39,7 @@
 #endif
 
 #if !defined(__ARM_FEATURE_CRYPTO)
-#   error "`crypto` feature moddifier MUST be enabled for MBEDTLS_AESCE_C."
+#   error "`crypto` feature modifier MUST be enabled for MBEDTLS_AESCE_C."
 #   error "Typical option for GCC and Clang is `-march=armv8-a+crypto`."
 #endif /* !__ARM_FEATURE_CRYPTO */
 
diff --git a/library/bignum_core.h b/library/bignum_core.h
index 4fb8f65..05bc923 100644
--- a/library/bignum_core.h
+++ b/library/bignum_core.h
@@ -663,7 +663,7 @@
  *
  * \p X may be aliased to \p A, but may not otherwise overlap it.
  *
- * \p X may not alias \p N (it is in canonical form, so must be stricly less
+ * \p X may not alias \p N (it is in canonical form, so must be strictly less
  * than \p N). Nor may it alias or overlap \p rr (this is unlikely to be
  * required in practice.)
  *
@@ -702,7 +702,7 @@
  *
  * \p X may be aliased to \p A, but may not otherwise overlap it.
  *
- * \p X may not alias \p N (it is in canonical form, so must be stricly less
+ * \p X may not alias \p N (it is in canonical form, so must be strictly less
  * than \p N).
  *
  * This function is a thin wrapper around `mbedtls_mpi_core_montmul()` that is
diff --git a/library/ecp_curves.c b/library/ecp_curves.c
index 81ad73a..f60f8b1 100644
--- a/library/ecp_curves.c
+++ b/library/ecp_curves.c
@@ -5403,7 +5403,7 @@
     addend += (X[P521_WIDTH - 1] >> 9);
     X[P521_WIDTH - 1] &= P521_MASK;
 
-    /* Resuse the top part of X (already zeroed) as a helper array for
+    /* Reuse the top part of X (already zeroed) as a helper array for
      * carrying out the addition. */
     mbedtls_mpi_uint *addend_arr = X + P521_WIDTH;
     addend_arr[0] = addend;
diff --git a/library/pkcs7.c b/library/pkcs7.c
index 010d706..d4059d7 100644
--- a/library/pkcs7.c
+++ b/library/pkcs7.c
@@ -354,7 +354,7 @@
         goto out;
     }
 
-    /* Asssume authenticatedAttributes is nonexistent */
+    /* Assume authenticatedAttributes is nonexistent */
     ret = pkcs7_get_digest_algorithm(p, end_signer, &signer->sig_alg_identifier);
     if (ret != 0) {
         goto out;
diff --git a/library/sha256.c b/library/sha256.c
index 23cd406..605b2b0 100644
--- a/library/sha256.c
+++ b/library/sha256.c
@@ -63,7 +63,7 @@
 #        pragma clang attribute push (__attribute__((target("crypto"))), apply_to=function)
 #        define MBEDTLS_POP_TARGET_PRAGMA
 #      elif defined(__GNUC__)
-         /* FIXME: GCC-5 annouce crypto extension, but some intrinsic are missed.
+         /* FIXME: GCC-5 claims crypto extension, but some intrinsic are missed.
           *        Known miss intrinsic can be workaround.
           */
 #        if __GNUC__ < 6
diff --git a/library/ssl_tls13_client.c b/library/ssl_tls13_client.c
index 0dd762e..290c4c6 100644
--- a/library/ssl_tls13_client.c
+++ b/library/ssl_tls13_client.c
@@ -1270,7 +1270,7 @@
             ssl->session_negotiate->ciphersuite);
         ssl->handshake->ciphersuite_info = ciphersuite_info;
 
-        /* Enable psk and psk_ephermal to make stage early happy */
+        /* Enable psk and psk_ephemeral to make stage early happy */
         ssl->handshake->key_exchange_mode =
             MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_ALL;
 
