[英]Use Kernel functions in userspace
我目前正在嘗試使用以下功能
/usr/src/linux/crypto/aes_generic.c
在用戶空間程序中,我想對分配的內存進行編碼,並使用上述文件的ecnrypt函數。
如何在用戶空間程序中使用這些內核函數?
我試圖在用戶空間程序中包含所需的內核標頭
-I /usr/src/linux/include/
但是我發現我找不到asm / irqflags.h,文件或目錄的錯誤。
這是包含
#include <asm-generic/irqflags.h>
我沒有一個asm目錄,其他兩個帶有上述錯誤的標頭已包含在asm-generic作為目錄中
提前致謝
加密API有用戶空間接口 。 因此,您可以使用AF_ALG接口訪問內核加密API(在Linux內核的2.6.38版本之后)。
這是cryptsetup源代碼中的一些工作示例。
Cryptodev-linux模塊允許您通過/dev/crypto
從用戶空間訪問Linux內核加密驅動程序。 例子可以在這里找到。 好處是您可以從其可能使用的硬件加速中受益。
否則,您需要使用AES庫的許多派生之一來鏈接到您的用戶應用程序。 請參閱此處以獲取列表。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.