用于使用非安全终端安全地执行敏感操作的方法技术

技术编号:17913698 阅读:52 留言:0更新日期:2018-05-10 19:01
本发明专利技术涉及一种用于使用非安全终端(UT)安全地执行敏感操作的方法,包括:由用户终端接收并存储与包括多个软件组件的集合相关的软件组件数据(GCD),每个软件组件执行所述敏感操作并防止篡改和逆向工程;由用户终端从安全处理器(ASRV、SE)接收用于执行所述敏感操作的执行请求(RGC);由用户终端选择一个有效软件组件;由用户终端执行所选择的软件组件,所选择的软件组件的执行提供输出数据;由终端根据所述输出数据将所选择的软件组件的标识符(GCID)和所述敏感操作的响应(ARP)发送到所述安全处理器,所述敏感操作在所接收到的软件组件标识符对应于被设定为无效的软件组件时被所述安全处理器无效;以及由用户终端将所执行的软件组件设定为无效。

【技术实现步骤摘要】
用于使用非安全终端安全地执行敏感操作的方法
本专利技术涉及一种用于从非安全终端安全地认证用户、以及用于基于此类用户认证执行涉及此类非安全终端和远程服务器的安全交易的方法和设备。
技术介绍
期望执行从诸如智能电话、个人计算机、数字平板计算机之类的移动终端、或者任何其它已连接设备(包括属于物联网(IoT)的设备)(不确定这是相关的,因为所要求保护的方法需要人)启动的交易,例如电子商务交易或资金转账。但是,这产生安全问题,特别是因为终端的处理器(CPU)可能执行“恶意软件”。恶意软件可以能够访问可由处理器访问的所有或部分存储器,并且因此可以被恶意地配置为监视由终端执行的任何交易,并恢复在这些交易期间操纵的任何机密数据以便通过网络传输。为了确保此类交易的安全性,已经提出将加密计算委托给专用安全元件,例如UICC(“通用集成电路卡”)卡的处理器,UICC卡例如包括手机通常配备的SIM(用户识别模块)卡。为了能够执行一个或多个支付应用,安全处理器必须能够存储与支付应用一样多的机密加密密钥。但是,将应用加载到安全处理器的存储器中是一种需要高度安全的复杂操作。具体地说,它涉及诸如可信服务管理器之类的外部各方。因为SIM卡由蜂窝电话运营商发行,所以后者可能拒绝将此类应用安装在卡中。此外,在发生被盗的情况下,或者在电话维修期间,SIM卡的处理器可能被寻求发现存储在SIM卡存储器中的密钥的黑客攻击。此外,访问安装在SIM卡的处理器中的安全功能通常需要借助连接到终端的主处理器的小键盘或触敏表面来输入密码(PIN码)。在传统配置中,由用户输入的密码必然经过主处理器。由主处理器执行的恶意软件因此能够访问该密码。由申请人提交的专利申请WO2012/107698公开一种使用终端的图形处理器作为执行交易的安全元件的方法。该方法包括以下步骤:在终端的图形处理器与认证服务器之间建立安全通信链路、以及显示具有以随机顺序布置的键的虚拟小键盘。通过连续显示其中键的标记不可识别的互补帧,使用视觉加密显示小键盘的图像,由于用户的视网膜残留(retinalremanence),互补帧被用户的视觉系统组合成可识别的图像。以这种方式,即使在终端的主处理器上运行的恶意程序能够访问由用户在密码输入期间触摸的键的位置,该恶意程序也不能通过获得连续屏幕截图来确定哪些标记对应于被触摸键。但是,该方法需要重要的计算资源,所有便携式设备(例如市场上的所有现有智能电话)中都未提供这些资源。为了保护使用连接到网站的终端执行的交易,已提出使用一次性密码,每次需要验证交易时将一次性密码传输给用户。根据第一解决方案,经由不同的通信通道(例如经由电话链路或SMS(短消息服务))将一次性密码传输给用户,用户需要在终端上输入所接收的密码以便验证交易。另一种已知的解决方案向每个用户提供额外硬件设备,该设备借助诸如密码或生物数据之类的凭证,在用户认证之后生成一次性密码。对于并非始终在附近具有电话或移动或无线网络覆盖或该硬件设备(当需要它们以便验证交易时)的用户,这些解决方案令人烦恼。需要额外硬件设备的解决方案对于银行组织而言成本高昂。此外,使用由SMS传输的密码的解决方案不能提供足够高的安全级别,因为它已经被成功攻击。因此,可期望提出一种用于借助非安全终端安全地执行敏感操作的方法。还可期望保护由用户输入的机密数据和通过此类非安全终端传输的交易数据。此外,可期望使提出的方法与所有现有终端兼容,甚至与低计算能力的终端兼容。
技术实现思路
公开一种用于使用非安全用户终端安全地执行敏感操作的方法,所述方法包括:由所述用户终端接收并存储与包括多个软件组件的集合相关的软件组件数据,每个所述软件组件执行所述敏感操作并防止篡改和逆向工程;由所述用户终端从安全处理器接收用于执行所述敏感操作的执行请求;由所述用户终端从所存储的软件组件中选择一个有效软件组件;由所述用户终端执行所选择的软件组件,所选择的软件组件的执行提供输出数据;由所述终端根据所述输出数据将所执行的软件组件的标识符和所执行的敏感操作的响应发送到所述安全处理器,所述敏感操作在所接收到的软件组件标识符对应于被设定为无效的软件组件时被所述安全处理器无效;以及由所述用户终端将所执行的软件组件设定为无效。根据一个实施例,当所接收的软件组件标识符对应于被设定为无效的软件组件时,在接收所述执行请求之前使用对应于所接收的软件组件标识符的软件组件执行的敏感操作被所述安全处理器无效。根据一个实施例,用于一个软件组件的所述软件组件数据包括定义布尔电路的结构的结构数据、以及内容数据,所述结构数据指定该软件组件的逻辑门的门输入端和输出端的线数量、所述逻辑门的门类型、以及该软件组件的电路输入端和输出端的线数量,并且所述内容数据包括该软件组件的逻辑门的真值表和要应用于电路输入线的输入数据。根据一个实施例,由所述用户终端接收和存储的所述软件组件数据仅包括所述软件组件的集合的每个软件组件的所述结构数据,当请求由所述用户终端执行所述敏感操作时,与一个软件组件的所存储的结构数据对应的所述内容数据被发送到所述用户终端。根据一个实施例,由所述用户终端接收并存储的所述软件组件数据包括所述软件组件的集合的每个软件组件的所述结构和内容数据。根据一个实施例,所述软件组件的集合的每个软件组件的所述输入和输出数据中的每一者具有无效值和分别对应于两个二进制状态的两个有效值,由所述用户终端接收并存储的所述软件组件数据仅包括每个所述软件组件的所述结构数据、以及第一输入数据的所述两个有效值,所选择的软件组件的执行包括随机地选择所述第一输入数据的所述有效值中的一者,以及将所选择的值应用于所选择的软件组件的相应电路输入端。根据一个实施例,输出掩码随着用于执行所述敏感操作的所述请求一起被发送,所述输出掩码包括所述软件组件的每个所述电路输出数据的一个相应位,所述方法包括借助异或运算将每个输出数据的位和所述输出掩码的相应位进行组合,以提供所得到的数据的一个位的二进制状态,所述输出掩码被配置为当被与所选择的软件组件的所述输出数据相组合时产生将由所述用户终端显示的消息。根据一个实施例,由所述用户终端接收并存储的所述软件组件数据被所述用户终端使用所述软件组件的集合的每个软件组件的不同加密密钥以加密形式来接收,当请求由所述用户终端执行所述敏感操作时,对应于所选择的软件组件的解密密钥被所述用户终端所接收。根据一个实施例,当所述软件组件的集合的一部分所述软件组件无效时,与新的软件组件集合相关的软件组件数据被发送到所述用户终端并由所述用户终端存储。实施例还可以涉及一种用户终端,其被配置为:接收并存储与包括多个软件组件的集合相关的软件组件数据,每个所述软件组件执行敏感操作并防止篡改和逆向工程;接收用于执行所述敏感操作的执行请求;从所存储的软件组件中选择一个有效软件组件;执行所选择的软件组件,所选择的软件组件的执行提供输出数据;根据所述输出数据将所执行的软件组件的标识符和所述敏感操作的响应发送到安全处理器,所述敏感操作在所述软件组件标识符对应于被设定为无效的软件组件时被无效;以及将所执行的软件组件设定为无效。根据一个实施例,所述终端被配置为执行由先前限定的方法中的终端执行的操作。根据一个实施例,所述安全处理器是连接到所述终端本文档来自技高网
...
用于使用非安全终端安全地执行敏感操作的方法

