diff --git a/tools/sm9decrypt.c b/tools/sm9decrypt.c index 4851ef7a..e7c35864 100644 --- a/tools/sm9decrypt.c +++ b/tools/sm9decrypt.c @@ -1,5 +1,5 @@ /* - * Copyright 2014-2022 The GmSSL Project. All Rights Reserved. + * Copyright 2014-2024 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. @@ -16,7 +16,25 @@ #include -static const char *options = "[-in file] -key file -pass str -id str [-out file]"; +static const char *usage = "-key pem -pass str -id str [-in file] [-out file]"; + +static const char *options = +"Options\n" +"\n" +" -key pem Recipient's private key in PEM format\n" +" -pass str Password to open the private key\n" +" -id str Recipient's identity string\n" +" -in file | stdin Encrypted file or data\n" +" -out file | stdout Output plaintext\n" +"\n" +"Examples\n" +"\n" +" $ gmssl sm9setup -alg sm9encrypt -pass P@ssw0rd -out sm9enc_msk.pem -pubout sm9enc_mpk.pem\n" +" $ gmssl sm9keygen -alg sm9encrypt -in sm9enc_msk.pem -inpass P@ssw0rd -id Alice -out sm9enc.pem -outpass 123456\n" +"\n" +" $ echo 'Secret text' | gmssl sm9encrypt -pubmaster sm9enc_mpk.pem -id Alice -out sm9_ciphertext.der\n" +" $ gmssl sm9decrypt -key sm9enc.pem -pass 123456 -id Alice -in sm9_ciphertext.der\n" +"\n"; int sm9decrypt_main(int argc, char **argv) { @@ -39,13 +57,14 @@ int sm9decrypt_main(int argc, char **argv) argv++; if (argc < 1) { - fprintf(stderr, "usage: %s %s\n", prog, options); + fprintf(stderr, "usage: gmssl %s %s\n", prog, usage); return 1; } while (argc > 0) { if (!strcmp(*argv, "-help")) { - fprintf(stdout, "usage: %s %s\n", prog, options); + printf("usage: gmssl %s %s\n", prog, usage); + printf("%s\n", options); return 0; } else if (!strcmp(*argv, "-key")) { if (--argc < 1) goto bad; @@ -76,7 +95,7 @@ int sm9decrypt_main(int argc, char **argv) } } else { bad: - fprintf(stderr, "%s: illegal option '%s'\n", prog, *argv); + fprintf(stderr, "gmssl %s: illegal option '%s'\n", prog, *argv); return 1; } diff --git a/tools/sm9encrypt.c b/tools/sm9encrypt.c index d7824a69..773abdd6 100644 --- a/tools/sm9encrypt.c +++ b/tools/sm9encrypt.c @@ -1,5 +1,5 @@ /* - * Copyright 2014-2022 The GmSSL Project. All Rights Reserved. + * Copyright 2014-2024 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. @@ -15,8 +15,24 @@ #include -static const char *options = "-pubmaster file -id str [-in file] [-out file]"; +static const char *usage = "-pubmaster file -id str [-in file] [-out file]"; +static const char *options = +"Options\n" +"\n" +" -pubmaster pem Master public key in PEM format\n" +" -in file | stdin To be encrypted file or data\n" +" -id str Recipient's identity string\n" +" -out file | stdout Output signature in binary DER encoding\n" +"\n" +"Examples\n" +"\n" +" $ gmssl sm9setup -alg sm9encrypt -pass P@ssw0rd -out sm9enc_msk.pem -pubout sm9enc_mpk.pem\n" +" $ gmssl sm9keygen -alg sm9encrypt -in sm9enc_msk.pem -inpass P@ssw0rd -id Alice -out sm9enc.pem -outpass 123456\n" +"\n" +" $ echo 'Secret text' | gmssl sm9encrypt -pubmaster sm9enc_mpk.pem -id Alice -out sm9_ciphertext.der\n" +" $ gmssl sm9decrypt -key sm9enc.pem -pass 123456 -id Alice -in sm9_ciphertext.der\n" +"\n"; int sm9encrypt_main(int argc, char **argv) { @@ -38,13 +54,14 @@ int sm9encrypt_main(int argc, char **argv) argv++; if (argc < 1) { - fprintf(stderr, "usage: %s %s\n", prog, options); + fprintf(stderr, "usage: gmssl %s %s\n", prog, usage); return 1; } while (argc > 0) { if (!strcmp(*argv, "-help")) { - fprintf(stdout, "usage: %s %s\n", prog, options); + printf("usage: gmssl %s %s\n", prog, usage); + printf("%s\n", options); return 0; } else if (!strcmp(*argv, "-pubmaster")) { if (--argc < 1) goto bad; @@ -72,7 +89,7 @@ int sm9encrypt_main(int argc, char **argv) } } else { bad: - fprintf(stderr, "%s: illegal option '%s'\n", prog, *argv); + fprintf(stderr, "gmssl %s: illegal option '%s'\n", prog, *argv); return 1; } diff --git a/tools/sm9keygen.c b/tools/sm9keygen.c index b077c803..b84a4f59 100644 --- a/tools/sm9keygen.c +++ b/tools/sm9keygen.c @@ -1,5 +1,5 @@ /* - * Copyright 2014-2022 The GmSSL Project. All Rights Reserved. + * Copyright 2014-2024 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. @@ -16,7 +16,25 @@ #include #include -static const char *options = "-alg (sm9sign|sm9encrypt) -in master_key.pem -inpass str -id str [-out pem] -outpass str"; + +static const char *usage = "-alg (sm9sign|sm9encrypt) -in master_key.pem -inpass str -id str [-out pem] -outpass str"; + +static const char *options = +"Options\n" +"\n" +" -alg sm9sign|sm9encrypt Generate maeter key for sm9sign or sm9encrypt\n" +" -pass pass Password to encrypt the master private key\n" +" -out pem Output password-encrypted master private key in PEM format\n" +" -pubout pem Output master public key in PEM format\n" +"\n" +"Examples\n" +"\n" +" $ gmssl sm9setup -alg sm9sign -pass P@ssw0rd -out sm9sign_msk.pem\n" +" $ gmssl sm9keygen -alg sm9sign -in sm9sign_msk.pem -inpass P@ssw0rd -id Alice -out sm9sign.pem -outpass 123456\n" +"\n" +" $ gmssl sm9setup -alg sm9encrypt -pass P@ssw0rd -out sm9enc_msk.pem\n" +" $ gmssl sm9keygen -alg sm9encrypt -in sm9enc_msk.pem -inpass P@ssw0rd -id Alice -out sm9enc.pem -outpass 123456\n" +"\n"; int sm9keygen_main(int argc, char **argv) { diff --git a/tools/sm9setup.c b/tools/sm9setup.c index 4dc07fed..92012946 100644 --- a/tools/sm9setup.c +++ b/tools/sm9setup.c @@ -1,5 +1,5 @@ /* - * Copyright 2014-2022 The GmSSL Project. All Rights Reserved. + * Copyright 2014-2024 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. @@ -16,7 +16,21 @@ #include #include -static const char *options = "-alg (sm9sign|sm9encrypt) [-pass password] [-out pem] [-pubout pem]"; +static const char *usage = "-alg (sm9sign|sm9encrypt) [-pass password] [-out pem] [-pubout pem]"; + +static const char *options = +"Options\n" +"\n" +" -alg sm9sign|sm9encrypt Generate maeter key for sm9sign or sm9encrypt\n" +" -pass pass Password to encrypt the master private key\n" +" -out pem Output password-encrypted master private key in PEM format\n" +" -pubout pem Output master public key in PEM format\n" +"\n" +"Examples\n" +"\n" +" $ gmssl sm9setup -alg sm9sign -pass P@ssw0rd -out sm9sign_msk.pem -pubout sm9sign_mpk.pem\n" +" $ gmssl sm9setup -alg sm9encrypt -pass P@ssw0rd -out sm9enc_msk.pem -pubout sm9enc_mpk.pem\n" +"\n"; int sm9setup_main(int argc, char **argv) { @@ -36,19 +50,20 @@ int sm9setup_main(int argc, char **argv) argv++; if (argc < 1) { - fprintf(stderr, "usage: %s %s\n", prog, options); + fprintf(stderr, "usage: gmssl %s %s\n", prog, usage); return 1; } while (argc > 0) { if (!strcmp(*argv, "-help")) { - fprintf(stdout, "usage: %s %s\n", prog, options); + printf("usage: gmssl %s %s\n", prog, usage); + printf("%s\n", options); return 0; } else if (!strcmp(*argv, "-alg")) { if (--argc < 1) goto bad; alg = *(++argv); if ((oid = sm9_oid_from_name(alg)) < 1) { - fprintf(stdout, "%s: invalid alg '%s', should be sm9sign or sm9encrypt\n", prog, alg); + fprintf(stdout, "gmssl %s: invalid alg '%s', should be sm9sign or sm9encrypt\n", prog, alg); goto end; } } else if (!strcmp(*argv, "-pass")) { @@ -70,7 +85,7 @@ int sm9setup_main(int argc, char **argv) } } else { bad: - fprintf(stderr, "%s: illegal option '%s'\n", prog, *argv); + fprintf(stderr, "gmssl %s: illegal option '%s'\n", prog, *argv); return 1; } diff --git a/tools/sm9sign.c b/tools/sm9sign.c index 4e3bbba8..df689ffa 100644 --- a/tools/sm9sign.c +++ b/tools/sm9sign.c @@ -1,5 +1,5 @@ /* - * Copyright 2014-2022 The GmSSL Project. All Rights Reserved. + * Copyright 2014-2024 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. @@ -16,8 +16,24 @@ #include -static const char *options = "[-in file] -key file -pass str [-out file]"; - +static const char *usage = "-key pem -pass str [-in file] [-out file]"; + +static const char *options = +"Options\n" +"\n" +" -key pem Signing private key file in PEM format\n" +" -pass str Password to open the private key\n" +" -in file | stdin To be signed file or data\n" +" -out file | stdout Output signature in binary DER encoding\n" +"\n" +"Examples\n" +"\n" +" $ gmssl sm9setup -alg sm9sign -pass P@ssw0rd -out sm9sign_msk.pem -pubout sm9sign_mpk.pem\n" +" $ gmssl sm9keygen -alg sm9sign -in sm9sign_msk.pem -inpass P@ssw0rd -id Alice -out sm9sign.pem -outpass 123456\n" +"\n" +" $ echo -n 'message to be signed' | gmssl sm9sign -key sm9sign.pem -pass 123456 -out sm9.sig\n" +" $ echo -n 'message to be signed' | gmssl sm9verify -pubmaster sm9sign_mpk.pem -id Alice -sig sm9.sig\n" +"\n"; int sm9sign_main(int argc, char **argv) { @@ -41,13 +57,14 @@ int sm9sign_main(int argc, char **argv) argv++; if (argc < 1) { - fprintf(stderr, "usage: %s %s\n", prog, options); + fprintf(stderr, "usage: gmssl %s %s\n", prog, usage); return 1; } while (argc > 0) { if (!strcmp(*argv, "-help")) { - fprintf(stdout, "usage: %s %s\n", prog, options); + printf("usage: gmssl %s %s\n", prog, usage); + printf("%s\n", options); return 0; } else if (!strcmp(*argv, "-in")) { if (--argc < 1) goto bad; @@ -75,7 +92,7 @@ int sm9sign_main(int argc, char **argv) } } else { bad: - fprintf(stderr, "%s: illegal option '%s'\n", prog, *argv); + fprintf(stderr, "gmssl %s: illegal option '%s'\n", prog, *argv); return 1; } diff --git a/tools/sm9verify.c b/tools/sm9verify.c index dc928139..f375e723 100644 --- a/tools/sm9verify.c +++ b/tools/sm9verify.c @@ -1,5 +1,5 @@ /* - * Copyright 2014-2022 The GmSSL Project. All Rights Reserved. + * Copyright 2014-2024 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. @@ -15,7 +15,24 @@ #include -static const char *options = "[-in file] -pubmaster file -id str -sig file"; +static const char *usage = "[-in file] -pubmaster file -id str -sig file"; + +static const char *options = +"Options\n" +"\n" +" -pubmaster pem Master public key in PEM format\n" +" -in file | stdin Signed file or data\n" +" -id str Signer's identity string\n" +" -out file | stdout Output signature in binary DER encoding\n" +"\n" +"Examples\n" +"\n" +" $ gmssl sm9setup -alg sm9sign -pass P@ssw0rd -out sm9sign_msk.pem -pubout sm9sign_mpk.pem\n" +" $ gmssl sm9keygen -alg sm9sign -in sm9sign_msk.pem -inpass P@ssw0rd -id Alice -out sm9sign.pem -outpass 123456\n" +"\n" +" $ echo -n 'message to be signed' | gmssl sm9sign -key sm9sign.pem -pass 123456 -out sm9.sig\n" +" $ echo -n 'message to be signed' | gmssl sm9verify -pubmaster sm9sign_mpk.pem -id Alice -sig sm9.sig\n" +"\n"; int sm9verify_main(int argc, char **argv) { @@ -39,13 +56,14 @@ int sm9verify_main(int argc, char **argv) argv++; if (argc < 1) { - fprintf(stderr, "usage: %s %s\n", prog, options); + fprintf(stderr, "usage: gmssl %s %s\n", prog, usage); return 1; } while (argc > 0) { if (!strcmp(*argv, "-help")) { - fprintf(stdout, "usage: %s %s\n", prog, options); + printf("usage: gmssl %s %s\n", prog, usage); + printf("%s\n", options); return 0; } else if (!strcmp(*argv, "-in")) { if (--argc < 1) goto bad; @@ -73,7 +91,7 @@ int sm9verify_main(int argc, char **argv) } } else { bad: - fprintf(stderr, "%s: illegal option '%s'\n", prog, *argv); + fprintf(stderr, "gmssl %s: illegal option '%s'\n", prog, *argv); return 1; }