Add pk_check_pair()
diff --git a/library/pk.c b/library/pk.c
index 4aba3aa..513d8ca 100644
--- a/library/pk.c
+++ b/library/pk.c
@@ -301,6 +301,26 @@
 }
 
 /*
+ * Check public-private key pair
+ */
+int pk_check_pair( const pk_context *pub, const pk_context *prv )
+{
+    if( pub == NULL || pub->pk_info == NULL ||
+        prv == NULL || prv->pk_info == NULL )
+    {
+        return( POLARSSL_ERR_PK_BAD_INPUT_DATA );
+    }
+
+    if( pub->pk_info != prv->pk_info ||
+        pub->pk_info->check_pair_func == NULL )
+    {
+        return( POLARSSL_ERR_PK_TYPE_MISMATCH );
+    }
+
+    return( pub->pk_info->check_pair_func( pub->pk_ctx, prv->pk_ctx ) );
+}
+
+/*
  * Get key size in bits
  */
 size_t pk_get_size( const pk_context *ctx )