CN101427510B - 用于网络功能描述的数字通行 - Google Patents

用于网络功能描述的数字通行 Download PDF

Info

Publication number
CN101427510B
CN101427510B CN2006800537570A CN200680053757A CN101427510B CN 101427510 B CN101427510 B CN 101427510B CN 2006800537570 A CN2006800537570 A CN 2006800537570A CN 200680053757 A CN200680053757 A CN 200680053757A CN 101427510 B CN101427510 B CN 101427510B
Authority
CN
China
Prior art keywords
user
password
key
server
secret
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.)
Expired - Fee Related
Application number
CN2006800537570A
Other languages
English (en)
Other versions
CN101427510A (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.)
Onespan International GmbH
Onespan Inc
Original Assignee
Vasco Data Security International Inc
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 Vasco Data Security International Inc filed Critical Vasco Data Security International Inc
Publication of CN101427510A publication Critical patent/CN101427510A/zh
Application granted granted Critical
Publication of CN101427510B publication Critical patent/CN101427510B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2119Authenticating web pages, e.g. with suspicious links
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer

Abstract

网络数字通行为互联网通信提供比通过使用静态口令来实现的安全性更高的安全性而无需用户安装任何软件或拥有或使用任一种专用硬件。用户仅访问将小程序下载到用户的浏览器的适当网站。这是浏览器所处理的常规功能并且无需用户部分的任何专长。浏览器信任仅为用户所知的口令以便向浏览器/小程序认证用户。浏览器/小程序与服务器交互以创建然后存储于用户的计算机上的认证密钥。用户可以根据用户向浏览器/小程序呈现口令来调用认证密钥。由于在用户-浏览器/小程序交互以外不使用口令,所以它不受黑客攻击。虽然用户无需记忆除口令之外的任何信息,但是也通过加密来保护认证密钥免受攻击。

Description

