问题标签 [boringssl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
329 浏览

ssl - Boringssl 可以在裸机 ARM 系统中工作吗?

Boringssl 可以在 ARMv8 裸机平台上工作吗?我尝试使用 aarch64-elf-gcc 构建boringssl,但它拒绝构建。

如果是这样,任何移植指南或建议?

0 投票
1 回答
212 浏览

c++ - 由于 X509 重新定义问题,编译 WebRTC 和 boost::uuid 时出现问题。我应该在哪里创建问题?

我正在尝试使用WebRTC并偶然发现了令人讨厌的问题。同时使用两者:

BoringSSLthird_party用于WebRTC)和boost::uuid由于 X509 重新定义问题,我无法编译我的解决方案。

问题:

BoringSSL 自己定义 X509,所以当我通过自己定义的 boost::uuid 链接 wincrypt.h 时,会出现重新定义问题。每次您尝试使用wincrypt.h或任何其他third_party依赖于它的WebRTC时都会出现此问题。

解决方案:

  1. 我可能会使用 boost::uuid 以外的其他东西

  2. 我可以在BoringSSL文件base.h中添加#undef预处理宏:

这样您就可以在项目的 CMake 中使用

问题将立即得到解决。标志名称无关紧要,只是示例。

我的第二个解决方案更可取,我希望将它包含在 WebRTC 的 BoringSSL 的更多版本中。在 BoringSSL 网站上有一条信息表明:

程序在使用 BoringSSL 时会提供自己的副本,我们会在决定进行 API 更改时根据需要更新所有内容。这使我们能够在很大程度上避免以兼容性为名的妥协。它适用于我们,但它可能不适合您。

我的问题:

这句话是否意味着 WebRTC 以某种方式发布了 BoringSSL 的独特版本?

如果是这样,我应该在哪里解决我的问题?我想做出贡献,以便将来帮助其他人,但我不确定 WebRTC 回购在哪里?去无聊的SSL?

提前感谢您为我清理它。

0 投票
1 回答
690 浏览

java - 为什么 Maven 抱怨 netty-tcnative-boringssl-static 中所谓的缺少方法?

我的 spring-boot 项目中的一个特定依赖项存在一些问题。我正在使用 netty-tcnative-boringssl-static 并将我的 spring-boot 版本从 2.0.5 升级到 2.1.3,现在我收到以下我无法破译的错误消息:

我不完全理解此错误消息,说明的路径是相同的,在我的类路径上我可以找到具有请求方法的库。

我认为可能是由于某种原因 netty-tcnative-boringssl-static 与 spring-boot >2.1.0 不兼容。错误消息中的方法签名让我感到困惑。

setCipherSuite(JLjava/lang/String;Z)Zjava代码中会是什么样子?我有权访问的方法具有此签名public static boolean setCipherSuite(long ctx, String ciphers)

我不确定这是否是真正的不匹配,如果不是,那么我没有想法,如果是,那么我可以通过摆弄不同的版本来解决它。

有人知道吗?

0 投票
1 回答
323 浏览

base64 - 如何在无聊的 SSL 中使用不推荐使用的函数?

我想在android中使用boringssl将AES128加密文本转换为base64编码。我正在使用像“BIO_new(BIO_f_base64());”这样的函数 来实现这一点。编译过程失败,说未定义对“BIO_f_base64()”的引用。

在进一步调试中,我发现虽然这适用于 openssl,但它不适用于boringssl,因为该功能已被弃用。

下面是一段显示 base64 编码的代码(这与 openssl 完美配合):

BoringSSl 包含一个用于弃用函数的单独目录,其中定义了“BIO_f_base64()”。我该如何使用它?

0 投票
1 回答
581 浏览

encryption - EnvoyProxy、Diffie Hellman Key 和 ssl 安全性

我正在尝试在我的服务器上获得 A+ 100% ssl 实验室排名。当我拥有 Nginx 时,我可以在配置 (ssl_dhparam) 中设置Diffie Hellman 密钥。

现在我迁移到EnvoyProxy,但找不到指定 Diffie Hellman 密钥的方法。

Envoy 使用BoringSSL而不是OpenSSL。我深入研究了 BoringSSL 的代码,它有 Diffie Hellman 的参考资料,但特使没有。

你认为呢 ?envoy 是否不如其他反向代理安全?

0 投票
1 回答
293 浏览

ios - Apple 是否接受应用商店中带有静态链接 OpenSSL 的 iOS 应用?

这个问题本质上并不是真正的技术性问题,但可以明确回答是/否,所以如果我在 StackOverflow 上问这个问题,我希望它没问题。

