No such file or directory 8356:error:02001003:system library:fopen:No such process:cryptoioss_file.c:7 4:fopen

使用OpenSSL生成证书,构建根证书前,需要构建随机数文件(.rand),命令如下:

openssl rand -out private/.rand 1000

报错如下:

OpenSSL> rand -out private.rand 1000
Can't open private.rand for writing, No such file or directory
8356:error:02001003:system library:fopen:No such process:cryptoioss_file.c:7
4:fopen('private.rand','wb')
8356:error:2006D080:BIO routines:BIO_new_file:no such file:cryptoioss_file.c
:81:
error in rand

竟然找不到路径

查看了OpenSSL的cfg文件也没错

无奈,直接使用了绝对路径,命令如下:

OpenSSL> rand -out C:CAprivate.rand 1000

搞定!

原因分析:

因为把openssl放入了path,因此,在cmd命令行下输入openssl后,回车,进入openssl的命令行,默认在%OPENSSL_HOME%in目录下了

执行openssl rand -out XXX命令时,不需要前的openssl,只需要输入rand -out XX即可

问题来了,我的第一个命令:rand -out private.rand 1000 ,使用的是相对路径(openssl的工作目录是C:CA),肯定在%OPENSSL_HOME%in目录下找不到

因此,解决方案二:

cd  C:C/CA

openssl -out private.rand 1000

搞定!(注意命令前必须有openssl)

OpenSSL命令参考:

OpenSSL构建数字证书

原文地址:https://www.cnblogs.com/huahua035/p/7751815.html