你好,我的新名字叫“铜锁/Tongsuo”

支持国密ssl的curl编译和测试验证(上) 本文详细描述了支持国密ssl和http2的curl的编译和测试验证的过程。 阅读详情

60f1b9cc4b68a8768c7a97595a169892.gif

文|杨洋(花名:凯申 )

铜锁开源密码库创始人

蚂蚁集团高级技术专家

5b0f3ba548feb8e612dd4f7d1f1a3544.jpeg

本文 2816 字 阅读 8 分钟

再见 BabaSSL ,你好 Tongsuo!

BabaSSL 这个名字由于其历史上的若干特殊原因,导致了其看起来是主要 SSL/TLS 协议的密码学产品,这其实并不符合整个产品的功能特性,名字本身也不够中立,这会让用户产生一定程度的误解。

目前 BabaSSL 在积极推进向开放原子开源基金会的捐赠行动,并结合社区未来发展的方向,现决定对 BabaSSL 项目进行更名。新名字需要更加中立化,而且需要体现项目的功能特性。基于这些考虑,计划取新名字为:铜锁,对应拉丁字母名称为铜锁的汉语拼音“Tongsuo”。铜锁是在中华文明 5000 年历史的进程中得到了广泛应用的安全设施,且小巧、设计精妙,极具中国传统特色,符合密码库的产品特色和发展目标。

一、

BabaSSL  从何而来,为何而改?

BabaSSL 于 2019 年诞生在蚂蚁和阿里集团内部,是基于 OpenSSL 1.1.1 版本 fork 而来的一个变种版本。创建 BabaSSL 项目的动机是在蚂蚁和阿里内部得到一个统一的 OpenSSL 变种版本,以便使用此统一版本来支撑蚂蚁和阿里内部的各种业务。这样可以减小各个业务方维护 OpenSSL 的成本,实现密码学能力的统一管理和维护,进而降低潜在的安全风险。

针对蚂蚁和阿里内部的业务特点,BabaSSL 需要采用和 OpenSSL 完全不同的发展路线。简单来说,BabaSSL 需要覆盖的场景非常的多样化,包括移动端、服务器端、资源受限的嵌入式环境等。而且在算法和密码学特性的支持上,蚂蚁和阿里的业务对前沿的技术存在较大需求,因此要求 BabaSSL 需要采用相对激进的演进策略,但还要确保很高的质量标准以应对蚂蚁和阿里的业务规模。所以我们当年使用 Brisk and Better Assured Cryptography and SSL/TLS toolkit 来命名这个密码学基础库,并缩写为 BabaSSL。

随着 BabaSSL 项目的发展,我们发现除了蚂蚁和阿里内部的业务对其有着重大的依赖之外,业界也对国密合规和前沿密码学技术存在较大需求。因此在 2020 年 10 月份,我们将 BabaSSL 进行了开源,并维持 BabaSSL 名称不变。随着 BabaSSL 开源社区的发展、用户数量的增多,我们逐渐发现 BabaSSL 这个名称已经无法继续肩负整个社区更大的目标和使命,因此取一个新名字就十分必要。

二、

我的新名字——"铜锁/Tongsuo"

经过与开源社区小伙伴们共同探讨,并与开放原子开源基金会沟通后,我们最终选定了 “铜锁/Tongsuo” 作为 BabaSSL 开源项目的新名字,其含义如下:

1.铜锁的设计形象和密码学的锁形象异曲同工,都是保障安全的技术

2.铜锁的历史悠久,应用十分广泛

3.铜锁诞生于中国汉代,流行至明清,极具中国特色,代表了中国的传统文化

4.铜锁设计精妙、体积小巧,安全性高

铜锁的这些特点,符合 BabaSSL 的项目定位和发展目标:适应场景最广、性能最好、可靠性最高且监管合规的开源密码学基础库。正如铜锁是中国 5000 年历史长河中为人民生命财产提供保证的最基础元素,“铜锁密码库”作为信息安全领域基础组件、中国网络空间安全和数据安全的核心基础元素,也希望能为中国人民的信息和财产安全贡献力量。

