当前位置: 首页 > news >正文

Go 1.22 remote error: tls: handshake failure

Golang 1.22 remote error: tls: handshake failure

1.22之前运行下面代码是没有错误

package mainimport ("crypto/tls""fmt""net/http"
)func main() {http.DefaultTransport.(*http.Transport).TLSClientConfig = &tls.Config{InsecureSkipVerify: true}resp, err := http.Get("https://xxxxxxxxx")if err != nil {panic(err)}fmt.Println("status:", resp.Status)
}

但当golang升级1.22后就会出错,主要是crypto/tls 库已将基于 RSA 密钥交换的密码套件从默认列表中移除。这是因为基于 RSA 密钥交换的算法被认为是不够安全的,存在一些潜在的安全风险。

来源:https://pkg.go.dev/crypto/tls

// CipherSuites is a list of enabled TLS 1.0–1.2 cipher suites. The order of
// the list is ignored. Note that TLS 1.3 ciphersuites are not configurable.
//
// If CipherSuites is nil, a safe default list is used. The default cipher
// suites might change over time. In Go 1.22 RSA key exchange based cipher
// suites were removed from the default list, but can be re-added with the
// GODEBUG setting tlsrsakex=1.
CipherSuites []uint16

修复方法:设置ENV

os.Setenv("GODEBUG", "tlsrsakex=1")

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • windows10 安装CUDA教程
  • 【学习笔记】无人机系统(UAS)的连接、识别和跟踪(五)-无人机跟踪
  • 【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 堆内存申请(100分) - 三语言AC题解(Python/Java/Cpp)
  • 前端页面是如何禁止被查看源码、被下载,被爬取,以及破解方法
  • Apache Bigtop 正式支持 openEuler,共创大数据新生态
  • 智能火灾预警系统:基于深度学习的火焰与烟雾检测平台
  • 力扣355.设计推特
  • 谷粒商城实战笔记-43-前端基础-Vue-使用Vue脚手架进行模块化开发
  • 【人工智能】Transformers之Pipeline(五):深度估计(depth-estimation)
  • 第三篇 Vue项目目录结构介绍
  • (35)远程识别(又称无人机识别)(二)
  • Java后端开发岗位面试经验总结:技术深度与实践能力的考验
  • CSS(二)——CSS 背景
  • 【C++】:AVL树的深度解析及其实现
  • 【YashanDB知识库】filter or改写问题
  • Angular Elements 及其运作原理
  • Angular6错误 Service: No provider for Renderer2
  • canvas 高仿 Apple Watch 表盘
  • echarts的各种常用效果展示
  • eclipse(luna)创建web工程
  • ES10 特性的完整指南
  • javascript 哈希表
  • JavaScript设计模式与开发实践系列之策略模式
  • SAP云平台运行环境Cloud Foundry和Neo的区别
  • Spring核心 Bean的高级装配
  • 高性能JavaScript阅读简记(三)
  • 每天一个设计模式之命令模式
  • 面试总结JavaScript篇
  • 前端之React实战:创建跨平台的项目架构
  • 通过几道题目学习二叉搜索树
  • 源码安装memcached和php memcache扩展
  • 追踪解析 FutureTask 源码
  • 自制字幕遮挡器
  • ​14:00面试,14:06就出来了,问的问题有点变态。。。
  • ​LeetCode解法汇总2696. 删除子串后的字符串最小长度
  • #define、const、typedef的差别
  • (2009.11版)《网络管理员考试 考前冲刺预测卷及考点解析》复习重点
  • (pytorch进阶之路)扩散概率模型
  • (安卓)跳转应用市场APP详情页的方式
  • (附源码)python旅游推荐系统 毕业设计 250623
  • (文章复现)基于主从博弈的售电商多元零售套餐设计与多级市场购电策略
  • (杂交版)植物大战僵尸
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .net core webapi 部署iis_一键部署VS插件:让.NET开发者更幸福
  • .net core使用EPPlus设置Excel的页眉和页脚
  • .NET MAUI Sqlite数据库操作(二)异步初始化方法
  • .net 前台table如何加一列下拉框_如何用Word编辑参考文献
  • .NET单元测试
  • .NET开源的一个小而快并且功能强大的 Windows 动态桌面软件 - DreamScene2
  • .NET微信公众号开发-2.0创建自定义菜单
  • .net最好用的JSON类Newtonsoft.Json获取多级数据SelectToken
  • .set 数据导入matlab,设置变量导入选项 - MATLAB setvaropts - MathWorks 中国
  • ?
  • [ IOS ] iOS-控制器View的创建和生命周期
  • [AIGC] Java List接口详解