我的场景如下:为了在 iOS 和 Android 之间共享代码,我在应用程序的大部分逻辑中使用 C++。我即将开始为这两个平台编写网络代码,并且我计划利用 OpenSSL 或其衍生产品之一(LibreSSL / BoringSSL)来进行 HTTPS 调用。

OpenSSL/LibreSSL/BoringSSL 将静态链接到我的应用程序,并通过发布新的应用程序版本定期更新。

但是,我不确定苹果是否会在其应用商店中接受这样的应用。据我所知,他们仔细查看了应用程序内部的内容,我想防止在尝试将应用程序发布到应用程序商店时所有代码都已编写但最终被拒绝的情况。

我正在寻找一个明确的是/否答案,Apple 现在是否接受此类应用程序(2019 年)。最好这个答案来自真正知道答案的人,即来自最近做过同样事情的人(2018/2019)。

最近有没有人成功地将这样的应用程序发布到 Apple 的应用程序商店中?

0 投票
0 回答
1184 浏览

ios - NSURLSession/NSURLConnection HTTP 加载失败 (kCFStreamErrorDomainSSL, -9860)

我收到错误:NSURLSession/NSURLConnection HTTP 加载失败(kCFStreamErrorDomainSSL,-9860)

相同的代码在操作系统版本为 11.3.1 的 iPhone 8 中运行良好,但在操作系统版本为 12.2 的 iPhone 6 中无法获取响应。

我已经在 plist 中有以下内容

完整的日志:

2019-06-03 10:55:07.459917+0530 MyApp[12858:2218159] [BoringSSL] nw_protocol_boringssl_input_finished(1543) [C16.1:2][0x102f28c30] 对等方在握手过程中断开连接。发送 errSSLClosedNoNotify(-9816) 警报 2019-06-03 10:55:07.461886+0530 MyApp[12858:2218159] [BoringSSL] nw_protocol_boringssl_input_finished(1543) [C15.1:2][0x102f9a330] 在握手中间断开连接. 发送 errSSLClosedNoNotify(-9816) 警报 2019-06-03 10:55:07.463252+0530 MyApp[12858:2218159] TIC TCP Conn 失败 [16:0x28048db00]: 3:-9816 Err(-9816) 2019-06-03 10 :55:07.466969+0530 MyApp[12858:2218159] TIC TCP 连接失败 [15:0x28048e280]: 3:-9816 Err(-9816) 2019-06-03 10:55:08.087508+0530 MyApp[12858:221806] BoringSSL]boringssl_context_alert_callback_handler(3724) [C17.1:2][0x102d7d020] 警报级别:致命,描述:

TCP连接失败与握手失败有关,但我无法得到握手失败的原因..

代码 :

0 投票
0 回答
78 浏览

ssl - 打印 SSL 结构的字符串版本以进行调试

出于调试的目的,我正在寻找一种以人类友好的方式打印 SSL 结构的少数重要内容的方法。openssl 库中是否已经存在执行此操作的函数?

在某些情况下,我的自定义私钥方法提供程序中的 SSL 握手失败,我一直在寻找打印迄今为止在连接上交换的 SSL 参数的方法。

例如,TL​​S 版本、选择的密码等

0 投票
1 回答
2238 浏览

ios - Xcode BoringSSL 对等断开连接导致应用程序在启动时挂起

最近我开始遇到不一致的 BoringSSL 问题,导致我的 cordova/ionic 应用程序挂起。在我将应用程序从 Xcode 启动到物理连接的测试 iPhone 6 时,大约每 4 或 5 次就会发生这种情况。测试手机仅使用 WiFi(无运营商网络)。有时间找到任何可靠的解决方案或问题的根源是什么。

一些表示它的 DNS,另一些表示它与 Firebase 相关......我已经尝试了这些线程提到的一些修复,但没有一个对我有用。

如果应用程序在初始化时看到此错误,则应用程序会在初始屏幕上挂起。如果它解决了这个问题,那么该应用程序就可以正常工作,我只是nw_protocol_get_output_frames经常看到消息(也不知道这些消息是关于什么的)。

任何人对造成这种情况的原因、在哪里寻找或可能的修复方法有任何想法?

0 投票
0 回答
3137 浏览

ssl - HandshakeException:客户端中的握手错误 - Flutter http.dart 发布请求?

HandshakeException(HandshakeException:客户端中的握手错误(操作系统错误:CERTIFICATE_VERIFY_FAILED:无法获取本地颁发者证书(handshake.cc:352)))在使用 http.dart 包的颤振发布请求中。我该如何解决这个问题?