铜锁的拉丁字母名称则直接采用铜锁的汉语拼音:Tongsuo,除此之外不再赋予其他含义解释,目的是集中体现中国的品牌名称和文化价值。

三、

更名后的一系列操作

我们近期会针对 BabaSSL 开源项目进行如下的更名举措,其中部分举措可能会对用户造成影响,需额外注意:

「代码库名称变更」

1.在 Github 上创建新的 Tongsuo 组织,并将 BabaSSL 代码仓库更名为 Tongsuo 后迁移其下;

2.BabaSSL 代码仓库的转地址会在 Github 上自动跳转到新的 Tongsuo 仓库地址,方便已有用户访问;

3.新的 Tongsuo 代码仓库的 master 分支变更为基于 OpenSSL 3.0 代码基础,并整体迁移为 Apache License 2.0 开源许可证。由此进行相关分支变更如下:

a.现有的 master 分支更名为 master-babassl,并设置为只读模式,即不再接受新的代码合并,只留做参考用;

b.将 master-tongsuo 分支更名为 master,作为下个大版本 tongsuo-8.4.0 的开发分支。由于新的 master 分支和旧的 master 分支之间没有代码提交的逻辑关系,因此需要用户手动重新检出新的master 分支并覆盖本地的旧 master 分支内容。在此过程中如果你的本地 master 分支存在代码修改,请注意保存以免代码修改丢失。

「网站改名」

1.启动 tongsuo.net 网站,并更新网站内容/品牌;

2.将对 babassl.cn 网站的访问重定向到 tongsuo.net;

3.新增 tongsuo.readthedocs.org 网站,作为铜锁项目的文档库。

「Release 改名和版本策略」

1.在 8.3.x 版本中将沿用 BabaSSL 名称,即 BabaSSL 8.3.1 等后续版本;

2.从 8.4.0 开始更名为 Tongsuo。Tongsuo 延续 BabaSSL 的版本编号,不再重新定义编号。主要是考虑软件版本的升级和比较的前后兼容性问题。新的 release 包名称为:tongsuo-a.b.c.tar.gz 或 tongsuo-a.b.c.zip。

「代码 API 命名修改」

需要考虑兼容问题,因此 BABASSL_ 开头的 API 还需持续保留,直到 9.0 大版本发布。

四、

期待与你共“铜”成长

经过这一年的努力,铜锁/Tongsuo 开源密码库项目通过了开放原子开源基金会的 TOC 答辩。接下来我们的重心是继续推进铜锁 8.4.0 版本的研发工作,该版本会在半同态加密算法等前沿密码学领域进行相关特性的大力支持,为铜锁的用户带来隐私计算领域的底层密码学原语能力。

希望能有更多朋友参与进来,与我们共同去完善铜锁/Tongsuo,不论你所处哪一个研究领域,我们都非常期待和欢迎你的加入。此外,我们于近期建立了铜锁(BabaSSL)的开源项目钉钉群,方便铜锁密码库的用户们进行沟通交流,期待着能有更多的社区朋友在铜锁(BabaSSL)共同成长!

钉钉用户交流群群号:44810299

钉钉交流群二维码👇

25a6c0ef2286ff3d8c52ae6324dc27c2.jpeg

铜锁(BabaSSL)的更名涉及到较多的现有资产名称变更事宜,例如代码库改名、文档内容名称替换等。具体的相关进展和状态,我们会及时在上述钉钉群中向大家通告。

 了解更多...

铜锁/Tongsuo Star 一下✨:
https://github.com/BabaSSL/BabaSSL

   本周推荐阅读  

8b6600e26fc042c19b88cf67fae58cc7.png

BabaSSL:支持半同态加密算法 EC-ElGamal

a7785ffd5deeb29472b3a0274e30da06.png

BabaSSL 发布 8.3.0|实现相应隐私计算的需求

0c87a1c9bbd2ad00a59f284b4cd3e5bd.png

Tengine + BabaSSL ,让国密更易用!

