diff --git a/demos/src/demo_sm2_public_key_parse.c b/demos/src/demo_sm2_public_key_parse.c new file mode 100644 index 00000000..463e90ec --- /dev/null +++ b/demos/src/demo_sm2_public_key_parse.c @@ -0,0 +1,32 @@ +/* + * Copyright 2014-2022 The GmSSL Project. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * + * http://www.apache.org/licenses/LICENSE-2.0 + */ + +#include +#include +#include +#include +#include + + +int main(void) +{ + SM2_KEY sm2_key; + + printf("Read SM2 public key file (PEM) from stdin ...\n"); + + if (sm2_public_key_info_from_pem(&sm2_key, stdin) != 1) { + fprintf(stderr, "error\n"); + return 1; + } + + sm2_public_key_print(stdout, 0, 0, "SM2PublicKey", &sm2_key); + + gmssl_secure_clear(&sm2_key, sizeof(sm2_key)); + return 0; +}