柬埔寨头条APP
短信端到端加密实现探讨
彼得 发表于:2017-2-22 14:47:54 复制链接 发表新帖
阅读数:5087

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
随着通信技术的迅速发展,移动通信网络的性能和功能都得到了显著的提高。在体验先进的移动通信技术给工作和生活带来好处的同时,移动系统的安全性问题也越来越多地引起人们的注意。2G网络应用中,终端与基站之间的数据都是明文传输的,这就带来了极大的安全风险。随着科技的进步,各种窃听设备层出不穷,对数据的处理能力越来越高,使得移动通信中的安全性进一步削弱。人们经常在不经意间使用短信传输一些重要的个人账户信息,如:银行帐号和密码,或者是一些重要的个人隐私信息,这些都是不希望被人看到的。同时,人们正遭受着垃圾短信的危害,保障用户使用短信的安全性就是本文的目的所在。由于短信系统中存在着许多安全威胁,随着技术的发展,研究短信端到端加密系统及其关键技术,有着十分重要的现实意义。
1 短信端到端加密系统架构设计
    为了解决点对点短信的安全问题,本文提出一种短信端到端加密系统。系统结构主要包含三个实体:
1.1 智能移动终端
    智能移动终端是端到端加密系统的核心部分,手机用户的所有操作都在终端中进行。终端功能是通过安装在终端的客户端软件来实现的,客户端主要具有以下功能:
    l)明文短信与密文短信的处理流程控制。移动终端同时支持明文短信和密文短信,不同短信的处理流程在终端中不同,移动终端必须可以控制不同的处理流程。
    2)加密通信控制。移动终端必须支持对加密通信的初始化,包括认证、连接、结束会话等通信控制功能。
    在具体实现上,客户端功能主要分为两个模块,一个是加密短信的处理模块,实现短信的编写、发送、接收、存储等功能。另一个是与密钥管理系统的通信模块,实现终端发送加密短信所需的密钥的获取及更新功能。
1.2 密钥管理系统
密钥管理系统的主要功能如下:
    1)存储、管理所有本系统中所需的密钥信息。
    2)产生密钥,并对智能移动终端进行密钥的分发和更新。
    3)实现密钥管理系统与移动终端的安全通信。
    KMS除要完成密钥的产生、分发、存储、销毁等功能,同时还要提供合法监听的接口,为可能发生的纠纷提供加解密支持。
1.3 安全SD卡
    安全SD卡具有SD卡的大容量存储和安全存储两项特点,适合重要数据的存储,终端与外界通信所需的密钥等信息都存储在安全SD卡中。手机用户通过人机界面实现与终端客户端的信息交互。密钥管理系统位于远端的服务器中,终端与密钥管理系统之间通过无线移动传输实现密钥的更新。客户端将更新的密钥存储在安全SD卡中,当需要密钥进行加解密操作时从安全SD卡获取密钥。终端通过客户端与其他终端上的客户端实现加密短信的发送和接收。
2 端到端加密系统常用密码算法
    现今信息安全技术中使用的密码算法主要有两类:对称密码算法和公钥密码算法。对称密码算法使用的都是分组密码(block cipher)体制。分组密码是现代密码学中的重要体制之一,也是应用最为广泛、影响最大的一种密码体制,其主要任务是提供数据保密性,也可以用在许多方面,如构造伪随机数生成器、流密码、认证码和哈希函数等。分组密码算法通常加解密速度较快,安全性能好,并且得到许多密码芯片的支持。现代分组密码发展非常快,在许多研究和应用领域得到了广泛的应用。
    选择何种密码算法,除了要考虑密码算法的安全性,还要考虑实际的应用需求。公钥密码算法的优势很明显,但也有着不适合端到端加密系统的缺点,如加密速度慢,密钥协商过程复杂等。从以下几方面考虑,选择对称密码加密算法。
2.1 向后兼容性
    2G通信系统和2.5G通信系统均采用对称加密体制,新的3G标准在制定时为了保持3G系统在运行上与原有系统不冲突,也采用对称加密体制。因此目前来说,在实际中使用的系统均采用对称加密技术。
2.2 技术的成熟性
    在移动通信领域,公钥技术尚未获得全面认可。虽然近几年公钥技术在通信领域的可用性和应用前景再次受到人们的重视,然而对于产品推广而言,为了减少研发的风险性,一般都会采用成熟的技术。对称加密技术在移动通信领域的应用已经有了多年的经验积累,尽管相比公钥密码技术有一定的劣势,但是在多方面考虑后它仍是产品研发的首选技术。
2.3 接入方式
    采用对称加密体制的一个前提,是需要进行加密通信的实体之间必须在通信前共享一个秘密。在目前的移动通信系统中,采用基于注册的接入方式,这种传统的接入方式以手工形式完成密钥分发。由于传统接入方式应用的时间较长,在今后的一段时间内即使出现其他形式的接入方式,它仍然是主要的接入方式之一,所以对称加密体制在应用上仍然有重大作用。
2.4 计算量和通信量的考虑
    使用公钥密码体制需要多次的通信过程来实现认证、协商密钥等操作,对于手机终端而言,通信量太大。
2.5 运算速度的考虑
    RSA算法产生密钥很麻烦,受素数产生技术的限制,因而难以做到一次一密。其次,RSA算法分组长度太大,为保证安全性,n的长度至少为600bits,运算代价很高,速度较慢,较对称密码算法慢几个数量级。对于普通的PC机来说,RSA算法的运算量是可以接受的。但手机终端处理器目前的处理能力还比较弱,所以,选择对称分组密码算法。
对称分组密码算法中,DES由于安全性的不足首先排除。密钥长度选择128比特己可以保证数据传输的安全。在AES和ID队算法中,选择IDEA算法。较AES算法而言,IDEA算法更适合软件实现,适合在手机中运行。
    确定密码算法后,还要选择算法的工作模式。由于在实际应用中,需要加密的消息的数据量是不定的,数据格式也是多种多样的,因此需要对基本的密码算法做些改变,以适应不同的应用需求。而且,也需要采用适当的工作模式来隐藏明文的统计特性、数据格式等,以提高整体的安全性,降低删除、重放、插入和伪造等攻击成功的机会。这种基本密码算法的适当的工作模式就是密码模式,也称为分组密码算法的运行模式。密码模式通常是基本密码、一些反馈、和一些简单运算的组合。分组密码的工作模式主要有:电子密码本模式(ECB,Eleetronic Code Book)、密码分组链接模式(CBC,Cipher Block Chaining)、密码反馈模式(CFB,Cipher Feedback)、输出反馈模式(OFB,Output Feedback)。不同的工作模式在安全性和效率方面各不相同,因此应用的场景也各不相同。
    总之,随着移动业务逐步由传统的语音业务向数据业务倾斜,人们使用短信的频度和发送短信的数量逐年增多,许多重要信息及隐私信息通过短信传输,这是十分不安全的。传输过程安全性的核心是密码算法,通过分析分组密码算法和公钥密码算法的特点和优缺点,以及手机终端的特点,选择IDEA算法作为数据通信的加密算法,同时选择CBC模式提高安全性。
条评论
您需要登录后才可以回帖 登录 | 注册
高级
相关推荐