diff --git a/library/psa_crypto.c b/library/psa_crypto.c
index 317417d..905b9a8 100755
--- a/library/psa_crypto.c
+++ b/library/psa_crypto.c
@@ -1509,8 +1509,8 @@
 
     //TODO: check key policy
 
-    if ( !( ( key_type & PSA_KEY_TYPE_CATEGORY_MASK ) == PSA_KEY_TYPE_CATEGORY_CIPHER
-            && PSA_BLOCK_CIPHER_BLOCK_SIZE( key_type ) == 16 ) )
+    if ( !( ( key_type & PSA_KEY_TYPE_CATEGORY_MASK ) == PSA_KEY_TYPE_CATEGORY_SYMMETRIC
+            && PSA_BLOCK_CIPHER_BLOCK_SIZE( key_type ) == cipher_info->block_size ) )
         return( PSA_ERROR_INVALID_ARGUMENT );
 
     if( alg == PSA_ALG_GCM )
@@ -1633,8 +1633,8 @@
             return( PSA_ERROR_NOT_SUPPORTED );
     //TODO: check key policy
 
-    if ( !( ( key_type & PSA_KEY_TYPE_CATEGORY_MASK ) == PSA_KEY_TYPE_CATEGORY_CIPHER
-            && PSA_BLOCK_CIPHER_BLOCK_SIZE( key_type ) == 16 ) )
+    if ( !( ( key_type & PSA_KEY_TYPE_CATEGORY_MASK ) == PSA_KEY_TYPE_CATEGORY_SYMMETRIC
+            && PSA_BLOCK_CIPHER_BLOCK_SIZE( key_type ) == cipher_info->block_size ) )
         return( PSA_ERROR_INVALID_ARGUMENT );
 
     if( alg == PSA_ALG_GCM )