bbcd7aa0fa90e4784458d2ee3dc7209e.png

TLS 握手带宽直降 80%,BabaSSL 是怎么做到的?

228f8af2e6b286fd20033dedd9b9648b.jpeg

PostgreSQL国密通信实战:基于铜锁配置TLCP双证书 SSL/TLS协议是保障网络通信安全的基础技术,通过非对称加密、对称加密和哈希算法实现身份认证与数据加密。在金融、政务等对数据安全有严格要求的领域,国密算法(SM2/SM3/SM4)及国密传输协议(TLCP)已成为满足合规要求的重要技术路径。TLCP采用双证书机制,提升了安全性与灵活性。本文聚焦于在PostgreSQL数据库中实现国密通信的工程实践,详细阐述了如何选用铜锁(Tongsuo)作为国密算法库替代OpenSSL,并完成从源码编译、国密双证书生成到服务配置的全过程,为需要在PostgreSQL环境中 阅读详情

相关推荐

从零构建支持国密SSL与HTTP/2的Curl工具链

本文详细指导如何从零编译构建支持国密SSL与HTTP/2的定制化Curl工具链。通过依次编译安装铜锁(Tongsuo)SSL库、nghttp2库,并应用补丁编译Curl,最终生成一个功能完备的`gmcurl`工具。文章提供了完整的编译步骤、配置参数解析以及关键的测试验证方法,帮助开发者打造适用于国密合规场景的高效网络调试工具。

weixin_28839549的博客 450

铜锁 (Tongsuo) 8.4.0-pre2 发布,开源基础密码库

铜锁 / Tongsuo(原 BabaSSL)是一个提供现代密码学算法和安全通信协议的开源基础密码库,为存储、网络、密钥管理、隐私计算等诸多业务场景提供底层的密码学基础能力,实现数据在传输、使用、存储等过程中的私密性、完整性和可认证性,为数据生命周期中的隐私和安全提供保护能力。发布内容:Tongsuo 8.4.0-pre2。发布时间:2023 年 8 月 17 日。

Jdjdjjdjdjdje的博客 787

本地语音识别服务国密HTTPS安全部署实战:双证书配置与Nginx优化

HTTPS作为保障网络通信安全的基石,通过TLS/SSL协议对传输数据进行加密,有效防止中间人攻击与数据窃听。其核心原理在于非对称加密握手与对称加密传输的结合,为Web应用提供了身份认证、数据完整性与机密性保障。在数据安全日益受到重视的今天,HTTPS不仅是提升用户体验的技术手段,更是满足合规性要求的必要选择。特别是在涉及敏感数据的本地化部署场景中,如语音识别服务,部署HTTPS能确保音频与文本数据在传输过程中的安全。本文以FireRedASR-AED-L本地语音识别项目为例,深入探讨如何为其配置支持国密算

HJ921004的博客 353

Netty集成国密开源基础密码库Tongsuo

本次完成了Tongsuo TLCP协议的四种国密套件;X86架构的编译。TLSv1.3的TLS_SM4_GCM_SM3套件的支持。ARM架构、PPC架构、Windows的编译。mac系统一般服务器环境没有应用场景,有能力的小伙伴可以帮忙测试一下。时代的车轮在加速的运转,在有限的视野里也要不断地追赶。铜锁开源密码库 · 语雀铜锁/Tongsuo(原BabaSSL)是一个提供现代...https://www.yuque.com/tsdoc。

x1075339587的博客 1万+

Tongsuo(铜锁)项目介绍 - 实现国密SSL协议

本文章主要介绍了铜锁项目的编译,以及使用铜锁项目实现国密SSL通信、搭建支持国密SSL协议的Nginx服务器、支持国密SSL协议的libcurl的使用。

new9232的博客 2986

密码学-国密 + TLS 1.3 Rust-Java-Python-Go SDK 一键接入