【技术保护点】
一种用于使用非安全用户终端安全地执行敏感操作的方法,所述方法包括:由所述用户终端接收并存储与包括多个软件组件的集合相关的软件组件数据,每个所述软件组件执行所述敏感操作并防止篡改和逆向工程;由所述用户终端从安全处理器接收用于执行所述敏感操作的执行请求;由所述用户终端从所存储的软件组件中选择一个有效软件组件;由所述用户终端执行所选择的软件组件,所选择的软件组件的执行提供输出数据;由所述终端根据所述输出数据将所执行的软件组件的标识符和所执行的敏感操作的响应发送到所述安全处理器,所述敏感操作在所接收到的软件组件标识符对应于被设定为无效的软件组件时被所述安全处理器无效;以及由所述用户终端将所执行的软件组件设定为无效。

【技术特征摘要】
2016.11.02 EP 16196957.11.一种用于使用非安全用户终端安全地执行敏感操作的方法,所述方法包括:由所述用户终端接收并存储与包括多个软件组件的集合相关的软件组件数据,每个所述软件组件执行所述敏感操作并防止篡改和逆向工程;由所述用户终端从安全处理器接收用于执行所述敏感操作的执行请求;由所述用户终端从所存储的软件组件中选择一个有效软件组件;由所述用户终端执行所选择的软件组件,所选择的软件组件的执行提供输出数据;由所述终端根据所述输出数据将所执行的软件组件的标识符和所执行的敏感操作的响应发送到所述安全处理器,所述敏感操作在所接收到的软件组件标识符对应于被设定为无效的软件组件时被所述安全处理器无效;以及由所述用户终端将所执行的软件组件设定为无效。2.根据权利要求1所述的方法,其中当所接收的软件组件标识符对应于被设定为无效的软件组件时,在接收所述执行请求之前使用对应于所接收的软件组件标识符的软件组件执行的敏感操作被所述安全处理器无效。3.根据权利要求1或2所述的方法,其中用于一个软件组件的所述软件组件数据包括定义布尔电路的结构的结构数据、以及内容数据,所述结构数据指定该软件组件的逻辑门的门输入端和输出端的线数量、所述逻辑门的门类型、以及该软件组件的电路输入端和输出端的线数量,并且所述内容数据包括该软件组件的逻辑门的真值表和要应用于电路输入线的输入数据。4.根据权利要求3所述的方法,其中由所述用户终端接收和存储的所述软件组件数据仅包括所述软件组件的集合的每个软件组件的所述结构数据,当请求由所述用户终端执行所述敏感操作时,与一个软件组件的所存储的结构数据对应的所述内容数据被发送到所述用户终端。5.根据权利要求3所述的方法,其中由所述用户终端接收并存储的所述软件组件数据包括所述软件组件的集合的每个软件组件的所述结构和内容数据。6.根据权利要求3所述的方法,其中所述软件组件的集合的每个软件组件的所述输入和输出数据中的每一者具有无效值和分别对应于两个二进制状态的两个有效值,由所述用户终端接收并存储的所述软件组件数据仅包括每个所述软件组件的所述结构数据、以及第一输入数据的所述两个有效值,所选择的软件组件的执行包括随机地选择所述第一输入数据的所述有效值中的一者,以及将所选择的值应用于所选择的软件组件的相应电路输入端。7.根据...

【专利技术属性】
技术研发人员:G·皮特尔JL·勒卢
申请(专利权)人:斯凯耶科德公司
类型:发明
国别省市:法国,FR

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1