CN103237305B - 面向移动终端上的智能卡密码保护方法 - Google Patents

面向移动终端上的智能卡密码保护方法 Download PDF

Info

Publication number
CN103237305B
CN103237305B CN201310100850.4A CN201310100850A CN103237305B CN 103237305 B CN103237305 B CN 103237305B CN 201310100850 A CN201310100850 A CN 201310100850A CN 103237305 B CN103237305 B CN 103237305B
Authority
CN
China
Prior art keywords
web site
information
web
user
cryptoguard
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310100850.4A
Other languages
English (en)
Other versions
CN103237305A (zh
Inventor
胡永涛
杨明慧
胡善学
赵宏伟
钟凌云
姚静晶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Third Research Institute of the Ministry of Public Security
Original Assignee
Third Research Institute of the Ministry of Public Security
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Third Research Institute of the Ministry of Public Security filed Critical Third Research Institute of the Ministry of Public Security
Priority to CN201310100850.4A priority Critical patent/CN103237305B/zh
Publication of CN103237305A publication Critical patent/CN103237305A/zh
Application granted granted Critical
Publication of CN103237305B publication Critical patent/CN103237305B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明涉及一种移动终端设备中基于智能卡实现密码保护控制的方法,所述的移动终端设备中内置有近距离无线通信NFC芯片,且该移动终端设备中还装载有密码保护客户端模块,所述的方法包括个人用户信息配置控制处理和Web站点访问控制处理。采用该种移动终端设备中基于智能卡实现密码保护控制的方法,保证了数据的保密性、完整性;密文存储在远程服务器上,降低了用户隐私信息泄露的风险,具有高安全性;不需要用户记忆过多的账户信息,具有高可用性。采用NFC技术,用户不需随身携带外置读卡器,减轻了用户负担,保证用户登录时的个人隐私信息保护,实现了Web站点的安全登录,处理过程安全有效,工作性能稳定可靠,适用范围较为广泛。

Description

面向移动终端上的智能卡密码保护方法
技术领域
本发明涉及信息安全领域,特别涉及互联网账户身份认证信息安全保护技术领域,具体是指一种面向移动终端设备上的基于智能卡实现密码保护控制的方法。
背景技术
随着移动终端设备的广泛使用,移动终端设备的安全性越来越受关注。尤其是人们使用移动终端登录淘宝、微博、社区、人人网等Web站点,用户需要手动输入用户名和密码。为提升PC端的网银或金融安全性,常见解决方案多采用USB存储密钥。传统技术中移动终端需要外置一个读卡器才能与智能卡通信,这造成用户使用智能卡的不方便。限于移动终端本身性能和工艺设计方面的局限性,必须需要借助新的技术实现智能卡与移动终端的通信,以期提高移动终端安全性。
NFC是NearFieldCommunication缩写,即近距离无线通讯技术。由飞利浦公司和索尼公司共同开发的。NFC是一种非接触式识别和互联技术,可以在移动设备、消费类电子产品、PC和智能控件工具间进行近距离无线通信。NFC提供了一种简单、触控式的解决方案,可以让消费者简单直观地交换信息、访问内容与服务。NFC可以解决智能卡与移动终端通信的问题。而NFC技术只需要在移动终端上内置NFC芯片,然后为各类移动终端上的应用开发者提供相应的接口库,即可实现其与智能卡间的通信,完成功能。
另一方面,智能卡的PKI功能支持非对称密钥对的产生、非对称密钥的加解密、非对称密钥签名验签功能,以及对称算法的加解密功能。因此,智能卡产生非对称公私钥对,实现了私钥不出卡,降低智能卡被复制的风险,使得智能卡具有唯一标识个人身份的特点;其非对称密钥加解密功能能对短消息进行加密,且只能由相应私钥才能解密,实现了数据保密性;非对称密钥签名验签功能可对数据进行签名,且只能由相应公钥才能验证成功,可确保数据完整性以及个人身份标识的唯一性。
在当前应用模式下存在很多问题,如用户需要记下大量的账户信息、移动设备若遭受病毒木马攻击、移动设备与智能卡的通信需要外置读卡器等。目前在移动设备安全登录方面,尚没有相关解决方案。
同时,移动互联网发展迅速,各种应用的用户登录认证都需要频繁交互用户名和密码,针对移动设备的木马、钓鱼软件等也愈加常见。相比起传统的PC端上网,移动互联网在带来便捷性的同时,却存在更多、更隐蔽的个人隐私信息泄漏风险,亟需采取加密保护措施。用户在移动设备上登录Web站点中所需要的信息及其个人账户信息是敏感的隐私信息,在信息交互过程中一旦发生信息泄漏情况,将给用户带来难以估量的损失。
发明内容
本发明的目的是克服了上述现有技术中的缺点,提供一种能够保证用户登录时的个人隐私信息保护、实现Web站点的安全登录、处理过程安全有效、工作性能稳定可靠、适用范围较为广泛的移动终端设备中基于智能卡实现密码保护控制的方法。
为了实现上述的目的,本发明的具有移动终端设备中基于智能卡实现密码保护控制的方法如下:
该移动终端设备中基于智能卡实现密码保护控制的方法,所述的移动终端设备中内置有近距离无线通信NFC芯片,且该移动终端设备中还装载有密码保护客户端模块,所述的密码保护客户端模块通过所述的近距离无线通信NFC芯片与智能卡建立无线通信连接,且该密码保护客户端模块通过无线通信链路与远程服务器相连接,其主要特点是,所述的方法包括个人用户信息配置控制处理和Web站点访问控制处理,所述的个人用户信息配置控制处理,包括以下步骤:
(11)所述的移动终端设备根据用户操作,启动密码保护客户端模块;
(12)所述的移动终端设备通过所述的近距离无线通信NFC芯片读取建立无线通信连接的智能卡中的网络身份标识信息;
(13)所述的密码保护客户端模块根据用户的新增用户的输入操作,从远程服务器的数据库中获取Web站点信息列表;
(14)所述的密码保护客户端模块根据用户的选择操作或者新增站点的输入操作,得到相应的Web站点信息;
(15)所述的密码保护客户端模块根据用户的输入操作,使用智能卡内存储的密钥对所得到的个人用户信息进行加密操作;
(16)所述的密码保护客户端模块将所述的Web站点信息及加密后的个人用户信息进行签名操作,并通过无线通信链路送至所述的远程服务器;
(17)所述的远程服务器使用本地保存的与所述的网络身份标识信息相对应的密钥对所接收到的加密后的个人用户信息进行验证操作;
(18)如果验证失败,则向所述的密码保护客户端模块返回提交失败的结果;
(19)如果验证成功,则进行个人用户信息存储操作,并向所述的密码保护客户端模块返回提交成功的结果;
所述的Web站点访问控制处理,包括以下步骤:
(21)所述的移动终端设备根据用户操作,启动密码保护客户端模块;
(22)所述的移动终端设备通过所述的近距离无线通信NFC芯片读取建立无线通信连接的智能卡中的当前网络身份标识信息;
(23)所述的密码保护客户端模块根据用户的选择操作或者新增站点的输入操作,得到待访问的Web站点信息,并加载完成;
(24)所述的密码保护客户端模块通过无线通信网络访问远程服务器,查询所述的当前网络身份标识对于所述的待访问的Web站点信息是否存在相应的个人用户信息;
(25)如果不存在,则返回个人用户信息配置控制处理中的步骤(13);
(26)如果存在,则从所述的远程服务器中得到相应的个人用户信息,并使用智能卡内存储的密钥对所得到的个人用户信息进行解密操作;
(27)所述的密码保护客户端模块根据解密后的个人用户信息自动填入Web站点的登录信息;
(28)所述的密码保护客户端模块根据用户操作提交相应的登录信息至Web站点服务器。
该移动终端设备中基于智能卡实现密码保护控制的方法中的Web站点信息包括:
Web站点信息标识Web_ID,为Web站点信息唯一标识符;
Web站点名称Web_Name;
Web站点URLWeb_URL,Web站点的URL地址信息;
用户名控件属性UnameCon_Prop,为Web站点登录页面用于用户名填写的控件属性;
密码控件属性PwdCon_Prop,为Web站点登录页面用于密码填写的控件属性。
该移动终端设备中基于智能卡实现密码保护控制的方法中的个人用户信息包括:
网络身份标识PID_Code,智能卡的唯一性标识;
用户名User_Name,用户登录Web站点的用户名;
密码Password,用户登录Web站点的密码。
该移动终端设备中基于智能卡实现密码保护控制的方法中的使用智能卡内存储的密钥对所得到的个人用户信息进行加密操作,具体为:
所述的密码保护客户端模块使用所述的智能卡内所存储的与所述的网络身份标识对应的载体公钥CPub分别对所述的个人用户信息中的用户名User_Name和密码Password进行非对称加密,得到用户名密文和密码密文
该移动终端设备中基于智能卡实现密码保护控制的方法中的将Web站点信息及加密后的个人用户信息进行签名操作,包括以下步骤:
(161)根据以下公式得到Web站点发送信息Web_Info:
W e b _ I n f o = ( W e b _ I D | | W e b _ N a m e | | W e b _ U R L | | U n a m e C o n _ Pr o p | | P w d C o n _ Pr o p | | P I D _ C o d e | | C C P u b U s e r _ N a m e | | C C P u b P a s s w o r d ) ;
其中,||为添附运算符;
(162)对所得到的Web站点发送信息Web_Info使用SHA-1算法计算得到哈希值HashWeb_Info
(163)使用所述的智能卡内所存储的与所述的网络身份标识对应的个人私钥PPri对所述的哈希值HashWeb_Info进行签名,得到签名信息
(164)将所述的签名信息添加到所述的Web站点发送信息Web_Info中。
该移动终端设备中基于智能卡实现密码保护控制的方法中的对所接收到的加密后的个人用户信息进行验证操作,包括以下步骤:
(171)所述的远程服务器接收到所述的密码保护客户端模块发来的Web站点发送信息Web_Info,并对其中的除去签名信息的部分:
W e b _ N a m e | | W e b _ U R L | | U n a m e C o n _ P r o p | | P w d C o n _ P r o p | | P I D _ C o d e | | C C P u b U s e r _ N a m e | | C C P u b P a s s w o r d 使用SHA-1算法计算第二哈希值Hash′Web_Info
(172)所述的远程服务器使用本地所保存的与接收到的网络身份标识PID_Code相对应的个人公钥PPub进行验签计算,并得到哈希值HashWeb_Info
(173)将所述的第二哈希值Hash′Web_Info与验签计算得到的哈希值HashWeb_Info进行比较;
(174)若两者相同,则返回验证成功的结果;否则返回验证失败的结果。
该移动终端设备中基于智能卡实现密码保护控制的方法中的使用智能卡内存储的密钥对所得到的个人用户信息进行解密操作,具体为:
所述的密码保护客户端模块使用所述的智能卡内所存储的与所述的网络身份标识对应的载体私钥CPri分别对所述的个人用户信息中的用户名密文和密码密文进行非对称解密,得到解密后的用户名User_Name和密码Password。
该移动终端设备中基于智能卡实现密码保护控制的方法中的进行个人用户信息存储操作,包括以下步骤:
(191)所述的远程服务器将接收到的Web站点名称Web_Name、Web站点URLWeb_URL、用户名控件属性UnameCon_Prop、密码控件属性PwdCon_Prop存入Web站点信息数据表Web_Info中,并得到索引号Web_ID;
(192)所述的远程服务器将接收到的网络身份标识PID_Code、用户名密文和密码密文存入用户信息数据表User_Info中;
(193)所述的远程服务器将所述的索引号Web_ID、网络身份标识PID_Code存入用户信息与Web站点信息映射数据表UserInfo_Map_WebInfo中。
该移动终端设备中基于智能卡实现密码保护控制的方法中的查询当前网络身份标识对于待访问的Web站点信息是否存在相应的个人用户信息,包括以下步骤:
(241)所述的远程服务器根据Web站点名称Web_Name及Web站点URLWeb_URL在所述的Web站点信息数据表Web_Info中进行查询;
(242)如果无法查询到,则返回不存在相应的个人用户信息的结果;
(243)如果能够查询到,则得到相应的索引号Web_ID;
(244)所述的远程服务器根据所述的索引号Web_ID在所述的用户信息与Web站点信息映射数据表UserInfo_Map_WebInfo中进行查询,并得到相应的网络身份标识PID_Code;
(245)所述的远程服务器根据所述的网络身份标识PID_Code在所述的用户信息数据表User_Info中进行查询,得到相应的用户名密文和密码密文并返回存在相应的个人用户信息的结果。
采用了该发明的移动终端设备中基于智能卡实现密码保护控制的方法,由于其中将敏感的隐私信息进行加密通信交互,从而保证数据的保密性、完整性,密文存储在远程服务器上,且为了终端接收数据的安全性,账户信息也是用非对称算法或对称算法来加密传输和存储的,对个人信息进行加密存储,并对发送的数据进行非对称算法签名,满足保密性、完整性和不可否认性三大安全要素,从而具有高安全性;对个人信息进行加密远程存储,且解密的密钥只有智能卡携有,所以服务器只看到密文,降低用户隐私信息泄露的风险,从而具有高隐私性;通过对个人信息进行远程安全存储,使用时可直接从服务器读取并填充到待登录页面上,不需要用户记忆过多的账户信息,避免记忆混乱、密码遗忘等问题,从而具有高可用性;而且由于移动设备的客户端与智能卡的通信采用NFC技术,用户不需随身携带外置读卡器,只需移动设备与智能卡靠近,即可实现信息传输,减轻了用户负担,非常便捷,能够保证用户登录时的个人隐私信息保护,实现了Web站点的安全登录,处理过程安全有效,工作性能稳定可靠,适用范围较为广泛。
附图说明
图1为本发明的移动终端设备中基于智能卡实现密码保护控制的方法中的移动设备的密码保护客户端与服务端的交互过程示意图。
图2为本发明的移动终端设备中基于智能卡实现密码保护控制的方法中的移动密码保护客户端对个人用户信息配置控制处理流程图。
图3为本发明的移动终端设备中基于智能卡实现密码保护控制的方法中的Web站点访问控制处理流程图。
具体实施方式
为了能够更清楚地理解本发明的技术内容,特举以下实施例详细说明。
请参阅图1至图3所示,该移动终端设备中基于智能卡实现密码保护控制的方法,所述的移动终端设备中内置有近距离无线通信NFC芯片,且该移动终端设备中还装载有密码保护客户端模块,所述的密码保护客户端模块通过所述的近距离无线通信NFC芯片与智能卡建立无线通信连接,且该密码保护客户端模块通过无线通信链路与远程服务器相连接,其中,所述的方法包括个人用户信息配置控制处理和Web站点访问控制处理,所述的个人用户信息配置控制处理,包括以下步骤:
(11)所述的移动终端设备根据用户操作,启动密码保护客户端模块;
(12)所述的移动终端设备通过所述的近距离无线通信NFC芯片读取建立无线通信连接的智能卡中的网络身份标识信息;
(13)所述的密码保护客户端模块根据用户的新增用户的输入操作,从远程服务器的数据库中获取Web站点信息列表;
(14)所述的密码保护客户端模块根据用户的选择操作或者新增站点的输入操作,得到相应的Web站点信息;该Web站点信息包括:
Web站点信息标识Web_ID,为Web站点信息唯一标识符;
Web站点名称Web_Name;
Web站点URLWeb_URL,Web站点的URL地址信息;
用户名控件属性UnameCon_Prop,为Web站点登录页面用于用户名填写的控件属性;
密码控件属性PwdCon_Prop,为Web站点登录页面用于密码填写的控件属性;
(15)所述的密码保护客户端模块根据用户的输入操作,使用智能卡内存储的密钥对所得到的个人用户信息进行加密操作;该个人用户信息包括:
网络身份标识PID_Code,智能卡的唯一性标识;
用户名User_Name,用户登录Web站点的用户名;
密码Password,用户登录Web站点的密码;
使用智能卡内存储的密钥对所得到的个人用户信息进行加密操作,具体为:
所述的密码保护客户端模块使用所述的智能卡内所存储的与所述的网络身份标识对应的载体公钥CPub分别对所述的个人用户信息中的用户名User_Name和密码Password进行非对称加密,得到用户名密文和密码密文
(16)所述的密码保护客户端模块将所述的Web站点信息及加密后的个人用户信息进行签名操作,并通过无线通信链路送至所述的远程服务器;将Web站点信息及加密后的个人用户信息进行签名操作,包括以下步骤:
(a)根据以下公式得到Web站点发送信息Web_Info:
W e b _ I n f o = ( W e b _ I D | | W e b _ N a m e | | W e b _ U R L | | U n a m e C o n _ Pr o p | | P w d C o n _ Pr o p | | P I D _ C o d e | | C C P u b U s e r _ N a m e | | C C P u b P a s s w o r d ) ;
其中,||为添附运算符;
(b)对所得到的Web站点发送信息Web_Info使用SHA-1算法计算得到哈希值HashWeb_Info
(c)使用所述的智能卡内所存储的与所述的网络身份标识对应的个人私钥PPri对所述的哈希值HashWeb_Info进行签名,得到签名信息
(d)将所述的签名信息添加到所述的Web站点发送信息Web_Info中;
(17)所述的远程服务器使用本地保存的与所述的网络身份标识信息相对应的密钥对所接收到的加密后的个人用户信息进行验证操作,包括以下步骤:
(a)所述的远程服务器接收到所述的密码保护客户端模块发来的Web站点发送信息Web_Info,并对其中的除去签名信息的部分:
W e b _ N a m e | | W e b _ U R L | | U n a m e C o n _ P r o p | | P w d C o n _ P r o p | | P I D _ C o d e | | C C P u b U s e r _ N a m e | | C C P u b P a s s w o r d
使用SHA-1算法计算第二哈希值Hash′Web_Info
(b)所述的远程服务器使用本地所保存的与接收到的网络身份标识PID_Code相对应的个人公钥PPub进行验签计算,并得到哈希值HashWeb_Info
(c)将所述的第二哈希值Hash′Web_Info与验签计算得到的哈希值HashWeb_Info进行比较;
(d)若两者相同,则返回验证成功的结果;否则返回验证失败的结果;
(18)如果验证失败,则向所述的密码保护客户端模块返回提交失败的结果;
(19)如果验证成功,则进行个人用户信息存储操作,并向所述的密码保护客户端模块返回提交成功的结果;进行个人用户信息存储操作,包括以下步骤:
(a)所述的远程服务器将接收到的Web站点名称Web_Name、Web站点URLWeb_URL、用户名控件属性UnameCon_Prop、密码控件属性PwdCon_Prop存入Web站点信息数据表Web_Info中,并得到索引号Web_ID;
(b)所述的远程服务器将接收到的网络身份标识PID_Code、用户名密文和密码密文存入用户信息数据表User_Info中;
(c)所述的远程服务器将所述的索引号Web_ID、网络身份标识PID_Code存入用户信息与Web站点信息映射数据表UserInfo_Map_WebInfo中;
所述的Web站点访问控制处理,包括以下步骤:
(21)所述的移动终端设备根据用户操作,启动密码保护客户端模块;
(22)所述的移动终端设备通过所述的近距离无线通信NFC芯片读取建立无线通信连接的智能卡中的当前网络身份标识信息;
(23)所述的密码保护客户端模块根据用户的选择操作或者新增站点的输入操作,得到待访问的Web站点信息,并加载完成;
(24)所述的密码保护客户端模块通过无线通信网络访问远程服务器,查询所述的当前网络身份标识对于所述的待访问的Web站点信息是否存在相应的个人用户信息,包括以下步骤:
(241)所述的远程服务器根据Web站点名称Web_Name及Web站点URLWeb_URL在所述的Web站点信息数据表Web_Info中进行查询;
(242)如果无法查询到,则返回不存在相应的个人用户信息的结果;
(243)如果能够查询到,则得到相应的索引号Web_ID;
(244)所述的远程服务器根据所述的索引号Web_ID在所述的用户信息与Web站点信息映射数据表UserInfo_Map_WebInfo中进行查询,并得到相应的网络身份标识PID_Code;
(245)所述的远程服务器根据所述的网络身份标识PID_Code在所述的用户信息数据表User_Info中进行查询,得到相应的用户名密文和密码密文并返回存在相应的个人用户信息的结果;
(25)如果不存在,则返回个人用户信息配置控制处理中的步骤(13);
(26)如果存在,则从所述的远程服务器中得到相应的个人用户信息,并使用智能卡内存储的密钥对所得到的个人用户信息进行解密操作,具体为:
所述的密码保护客户端模块使用所述的智能卡内所存储的与所述的网络身份标识对应的载体私钥CPri分别对所述的个人用户信息中的用户名密文和密码密文进行非对称解密,得到解密后的用户名User_Name和密码Password;
(27)所述的密码保护客户端模块根据解密后的个人用户信息自动填入Web站点的登录信息;
(28)所述的密码保护客户端模块根据用户操作提交相应的登录信息至Web站点服务器。
在实际使用当中,本发明的基本设计思想是:将敏感的隐私信息加密通信交互以保证数据的保密性、完整性,密文存储在远程服务器上。为了终端接收数据的安全性,账户信息也是用非对称算法或对称算法来加密传输和存储的。
本发明的方法主要涉及的组件有:支持NFC功能的移动终端设备、智能卡、基于智能卡的密码保护客户端和服务器。移动终端设备配置有NFC芯片,能够通过NFC与智能卡进行通信;智能卡内有对称密钥或非对称密钥,能够对用户信息进行加密、签名等;基于智能卡的密码保护客户端能够连接服务器,可配置用户信息,并能够安全登录Web网站;服务器能够存储用户加密的个人信息,并快速响应客户端的请求。
账户信息上传至服务器过程中,账户信息用智能卡的载体非对称密钥或对称密钥进行加密传输,并存储于数据库中;当用户需要登录某一个网站时,密码保护客户端从服务器读取数据,同时用智能卡的载体非对称密钥或对称密钥将数据解密。整个过程在内存中进行的,因此不会在本地留下信息残留,以保证账户信息的安全性。
下面将首先给出本发明方法的数据格式,对不同的参与方在交互过程中的数据格式分别阐述说明,然后对交互过程中的数据保护方法进行分析,最后对不同参与方之间的交互过程进行详细描述。
数据格式的定义
下面是本发明对涉及的web站点信息、用户信息和智能卡信息的数据格式给出的定义,具体如下:
(1)Web站点信息包括Web站点信息ID、Web站点名称、Web站点URL、用户名控件属性和密码控件属性等。其中:
●Web站点信息ID:Web站点信息唯一标识符
●Web站点名称:Web站点的名字,如百度、新浪等
●Web站点URL:Web站点的URL地址
●用户名控件属性:表示Web站点登录页面用于用户名填写的控件属性
●密码控件属性:表示用于密码填写的控件属性
(2)用户信息主要包括网络身份标识、用户名和密码等。其中:
●网络身份标识:对于一张智能卡具有唯一性
●用户名:用户登录某网站的用户名
●密码:用户登录某网站的密码
(3)智能卡信息包括网络身份标识、个人公私钥及载体公私钥等。其中:
●网络身份标识:对于一张智能卡具有唯一性
●个人公钥:智能卡内用于个人使用的非对称公钥,用于加密、验签。
●个人私钥:智能卡内用于个人使用的非对称私钥,用于解密、签名。
●载体公钥:智能卡载体对应的非对称公钥,用于加密、验签。
●载体私钥:智能卡载体对应的非对称私钥,用于解密、签名。
常用的加密算法有对称算法和非对称算法,非对称算法可用于签名,因此本发明采用对称算法和非对称算法结合的方式来保护移动终端上的用户隐私信息。特别强调地是,如果在交互中不会产生大量需要保护的数据,也可以采用非对称算法加密。
(一)对个人隐私信息采用对称算法加密保护
为了确保对称密钥不被窃取,我们需要将对称密钥保存于智能卡内,用时即可取出。个人隐私信息加密后的密文存储在远程数据库中。服务器考虑到信息内容的差异性,本发明对每一条内容采用不同的密钥进行保护,也就是说个人内容信息与密钥是一一对应的,那么可以考虑多加一条主控密钥作为顶层的保护密钥。
本发明用M-KEY表示主控密钥,对个人信息进行加密的密钥记为Kn,其中0≤n≤N,n∈N。另外,记用户个人信息为Pn,其中0≤n≤N,n∈N,如用户名USER-NAME、密码PASS-WORD等,Px与Kx一一对应,每一个密钥只能用于一个账户信息的保护。用表示用Kx对明文Px加密后的密文。用E-SYM(Px)Kx表示用对称密钥Kx对Px加密,用表示用对称密钥Kx解密。
当需要对某Web站点进行个人信息配置时,用户要将个人信息进行加密,并传输至远程存储服务器。若某账户的个人信息内容为Pi(0≤i≤N,i∈N),则为了增强内容的保密性,可进一步对用M-KEY进行加密,即然后将与其它辅助信息发送到存储服务器。
当需要登录某Web站点时,则根据Web站点辅助信息从远程存储服务器读取对应的密文首先用密钥M-KEY对其解密得到然后用Ki进行解密,即则得到Pi,可用于用户信息的填充等。
相比非对称算法的安全性,对称算法较弱,但是加密速度快,可以提供大数据的加密服务。因此,为了解决对称算法安全性较弱的问题,需要定期更换对称密钥。
(二)对个人隐私信息采用非对称算法加密保护
非对称算法可以用于对数据的加密,也可以用于签名。本发明中个人公私钥对用于对数据的签名,载体公私钥对用于对数据的加密,其中个人公私钥是由智能卡内部产生,且私钥永不出卡,可用于个人的身份管理。本发明用P{Pri,Pub}表示个人公私钥对,用C{Pri,Pub}表示载体公私钥对。用表示用个人公钥对信息Px进行加密,密文用表示,而用表示对解密。此外,用表示对Px进行签名,签名值用表示,用表示对签名值进行验签计算。
当需要对某Web站点进行个人信息配置时,用户要将个人信息Pi用载体公钥进行加密,有为了保密数据的完整性要求,对密文用个人私钥进行签名,即然后将发送到存储服务器。
当存储服务器接收到数据后,需要验证签名。存储服务器使用个人公钥PPub对数据进行验证,计算然后得到进行对比,若相同,则验证通过,然后将密文及其它信息存入服务器中。
下面介绍密码保护客户端与服务器之间的应用交互过程:
移动终端上装有密码保护客户端,并能够通过NFC与智能卡进行通信,而服务器能够对加密数据进行存储,并快速响应密码保护客户端的请求。
首先,用户需要在移动终端的密码保护客户端上将Web站点信息与个人登录信息绑定。Web站点信息主要包括Web站点信息ID、Web站点名称、Web站点URL、用户名控件属性和密码控件属性。其中用户名控件属性与个人用户名相关,而密码控件属性与个人密码相关,它们决定着对登录控件的选择。
而个人信息主要包括网络身份标识、用户名和密码。网络身份标识是第三方可信机构在发行智能卡时对用户预设定的标识。用户可以用它作为网络上的通行证,具有唯一性。而用户名和密码是需要加密存储的,可以采用对称密钥加密的方式,或非对称密钥加密的方式,另外可以对保密数据进行签名,确保发送方的不可否认性。
智能卡信息主要包括网络身份标识、个人公私钥及载体公私钥。网络身份标识与个人信息中提到的一致。本发明中,个人公私钥主要用于签名,而载体公私钥用于加密。非对称算法可采用RSA算法或国密算法SM2。
然后,用户需要在移动设备的密码保护客户端将Web站点绑定到个人信息。当发送信息时,先将个人信息进行加密,并添加待绑定的Web站点信息,然后对其签名,最后将个人信息的密文、网络身份标识、Web站点信息和签名信息发送到服务器。服务器接收到数据后,使用个人公钥对其进行验签,若通过,则将个人信息的密文、Web站点信息和网络身份标识写入数据库;反之,拒绝写入并通知移动设备的密码保护客户端存入失败。
配置完毕,当用户通过密码保护客户端登录某经过保护的Web站点时,客户端只需向服务器发送特定请求,请求信息包括网络身份标识、Web站点信息等,即可查询到对应的个人信息密文,然后服务器将此密文返回给移动设备的密码保护客户端。移动设备的密码保护客户端对其进行解密,获得个人信息,最后将个人信息(如用户名或密码等)填充到Web站点页面,用户即可进行登录。
对于数据格式定义如下:
(1)Web站点信息主要包括Web站点名称、Web站点URL、用户名控件属性和密码控件属性,本文用Web_Info(Web_ID,Web_Name,Web_URL,UnameCon_Prop,PwdCon_Prop)来表示Web站点信息,参数描述如下:
●Web_ID:Web站点信息ID
●Web_Name:Web站点名字
●Web_URL:Web站点的URL地址
●UnameCon_Prop:用户名控件属性,表示Web站点登录页面用于用户名填写的控件属性
●PwdCon_Prop:密码控件属性,表示用于密码填写的控件属性
(2)用户信息主要包括网络身份标识、用户名和密码,本文用User_Info(PID_Code,User_Name,Password)表示,参数描述如下:
●PID_Code:网络身份标识,对于一张智能卡具有唯一性
●User_Name:Web站点的用户名
●Password:Web站点的密码
(3)用户信息与Web站点信息映射:映射序列号、Web站点ID和网络身份标识,本文用UserInfo_Map_WebInfo(Serial_ID,Web_ID,PID_Code)表示,参数描述如下:
●Serial_ID:映射序列号
●Web_ID:Web站点信息ID
●PID_Code:网络身份标识,对于一张智能卡具有唯一性
(4)智能卡
●PID_Code:网络身份标识
●个人公私钥:智能卡内用于个人使用的非对称公私钥,用P{Pri,Pub},用于加解密、签名验签,是卡内产生,且永不出卡。
●载体公私钥:智能卡载体对应的非对称公私钥,用C{Pri,Pub},用于加解密、签名验签,为外部导入的密钥对。
●对称密钥:用于对称加密的密钥值,用Kn表示,其中0≤n≤N,n∈N。
移动设备的密码保护客户端的运行主要分成三个阶段:安装、配置和使用。
(1)安装阶段
用户在移动设备上下载并安装密码保护客户端,设置服务器的连接信息,尝试是否能成功连接到服务器。
(2)配置阶段,具体流程可参见图1所示。
①用户启动密码保护客户端,并在支持NFC的移动设备上刷由认证机构发行的智能卡;
②用户打开客户端信息配置页面,从服务器读取Web站点信息,选择想要绑定的Web站点;
③客户端使用当前网络身份标识对应的载体公钥分别对User_Name和Password进行加密,得到(以非对称算法为例);
④客户端发送Web站点信息:
Web_Info=(Web_ID||Web_Name||Web_URL||UnameCon_Prop
| | P w d C o n _ P r o p | | P I D _ C o d e | | C C P u b U s e r _ N a m e | | C C P u b P a s s w o r d ) ;
然后对Web_Info使用SHA-1计算哈希值HashWeb_Info,接着使用卡片个人私钥对HashWeb_Info进行签名,得到则Web_Info=(Web_ID||Web_Name||Web_URL|| U n a m e C o n _ P r o p | | P w d C o n _ P r o p | | P I D _ C o d e | | C C P u b U s e r _ N a m e | | C C P u b P a s s w o r d | | SIG P Pr i Hash W e b _ I n f o ) , 然后发送到服务器;
(3)使用阶段,具体流程可参见图2所示。
①用户启动密码保护客户端,在手机上刷由认证机构发行的智能卡;
②用户选择将要登录的Web站点,至加载完成;
③客户端访问服务器,查询当前待登录Web站点的信息,若不存在,则转到客户端信息配置页面;若存在,则查询站点对应的网络身份标识,若不存在网络身份标识或者不是当前刷入的网络身份标识,则转到客户端信息配置页;反之,若是当前网络身份标识,则读取相应的用户名和密码此时它们为密文形式;
④客户端使用此卡片网络身份标识对应的载体私钥将用户名和密码解密,得到User_Name和Password;
⑤客户端根据Web站点的用户名属性UnameCon_Prop和密码属性PwdCon_Prop找到对应的页面控件;
⑥客户端将解密后的User_Name和Password填入页面控件;
⑦用户点击登录。
对于服务器端:
(1)初始化阶段
建立数据库,并建立Web站点信息表、用户信息表、用户信息与Web站点信息映射表。
(2)使用过程,如图2所示:
当用户通过移动密码保护客户端新增账户信息时
①服务器接收客户端发来的信息,格式为(Web_Name||Web_URL||UnameCon_Prop | | P w d C o n _ P r o p | | P I D _ C o d e | | C C P u b U s e r _ N a m e | | C C P u b P a s s w o r d | | SIG P Pr i Hash W e b _ I n f o ) , 用户名和密码为密文,为用户使用智能卡个人私钥对Web_Info的签名。服务器使用PID_Code对应的个人公钥对数据进行验签;
验证过程如下:服务器对(Web_Name||Web_URL||UnameCon_Prop||PwdCon_Prop)使用SHA-1计算哈希值Hash′Web_Info,然后使用个人公钥对接收到的进行验签计算,得到HashWeb_Info,,最后与Hash′Web_Info进行比较,若相同,则转到②;反之,服务器向密码保护客户端返回失败。
②服务器将Web_Name、Web_URL、UnameCon_Prop、PwdCon_Prop存入数据表Web_Info中,然后得到索引号Web_ID;
③服务器将网络身份标识、存入数据表User_Info;
④服务器将Web_ID、网络身份标识存入数据表UserInfo_Map_WebInfo。
⑤服务器向密码保护客户端返回成功。
当密码保护客户端请求服务器Web站点信息时:
①服务器根据Web站点名称及URL查询得到Web_ID;
②服务器根据Web_ID查询网络身份标识,并得到站点对应的用户名和密码(密文形式)。
采用了上述的移动设备中基于智能卡实现密码保护控制的方法,对个人信息进行加密存储,并对发送的数据进行非对称算法签名,以满足保密性、完整性和不可否认性三大安全要素,从而具有高安全性;对个人信息进行加密远程存储,且解密的密钥只有智能卡携有,所以服务器只看到密文,降低用户隐私信息泄露的风险,从而具有高隐私性;通过对个人信息进行远程安全存储,使用时可直接从服务器读取并填充到待登录页面上,不需要用户记忆过多的账户信息,避免记忆混乱、密码遗忘等问题,从而具有高可用性;而且由于移动设备的客户端与智能卡的通信采用NFC技术,用户不需随身携带外置读卡器,只需移动设备与智能卡靠近,即可实现信息传输,减轻了用户负担,非常便捷,能够保证用户登录时的个人隐私信息保护,实现了Web站点的安全登录,处理过程安全有效,工作性能稳定可靠,适用范围较为广泛。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。

Claims (9)

1.一种移动终端设备中基于智能卡实现密码保护控制的方法,移动终端设备中内置有近距离无线通信NFC芯片,且该移动终端设备中还装载有密码保护客户端模块,所述的密码保护客户端模块通过所述的近距离无线通信NFC芯片与智能卡建立无线通信连接,且该密码保护客户端模块通过无线通信链路与远程服务器相连接,其特征在于,所述的方法包括个人用户信息配置控制处理和Web站点访问控制处理,所述的个人用户信息配置控制处理,包括以下步骤:
(11)所述的移动终端设备根据用户操作,启动密码保护客户端模块;
(12)所述的移动终端设备通过所述的近距离无线通信NFC芯片读取建立无线通信连接的智能卡中的网络身份标识信息;
(13)所述的密码保护客户端模块根据用户的新增用户的输入操作,从远程服务器的数据库中获取Web站点信息列表;
(14)所述的密码保护客户端模块根据用户的选择操作或者新增站点的输入操作,得到相应的Web站点信息;
(15)所述的密码保护客户端模块根据用户的输入操作,使用智能卡内存储的密钥对所得到的个人用户信息进行加密操作;
(16)所述的密码保护客户端模块将所述的Web站点信息及加密后的个人用户信息进行签名操作,并通过无线通信链路送至所述的远程服务器;
(17)所述的远程服务器使用本地保存的与所述的网络身份标识信息相对应的密钥对所接收到的加密后的个人用户信息进行验证操作;
(18)如果验证失败,则向所述的密码保护客户端模块返回提交失败的结果;
(19)如果验证成功,则进行个人用户信息存储操作,并向所述的密码保护客户端模块返回提交成功的结果;
所述的Web站点访问控制处理,包括以下步骤:
(21)所述的移动终端设备根据用户操作,启动密码保护客户端模块;
(22)所述的移动终端设备通过所述的近距离无线通信NFC芯片读取建立无线通信连接的智能卡中的当前网络身份标识信息;
(23)所述的密码保护客户端模块根据用户的选择操作或者新增站点的输入操作,得到待访问的Web站点信息,并加载完成;
(24)所述的密码保护客户端模块通过无线通信网络访问远程服务器,查询所述的当前网络身份标识对于所述的待访问的Web站点信息是否存在相应的个人用户信息;
(25)如果不存在,则返回个人用户信息配置控制处理中的步骤(13);
(26)如果存在,则从所述的远程服务器中得到相应的个人用户信息,并使用智能卡内存储的密钥对所得到的个人用户信息进行解密操作;
(27)所述的密码保护客户端模块根据解密后的个人用户信息自动填入Web站点的登录信息;
(28)所述的密码保护客户端模块根据用户操作提交相应的登录信息至Web站点服务器。
2.根据权利要求1所述的移动终端设备中基于智能卡实现密码保护控制的方法,其特征在于,所述的Web站点信息包括:
Web站点信息标识Web_ID,为Web站点信息唯一标识符;
Web站点名称Web_Name;
Web站点URLWeb_URL,Web站点的URL地址信息;
用户名控件属性UnameCon_Prop,为Web站点登录页面用于用户名填写的控件属性;
密码控件属性PwdCon_Prop,为Web站点登录页面用于密码填写的控件属性。
3.根据权利要求2所述的移动终端设备中基于智能卡实现密码保护控制的方法,其特征在于,所述的个人用户信息包括:
网络身份标识PID_Code,智能卡的唯一性标识;
用户名User_Name,用户登录Web站点的用户名;
密码Password,用户登录Web站点的密码。
4.根据权利要求3所述的移动终端设备中基于智能卡实现密码保护控制的方法,其特征在于,所述的使用智能卡内存储的密钥对所得到的个人用户信息进行加密操作,具体为:
所述的密码保护客户端模块使用所述的智能卡内所存储的与所述的网络身份标识对应的载体公钥CPub分别对所述的个人用户信息中的用户名User_Name和密码Password进行非对称加密,得到用户名密文和密码密文
5.根据权利要求4所述的移动终端设备中基于智能卡实现密码保护控制的方法,其特征在于,所述的将Web站点信息及加密后的个人用户信息进行签名操作,包括以下步骤:
(161)根据以下公式得到Web站点发送信息Web_Info:
W e b _ I n f o = ( W e b _ I D || W e b _ N a m e || W e b _ U R L || U n a m e C o n _ Pr o p || P w d C o n _ Pr o p || P I D _ C o d e || C C P u b U s e r _ N a m e || C C P u b P a s s w o r d ) ;
其中,||为添附运算符;
(162)对所得到的Web站点发送信息Web_Info使用SHA-1算法计算得到哈希值HashWeb_Info
(163)使用所述的智能卡内所存储的与所述的网络身份标识对应的个人私钥PPri对所述的哈希值HashWeb_Info进行签名,得到签名信息
(164)将所述的签名信息添加到所述的Web站点发送信息Web_Info中。
6.根据权利要求5所述的移动终端设备中基于智能卡实现密码保护控制的方法,其特征在于,所述的对所接收到的加密后的个人用户信息进行验证操作,包括以下步骤:
(171)所述的远程服务器接收到所述的密码保护客户端模块发来的Web站点发送信息Web_Info,并对其中的除去签名信息的部分:
Web_Name||Web_URL||UnameCon_Prop||PwdCon_Prop||PID_Code||使用SHA-1算法计算第二哈希值Hash′Web_Info
(172)所述的远程服务器使用本地所保存的与接收到的网络身份标识PID_Code相对应的个人公钥PPub进行验签计算,并得到哈希值HashWeb_Info
(173)将所述的第二哈希值Hash′Web_Info与验签计算得到的哈希值HashWeb_Info进行比较;
(174)若两者相同,则返回验证成功的结果;否则返回验证失败的结果。
7.根据权利要求4所述的移动终端设备中基于智能卡实现密码保护控制的方法,其特征在于,所述的使用智能卡内存储的密钥对所得到的个人用户信息进行解密操作,具体为:
所述的密码保护客户端模块使用所述的智能卡内所存储的与所述的网络身份标识对应的载体私钥CPri分别对所述的个人用户信息中的用户名密文和密码密文进行非对称解密,得到解密后的用户名User_Name和密码Password。
8.根据权利要求3至7中任一项所述的移动终端设备中基于智能卡实现密码保护控制的方法,其特征在于,所述的进行个人用户信息存储操作,包括以下步骤:
(191)所述的远程服务器将接收到的Web站点名称Web_Name、Web站点URLWeb_URL、用户名控件属性UnameCon_Prop、密码控件属性PwdCon_Prop存入Web站点信息数据表Web_Info中,并得到索引号Web_ID;
(192)所述的远程服务器将接收到的网络身份标识PID_Code、用户名密文和密码密文存入用户信息数据表User_Info中;
(193)所述的远程服务器将所述的索引号Web_ID、网络身份标识PID_Code存入用户信息与Web站点信息映射数据表UserInfo_Map_WebInfo中。
9.根据权利要求8所述的移动终端设备中基于智能卡实现密码保护控制的方法,其特征在于,所述的查询所述的当前网络身份标识对于所述的待访问的Web站点信息是否存在相应的个人用户信息,包括以下步骤:
(241)所述的远程服务器根据Web站点名称Web_Name及Web站点URLWeb_URL在所述的Web站点信息数据表Web_Info中进行查询;
(242)如果无法查询到,则返回不存在相应的个人用户信息的结果;
(243)如果能够查询到,则得到相应的索引号Web_ID;
(244)所述的远程服务器根据所述的索引号Web_ID在所述的个人用户信息与Web站点信息映射数据表UserInfo_Map_WebInfo中进行查询,并得到相应的网络身份标识PID_Code;
(245)所述的远程服务器根据所述的网络身份标识PID_Code在所述的用户信息数据表User_Info中进行查询,得到相应的用户名密文和密码密文并返回存在相应的个人用户信息的结果。
CN201310100850.4A 2013-03-27 2013-03-27 面向移动终端上的智能卡密码保护方法 Active CN103237305B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310100850.4A CN103237305B (zh) 2013-03-27 2013-03-27 面向移动终端上的智能卡密码保护方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310100850.4A CN103237305B (zh) 2013-03-27 2013-03-27 面向移动终端上的智能卡密码保护方法

Publications (2)

Publication Number Publication Date
CN103237305A CN103237305A (zh) 2013-08-07
CN103237305B true CN103237305B (zh) 2016-06-08

Family

ID=48885316

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310100850.4A Active CN103237305B (zh) 2013-03-27 2013-03-27 面向移动终端上的智能卡密码保护方法

Country Status (1)

Country Link
CN (1) CN103237305B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104753675B (zh) * 2013-12-31 2019-04-26 腾讯科技(深圳)有限公司 信息验证方法、电子支付方法、终端、服务器及系统
CN105357007B (zh) * 2014-08-21 2019-05-31 深圳市中兴微电子技术有限公司 加密通信方法及通信终端
CN105592056A (zh) * 2015-09-24 2016-05-18 中国银联股份有限公司 用于移动设备的密码安全系统及其密码安全输入方法
CN105915541A (zh) * 2016-06-07 2016-08-31 惠州Tcl移动通信有限公司 基于nfc的移动终端密码保存与恢复处理方法及系统
CN111401880B (zh) * 2016-09-20 2023-12-12 徐蔚 一种安全支付方法、装置与移动终端
CN107864113A (zh) * 2016-09-28 2018-03-30 平安科技(深圳)有限公司 安全登录方法和系统
CN108768993A (zh) * 2018-05-21 2018-11-06 深圳市云谷创新科技有限公司 关联终端登录的方法和装置
CN109474838B (zh) * 2018-11-01 2020-10-30 腾讯科技(深圳)有限公司 一种数据处理方法、设备、系统及存储介质
CN110012149B (zh) * 2019-02-18 2022-02-25 深圳壹账通智能科技有限公司 应用程序管理方法、装置、终端和存储介质
CN110059473A (zh) * 2019-03-21 2019-07-26 深圳壹账通智能科技有限公司 应用账户登录方法、装置、计算机设备及计算机存储介质
CN111832884A (zh) * 2020-05-27 2020-10-27 福建亿能达信息技术股份有限公司 一种临床医生手术工作量评价系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1921395A (zh) * 2006-09-19 2007-02-28 北京飞天诚信科技有限公司 提高网络软件安全性的方法和系统
CN102143188A (zh) * 2011-04-10 2011-08-03 上海擎龙通信技术有限公司 基于云计算加密存储服务的控制系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8290433B2 (en) * 2007-11-14 2012-10-16 Blaze Mobile, Inc. Method and system for securing transactions made through a mobile communication device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1921395A (zh) * 2006-09-19 2007-02-28 北京飞天诚信科技有限公司 提高网络软件安全性的方法和系统
CN102143188A (zh) * 2011-04-10 2011-08-03 上海擎龙通信技术有限公司 基于云计算加密存储服务的控制系统

Also Published As

Publication number Publication date
CN103237305A (zh) 2013-08-07

Similar Documents

Publication Publication Date Title
CN103237305B (zh) 面向移动终端上的智能卡密码保护方法
CN111079128B (zh) 一种数据处理方法、装置、电子设备以及存储介质
JP6012125B2 (ja) 問い合わせ型トランザクションによる強化された2chk認証セキュリティ
JP6105721B2 (ja) 企業トリガ式2chk関連付けの起動
KR101508360B1 (ko) 데이터 전송 장치 및 방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체
US8868909B2 (en) Method for authenticating a communication channel between a client and a server
US9445269B2 (en) Terminal identity verification and service authentication method, system and terminal
CN113067699B (zh) 基于量子密钥的数据共享方法、装置和计算机设备
CN104662870A (zh) 数据安全管理系统
CN113037484B (zh) 数据传输方法、装置、终端、服务器及存储介质
CN103297403A (zh) 一种实现动态密码认证的方法和系统
CN101815091A (zh) 密码提供设备、密码认证系统和密码认证方法
CN1977559B (zh) 保护在用户之间进行通信期间交换的信息的方法和系统
CN101621794A (zh) 一种无线应用服务系统的安全认证实现方法
CN101978650A (zh) 安全的网络认证系统和方法
CN103701596A (zh) 文件访问及响应文件访问请求的方法、系统和设备
CN101944216A (zh) 双因子在线交易安全认证方法及系统
CN102404337A (zh) 数据加密方法和装置
CN107566393A (zh) 一种基于受信任证书的动态权限验证系统及方法
WO2015104567A1 (en) Secure communication between a server and a client web browser
Chikomo et al. Security of mobile banking
CN201717885U (zh) 密码提供设备和密码认证系统
US8423782B2 (en) Method for authenticating a user accessing a remote server from a computer
KR102053993B1 (ko) 인증서를 이용한 사용자 인증 방법
CN105072136A (zh) 一种基于虚拟驱动的设备间安全认证方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant