JunC1992 发表于 2016-01-13 10:48

我可以在内核中调用动态库吗?

RT
大神们,小弟是个小白。望不吝赐教…

目前有个项目,在用户态进行数据签名,在内核中要进行数据的验证。(使用x509格式证书)
我在用户态使用openssl可以很容易的进行对数据的签名与验证。现在需要把数据验证这一块放到内核中,我好想不能使用openssl。
我找了点资料,linux有自带的crypto api好像可以满足我的需求,但具体api使用资料太少。

有大神有类似的开发经历吗?!求提点。。

Godbach 发表于 2016-01-13 12:24

回复 1# JunC1992

内核空间自成一体,需要调用的东西,可以考虑把代码移植进来。


   

JunC1992 发表于 2016-01-13 13:38

不行,openssl中使用的API大部分包含在ssl与crypto这两个so库中。
代码剥离不出来。
回复 2# Godbach


   

Godbach 发表于 2016-01-13 14:01

回复 3# JunC1992
性能要求高吗,是否可以考虑把这个计算交给用户态执行,然后返回结果给内核。



   

JunC1992 发表于 2016-01-13 16:06

回复 4# Godbach

性能要求一般,这是最后的办法。而且过程中还会存在数据被篡改的可能性。
嗯。如果采用这种方法,用户态验证的结果我可以使用那些方式返回通知kernel呢?!

PS:谢谢你关注和回复。
   

Godbach 发表于 2016-01-13 17:08

回复 5# JunC1992

你的问题就回到了用户态和内核态通信的机制有哪几种了,你可以自行搜索了解一下。

针对你的情况,我觉得 netlink 应该可以满足你的需求。

   

镇水铁牛 发表于 2016-01-13 19:56

内核无法调用动态库,但是可以用静态库实现。
页: [1]
查看完整版本: 我可以在内核中调用动态库吗?