我在客户端和服务器上都使用了M2Crypto,并且添加了密钥和证书,没有权限!!!
现在,我发现应该将“通用名”字段设置为domain或任何东西,只要它们在双方上都相同即可。
当python脚本是sun时,如果键没有与其IP相同的Common Name字段,我将遇到问题。
机器ip和“通用名称”字段之间是否存在任何连接”,原因是我不使用授权?

最佳答案

您可能对我提出的类似问题this answer感兴趣:

RFC 6125中定义了应该如何进行主机名验证,这是很新的方法,将实践推广到所有协议,并替换了HTTPS特有的RFC 2818。 (我什至不确定Java 7是否使用RFC 6125,对此可能太新了。)

RFC 2818 (Section 3.1)


  如果存在类型为dNSName的subjectAltName扩展名,则该扩展名必须用作标识。否则,(最具体的)通用
  必须使用证书的“主题”字段中的“名称”字段。
  尽管使用通用名称是现有做法,
  弃用,鼓励认证机构使用
  改为使用dNSName。

[...]

  
  在某些情况下,URI被指定为IP地址而不是主机名。在这种情况下,必须存在iPAddress subjectAltName
  证书中的IP,并且必须与URI中的IP完全匹配。


从本质上讲(至少对于HTTPS,但这也已推广到其他协议),您无意将IP地址放在主题DN的公用名中,而应将其放在IP主题备用名条目中。 (某些浏览器对此非常灵活。)

关于python - M2Crypto Common Name字段和ip关系,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9604935/

10-12 00:25
查看更多