CN102356621A - 一种产生安全数据的方法以及其对应装置和计算机程序 - Google Patents

一种产生安全数据的方法以及其对应装置和计算机程序 Download PDF

Info

Publication number
CN102356621A
CN102356621A CN2010800123317A CN201080012331A CN102356621A CN 102356621 A CN102356621 A CN 102356621A CN 2010800123317 A CN2010800123317 A CN 2010800123317A CN 201080012331 A CN201080012331 A CN 201080012331A CN 102356621 A CN102356621 A CN 102356621A
Authority
CN
China
Prior art keywords
entity
secure
secure data
session
security module
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.)
Pending
Application number
CN2010800123317A
Other languages
English (en)
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.)
France Telecom Education Group/paris Telecom Institute
Telecom ParisTech
Original Assignee
France Telecom Education Group/paris Telecom Institute
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 France Telecom Education Group/paris Telecom Institute filed Critical France Telecom Education Group/paris Telecom Institute
Publication of CN102356621A publication Critical patent/CN102356621A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • 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/166Implementing security features at a particular protocol layer at the transport layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)

Abstract

本发明涉及一种产生安全数据以用于根据安全会话建立协议,实现在第一实体与至少第二实体之间实现安全会话的方法。根据本发明,所述方法包括:初始化连接到所述第一实体的第三安全实体的步骤;在所述第三实体内产生所述安全数据的至少一部分的步骤;将所述所产生的安全数据从所述安全第三实体传输到所述第一实体的第一步骤;将在所述第三安全实体中产生的所述安全数据的至少一部分传输到连接到所述第三安全实体的至少先前经初始化的第四安全实体的第二步骤。

Description

