随着移动通信技术的发展,单纯的语言通信已经不能满足各种业务的需要,而短信正替代人声成为重要的联系手段。人们常用短信发送银行账号、密码以及私密性强的信息,存在着严重的安全隐患,这个完全可以通过加密技术来实现。

短信端到端加密如何实现

一、短信端到端加密系统架构

为了解决点对点短信的安全问题,我们提出了一种短信端到端加密系统。系统结构主要包含三个实体:

1、智能移动终端

智能移动终端是端到端加密系统的核心部分,手机用户的所有操作都在终端中进行。终端功能是通过安装在终端的客户端软件来实现的,客户端主要具有以下功能:

1)明文短信与密文短信的处理流程控制

移动终端同时支持明文短信和密文短信,不同短信的处理流程在终端中不同,移动终端必须可以控制不同的处理流程。

2)加密通信控制

移动终端必须支持对加密通信的初始化,包括认证、连接、结束会话等通信控制功能。

在具体实现上,客户端功能主要分为两个模块,一个是加密短信的处理模块,实现短信的编写、发送、接收、存储等功能。另一个是与密钥管理系统的通信模块,实现终端发送加密短信所需的密钥的获取及更新功能。

2、密钥管理系统

密钥管理系统的主要功能如下:

1)存储、管理所有本系统中所需的密钥信息。

2)产生密钥,并对智能移动终端进行密钥的分发和更新。

3)实现密钥管理系统与移动终端的安全通信。

KMS除要完成密钥的产生、分发、存储、销毁等功能,同时还要提供合法监听的接口,为可能发生的纠纷提供加解密支持。

3、安全SD卡

安全SD卡具有SD卡的大容量存储和安全存储两项特点,适合重要数据的存储,终端与外界通信所需的密钥等信息都存储在安全SD卡中。手机用户通过人机界面实现与终端客户端的信息交互。密钥管理系统位于远端的服务器中,终端与密钥管理系统之间通过无线移动传输实现密钥的更新。客户端将更新的密钥存储在安全SD卡中,当需要密钥进行加解密操作时从安全SD卡获取密钥。终端通过客户端与其他终端上的客户端实现加密短信的发送和接收。

二、端到端加密系统常用加密算法

现今信息安全技术中使用的加密算法主要有两类:对称加密算法和公钥加密算法。对称加密算法使用的都是分组加密(block cipher)体制。分组密码是现代密码学中的重要体制之一,也是应用最为广泛、影响最大的一种加密体制,其主要任务是提供数据保密性,也可以用在许多方面,如构造伪随机数生成器、流密码、认证码和哈希函数等。分组加密算法通常加锵密速度较快.安全性能好.并且得到许多密码芯片的支持。现代分组密码发展非常快,在许多研究和应用领域得到了广泛的应用。

选择何种加密算法,除了要考虑密码算法的安全性.还要考虑实际的应用需求。公钥加密算法的优势很明显,但也有着不适合端到端加密系统的缺点,如加密速度慢,密钥协商过程复杂等。从以下几方面考虑,选择对称密码加密算法。

1、向后兼容性

2G通信系统和2.5G通信系统均采用对称加密体制,新的3G标准在制定时为了保持3G系统在运行上与原有系统不冲突,也采用对称加密体制。因此目前来说,在实际中使用的系统均采用对称加密技术。

2、技术的成熟性

在移动通信领域,公钥技术尚未获得全面认可。虽然近几年公钥技术在通信领域的可用性和应用前景再次受到人们的重视,然而对于产品推广而言,为了减少研发的风险性,一般都会采用成熟的技术。对称加密技术在移动通信领域的应用已经有了多年的经验积累,尽管相比公钥密码技术有一定的劣势,但是在多方面考虑后它仍是产品研发的首选技术。

3、接入方式

采用对称加密体制的一个前提,是需要进行加密通信的实体之间必须在通信前共享一个秘密。在目前的移动通信系统中,采用基于注册的接入方式,这种传统的接入方式以手工形式完成密钥分发。由于传统接入方式应用的时间较长,在今后的一段时间内即使出现其他形式的接人方式,它仍然是主要的接入方式之一,所以对称加密体制在应用上仍然有重大作用。

4、计算量和通信量的考虑

使用公钥密码体制需要多次的通信过程来实现认证、协商密钥等操作,对于手机终端而言,通信量太大。

5、运算速度的考虑

RSA加密算法产生密钥很麻烦,受素数产生技术的限制,因而难以做到一次一密。其次,RSA算法分组长度太大,为保证安全性,n的长度至少为600bits.运算代价很高,速度较慢,较对称密码算法慢几个数量级。对于普通的PC机来说.RSA算法的运算量是可以接受的。但手机终端处理器目前的处理能力还比较弱,所以,选择对称分组加密算法。

对称分组加密算法中,DES由于安全性的不足首先排除。密钥长度选择128比特己可以保证数据传输的安全。在AES和IDEA算法中,选择IDEA算法。较AES算法而言,IDEA算法更适合软件实现,适合在手机中运行。

确定加密算法后,还要选择算法的工作模式。由于在实际应用中,需要加密的消息的数据量是不定的,数据格式也是多种多样的,因此需要对基本的密码算法做些改变,以适应不同的应用需求。而且,也需要采用适当的工作模式来隐藏明文的统计特性、数据格式等,以提高整体的安全性,降低删除、重放、插入和伪造等攻击成功的机会占这种基本加密算法的适当的工作模式就是加密模式。

总之不同的工作模式在安全性和效率方面各不相同,因此应用的场景也各不相同。

小知识之端到端加密

端到端加密允许数据在从源点到终点的传输过程中始终以密文形式存在。采用端到端加密(又称脱线加密或包加密),消息在被传输时到达终点之前不进行解密,因为消息在整个传输过程中均受到保护,所以即使有节点被损坏也不会使消息泄露。