首页 存档 技术 查看内容

Linux加解密支持模块代码总体描述 1.总体描述 1.1.概述

2018-3-30 13:00 |来自: 互联网 282 0

摘要: 1.总体描述 1.1.概述 Linux加解密支持模块主要是对消息、文件、目录等信息的安全性进行保护,防止非授权人员窃取敏感信息。Linux内核2.5.45开始引入加密算法。起初的加密算法采用经典的算法,比如DES、Hash以及压缩 ...

1.总体描述

1.1.概述

Linux加解密支持模块主要是对消息、文件、目录等信息的安全性进行保护,防止非授权人员窃取敏感信息Linux内核2.5.45开始引入加密算法。起初的加密算法采用经典的算法,比如DESHash以及压缩算法等基本算法。随着密码学的不断发展和对通信消息保密要求的提高,Linux内核对加密算法不断丰富,提供了各种类型的加密算法。到linux内核3.5.4已经加入了很多其他算法,极大的丰富了算法库。同时加密的应用也在不断扩展,不仅支持原有的基本的信息加密和IPSec协议,同时支持硬件的加密驱动、硬件随机数产生器、文件系统加密以及应用于可信计算等等。研究Linux加解密算法内核实现,要从算法的框架、算法里面涉及的主要函数以及内核如何实现算法等方面进行分析。同时给出Linux内核对加解密的特性支持以及针对内核API给出调用演示场景。Linux加解密支持模块整体的操作见图1-1。


图1-1 内核加解密整体操作顺序图

1-1清楚的说明了Linux加解密模块的运作过程,整体图的外围是内核模块,也就是说内核加解密是以内核模块的形式实现。用户要调用一种具体内核算法进行消息处理时,内核首先会查找对应的算法是否属于某个算法模板,在算法模板的基础上分配算法实例,然后在算法库中查找是否存在要调用的算法。如果不存在就要向内核添加一个同名的算法实现,接着为算法分配算法对象并调用具体算法API进行消息处理。

1.1.涉及到的源码范围说明

linux-3.5.4/crypto:这个目录下主要给出了Linux内核加密算法的实现模块以及算法的测试模块tcrypt

linux-3.5.4/include/linux/crypto.h:这个文件主要给出了内核加密应用程序的接口,主要有结构体、操作集以及函数的定义。

linux-3.5.4/include/crypto:这个目录下主要是各个算法的具体头文件定义。

1.2.技术方案及原理

Linux加解密特性分析主要通过对内核加密框架、内核算法实现、算法测试以及内核对加解密的特性支持几个方面进行说明。

1.2.1.Linux内核加密框架

要了解Linux的内核加密,首先就要了解Linux内核加密的框架是什么,才能在Linux框架的基础上分析Linux对内核加密的支持。Linux内核加密的框架主要由以下几个方面组成。(以下的分析均基于内核3.5.4源码)




本文转载于微信公众号: Linux内核之旅(LinuxKernelTravel),更多微信文章请扫描关注公众号:

声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部