linux加密框架 crypto 算法管理 - 算法查找接口 crypto_find_alg

算法查找接口crypto_find_alg

  •  crypto_find_alg函数的处理逻辑比较简单,调用查找接口lookup进行算法查找。如果算法前端frontend定义了查找接口,lookup=frontend->lookup,否则lookup=crypto_alg_mod_lookup(截止到目前为止 版本v5.15.12 不支持,1,frontend的类型是crypto_type,里面没有这个函数接口;2,函数crypto_alg_mod_lookup的返回类型是 crypto_alg)
  • 算法前端frontend的数据类型为struct crypto_type,即通用算法说明中的算法类型常量。加密框架中定义的大部分算法类型常量,如同步哈希算法类型常量crypto_shash_type、异步哈希算法类型常量crypto_ahash_type、块加密算法类型常量crypto_blkcipher_type都未定义lookup接口,因此调用crypto_find_alg函数使用的查找接口都是默认查找接口
  • crypto_alg_mod_lookup,这样crypto_find_alg函数相当于crypto_alg_mod_lookup函数的包裹函数。
  • 输入参数中的算法类型type表示最佳的算法类型,type&mask表示允许使用的算法类型。异步哈希算法实例前端crypto_ahash_type中,type=CRYPTO_ALG_TYPE_AHASH(0x09)表示最佳的算法类型为异步哈希算法,mask=CRYPTO_ALG_TYPE_AHASH_MASK(0x0C),而type&mask=0x08(CRYPTO_ALG_TYPE_HASH)表示只要是哈希算法就行,不强求实现方式。
  • crypto.h - include/linux/crypto.h - Linux source code (v5.15.12) - Bootlin

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值