用于网络功能描述的数字通行
技术领域
本发明涉及计算机联网安全的改进。
背景技术
通过公共网络如互联网远程地访问应用和进行交易已经司空见惯并且与日俱增。这些应用的普及已经引起黑客和犯罪组织的关注。为了保护应用免受未授权访问,许多应用提供商依赖于其用户在登录过程中必须提交用户标识(用户id)和口令的组合。在多数情况下口令是静态的,即同一口令值在相对长的时间段保持有效。
对于黑客获得对远程应用的访问以从事欺诈性的交易而言,获得有效的用户id-口令组合就足够了。例如,一种普遍方法是发送伪造电子邮件(带有某一或多或少可信的托辞)请求用户作为响应发送他的用户id-口令。这常称为钓鱼。另一普遍方法是创建便利地看似真实网站的冒名网站。当然,当用户尝试登录时,捕获他的用户id-口令以便随后滥用。
由于黑客在获得有效用户id-口令组合方面容易成功,所以现在公认单独的静态口令提供过低的安全级以至于对于涉及到昂贵的金融交易等的应用而言是无法接受的。因而需要一种提供更高安全级的替代的用户认证方法。
确实存在替代技术。这些技术包括:
1.证书(即智能卡上的软件或USB令牌)。
2.硬件强认证令牌。
3.软令牌(即模仿硬件强认证令牌的软件)。
4.智能卡。
5.USB令牌。
在多数情况下用户必须配备个性化硬件设备(USB令牌、强认证令牌、智能卡等)或必须安装一些个性化软件(软件证书、软令牌等)。这些解决方案在与普通用户id-口令方法相比时的主要弊端在于:
(a)成本更高(因为为了实施它们而需要具体硬件),或
(b)将用户的移动性限制于具体计算机(特别是其上已经安装硬件或个性化软件的计算机),或
(c)不易于使用(用户需要遵循可能失败的复杂安装过程),或
(d)前述弊端的组合。
因而需要一种提供比用户id-口令更高的安全性但是又保留用户id-口令的主要优点即成本低、易于使用和易于从一个计算机迁移到另一计算机的解决方案。
用户通常使用计算机如个人计算机(pc)来访问远程服务器上的应用。然而也使用除pc以外的设备即移动设备,如个人数据助理(pda)和具有网络功能的蜂窝电话等。出于本申请的目的,术语个人计算机或pc应当包括可以通过互联网访问远程互联网设备如服务器并且借助浏览器软件交换信息和消息的所有这样的设备以及其它相似设备,无论该访问是经由陆上线路还是包括无线部件。
发明内容
用于网络解决方案的数字通行(DigiPass)基于以下原理:
a.对于各用户,服务器将该用户与认证密钥相关联。
b.与具体用户相关联的认证密钥也以网页存储信息(cookie)的形式本地存储于个人计算机中。
c.网页存储信息中存储的用户认证密钥受仅为用户所知的口令保护。
d.服务器的登录网页包含嵌入式认证小程序(即可以在网页中引用和调用而如果在访问的个人计算机中不存在则由浏览器自动下载的软件组件)。该小程序优选为Java小程序,但是可替代地也可以是例如ActiveX组件。
e.认证小程序能够请求用户输入口令。
f.认证小程序能够访问对受口令保护的认证密钥进行存储的网页存储信息。小程序能够利用用户已经输入的口令获得对认证密钥的访问。
g.使用可访问的认证密钥(在服务器中与具体用户关联),认证小程序可以认证用户或对交易数据签名以保证交易的真实性和完整性。
借助这些原理,用于网络解决方案的数字通行实现了比仅仅静态口令更高的安全性:为了成功认证,需要两个因素,即网页存储信息(包含认证密钥)和用户的口令(以便对网页存储信息中存储的认证密钥进行解密)。用于网络解决方案的数字通行提供了一种成本有效的解决方案,因为无需分布硬件而唯一的所需软件(认证小程序)在需要时自动地下载。用于网络解决方案的数字通行还提供了用户便利,因为用户无需经历可能失败的任何特定安装过程并且用户以与静态口令完全相同的方式操作该解决方案、也就是用户只需输入口令(即动态认证机制对于用户完全地透明)。这源于以下事实:该解决方案所需要的一切就是标准浏览器功能或在由浏览器自动下载的小程序中被提供。
在一些情况下(比如在第一次使用小程序时),当具体用户使用小程序时,要求用户选择和输入迁移秘密(migration secret)。迁移秘密或迁移秘密的散列被安全地转移到服务器。如果用户随后尝试使用没有在网页存储信息中存储认证密钥的个人计算机来访问服务器,则将展开以下事件。在检测到这一情况时,认证小程序请求用户输入迁移秘密以及口令。这将称为本地口令且可以与原PC上使用的口令相同或不同。小程序然后可以使用转移秘密从服务器安全地下载认证密钥(在用户的常用PC上的网页存储信息中存储的同一认证密钥或是不同的认证密钥)、然后在用户当前利用的PC上的网页存储信息中本地存储所下载的认证密钥[FCO:从某种角度不应该说新PC上的网页存储信息中的认证受到用户随迁移秘密输入的口令的保护?]。利用这一特征,用于网络解决方案的数字通行也提供移动性,例如用户可以从常用PC迁移到不同PC而无需预先计划。
根据前文应当清楚,服务器和用户PC以一个形式或另一形式维持认证密钥。在本发明的一个实施例中信任是基于在用户PC与服务器之间的互联网连接所赋予的标准安全性以维持认证密钥的初始交换的机密性。例如,用户PC和服务器仅信任标准SSL/TLS连接。
在一个替代实施例中,用户和服务器在PC与服务器之间起初联系之前的时间共享秘密。如果用户是建立有用户id和静态口令的用户而意图在于将用户迁移到用于认证目的网络解决方案的数字通行则可以是这种情况。如果用户和服务器共享这样的历史秘密(例如用户的口令),则该秘密可以用来保护认证密钥在用户与服务器之间的初始交换。
在一个实施例中,可以根据某一现有基于口令的认证密钥交换协议(例如SRP-安全远程口令协议)来使用历史秘密(现有静态口令)以保护秘密认证密钥的交换。
在另一实施例中,用户和服务器使用除互联网之外的通信渠道(比如电子邮件、ATM机、基于纸张的邮件等)来直接交换认证密钥或然后将以与上述历史秘密相同的方式来使用的另一秘密。
认证密钥在一个实施例中是在服务器和在用户PC均使用的对称加密密钥。利用对称认证密钥,可以使用基于共享秘密的现有认证协议如挑战握手认证协议(Challenge Handshake Authentication Protocol,CHAP)来实现用户认证。
在一个替代实施例中,认证小程序使用共享认证密钥来模仿硬件强认证令牌。在该情况下小程序生成如下计算的动态口令:
a.小程序获取为服务器隐示或明示地所知的变量输入的值。变量输入可以是当前时间、由服务器动态生成的挑战、本地存储(在与认证密钥相同的网页存储信息中)而在每次使用之后自动递增的计数器的值或上述任何的组合。
b.小程序通过使用某一对称加密算法用认证密钥对变量输入(原样或进行某一特定格式化)进行加密。
c.所得密码(原样或在某进一步的格式化和/或截断之后)是动态口令,且然后发送到服务器。
d.服务器知道变量输入的值和与给定用户相关联的认证密钥的值。利用此数据,服务器执行相同计算以获得它自己的用于动态口令的值。
e.服务器对它生成的动态口令值和它从用户接收的值进行比较。如果两个值相同或以其它方式比较,则认为用户被认证。
可替代地,通过生成消息认证码(Message Authentication Code,MAC)用共享秘密对交易数据签名是一种普遍做法。一个例子在标准ANSI X9.9中有描述。一种替代方式在用于上述认证算法的变量输入中包括交易数据。
作为一种替代方式,认证密钥可以是公共-私有密钥对的私有部分。在该情况下,服务器为各用户保持与该用户相关联的私有密钥对应的公共密钥部分。通过使用公共-私有密钥对来认证用户和对数据签名是这里无需说明的一种普遍做法。
在本发明的一个实施例中,响应于小程序的请求而输入的用户口令的正确性在认证密钥解密之前不会被本地验证。小程序代之以用由用户提供的口令对加密的认证密钥进行解密,但是如果提供的口令的值不正确,则解密的认证密钥的值也会不正确。因而认证将失败。该失败和重复失败的结果依赖于服务器的配置,即在认证尝试连续失败多次时是否以及在多少次试验之后将阻止用户的账户。
在另一实施例中,口令可以在用来对认证密钥进行解密之前由小程序加以本地检查。
在一个实施例中,网页存储信息不仅存储所加密的认证密钥而且存储口令的散列。当用户输入口令时,小程序计算口令的散列并将其与网页存储信息中存储的散列做比较。如果两个值匹配,则用户输入的口令正确而小程序继续对认证密钥解密。
口令的本地认证的主要弊端在黑客已经获取对网页存储信息的访问的情况下出现。该黑客在原理上可以设置离线穷举搜索。另一方面,在(服务器进行的)远程认证的情况下,认证口令的唯一方式是通过尝试验证。因此服务器可以容易地检测到穷举搜索。
在一个实施例中,在用户的PC上存储的网页存储信息可以局限于用户的PC。可以通过不仅认证用户的口令而且认证用户PC的标识来做到这一点。可以通过将用来对网页存储信息中存储的认证密钥加密的口令与代表用户PC标识的一个或多个数据元素的值组合来修改口令从而实施这一点。这些数据可以选择为用户PC处理器、主机板、硬盘驱动、以太网卡等的序列号。例如,通过用户口令和用户PC处理器的序列号(或其一部分)的组合(连续)对认证密钥加密。
在一个实施例中,当用户从一个PC迁移到另一PC时向新的用户PC下载的认证密钥具有与用户旧PC上的认证密钥相同的值。这意味着新的用户PC实际上已经接收旧的用户PC上网页存储信息的副本。
原则上,用户可以从旧的PC和新的PC工作。在实践中如果输入变量基于计数器则这可能产生同步问题,因为两个用户PC上的计数器可能彼此无关地进展。如果用于验证算法的输入变量不是基于计数器而代之以基于挑战则可以避免这一问题。
这一实施例的弊端在于认证密钥的有效副本保持存在于用户已经工作过的各PC上。这可能代表安全风险。
在本发明的另一实施例中,当用户从一个用户PC迁移到另一用户PC时,服务器为下载到新的用户PC的认证密钥生成新值。服务器的操作也使存储于旧的用户PC的网页存储信息中的认证密钥的旧值无效。这避免了出现所加密的秘密认证密钥的有效副本保留于旧的用户PC上这一情形。如果用户迁移到另一用户PC、随后想要再次在原PC上工作则出现弊端。在该情况下用户必须再次迁移到旧的用户PC。然而小程序并不清楚用户PC上的网页存储信息已被无效。在这一情形下,如果旧的用户PC上的小程序不知道可为它所用的认证密钥已被无效,则该情形可能造成连续无效尝试,这又可能造成服务器阻止用户的账户。
因此在本发明的一个方面中提供一种在网络浏览会话的背景下关于网络服务器来认证用户的方法,该用户操作连接到互联网的个人计算机并且借助能够管理和存储网页存储信息的网络浏览器与所述网络服务器通信,该方法提供比使用易于记忆的口令更高的安全性而无需用户维持物理对象,该方法包括:
在个人计算设备中存储包括第一密钥的网页存储信息,该第一密钥以利用取决于仅为用户所知的信息的口令来加密的加密形式存储于网页存储信息中,该第一密钥也为网络服务器所知并且在网络服务器中与用户关联,
浏览器响应于针对包含嵌入式小程序的网页的访问请求从网络服务器接收该网页,在该网页中嵌入的小程序要求用户输入口令,
小程序使用口令对网页存储信息中存储的加密密钥解密以生成所述第一密钥,以及
利用第一密钥向服务器认证用户和/或对发送到服务器的数据签名。
在本发明的另一方面中提供一种在网络浏览会话背景下向网络服务器提供对用户的认证的由服务器实施的方法,该用户以连接到互联网的个人计算机工作,并借助能够管理和存储网页存储信息的网络浏览器与所述网络服务器通信,该方法提供比使用易于记忆的口令更高的安全性而无需用户维持物理对象,该方法包括:
维持将多个用户的每个与不同的第一密钥相关联的文件,
响应于使用个人计算机的特定用户的访问而向个人计算机发送在用户的个人计算机的访问所请求的网页中嵌入的小程序,
所述小程序当在个人计算机上执行时:
请求用户输入口令,
如果存在则访问用户的个人计算机上的网页存储信息,以及用口令对所述网页存储信息中存储的加密的第一密钥解密以恢复与用户有关的第一密钥,以及
使用第一密钥向服务器认证用户和/或对发送到服务器的数据签名。
本发明还提供一种上述方法,其中用户可以利用特定个人计算机来访问网络服务器,该特定个人计算机已维持有被存储的、包括用所述口令来加密的第一密钥的网页存储信息,或其中用户可以利用没有没有维持有被存储的网页存储信息的另一个人计算机来访问网络服务器,或其中用户可以利用特定个人计算机来访问网络服务器,该特定个人计算机维持有被存储的、包括用所述口令来加密的第一密钥的网页存储信息,但是该网页存储信息出于某种原因而丢失或遭破坏,
服务器所维持的所述文件也包括迁移秘密或迁移秘密的散列,
所述服务器在收到与服务器上存储的迁移秘密或迁移秘密的散列有利地做比较的信息时,或借助对用户知道迁移秘密的正确值进行证实的认证协议来认证用户,
服务器随后发送表明用户应当在呈现口令时被认证的指示。
附图说明
将结合附图具体描述该方法和装置以便使本领域技术人员能够实现和使用它们,在附图中:
图1是图示了在包括用户的个人计算(PC)设备与它通过互联网到服务器的连接在内的网络数字通行的主要单元之间关系的示意图;
图2是示出了PC对服务器的访问请求的框图;
图3图示了在注册和激活操作中认证小程序的主要功能;
图4图示了在注册和激活阶段中响应于小程序所发送的信息而执行的服务器功能;
图5图示了在完成激活阶段时服务器和PC所执行的主要功能;
图6图示了操作阶段,该操作阶段示出了在PC与服务器之间的交互中的主要功能;
图7图示了迁移操作,该迁移操作示出了在用户的新PC与服务器之间的交互中的主要功能。
具体实施方式
网络数字通行包括五个阶段:
a.预注册(可选):用户和服务器建立某一共享历史秘密。
b.注册阶段:用户利用PC向服务器注册。
c.激活阶段:通过获得共享认证密钥来激活用户的PC。
d.操作阶段:用户的PC可以使用共享认证密钥来生成动态口令和/或动态签名以认证用户和由用户发起的交易,以及
e.迁移阶段:用户迁移到不同PC。
预注册阶段
在这一阶段中用户和服务器以某种方式建立当激活网络PC(客户机)的数字通行时在后继阶段中将使用的某一共享历史秘密。
这一阶段在网络的数字通行中是可选的。如果要求更高安全级则通常包括该阶段。共享历史秘密可以是:
a.服务器和用户已经共享的现有互联网口令,或
b.出于在注册和激活阶段中使用的目的而专门生成的口令。
c.可以用多种方式在用户与服务器之间交换历史秘密。例如,可以如下发生交换:
1.当用户签约网银服务时在银行支行发生交换。
2.在用户已经插入他的ATM卡并且输入PIN码后通过ATM发生交换,或
3.作为在经由常规邮件向用户发送的印刷机密银行报表中包括的部分其它信息而发生交换,或
4.以经由挂号邮件向用户发送的PIN邮件包的形式发生。
注册阶段
在这一阶段过程中用户注册网络数字通行服务,且网络数字通行在用户的PC(客户机)上激活。图1图示了在这一过程中的重要部件。具体而言,用户操作个人计算机设备10。这通常是个人计算机,不过如上所述也可以使用其它设备。个人计算设备10经由互联网20连接(通过有线或无线连接)到服务器30。继而是其中实现用户PC10的注册的网络会话40。
图2图示了示出个人计算机10的重要部件、服务器30的框图并且标识了在实施注册期间的部分网络会话40过程中交换的重要信息。
图1图示了在操作个人计算设备如PC10的用户与互联网服务器30之间的典型交换,其中PC和服务器参与互联网20所支持的网络会话40。图1代表在网络数字通行的注册、激活和操作阶段中的操作。网络数字通行的优点之一在于用户能够从PC10(图1中所示)的使用迁移到不同PC或其它用户设备。下文将结合图7描述实施迁移的方式。
注册阶段
在使用网络数字通行之前,用户和服务器必须交换某些数据。这是在注册阶段过程中实现的。这时,用户注册网络数字通行服务。
图2是示出了在用户PC10与服务器30之间的交互的框图。在注册和/或激活之前用户PC10将不包括图2中所示小程序12。事实上,在注册和激活阶段过程中小程序12从服务器30被供应到用户PC10。另外,小程序12也将在该过程的稍后阶段创建网页存储信息14。在开始注册阶段时,用户PC10包括可以响应于用户的请求向服务器30发送访问请求41的浏览器11。基于访问请求41中包含的特定URL,服务器用包含如图2中所示小程序12的网页做出响应。小程序12包括注册功能所特有的内容。小程序12也可以包括与激活有关的内容,不过这不是必需的,可以在稍候时间、具体是当要求激活功能时供应用于激活的小程序内容。小程序12也可以包括在操作阶段中将要执行的认证功能所特有的内容。基于如何构造实施,可以仅有提供注册、激活和操作的单个小程序。取而代之,可以有一方面用于注册的不同小程序以及用于激活和操作阶段的另一小程序。另外基于实施细节,操作小程序甚至可以分成不同的段。本领域技术人员将理解如何将小程序分段使得整个操作相对无缝。
浏览器加载小程序12、然后执行它。图2也代表注册阶段的初始级,然而在开始注册阶段时网页存储信息14将不存在。具体而言,用户将浏览器11引向服务器30的网站。响应于访问请求41,服务器30发送适当的小程序,例如注册和激活小程序。当浏览器11接收到和加载小程序12时执行小程序12。
在图3中示出了激活小程序所执行的主要功能。用以建立激活会话密钥的初始功能301是可选的。为了建立激活会话密钥,必须有在执行功能301之前在用户与服务器30之间共享的某一历史秘密。如果是这种情况,则用户可以发起功能301。功能310请求用户输入历史秘密。在接收到秘密时,小程序12使用秘密以及协议基于共享历史秘密来建立公共会话密钥(激活会话密钥)。通常而言,也就是在多数协议中,将生成和交换用来从共享历史秘密中推导公共会话密钥的一些数据(例如所谓的‘调节数据(salt),或‘临时数据(nonce)’);该数据将称为激活会话密钥推导数据。功能301以小程序12保存激活会话密钥推导数据而结束。
随后,功能302,小程序12请求用户选择和输入用户id(UID)。随后,功能303请求用户从预定义问题(“母亲的娘家姓?”、“您最喜欢哪部电影?”、“您的宠物叫什么名字?”等)的列表中选择问题并且输入该问题的秘密答案。答案将使用于迁移阶段中并且将称为迁移秘密或秘密答案。
随后,功能304请求用户选择、输入和确认本地网络数字通行口令。这一网络数字通行口令将成为由PC10用于解密目的的口令(参见图6的功能603、606和607)。具体而言,该口令将用来保护在PC上的网页存储信息中存储的认证密钥。虽然在一些实施例中该口令可以发送到服务器,但是它不会存储于服务器上,因此该口令可以作为仅对PC10可用的信息被参考。
随后,功能305推导激活码屏蔽密钥。这按步骤序列执行。首先,小程序生成随机调节数据。随后,小程序12读取代表用户PC标识的某数据元素的值。这可以是PC处理器、硬盘驱动、主机板等的序列号。小程序然后组合随机调节数据、PC标识值和本地口令以便使用密码算法来获得激活码屏蔽密钥。应当选择具有以下特征的算法:
1.很难发现将导致用于激活码屏蔽密钥的给定值的调节数据、PC标识值和本地口令的组合,以及
2.对于给定的随机调节数据和PC标识值,难以发现将导致激活码屏蔽密钥的给定值的本地口令。
适当的密码算法的一个例子是随机调节数据、PC标识值和本地口令的连接的SHA-1散列。
随后,功能306将注册网页存储信息保存于用户PC10上。该网页存储信息包含两个或三个元素。如果执行过可选步骤301,例如如果用户和服务器在激活之前共享过历史秘密,则第一元素是激活会话密钥推导数据。网页存储信息还包含随机调节数据以及UID。
最后在功能307,小程序12将包含四个元素的注册消息发送到服务器。该消息包含:
a.UID。
b.用户的电子邮件地址。
c.秘密答案(迁移秘密)的散列。
d.激活屏蔽密钥。
如果执行过可选功能301并且对应地建立过激活会话密钥,则用激活会话密钥对注册消息加密。这终止小程序12在注册阶段中的操作。
图4图示了在注册阶段的结束部分以及激活阶段的初始级中服务器30对小程序12所提供的信息的响应。
如图4中所示,在初始功能401中,服务器30接收注册消息。如果该消息已被加密则在功能402对它解密。
在功能403,服务器使用UID、电子邮件地址和秘密答案(迁移秘密)的散列来注册用户。
在功能404,服务器生成数字通行块(DigiPass Blob)。用于这一特定用户的数字通行块示例包含数字通行秘密认证密钥(始发于服务器)和数字通行算法参数,例如指示了用于数字通行OTP(随后描述)和签名算法的变量输入类型的参数、指示了向变量输入施加的格式化类型的参数、指示了向密码施加的格式化类型的参数。数字通行块示例被分配给用于这一特定用户的UID(功能405),也就是对其编索引使得其内容与这一用户关联。
服务器30然后执行功能406至408。
具体而言,在功能406中,服务器30用激活码屏蔽密钥对数字通行块加密;其结果称为激活码。如果激活会话密钥可用,则服务器30然后用激活会话密钥对激活码加密。重申一点,激活会话密钥是可选的并且要求历史秘密在用户与服务器30之间的预备共享。最后在功能408,服务器将包含激活URL的电子邮件发送到位于用户注册的电子邮件地址的用户。激活URL然后在由用户访问时向用户提供如下文描述的激活小程序。
图5图示了在服务器30执行功能408之后完成激活过程。
如图5中所示,执行的下一步骤是由用户PC10执行的功能501。功能501在用户选择激活URL时发生。当服务器30接收到来自PC10用户的访问时,服务器30将包含用户标识的具体数字通行激活码的网页随激活小程序一起发送。
在用户PC10接收激活小程序和数字通行激活码。在功能503中小程序读取PC10中存储(在功能306存储)的注册网页存储信息。
如果有过共享历史秘密以对注册阶段作准备,则小程序在功能504请求用户输入历史秘密。如果有这样的秘密,则PC10重建激活会话密钥(根据用户输入的共享历史秘密和注册网页存储信息中存储的激活会话密钥推导数据)。对激活会话密钥的访问允许小程序对激活码解密。另一方面,如果没有过历史秘密,则激活码不会已被加密,因此将无需解密操作。
随后在功能505,用户PC10将数字通行块网页存储信息保存于PC10上。块网页存储信息包含UID、随机调节数据、数字通行激活码和特定计数器值。
为了确认成功激活,数字通行认证小程序生成动态口令(功能506)。服务器30接收动态口令(功能507)。这就完成了激活阶段。动态口令在功能506中的生成及其在功能507的验证在服务器确认了激活已经成功。功能506的细节与将要结合图6描述的功能603-609相同。
图6图示了在操作阶段中在PC10与服务器30之间的交互。
如在功能601所示,操作阶段在用户继注册之后指引PC10访问服务器30的适当网站时启动。响应于用户的访问,服务器30在功能602将包含认证小程序的登录网页发送到用户。在PC10的认证小程序指引功能603等。
具体而言,在功能603请求用户输入用户已经在图3的功能304中选择和输入过的本地口令。在功能604,小程序读取PC ID值(已经在功能305的加密算法中使用过)。在功能605,小程序读取块网页存储信息以获得随机调节数据。在功能606,小程序基于在功能603至605中恢复的数据来重建激活码屏蔽密钥。用在功能607的重建的激活码屏蔽密钥对激活码解密。
基于解密的激活码,功能608生成一次性口令(One Time Password,OTP)。功能609将OTP发送到服务器。(由服务器30执行的)功能610提供对在服务器30接收的OTP的验证。服务器30通过使用其自身的数据值来验证OTP并且生成然后与接收的OTP做比较的OTP的服务器版本。对OTP的验证向服务器30认证了用户。
作为一种将OTP发送到服务器30用于认证目的的替代方式,用户可以使用OTP对与交易或消息有关的数据加密或签名。这将实际上使用户对用于交易或消息的数据“签名”,从而数据和/或消息将被服务器30作为可靠的而接受。
迁移阶段
已经从一个PC注册和使用网络数字通行服务的用户可能希望从尚未注册的不同PC使用网络数字通行服务。另外,有时重要的是用户能够例如在心血来潮的基础上无计划地执行这一功能。网络数字通行服务在迁移阶段中提供这一功能。
图7图示了在迁移阶段过程中执行的功能。用户起初从PC100访问服务器30的网站(功能701),该PC100没有被注册且因此不存储PC10上存储的数据。服务器30通过发送具有认证小程序的登录网页对来自用户的访问请求做出响应,例如服务器30对来自PC100的访问请求做出响应与它对来自注册PC如PC10的请求做出响应并无不同。
在功能703,已经在浏览器11中安装的小程序确定没有存储的块网页存储信息,如同PC被激活和注册的情况下的那样。因而小程序向用户提议迁移功能(功能703)。为了这里的描述,假设用户同意迁移功能(功能704)。
随后小程序在进行了一些修改的情况下重复如结合图3、图4和图5描述的注册和激活功能。用户电子邮件地址和UID不变。然而为了认证用户,将请求用户输入先前已经在功能303输入过的秘密答案。此外还将要求用户输入新的本地口令取代在功能304输入的本地口令。
小程序和服务器利用秘密答案作为历史秘密并且执行已经说明的注册和激活过程。
在迁移阶段中的一个实施问题在于服务器所生成的秘密认证密钥是否应当与服务器已经生成过且与原来注册的PC10一起使用的秘密认证密钥相同,或者该秘密认证密钥是否应为新的秘密认证密钥。实际上,在迁移阶段中生成的秘密认证密钥可以相同或不同,因为任一实施例各有利弊。一个优点在于使用同一认证密钥允许用户按照需要从旧的PC和新的PC交替地工作。一个弊端在于如果计数器值形成密钥的元素,则可能有同步问题,因为旧的PC和新的PC会更有可能存储不同的计数器值。当然,如果用于认证算法的输入变量没有基于计数器,则可以消除这一弊端。这一方式的另一弊端在于秘密认证密钥的有效副本保持存在于用户已经注册和激活的每个PC上。这可能本身就代表安全风险。
取而代之,服务器30可以针对用户迁移到的各新PC生成新的秘密认证密钥。这必然地意味着较早的秘密认证密钥变成无效。这一实施例的优点在于在先前使用的PC上存在旧的秘密认证密钥不再是风险,因为那些密钥是无效的。该方式的一个弊端在于如果已经迁移到PC100的用户现在希望返回PC10,则用户将必须执行另一迁移操作,因为在PC10中包含的秘密认证密钥已经由于到PC100的迁移而被无效。
应当清楚这一说明书描述了本发明的一个或多个实施例子。本领域技术人员将认识到可以做出许多落入本发明的精神和范围内的不同的变化。因而权利要求的范围不应限于这里描述的具体例子。

