《离线交互系统和方法.pdf》由会员分享,可在线阅读,更多相关《离线交互系统和方法.pdf(52页珍藏版)》请在专利查询网上搜索。
1、(19)国家知识产权局(12)发明专利申请(10)申请公布号 (43)申请公布日 (21)申请号 202180059805.1(22)申请日 2021.07.21(30)优先权数据63/055,761 2020.07.23 US63/090,104 2020.10.09 US63/125,305 2020.12.14 US(85)PCT国际申请进入国家阶段日2023.01.17(86)PCT国际申请的申请数据PCT/US2021/042645 2021.07.21(87)PCT国际申请的公布数据WO2022/020523 EN 2022.01.27(71)申请人 维萨国际服务协会地址 美国加利。
2、福尼亚州(72)发明人 M扎马尼R库马雷桑M克里斯托多雷斯库C谢菲尔德B普赖斯W顾徐明华S拉古拉曼M萨阿德M奥兹达伊MM米纳伊比多利S达斯(74)专利代理机构 上海专利商标事务所有限公司 31100专利代理师 陈颖周全(51)Int.Cl.H04L 9/08(2006.01)(54)发明名称离线交互系统和方法(57)摘要一种方法包括第一装置从第二装置接收包括数额和第二装置凭证的交互请求消息。所述第一装置可使用对应于服务器计算机私钥的服务器计算机公钥来验证所述第二装置凭证。所述第一装置的安全元件中的可信应用程序可确定所述数额是否小于存储在所述安全元件中的离线数额。在所述数额小于所述离线数额的情况。
3、下,所述可信应用程序可基于所述数额而确定经更新离线数额。所述可信应用程序可生成包括所述数额和可信应用程序凭证的交互响应消息。接着,所述第一装置可向所述第二装置提供所述交互响应消息。权利要求书4页 说明书38页 附图9页CN 116158053 A2023.05.23CN 116158053 A1.一种方法,包括:由第一装置从第二装置接收包括数额和第二装置凭证的交互请求消息;由所述第一装置使用对应于服务器计算机私钥的服务器计算机公钥来验证所述第二装置凭证;由所述第一装置的安全元件中的可信应用程序确定所述数额是否小于存储在所述安全元件中的离线数额;在所述数额小于所述离线数额的情况下,由所述可信应用。
4、程序基于所述数额而确定经更新离线数额;由所述可信应用程序生成包括所述数额和可信应用程序凭证的交互响应消息;由所述可信应用程序使用可信应用程序私钥对所述交互响应消息进行签名以产生交互响应消息签名;以及由所述第一装置向所述第二装置提供包括所述交互响应消息签名的所述交互响应消息。2.根据权利要求1所述的方法,其中所述交互响应消息进一步包括所述第二装置凭证,并且其中所述第二装置验证在所述交互响应消息中接收到的所述第二装置凭证与在所述交互请求消息中提供的所述第二装置凭证匹配。3.根据权利要求1所述的方法,其中所述交互响应消息进一步包括索引。4.根据权利要求3所述的方法,其中所述索引是由所述第一装置和所述。
5、第二装置两者本地跟踪的计数器值。5.根据权利要求1所述的方法,进一步包括:在接收所述交互请求消息之前,由所述第一装置从与所述服务器计算机公钥相关联的服务器计算机接收第一装置凭证和所述可信应用程序凭证。6.根据权利要求1所述的方法,进一步包括:在接收所述交互请求消息之前,由所述第一装置从与所述服务器计算机公钥相关联的服务器计算机接收所述离线数额;以及由所述第一装置将所述离线数额存储在所述安全元件中。7.根据权利要求1所述的方法,其中所述第一装置在所述第一装置与所述第二装置之间的离线交互期间接收所述交互请求消息。8.根据权利要求1所述的方法,其中所述离线数额安全地存储在所述安全元件中。9.根据权利。
6、要求1所述的方法,其中在接收所述交互请求消息之前,由所述第一装置从与所述服务器计算机公钥相关联的服务器计算机接收第一装置凭证和所述可信应用程序凭证;并且其中所述第一装置凭证是由中间凭证授权中心向所述第一装置发出的,其中所述中间凭证授权中心是与所述服务器计算机公钥相关联的所述服务器计算机,并且其中所述服务器计算机公钥是由根凭证授权中心在中间凭证中向所述中间凭证授权中心发出的。10.根据权利要求9所述的方法,其中所述第一装置凭证、所述第二装置凭证和所述服务器计算机公钥是其中信任根是所述根凭证授权中心的公钥基础设施中的组成部分,并且其中所述公钥基础设施分成两个层次,所述两个层次包括第一层次和第二层次。
7、,所述第一层次包括发出凭证的第一组计算机,并且所述第二层次包括管理交互的第二组计算机,其权利要求书1/4 页2CN 116158053 A2中所述第二层次包括所述第一装置和所述第二装置。11.根据权利要求1所述的方法,进一步包括:在预定量的时间之后,由所述第一装置生成包括交互日志、时间和签名的同步消息;以及由所述第一装置将所述同步消息发送到对应于所述服务器计算机公钥的服务器计算机。12.根据权利要求11所述的方法,其中所述服务器计算机验证所述同步消息中的所述签名,验证所述时间介于上一时期结束时间与当前时期结束时间之间,并且其中所述服务器计算机针对所述交互日志中的每次交互,更新如由所述交互日志指。
8、示的所述第一装置的在线余额和另一用户装置的离线余额,生成同步确认消息和所述同步确认消息的使用所述服务器计算机私钥创建的签名,并向所述第一装置提供所述同步确认消息,其中所述方法进一步包括:由所述第一装置从所述服务器接收所述同步确认消息;以及由所述第一装置使用所述服务器计算机公钥验证所述同步确认消息的所述签名。13.根据权利要求12所述的方法,其中所述第一装置的用户失去对所述第一装置的拥有权,并且其中所述用户利用辅助装置来实现生成丢失装置余额恢复消息并将所述丢失装置余额恢复消息发送到对应于所述服务器计算机公钥的所述服务器,其中所述服务器将第一装置公钥添加到黑名单中,等待直到当前时期结束,基于所述当。
9、前时期期间装置的同步而更新所述第一装置的所述在线余额,并将所述第一装置的离线余额设置为零。14.一种第一装置,包括:处理器;以及耦合到所述处理器的计算机可读介质,所述计算机可读介质包括能由所述处理器执行以实施方法的代码,所述方法包括:由所述第一装置从第二装置接收包括数额和第二装置凭证的交互请求消息;使用对应于服务器私钥的服务器计算机公钥验证所述第二装置凭证;由所述第一装置的安全元件中的可信应用程序确定所述数额是否小于存储在所述安全元件中的离线数额;在所述数额小于所述离线数额的情况下,由所述可信应用程序基于所述数额而确定经更新离线数额;由所述可信应用程序生成包括所述数额和可信应用程序凭证的交互响。
10、应消息;由所述可信应用程序使用可信应用程序私钥对所述交互响应消息进行签名以产生交互响应消息签名;以及由所述第一装置向所述第二装置提供包括所述交互响应消息签名的所述交互响应消息。15.根据权利要求14所述的第一装置,进一步包括所述安全元件,所述安全元件包括所述可信应用程序。16.根据权利要求14所述的第一装置,其中通过短程通信信道接收所述交互请求消息,并且通过所述短程通信信道提供所述交互响应消息。17.根据权利要求14所述的第一装置,其中所述交互响应消息进一步包括所述第二装权利要求书2/4 页3CN 116158053 A3置凭证和索引。18.根据权利要求14所述的第一装置,其中在向所述第二装置。
11、提供所述交互响应消息之后,所述第二装置基于所述交互响应消息中的所述数额而更新第二离线数额。19.根据权利要求18所述的第一装置,其中所述第二装置在第二交互期间从第三装置接收包括第二数额和第三装置凭证的第二交互请求消息,并且使用与用于对所述第三装置凭证进行签名的所述服务器私钥相对应的所述服务器计算机公钥来验证所述第三装置凭证,并且其中所述第二装置的第二安全元件中的第二可信应用程序确定所述第二数额是否小于存储在所述第二安全元件中的所述第二离线数额,在所述第二数额小于存储在所述第二安全元件中的所述第二离线数额的情况下,基于所述第二数额而确定第二经更新离线数额,生成包括所述第二数额和所述第二装置凭证的。
12、第二交互响应消息,并使用第二可信应用程序私钥对所述第二交互响应消息进行签名,并且其中所述第二装置向所述第三装置提供所述第二交互响应消息。20.根据权利要求14所述的第一装置,其中所述离线数额是由与所述服务器计算机公钥相关联的服务器计算机生成和发出的。21.根据权利要求14所述的第一装置,其中所述方法进一步包括:在预定量的时间之后,由所述第一装置生成包括交互日志、时间和签名的同步消息;由所述第一装置向对应于所述服务器计算机公钥的服务器发送所述同步消息,其中所述服务器验证所述同步消息中的所述签名,验证所述时间介于上一时期结束时间与当前时期结束时间之间,并且其中所述服务器针对所述交互日志中的每次交互。
13、,更新如由所述交互日志指示的所述第一装置的在线余额和另一用户装置的离线余额,生成同步确认消息,所述同步确认消息包括所述签名确认消息的使用服务器计算机私钥创建的签名,并向所述第一装置提供所述同步确认消息;由所述第一装置从所述服务器接收所述同步确认消息;以及由所述第一装置使用所述服务器计算机公钥验证所述同步确认消息的所述签名。22.一种方法,包括:由第二装置生成包括数额和第二装置凭证的交互请求消息;由所述第二装置向第一装置提供所述交互请求消息,其中所述第一装置使用对应于服务器计算机私钥的服务器计算机公钥来验证所述第二装置凭证,确定所述数额是否小于存储在所述第一装置上的安全元件中的离线数额,基于所述。
14、数额而确定经更新离线数额,生成包括所述数额和可信应用程序凭证的交互响应消息,并使用可信应用程序私钥对所述交互响应消息进行签名以产生交互响应消息签名;由所述第二装置接收包括所述交互响应消息签名的所述交互响应消息;以及由所述第二装置暂时存储所述交互响应消息。23.根据权利要求22所述的方法,进一步包括:由所述第二装置使用对应于所述服务器计算机私钥的所述服务器计算机公钥来验证所述可信应用程序凭证。24.根据权利要求22所述的方法,进一步包括:在临时存储所述交互响应消息之后,由所述第二装置向与所述服务器计算机公钥相关联的处理软件提供所述交互响应消息,其中所述处理软件基于所述交互响应消息中包括的权利要求。
15、书3/4 页4CN 116158053 A4所述数额而更新与所述第一装置相关联的第一在线数额和与所述第二装置相关联的第二在线数额。25.根据权利要求24所述的方法,其中所述处理软件是智能合约。26.根据权利要求24所述的方法,其中所述处理软件被包括在服务器计算机中。权利要求书4/4 页5CN 116158053 A5离线交互系统和方法0001相关申请交叉引用0002本申请要求于2020年7月23日提交的第63/055,761号美国临时专利申请、于2020年10月9日提交的第63/090,104号美国临时专利申请以及于2020年12月14日提交的第63/125,305号美国临时专利申请的权益,所。
16、述美国临时专利申请出于所有目的以引用的方式整体并入。背景技术0003传统上,数字交互是通过基于账户的系统进行的,其中资金的所有权与用户身份相关联。数字交互系统通常基于作为对象存在的令牌,其中资金的所有权通过用户对私人密码密钥的访问来确定。然而,数字交互缺少实体(例如,非数字)交互中存在的许多方面。实物资金的核心特征之一是能够以点对点方式离线交互而不需要中介。这使得实物资金能够充当一种弹性交互系统,用户和资源提供商可以使用它进行交互,而不需要依赖于第三方。0004对于访问装置无法连接到授权计算机以得到授权的情况,现有交互网络可以提供某种形式的离线数字交互。然而,此类方法是不安全的。例如,用户可能。
17、实际上没有必需的资金来执行交互。然而,直到交互完成之后并且资源提供商重新上线时,资源提供商才会知晓这一点。0005实施例单独地和共同地解决了这些和其它问题。发明内容0006一个实施例涉及一种方法,包括:由第一装置从第二装置接收包括数额和第二装置凭证的交互请求消息;由所述第一装置使用对应于服务器私钥的服务器计算机公钥来验证所述第二装置凭证;由所述第一装置的安全元件中的可信应用程序确定所述数额是否小于存储在所述安全元件中的离线数额;在所述数额小于所述离线数额的情况下,由所述可信应用程序基于所述数额而确定经更新离线数额;由所述可信应用程序生成包括所述数额和可信应用程序凭证的交互响应消息;由所述可信应。
18、用程序使用可信应用程序私钥对所述交互响应消息进行签名以产生交互响应消息签名;以及由所述第一装置向所述第二装置提供包括所述交互响应消息签名的所述交互响应消息。0007另一实施例涉及第一装置,包括:处理器;以及耦合到所述处理器的计算机可读介质,所述计算机可读介质包括代码,所述代码可由所述处理器执行以实施一种方法,所述方法包括:由所述第一装置从第二装置接收包括数额和第二装置凭证的交互请求消息;使用对应于用于对所述第二装置凭证进行签名的服务器私钥的服务器计算机公钥来验证所述第二装置凭证;由所述第一装置的安全元件中的可信应用程序确定所述数额是否小于存储在所述安全元件中的离线数额;在所述数额小于所述离线数。
19、额的情况下,由所述可信应用程序基于所述数额而确定经更新离线数额;由所述可信应用程序生成包括所述数额和可信应用程序凭证的交互响应消息;由所述可信应用程序使用可信应用程序私钥对所述交互响说明书1/38 页6CN 116158053 A6应消息进行签名以产生交互响应消息签名;以及由所述第一装置向所述第二装置提供包括所述交互响应消息签名的所述交互响应消息。0008另一实施例涉及一种方法,包括:由第二装置生成包括数额和第二装置凭证的交互请求消息;由所述第二装置向第一装置提供所述交互请求消息,其中所述第一装置使用对应于服务器私钥的服务器计算机公钥来验证所述第二装置凭证,确定所述数额是否小于存储在所述第一装。
20、置上的安全元件中的离线数额,基于所述数额而确定经更新离线数额,生成包括所述数额和可信应用程序凭证的交互响应消息,使用可信应用程序私钥对所述交互响应消息进行签名以产生交互响应消息签名;由所述第二装置接收包括所述交互响应消息签名的所述交互响应消息;以及由所述第二装置暂时存储所述交互响应消息。0009关于本公开的实施例的另外的细节可以在具体实施方式和附图中找到。附图说明0010图1示出根据实施例的交互处理系统的框图。0011图2示出根据实施例的可为用户装置的第一装置的组件的框图。0012图3绘示根据实施例的托管可信执行环境的装置的概述。0013图4示出根据实施例的预交互处理方法。0014图5示出根据。
21、实施例的交互处理方法。0015图6绘示根据实施例的分级离线交互系统。0016图7绘示根据实施例的与分级双层次模型集成的离线交互系统。0017图8A8C绘示根据实施例的离线交互系统中的链式交互。0018图9A9B绘示根据实施例的离线交互系统中的链式交互的聚集。具体实施方式0019在论述本公开的实施例之前,可以进一步详细描述一些术语。0020“用户装置”可以是由用户操作的装置。用户装置的实例可以包括移动电话、智能手机、卡、个人数字助理(PDA)、膝上型计算机、台式计算机、服务器计算机、车辆(例如汽车)、精简客户端装置、平板式PC,等等。此外,用户装置可以是任何类型的可穿戴技术装置,例如手表、耳机、。
22、眼镜等。用户装置可包括能够处理用户输入的一个或多个处理器。用户装置还可以包括用于接收用户输入的一个或多个输入传感器。存在能够检测用户输入的各种输入传感器,例如,加速度计、相机、麦克风等。由输入传感器获得的用户输入可以来自多种数据输入类型,包括但不限于音频数据、视觉数据或生物特征数据。用户装置可以包括用户可以操作的任何电子装置,所述电子装置还可以提供与网络的远程通信能力。远程通信能力的实例包括使用移动电话(无线)网络、无线数据网络(例如,3G、4G或类似网络)、WiFi、WiMax,或者可以提供对网络(例如互联网或专用网络)的访问的任何其它通信介质。0021“用户”可以包括个人。在一些实施例中,。
23、用户可与一个或多个个人账户和/或移动装置相关联。在一些实施例中,用户也可以被称为持卡人、账户持有人或消费者。在一些实施例中,资源提供商可以是用户,并且可以操作用户装置。0022“安全元件”可包括安全的元件。安全元件可包括密码安全的芯片上计算机或微处理器。安全元件可实行密码操作,并且可嵌入具有一种或多种物理安全措施的封装中。在一说明书2/38 页7CN 116158053 A7些实施例中,“安全元件”可包括可安全地执行功能的组件。安全元件可以是安全地存储数据的存储器,使得其访问受到保护。安全元件可包括处理器的安全区域上的可信执行环境。安全元件的实例是通用集成电路卡(UICC)。安全元件的另一实例。
24、是嵌入式安全元件,在更大的机械或电气系统中的嵌入式硬件组件。安全元件的另一实例是硬件安全模块(HSM),它是一个物理计算装置,可保护和管理用于认证的密码密钥,并提供密码处理功能。0023“可信执行环境”(TEE)可包括用于处理数据的安全区域。可信执行环境可以是存储在只读存储器(ROM)上的软件堆栈。可信执行环境可包括在安全元件内。可信执行环境软件堆栈可包括用于访问安全元件的一组资源,提供开发人员对底层安全元件的访问的可信操作系统(TOS),以及在可信应用程序环境内实施特定于应用程序的功能性的一个或多个可信应用程序(TA)。0024在一些实施例中,可信执行环境可以是隔离执行环境,其提供安全特征,。
25、例如隔离执行、利用可信执行环境执行的应用程序的完整性及其资产的机密性。可信执行环境可提供执行空间,所述执行空间为在装置上运行的可信应用程序提供比富操作系统更高的安全级别以及比单独的安全元件更多的功能性。0025“可信应用程序”可包括在可信执行环境内实施的应用程序。可信应用程序可执行特定功能性。可信应用程序可与特定于应用程序的客户端应用程序(CA)配对,所述CA驻存在隔离的可信执行环境空间之外并通过经由可信操作系统与可信应用程序交互来提供面向用户的功能性。0026“访问装置”可以是提供对远程系统的访问的任何合适的装置。访问装置还可以用于与协调计算机、通信网络或任何其它合适的系统通信。访问装置通常。
26、可以位于任何合适的位置处,例如位于商家所在位置处。访问装置可呈任何合适的形式。访问装置的一些实例包括POS或销售点装置(例如,POS终端)、蜂窝电话、个人数字助理(PDA)、个人计算机(PC)、平板PC、手持式专用读取器、机顶盒、电子收款机(ECR)、自动贩卖机、自动取款机(ATM)、虚拟收款机(VCR)、查询一体机、安全系统、访问系统等。访问装置可使用任何合适的接触或非接触操作模式,以发送或接收来自移动通信装置或者支付装置的数据或与移动通信装置或者支付装置相关联的数据。例如,访问装置可以具有读卡器,所述读卡器可以包括电触头、射频(RF)天线、光学扫描器、条形码读取器或磁条读取器以与例如支付卡。
27、之类的便携式装置交互。在一些实施例中,当用户装置由第一用户操作时,访问装置可以是由第二用户操作的用户装置。0027“交互”可以包括互惠作用或影响。“交互”可以包括各方、各装置和/或各实体之间的通信、联系或交换。示例交互包括两方之间的交易和两个装置之间的数据交换。在其它实施例中,交互可以包括支付交易,在所述支付交易中,两个装置可以交互以促进支付。0028“交互数据”可以包括与交互相关的数据和/或在交互期间记录的数据。在一些实施例中,交互数据可以是网络数据的交易数据。交易数据可以包括具有数据值的多个数据元素。0029“凭证”可以包括权限、权利或享有特权的任何证据。例如,访问凭证可以包括对访问某些有。
28、形或无形资产(例如建筑物或文件)的许可。凭证的实例可以包括密码、通行码或机密消息。在另一个实例中,支付凭证可以包括与账户(例如,支付账户和/或与该账户相关联的支付装置)相关联和/或标识账户的任何合适信息。这种信息可以与账户直接相关,或说明书3/38 页8CN 116158053 A8者可以从与账户相关的信息中导出。账户信息的实例可以包括“账户标识符”,例如PAN(主账号或“账号”)、令牌、子令牌、礼品卡号码或代码、预付卡号码或代码、用户名称、截止日期、CVV(卡验证值)、dCVV(动态卡验证值)、CVV2(卡验证值2)、CVC3卡验证值,等等。PAN的实例是16位数字,例如“41470900 。
29、0000 1234”。在一些实施例中,凭证可以被视为敏感信息。0030“数额”可包括某物的数量。数额可包括事物或多个事物在数目、大小、值或范围上的总数。0031“离线数额”可包括离线时(即,当不存在与服务器计算机的直接通信时)可使用的某物的数量。离线数额可本地存储在用户装置上。例如,离线数额可存储在用户装置上的安全元件中。可在离线交互期间利用离线数额。例如,第一用户可选择在第一用户的装置未连接到服务器计算机或未与服务器计算机通信(例如,非在线)时向第二用户提供数额。第一装置可从存储在安全元件中的离线数额中扣除要提供的数额。0032“在线数额”可包括在线时可使用的某物的数量。在线数额可存储在服务。
30、器计算机上。例如,与多个用户相关联的多个在线数额可存储在服务器计算机和/或由服务器计算机维护的数据库上。在一些实施例中,可在在线交互期间利用在线数额。在其它实施例中,来自服务器计算机上的在线数额中的数额可转移到用户装置上的离线数额。例如,服务器计算机可从与第一用户相关联的在线数额中扣除某一数额,接着在安全消息中向第一装置提供该数额。第一装置可将接收到的数额包括到存储在安全元件中的离线数额中。0033“资源提供商”可以是可以提供例如商品、服务、信息和/或访问等资源的实体。资源提供商的实例包括商家、数据提供商、交通部门、政府实体、场地和住宅运营商等。0034术语“验证”及其派生词可以指利用信息来确。
31、定潜在的主体在一组给定的情况下是否有效的过程。验证可以包括任何信息比较以确保某些数据或信息是正确的、有效的、准确的、合法的和/或信誉良好的。0035术语“公钥/私钥对”可包括由实体生成的一对关联密码密钥。公钥可用于例如对要发送到实体的消息进行加密等功能,或用于对应该由实体作出的数字签名进行验证。私钥可用于例如对接收到的消息进行解密或应用数字签名等功能。公钥可由凭证授权中心进行授权,所述凭证授权中心可将公钥存储在数据库中并将其分配给请求公钥的任何其它实体。私钥可保持在安全存储介质中,且通常将仅为所述实体所知。然而,本文中描述的密码系统可具有用于恢复丢失的密钥并避免数据丢失的密钥恢复机制。公钥和私。
32、钥可以是任何适当格式,包括基于RivestShamirAdleman(RSA)或椭圆曲线密码学(ECC)的格式。0036“数字签名”可包括一种类型的电子签名。数字签名可用数字码对文件进行加密,所述数字码可能难以复制。在一些实施例中,“数字签名”可以指基于公钥/私钥对应用算法的结果,所述算法允许签名方表明和验证方验证文件的真实性和完整性。签名方借助于私钥起作用,验证方借助于公钥起作用。这个过程证明发送方的真实性、已签名文件的完整性和所称的不可否认性原则,所述原则不允许否认已经签名的内容。凭证或包括签名方的数字签名的其它数据被称为是由签名方“签名的”。0037“凭证”或“数字凭证”可包括电子文件和。
33、/或数据文件。在某些情况下,凭证或数字凭证可以是装置凭证。在一些实施例中,数字凭证可使用数字签名来将公钥与同身份相关联的数据绑定。数字凭证可用于证明公钥的所有权。凭证可包括一个或多个数据字段,例如身份的合法名称、凭证的序列号、凭证的起始有效日期和终止有效日期、凭证相关许可等。说明书4/38 页9CN 116158053 A9凭证可包含指示凭证有效的第一个日期的“起始有效”日期,以及指示凭证有效的最后日期的“终止有效”日期。凭证还可以包含凭证中包括数据字段的数据的散列。凭证可由凭证授权中心签名。0038“凭证授权中心”(CA)可包括发行数字凭证的实体。凭证授权中心可使用凭证授权中心凭证来证明其身。
34、份,凭证授权中心凭证包括凭证授权中心的公钥。凭证授权中心凭证可用另一凭证授权中心的私钥进行签名,或可用同一凭证授权中心的私钥进行签名。后者被称为自签名凭证。凭证授权中心可维护由凭证授权中心发出的所有凭证的数据库。凭证授权中心可维护被撤销凭证的列表。凭证授权中心可由实体操作,所述实体例如处理网络实体、发行方、收单方、中央银行等。0039“处理器”可以包括处理某事的装置。在一些实施例中,处理器可以包括任何合适的一个或多个数据计算装置。处理器可以包括一起工作以实现期望的功能的一个或多个微处理器。处理器可以包括CPU,所述CPU包括至少一个高速数据处理器,所述高速数据处理器足以执行用于执行用户和/或系。
35、统生成的请求的程序成分。CPU可以是微处理器,例如AMD的Athlon、Duron和/或Opteron;IBM和/或Motorola的PowerPC;IBM和Sony的Cell处理器;Intel的Celeron、Itanium、Pentium、Xeon和/或XScale;和/或类似的处理器。0040“存储器”可以是可存储电子数据的任何合适的装置。合适的存储器可以包括存储指令的非瞬态计算机可读介质,所述指令能够由处理器执行以实施期望的方法。存储器的实例可以包括一个或多个存储器芯片、磁盘驱动器等。此类存储器可使用任何合适的电气、光学和/或磁性操作模式来操作。0041“服务器计算机”可以包括功能强大。
36、的计算机或计算机集群。例如,服务器计算机可以是大型主机、小型计算机集群或作为一个单元运作的一组服务器。在一个示例中,服务器计算机可以是耦合到Web服务器的数据库服务器。服务器计算机可包括一个或多个计算设备,并且可使用各种计算结构、布置和编译中的任一种来服务来自一个或多个客户端计算机的请求。0042I.引言0043本文中描述了一种离线交互系统(OIS),其允许用户执行与另一用户或资源提供商的数字交互,而双方暂时相对于交互中介(例如,网络处理计算机、凭证授权中心、传输计算机、授权实体计算机等;或在一些实施例中,因特网)离线。离线交互系统可用于通过点对点信道离线即时转移任何合适形式的数字货币,从而实。
37、现几乎无限的吞吐量和实时交互延迟。0044各种实施例可确保在离线交互期间资金不能被二次花费(例如,用户不能多次利用数额),因为不存在任何可信中介来防止重放攻击。实施例呈现离线交互系统协议,所述离线交互系统协议通过利用可信执行环境(TEE)生成的数字签名来防止二次花费,所述数字签名在用户装置(例如,智能手机、平板计算机等)上可用。虽然可信执行环境为离线装置带来主要的信任点,但离线交互系统可利用若干密码协议,以确保多个支持TEE的装置之间的安全资金交换,从而确保可靠且安全的交互处理系统。0045本文中所描述的各种实施例提供一种离线交互系统,其允许用户(例如,客户)在两个用户暂时相对于中间装置离线时。
38、执行与另一用户(例如,资源提供商或第二用户)的数字交互。接下来,实施例构建离线交互系统协议,其允许使用与现有数字交互系统相比显著说明书5/38 页10CN 116158053 A10降低参与者的载入开销的公钥基础设施来对离线交互进行点对点授权。一旦预配好,离线交互系统数字钱包就可通过任何合适的通信信道安全地对交互消息进行签名并直接相互发送交互消息,而无需中介来授权和结算交互。接收离线交互系统数字钱包可将离线时接收到的经签名交互消息提交到授权实体计算机(例如,经由传输计算机、网络处理计算机和/或本文中所描述的任何其它装置),同时保证结算这些交互以便从离线交互系统中提取资金。0046A.各种实施例。
39、的概述0047考虑两种装置:第一装置和第二装置,持有关于服务器计算机S的在线账户。各种实施例实现账户维护关于某一装置的用户在服务器计算机S处持有的金额的信息(例如,余额)。根据实施例的离线交互系统协议的一个目标是允许第一装置与第二装置交互以向服务器计算机S提供由x表示的从第一装置的账户到第二装置的账户的数额,而无需任一装置在交互期间与服务器计算机S通信。第一装置(例如,发送方装置)可包括安全元件DA,其可安全地存储数据并经由可信执行环境(TEE)执行代码。一些实施例可能不需要第二装置(例如,接收装置)包括具有可信执行环境的安全元件。在下文中,描述了可信执行环境模型和各种实施例的主要组成部分。接。
40、着,将描述用于设置装置和执行离线交互的离线交互系统协议。0048可信执行环境可以是存储在安全元件内的只读存储器(ROM)上的软件堆栈。堆栈包括用于访问安全元件的一组资源,提供开发人员对底层安全元件的访问的可信操作系统,以及在可信执行环境内实施特定于应用程序的功能性的一个或多个可信应用程序(TA)(参见协议5)。可信应用程序可与特定于应用程序的客户端应用程序(CA)配对,所述CA驻存在隔离的可信执行环境空间之外并通过经由可信操作系统与可信应用程序交互来提供面向用户的功能性。0049离线交互系统可包括服务器、发送方客户端应用程序、接收方客户端应用程序和可信应用程序。服务器可提供注册和设置用户装置以。
41、及管理用户账户的功能性。发送方客户端应用程序可部署在第一装置上。发送方客户端应用程序可提供用户界面,用以通过与可信应用程序交互来发出离线交互,并且与服务器计算机S交互以注册发送方客户端应用程序和可信执行环境。接收方客户端应用程序可部署在第二装置上。接收方客户端应用程序可提供用户界面,用以接收并验证离线交互,并且与服务器计算机S交互以注册客户端应用程序并声明离线交互。在一些实施例中,接收方客户端应用程序可能不与可信执行环境交互。在一些实施例中,装置可包括发送方客户端应用程序和接收方客户端应用程序。例如,如果第一装置从另一客户端(例如,装置C)请求资金,则第一装置可包括接收方客户端应用程序和发送方。
42、客户端应用程序。可信应用程序可部署在第一装置(例如,发送方装置)上。可信应用程序可包括在可信执行环境中。可信应用程序可提供特定于离线交互系统的功能性,用以安全地访问安全元件并管理客户端的离线数额。部署在第一装置上的可信应用程序可用TA表 示。00501.设置协议0051在各种实施例中,离线交互系统协议可让参与交互的两个客户端(例如,用户和/或资源提供商)在一次性在线设置期间向服务器计算机S进行注册,以建立非对称密码密钥,所述非对称密码密钥稍后可用于发出并验证离线交互。在线设置还允许第一装置与服说明书6/38 页11CN 116158053 A11务器计算机S和第一装置(DA)的制造商一起初始化。
43、可信执行环境。可信执行环境设置可包括三个阶段:(1)远程证明,允许制造商或服务器计算机S远程验证可信执行环境堆栈的有效性;(2)可信应用程序预配,允许制造商或服务器计算机S在TEE内部安全地部署可信应用程序;以及(3)可信应用程序注册,允许可信应用程序建立签名密钥对,向服务器计算机S注册签名密钥对,并获取证明签名密钥对的有效性的凭证。00522.存款协议0053在各种实施例中,客户端A可能需要在第一装置在线时初始地将资金存入安全元件,使得第一装置稍后能够执行离线交互。例如,第一装置可请求服务器计算机S将存储在服务器计算机S处并与客户端A相关联的在线数额中的x数额的资金存入存储在可信应用程序TA。
44、中的离线数额。服务器计算机S用显示x是从客户端A的在线数额中扣除的数额的签名作出响应。客户端可信应用程序用服务器的公用验证密钥验证签名,并将x添加到存储在可信应用程序TA中的离线数额。00543.离线交互协议0055离线交互可由接收方装置(例如,第二装置)发起,所述接收方装置将交互请求消息发送到第一装置。交互请求消息可包括第二装置的凭证。在接收到交互请求消息之后,第一装置调用可信应用程序TA来安全地从可信应用程序的TA的数额中扣除交互数额并创建包括交互数额和两个装置的凭证(例如,发送方凭证和接收方凭证)的经签名交互响应消息P。装置A将交互响应消息P发送到第二装置。在接收到交互响应消息P之后,第。
45、二装置验证第一装置的签名和凭证。接着,装置B可确保交互响应消息包含B的凭证(例如,接收方凭证)。如果每次验证都成功,则第二装置接受交互并且可存储交互响应消息P。00564.索赔协议0057如果第二装置想要将从第一装置离线接收到的交互响应消息P中指示的交互数额添加到与第二装置相关联且存储在服务器计算机S处的在线数额,则第二装置可调用索赔协议。在索赔协议期间,第二装置将交互响应消息P发送到服务器计算机S。服务器计算机S验证交互响应消息P的有效性并检查交互响应消息P先前是否使用服务器计算机S存储的交互日志标记为已花费。如果所有验证都成功,则服务器计算机S可将交互响应消息P中指示的数额添加到B的在线数。
46、额,并将交互响应消息P添加到交互日志。00585.收款协议0059在各种实施例中,第二装置可包括具有与第一装置的可信应用程序类似的可信应用程序TB设置的安全元件。在一些实施例中,第二装置可尝试使用先前在交互响应消息P中从第一装置接收到的数额进行离线交互,而无需在线。为此,第二装置可调用收集协议以将交互响应消息P中指示的数额添加到可信应用程序的TB的离线数额中。这可允许第二装置以与第一装置执行上述交互类似的方式离线地利用数额执行交互。00606.取款协议0061在一些实施例中,第一装置可请求将资金从可信应用程序TA移动到存储在服务器计算机S处的在线数额。例如,第一装置可调用调用TA.Withdr。
47、aw来从可信应用程序TA中扣除数额的取款协议,接着向第一装置提供用可信应用程序的TA的签名密钥进行签名的消息。接着,第一装置将经签名提取消息转发到服务器计算机S,所述服务器计算机在验证签名之后将数额添加到与第一装置相关联的在线数额。说明书7/38 页12CN 116158053 A1200627.针对重放和回滚的保护0063为了防止恶意中介(例如,恶意凭证授权中心)重放在服务器计算机S与可信应用程序TA之间交换的消息以及在第一装置与第二装置之间的消息,每个装置可维持在一对装置之间的每轮通信之后递增的单调增加的计数器。在一些实施例中,服务器计算机S和可信应用程序TA可在其经签名消息中包括其计数器。
48、的最新值,使得接收方可根据其本地计数器来验证所有消息的唯一性和排序,所述本地计数器可在每次交换之后进行同步。在一些实施例中,第一装置和第二装置可在发送到其它装置的消息中包括计数器值。0064B.离线交互系统0065图1示出根据本公开的实施例的系统100。系统100包括第一装置102、服务器计算机104、第二装置106、多个装置108和凭证授权中心110。第一装置102可与服务器计算机104、第二装置以及多个装置108中的一个或多个装置可操作地通信。服务器计算机104可与凭证授权中心110可操作地通信。在一些实施例中,当离线时,第一装置102可经由短程通信信道(例如,蓝牙、近场通信等)与第二装置。
49、106通信。在一些实施例中,当在线时,第一装置102可经由远程通信信道(例如,通过空中通信等)与服务器计算机104通信。然而,应理解,实施例不限于此。0066为了简化说明,图1中示出一定数量的组件。然而,应理解,本发明的实施例可以包括多于一个每种组件。此外,本发明的一些实施例可以包括比图1中所示的所有组件更少或更多的组件。0067图1中的装置之间的消息可以使用安全通信协议来发送,所述安全通信协议例如但不限于:文件传输协议(FTP)、超文本传输协议(HTTP)、安全超文本传输协议(HTTPS)、SSL、ISO(例如,ISO 8583)等。通信网络可以包括以下中的任一个和/或组合:直接互连;互联网。
50、;局域网(LAN);城域网(MAN);作为互联网上节点的运行任务(OMNI);安全定制连接;广域网(WAN);无线网络(例如,采用例如但不限于无线应用协议(WAP)、I模式等的协议);等等。通信网络可以使用任何合适的通信协议以生成一个或多个安全通信信道。在一些实例中,通信信道可以包括安全通信信道,安全通信信道可以任何已知方式建立,例如通过使用相互认证和会话密钥,以及建立安全套接层(SSL)会话。0068第一装置102可包括由用户(例如,电话)操作的用户装置。第一装置102可包括如本文中进一步详细描述的安全元件。用户可利用第一装置102执行与第二装置106的交互(例如,交易、数据传输等)。当第一。