为了账号安全,请及时绑定邮箱和手机立即绑定

通过不安全的网络轻松进行安全连接(两个端点均受完全控制)

通过不安全的网络轻松进行安全连接(两个端点均受完全控制)

Go
婷婷同学_ 2021-05-11 13:14:24
我需要通过不受信任的网络连接客户端和服务器。我已经考虑过使用TLS(crypto / tls),但是据我了解,我首先需要创建一个crypto / x509.Certificate。但是我感到不知需要传递给x509.CreateCertificate()函数的所有参数-它说它需要以下所有字段:序列号,主题,NotBefore,NotAfter,KeyUsage,BasicConstraintsValid,IsCA,MaxPathLen,SubjectKeyId,DNSNames,PermittedDNSDomainsCritical,PermittedDNSDomains。我对这两个端点都拥有完全控制权,因此我认为我不需要任何过期或失效支持/参数(我可以随时更改客户端和服务器上的密钥)-因此我可以跳过NotBefore和NotAfter(?还是必须设置它们?)。我应该在其他所有字段中输入什么?为什么要避免任何漏洞?另外,我是否可以将相同的私钥/公钥对用于双向身份验证(客户端到服务器以及服务器到客户端),还是必须使用2对?或者,有什么我可以使用的比TLS更简单的东西吗?但是请注意,我需要两种方式进行身份验证。编辑:我根据接受的答案中的建议以及来自generate_cert.go的密钥生成代码创建了一个简单的库-请参阅:github.com/akavel/tunnel
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 220 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信