密码学_国密 + TLS 1.3 Rust_Java_Python_Go SDK 一键接入 项目来自于https://github.com/Tongsuo-Project/Tongsuo,是一个获得星较多的项目。 密码学(Cryptography)是一门**研究如何安全通信**的学科,核心任务可以概括为: > **“让不该看的人看不懂,让该看的人看得懂,并且确保信息在传输、存储过程中不被篡改或否认。”** --- ### 1️⃣ 历史速览 | 时代 | 典型技术 | 特点 | |---|---|---| | 古典 | 凯撒、维吉尼亚 | 替换/移位,靠保密算法 | | 近代 | Enigma | 机械转子,二战实战 | | 现代 | AES、RSA、ECC | 数学难题,算法公开、密钥保密 | --- ### 2️⃣ 三大核心目标 | 术语 | 含义 | 日常例子 | |---|---|---| | **机密性** Confidentiality | 信息不被泄露 | HTTPS 加密网页 | | **完整性** Integrity | 信息不被篡改 | 软件哈希校验 | | **认证/不可否认** Authentication & Non-repudiation | 身份真实 + 事后无法抵赖 | 数字签名合同 | --- ### 3️⃣ 两大算法家族 | 类型 | 代表算法 | 场景 | |---|---|---| | **对称加密**(一把钥匙) | AES、ChaCha20 | 本地盘加密、VPN 流量 | | **非对称加密**(公钥+私钥) | RSA、ECC、SM2 | TLS 握手、数字签名、区块链 | --- ### 4️⃣ 现代密码学工具箱 | 工具 | 作用 | 示例 | |---|---|---| | **哈希** SHA-256

TLS 握手带宽直降 80%,BabaSSL 是怎么做到的

文|张成龙(花名:刻一)蚂蚁集团技术专家负责 BabaSSL 密码库产品、OpenSSL 贡献者本文3085字 阅读 5分钟|前言|随着 5G 网络的建设,加速了移动互联网应用的发...

金融级分布式架构 1360

Coppelia Sim (v-REP)仿真 机器人3D相机手眼标定与实时视觉追踪 (一)

先把这连个都添加到场景中,然后把kinect的depth相机拖到vision sensor中,把kinect的script也拖到vision sensor中,同时要注意修改深度相机的坐标,及修改script,删掉/rgb部分。由于需要导入到仿真场景中PDF文件不能直接导入,所以需要生成图下文件,使用windows自带的画图工具,生成以厘米为单位的图像格式,大小和标定板的设置大小一直。可以生成需要用的标定板的文件,设置标定板的大小,棋盘格的大小,等相关的参数,之后可以保存PDF文件。设置plane的大小。

hong3731的专栏 1753

你好,我的新名字叫 “铜锁 / Tongsuo”

再见 BabaSSL ,你好 Tongsuo!

金融级分布式架构 928

Manus通用AI智能体完全使用指南(2025最新版)——从注册到高阶技巧全解析

Manus通用AI智能体完全使用指南(2025最新版)——从注册到高阶技巧全解析

m0_69718028的博客 8117

深入剖析:功率放大电路设计精髓——从理论到实践

输入信号首先被调制(通常是PWM脉宽调制)成高频开关信号,驱动功率开关管(MOSFET),再通过LC低通滤波器滤除高频分量,还原出放大的音频信号。在靠近功放板电源引脚处放置足够容量的电解电容(如100uF - 1000uF)和高频瓷片电容(如0.1uF)并联进行电源去耦,抑制低频和高频干扰,防止低频振荡(Motorboating)和高频自激。,堪称电子世界里的“能量转换器”。当输入信号在零附近(即两个器件切换导通的区域)时,由于器件的开启电压(Vbe或Vgs)不为零,输出波形会出现明显的衔接不流畅的失真。

Zihan2558的博客 1697

开源项目文档社区化!Tongsuo/铜锁实践

