gpt4 book ai didi

Google TV 配对协议(protocol) -- Go (golang) 的 SSL 握手错误

转载 作者:IT王子 更新时间:2023-10-29 01:28:07 25 4
gpt4 key购买 nike

我正在为 Google TV 配对协议(protocol)编写一个 Go 包。但我似乎遇到了 TLS 握手问题。

sock, err := tls.Dial("tcp", "10.8.0.1:9552", &tls.Config{InsecureSkipVerify: true})

那一行给我一个握手错误。确切的错误消息是:remote error: handshake failure。如果我通过 curl 尝试相同的主机/端口,它也会给出 curl: (35) error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 警报握手失败。

有什么想法吗? Google TV 是否需要客户证书?我在任何地方都没有看到任何关于需要客户端证书的引用。

如果有人想帮助解决这个问题,这里是代码: https://github.com/dustywilson/go-polo

README 文件有简单的代码来检查它。您必须知道您的 Google 电视盒的 IP 地址,因为它不使用 mDNS。如果您(某人,任何人)运行此程序并得到不同的结果,请告诉我。

我已经在 google-tv-remote 浏览了 Google TV Remote 代码.一个更有用的是 google-tv-pairing-protocol这是与我正在做的等效的 Java/Android 项目。当然,我已经倾注了该代码。我认为这是 Go 本身的问题(不太可能),Go TLS 包的问题不知道如何读取 Google TV 的证书(我知道这是一年前的问题),或者我的代码有问题(通常会很有可能,但我只是没有看到)。

顺便说一下,我正在 Logitech Revue 上测试它,它有一个自签名的 SSL 证书。它没有以任何方式 Root 或修改。

当然,我生成的代码将是开源的。感谢您的协助。

最佳答案

客户端证书由 Java 远程客户端在运行时生成,并存储以备将来使用。查看代码:

http://code.google.com/p/google-tv-remote/source/browse/src/com/google/android/apps/tvremote/KeyStoreManager.java

您可能遇到了无效的证书。根据代码,你需要一个特定的CN。

/* 返回应该在新证书中使用的名称。 * 格式为:“CN=anymote/PRODUCT/DEVICE/MODEL/unique identifier” */

关于Google TV 配对协议(protocol) -- Go (golang) 的 SSL 握手错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8381522/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com