Skip to content

sm3_hash函数

函数名:sm3_hash

函数功能

对输入的字符串执行国密SM3哈希算法计算,支持Base64、Hex两种格式输出哈希结果,满足数据加密、摘要生成的场景需求。

参数规范

参数名类型必填示例特殊说明
inputString"测试数据123"支持直接文本或单元格引用
outputFormatInt0/10=Base64(默认),1=Hex

使用案例

默认Base64格式哈希计算

问题描述:使用默认格式计算字符串SM3哈希值 公式演示

excel
=sm3_hash("测试数据123")

输出效果

text
BVqgyVCOgKCKSyxo7MawIstVaS1b2fprkol2xhyjC90=

Hex格式哈希计算

问题描述:指定格式为Hex计算单元格内文本的SM3哈希值 公式演示

excel
=sm3_hash(A1,1)

输出效果(当A1="测试数据123"):

text
055aa0c9508e80a08a4b2c68ecc6b022cb55692d5bd9fa6b928976c61ca30bdd

技术说明

算法与格式规则

  • 算法:采用国密标准SM3哈希算法,生成256位哈希摘要
  • 输出格式:0=Base64编码字符串(默认),1=小写十六进制字符串

异常处理

错误场景返回值
空文本/空输入#VALUE!
非文本参数#VALUE!
格式参数非数字#VALUE!
计算异常#VALUE!

扩展应用

数据完整性校验

excel
=sm3_hash(A1)=B1  // 对比哈希值,校验数据是否被篡改

批量文本哈希生成

excel
=sm3_hash(C2:C100,1)  // 批量计算区域内文本的Hex格式SM3哈希

注:本函数在WPS 2019+和Excel 365中测试通过