Closed merlinxcy closed 5 years ago
另外在运行Tassl_demo/mk_tls_cert中的SM2certgen.sh报错,证书没有成功生成。运行的环境是Ubuntu 16.04.3 LTS报错的内容如下:
Generating self-signed CA certificate (on curve SM2)
===============================================================
unknown curve name (SM2)
Error reading parameter file SM2.pem
139913907107480:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: PARAMETERS
139913907107480:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: CERTIFICATE
./sm2Certs/CA.req.pem: No such file or directory
Error opening Certificate ./sm2Certs/CA.cert.pem
139854973744792:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/CA.cert.pem','r')
139854973744792:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:
unable to load certificate
Error opening Certificate ./sm2Certs/CA.cert.pem
139941025760920:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/CA.cert.pem','r')
139941025760920:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:
unable to load certificate
/bin/cat: ./sm2Certs/CA.key.pem: No such file or directory
/bin/rm: cannot remove './sm2Certs/CA.req.pem': No such file or directory
GENERATING A TEST SERVER CERTIFICATE (on elliptic curve SM2)
==========================================================================
Error reading parameter file SM2.pem
139795008538264:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: PARAMETERS
139795008538264:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: CERTIFICATE
./sm2Certs/SS.req.pem: No such file or directory
Error opening Certificate ./sm2Certs/SS.cert.pem
139801620879000:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/SS.cert.pem','r')
139801620879000:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:
unable to load certificate
Error opening Certificate ./sm2Certs/SS.cert.pem
140626275612312:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/SS.cert.pem','r')
140626275612312:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:
unable to load certificate
/bin/cat: ./sm2Certs/SS.key.pem: No such file or directory
/bin/rm: cannot remove './sm2Certs/SS.req.pem': No such file or directory
GENERATING A TEST SERVER ENCRYPT CERTIFICATE (on elliptic curve SM2)
===================================================================================
Error reading parameter file SM2.pem
140376838563480:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: PARAMETERS
140376838563480:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: CERTIFICATE
./sm2Certs/SE.req.pem: No such file or directory
Error opening Certificate ./sm2Certs/SE.cert.pem
139918525421208:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/SE.cert.pem','r')
139918525421208:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:
unable to load certificate
Error opening Certificate ./sm2Certs/SE.cert.pem
140465787745944:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/SE.cert.pem','r')
140465787745944:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:
unable to load certificate
/bin/cat: ./sm2Certs/SE.key.pem: No such file or directory
/bin/rm: cannot remove './sm2Certs/SE.req.pem': No such file or directory
GENERATING A TEST CLIENT CERTIFICATE (on elliptic curve SM2)
==========================================================================
Error reading parameter file SM2.pem
140447515678360:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: PARAMETERS
140447515678360:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: CERTIFICATE
./sm2Certs/CS.req.pem: No such file or directory
Error opening Certificate ./sm2Certs/CS.cert.pem
140528177981080:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/CS.cert.pem','r')
140528177981080:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:
unable to load certificate
Error opening Certificate ./sm2Certs/CS.cert.pem
140641161451160:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/CS.cert.pem','r')
140641161451160:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:
unable to load certificate
/bin/cat: ./sm2Certs/CS.key.pem: No such file or directory
/bin/rm: cannot remove './sm2Certs/CS.req.pem': No such file or directory
GENERATING A TEST CLIENT ENCRYPT CERTIFICATE (on elliptic curve SM2)
===================================================================================
Error reading parameter file SM2.pem
140521369265816:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: PARAMETERS
140521369265816:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: CERTIFICATE
./sm2Certs/CE.req.pem: No such file or directory
Error opening Certificate ./sm2Certs/CE.cert.pem
140606414739096:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/CE.cert.pem','r')
140606414739096:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:
unable to load certificate
Error opening Certificate ./sm2Certs/CE.cert.pem
139689373185688:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/CE.cert.pem','r')
139689373185688:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:
unable to load certificate
/bin/cat: ./sm2Certs/CE.key.pem: No such file or directory
/bin/rm: cannot remove './sm2Certs/CE.req.pem': No such file or directory
另外在运行Tassl_demo/mk_tls_cert中的SM2certgen.sh报错,证书没有成功生成。运行的环境是Ubuntu 16.04.3 LTS报错的内容如下:
Generating self-signed CA certificate (on curve SM2) =============================================================== unknown curve name (SM2) Error reading parameter file SM2.pem 139913907107480:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: PARAMETERS 139913907107480:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: CERTIFICATE ./sm2Certs/CA.req.pem: No such file or directory Error opening Certificate ./sm2Certs/CA.cert.pem 139854973744792:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/CA.cert.pem','r') 139854973744792:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400: unable to load certificate Error opening Certificate ./sm2Certs/CA.cert.pem 139941025760920:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/CA.cert.pem','r') 139941025760920:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400: unable to load certificate /bin/cat: ./sm2Certs/CA.key.pem: No such file or directory /bin/rm: cannot remove './sm2Certs/CA.req.pem': No such file or directory GENERATING A TEST SERVER CERTIFICATE (on elliptic curve SM2) ========================================================================== Error reading parameter file SM2.pem 139795008538264:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: PARAMETERS 139795008538264:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: CERTIFICATE ./sm2Certs/SS.req.pem: No such file or directory Error opening Certificate ./sm2Certs/SS.cert.pem 139801620879000:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/SS.cert.pem','r') 139801620879000:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400: unable to load certificate Error opening Certificate ./sm2Certs/SS.cert.pem 140626275612312:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/SS.cert.pem','r') 140626275612312:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400: unable to load certificate /bin/cat: ./sm2Certs/SS.key.pem: No such file or directory /bin/rm: cannot remove './sm2Certs/SS.req.pem': No such file or directory GENERATING A TEST SERVER ENCRYPT CERTIFICATE (on elliptic curve SM2) =================================================================================== Error reading parameter file SM2.pem 140376838563480:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: PARAMETERS 140376838563480:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: CERTIFICATE ./sm2Certs/SE.req.pem: No such file or directory Error opening Certificate ./sm2Certs/SE.cert.pem 139918525421208:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/SE.cert.pem','r') 139918525421208:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400: unable to load certificate Error opening Certificate ./sm2Certs/SE.cert.pem 140465787745944:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/SE.cert.pem','r') 140465787745944:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400: unable to load certificate /bin/cat: ./sm2Certs/SE.key.pem: No such file or directory /bin/rm: cannot remove './sm2Certs/SE.req.pem': No such file or directory GENERATING A TEST CLIENT CERTIFICATE (on elliptic curve SM2) ========================================================================== Error reading parameter file SM2.pem 140447515678360:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: PARAMETERS 140447515678360:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: CERTIFICATE ./sm2Certs/CS.req.pem: No such file or directory Error opening Certificate ./sm2Certs/CS.cert.pem 140528177981080:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/CS.cert.pem','r') 140528177981080:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400: unable to load certificate Error opening Certificate ./sm2Certs/CS.cert.pem 140641161451160:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/CS.cert.pem','r') 140641161451160:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400: unable to load certificate /bin/cat: ./sm2Certs/CS.key.pem: No such file or directory /bin/rm: cannot remove './sm2Certs/CS.req.pem': No such file or directory GENERATING A TEST CLIENT ENCRYPT CERTIFICATE (on elliptic curve SM2) =================================================================================== Error reading parameter file SM2.pem 140521369265816:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: PARAMETERS 140521369265816:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: CERTIFICATE ./sm2Certs/CE.req.pem: No such file or directory Error opening Certificate ./sm2Certs/CE.cert.pem 140606414739096:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/CE.cert.pem','r') 140606414739096:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400: unable to load certificate Error opening Certificate ./sm2Certs/CE.cert.pem 139689373185688:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('./sm2Certs/CE.cert.pem','r') 139689373185688:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400: unable to load certificate /bin/cat: ./sm2Certs/CE.key.pem: No such file or directory /bin/rm: cannot remove './sm2Certs/CE.req.pem': No such file or directory
你把openssl的命令加到PATH路径下,应该就可以了
gcc -Wall sm2tls.c -lssl -lcrypto -o 2 编译后运行后报错:Error of Create SSL CTX,看了下代码 ctx = SSL_CTX_new(CNTLS_client_method()); if (ctx == NULL) { printf("Error of Create SSL CTX!\n"); goto err; } 为什么SSL_CTX_new失败了呢