写点什么

龙蜥操作系统上玩转铜锁密码库

  • 2024-01-05
    北京
  • 本文字数:1025 字

    阅读完需:约 3 分钟

龙蜥操作系统上玩转铜锁密码库

编者按:龙蜥操作系统 Anolis OS 支持多计算架构,也面向云端场景优化,兼容 CentOS 软件生态,旨在为广大开发者和运维人员提供稳定、高性能、安全、可靠、开源的操作系统服务。本文为龙蜥社区理事单位蚂蚁集团技术专家张成龙,以阿里云 ECS 为例,在 Anolis OS 8.8 系统上,安装铜锁并演示国密功能。


在 2023 年上半年铜锁项目已经正式捐赠给了开放原子开源基金会,目前正处于孵化期。铜锁项目作为开源的基础密码库,希望能够助力开源操作系统,为用户提供密码学基础能力,解决密码合规等问题。为方便在龙蜥操作系统上的用户使用铜锁密码库,目前已经基于 Tongsuo-8.3.3 源代码构建 RPM 包,发布到龙蜥软件包仓库,支持的架构包括 x86_64 和 Arm64。Tongsuo-8.3.3 主要包括以下更新:


  • 支持 SM4-NI 优化

  • 修复未检查 OPENSSL_memdup 返回值问题

  • 修复多个 CVE 安全漏洞

  • SSL_connection_is_ntls 改成使用预读方式判断是否为 NTLS


下面以阿里云 ECS 为例,在 Anolis OS 8.8 系统上,安装铜锁并演示国密功能。

实战阿里云 ECS + Anolis OS + 铜锁

配置 ECS 操作系统时,选择 Anoils OS 8.8,示例如下。



登录 ECS 后,安装铜锁,步骤如下。


yum -y --enablerepo Plus install tongsuo
复制代码


铜锁安装目录为/opt/tongsuo/,安装成功后,可以查看铜锁版本号:


/opt/tongsuo/bin/openssl version
复制代码

国密协议初探

铜锁支持国密安全传输协议 TLCP,使用铜锁提供的客户端程序,可以访问支持 TLCP 协议的网站,如下所示:


/opt/tongsuo/bin/openssl s_client -connect ebssec.boc.cn:443 -ntls -enable_ntls
复制代码


通过日志可以看到握手成功,对应协议版本为 NTLSv1.1(即 TLCP 1.1),密码套件为 ECC-SM2-SM4-CBC-SM3,截图如下所示。


生成随机数

铜锁支持基于 SM3 算法的软件随机数发生器,符合密码行业标准《GM/T 0105—2021 软件随机数发生器设计指南》,通过铜锁命令行生成随机数,如下所示。


/opt/tongsuo/bin/openssl rand -drbg_type sm3 -hex 128
复制代码


相关链接:


铜锁帮助文档:https://www.yuque.com/tsdoc


铜锁官网:https://www.tongsuo.net/


铜锁代码仓库


  • atomgit:https://atomgit.com/tongsuo/Tongsuo

  • GitHub:https://github.com/Tongsuo-Project/Tongsuo


铜锁(Tongsuo)是一个提供现代密码学算法和安全通信协议的开源基础密码库,为存储、网络、密钥管理、隐私计算、区块链等诸多业务场景提供底层的密码学基础能力,实现数据在传输、使用、存储等过程中的私密性、完整性和可认证性,为数据生命周期中的隐私和安全提供保护能力。


——完——

发布于: 刚刚阅读数: 4
用户头像

还未添加个人签名 2021-07-20 加入

OpenAnolis龙蜥社区 由国内外头部企业联合建立的操作系统开源社区。加入我们,一起打造面向未来的开源操作系统。 社区官网:openanolis.cn|微信公众号:OpenAnolis龙蜥

评论

发布
暂无评论
龙蜥操作系统上玩转铜锁密码库_阿里云_OpenAnolis小助手_InfoQ写作社区