
从 2.1.0 版本开始,INFINI Easysearch 内置了对国密(SM2/3/4)算法的支持,实现了全链路国密合规,满足等保及商用密码应用安全性评估要求。本篇以 Kylin-Server V11 操作系统和 Easysearch 2.3.0 进行演示。
Linux 主机安装 Tongsuo
Easysearch 基于 铜锁(Tongsuo)提供国密 TLCP 双证书能力,支持 SM2/SM3/SM4 加密套件。下载完 Easysearch 软件包后解压进目录,执行脚本安装铜锁。
bin/install-tongsuo-local.sh --version 8.4.0

安装完后会有提示切换到铜锁。

能正常查看版本信息,说明安装、切换都正常。

一键初始化(单节点 TLCP)
如需在单节点场景快速完成证书生成、TLCP 配置写入和初始密码设置,可直接使用:
EASYSEARCH_INITIAL_ADMIN_PASSWORD='EasysearchP@ssw0rd!' bin/initialize.sh --tlcp -s
执行上面的脚本会自动生成证书,修改 easysearch.yml 证书设置。



启动 Easysearch
从 Easysearch 的启动日志中可看到国密(Chinese SM algorithms)正常加载,并用来创建 SSLContext 。

客户端:用国密栈访问
curl 默认链接的 OpenSSL 密码库不支持国密协议(TLCP),因此 curl 访问 Easysearch 服务时加密协议最终回落到标准 TLS 1.3,套件为国际通用的 TLS_AES_128_GCM_SHA256。

用 Easysearch 发行包自带的 bin/tlcp-curl.sh 访问 Easysearch,可以看到加密套件是国密 TLS_SM4_GCM_SM3。

Java 应用默认使用的 OpenJDK 没有内置国密算法支持,所以不能直接走国密加密;要么换成支持国密的 JDK,要么在现有 JDK 中额外引入并注册国密算法实现。

相关阅读
本文地址:http://elasticsearch.cn/article/15929