Claims (8)

1.一种在网络浏览会话的背景下关于网络服务器来认证用户的方法,所述用户操作连接到互联网的个人计算设备并且借助能够管理和存储网页存储信息的网络浏览器与所述网络服务器通信,所述方法提供比使用易于记忆的口令更高的安全性而无需所述用户维持物理对象,所述方法包括:
在所述个人计算设备中存储包括第一密钥的网页存储信息,所述第一密钥以利用取决于仅为所述用户所知的信息的口令来加密的加密形式存储于所述网页存储信息中,所述第一密钥也为所述网络服务器所知并且在所述网络服务器中与所述用户相关联,
所述浏览器响应于针对包含嵌入式小程序的网页的访问请求从所述网络服务器接收所述网页,在所述网页中嵌入的所述小程序要求所述用户输入所述口令,
所述小程序使用所述口令对所述网页存储信息中存储的加密的所述密钥进行解密以生成所述第一密钥,以及
利用所述第一密钥向所述服务器认证所述用户和/或对发送到所述服务器的数据签名。
2.根据权利要求1所述的方法,其中用所述取决于仅为所述用户所知的信息的口令和代表所述个人计算设备的至少一个特征的信息的组合对所述网页存储信息中存储的所述加密的第一密钥进行加密。
3.一种在网络浏览会话背景下向网络服务器提供用户的认证的由服务器实施的方法,该用户通过连接到互联网的计算机操作并且借助能够管理和存储网页存储信息的网络浏览器与所述网络服务器通信,所述方法提供比使用易于记忆的口令更高的安全性而无需所述用户维持物理对象,所述方法包括:
维持将多个用户的每一个与不同的第一密钥相关联的文件,
响应于使用个人计算机的特定用户的访问而向所述个人计算机发送在所述用户的个人计算机的访问所请求的网页中嵌入的小程序,
所述小程序当在所述个人计算机上执行时:
请求所述用户输入口令,
如果所述用户的个人计算机上存在网页存储信息,则访问该网页存储信息,以及
用所述口令对所述网页存储信息中存储的加密的第一密钥进行解密以恢复与所述用户有关的第一密钥,以及
使用所述第一密钥向所述服务器认证所述用户和/或对发送到所述服务器的数据签名。
4.根据权利要求3所述的方法,其中所述用户可以利用特定的个人计算机来访问所述网络服务器,所述特定的个人计算机已维持有被存储的、包括用所述口令来加密的第一密钥的网页存储信息;或其中所述用户可以利用没有维持有被存储的所述网页存储信息的另一个人计算机来访问所述网络服务器;或其中所述用户可以利用特定的个人计算机来访问所述网络服务器,所述特定的个人计算机维持有被存储的、包括用所述口令来加密的第一密钥的网页存储信息,但是所述网页存储信息出于某种原因而丢失或遭破坏,
所述服务器所维持的所述文件也包括迁移秘密或迁移秘密的散列,
所述服务器在接收到与所述服务器上存储的所述迁移秘密或所述迁移秘密的散列有利地做比较的信息时,或借助对用户知道所述迁移秘密的正确值进行证实的认证协议来认证所述用户,
所述服务器随后发送表明应当在呈现所述口令时认证所述用户的指示。
5.根据权利要求4所述的方法,其中所述与所述服务器上存储的所述迁移秘密或所述迁移秘密的散列有利地做比较的信息包括用所述口令来加密的所述第一密钥。
6.根据权利要求4所述的方法,其中所述与所述服务器上存储的所述迁移秘密或所述迁移秘密的散列有利地做比较的信息包括用所述口令来加密的不同于所述第一密钥的第二密钥,其中所述第二密钥可以取代所述第一密钥由所述小程序用来向所述服务器认证所述用户。
7.根据权利要求4所述的方法,其中发送到所述个人计算机的所述小程序以一个或多个段来发送。
8.根据权利要求7所述的方法,其中仅根据请求来发送所述小程序的特定段。
CN2006800537570A 2006-03-09 2006-03-09 用于网络功能描述的数字通行 Expired - Fee Related CN101427510B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2006/008439 WO2007102823A1 (en) 2006-03-09 2006-03-09 Digipass for the web-functional description