一种产生安全数据的方法以及其对应装置和计算机程序
技术领域
本发明涉及管理在通信网络的两个实体之间所进行的信息交换的领域。
更明确地说,本发明依赖于对此类交换的保护。许多应用(尤其是商业应用或用于访问机密信息的应用)使用SSL(安全套接层)或TLS(传输层安全)协议来以保密方式交换数据。虽然对于这些协议存在数学证明,但其整体上由不可靠的计算机系统执行的事实可引起攻击,所述攻击削弱了必须合理地提供给实施这些协议的交换程序的置信度。
背景技术
在通信网络的两个实体之间实施安全连接需要基于SSL协议或TLS协议来起始安全会话。
因此,为了建立此类会话,所述两个实体使用应该要确保所建立的会话将不会受到截夺或窃听的机制。现在,所讨论的实体通常是易受攻击且不安全的,以致于即使其产生依照安全协议(例如,SSL或TLS)的安全提供数据(例如,证书、密码密钥或共享秘密),也无法确保这些实体事先未受到攻击以及所述安全数据在正被计算时不被直接检索到。
已经公开的专利申请案WO 2008/145558描述了一种用于保护交换的方法,此方法能够产生安全数据以便根据用于建立安全会话的协议(例如SSL或TLS协议)在第一实体与第二实体之间实施安全会话。这种方法部分地解决了由不安全实体实施SSL和TLS协议所带有的缺点。
这种方法包括初始化连接到第一实体的第三方安全实体、在第三实体内产生一部分安全数据以及将安全数据从第三安全实体传输到所述第一实体。通常,第三实体为(例如)Java卡类型的智能卡,其执行建立所述安全会话所需要的一部分计算。
因此,WO 2008/145558中所描述的方法使得能够在两个实体之间起始数据交换,同时确保已以安全方式设计了建立所述会话所需要的密码材料。
然而,当必须多次交换不同文件若时,有必要多次采用WO 2008/145558中所描述的方法,使用此方法的次数和传输文件的数目相同。
现在,例如智能卡或Java卡等安全实体的处理和输入/输出能力通常较低;在性能方面,使用这种安全实体来实行密集型密码处理操作并不现实。因此,仅仅使用WO 2008/145558中所描述的方法,无法在需要高性能以及并行地进行多个安全会话时使用。
发明内容
本发明不具有现有技术的这些缺点。实际上,本发明涉及一种用于产生安全数据以用于根据用于建立安全会话的协议在第一实体与至少一个第二实体之间实现安全会话的方法。
根据本发明,所述方法包含:
-用于初始化连接到所述第一实体的第三安全实体的步骤;
-用于在所述第三实体内产生所述安全数据的至少一部分的步骤;
-用于朝向所述第一实体传输由所述第三安全实体产生的所述安全数据的第一步骤;
-用于将所述第三安全实体内产生至少一部分安全数据传送给预先初始化并与第三实体相连的第四安全实体的第二步骤。
因此,本发明使得例如芯片、智能卡、道尔芯片等不同安全实体能够具有可用的安全数据(例如加密数据)且同时不需要自己产生这些数据片段。这些数据片段是借助于另一安全实体而产生且在其创建之后进行传输以在随后再次使用。
根据本发明的一个特定实施例,所述称为主实体的第三实体产生至少一部分在所述第一实体与所述第二实体之间共享的秘密。
因此,与所有安全实体平等地共享所述秘密。因此,所述安全实体可此后在需要时再次利用所述秘密来(例如)开始新的安全会话。
更明确地说,传送给称为从属实体的至少一个第四安全实体的至少一部分安全数据,包含已加密的共享秘密和至少一个安全通话识别码。
因此,将呈加密形式的安全数据传输到从属模块的事实使得有可能防止对这些安全数据片段的任何盗窃或企图盗窃。
根据本发明的一个特定实施例,所述安全会话建立协议为SSL协议。
根据本发明的一个特定实施例,所述安全会话建立协议为TLS协议。
根据本发明的一个特定特征,所述产生方法此外包含:
-用于由所述第一实体将至少一个消息传输到在所述第三实体内实现的功能性“RECORD”单元的步骤;
-用于由所述第一实体接收来自所述功能性“RECORD”单元的至少一个消息的步骤;
-用于由所述第三实体计算一组密钥的步骤;
-用于由所述第一实体从所述第三实体收集所述一组密匙中可用密钥的步骤。
因此,本发明能够产生由例如若干智能卡等若干安全实体共享的秘密,因为所有密钥均由第三实体计算。
更明确地说,由从所述第三实体获得所述安全数据的安全模块管理器实施所述第二传输步骤。
根据本发明的一个特定特征,在用于重新开始所述安全会话的阶段期间实施所述第二传输步骤。
因此,本发明使得能够集中管理安全实体之间的密钥共享且因此提高整个系统的安全级别。
根据另一方面,本发明还涉及一种用于根据用于建立安全会话的协议在第一实体与至少一个第二实体之间建立安全通信会话的方法。根据本发明,所述方法包含:
-用于获得会话识别符和在由连接到所述第一实体的第三安全实体所保护的先前通信会话中所计算的临时秘密的步骤;
-用于将所述会话识别符和所述临时秘密传输到预先经初始化且连接到所述第三安全实体的第四安全实体的步骤;
-用于通过使用所述第四安全实体来建立所述安全通信会话的步骤。
因此,本发明使得能够使用例如智能卡或Java卡等其它安全实体来建立先前已由另一安全实体初始化的安全通信会话。因而,本发明使得能够通过使用若干安全实体的服务来并行地处理例如文件下载等若干事务,同时使得用以建立会话的会话建立时间减到最少且同时提供卓越的安全级别。
本发明还涉及一种用于产生安全数据从而使得第一实体与至少一个第二实体之间能够根据用于建立安全会话的协议实现安全会话的装置。根据本发明,所述装置包含:
-用于初始化附接到所述第一实体的第三安全实体的初始化构件;
-用于在所述第三实体内产生所述安全数据的至少一部分的构件;
-用于将所述安全数据传输到所述第一实体的构件;
-用于传输在所述第三安全实体内产生的既定用于预先经初始化且连接到所述第三安全实体的至少一个第四安全实体的所述安全数据的至少一部分的构件。
根据本发明的一个特定实施例,所述生产构件和所述传输构件在智能卡中被组合在一起。
根据一个特定实施例,本发明还涉及一种便携式装置,例如USB密钥,其包含用于存储安全模块管理器的构件和至少两个SIM格式卡读出器以及如上文所描述的用于产生安全数据的装置。
根据另一方面,本发明涉及一种软件产品,其可从通信网络下载和/或存储于计算机可读载体上和/或可由微处理器执行,且包含用于执行如上文所描述的所述产生方法的程序代码指令。
根据另一方面,本发明还涉及一种软件产品,其可从通信网络下载和/或存储于计算机可读载体上和/或可由微处理器执行,且包含用于执行如上文所描述的所述用于建立会话的方法的程序代码指令。
附图说明
通过借助于简单的说明性且非详尽实例来给出的以下对优选实施例的描述中并通过附图,本发明的其它特征和优点将更清楚地显现,附图中:
图1为根据本发明的用于产生安全数据的方法的框图;
图2说明根据本发明的借助于安全模块栅格实施安全方法的实例;
图3呈现根据本发明的安全模块栅格的逻辑架构;
图4描述用于产生安全数据的装置(还称为安全模块)的架构。
具体实施方式
对本发明原理的提示
本发明的一般原理依赖于联合实施包括若干安全模块且称为安全模块栅格的集合。此安全模块栅格包括在建立安全通信会话时起作用的若干安全实体。因此,不同于在文献WO 2008/145558中所描述的方法的情况,本发明可用以解决使用外部安全实体所固有的性能问题。
因此,本发明在建立安全会话时提高安全级别,同时维持由希望建立安全会话的实体(例如,客户端和服务器)构成的验证系统和(例如)连接到客户端的安全模块栅格(包括第三和第四实体)的一般性能。
通常,安全模块栅格可采取一个或一个以上“道尔芯片”型智能卡的形式,所述智能卡将插入到特定读卡器中,所述特定读卡器将插入到(例如)计算机的USB(通用串行总线)类型的位置或实现希望建立安全会话的实体与安全模块栅格之间的通信的任何其它形式中。
安全模块栅格可专用于实施例如SSL和/或TLS等特定协议。然而,其并不是本发明的仅有可能的实施例。实际上,有可能构想出其中安全模块栅格可实施若干协议以便确保较大的互操作性的情形。
回想到,在本发明的上下文中,术语“安全模块”表示通常称为“防篡改装置”的电子芯片,其能够管理物理和逻辑对策。
此安全模块尤其包含SSL/TLS软件堆栈,所述SSL/TLS软件堆栈包含所属领域的技术人员众所周知的HANDSHAKE、ALERT、CCS和RECORD功能性单元。此安全模块借助于用以交换SSL/TLS协议消息且获得至少四种类型的参数(“keys_bloc”、“cipher_suite”、“SessionID”和“master_secret”的加密值)的功能接口来与用户实体(客户端或服务器)通信。
借助于在不同安全模块之间共享的秘密密钥和公用值salt来根据以下关系获得“master_secret”的加密值(Master_secret*),
Master_secret*=F(Key_Module,salt,MasterSecret)
使用安全模块的实体管理通信层,且集成功能性单元ALERT和RECORD以及(任选地)功能性单元HANDSHAKE和CCS。来自APPLICATION层的信息片段受RECORD层保护。
本发明提议联合实施用户实体和安全模块栅格来与服务器建立安全会话。巧妙的是,建立所述会话所需要的一部分步骤是借助于安全模块栅格来执行的,而其它部分是由用户实体来进行的。在本发明的一个特定实施例中,情况可能是用户实体和安全模块栅格所实施的步骤在每次建立新的安全会话时有所不同。因此,较难以规划系统的一般功能并设法强制实行本发明所提供的安全机制。
在本发明的一个特定实施例中,在安全模块栅格内,在两种不同类型的安全模块(主模块与从属模块)之间存在差别。从属安全模块取决于主安全模块,从属安全模块在没有主安全模块的情况下无法工作。更明确地说,根据本发明,主模块为能够计算特定临时秘密(“mastersecret”,其为将在下文中使用的术语)的仅有单元。
可回想到,在(例如)实施TLS协议的上下文中,在称为“完全模式”阶段的阶段中计算“mastersecret”。在此阶段期间,客户端与服务器之间的交换使得能够计算共同秘密,所述共同秘密在客户端与服务器之间共享且充当用于创建安全会话所需要的所有其它加密数据的基础。
在根据本发明的安全模块栅格中,只有一个主模块可参与用户实体计算此“mastersecret”。
下文中,为了提供较快的会话重新开始机制,例如在称为“重新开始模式”阶段的阶段的上下文中,从属模块可使用由其主模块所计算的“mastersecret”来继续进行安全会话或在安全会话期间执行其它操作。
根据本发明,从属模块借助于与其相关联的主模块来拥有“mastersecret”。为此,主模块根据本发明将此“mastersecret”分配给从属模块,但以安全模式进行分配。
这意味着,根据本发明,根据操纵主模块和与其相关联的从属模块之间的数据交换的特定协议来进行对“mastersecret”的分配。此类协议可采取传输到这些模块以实现所述交换的命令的形式。
再次,根据本发明,从逻辑角度来看,用户实体的身份仅仅连接到主模块。这意味着,在建立安全会话的过程中,用户实体并不知道从属模块的存在。
参看图1,呈现根据本发明的用于产生安全数据的方法。此方法包含:
-用于初始化附接到第一实体1002(例如,个人计算机)的安全模块1001(例如,智能卡)的步骤(100);
-用于在安全模块内产生一部分安全数据的步骤(101);
-用于将安全数据从安全模块传输到第一实体的步骤(102);
-用于将在安全模块1001内所产生的所述安全数据的至少一部分传输到第二安全模块1003的步骤(103),所述第二安全模块1003预先经初始化且连接到第一安全模块1001,因而形成安全模块栅格1004,在所述安全模块栅格1004中共享至少某些安全数据片段。
换句话说,本发明提议一种用以建立安全数据传输会话且共享数据以建立这些安全传输会话的安全模块栅格。
下文中,呈现本发明的实施例,其中集成到安全模块栅格中的安全模块管理器管理此栅格的一般操作。然而,显然本发明不限于此特定实施模式。
对实施例的描述
在此实施例中,呈现根据本发明的安全模块栅格的实施方案。
给出对安全模块栅格的原始功能的描述,根据本发明,所述安全模块栅格实行TLS协议的验证阶段且接着使得应用程序能够使用预先建立的安全隧道。
如已经提到的,安全模块执行TLS客户端和服务器的功能。其嵌入式软件程序包含功能性单元HANDSHAKE、ALERT、CCS和RECORD。
图2呈现TLS安全模块及其用户,即具备TLS堆栈的子集的应用程序,所述子集所必有的是层RECORD和ALERT且任选地具有层CCS和HANDSHAKE。此用户实体可为客户端(例如,web浏览器类型的客户端应用程序)或服务器(例如,管理安全会话的web服务器)。
安全模块提供功能性接口,所述功能性接口包含九个命令,即SET-Credentials(设置证书)、Start(开始)、Process-TLS(处理TLS)、GET-Keys_bloc(获取Keys_bloc)、Compute-Keys_bloc(计算Keys_bloc)、GET-Cipher_suite(获取Cipher_suite)、GET-SessionID(获取SessionID)、GET-Master_secret(获取Master_secret)、SET-Master-Secret(设置Master-secret)。
所述命令可根据ISO 7816标准根据通常称为APDU(应用协议数据单元)的编码来形成。
实施根据本发明的产生方法的安全模块(210)包含实施所述安全方法所需要的功能性单元,即RECORD(2104)和ALERT(2102)层以及(任选地)CCS(2103)和HANDSHAKE(2101)层。
功能性接口(220)使得用户实体(200)能够使用安全模块(210)来产生安全数据。
对命令的描述
SET-Credentials命令
模块的任务(即,其客户端或服务器实体行为以及其操作所需要的不同参数,通常称为信用证书或证书(X509证书,RSA私有密钥))由SET-Credentials命令()激活:
SET-Credentials(Credentials,role)
Start(Unix-Time)
在此实施例中,“开始”命令初始化TLS站;由于安全模块通常不包括任何时钟,所以其还以称为UNIX的格式提供关于GMT时间的信息(即,测量自从1970年1月1日以来已逝去的秒数的32位数字):
Start(Unix-Time)
此命令使得有可能以说话的方式使安全模块准备执行在本发明的上下文中所需要的计算。
TLS处理
借助于Process-TLS(Record-Packets)命令来将TLS包(即,功能性单元RECORD所产生的消息)传输到安全模块,所述命令返回一个或一个以上RECORD消息。
Record-Packets=Process-TLS(Record-Packets)
GET-Keys_bloc
当TLS安全模块已成功验证了其对话者时,其计算keys_bloc,层RECORD转变为加密模式且传递CCS和FINISHED消息。GET-Keys_bloc命令接着收集所有可用密钥,
keys_bloc=GET-Keys_bloc()
安全模块服务的用户可接着自主地(在没有安全模块的帮助下)管理其自己的RECORD层。实际上,其知道安全信道的密钥(keys_bloc)和等于1的参数seq_num的当前值(值0曾用于消息FINISHED的完整性计算HMAC)。
Compute-Keys_bloc
与客户端实体和服务器实体所产生的随机数(Client-Random和Server-Random)相关联的Compute-Keys_bloc()命令用以计算keys_bloc参数。其在“会话重新开始”类型的会话期间有用,其中安全模块的用户仅使用此会话来获得keys_bloc。
keys_bloc=Compute-Keys_bloc(Client-Random,Server-Random)
重要的是注意到,在此情况下,安全模块将不输出“master_secret”的值。因此,不能够在没有安全模块时实行“会话重新开始”类型的会话,这因此保证用户的良好信任度。
GET-Cipher_suite
GET-Cipher_suite命令使得有可能知道与功能性单元RECORD相关联的数字cipher_suite所索引的安全参数。
cipher_suite=Get-Cipher_suite()
GET-SessionID
GET-SessionID命令返回与和特定“mastersecret”相关联的先前会话相关联的“SessionID”参数。这是用于安全模块栅格的有用信息片段,其使得从属模块能够执行“会话重新开始”阶段。
SessionID=GET-SessionID()
GET-Master_secret
GET-Master_secret()命令收集master_secret的加密值(master_secret*)以及一组参数(salt)以实行对此信息的解密。
master_secret*|salt=GET-Master_secret()
master_secret是借助于对称或不对称(Key_Module)秘密密钥来加密的,由一组安全模块共享,且与加密算法(例如AES、三倍DES、RSA)和由安全模块产生的随机数salt相关联。
Master_secret*=F(Key_Module,salt,MasterSecret)
Set-Master_Secret
Set-Master_Secret(Master_Secret*|Salt,SessionID)命令在(例如)从属类型安全模块中更新与SessionID索引相关联的master_secret。
本发明还涉及这种类型的任何智能卡或安全实体,其包含用于根据由另一安全实体计算的临时秘密(“mastersecret”)来读取、传送和初始化安全会话的先前命令。
换句话说,本发明还涉及一种用于借助于安全实体来建立通信会话的方法,所述安全实体检索临时秘密和先前已由另一安全实体初始化的会话的识别符。这两个安全实体优选彼此连接,使得其存在于同一智能卡内或借助于特定模块进行通信,所述特定模块将管理所述安全实体之间的交互(例如,某些先前所描述的命令的执行)。
因此,根据本发明,借助于所述类型的管理模块(还称为安全模块)来实现数据保护目标,所述管理模块托管和执行尤其履行安全数据的管理和存储功能的软件程序,所述软件程序包含用以执行检索、存储和传输命令的构件,举例来说,所述检索、存储和传输命令是由至少一个软件客户端发送到所述软件且属于预定集合的检索、存储和传输命令(GET-Session_ID、GET-Master_Secret、Set-Master_Secret等)。
实施所述协议
通过使用上文所描述的九个命令,有可能实施所述安全模块栅格。
图3呈现根据本发明的安全模块栅格的逻辑架构,称为安全模块管理器的功能性单元控制多个安全模块。
根据本发明,存在两种类别的安全模块,即称为主模块的模块和称为从属模块的模块。
主模块由从1到p变化的索引来识别。从属模块由绝对大于p的索引来识别。
主模块存储X509证书,而且还存储验证客户端所需要的RSA私有密钥。主模块共享用于mastersecret加密和解密操作的称为KeyModule密钥的密钥。
从属模块与主模块共享共同密码密钥KeyModule,但不存储客户端的私有密钥。
安全模块管理器与至少一个主模块相关联。因此,具有n个模块的配置包含p个主模块(p大于或等于1)以及k=n-p个从属模块(k有可能等于零)。举例来说,包含n=16个模块(其中包括p=4个主模块)的栅格配置将包含k=12个从属模块。
当开通TCP会话时,安全模块管理器优先选择主安全模块。如果此操作为不可能的,即,如果所有主模块被指派给正被开通的会话,那么选择从属模块。如果没有模块空闲,那么安全模块管理器进入等待模块变得可用的状态。
根据本发明,在每一会话的开始处,安全模块管理器更新由先前会话在根据本发明使用Set-MasterSecret命令时所使用的参数(SessionID、MasterSecret)。通过此程序,其使得模块(主或从属)能够管理重新开始模式中的会话。
如果从属模块无法借助于由安全模块管理器所传输的数据来开通重新开始模式中的会话,即,如果服务器指定完全模式中的会话(例如,因为重新开始的会话的寿命已期满),那么其终止当前会话。
在每次开通会话的结束处(当HANDSHAKE程序终止时),安全模块管理器借助于由本发明引入的Get-SessionID和Get-MasterSecret命令来收集SessionID和MasterSecret参数。因此,在后续会话期间,安全模块管理器能够将所收集的数据提供给主模块和从属模块两者。
参看图3,呈现根据本发明的安全模块栅格的示意图。此安全模块栅格300包括托管安全模块管理器(GMS)301的组件,其一方面负责存储且另一方面负责分配由主模块产生的数据。
安全模块栅格300还具有主模块302到305,其产生与安全模块栅格所连接的实体相关的至少一部分安全数据。在上文所呈现的本发明的实施例中,主模块针对“完全”模式中的会话计算MasterSecret的值。栅格还包含从属安全模块307到318。
主模块可与预定数目的从属模块(例如,在图3的实例中为三个)相关联,因此形成安全模块群组306。此预关联并不是必需的。安全模块管理器301可在需要时借助于功能性单元根据所需数目的安全会话来动态地关联从属安全模块,所述功能性单元包含用于在其为(例如)需要下载来自Web服务器的图像或其它元素的http通信会话的情况下获得要下载的多个连接或多个元素的构件。
如此借助于本发明的安全模块栅格的方法和架构来建立安全会话具有许多优点。
令TF和TR分别表示在安全模块中实行FULL(完全)会话和RESUMPTION(重新开始)会话所需要的时间。出于许多科技出版物中所提及的理论原因,TR小于TF(TR<TF),例如,TR约为TF的一半。此属性在Pascal Urien和Mesmin Dandjinou的文章“The OpenEapSmartcard Platform”(Network Controland Engineering for QoS,Security and Mobility,IV:Fourth IFIP InternationalConference on Network Control and Engineering for QoS,Security,and Mobility,Lannion,France,November 14-18, 2005,Dominique
Figure BDA0000091953910000131
有插图的,斯普林格出版社,2007年,ISBN 0387496890,9780387496894)中有详细描述。
在现有技术中,Web服务器广泛使用RESUMPTION模式以便限制不对称计算(RSA等)的负荷。通常,通过http请求,浏览器在FULL模式中下载第一文件(HTML页)且接着在预定义的时期(例如,10分钟)内保持相同的MasterSecret(且因此,授权RESUMPTION模式)。
HTTP 1.1(RFC 2616)标准推荐在Web浏览器与服务器之间最多使用两个TCP连接。然而,例如因特网浏览器(Internet Explorer)等商业浏览器使用多达四个同步TCP连接。
使用单个安全模块使得能够在FULL模式中每秒下载最多1/TF个文件且在RESUMPTION模式中每秒下载最多1/TR个文件。
在缺少本发明所提议的用于在安全模块之间传送MasterSecret的任何程序的情况下,实施N个安全模块不允许超过每秒N/TF个文件的限制。
实际上,由于安全模块不共享数据,所以其必须独立地初始化安全会话。现在,必须以FULL模式而不是以RESUMPTION模式来进行此类初始化。因此,每秒所传输的文件的最大数目不能超过限制N/TF。
本发明的一个有利特征是,其在安全模块之间建立“MasterSecret”的安全交换。在此情况下,实施N个安全模块使得能够每秒下载最多N/TR个文件。实际上,由于根据本发明的安全模块栅格的模块共享MasterSecret(可回想到,其用以构成在HANDSHAKE之后的任何其它密码或加密材料),所以可授权从属模块在RESUMPTION模式中起始会话。
因此,如果浏览器所使用的TCP连接的数目限于NS,那么安全模块的最佳数目N等于此值(N=NS)。通过使用根据本发明的安全栅格架构来根据这点推导出文件下载限制:NS/TF。
对根据本发明的安全模块栅格的描述
参看图4,呈现呈硅集成电路(400)形式的安全模块,其通常称为“防篡改装置”,例如组件ST22(由ST微电子公司生产)且可以例如集成到USB棒或MMC(多媒体卡)存储器中的PVC板(智能卡、SIM卡等)等不同格式获得。
这种安全模块并入有所有安全数据存储构件且还使得能够在安全且受保护的环境下执行软件。
更具体地说,其包含中央处理单元(CPU 401)、存储操作系统的代码的ROM(402)、RAM(403)和用作存储装置的非易失性存储器(NVR,404),所述非易失性存储器类似于硬盘驱动器且含有嵌入式TLS软件程序。系统总线(410)连接安全模块的不同单元。与外界(420)的接口由遵循例如ISO 7816、USB、USB-OTG、ISO 7816-12、MMC、IEEE 802.3、IEEE 802.11等标准的输入/输出(I/O)端口(405)提供。
JAVA型智能卡(通常称为JAVA卡)属于特定类别的安全模块。
在至少一个实施例中,实施本发明的方法的装置采取例如代币或USB棒等便携式装置的形式。此装置包含存储构件,尤其是根据本发明的“安全模块管理器”类型的软件程序,以及至少两个SIM格式的卡的读出器。根据本发明的安全模块管理器的存储可在FPGA(现场可编程门阵列)类型的特定电子组件上进行。
智能读卡器可分别接纳主安全模块和从属安全模块以形成安全模块栅格。当其连接到(例如)个人计算机时,所述装置充当安全资源提供者。
安全模块管理器在个人计算机与安全模块之间建立接口。其尤其能够将用于创建秘密密钥的命令传输到主模块且将用于传输预先计算的秘密密钥的命令传输到从属模块。
因此,在此实施例中,本发明使得有可能以非常简单的方式提供高度安全解决方案,而不必在现有通信架构中做出许多修改:在最差的情况下,将有必要在所述装置必须连接的计算机上安装用于所述装置的特定驱动器:这将(例如)对于具有较老的操作系统的计算机来说为有效的。在最好的情况下,根据本发明的装置被视为标准智能读卡器,从而不需要另外安装。
在此实施例中且在所有情况下,安全模块管理器组件负责作为安全模块栅格与其中插入所述装置的终端之间的接口。

