sm3_hash函数
函数名:sm3_hash / sm3_hash
函数功能
对输入字符串进行 SM3 哈希计算,并根据参数选择返回 Base64(默认)或 Hex 格式的哈希值。 SM3 是国密算法中常用的安全哈希函数,适用于数据签名、校验等安全场景。
参数规范
| 参数名 | 类型 | 必填 | 示例 | 特殊说明 |
|---|---|---|---|---|
input | String | 是 | "HelloWorld" | 待计算哈希的原始字符串 |
outputFormat | Number | 否 | 1 | 0 = Base64(默认),1 = Hex |
使用案例
基础哈希计算(Base64输出)
问题描述:对文本计算SM3哈希并返回Base64格式 公式演示:
excel
=sm3_hash("HelloWorld")输出效果(示例):
text
RFJu66kjW64z8rq4/x+cqJZbWdWL6Cr4ER8zagDBxDI=Hex格式输出
问题描述:生成SM3哈希并以Hex(十六进制)表示 公式演示:
excel
=sm3_hash("HelloWorld",1)输出效果(示例):
text
44526eeba9235bae33f2bab8ff1f9ca8965b59d58be82af8111f336a00c1c432校验数据完整性
问题描述:验证用户上传内容是否被篡改 公式演示:
excel
=IF(sm3_hash(A2,1)=B2,"一致","不一致")输出效果:
text
一致异常处理
| 错误场景 | 返回值 |
|---|---|
| 空文本 | #VALUE! |
| 运算异常 | #VALUE! |
生成业务参数的哈希摘要,用于后续数字签名。
多系统数据比对
excel
=IF(sm3_hash(D1,0)=E1,"验证通过","验证失败")快速对比跨系统传输的数据是否一致。
注:本函数在 WPS 2019+ 和 Excel 365 中测试通过