Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 独立DartVM:自签名证书和SSL_Windows_Security_Ssl_Https_Dart - Fatal编程技术网

Windows 独立DartVM:自签名证书和SSL

Windows 独立DartVM:自签名证书和SSL,windows,security,ssl,https,dart,Windows,Security,Ssl,Https,Dart,我最近一直在努力使用独立的DartVM和SSL作为客户端。我的理解是Dart使用Mozilla NSS来管理证书。我遇到的一个问题是,例如,在Windows上,我找不到针对Windows平台发布的二进制文件(除了第三方编译Mozilla源代码并上传到mega或类似版本,如果你问我的话,这相当令人担忧)。编译这个C++代码不是一个简单的任务。我没有足够的资源在Windows平台下独自完成这项工作。这就是我首先编写Dart(或其他高级语言)的原因 尽管如此,当我尝试安全连接并获得自签名(或者更确切地

我最近一直在努力使用独立的DartVM和SSL作为客户端。我的理解是Dart使用Mozilla NSS来管理证书。我遇到的一个问题是,例如,在Windows上,我找不到针对Windows平台发布的二进制文件(除了第三方编译Mozilla源代码并上传到mega或类似版本,如果你问我的话,这相当令人担忧)。编译这个C++代码不是一个简单的任务。我没有足够的资源在Windows平台下独自完成这项工作。这就是我首先编写Dart(或其他高级语言)的原因

尽管如此,当我尝试安全连接并获得自签名(或者更确切地说,是技术上正确的、不受信任的机构)证书时,我得到的错误消息是操作系统本身不信任该证书。在Windows上,情况并非如此。我正在使用的证书是我生成的CA根证书,具有适当的权限/签名链,手动安装到Windows受信任根中。Chrome和Internet Explorer(其中使用Windows基础证书存储)都信任我的证书,但执行此操作后不会出现任何警告。因此,如果DartVM没有使用“操作系统”在握手时验证证书,那么该消息是非常不具信息性/误导性的

除了编译NSS和试图找出如何通过过于复杂且文档不足的步骤导入我的证书之外,可以做些什么来克服这一问题?在启动安全连接以忽略这种性质的SSL错误时,是否没有可以指定的参数

我的web服务器强制使用HTTPS,因此退回到普通HTTP将
这不是我的选择。我也不想信任,更不想为我的证书支付第三方的费用,这些证书几乎只在内部使用,这就是为什么我首先在自己的根CA下生成了一个通配符证书。支付通配符证书的费用,用于多个域,这些域不一定总是公开或用于公共用途,这在价格上有点天文数字,完全不可能。

我还没有解决这个问题,也不太了解它。你的问题到底是什么也不清楚(除此之外,这比它应该的复杂得多)。关于这一点,已经有一些类似的问题得到了回答。也许,、提供的信息可以让您向前迈进一步。我已经浏览了其中的大部分内容,问题是大部分内容要么是在浏览器中,要么是作为服务器的独立客户端,要么是试图利用客户端证书的独立客户端。看起来其中一个问题与我遇到的问题(作为客户机的独立VM)是一样的,但他们的建议是向lib提交一份错误报告(这是2013年5月,我在pub使用的是同一个库:http/http.dart)"从本质上看,我必须要做的是修改该包本身或编写自己的库,以利用较低级别的套接字类并钩住onBadCertificate回调。在我的工作中,我也遇到过SSL证书在Windows HTTPS代理后面工作的问题。我确实有文件a,是的,错误日志误导了dart团队成员我们感到困惑。似乎证书处理只适用于linux。它没有解决,我不得不放弃处理它。目前没有办法解决。如果重新实现证书存储,解决这个问题将需要时间。您可以尝试切换到linux,现在。