Publications (2)

Publication Number Publication Date
CN101427510A CN101427510A (zh) 2009-05-06
CN101427510B true CN101427510B (zh) 2011-05-11

Family

ID=38475164

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800537570A Expired - Fee Related CN101427510B (zh) 2006-03-09 2006-03-09 用于网络功能描述的数字通行

Country Status (9)

Country Link
US (1) US8261087B2 (zh)
EP (1) EP1997270B1 (zh)
CN (1) CN101427510B (zh)
BR (1) BRPI0621455A2 (zh)
DK (1) DK1997270T3 (zh)
ES (1) ES2530715T3 (zh)
MX (1) MX2008011277A (zh)
PL (1) PL1997270T3 (zh)
WO (1) WO2007102823A1 (zh)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8559637B2 (en) * 2008-09-10 2013-10-15 Verizon Patent And Licensing Inc. Securing information exchanged via a network
CN101662465B (zh) * 2009-08-26 2013-03-27 深圳市腾讯计算机系统有限公司 一种动态口令验证的方法及装置
US8572394B2 (en) * 2009-09-04 2013-10-29 Computer Associates Think, Inc. OTP generation using a camouflaged key
AU2011245059A1 (en) * 2010-04-30 2012-11-08 Kl Data Security Pty Ltd Method and system for enabling computer access
SE1050605A1 (sv) * 2010-06-14 2011-12-15 Technology Nexus Ab Ett system och förfarande för att utföra autentisering och digital signering med två faktorer
US8490165B2 (en) 2010-06-23 2013-07-16 International Business Machines Corporation Restoring secure sessions
US8572268B2 (en) 2010-06-23 2013-10-29 International Business Machines Corporation Managing secure sessions
US9444620B1 (en) * 2010-06-24 2016-09-13 F5 Networks, Inc. Methods for binding a session identifier to machine-specific identifiers and systems thereof
US8832807B1 (en) * 2010-08-05 2014-09-09 Christine E. Kuo Method and apparatus for asynchronous dynamic password
KR101264299B1 (ko) * 2011-01-20 2013-05-22 에스케이플래닛 주식회사 Cpns 환경에서 사용자 인증을 위한 인증키 발급 시스템 및 방법
AU2011200413B1 (en) * 2011-02-01 2011-09-15 Symbiotic Technologies Pty Ltd Methods and Systems to Detect Attacks on Internet Transactions
FR2976437B1 (fr) * 2011-06-08 2014-04-18 Genmsecure Procede de securisation d'une action qu'un dispositif actionneur doit accomplir a la demande d'un utilisateur
US8918853B2 (en) * 2011-06-29 2014-12-23 Sharp Laboratories Of America, Inc. Method and system for automatic recovery from lost security token on embedded device
US8789150B2 (en) * 2011-09-22 2014-07-22 Kinesis Identity Security System Inc. System and method for user authentication
US8667569B2 (en) * 2011-09-29 2014-03-04 Target Brands, Inc. Credentials management
US10979226B1 (en) * 2011-10-12 2021-04-13 Cybrsecurity Corporation Soft-token authentication system with token blocking after entering the wrong PIN
US11424930B2 (en) * 2012-05-22 2022-08-23 Barclays Bank Delaware Systems and methods for providing account information
US8954004B1 (en) 2012-09-20 2015-02-10 Trend Micro Incorporated Systems and methods for accessing websites using smartphones
US9608983B2 (en) * 2013-04-30 2017-03-28 Sensormatic Electronics, LLC Authentication system and method for embedded applets
US9305161B1 (en) * 2013-06-24 2016-04-05 Emc Corporation Password hardening system using password shares distributed across multiple servers
US9325684B2 (en) * 2013-08-02 2016-04-26 Qualcomm Incorporated Method for authenticating a device connection for a website access without using a website password
US10013563B2 (en) * 2013-09-30 2018-07-03 Dell Products L.P. Systems and methods for binding a removable cryptoprocessor to an information handling system
US9426156B2 (en) * 2013-11-19 2016-08-23 Care Innovations, Llc System and method for facilitating federated user provisioning through a cloud-based system
US20150213253A1 (en) * 2014-01-28 2015-07-30 Qualcomm Incorporated Authorizing an application for use by a computing device
US9934393B2 (en) * 2015-04-21 2018-04-03 Sap Se Transparent namespace-aware mechanism for encrypted storage of data within web applications
US10791097B2 (en) * 2016-04-14 2020-09-29 Sophos Limited Portable encryption format
US10681078B2 (en) 2016-06-10 2020-06-09 Sophos Limited Key throttling to mitigate unauthorized file access
CN105871927B (zh) * 2016-06-17 2019-09-06 北京奇虎科技有限公司 微端的自动登录方法及装置
GB2551983B (en) 2016-06-30 2020-03-04 Sophos Ltd Perimeter encryption
US10320808B2 (en) * 2016-10-25 2019-06-11 Cerner Innovation, Inc. Clickjacking prevention
US11063758B1 (en) 2016-11-01 2021-07-13 F5 Networks, Inc. Methods for facilitating cipher selection and devices thereof
US10218691B2 (en) 2016-11-30 2019-02-26 Airwatch Llc Single sign-on framework for browser-based applications and native applications
US10320771B2 (en) 2016-11-30 2019-06-11 Airwatch Llc Single sign-on framework for browser-based applications and native applications
CN109302446B (zh) * 2018-08-15 2022-10-25 广州市保伦电子有限公司 跨平台访问方法、装置、电子设备及存储介质
US11042629B2 (en) * 2018-10-09 2021-06-22 EMC IP Holding Company LLC Preventing malicious lockout of user accounts
CN110048850A (zh) * 2019-03-26 2019-07-23 重庆邮电大学 一种基于改进ssl/tls协议的车联网数据安全传输技术
CN111176752B (zh) * 2019-12-20 2023-05-16 汪佐怀 一种浏览器页面内嵌窗口小程序的方法及装置
US11880449B2 (en) * 2020-02-20 2024-01-23 Lenovo (Singapore) Pte. Ltd. Temporary password for password reset
US11502840B2 (en) * 2020-10-08 2022-11-15 Authentico Technologies Ab Password management system and method
CN112328986A (zh) * 2020-11-26 2021-02-05 西安四叶草信息技术有限公司 一种用户身份验证方法、装置、服务器及存储介质
US11929992B2 (en) * 2021-03-31 2024-03-12 Sophos Limited Encrypted cache protection
US11831688B2 (en) * 2021-06-18 2023-11-28 Capital One Services, Llc Systems and methods for network security

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6601169B2 (en) * 1999-12-30 2003-07-29 Clyde Riley Wallace, Jr. Key-based secure network user states
CN1744488A (zh) * 2004-05-11 2006-03-08 微软公司 在即时消息传送会话内共享数据

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6985953B1 (en) * 1998-11-30 2006-01-10 George Mason University System and apparatus for storage and transfer of secure data on web
US8019881B2 (en) * 1998-11-30 2011-09-13 George Mason Intellectual Properties, Inc. Secure cookies
US7082532B1 (en) * 1999-12-30 2006-07-25 Intel Corporation Method and system for providing distributed web server authentication
US6954799B2 (en) * 2000-02-01 2005-10-11 Charles Schwab & Co., Inc. Method and apparatus for integrating distributed shared services system
US7299364B2 (en) * 2002-04-09 2007-11-20 The Regents Of The University Of Michigan Method and system to maintain application data secure and authentication token for use therein
US7100049B2 (en) * 2002-05-10 2006-08-29 Rsa Security Inc. Method and apparatus for authentication of users and web sites
US7359976B2 (en) * 2002-11-23 2008-04-15 Microsoft Corporation Method and system for improved internet security via HTTP-only cookies
US7237118B2 (en) * 2002-12-05 2007-06-26 Microsoft Corporation Methods and systems for authentication of a user for sub-locations of a network location
US20050010764A1 (en) * 2003-06-26 2005-01-13 International Business Machines Corporation System and method for securely transmitting, and improving the transmission of, tag based protocol files containing proprietary information
US7665127B1 (en) * 2004-06-30 2010-02-16 Jp Morgan Chase Bank System and method for providing access to protected services
US7475152B2 (en) * 2004-09-20 2009-01-06 International Business Machines Corporation Approach to provide self-protection function to web content at client side
WO2006045151A1 (en) * 2004-10-26 2006-05-04 Transurban Limited Transaction system and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6601169B2 (en) * 1999-12-30 2003-07-29 Clyde Riley Wallace, Jr. Key-based secure network user states
US6920560B2 (en) * 1999-12-30 2005-07-19 Clyde Riley Wallace, Jr. Secure network user states
CN1744488A (zh) * 2004-05-11 2006-03-08 微软公司 在即时消息传送会话内共享数据

