我一直在尝试在linux内核中使用crypto api,我需要做的是打开一个正在打开的文件。我正在使用LSM来捕获那些文件打开。
到目前为止,我正在使用
创建一个struct crypto_shashstruct crypto_shash *tfm;
struct shash_desc desc;
tfm = crypto_alloc_shash("sha1", 0, CRYPTO_ALG_ASYNC);
我假设我应该在使用
后启动它desc.tfm = tfm;
desc.flags = 0;
err = crypto_shash_init(&desc);
一切正常,但我想用
crypto_shash_digest(&desc, ??, ??, sha_hash);
我意识到它希望将散点列表作为其第二个参数,并将散点列表的长度作为第三个参数。我无法弄清楚我应该如何将文件加载到散点列表中,以便将其提供给加密系统。
我已经完成了相当多的阅读,但到目前为止还无法找到有关将文件内容加载到散点列表中的任何细节。所以任何正确方向的指针都会受到赞赏。
由于
答案 0 :(得分:2)
前段时间我做过类似的事。唯一的区别是我计算了ELF部分的哈希值。