Claims (14)

1.一种产生安全数据以用于根据建立安全会话的协议,在第一实体与至少一个第二实体之间实现安全会话的方法,所述方法的特征在于其包含:
用于初始化连接到所述第一实体的第三安全实体的步骤;
用于在所述第三实体内产生至少一部分所述安全数据的步骤;
用于向所述第一实体传输由所述第三安全实体产生的所述安全数据的第一步骤;
用于将所述第三安全实体内产生至少一部分安全数据传送给预先初始化并与第三实体相连的第四安全实体的第二步骤。
2.根据权利要求1所述的用于产生安全数据的方法,其特征在于所述称为主实体的第三实体产生至少一部分在所述第一实体与所述第二实体之间共享的秘密。
3.根据权利要求2所述的用于产生安全数据的方法,其特征在于传送给称为从属实体的至少一个第四安全实体的至少一部分安全数据,包含已加密的共享秘密和至少一个安全通话识别码。
4.根据权利要求1和2中任一权利要求所述的产生安全数据的方法,其特征在于所述安全会话建立协议为SSL协议。
5.根据权利要求1和2中任一权利要求所述的产生安全数据的方法,其特征在于所述安全会话建立协议为TLS协议。
6.根据权利要求5所述的用于产生安全数据的方法,所述方法的特征在于其进一步包含:
用于由所述第一实体将至少一个消息传输到在所述第三实体内运行的功能性“RECORD”单元的步骤;
由所述第一实体接收来自所述功能性“RECORD”单元的至少一个消息的步骤;
用于由所述第三实体计算一组密钥的步骤;
用于由所述第一实体从所述第三实体收集所述一组密匙中可用密钥的步骤。
7.根据权利要求1所述的用于产生安全数据的方法,其特征在于由从所述第三实体获得所述安全数据的安全模块管理器实施所述第二传输步骤。
8.根据权利要求1所述的用于产生安全数据的方法,其特征在于在用于重新开始所述安全会话的阶段期间实施所述第二传输步骤。
9.一种根据建立安全会话的协议,实现在第一实体与至少一个第二实体之间建立安全通信会话的方法,所述方法的特征在于其包含:
用于获得会话识别符和在由连接到所述第一实体的第三安全实体所保护的先前通信会话中所计算的临时秘密的步骤;
用于将所述会话识别符和所述临时秘密传输到预先经初始化且连接到所述第三安全实体的第四安全实体的步骤;
用于通过使用所述第四安全实体来建立安全通信会话的步骤。
10.一种用于产生安全数据从而使得第一实体与至少一个第二实体之间能够根据用于建立安全会话的协议实现安全会话的装置,所述装置的特征在于其包含:
用于初始化附接到所述第一实体的初始化构件;
用于产生至少一部分的所述安全数据的生产构件;
用于将所述安全数据传输到所述第一实体的传输构件;
用于向预先初始化并连接到第三安全实体的至少一个第四安全实体传输在所述第三安全实体内产生的至少一部分安全数据。
11.根据权利要求10所述的用于产生安全数据的装置,其特征在于所述生产构件和所述传输构件在智能卡中被组合在一起。
12.一种便携式装置,例如USB密钥,其包含用于存储安全模块管理器的构件和至少两个SIM格式卡读出器以及根据权利要求10所述的用于产生安全数据的装置。
13.一种软件产品,其可从通信网络下载和/或存储于计算机可读载体上和/或可由微处理器执行,所述软件产品的特征在于其包含当在计算机上运行时执行根据权利要求1到8中至少一个权利要求所述的产生方法的程序代码指令。
14.根据权利要求1所述的产生方法,其特征在于在重新开始安全通信会话时将所述安全数据传送到所述至少一个安全实体。
CN2010800123317A 2009-03-16 2010-03-16 一种产生安全数据的方法以及其对应装置和计算机程序 Pending CN102356621A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0951646 2009-03-16
FR0951646A FR2943198B1 (fr) 2009-03-16 2009-03-16 Procede de production de donnees de securisation, dispositif et programme d'ordinateur correspondant
PCT/EP2010/053334 WO2010106042A1 (fr) 2009-03-16 2010-03-16 Procédé de production de données de sécurisation, dispositif et programme d'ordinateur correspondant