Also Published As

Publication number Publication date
BRPI0621455A2 (pt) 2011-12-13
EP1997270A1 (en) 2008-12-03
MX2008011277A (es) 2008-11-25
EP1997270B1 (en) 2014-12-03
WO2007102823A1 (en) 2007-09-13
ES2530715T3 (es) 2015-03-04
CN101427510A (zh) 2009-05-06
PL1997270T3 (pl) 2015-05-29
US20110314290A1 (en) 2011-12-22
DK1997270T3 (en) 2015-02-16
EP1997270A4 (en) 2013-08-21
US8261087B2 (en) 2012-09-04

Similar Documents

Publication Publication Date Title
CN101427510B (zh) 用于网络功能描述的数字通行
US11468151B2 (en) System and method for memetic authentication and identification
US9148415B2 (en) Method and system for accessing e-book data
US10848304B2 (en) Public-private key pair protected password manager
US10445487B2 (en) Methods and apparatus for authentication of joint account login
US10045210B2 (en) Method, server and system for authentication of a person
US20090063850A1 (en) Multiple factor user authentication system
TR201810238T4 (tr) Bir mobil kimlik doğrulama uygulaması kullanarak kullanıcıya uygun kimlik doğrulama yöntemi ve aparatı.
US9998288B2 (en) Management of secret data items used for server authentication
CN1885771A (zh) 用于建立安全通信会话的方法与装置
US9124571B1 (en) Network authentication method for secure user identity verification
CN106845986A (zh) 一种数字证书的签章方法及系统
EP2514135B1 (en) Systems and methods for authenticating a server by combining image recognition with codes
JP2018026631A (ja) Ssl通信システム、クライアント、サーバ、ssl通信方法、コンピュータプログラム
EP2916509B1 (en) Network authentication method for secure user identity verification
JP2004295761A (ja) 端末装置及び情報処理装置
EP2530618B1 (en) Sign-On system with distributed access
WO2016042473A1 (en) Secure authentication using dynamic passcode
JP2007065789A (ja) 認証システム及び方法
EP4058921B1 (en) Device and method for secure communication
TWI778319B (zh) 跨平台授權存取資源方法及授權存取系統
Fujita et al. Design and Implementation of a multi-factor web authentication system with MyNumberCard and WebUSB
CN114003892A (zh) 可信认证方法、安全认证设备及用户终端
WO2023011675A1 (en) System and method for controlling access to target application
JP2022076134A (ja) 認証装置、認証方法及び認証プログラム

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110511

Termination date: 20200309