移动电子商务安全解决方案2013年2020/11/2613.1移动电子商务安全需求•3.1.1安全需求概述•安全因素–交易:对交易方和交易数据提供安全保护–信息:保护敏感和有价值的用户信息–基础设施:保护承载网络不被攻击•安全需求–数据机密性–信息的完整性–信息的可认证性–信息的防抵赖性–用户身份的隐藏•用户的永久身份(IMIS)不能在无线接入链路上被窃听到–用户位置的隐藏•用户到达某个位置或某个区域不能通过对无线接入网的窃听而得到–用户的不可跟踪性•攻击者不能通过在无线接入网上窃听来推断出是不是对某个用户提供了不同的服务2020/11/2623.1.2业务安全需求•需要考虑的因素–安全模式增加的业务成本–业务能够容许的安全强度–安全模式对业务流程和效率的影响•业务安全需求–交易类业务–安全商务数据处理类业务–安全认证类业务2020/11/2633.2业务安全实现模型•3.2.1通信安全模型•点到点安全模型–即链路加密方式,在将数据置于物理通信链路之前对数据进行加密;可用在物理层或数据链路层–优点:易操作,对用户透明(即通过链路传送之前所有数据都被加密);每一次链路仅需一组密钥;因为任何路由信息均被加密因此能够通过安全的通信序列(保密性强)–缺点:在中间结点间数据易被暴露;由于每个链路均需要加密因此开销较大,且网络中每个结点均需要保护并可信;对主机上的报文不予保护(即各结点上的报文以明文形式出现)2020/11/2643.2业务安全实现模型•3.2.1通信安全模型•端到端安全模型–指直接建立通信双方之间的安全模型,即直接提供交易双方的保密通信,通信过程以密文形式存在,仅在端结点才被解密为明文–加密在表示层和应用层进行,可独立于网络所用的通信结构–方法是将加密设备放在网络层和传输层之间,只加密传输层的数据单元–优点:保密级别更高–缺点:需要更复杂的密钥管理系统;由于路由信息未被加密因此可进行流量分析;加密是离线的2020/11/2653.2.2移动电子商务系统中安全实现模型•安全实现模型考虑因素–移动电子商务的业务环境复杂(交易双方、移动运营商、服务提供商、第三方独立实体【如认证、支付等】)–移动电子商务的网络环境复杂(无线网络、移动运营商的核心优选网络、移动服务提供商之间的互联网或专线连接)–不同业务有不同的安全需求(对安全性要求高的需要建立端到端的安全模型)2020/11/2663.2.2移动电子商务系统中安全实现模型•基于短消息的移动电子商务安全实现模型–采用端到端的安全实现模型(因为业务涉及的各个实体之间缺乏可靠的信任关系),直接在应用层上采取各种安全机制来建立业务安全模型–点对点的安全模型是不适合的(因为底层的加密技术只能保护通信传输的安全而不能保护上层商务应用业务数据的安全)•基于WAP的移动电子商务安全实现模型–采用端到端的安全模型,即在通信模型中的高层实现安全机制–WAP屏蔽了下层的各种承载技术(如GSM、短消息、WCDMA等),为上层提供统一的应用环境–WAP协议族中主要是WTLS(无线安全传输层,WirelessTransportLayerSecurity)协议,其核心是WPKI(无线公开密钥体系,WirelessPublicKeyInfrastructure)–目前WAP1.2最为成熟,市场上大多移动终端均支持WAP1.2注:点到点(链路)安全模型不适合移动电子商务业务2020/11/2673.3基于非PKI体系的安全实现技术•3.3.1基于口令的安全实现方法•软件加密–传统加密方法:用软件将口令加密,当接收用户口令时把存储的口令解密,然后比较判断两个口令是否一致–单向函数法:利用单向函数加密容易解密难的特性,对口令加密存储,当用户输入口令时,口令也被加密,然后比较加密后的口令是否一致•一次性口令–每次登录使用一个口令,然后就将其从列表中删除,同时服务器在比对口令后也将相应的口令从数据库中删除–或用户使用口令卡,该卡每次仅显示一个不同的口令•随机口令–选取真实世界的自然随机数(如基于半导体内部噪声信号随机性的数字物理噪声芯片)•动态口令–动态口令系统由动态口令发生器(如随机口令发生器、动态口令令牌)和认证服务器组成–用户输入口令,服务器对比自己存储的口令,判断两者知否一致•基于口令的安全机制小结:实现简单,安全性较弱2020/11/2683.3.2基于挑战响应机制的安全实现方法•挑战响应(Challenge/Response)–每次认证时,认证服务器给客户端发送一个不同的“挑战(challenge)”文本,客户端程序收到这个“挑战”文本后,进行相应的“响应(response)”•利用此机制可实现单向认证或双向认证2020/11/2693.3.2基于挑战响应机制的安全实现方法•1.单向认证(服务器对客户端的认证)–(1)终端发起认证请求–(2)认证服务器处理请求•(i)认证服务器从用户数据库中查询用户是否是合法的用户,若不是则不作进一步处理2020/11/2610(1)(2)(3)(4)服务器终端•(ii)认证服务器内部产生一个随机数,作为“挑战”文本•(iii)将“挑战”文本传送给终端–(3)终端处理响应•(i)终端将用户名和随机数合并,使用单向Hash函数生成一个字符串•(ii)终端利用自己的口令对这个字符串进行加密•(iii)将加密的结果作为响应返回服务器–(4)认证服务器处理响应•(i)认证服务器通过查询或计算得到用户的口令,并用该口令对所接收到的响应进行解密•(ii)认证服务器将解密结果与自己的计算结果(Hash值)进行比较,若相同则通过认证,否则,认证失败•(iii)认证服务器通知用户认证成功或失败–(5)认证结束3.3.2基于挑战响应机制的安全实现方法•2.双向认证(前提是终端用户保存有与服务器共享的秘密信息,这可以在用户注册时生成)2020/11/2611(1)(2)(3)(4)服务器终端–(2)认证服务器处理请求•(i)认证服务器从用户数据库中查询用户是否是合法用户,若不是则不作进一步处理•(ii)认证服务器使用单向Hash函数对R1进行运算生成一个字符串,并用于终端共享的秘密信息对字符串加密,作为响应•(iii)认证服务器内部产生一个随机数R2,作为“挑战”文本•(iv)将响应和“挑战”文本发送给终端–(3)终端处理响应•(i)终端用共享的秘密解密响应,将解密结果与自己的计算结果(Hash值)进行对比,若相同则通过对服务器的认证,否则认证失败•(ii)终端将用户名和随机数R2合并,使用单向Hash函数生成一个字符串•(iii)终端利用自己的动态口令对该字符串加密•(iv)将加密的结果作为响应返回服务器–(4)认证服务器处理响应•(i)认证服务器通过查询或计算得到用户的口令,并用该口令对所接受到的响应进行解密•(ii)认证服务器将解密结果与自己的计算结果(Hash值)进行比较,若相同则通过认证,否则认证失败–(5)双方认证结束–(1)终端发起认证请求•(i)终端产生一个随机数R1作为“挑战”文本•(ii)将认证请求和“挑战”文本发送给服务器3.3.3动态口令与挑战机制相结合的安全实现方法•动态口令的生成–是此认证机制的核心,而口令生成算法和时间同步又是其关键所在–口令生成算法•是基于时间的一种密码算法,它利用用户密钥和当前时间来产生固定长度的字符串,如下述的16位动态口令生成算法2020/11/2612–(i)程序提取当前时间和用户密钥–(ii)利用时间对用户密钥数据加密–(iii)利用Hash算法提取加密结果的消息摘要–(iv)将所产生的消息摘要作为动态口令使用–时间同步•要求服务器与客户端时间同步(一般由客户端将当前时间进行适当变换传送给服务器)–用户密钥的产生和分配•(i)当用户注册时,服务器随机产生用户密钥,然后分发给用户,并在自己的数据库中保存,以供以后产生口令时使用•(ii)用户可根据需要申请服务器重新产生密钥•(iii)密钥数据的保存必须经过加密保存口令库Internet终端终端数据处理中心认证服务器认证系统机制基于动态口令与挑战机制的商务模式•注:•移动运营商充当了各SP的代理,并为各商务服务供应商提供统一的接入平台,同时SP也为各SP对用户进行认证•移动电子商务作为一项增值业务,其实现方式必然是由运营商提供统一平台,并向各SP开放来引入各式各样的服务•要求移动运营商与每个服务供应商之间通过技术或法律等手段建立信任关系2020/11/2613移动运营商网络移动终端认证服务器运营商移动电子商务平台Internet移动终端移动终端SPSPSP3.3.4Hash链安全实现机制•采用过多公钥签名技术会严重影响系统效率,实际中更多采用效率更高的Hash函数代替签名,或两者结合•基本思想–由Lamport提出:由用户选择一个随机数,并对其进行多次Hash计算,将每次Hash的结果组成一个序列{xn,xn-1,xn-2,……x2,x1,xn0},其中xn-1=h(xn),xn-2=h(xn-1),x1=h(x2),x0=h(x1)x0称为根–由于Hash函数的单向性,验证时可通过相反的顺序进行•基于Hash链的认证机制包括S/KEY和消息认证等,其中Hash函数可选用MD5和SHA,也可以使用传统对称算法2020/11/26143.3.4Hash链安全实现机制•基于Hash链的安全支付模式2020/11/2615•用户初次在经纪人处注册时由后者颁发一个支付证书•支付前用户将Hash链的最后结果(根)签名后发送给商家,该签名结果成为支付承诺,可表示在信用机制下用户支付的可认证性•用户在每次支付时都以同计算Hash链相反的顺序向商家提交Hash序列中的Hash值,每个Hash值代表一个支付单元,商家只需要进行一次Hash计算即可进行验证,而反向计算在计算上是不可行的•Hash链一般由用户产生,而前述支付承诺的证书由经纪人颁发。在进行支付时,用户将自己的证书、支付承诺和Hash链(以Hash链生成相反的顺序)提交给商家。一定时间后,商家会集中把Hash链和支付承诺提交给经纪人进行兑现•由于采用了支付承诺的方式,一个Hash链一般都指针对特定商家经纪人用户银行和信用卡公司商家1.获得授权2.从商家获得购买信息,进行支付3.兑现支付•特点•安全:可以实现鉴别性、机密性、完整性、不可否认性•简单:Hash运算的速度快,是RSA的一万倍•基于Hash链安全机制的商务模式2020/11/26163.3.4Hash链安全实现机制•所涉及的三方角色•经纪人:可由移动运营商或独立的第三方承担,主要负责向用户颁发证书,并对商家进行支付的兑现•商家:可以由承建了移动电子商务平台的移动运营商或直接由移动电子商务服务提供商承担,当移动运营商承担时运营商就作为商家的代理对用户进行收费,同时运营商与商家之间通过其他的信任关系进行收益的分成•用户:要求其终端能够处理证书,并配置有相应的软件来进行相关操作移动运营商网络移动终端运营商移动电子商务平台Internet移动终端移动终端SPSPSP第三方3.3.5VPN安全实现机制•VPN(VirtualPrivateNetwork,虚拟专网),即在开放的网络上建立私有数据传输通道•实现原理–采用隧道技术,即通过使用互联网络的基础设施在网络之间传递被加密封装的数据,被封装的数据包在隧道的两个端点加解密2020/11/26173.3.5VPN安全实现机制•VPN安全实现机制–认证:采用Radius,即在Radius服务器中设立一个中心数据库,其内包含用户身份信息,Radius据此来认证用户:2020/11/2618•当用户拨入访问远程服务器时,RAS或VPN获得认证信息,并将认证信息传给Radius服务器•如果用户在中心数据库中,并拥有网络网络的权限,Radius通知远程服务器继续处理,同时Radius发送用户概要信息给远程服务器,RAS或VPN根据该信息检查用户是否符合所有条件3.3.5VPN安全实现机制•VPN安全实现机制–加密:在隧道的发送端认证用户对数据包加密