设明文M=m1m2…mn将公钥密码体制作为基础用公钥PK及初始变量IV借助CBC加密消息分组m1m2…mn得到密文分组c1c2…cn。

即使有合理的假设可说明此类Hash函数是安全的但因其计算效率太低所以此类Hah函数并无实用价值。

设明文M=m1m2…mn用分组密码体制的CBC模式输入初始变量IV与对称密钥k加密消息分组m1m2…mn得到密文分组c1c2…cn。把输出的最后的密文分组cn当做Hash函数的输出值H(M)。

通常也可以使用CFB(密文反馈模式)或KBC(密钥链接模式)加密产生消息摘要。如果使用KBC模式时可以把明文分组m1加密得到的密文分组c1作为密钥去对m2加密用得到的结果c2作为密钥再对m3加密这样下去直到最后得到mn的密文cn则cn就是所求得的消息摘要。

基于分组密码的CBC、CFB与KBC工作模式的Hash函数中密钥k是不可以公开的。若密钥k公开就会促使攻击者构造消息碰撞特别轻易。

直接构造Hash函数不是基于所有假设与密码体制它是借助直接构建复杂的非线性关系达到单向性要求来设计单向Hash函数。典型的这类Hash函数有MD4、MD5、SHA-1、SHA-256等算法。