文档章节

在 MinGW 中使用 OpenSSL 创建证书时的 BUG

Fenying
 Fenying
发布于 2016/09/12 10:52
字数 314
阅读 160
收藏 0

作者: Angus.Fenying <i.am.x.fenying@gmail.com>

日期: 2016-09-12 10:48 AM

以下面的命令为例

openssl req -new -newkey rsa:2048 -sha256 -nodes \
  -out sample.com.csr \
  -keyout sample.com.key \
  -subj "/C=CountryShortName/ST=ProvinceName/L=CityName/O=Example Inc./OU=Web Security/CN=sample.com"

执行后报错

Generating a 2048 bit RSA private key
...............................................................................+++
................................................................................................................+++
writing new private key to 'sample.com.key'
-----
Subject does not start with '/'.
problems making Certificate Request

问题出在 MingW 身上,需要在 -subj 的参数前面加一个斜杠 /:

openssl req -new -newkey rsa:2048 -sha256 -nodes \
  -out sample.com.csr \
  -keyout sample.com.key \
  -subj "//C=CountryShortName/ST=ProvinceName/L=CityName/O=Example Inc./OU=Web Security/CN=sample.com"

但是第一个 / 使得后面的 / 被认为是 NID 的一部分,这又会导致第一段主题信息被视为 /C=CountryShortName 而不是 C=CountryShortName

结果得到下面的错误:

Generating a 2048 bit RSA private key
.+++
................................................................................................................................................+++
writing new private key to 'sample.com.key'
-----
Subject Attribute /C has no known NID, skipped

为了解决这个问题,可以在 /C=CountryShortName,前面再加一段 /skip=yes

openssl req -new -newkey rsa:2048 -sha256 -nodes \
  -out sample.com.csr \
  -keyout sample.com.key \
  -subj "//skip=yes/C=CountryShortName/ST=ProvinceName/L=CityName/O=Example Inc./OU=Web Security/CN=sample.com"

就保护了 C=CountryShortName 不被影响。

© 著作权归作者所有

共有 人打赏支持
Fenying
粉丝 15
博文 13
码字总数 14020
作品 0
深圳
程序员
私信 提问
mingw编译node.js

首先下载并安装MinGW http://sourceforge.net/projects/mingw/files/ 下载顶上那个mingw-get-inst-xxx.exe,安装,组件最好都选上,装完后就有MinGW和MSys了 然后下载node.js和openssl,按照...

mallon
2011/06/12
1K
0
求助配置问题,win10下msys编译openssl提示 'ERROR_INSUFFICIENT_BUFFER' undeclared

C/C++萌新求助。 按youtube教程按步骤安装所需的软件和配置path后 在msys 尝试 对 openssl 1.0.2k/n 执行以下编译命令 ./config make 得到报错 msys下查看perl及gcc版本如下图 按我粗浅的理解...

a4g
2018/03/14
451
2
关于Windows 7 64位配置安装Scrapy的一些问题

之前一直都是在Linux中安装Scrapy,配置起来不会有任何问题,但是在Windows中,如果没有安装过VS 2008,那么用pip安装Scrapy时(并且前提是你已经安装好了正常版本的OpenSSL)就会出现很多问...

鄂世嘉
2014/01/08
1K
0
LibreSSL 2.2.1 发布,安全套接字库

LibreSSL 2.2.1 发布,该版本主要是 bug 修复以及一些特性的增删,内容如下: * Assorted build fixes for musl, HP-UX, Mingw, Solaris. * Initial support for Windows Embeded 2009, Serv......

oschina
2015/07/09
659
5
Rugged 0.21.4 发布,Git 的 Ruby 开发包

Rugged 0.21.4 发布,Rugged 是一个 Git 的 Ruby 开发包,使用 libgit2 API 该版本升级 libgit2 到 0.21.4,libgit2 0.21.4 主要是修复了如下 bug : bce9484 Fix assert when receiving un...

oschina
2015/01/19
414
1

没有更多内容

加载失败,请刷新页面

加载更多

day11

architect刘源源
今天
6
0
论学好Linux系统的超级重要性

不知道各位在日常的工作生活中有没有接触过“rm -rf /*”这个命令,因为这个命令搞出来的事情可还不少呢!前段时间就在一个群里看到了有个小伙子,老板让他去维护一下服务器,这小伙也不太懂...

Linux就该这么学
昨天
6
0
git 使用

1,首先在github配置好信息和仓库,然后在本地进行操作 git init git config user.name 'zhangwuer' git config user.email '56789053@qq.com' 2,与远程分支建立连接 git checkout -b test......

天王盖地虎626
昨天
3
0
git checkout 命令详解

在日常的git操作中,git checkout——检出,是我们的常用命令。最为常用的两种情形是创建分支和切换分支。 在下面的命令中,使用了一些简写,在这里说明一下: git st # git statusgit ci ...

shzwork
昨天
10
0
【Nginx】Nginx多级代理,获取客户端真实请求IP以及每级代理IP

Nginx多级代理,获取客户端真实请求IP以及每级代理IP 如图所示,每一级nginx里的location配置里需要加上对应的配置,最后一级nginx是直接到应用,测试时为了方便,直接用echo模块去测试,打印...

薛定谔的旺
昨天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部