MAS短信认证功能的研究与应用_第1页
MAS短信认证功能的研究与应用_第2页
MAS短信认证功能的研究与应用_第3页
MAS短信认证功能的研究与应用_第4页
MAS短信认证功能的研究与应用_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

知识水坝(豆丁网 pologoogle)为您倾心整理(下载后双击删除) 百度一下 知识水坝 成 果 报 告 成果名称 MAS 短信认证功能的研究与 应用 完成单位 中国移动通信集团上海有限公司 集团客户部 中国移动通信集团上海有限公司 知识水坝(豆丁网 pologoogle)为您倾心整理(下载后双击删除) 百度一下 知识水坝 摘 要 在现在的大型 应用系统 中, 随着网络技术的飞速发展,网络安全问题也越来越突出。顺应这一趋势,涌现出了许多的网络安全技术,如网络防火墙、病毒检测、密码技术、身份认证等。但是,即使如此,还是有很多 用户的信息及 应用系统 服务器 传输的信息被截取和到盗用。 手机短信 经过了长时间的发展,已经到了一个非常成熟的阶段。 作为一种非常重要的沟通方式, 被广大用户所接受和 广泛 使用 。而且 也被 越来越多的企业 所 重视及应用。 本文介绍 是 的 基于手机 短信 作为传输媒介来发送 应用系统 的登陆验证码 , 为 应用系统 和用户 提供方便灵活的、 即时安全的验证交流。 关键词: 短信、认证码、 应用系统 知识水坝(豆丁网 pologoogle)为您倾心整理(下载后双击删除) 百度一下 知识水坝 目 录 摘 要 2 目 录 3 1. 引 言 1 1.1. 研究背景 1 1.1.1. 手机短信发展介绍 1 1.1.2. 互联网发展问题 2 1.2. 研究的目的及意义 2 1.2.1. 研究目的 2 1.2.2. 研究的意义 3 1.3. 本章小结 3 2. 系统分析 5 2.1. 系统目标 5 2.2. 可行性分析 5 2.3. 课题研究方法 5 2.4. 需求分析 6 2.5. 本章小结 7 3. 系统流程论述 8 3.1. 通道认证方式 8 3.1.1. 认证技术 9 3.1.2. 认证方式 15 3.2. 加密算法及 流程 16 3.2.1. 加密算法的论述 17 3.2.2. 加密方式 25 3.2.3. 参数选择 26 3.2.4. 加密流程 27 知识水坝(豆丁网 pologoogle)为您倾心整理(下载后双击删除) 百度一下 知识水坝 3.2.5. 反向认证 28 3.3. 本章小结 29 4. 系统协议及接口设计 错误 !未定义书签。 4.1. 接口的选择 错误 !未定义书签。 4.2. 协议的分类 错误 !未定义书签。 4.3. 协议承载方式 错误 !未定义书签。 4.4. IAMDM-SS 协议 错误 !未定义书签。 4.5. IAMDM-SC 协议 错误 !未定义书签。 4.5.1. 软件管理协议设计 错误 !未定义书签。 4.5.2. 配置管理协议设计 错误 !未定义书签。 4.6. IAMDM-CC 协议 错误 !未定义书签。 4.6.1. 应用控制协议设计 错误 !未定义书签。 4.6.2. 应用数据获取协议设计 错误 !未定义书签。 4.7. 本章小结 错误 !未定义书签。 5. 身份认证的应用 30 5.1. 应用前景和发展方向 30 5.2. 身份认证的应用简述 31 5.3. 本章小结 36 6. 结 论 39 前 言 1 1. 引 言 1.1. 研究背景 1.1.1. 手机短信发展介绍 自从 2000年我国正式开通 推广 短信服务以来,手机短信在近几年取得了长足发展 ,用户数量也直线上升。 随着 3G 手机的出现和移动互联技术的成熟,手机对媒体的渗透日益深入,已成为一个重要媒介, “ 拇指经济 ” 已深入人心。 手机 短信体现了几点 特征 : (1)定位受众准确 可发送一对一的个人化信息。 除了某些直接邮寄的广告,传统的媒体都是把完全相同的广告信息传递给所有人。但是通过短信,我们可以向不同的人传送不同的信息,使 发送 内容更具说服力、吸引力。 (2)到达率高 手机已经成为亿万人每 日 接触次数最多的物品,无论何时何地用户都可以查看到通过手机传递给他 (她 ),以便帮企业实施本地化 推广 。 (3)时效性长 用户总是和手机绑定在一起,许多用户很少更换手机,那么在手机上内嵌的一些内容可以被这些用户长期反复蒯读到。 (4)可信度高 手机可以说足一种 “亲媒体 ”,作为一种随身携 带的终端,用户总是一个人独立使用用户对手机上的内容总是会产生一种 “亲近 ”的可以信赖的感觉,似乎这些内容是专为某个用户定制的。 (5)传播速度快 。 当手机成为媒体时,信息传播速度之快就像计算机病毒蔓延一般。 虽然手机短信具有以上优势, 但其在 媒介应用 领域的发展仍处于初始阶段。 前 言 2 1.1.2. 互联网发展问题 在 21世纪这个日新月异的发展时代,信息的传播非常重要。可以说人们每天都离不开信息的传播和沟通。互联网的产生使得信息的传播发生了翻天覆地的变化,也给人们的生活和工作带来很大的改变, 很难设想离开了互联网,我们的生活会变得怎样 。虽然互联网的应用也就是十来年的时间,但它已经与我们的生活方式、学习方式、工作方式乃至于思维方式都紧密地融合在一起了。 但在 以互联网为代表的信息社会里 , 信息要有效到达个人变得越来越困难 。然而 手机短信具有其他媒体所没有的优势,如 即时性 、定向传播、互动性等,这些特征决定了手机短信具有传统媒体无法比拟的传播效果 。 手机短信是一种半强制性的 通讯 媒体,手机短信直达个人,几乎可保证 100%的阅读率。同时,手机具有其他媒体所没有的优势,它可无线移动,随身携带,还有一个遍布全球运行稳定的 GPRS 网络,保证了它更大程度上的自由 。手机短信用户无论身处何地,何种状态都可以接收短信,关机也不会遗失信息,从而最大限度地摆脱了物质媒介工具可能对传播活动带来的限制。 把手机短信和互联网进行有效应用及结合,这样使得消息的传播和通讯更加的迅速、更加方便。既有广度、又能直达用户。 1.2. 研究的目的及意义 1.2.1. 研究目的 基于以上分析,本文的研究目标 是使 手机短信和 应用系统 业务联系起前 言 3 来 。 通过 短信通讯方式,来发送 web应用系统 用户登陆验证码。使得短信通讯能够更好的应用于互联网。在本课题中我们主要研究 本系统 平台与 web应用系统 之间如何更好的进行相互的认证 及接口通讯 ;如何把通道和接口设计得更加的便于扩展,做到跨平台、易移植 。 使易用性和便利性能够很好的展现。 重点研究验证码 和 传输数据的加密及解密方式 及通道认证流程 ,使得传输的信息更加安全、可靠。 1.2.2. 研究的意义 本课题通过对手机短信和 应用系统 业务 的结合研究及开发,通过 (1)对数据加密算法的研究,使得用户的信息数据得到了即时的、 可靠的传输,即保证用户的利益又维护了 应用系统 的 安全性 。 (2) 对于短信通道和 应用系统 通道接口的研究,方便多种的业务的扩展,也保证 应用系统 资源可以利用短信优势得以更好的推广。 (3)短信业务和互联网的 紧密融合, 表明了通信信息和网络资源的有效结合。使得短信业务 不单单 应用于个人和企业, 而是达到了一个新的领域,向着更加广阔的空间迈进。 综上所述 , 通过 研究和 开发本系统, 催化了“ 软件十 通信行业 +互联网 ”的紧密结合,同时也对这个新的产业链条如何走向良性循环 ,给出了一个很好的定义。 1.3. 本章小结 本章节 首先介绍手机短信的发展和互联网信息交互面临的问题,阐明了前 言 4 本次研究的背景,并由此引出 本论文的研究背景和研究目标。 如何结合短信方式和手机的特性寻找 应用系统 信息认证的方法。 系统分析 5 2. 系统分析 2.1. 系统目标 基于短信的 应用系统 验证码系统 的终极目标是根据 web应用系统 提供的业务类型及用户信息来生成随机的验证码,通过数据的加密手段及通道接口 把数据准确地、安全的传达给 对应 应用系统 ,并把验证码通过手机短信发送用户,方便用户登陆 web的 应用系统 系统,浏览网络资源。 2.2. 可行性分析 1) 业务可行性:本课题是基于短信的 web应用而产生的,短信虽然已经很普及,但是对于 web的应用领域还很缺乏,应该说还在初级阶段,所以具有很好推广性和应用环境,应用场景十分广阔。 2) 技术可行性:在这个互联网和信息飞速的时代, IT技术也快速增长着,对于数据通信和信息交互已 经应用的非常广泛。所以对实现课题的设计研究提供了参考及使用。 3) 目标可行性:积极推广集团客户使用 此系统 ,此课题的研究及实施,更好的推广了集团客户的使用。 2.3. 课题研究方法 1) 调查研究:首先进行调查此课题的应用场景和应用的环境,不用的web应用系统 有不用应用场景。对于类似的场景和环境的应用都归于同一类。 系统分析 6 2) 个案研究:对于不同的应用进行个案研究,区分出它们共有的特点和不同之处,针对不同之处进行区别对待。 3) 实验研究:参考目前流行的趋势及以往应用的经验,进行整体的设计,可以采用多种方案来进行测试,分 析每种方案的优劣势,并选择最为合适的方案。 4) 行动研究:对选出的最为合适的方案进行深入研究和分析。并进行具体的行动实施,最后实现为最终的项目成果。 2.4. 需求分析 本课题根据网络需求、用户需求、 短信 通信需求三个角度来确定,通过短信服务与 web应用系统 相结合来实现发送验证码业务,使得 短信 服务和 web互联网有效的结合,满足了企业的需求,提高企业应用的效率。 1) web应用系统 为了自身的安全需要用户注册和登陆时采用不同的验 证码登陆,而且需要保证验证码的时效性。并且需要把数据以点对点的方式传达给使用的用户 。并保证数据的可靠和安全。 2)用户需要的只是针对于自己的数据,并且只是需要自己知道,不会泄露数据,而且用户更加需要的是验证码获取的即时性和易用性,使自己更快更方便的使用网络资源。 3)手机短信和 wab 应用系统 之间进行数据传输时, 如何 保证数据 传输的保密性,网络传输的成功率,接口业务的扩展性。 系统分析 7 个 人 用 户W E B 网 站 短 信 平 台1 . 登 陆 网 站2 . 要 求 用 户 获 取 验 证 码3 . 输 入 手 机 号 码4 . 通 道 认 证5 . 返 回 认 证 成 功6 . 加 密 数 据7 . 请 求 发 送 短 信 验 证 码 给 用 户9 . 发 送 验 证 码 给 用 户1 0 . 使 用 验 证 码 登 陆8 . 解 密 并 生 成 验 证 码1 1 . 进 行 加 密1 2 . 确 认 验 证 码 是 否 正 确1 3 . 解 密 分 析 内 容1 4 . 返 回 密 码 信 息1 5 . 提 示 用 户 登 陆 成 功 或 失 败功能流程图 1 2.5. 本章小结 本章首先简述了系统主要的目标是用个性化信息来生成验证码,然后对系统的三大可行性进行了分析并确认了课题 的研究方法。最后,对系统的具体需求进行了阐述,表明了系统主要实现的功能。 8 3. 系统 流程 论述 系统和 web应用系统 进行数据信息传输和交互,那么需要保证网络传输的数据安全,即网络安全 网络安全应具有以下五个方面的特征: 1) 保密性:信息不泄露给非授权用户、实体或过程,或供其利用的特性。 2) 完整性:数据未经授权不能进行改变的特性。即信息在存储或传输过程中保持不被修改、不被破坏和丢失的特性。 3) 可用性:可被授权实体访问并按需求使用的特性。即当需要时能否存取所需的信息。例如网络环境下拒绝服务、破坏网络和有关系统的 正常运行等都属于对可用性的攻击; 4) 可控性:对信息的传播及内容具有控制能力。 5) 可审查性:出现的安全问题时提供依据与手段 。 下面 我们重点研究本系统和 web应用系统 的通道之间的认证方式、验证码的加密算法和加密方式。 3.1. 通道认证方式 服务平台要和 web应用系统 进行信息传输和数据交互,需要定制公共约定的接口,建立传输的通道。 为了 保障在 Internet 上数据传输 的 安全 ,需要双方进行 身份认证 。 9 3.1.1. 认证技术 静态 口令认证 传统的认证技术主要采用基于口令的认证方法。当被认证对象要求访问提供服务的系统时,提供服务 的认证方要求被认证对象提交该对象的口令,认证方收到口令后,将其与系统中存储的用户口令进行比较,以确认被认证对象是否为合法访问者。这种认证方法的优点在于简单实用。 然而,基于口令的认证方法存在下面几点不足: (1)用户每次访问系统时都要以明文方式输入口令,这时很容易泄密。 (2)口令在传输过程中可能被截获。 (3)系统中所有用户的口令以文件形式存储在认证方,攻击者可以利用系统中存在的漏洞获取系统的口令文件。 (4)用户在访问多个不同安全级别的系统时,都要求用户提供口令,用户为了记忆的方便,往往采用相同的口令。 而低安全级别系统的口令更容易被攻击者获得,从而用来对高安全级别系统进行攻击。 (5)只能进行单向认证,即系统可以认证用户,而用户无法对系统进行认证。攻击者可能伪装成系统骗取用户的口令。 用户名 /密码方式 用户名 /密码是最简单也是最常用的身份认证方法,它是基于“ what you know”的验证手段。每个用户的密码是由这个用户自己设定的,只有他自己才知道,因此只要能够正确输入密码,计算机就认为他就是这个用户。 然而实际上,由于许多用户为了防止忘记密码,经常会采用容易被他人 10 猜到的有意义的字符 串作为密码,这存在着许多安全隐患,极易造成密码泄露。即使能保证用户密码不被泄漏,由于密码是静态的数据,并且在验证过程中,需要在计算机内存中和网络中传输,而每次验证过程使用的验证信息都是相同的,很容易被驻留在计算机内存中的木马程序或网络中的监听设备截获。因此用户名 /密码方式是一种极不安全的身份认证方式。 IC卡认证 IC 卡是一种内置了集成电路的卡片,卡片中存有与用户身份相关的数据,可以认为是不可复制的硬件。 IC 卡由合法用户随身携带,登录时必须将 IC卡插入专用的读卡器中读取其中的信息,以验证用户的身份 。 IC卡认证是基于“ what you have”的手段,通过 IC卡硬件的不可复制性来保证用户身份不会被仿冒。 然而由于每次从 IC 卡中读取的数据还是静态的,通过内存扫描或网络监听等技术还是很容易能截取到用户的身份验证信息。因此,静态验证的方式还是存在着根本的安全隐患。 动态口令 动态口令技术是一种让用户的密码按照时间或使用次数不断动态变化,每个密码只使用一次的技术。它采用一种称之为动态令牌的专用硬件,密码生成芯片运行专门的密码算法,根据当前时间或使用次数生成当前密码。用户使用时只需要将动态令牌 上显示的当前密码输入客户端计算机,即可实现身份的确认。 由于每次使用的密码必须由动态令牌来产生,只有合法用户才持有该硬 11 件,所以只要密码验证通过就可以认为该用户的身份是可靠的。而动态口令技术采用一次一密的方法,也有效地保证了用户身份的安全性。但是如果客户端硬件与服务器端程序的时间或次数不能保持良好的同步,就可能发生合法用户无法登录的问题,这使得用户的使用非常不方便。 生物特征认证 生物特征认证是指采用每个人独一无二的生物特征来验证用户身份的技术,常见的有指纹识别、虹膜识别等。从理论上说,生物特 征认证是最可靠的身份认证方式,因为它直接使用人的物理特征来表示每一个人的数字身份,几乎不可能被仿冒。 不过,生物特征认证是基于生物特征识别技术的,受到现在的生物特征识别技术成熟度的影响,采用生物特征认证还具有较大的局限性:首先,生物特征识别的准确性和稳定性还有待提高;其次,由于研发投入较大而产量较小的原因,生物特征认证系统的成本非常高。 USB Key 认证 基于 USB Key 的身份认证方式是一种方便、安全、经济的身份认证技术,它采用软硬件相结合、一次一密的强双因子认证模式,很好地解决了安全性与易用性之间的矛盾。 USB Key是一种 USB接口的硬件设备,它内置单片机或智能卡芯片,可以存储用户的密钥或数字证书,利用 USB Key内置的密码学算法实现对用户身份的认证。基于 USB Key身份认证系统主要有两种应用模式:一是基于冲击 /响应的认证模式;二是基于 PKI体系的认证模式。 12 数字证书 数字证书是一个经证书授权中心 (也叫认证中心,简称 CA)数字签名的包含公开密钥拥有者信息以及公开密钥的文件。最简单的证书包含一个公开密钥、名称以及证书授权中心的数字签名。一般情况下证书中还包括密钥的有效时间,发证 机关 (证书授权中心 )的名称,该证书的序列号等信息,证书的格式遵循 ITUX.509 国际标准 6。 当用户向某一服务器提出访问请求时,服务器要求用户提交数字证书。收到用户的证书后,服务器利用 CA的公开密钥对 CA的签名进行解密,获得信息的散列码。然后服务器用与 CA相同的散列算法对证书的信息部分进行处理,得到一个散列码,将此散列码与对签名解密所得到的散列码进行比较,若相等则表明此证书确实是 CA签发的,而且是完整的未被篡改的证书。这样,用户便通过了身份认证。服务器从证书的信息部分取出用户的公钥,以后向用户传送数据时 ,便以此公钥加密,对该信息只有用户可以进行解密。 数字证书是一个经证书授权中心 (也叫认证中心,简称 CA)数字签名的包含公开密钥拥有者信息以及公开密钥的文件。最简单的证书包含一个公开密钥、名称以及证书授权中心的数字签名。一般情况下证书中还包括密钥的有效时间,发证机关 (证书授权中心 )的名称,该证书的序列号等信息,证书的格式遵循 ITUX.509 国际标准 6。 当用户向某一服务器提出访问请求时,服务器要求用户提交数字证书。收到用户的证书后,服务器利用 CA的公开密钥对 CA的签名进行解密,获得信息的散列码。然后服务器 用与 CA 相同的散列算法对证书的信息部分进行处理,得到一个散列码,将此散列码与对签名解密所得到的散列码进行比较, 13 若相等则表明此证书确实是 CA 签发的,而且是完整的未被篡改的证书。这样,用户便通过了身份认证。服务器从证书的信息部分取出用户的公钥,以后向用户传送数据时,便以此公钥加密,对该信息只有用户可以进行解密。 基于 X.509证书的认证技术适用于开放式网络环境下的身份认证,该技术己被广泛接受,许多网络安全程序都可以使用 X.509 证书 (如: IPSec, SSL, SET等 )。 由于这种认证技术中采用了 非对称密码体制, CA 和用户的私钥都不会在网络上传输,避免了基于口令的认证中传输口令所带来的问题。攻击者即使截获了用户的证书,但由于无法获得用户的私钥,也就无法解读服务器传给用户的信息。 基于 X.509 证书的认证实际上是将人与人之间的信任转化为个人对组织机构的信任,因此这种认证系统需要有 CA的支持。 CA在确信用户的身份后才为用户签发证书,而 CA对用户身份的确认则遵循 CA自己定义的称为 CPS(Certification Practice Statement)的规则,CA 通过这些规则来判定用户是否存在和 有效。证书将用户的唯一名称与用户的公钥关联起来。但这种关联是否合法,却不属于 X.509 所涉及的范畴。 14 X.509 规定:凡是与语义或信任相关的所有问题都依赖于 CA 的证书常规声明 CPS,即关联的合法性取决于 CA 自己定义的 CPS 规则。显然,这种做法会导致各个 CA 对用户的确认方法和确认的严格程度上的差异。因此,建立全球性的统一的认证体系以及相关的规范就显得非常必要。 SSL 协议 SSL( Secure socket Layer)即安全套接层协议 ,指使用公钥和私钥技术组合的安全网络通讯协议。 SSL协议是网景公司 (Netscape)推出的在网络传输层之上提供的一种用基于浏览器和 WEB服务器之间的安全连接技术。 SSL 协议采用数字证书及数字签名进行双端实体认证 ,用非对称加密算法进行密钥协商 ,用对称加密算法将数据加密后进行传输以保证数据的保密性 ,并且通过计算数字摘要来验证数据在传输过程中是否被篡改和伪造 ,从而为敏感数据在 Internet 上的传输提供了一种安全保障手段。 身份认证是指计算机及网络系统确认操作者身份的过程。访问控制是指控制访问服务器的用户以及访问者所访问的内容,限制访问者对重要资源的访问。基于 SSL协议的身份认证和访问控制的实现原理将根据系统的架构不同而有所不同。对于 B/S架构,将采用利用 Web服务器对 SSL技术的支持,可以实现系统的身份认证和访问控制安全需求。而对于 C/S 架构,将采用签名及签名验证的方式,来实现系统的身份认证和访问控制需求。 基于 B/S架构的 SSL身份认证和访问控制是利用数字证书来实现的。目前, SSL 技术已被大部份的 Web Server 及 Browser 广泛支持和使用。采用SSL技术,在用户使用浏览器访问 Web 服务器时,会在客户端和服务器之间建立安全的 SSL通道。在 SSL会话产 生时:首先,服务器会传送它的服务器 15 证书,客户端会自动的分析服务器证书,来验证服务器的身份。其次,服务器会要求用户出示客户端证书(即用户证书),服务器完成客户端证书的验证,来对用户进行身份认证。对客户端证书的验证包括验证客户端证书是否由服务器信任的证书颁发机构颁发、客户端证书是否在有效期内、客户端证书是否有效(即是否被篡改等)和客户端证书是否被吊销等。验证通过后,服务器会解析客户端证书,获取用户信息,并根据用户信息查询访问控制列表来决定是否授权访问。 要利用 SSL技术,在 Web服务器上必需安装一个 Web 服务器 证书,用来表明服务器的身份,并对 Web 服务器的安全性进行设置。服务器证书由 CA认证中心颁发,在服务器证书内表示了服务器的域名等证明服务器身份的信息、 Web 服务器端的公钥以及 CA 对证书相关域内容的数字签名。服务器证书都有一个有效期, Web服务器需要使用 SSL功能的前提是必须拥有服务器证书,利用服务器证书来协商、建立安全 SSL安全通道。 这样,用户使用浏览器访问 Web服务器,发出 SSL握手时, Web服务器将配置的服务器证书返回给客户端,通过验证服务器证书来验证他所访问的应用系统 是否真实可靠。 3.1.2. 认 证方式 认证方式可以采用交互式认证和网络身份认证。成功的用户身份认证取决于这两个过程。 1. 交互式认证 交互式认证过程向域账户或本地计算机确认用户的身份。这一过程根据 16 用户账户的类型而不同。 使用域账户:用户可以通过存储在 Active Directory 目录服务中的单一注册凭据使用密码或智能卡登录到网络。如果使用域账户登录,被授权的用户可以访问该域及任何信任域中的资源;如果使用密码登录到域账户,将使用Kerberos V5 进行身份认证;如果使用智能卡,则将结合使用 Kerberos V5身份认证和证书 。 使用本地计算机账户:用户可以通过存储在安全账户管理器(本地安全账户数据库, SAM)中的凭据登录到本地计算机。任何工作站或成员服务器均可以存储本地用户账户,但这些账户只能用于访问该本地计算机。 2. 网络身份认证 网络身份认证向用户尝试访问的任何网络服务确认用户的身份证明。为了提供这种类型的身份认证,安全系统支持多种不同的身份认证机制,包括Kerberos V5、安全套接字层 /传输层安全性 ( SSL/TLS),以及为了与 Windows NT 4.0 兼容而提供的 NTLM。 网络身份认证对于使用域账户的用 户来说不可见。使用本地计算机账户的用户每次访问网络资源时,必须提供凭据(如用户名和密码),而使用域账户,则用户就具有了可用于单一登录的凭据。 3.2. 加密算法及流程 加密和解密技术是本课题的重中之重,我们这里会重点研究 通道和验证码 的加密和解密技术 以及加密的流程。 17 3.2.1. 加密算法的论述 为了保证传输数据的安全性,除了对通道的身份认证以外,还需要对传输的原始数据信息进行加密。下面我们重点对传输数据的加密算法 和 URL通道地址可信的加密方式 进行论述 。 主要讨论 加密的方式、加密算法以及加密技术。 对于数据的安全保密所采用的方式 ,是利用技术手段把重要的数据变为乱码加密再传送,到达目的地后再用相同或不同的手段还原解密。加密就是将文字转换成不能直接阅读的形式(即密文)的过程。解密就是将密文转换成能够直接阅读的文字(即明文)的过程称为解密。 这样的技术手段我们可以称为加密技术。加密技术包括两个元素:算法和密钥。算法是将普通的文本(或者可以理解的信息)与一窜数字(密钥)的结合,产生不可理解的密文的步骤,密钥是用来对数据进行编码和解码的一种算法。在安全保密中,可通过适当的密钥加密技术和管理机制来保证网络的信息通讯安全。密钥加密技术的密码体制分 为对称密钥体制和非对称密钥体制两种。相应地,对数据加密的技术分为两类,即对称加密(私人密钥加密)和非对称加密(公开密钥加密)。 对称加密采用了对称密码编码技术,它的特点是文件加密和解密使用相同的密钥,即加密密钥也可以用作解密密钥,这种方法在密码学中叫做对称加密算法,对称加密算法使用起来简单快捷,密钥较短,且破译困难。 与对称加密算法不同,非对称加密算法需要两个密钥:公开密钥和私有密。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只 有用对应的 18 公开密钥才能解密。由于加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。 非对称密码体制的特点:算法强度复杂、安全性依赖于算法与密钥但是由于其算法复杂,而使得加密解密速度没有对称加密解密的速度快。对称密码体制中只有一种密钥,并且是非公开的,如果要解密就得让对方知道密钥。所以保证其安全性就是保证密钥的安全,而非对称密钥体制有两种密钥,其中一个是公开的,这样就可以不需要像对称密码那样传输对方的密钥了。这样安全性就大了很多。 下面来研究加密算法: 一个加密系统 S可以用数学符号描述如 下: S=P, C, K, E, D ,其中 P 明文空间,表示全体可能出现的明文集合, C 密文空间,表示全体可能出现的密文集合, K 密钥空间,密钥是加密算法中的可变参数, E 加密算法,由一些公式、法则或程序构成, D 解密算法,它是 E的逆。 当给定密钥 kÎK时,各符号之间有如下关系: C = Ek(P), 对明文 P加密后得到密文 C P = Dk(C) = Dk(Ek(P), 对密文 C解密后得明文 P 如用 E-1 表示 E的逆, D-1表示 D的逆,则有: Ek = Dk-1且 Dk = Ek-1 ; 因此,加密设计主要是确定 E, D, K。 19 常见加密算法概述: MD5 算法 MD5 的全称是 Message-Digest Algorithm 5(信息 -摘要算法),在90 年代初由 MIT Laboratory for Computer Science 和 RSA Data Security Inc 的 Ronald L. Rivest 开发出来,经 MD2、 MD3 和 MD4 发展而来。它的作用是让大容量信息在用数字签名软件签署私人密 匙前被压缩 成一种保密的格式(就是把一个任意长度的字节串变换成一定长的大整数)。不管是 MD2、 MD4 还是 MD5,它们都需要获得一个随机长度的信息并产生一个 128 位的信息摘要。虽然这些算法的结构或多或少有些相似,但 MD2 的设计与 MD4 和 MD5 完全不同,那是因为 MD2 是为 8位机器做过设计优化的,而 MD4 和 MD5 却是面向 32 位的电脑。 MD5 以 512 位分组来处理输入的信息,且每一分组又被划分为 16 个 32 位子分组,经过了一系列的处理后,算法的输出由四个 32 位分组组成,将这四个 32位分组级联后将生成一个 128 位散列 值。 在 MD5 算法中,首先需要对信息进行填充,使其位长度对 512 求余的结果等于 448。因此,信息的位长度( Bits Length)将被扩展至N*512+448,即 N*64+56 个字节( Bytes), N 为一个正整数。填充的方法如下,在信息的后面填充一个 1 和无数个 0,直到满足上面的条件时才停止用 0 对信息的填充。然后,再在这个结果后面附加一个以 64 位二进制表示的填充前信息长度。经过这两步的处理,现在的信息字节长度 =N*512+448+64=(N+1)*512,即长度恰好是 512 的整数倍。这样做的原因是为满足 后面处理中对信息长度的要求。 20 MD5 中有四个 32 位被称作链接变量( Chaining Variable)的整数参数,他们分别为: A=0x01234567, B=0x89abcdef, C=0xfedcba98,D=0x76543210。 当设置好这四个链接变量后,就开始进入算法的四轮循环运算。循环的次数是信息中 512 位信息分组的数目。 DES( Data Encryption Standard) 数据加密标准,速度较快,适用于加密大量数据的场合; 是否 对称加密 的 典型代表 。 算法方式 : 使用一个 56 位的密钥以及附加的 8 位奇偶校验位,产生最大 64 位的分组大小。这是一个迭代的分组密码,使用称为 Feistel 的技术,其中将加密的文本块分成两半。使用子密钥对其中一半应用循环功能,然后将输出与另一半进行“异或”运算;接着交换这两半,这一过程会继续下去,但最后一个循环不交换。 DES 使用 16 个循环,使用异或,置换,代换,移位操作四种基本运算。 安全性 : DES 是安全性比较 高的一种算法 ,目前只有一种方法可以破解该算法 ,那就是穷举法 .如采用 64位密钥技术 ,实际只有 56位有效 ,8位用来校验的 .有这样的一台 PC机器 ,它能每秒计算一百万次 ,那么 256位空间它要穷举的时间为 2285 年 .所以这种算法还是比较安全的一种算法 . 特点 : 速度较快,适用于加密大量数据的场合。 缺点:分组比较短、密钥太短、密码生命周期短、运算速度较慢。 应用场景 : 适用于金融数据的安全中,通常自动提款机 ATM都适用 DES. 21 3DES( Triple DES) 3DES 是 DES 加密算法 的一种模式,它使用 3 条 56 位的密钥对数据进行三次加密。数据加密标准( DES)是美国的一种由来已久的加密标准,它使用 对称密钥 加密法 ,并于 1981 年被 ANSI 组织规范为 ANSI X.3.92。 DES 使用 56 位密钥和密码块的方法,而在密码块的方法中,文本 被分成 64 位大小的文本块然后再进行加密。比起最初的 DES, 3DES更为安全。 3DES(即 Triple DES)是 DES 向 AES 过渡的加密算法( 1999 年,NIST 将 3-DES 指定为过渡的加密标准),是 DES 的一个更安全的变形。它以 DES 为基本模块,通过组合分组方法设计出分组加密算法,其具体实现如下:设 Ek()和 Dk()代表 DES 算法的加密和解密过程, K 代表 DES算法使用的密钥, P 代表明文, C 代表密表,这样, 3DES 加密过程为: C=Ek3(Dk2(Ek1(P) 3DES 解密过程为: P=Dk1(EK2(Dk3(C) 如图:三层加密方式 22 RC2 对称算法 RC2是由著名密码学家 Ron Rivest设计的一种传统对称分组加密算法,它可作为 DES 算法的建议替代算法。它的输入和输出都是 64 比特。密钥的长度是从 8 字节到 128 字节可变 。 用变长密钥对大量数据进行加密 RC4 对称 算法 23 RC4 加密算法是大名鼎鼎的 RSA 三人组中的头号人物 Ron Rivest在 1987 年设计的密钥长度可变的流加密算法簇。之所以称其为簇,是由于其核心部分的 S-box 长度可为任意,但一般为 256 字节。该算法的速度可以达到 DES 加密的 10 倍左右,且具有很高级别的非线性。 RC4 算法 的原理很简单,包括初始化算法( KSA)和伪随机子密码生成算法( PRGA)两大部分。假设 S-box 长度和密钥长度均为为 n。先来看看算法的初始化部分(用类 C 伪代码表 示) IDEA( International Data Encryption Algorithm) 国际数据加密算法 , 使用 128 位密钥提供非常强的安全性; 类似于 DES, IDEA 算法也是一种数据块加密算法,它设计了一系列加密轮次,每轮加密都使用从完整的加密密钥中生成的一个子密钥。与DES 的不同处在于,它采用软件实现和采用硬件实现同样快速。 64-位数据分组被分成 4 个 16-位子 分组: xl, X2, x3, x4。这 4个子分组成为算法的第一轮的输入,总共有 8 轮。在每一轮中,这 4个子分组相列相异或,相加,相乘,且与 6 个 16-位子密钥相异或,相加,相乘。在轮与轮间,第二和第:个子分组交换。最后在输出变换中4 个子分组与 4 个子密钥进行运算。 RSA( Rivest Shamir Ad1eman) 非对称加密 加密的代表, RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的 。 公钥和私钥都是两个大素数(大于 100 个十进制位)的函数。 安全性 : RSA 的安全性依赖于大数分 解。从提出到现在已近二十年,经 24 历了各种攻击的考验,普遍认为是目前最优秀的公钥方案之一。 特点 : 由于进行的都是大数计算,使得 RSA最快的情况也比 DES慢上 100倍,无论是软件还是硬件实现。速度一直是 RSA的缺陷。一般来说只用于少量数据加密。 应用场景 : RSA 可用于数字签名。 AES( Advanced Encryption Standard) 密码学中的高级加密标准( Advanced Encryption Standard, AES),又称 Rijndael 加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的 DES,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院 ( NIST)于 2001 年 11 月 26 日发布于 FIPS PUB 197,并在 2002 年 5月 26 日成为有效的标准。 2006 年,高级加密标准已然成为对称密钥加密中最流行的算法之一。 AES 的基本要求是,采用对称分组密码体制,密钥长度的最少支持为 128、 192、 256,分组长度 128 位 。 AES 加密数据块大小最大是256bit,但是密钥大小在理论上没有上限。 AES 加密有很多轮的重复和变换。大致步骤如下: 1、密钥扩展( KeyExpansion), 2、初始轮( Initial Round), 3、重复轮( Rounds),每一轮又包括: SubBytes、 ShiftRows、MixColumns、 AddRoundKey, 4、最终轮( Final Round),最终轮没有MixColumns。 BLOWFISH 算法 25 Blowfish 是一个 64 位分组及可变密钥长度的分组密码算法,算法由两 部分组成:密钥扩展和数据加密。密钥扩展把长度可达到 448 位的密钥转变成总共 4168 字节的几个子密钥。 数据加密由一个简单函数迭代 16 轮,每一轮由密钥相关的置换,密钥相关和数据相关的代替组成。所有的运算都是 32 位字的加法和异或,仅有的另一个运算是每轮的四个查表。 Blowfish 使用了大量的子密钥,这些密钥必须在加密及解密之前进行预计算。 3.2.2. 加密方式 1) 链路加密方式 采用链路加密方式,从起点到终点,要经过许多中间节点,在每个节点地均要暴露明文(节点加密方法除外),如果链路上的某一节点安全防 护比较薄弱,那么按照木桶原理(木桶水量是由最低一块木板决定),虽然采取了加密措施,但整个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论