Publications (1)

Publication Number Publication Date
CN102356621A true CN102356621A (zh) 2012-02-15

Family

ID=41402590

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010800123317A Pending CN102356621A (zh) 2009-03-16 2010-03-16 一种产生安全数据的方法以及其对应装置和计算机程序

Country Status (7)

Country Link
US (1) US20120072994A1 (zh)
EP (1) EP2409474A1 (zh)
CN (1) CN102356621A (zh)
CA (1) CA2754895A1 (zh)
FR (1) FR2943198B1 (zh)
RU (1) RU2011139616A (zh)
WO (1) WO2010106042A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106330692A (zh) * 2016-08-30 2017-01-11 成都极玩网络技术有限公司 轻量级高性能虚拟专用网软件的设计和实现

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10599849B2 (en) * 2018-05-03 2020-03-24 Dell Products L.P. Security module authentication system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1363171A (zh) * 2000-02-10 2002-08-07 第八特许科技公司 在互联网的服务器与具芯片卡的终端间传送数据的方法
WO2006021865A1 (en) * 2004-08-24 2006-03-02 Axalto Sa A personal token and a method for controlled authentication.
US20070055880A1 (en) * 2005-08-18 2007-03-08 Microsoft Corporation Authenticated key exchange with derived ephemeral keys

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6378072B1 (en) * 1998-02-03 2002-04-23 Compaq Computer Corporation Cryptographic system
US7360075B2 (en) * 2001-02-12 2008-04-15 Aventail Corporation, A Wholly Owned Subsidiary Of Sonicwall, Inc. Method and apparatus for providing secure streaming data transmission facilities using unreliable protocols
DE60200093T2 (de) * 2002-03-18 2004-04-22 Ubs Ag Sichere Benutzerauthenifizierung über ein Kommunikationsnetzwerk
US7529933B2 (en) * 2002-05-30 2009-05-05 Microsoft Corporation TLS tunneling
US7587598B2 (en) * 2002-11-19 2009-09-08 Toshiba America Research, Inc. Interlayer fast authentication or re-authentication for network communication
US8578159B2 (en) * 2006-09-07 2013-11-05 Motorola Solutions, Inc. Method and apparatus for establishing security association between nodes of an AD HOC wireless network
FR2916592B1 (fr) * 2007-05-25 2017-04-14 Groupe Des Ecoles De Telecommunications(Get)-Ecole Nat Superieure Des Telecommunications(Enst) Procede de securisation d'echange d'information,dispositif, et produit programme d'ordinateur correspondant

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1363171A (zh) * 2000-02-10 2002-08-07 第八特许科技公司 在互联网的服务器与具芯片卡的终端间传送数据的方法
WO2006021865A1 (en) * 2004-08-24 2006-03-02 Axalto Sa A personal token and a method for controlled authentication.
US20070055880A1 (en) * 2005-08-18 2007-03-08 Microsoft Corporation Authenticated key exchange with derived ephemeral keys

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106330692A (zh) * 2016-08-30 2017-01-11 成都极玩网络技术有限公司 轻量级高性能虚拟专用网软件的设计和实现
CN106330692B (zh) * 2016-08-30 2019-10-08 泉州台商投资区钰宝商贸有限公司 轻量级高性能虚拟专用网软件的设计和实现