文|杨洋(花名:凯申)铜锁开源密码库创始人蚂蚁集团高级技术专家本文1284字 阅读5分钟1前言如大家所见,针对铜锁开源密码库(https://github.com/Tongsuo-Project)的文档,我们正在逐步地进行一些改革。其中,最大的一个变化是:我们把原来放在 readthedocs.org(简记 rtfd.io)上的教程和说明文档转移到了语雀上。为此有必要和大家解释一下,这其...

金融级分布式架构 1525

ArcGIS基于DEM提取微流域单元(附练习数据下载)

流域作为一个相对独立的地理单元,与行政区的划分有着本质上的区别。流域的划分更注重自然因素,流域作为一个综合的自然整体,在其内部形成了一个天然的物质与能量流动的场所,并通过水流的作用,与周围的区域进行物质和能量的交换。流域的精确划分作为一个研究的基础工作,那么接下来给大家说一下利用DEM提取小流域的案例教程——以贵州省遵义市正安县为例。 1 数据获取 地理空间数据云(http://www.gscloud.cn/),数据分辨率为30m。也可直接点击这篇直接下载→全国30m90mDEM下载。 若想要获得更高精度.

qq_43173805的博客 4834

Tongsuo/铜锁|「开放原子开源基金会」拜访篇

文|杨洋(花名:凯申)铜锁开源密码库创始人蚂蚁集团高级技术专家本文500字 预计阅读时间3分钟2023 年 3 月,铜锁密码学开源项目的研发和运营团队拜访了位于北京的开放原子开源基金会(以下简称基金会),并就 2023 年开源项目运营计划进行了深入沟通。双方同意在项目运营层面展开更加积极的交流,并在 2023 年中对基金会主导的重点工作进行全面共建。铜锁项目团队将积极参与正在推进的“开放...

金融级分布式架构 1003

信号输入到底要不要接GND?单端与差分输入的接地选择与抗干扰分析

在电子工程与工业现场中,接地是信号完整性的基石。电压本身是相对值,任何测量都需要一个公共参考点,这就是地(GND)在信号输入中的核心作用。单端输入依赖信号源与接收端共地,以GND为基准还原信号;差分输入则直接测量两根信号线之间的差值,天然不依赖本地地电位,因此能有效抑制共模干扰和地环路噪声。实际选型时,需要根据传感器类型、传输距离、地电位差大小权衡:短距离共地良好的场景可用单端,长距离或高干扰环境应优先考虑差分或隔离方案。本文从接地原理出发,结合实际接线与故障排查经验,帮助工程师在PLC、采集卡和传感器链路

weixin_28703507的博客 311

费雪的未来增长评估:预测颠覆性技术的影响

本文旨在提供一个系统性的框架,用于评估和预测颠覆性技术的增长轨迹。我们将重点关注费雪增长模型(Fisher-Pry Model)这一经典技术扩散理论,探讨其在现代技术预测中的应用价值。文章首先介绍费雪增长模型的基本概念,然后深入其数学原理和算法实现。随后展示实际应用案例,讨论工具资源,最后探讨未来发展趋势。每个部分都包含详细的技术实现和理论分析。费雪增长模型(Fisher-Pry Model):一种描述技术替代过程的S型增长模型,用于预测新技术取代旧技术的速率。

欢迎来到我的优快云空间!这里聚焦AI大模型应用实战,分享前沿技术、实战案例与开发经验。 928

Tongsuo学习(一)

可以发现,优化的sm2算法和未优化的sm2算法在签名和验签性能上差别不大,没有达到理论的性能提升。图中,可见在目录中编译了4个文件夹分别为bin,include,lib64,ssl。发现出现报错,这是因为并没有在环境变量中导入openssl的两个共享库。首先解压源码文件,并在进入源码文件的终端,通过如下的代码进行编译。解决之后再次测试,tongsuo二进制程序正确运行,配置成功。, 这里可以根据自己的不同需求去进行安装。从图中可见,该优化特性未被打开。命令,然后编译安装过程同上。配置过程同1,不过加入了。

dwh1094723584的博客 3572

YOLOv12改进专栏目录 | 本专栏持续更新500+篇内容 | 包含各种卷积、主干网络、各种注意力机制、检测头、损失函数、小目标检测改进、二次创新模块、独家创新等几百种创新点改进

《YOLOv12高效涨点改进专栏》提供500+创新改进方案,涵盖卷积、主干网络、注意力机制等模块优化,适用于检测、分割等任务。改进点来自顶会论文和个人经验,支持多种模型版本和任务场景。专栏包含详细教程、数据集增强、性能评估工具等,帮助科研人员快速实现模型优化和论文发表。提供完整运行项目和环境配置指导,适合计算机及相关专业研究人员使用,持续更新保障长期科研需求。

Ai缝合怪、助力小伙伴高效发论文 2303

Apache APISIX 玩转 Tongsuo 国密插件

文|罗泽轩Apache APISIX PMC本文通过解读国密的相关内容与标准,呈现了当下国内技术环境中对于国密功能支持的现状。并从 API 网关 Apache APISIX 的角度,带来有关国密的探索与功能呈现。本文3446字 阅读11分钟1. 什么是国密顾名思义,国密就是国产化的密码算法。在我们日常开发过程中会接触到各种各样的密码算法,如 RSA、SHA256 等等。为了达到更高的安...

金融级分布式架构 2133

从 Token 到 Agent:一文串起 AI 大模型核心概念

摘要:本文系统解析了现代AI系统的八大核心概念:Token(语言处理的最小单位)、Context(AI的短期记忆)、Prompt(指令接口)、Tool(能力扩展器)、MCP(工具生态协议)、Agent(自主智能体)和AgentSkill(专业技能封装)。文章揭示了这些概念如何共同构成AI从基础语言理解到自主决策的技术脉络,重点阐述了Token对计算成本的影响、Prompt工程的重要性、Tool如何突破AI的能力边界,以及Agent如何通过"感知-规划-执行-反思"循环完成复杂任务。最后指

jundao1997的专栏 249

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

铜锁密码Java/Python实现

铜锁密码Java/Python实现 学习记录 铜锁密码铜锁密码Java/Python实现前言一、Java实现方式二、Python实现总结 前言 提示:此题摘录《犯罪大师关卡题目》 一、Java实现方式 伪代码如下: public class CodedLock { /*密码锁字体*/ final String[] objsStrings = {"由", "中", "人", "十", "大", "王", "夫", "井"}; /*十二地支与十二生肖一对一得方式*/ fi

Daeker的博客 628

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Tongsuo 支持半同态加密算法 Paillier

文|王祖熙(花名:金九)蚂蚁集团开发工程师负责国产化密码库 Tongsuo 的开发和维护专注于密码学、高性能网络、网络安全等领域本文4316字 阅读10分钟1. 背景在《Tongsuo 支持半同态加密算法 EC-ElGamal》中,已经阐述了同态和半同态加密算法的背景和原理,可以移步查阅。总之,同态算法在隐私计算领域有着重要的作用,目前应用比较广泛的是 Paillier 和 EC-ElG...

金融级分布式架构 886

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

国内开源密码库

罗列下国内开源的密码库资源,不完全统计。3、华为 - openHiTLS。4、腾讯 - KonaSSL。2、阿里 - tongsuo。5、江南天安 - TASSL。1、北大 - GMSSL。

softt的博客 902

安全攻防 - 国密 SSL / TLCP 接入手把手系列

本文介绍了一套面向国密SSL/TLCP协议初学者的开发指南系列博客。该系列以Spring Boot+Forest+OkHttp客户端接入TLCP服务端为主线,系统性地讲解了国密SSL相关知识体系,包括:SSL/TLS基础概念、国密算法标准背景、TLCP双证书机制等理论内容,以及证书配置、Provider集成、SSLContext构建等实践环节。系列采用渐进式教学,包含10篇技术文章,从基础概念到代码实现再到生产配置,并提供了Web联调页面和错误排查手册。特别强调理解协议原理而非单纯代码实现,帮助开发者规避国

小工匠 611

铜锁openssl下windows编译

安装步骤

qq_25762789的博客 1417
上一篇: 「活动推荐」探索未来:数字科技
下一篇: SOFA Weekly|Meetup 广州站、本周 QA、本周 Contributor
SOFAStack
博客等级 码龄7年 747粉丝 389原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值