Also Published As

Publication number Publication date
WO2010106042A1 (fr) 2010-09-23
RU2011139616A (ru) 2013-04-27
FR2943198B1 (fr) 2011-05-20
FR2943198A1 (fr) 2010-09-17
CA2754895A1 (en) 2010-09-23
US20120072994A1 (en) 2012-03-22
EP2409474A1 (fr) 2012-01-25

Similar Documents

Publication Publication Date Title
CN110493261B (zh) 基于区块链的验证码获取方法、客户端、服务器及存储介质
CN100380356C (zh) 机器认证系统
US5784463A (en) Token distribution, registration, and dynamic configuration of user entitlement for an application level security system and method
US8209753B2 (en) Universal secure messaging for remote security tokens
CN1885771B (zh) 用于建立安全通信会话的方法与装置
US7688975B2 (en) Method and apparatus for dynamic generation of symmetric encryption keys and exchange of dynamic symmetric key infrastructure
US6138239A (en) Method and system for authenticating and utilizing secure resources in a computer system
US8028083B2 (en) Method and system for remote activation and management of personal security devices
CN109450843B (zh) 一种基于区块链的ssl证书管理方法及系统
RU2584500C2 (ru) Криптографический способ аутентификации и идентификации с шифрованием в реальном времени
KR19990076694A (ko) 안전한 통신로 구축 시스템 및 방법
EP1992101A2 (en) Secure data transmission using undiscoverable or black data
CN101809964A (zh) 信息交换安全化方法、设备、及相应的计算机程序产品
CN107800675A (zh) 一种数据传输方法、终端以及服务器
CN1977559B (zh) 保护在用户之间进行通信期间交换的信息的方法和系统
CN104767731A (zh) 一种Restful移动交易系统身份认证防护方法
EP1081891A2 (en) Autokey initialization of cryptographic devices
US20020018570A1 (en) System and method for secure comparison of a common secret of communicating devices
Cheng An architecture for the Internet Key Exchange protocol
CN107409043B (zh) 基于中央加密的存储数据对产品的分布式处理
US20060053288A1 (en) Interface method and device for the on-line exchange of content data in a secure manner
CN116743372A (zh) 基于ssl协议的量子安全协议实现方法及系统
CN102356621A (zh) 一种产生安全数据的方法以及其对应装置和计算机程序
CN110086627B (zh) 基于非对称密钥池对和时间戳的量子通信服务站密钥协商方法和系统
JP2005020580A (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
AD01 Patent right deemed abandoned

Effective date of abandoning: 20151118

C20 Patent right or utility model deemed to be abandoned or is abandoned