CN108141350A - 从非安全终端确保交易的方法 - Google Patents

从非安全终端确保交易的方法 Download PDF

Info

Publication number
CN108141350A
CN108141350A CN201680057607.0A CN201680057607A CN108141350A CN 108141350 A CN108141350 A CN 108141350A CN 201680057607 A CN201680057607 A CN 201680057607A CN 108141350 A CN108141350 A CN 108141350A
Authority
CN
China
Prior art keywords
terminal
user
program
logic gate
image
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
CN201680057607.0A
Other languages
English (en)
Inventor
J-L·勒卢
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.)
J Kaye Codd Co
Skeyecode SAS
Original Assignee
J Kaye Codd Co
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 J Kaye Codd Co filed Critical J Kaye Codd Co
Publication of CN108141350A publication Critical patent/CN108141350A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3226Use of secure elements separate from M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4012Verifying personal identification numbers [PIN]
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • G09C1/04Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system with sign carriers or indicators moved relative to one another to positions determined by a permutation code, or key, so as to indicate the appropriate corresponding clear or ciphered text
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C5/00Ciphering apparatus or methods not provided for in the preceding groups, e.g. involving the concealment or deformation of graphic data such as designs, written or printed messages
    • 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/002Countermeasures against attacks on cryptographic mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/16Obfuscation or hiding, e.g. involving white box

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Accounting & Taxation (AREA)
  • Signal Processing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及一种借助于服务器(SRV)来认证用户的方法。该方法包括涉及以下的步骤:经由服务器向用户的终端(MT)发送配置终端的不可攻破的程序(APG,APG1),以在终端的显示屏上显示具有随机定义的键分布的小键盘的图像(IM),该图像包括对用户单独不可理解并以适合于使用用户的视觉系统的持久性的速率连续地显示的帧(IM1);经由终端执行程序;经由终端收集由用户指定的与显示的小键盘图像有关的显示屏的位置(Pos<i>);经由终端向服务器发送由用户指定的位置,并且经由服务器验证指定位置,如果显示的图像中的指定位置对应于用户的秘密认证代码,则认证用户。

Description

从非安全终端确保交易的方法
技术领域
本发明涉及终端和远程服务器之间的认证方法。
背景技术
通过连接到互联网的终端可以获得越来越多的服务,包括银行服务。特别是电子商务增长强劲。在该情况下使用的终端可以是个人计算机、数字平板计算机、智能手机。通常,这些终端包括主处理器、连接或可连接到显示屏的图形处理单元(GPU)、用于连接到诸如互联网的数据通信网络的电路,以及诸如小键盘、鼠标或与显示屏相关联的触敏表面的控制部件。
使用这种终端访问所谓的“在线”服务引发了安全问题。实际上,可以在终端中安装并由终端的主处理器执行所谓的“恶意”程序,该程序可访问可用于主处理器的整个存储器,以及使用小键盘或在屏幕上显示的图像上的指定位置处显示和输入的数据。这种恶意程序可以被配置为窥探从终端进行的可能交易并且检索在用于通过网络传输的这些交易期间引入或操纵的任何秘密数据。
为了确保这种交易的安全性,已经提出将安全处理器(诸如通常设置有移动电话的SIM卡(用户识别模块)的处理器)用作安全元件并且用于密码术(cryptographic)计算。为了运行一个或多个支付应用程序,安全处理器必须能够存储与支付应用程序一样多的秘密密码术密钥。然而,将应用程序加载到安全处理器的存储器中是需要高度安全的复杂操作。为此,它需要诸如与受信任的服务管理器的外部交互。由于SIM卡是由移动运营商发行的,因此移动运营商可能会拒绝在卡中安装这种应用程序。另外,在窃取的情况下或在电话的维护操作期间,SIM卡的处理器可能受到欺诈的个人的攻击以发现存储在其中的秘密密钥。
对安装在SIM卡的处理器中的安全功能的访问通常需要借助于连接到终端的主处理器的输入装置来输入密码(PIN码)。结果,用户输入的密码必然通过主处理器传递。由主处理器执行的恶意软件因此可以访问该密码。
为了输入密码,同样建议显示其键随机放置的小键盘的图像。该解决方案不会阻止恶意程序通过获取小键盘图像的屏幕截图并截取用户使用鼠标或触摸屏所进行的每次点击的位置来获得由用户引入的键组合。
同样建议由另一通信链路(例如由SMS)向用户发送一次性代码,该代码将由用户输入以确认当前交易。该解决方案涉及用户的附加操作,以及发送一次性代码的附加成本。该解决方案同样不适用于从智能手机或数字平板计算机进行的交易。
另外,已经提出使用安装在计算机中的图形处理器的计算能力来执行密码术计算。实际上,这种处理器具有并行计算架构,其非常适合执行某些密码术计算,诸如对称或非对称加密和解密计算。然而,图形处理器通常不具有非易失性存储器。因此无法存储应用程序或秘密密钥,而使得每当计算机关闭时它们都不会消失。这导致存储用于进行安全交易所需的秘密数据的问题。
另外,图形处理器不能直接与外部服务器通信。因此交易的所有数据由计算机的主处理器中继,管理计算机的通信电路。结果,安装在计算机中的恶意程序可以检索并存储在图形处理器和服务器之间交换的所有交易数据。即使交易数据在传输之前被加密,恶意程序也可以重新使用所加密的交易数据来进行与存储数据对应的交易相同的交易。
专利申请WO 2012/107698(US 2014/0040633)描述了涉及用于与远程服务器或安全处理器建立安全链路的图形处理器的交易方法。图形处理器被配置为显示其键位于随机位置处的小键盘的图像。该图像被分解为由视觉密码术处理生成的不可理解的帧,其由图形处理器相继显示。调节帧显示频率以利用用户的视网膜持久性,使得用户可以从多个相继显示的帧中重建图像。因此,由于帧显示频率远高于主处理器可以获取屏幕截图的速率,所以由终端的主处理器执行的恶意程序不能通过屏幕截图来恢复通过视网膜持久性重建的图像。
然而,该解决方案并不能保证攻击者无法从相继的部分屏幕截图中重建显示的图像或图像中呈现敏感数据的部分。
因此,随着它们经过具有图形处理器的终端,或者当在这种终端和服务器之间发送时,或者当它们借助于终端的小键盘输入时,期望保护秘密数据以及更一般地诸如交易数据的敏感数据。
发明内容
实施例可以涉及一种通过安全处理器认证用户的方法,该方法包括以下步骤:执行配置终端以在终端的显示屏上显示呈现可选择区域的图像的不可攻破的(impenetrable)程序,每个可选择区域与标签或图标相关联并且具有由随机数据定义的图像中的分布,该图像包括对于用户单独不可理解的帧,所述帧以适合于利用用户的视觉系统的持久性的速率相继显示,使得标签或图标以对用户可理解的方式显现在显示屏上;由终端借助于终端的接口收集由用户相对于显示的图像指定的显示屏的位置;向安全处理器发送由用户指定的位置,如果指定位置对应于安全处理器已知的用户的认证数据,则由安全处理器认证用户。
根据实施例,该方法包括由安全处理器向终端发送不可攻破的程序的步骤。
根据实施例,程序配置终端以显示交易数据。
根据实施例,由安全处理器向终端发送的程序配置终端以在每个区域中的位置处和/或以特定于程序的大小和/或字体显示图像中的可选择区域的标签或图标。
根据实施例,由终端对图像的显示包括相继的步骤:选择针对表示可选择区域的标签或图标的图像的每个像素或像素组的互补像素图案中的分解,并且对于每个选择的分解,生成互补像素图案,使得只有在互补像素图案以适合于利用用户的视觉系统的持久性的速率相继显示的情况下,可选择区域的标签或图标才在显示屏上可见。
根据实施例,由终端对图像的显示包括相继的步骤:由终端在由可变持续时间间隔开的随机选择时间处显示生成的像素图案,使得尽管它们相继显示,人类视觉系统可以将它们组合,形成所显示图像的像素图案的显示时间彼此不同并且相互独立。
根据实施例,由安全处理器向终端发送的不可攻破的程序配置终端以:生成随机数据,从该随机数据定义图像中可选择区域的标签或图标的分布,以及以加密形式向安全处理器发送随机数据,该方法包括以下步骤:由安全处理器解密随机数据,由安全处理器确定由终端显示的图像中可选择区域的标签或图标的分布,以及由安全处理器从由用户指定的位置和可选择区域的标签或图标的分布确定由用户输入的密码。
根据实施例,不可攻破的程序包括用于生成随机数据的随机或伪随机数生成组件,该随机数据用于选择针对表示图像的可选择区域的标签或图标的图像中的每个像素或像素组的互补像素图案分解。
实施例同样可以涉及一种在用户终端和安全处理器之间共享秘密数据的方法,该方法包括以下步骤:由终端生成秘密数据,并且向安全处理器发送加密的秘密数据。根据实施例,该方法包括步骤:由终端执行实施生成和加密秘密数据的步骤的不可攻破的程序。
根据实施例,该方法包括由安全处理器向终端发送不可攻破的程序的至少一部分的步骤。
根据实施例,该方法包括在终端和安全处理器之间建立链路的步骤,该链路借助于仅在终端和安全处理器之间共享的秘密数据而被保护。
根据实施例,秘密数据由用于生成不可攻破的程序的随机或伪随机数的组件随机地或伪随机地生成。
实施例同样可以涉及一种由安全处理器从连接到安全处理器的终端认证用户的方法,该方法包括以下步骤:将配置终端的程序加载到终端中以执行先前定义的共享秘密数据的方法,以便生成仅在终端和安全处理器之间共享的秘密数据,并且用于在终端的显示屏上显示具有可选择区域的图像,每个可选择区域与标签或图标相关联并且具有使用所共享的秘密数据定义的图像中的分布,由终端执行程序以生成所共享的秘密数据并在显示屏上显示图像,该图像包括对于用户单独不可理解的帧,所述帧以适于利用用户的视觉系统的持久性的速率相继显示,使得标签或图标以对用户可理解的方式显现在显示屏上;由终端借助于终端的接口收集由用户相对于显示的图像指定的显示屏的位置;由终端向安全处理器发送由用户指定的位置;以及由安全处理器验证相对于显示图像的指定位置,如果指定位置对应于安全处理器已知的用户的认证数据,则认证用户。
根据实施例,所共享的秘密数据定义显示图像的可选择区域的分布。
根据实施例,程序配置终端以显示交易数据,交易数据以对用户不可理解的方式显现在帧中。
根据实施例,由安全处理器向终端发送的程序配置终端以在每个区域的位置中和/或以特定于该程序的大小和/或字体显示图像中的可选择区域的标签或图标。
根据实施例,由终端对图像的显示包括相继的步骤:选择针对表示可选择区域的标签或图标的图像的每个像素或像素组的互补像素图案中的分解,并且对于每个所选择的分解,生成互补像素图案,使得只有在互补像素图案以利用用户的视觉系统的持久性的合适速率相继显示的情况下,可选择区域的标签或图标才在显示屏上可见。
根据实施例,由终端对图像的显示包括相继的步骤:由终端显示在由可变持续时间间隔开的随机选择时间处生成的像素图案,使得尽管它们相继显示,人类视觉系统可以将它们组合,形成所显示图像的像素图案的显示时间彼此不同并且相互独立。
根据实施例,由安全处理器向终端发送的不可攻破的程序配置终端占用运行程序的处理器的计算资源的至少80%。
根据实施例,由安全处理器发送并且由终端执行的不可攻破的程序包括乱码电路,该乱码电路包括以若干排序级分布的逻辑门,该逻辑门包括专门接收乱码电路的输入值的第一级分组逻辑门,专门接收来自属于较低级的逻辑门的值或乱码电路的输入值的某一级的逻辑门,每个逻辑门与表示逻辑门的每个输入比特和每个输出比特的每个可能比特值的乱码值相关联,每个逻辑门与真值表相关联,该真值表包括针对逻辑门的输入二进制值的每个可能组合的通过加密乱码值而获得的值,该乱码值表示与向逻辑门输入的比特值的组合对应的逻辑门的输出值,由图形处理器对乱码电路的执行包括以下步骤:以该级别的次序依次执行逻辑门的级别,该逻辑门的级别中的每个级别的执行包括同时执行级别的所有逻辑门,该逻辑门的执行包括以下步骤:根据逻辑门的乱码的输入值,选择与逻辑门相关联的真值表的行,并且解密选择的行以获得逻辑门的所乱码的输出值,以及传送所得的所乱码的输出值以将它们应用于从输出存储器区域到输入存储器区域的较高级逻辑门的输入,使得在执行下一级逻辑门的情况下将它们考虑在内。
根据实施例,乱码电路的执行由至少部分地以乱码电路形式实现的解释器本身执行。
根据实施例,使用乱码电路生成秘密或随机数据,以便为相同的输入数据提供不同的输出数据,该乱码电路包括与具有相同行但不同地排序的表相关联的第一级逻辑门,第一级逻辑门的输出数据根据由第一级逻辑门提供它们的次序提供给下一级逻辑门。
根据实施例,通过同时使得并行执行若干相同操作来生成秘密数据或随机数据,该随机数据取决于操作结束的次序。
根据实施例,安全处理器是终端连接到的服务器。
根据实施例,安全处理器被包括在终端中。
实施例同样可以涉及一种终端,该终端被配置用于:执行配置终端的不可攻破的程序以在终端的显示屏上显示呈现可选择区域的图像,每个可选择区域与标签或图标相关联并且具有由随机数据定义的图像中的分布,该图像包括对于用户单独不可理解的帧,所述帧以适合于利用用户的视觉系统的持久性的速率相继显示,使得标签或图标以对用户可理解的方式显现在显示屏上,借助于终端的接口收集由用户相对于显示的图像指定的显示屏的位置,以及向安全处理器发送由用户指定的位置,如果所指定的位置对应于安全处理器已知的用户的认证数据,则由安全处理器认证用户。
实施例同样可以涉及被配置为执行不可攻破的程序的终端,该不可攻破的程序配置终端以:生成秘密数据,加密秘密数据,并向安全处理器发送加密的秘密数据。
实施例同样可以涉及被配置为实施先前定义的方法中的一个或另一个方法的终端。
实施例同样可以涉及被配置为实施先前定义的方法中的一个或另一个方法的服务器。
实施例同样可以涉及一种计算机程序,其在由终端加载和执行时配置终端以实施先前定义的方法中的任何方法。
实施例同样可以涉及一种秘密数据共享方法,包括以下步骤:在终端的图形处理器中生成秘密数据,加密秘密数据,以及向安全处理器发送加密的秘密数据,生成和加密秘密数据的步骤由图形处理器执行的乱码电路执行,并且包括以若干排序级分布的逻辑门,该逻辑门包括专门接收乱码电路的输入值的第一级分组逻辑门,专门接收来自属于较低级的逻辑门的值或乱码电路的输入值的某一级的逻辑门,每个逻辑门与表示逻辑门的每个输入比特和每个输出比特的每个可能比特值的乱码值相关联,每个逻辑门与真值表相关联,该真值表包括对于逻辑门的输入二进制值的每个可能组合,通过加密表示与向逻辑门输入的比特值的组合对应的逻辑门的输出值的乱码值而获得的值,由图形处理器对乱码电路的执行包括以下步骤:以该级别的次序相继执行逻辑门的级别,逻辑门的级别中的每个级别的执行包括同时执行级别的所有逻辑门,逻辑门的执行包括以下步骤:根据逻辑门的乱码的输入值选择与逻辑门相关联的真值表的行,并且解密选择的行以获得逻辑门的乱码输出值,以及传送所得的输出乱码值,将它们应用于从图形处理器的输出存储器到图形处理器的输入存储器的较高级逻辑门的输入,使得在执行下一级逻辑门时将它们考虑在内。
根据实施例,秘密数据是随机地或伪随机地生成的,加扰电路包括随机数生成或伪随机电路。
根据实施例,秘密数据是通过同时启动并行运行的若干相同操作的执行而随机生成的,秘密数据取决于操作结束的次序。
根据实施例,秘密数据或随机数据使用乱码电路来生成,该乱码电路包括与具有相同行但不同排序的表相关联的第一级逻辑门,以便为相同的输入数据提供不同的输出数据,第一级逻辑门的输出数据根据其由第一级逻辑门提供的次序被提供给下一级逻辑门。
根据实施例,乱码电路的执行由至少部分地以乱码电路形式实现的解释器本身执行。
根据实施例,该方法包括在终端和安全处理器之间建立链路的步骤,该链路借助于仅在终端和安全处理器之间共享的秘密数据来保护。
实施例同样涉及由服务器从连接到服务器的终端认证用户的方法,该终端包括主处理器、控制显示屏的图形处理器,以及接口,该方法包括以下步骤:加载配置图形处理器的程序到图形处理器中,以执行如上定义的秘密数据共享方法,以生成仅在图形处理器和服务器之间共享的秘密数据,并且在显示屏上显示具有使用共享的秘密数据定义和确定的键分布的小键盘的图像;由图形处理器执行程序以生成共享的秘密数据并在显示屏上显示小键盘的图像,键盘的图像以对于用户单独不可理解的互补帧的形式显示,该互补帧由视觉密码术算法生成并且以适合于利用用户的视觉系统的持久性的速率相继显示,使得组合互补帧的图像以对用户可理解的方式出现;由主处理器借助于接口收集由用户相对于显示的虚拟小键盘指定的显示屏的位置;由主处理器向服务器发送由用户指定的位置,并且检查指定位置之间的一致性以及服务器已知的用户的秘密认证代码,如果一致性被验证,则认证用户。
根据实施例,共享秘密数据定义了小键盘图像的键的分布。
根据实施例,小键盘图像的显示包括:针对表示小键盘的键标签的小键盘图像的每个像素或像素组选择互补像素图案中的分解的相继步骤;对于每个选择的分解生成互补像素图案使得如果互补像素图案被叠加则键标签仅在显示屏上可见的相继步骤;以及相继步骤:显示在由可变持续时间间隔开的随机选择时间处生成的像素图案,使得尽管它们被相继显示,人类视觉系统可以将它们组合,形成小键盘的显示图像的像素图案的显示时间彼此不同并且相互独立。
根据实施例,小键盘图像的显示由乱码电路执行,该乱码电路由图形处理器执行。
实施例同样涉及被配置为实施先前定义的方法中的一个或另一个方法的终端。
实施例同样涉及一种计算机程序,其在由包括主处理器和图形处理器的终端加载和执行时配置终端实施先前定义的方法中的一个或另一个方法。
附图说明
图1示意性地表示与交易服务器通信的传统终端,
图2示意性地表示传统图形处理器,
图3图解地表示根据实施例的加载在图形处理器中的程序的功能架构,
图4示意性地表示根据实施例的加载在图形处理器中的程序的组件,
图5图解地表示根据实施例的加载在图形处理器中的程序的密码术显示组件,
图6A表示诸如可以由用户查看的由密码术显示组件产生的示例性图像,
图6B表示由密码显示组件在特定时间产生并显示的示例性图像,
图7示意性地表示根据实施例由密码术显示组件在显示屏上相继显示的图像像素图案,
图8示意性地表示由密码术显示组件生成的像素图案的时间尺度显示和刷新时间,
图9示意性地表示根据实施例的加载到图形处理器中的程序的加密组件,
图10示出根据实施例的由终端和交易服务器执行的步骤。
具体实施方式
图1表示能够经由诸如互联网的数据传输网络与服务器SRV通信的传统终端MT。服务器SRV可以被配置为与其可能连接到的终端进行交易。
终端MT配备有用于连接到诸如互联网的网络的电路。终端MT例如是移动电话,特别是智能电话,或者PDA(个人助理)或者任何其它类型的装置,诸如配备有用于连接到诸如互联网的网络的电路的个人计算机。终端MT同样包括主处理器HP,用于连接到网络NT、连接到处理器HP的电路NIT、显示屏DSP、用于控制屏幕DSP的图形处理器GP(其连接到处理器HP),以及连接到处理器HP的控制装置CM。控制装置可以包括小键盘或触敏表面,例如放置在屏幕DSP上方的透明触摸表面,以及可选地诸如鼠标的指示装置。处理器HP可以是终端的主处理器(“基带处理器”)。
终端同样可以包括安全处理器SE,其可以在UICC(“通用集成电路卡”)中实现。处理器SE例如可以是提供对移动电话网络的访问的SIM卡(“订户身份模块”)或小型SIM或微型SIM。安全处理器可以包括NFC(近场通信)电路以与非接触终端进行通信。NFC电路可以嵌入在SIM卡(SIM-NFC)或UICC中,或者嵌入在SoC(“片上系统”)中或外部存储卡中,例如SD卡中。NIT电路可以包括提供对移动电话网络的访问和经由移动电话网络对互联网的访问的无线电电话电路,和/或无线网络接口(WiFi,蓝牙),和/或到诸如互联网的数据传输网络的任何其它有线或无线连接部件。
服务器SRV被配置为向用户提供交易服务。它可以包括安全装置、交易服务管理程序以及专用于程序存储和交易数据的存储器区域。安全装置保护服务器,并且特别保护对专用于交易数据和交易服务管理程序的存储器区域的访问。
在下面,术语“交易”通常是指用户通过链路对服务或数据的访问,该访问需要用户的认证。
图2示出图形处理器GP的示例。在图2中,处理器GP具有并行架构,该并行架构包括若干多处理单元MPU。每个MPU包括若干线程处理器TP和特殊功能单元SFU。SFU被配置为执行不频发的操作(诸如除法、平方根等),在计算资源中该不频发的操作是昂贵的。相同MPU的处理器TP可以经由专用于MPU的本地存储器LMEM彼此通信。另一方面,属于不同MPU的TP处理器不能彼此通信或同步。因此,MPU的TP处理器不能访问GP处理器的其它MPU的本地存储器LMEM。
MPU由线程执行控制单元(TPU)管理。GP处理器同样包括视频存储器VMEM和不能从GP处理器外部直接访问的主存储器GMEM。相反,HP处理器的存储器HMEM不能由GP处理器直接访问。然而,GMEM和HMEM存储器之间的数据传送经由GP处理器的输入/输出端口和DMA(直接存储器访问)操作是可能的。
图3示出了当由终端MT的主处理器HP执行交易应用程序AP(图1)时,加载到图形处理器GP的处理单元PU并由其执行的程序AUTP的功能架构。根据实施例,该程序包括并行执行的多个显示组件FCC,每个显示组件FCC负责在视频存储器中写入和刷新要显示在显示屏DSP上的像素图案VCP。加载到图形处理器GP中的程序同样包括加密组件ENC和随机数生成组件RNG1,其向显示组件FCC和加密组件ENC提供随机数。加密组件ENC提供在处理器GP外的与由组件RNG1提供的随机数对应的加密数字。
图4描绘了根据实施例的加载在图形处理器GP中的程序AUTP的显示组件FCC中的一个。组件FCC包括用于生成小键盘图像KGN的像素的组件和视觉密码术组件KD。随机数生成组件RNG1中的一个接收作为输入的数字D1,该数字D1被用作种子。组件RNG1向m×p个组件FCC提供随机或伪随机数RN1。在组件KGN的输入端处提供的随机数RN1指定诸如数字或字母数字字符的字符或要显示的小键盘图像的图标。组件KGN提供形成与数字RN1的字符对应的图片的像素PX的值,黑色或白色。在组件KD的输入处提供随机数RN2。组件KD相继根据由组件KGN提供的像素PX来提供要被显示的像素图案PT。
在处理器GP中加载的所有组件KGN因此在视频存储器VMEM中一起生成由d个并置的键图像组成的小键盘的完整图像,每个键图像包括分配给该键的不同字符的图片。因此,在处理器GP中加载的组件KGN的集合(ensemble)包括要显示的小键盘的每个键的一组m×p个组件KGN,这些组的组件KGN中的每个产生具有m×p个像素的图像,该像素表示键,该键具有分配给该键的字符。这些组的m×p个组件KGN中的每个从组件RNG1接收与要在键上显示的字符的图片对应的不同数字。
根据实施例,负责显示键图像的d个组的组件KGN中的第一个从对应的组件RNG1接收在1与要显示的小键盘的键的数量之间选择的随机数RN11。负责显示键图像的组中的第二个接收在1与要显示的小键盘的键的数量(减少1,为d-1)之间随机选择的数字RN12作为输入,然后数字RN12对应于将被分配给其余的键的其余字符之间的字符等级。数字RN1i因此根据其余要分配给键的字符的数量来随机选择,直到倒数第二个字符被分配给小键盘上的键。最后一个字符被分配给其余的键。
组件KGN同样可以接收由屏幕DSP显示的图像中的组件KGN生成的像素的位置。然而,位置PXPi可能不是必需的,因为处理单元PU中的组件FCCi的位置可用于定义该位置。
根据随机或伪随机数RN2,组件KD对像素PXi应用视觉密码术转换。这种转换例如在Moni Naor和Adi Shamir在Eurocrypt 94中的文件“Visual Cryptography(视觉密码术)”和G.Ateniese,C.Blundo和A.De Santis在GGStinson中的文件“Construction andBounds for Visual Cryptography(视觉密码术的构造和界限)”中描述。该转换包括将原始图像(例如人类可理解的)分解成一组若干互补帧,使得仅通过叠加该组互补帧中的所有帧来恢复原始图像,并且使得很难在没有互补帧中的任何一个帧的情况下重构原始图像。因此,组件KD为要在屏幕DSP上显示的每个帧生成与像素PXi的加密形式对应的一个或多个像素EPi的图案。因此,通过以适合于利用用户视觉系统的视网膜持久性的帧显示速率相继显示像素PXi的互补图案EPi,像素PXi的值可以显现在显示器DSP上。
根据实施例,互补像素图案EPi在与人类视觉系统兼容的极限内在随机定义的时间处单独显示。图5描绘了根据实施例的组件KD。组件KD包括用于生成像素图案的组件PSL,以及包括寄存器RG、模数计算组件MOD、比较器CMP和增量组件INC的计数器电路。寄存器RG接收随机数RN2的部分RN21,其中定义计数器电路的初始值。MOD组件计算寄存器RG中的数字的模数。INC组件将MOD组件的输出值递增1,并将递增的值馈入寄存器RG中。MOD组件的输出值同样被提供为组件KD的输出并提供到比较器CMP的输入。比较器CMP将组件MOD的输出值与随机数RN2的一部分RN22进行比较。比较器CMP向组件PSL提供显示使能信号DS,当比较器CMP的两个输入值相等时,该显示使能信号DS有效。组件PSL基于随机数RN2的部分RN23从多个像素图案之间选择像素图案。在DS信号的第一次激活时,PSL组件从KD组件输出所选择的像素图案作为一组互补像素的第一像素EP1。在DS信号的第二次激活时,取决于在组件KD的输入处提供的像素PX的值,PSL组件从KD组件输出所选择的像素图案或其互补像素图案作为该组互补像素的第二像素EP2。例如,如果在组件KD的输入处提供的像素PX的值为零,则第二像素图案EP2是所选择的像素图案,或者如果像素PX的值是1,则第二像素图案EP2是互补像素图案。当然,可以根据像素PX的值进行逆选择。因此,由于计数器电路,由随机数RN21随机地选择KD组件输出第一像素图案的时间。下一个像素图案的输出时间同样根据随机数RN22被随机选择,该随机数RN22每当从组件KD输出像素图案EP1、EP2时可改变。选择组件MOD使用的模数的值,使得像素图案EP1、EP2的显示时间由与人类视觉系统兼容的持续时间间隔开,也就是说,使得人类视觉系统可以组合互补像素图案的持续时间。为此目的,持续时间可能在50到80ms之间变化。每当从KD组件输出两个像素图案时,同样随机选择第一像素图案EP1。
在图5的示例中,像素图案具有包括两个黑色像素和两个白色像素的四个像素。第一像素图案EP1的选择在六个图案之间执行,即两个水平图案,两个垂直图案和两个对角线图案。当然,可以设想其它图案和互补图案的其它组合,以在用户的视觉系统中形成黑色或白色(灰色)像素。
该组FCC组件使得可以生成和显示诸如图6A中呈现的图像,包括视觉密码术显示的区域和以清晰方式显示的区域。因此,在图6A的示例中,用户可感知的图像IM是具有十二个键的小键盘的图像,包括带有从“0”到“9”的数字的键、取消键“C”和确认键“V”。因此,在图6A的示例性图像中,程序AUTP包括10个RNG1组件和10×m×p个FCC组件(d=10)。显示的图像同样包括用于交易数据的显示区域RS和/或用于由用户操作的每个键的通用字符,例如“*”。带有从“0”到“9”的数字的键以任何次序呈现,并且通过在随机选择时间相继显示像素图案EP1、EP2,使用视觉密码术来显示。图6B示出了由PSL组件实际产生并显示的图像IM1。图像IM1仅包括互补像素图案组中的一个互补像素图案的两个像素图案EP1、EP2中的一个,该互补像素图案针对以由组件KGN产生的图像的视觉密码术显示的区域中的每个像素PX生成。因此,带有从“0”到“9”的数字的键的标签在图像IM1中不可见。请注意,确认和取消键同样可能具有在图像中随机定义的位置。
根据实施例,KGN组件被执行一次以生成具有定义的键分布的小键盘的图像,并且RNG2和KD组件以每个周期T一次的量级的速率被执行若干次,T为2毫秒到10毫秒的量级,以每隔50ms至80ms在存储器VMEM中提供像素图案VCP,例如直到用户激活取消键“C”或确认键“V”。由MOD组件应用的模数值取决于周期T的值和像素图案的相继显示时间之间的最大持续时间。根据实施例,在周期T中的每个周期T处显示存储器VMEM的内容。
根据实施例,KGN组件以特定速率执行,以生成不同的图像,但是没有改变键图像中从0到9的键的分布,以使攻击者对从0到9的键的分布的确定更加困难。因此生成的不同图像可以例如改变键的相应表面区域内的每个键的标签的位置(从“0”到“9”),和/或改变标签的大小,和/或改变用于标签的字体。
图7示出了用户在终端的屏幕DSP上看到的图像IM。根据实施例,图像IM的至少一部分来自以不同速率刷新像素图案,第一图像的像素图案在不同时间处显示。图7描绘了在显示屏DSP的位置P1处相继显示的像素图案P1<n>、P1<n+1>、P1<n+2>、P1<n+3>,在显示屏的位置P2处相继显示的像素图案P2<n>、P2<n+1>、P2<n+2>、P2<n+3>,以及在显示屏的位置P3处相继显示的像素图案P3<n>、P3<n+1>、P3<n+2>、P3<n+3>。像素图案Pi<j>(j=n,n+1,n+2,n+3,……)是通过视觉密码术从该组互补像素图案中的原始图像的位置Pi处的像素或像素组的不同相继分解造成的。该分解通过FCC组件的KD组件来执行,使得原始图像可以仅通过叠加一组互补像素图案中的所有像素图案来恢复,并且在不存在该组互补像素图案的像素图案中任何一个像素图案的情况下或在存在属于另一组互补像素图案的像素图案的情况下很难确定原始图像的像素的值。
根据实施例,对于确定的不同的相应持续时间TPi<j>(i=1,2,3,……以及j=n,n+1,n+2,n+3,……)显示每个像素图案Pi<j>,使得用户的视网膜或视觉持久性重新组合每一组互补像素图案的像素图案,并且因此使得用户感知由分配给该图像的所有互补像素图案的叠加形成的原始图像IM。
例如,像素图案Pi<n>和Pi<n+1>(i=1,2,3,……)形成由视觉密码术的第一分解产生的第一组互补像素图案,并且Pi<n+2>和Pi<n+3>(i=1,2,3,……)形成第二组互补像素图案,其由与第一分解不同的视觉密码术的第二分解产生。当然,除了两个互补像素图案之外,原始图像的像素或像素组可以通过视觉密码术分解。
以互补像素图案的形式显示的原始图像的像素或像素组被分布在图像中,以便如果互补像素图案未被叠加,则使图像的全部或部分不可理解。因此,图6(如对用户显现的)的图像IM具有小键盘,其键以例如随机确定的任意次序排列。根据实施例,由键的形状定界并且表示键的标签的像素通过视觉密码术被分解成互补像素图案。当然,可以设想通过视觉密码术分解图像IM的所有像素。
根据实施例,每个像素图案的显示持续时间TPi<j>(i=1,2,3,……和j=n,n+1,n+2,n+3,……)被设定为在50ms到80ms之间随时间变化并且从一个像素模式到另一个像素模式变化的值。根据实施例,在显示屏DSP上的图像的呈现开始处显示的第一像素图案在不同的时间处显示。因此,图8沿时间轴表示在原始图像IM的位置P1、P2、P3处显示的第一像素图案P1<0>、P2<0>、P3<0>的显示时刻t1、t2、t3。考虑到图像的某些像素图案可能会在时刻t0之后立即显示,时刻t1、t2、t3与图像显示开始的开始时刻t0相隔小于持续时间tM,持续时间tM可以被选择为小于或等于50ms。在第一像素图案P1<0>、P2<0>、P3<0>之后,第二像素图案P1<1>、P2<1>、P3<1>在从一个像素图案到另一个像素图案变化的时间显示,第二像素图案与第一像素图案的显示时间间隔50ms至80ms之间的相应持续时间TP1<0>、TP2<0>、TP3<0>。
因此,如果原始图像的每个像素或像素组被分解为两个相继的互补像素图案,并且假定可以在50ms或更少的时间中由处理器HP制作和存储两个相继的屏幕副本,则第二屏幕截图不能包含与第一屏幕截图中的像素图案互补的全部像素图案。事实上,由于像素图案从不同的时间显示并且在不同的变量刷新周期处被刷新,所以第一屏幕截图必然包含与先前显示的像素图案互补的像素图案,并且因此第二屏幕截图必然包含与在第二屏幕截图之后显示的像素图案互补的像素图案。第三屏幕截图可以获得这些互补像素图案。然而,不可能确定原始图像的像素(例如P1)是否从第一和第二屏幕截图的对应像素图案(P1<n>,P1<n+1>)或第二和第三屏幕截图的对应像素图案(P1<n+1>,P1<n+2>)被重建。如果原始图像的所有像素因此被分解成两个互补像素图案,则原始图像的重建需要对于通过视觉密码术变换的图像的每个像素图案来选择包括第一和第二屏幕截图中的对应像素图案的对和包括第二和第三屏幕截图中的对应像素图案的对中的互补像素图案的正确对。在该情况下,处理器HP必须能够在50ms内执行并存储至少三个相继的屏幕副本,每个屏幕副本需要读取视频存储器VMEM,并且将读取的数据写入可访问处理器HP的存储器HMEM中。
如果通过视觉密码术将原始图像的每个像素转换成三个或更多互补像素图案的组,则从相继屏幕副本重建原始图像的问题甚至更复杂。
图9表示根据实施例的安装在处理器GP中的加密组件ENCj中的一个加密组件ENCj。组件ENCj接收由RNG1模块中的一个RNG1模块发送的随机数RN1,并通过应用加密算法来加密它以计算签名ERN1。因此,由ENCj组件计算的所有签名ERN1被发送到处理器GP之外,例如发送到服务器SRV。
在图9的示例中,组件ENCj实施AES算法(高级加密标准)。因此,ENC组件执行若干(r+1)轮加密。在第一轮中,组件ENCj通过函数LC1,(位异或(XOR)操作)将初始密钥部分K0j与从组件RNG1接收的随机数RN1进行组合。根据对应表将该组合的结果发送到非线性替换函数BSUB,以用另一个组合替换该组合的每个字节。替换的结果被发送到移项(transposition)函数SHR,该移项函数SHR多次循环移位被格式化为若干行和列的块的替换结果的最后三行。移项的结果被发送到混合函数MXCL。按照每列将函数MXCL应用于由移项产生的块,并组合块的每一列的最后四个字节。混合的结果与通过函数LC2从初始密钥导出的新密钥K1j组合,该函数同样是位异或(XOR)函数。这些函数BSUB、SHR、MXCL在每一轮i处采用从前一轮中使用的密钥导出的新密钥Kij执行,该新密钥Kij通过密钥导出函数KDN导出。在最后一轮r中,当达到最大轮数MXR时,不执行函数MXCL,移项函数SHR的结果与从前一轮中使用的密钥导出的最后一个密钥Krj组合。
可以观察到,如果由每个组件ENCj实施的加密函数是可逆的(如AES算法的情况那样),则可以使用ENCj组件来建立服务器SRV和处理器GP之间的传输通道,其由使用仅服务器SRV已知的密钥进行对称加密来保护。在此和下面,术语“保护”意味着防止通过硬件和/或软件元素的欺骗性访问。
根据实施例,RNG1、ENC和FCC组件以电路或不可攻破的(“混淆的”)可执行代码的形式实施,使得它们的操作完全隐藏并且不能被修改。RNG1、ENC和FCC组件可以由服务器SRV生成,使得它们在其内部结构中嵌入特定于用户的标识符的相应秘密密钥。
根据实施例,以逻辑电路的形式实施RNG1、ENC和FCC组件,所述逻辑电路包括诸如AND、NAND、OR、NOR、XOR的逻辑门,然后通过“乱码电路”技术进行转换。可以使用将例如以C或C++语言编写的程序变换成诸如VHDL或Verilog的语言的变换工具来实施将RNG1和FCC组件转换成逻辑电路。该乱码电路转换技术随机生成表示电路的每个输入比特和电路的每个逻辑门输出比特的每个二进制值0和1的乱码值,一些逻辑门输出对应于电路的输出,以通过其真值表表示每个门,并且通过使用密钥加密表示真值表的每一行的输出二进制值的乱码值来加密每个真值表,逻辑门输入的乱码值对应于真值表的行。例如最低有效位(LSB)的每个乱码值的确定等级的比特可以用于确定乱码值与其相应的二进制值0或1之间的对应关系。如此确定的比特可以用于在逻辑门的真值表中选择与逻辑门的输入乱码值对应的乱码输出值。每个门的乱码输出值因此可以通过使用在逻辑门的输入处应用的乱码值作为密钥,通过将与使用的加密算法对应的解密算法应用到因此选择的乱码输出值而获得。电路拓扑(电路输入、逻辑门输出和逻辑门输入之间的连接)可以在表中定义。
以该方式,当转换成乱码电路时,不可能确定RNG1、ENC和FCC组件的操作,并且电路仅以大量可能值中的一些输入值来操作。关于乱码电路技术的更多细节可以在例如Mihir Bellare、Viet Tung Hoang、Phyip Rogaway的文件“Foundations of GarbledCircuits(乱码电路基础)”中找到。
用于生成和执行乱码电路的这些技术可以容易地适用于通过具有SIMD(简单指令多数据)架构的处理器(诸如图形处理器)的实施。为此,将乱码电路的逻辑门分成几行,第一等级的逻辑门是专门接收乱码电路的输入值的那些逻辑门,并且给定等级n的逻辑门专门接收来自较低等级逻辑门的值或乱码电路的输入值。
根据实施例,乱码值被定义在具有4个字节的4个像素上,即16个字节。因此,逻辑门的真值表由四个乱码值定义,即对应于输入二进制值的每个组合(0,0),(0,1),(1,0),(1,1)的64个字节。乱码电路的拓扑可以从每个电路连接的编号来定义,包括从1到n的电路的输入,然后从n+1到n+q的电路的逻辑门的每个输出,该电路的输出被分配最高的数量,从n+qm+1到n+q,并且逻辑门由其输出连接的数量来被引用,从n+1到n+q。因此,乱码电路的拓扑可以以表的形式存储,对于电路的每个逻辑门收集逻辑门的输入连接的数量。
由处理器GP对乱码电路的执行可以由乱码电路解释器组件GCI来执行,该乱码电路解释器组件GCI被配置为通过在每次迭代时从第一等级的逻辑门开始执行一行的逻辑门来迭代操作。在执行第一等级逻辑门之前,将拓扑表、逻辑门真值表和输入的乱码值加载到GP处理器的输入存储器,即存储器GMEM中。在属于一个等级的逻辑门的每一次执行时,组件GCI被配置为传送作为处理器GP的输出存储器(也就是说输入存储器GMEM中的存储器VMEM)的等级的逻辑门的执行的结果而获得的乱码值,将它们提供给要执行的下一等级的逻辑门的输入。在该传送中,仅传送用作下一等级的逻辑门的输入值的乱码输出值。在乱码电路执行结束时,乱码输出值位于存储器VMEM中,并且可以传送到处理器HP。
以该方式,包含加密密钥的加密电路ENC仅仅保持对生成它的实体(在该情况下为服务器SRV)已知。应该注意的是,处理器HP可以通过发送给处理器GP的读取命令来访问存储器VMEM和GMEM的内容。
例如,组件RNG1可以例如通过包括第一级逻辑门的电路,被实现为乱码电路,该第一级逻辑门通过大量复制乱码逻辑门并且通过在第一级的逻辑门的每个真值表中交换包含相应门的乱码值的真值表的行获得。组件RNG1可以包括第二级或更多的逻辑门,每个逻辑门包括通过复制另一个乱码逻辑门或用于生成前一级的逻辑门的乱码逻辑门并且通过在第一等级逻辑门的每个真值表中交换真值表的行而获得的逻辑门。第二级和任何更高级的每个逻辑门组合较低级的逻辑门输出。根据实施例,组件RNG1的熵源通过利用处理器GP的并行架构来获得,其并行执行相同等级的乱码逻辑门。在这种架构中,不可能预先确定当前执行的等级的乱码逻辑门的乱码输出值将以哪种次序提供。正在执行的逻辑门的乱码输出值以获得它们的次序作为输入被注入下一等级的乱码逻辑门。因此,在最后等级的逻辑门的输出端处获得的乱码值具有一定的随机性。
同样可以实现组件RNG1,使得其包括由同一复制的逻辑门形成的多个级,每个复制的逻辑门具有真值表,该真值表的行可相对于另一逻辑门的表被不同地排序。因此,组件RNG1的输入可以用在组件RNG1的若干级的逻辑门的输入处。
组件RNG1同样可以以实施计数器的乱码电路的形式实现,一些计数器控制其它计数器的停止。因此计数器的值停止形成用于定义随机值的基础。
组件RNG1同样可以包括实施诸如AES的加密算法的逻辑门级,该加密算法被应用于较低级的逻辑门的输出值。
通过复制逻辑门并重新排序复制的逻辑门的真值表的行,可以以类似于组件RNG1的形式的形式来实现组件RNG2。组件RNG2同样可以体现为被配置为从乱码值RN1导出乱码值的乱码电路。在该情况下,在图4中,值RN1同样被应用在组件RNG2的输入处而不是值S2处。
组件GCI的全部或部分同样可以以乱码电路的形式实现。例如,负责解密正被执行的行的每个逻辑门的真值表的行以获得逻辑门的乱码输出值的组件GCI的函数可以以先前描述的乱码电路的形式来实现。
图10示出根据实施例的认证终端的用户而执行的步骤。提供步骤S1至S4用于安装具有用户认证函数的应用程序AP。在步骤S1中,终端MT的处理器HP发送用于下载与用户标识符UID相关联的应用程序AP的请求Rq。在步骤S2中,服务器SRV接收该请求Rq并生成要加载到终端MT的图形处理器GP中的程序APG。APG程序至少部分地以来自特别针对用户的UID而生成的秘密数据的不可攻破的代码的形式生成。在步骤S3中,响应于请求Rq,服务器SRV向终端MT发送要安装在处理器HP和处理器GP中的应用程序AP和程序APG。在步骤S4中,处理器HP接收应用程序AP和程序APG并将它们存储在非易失性存储器中,然后安装应用程序AP。
步骤S11至S29在交易或访问需要用户认证的服务期间执行。在步骤S11中,交易结束时的初步处理由处理器HP和服务器SRV或另一服务器执行。在步骤S12中,终端MT从用户Rqauth接收认证请求。在步骤S13中,终端MT的处理器HP响应于接收到请求RqAuth而启动应用程序AP的执行。请注意,交易或访问服务的行为可以由应用程序AP执行。在该情况下,应用程序AP在步骤S11之前启动。在步骤S14中,由处理器HP执行的应用程序AP向服务器发送对图形处理器程序APG1的请求,该请求包含用户的标识符UID以及可能的与交易相关的信息,以在终端MT的屏幕DSP上向用户呈现。在步骤S15中,除了程序APG的全部或部分之外或替代程序APG的全部或部分,服务器SRV接收该请求并生成要加载到终端MT的图形处理器GP中的程序APG1。这里再一次,程序APG1至少部分地以来自特别针对用户的UID而生成的秘密数据的不可攻破的代码或乱码的形式生成。程序APG1包括形成组件FCC的程序,其可以被设计为显示诸如要支付的价格和支付的接收者的交易数据。程序APG1中的一些FCC组件同样可以替换程序APG中的小键盘显示组件,诸如不同地显示键标签(标签的位置、大小和字体)。
在步骤S16中,服务器SRV发送它针对用户标识符UID生成的程序APG1。在步骤S17中,除了已存储在该非易失性存储器中以形成程序APG-APG1的程序APG的全部或部分之外或替换它们,终端MT接收程序APG1并将其加载到终端MT的易失性存储器中。在步骤S18中,处理器HP将程序APG-APG1从非易失性存储器发送到处理器GP的存储器GMEM。在步骤S19中,处理器GP加载并启动程序APG-APG1。在步骤S20和S24期间,处理器GP由程序APG-APG1控制。在步骤S20中,通过执行先前描述的组件RNG1和FCC,处理器GP触发小键盘的屏幕DSP上的显示,该小键盘的键位于随机选择的位置。因此,如上所述,通过应用视觉密码术算法来实现处理器GP对小键盘的显示,使得屏幕副本不提供小键盘的键的配置。
在处理器GP执行步骤S20的期间,HP处理器执行步骤S21和S22。在步骤S21中,处理器HP获取如由用户借助于鼠标或触摸表面CM激活的屏幕DSP上的位置POS(i)。在步骤S22中,如果激活位置中的一个激活位置对应于确认键“V”或取消键“C”的位置,则处理器HP在步骤S23中向处理器GP发送确认或取消消息,向处理器GP指示它可以从屏幕DSP上显示的图像中删除小键盘图像。由处理器GP对该消息的接收终止小键盘显示步骤S20,并且如果接收到的消息是确认消息,则处理器GP执行步骤S24,其中程序APG-APG1的组件ENC加密由组件RNG1生成的乱码随机值RN1,以生成要显示的小键盘的图像。在步骤S26中,处理器GP将在步骤S24中计算出的加密值ERN1提供给处理器HP。在步骤S27中,处理器HP向服务器SRV发送乱码值ERN1,由用户引入的位置POS(i)以及用户的UID。在步骤S28中,服务器SRV接收并检查该信息,然后对其进行处理以通过解密该加密值ERN1来对其进行验证。对加密值ERN1的解密由服务器SRV通过执行与组件ENC对应的乱码电路并且通过使用与用户的UID相关联地存储的密钥Krj来执行。该解密操作产生乱码随机值RN1。对乱码值RN1进行解码以确定这些值的原始二进制值确定显示的小键盘的键的次序。由用户输入的密码SC由输入的位置POS(i)和显示的小键盘的键的次序确定。在步骤S29中,服务器SRV验证由用户因此引入并获得的密码SC对应于与用户的UID相关联地存储的密码SC'。如果是这种情况,则服务器SRV认为用户已被认证。然后服务器SRV可以确认交易或通知交易的可能的服务器方。在步骤S30中,服务器SRV通知终端MT用户的认证成功或失败。处理器HP然后可以显示通知用户交易成功或失败的通知。
根据实施例,程序APG-APG1被配置为占用处理器GP的计算资源的至少80%。以该方式,如果另一个程序被加载用于由处理器GP的一个或多个单元TP或SFU执行,则处理器GP的操作将受到干扰。因此,确保显示在屏幕DSP上的图像不通过由处理器GP执行的另一个程序来显示。
根据实施例,每个键的字符可以用每个交易下载的程序APG1中定义的可变位置、大小和字体显示在键的图像中。因此,程序APG1可以包含要显示的小键盘的一个或多个键的定义。
可以对于各种应用实施步骤S11至S30,诸如访问服务、确认在线支付交易或电子投票服务。在电子投票服务的情况下,由服务器SRV在执行应用程序AP期间提供的程序APG1可以包括用于显示投票候选人的姓名的FCC组件,每个候选人与小键盘的键相关联,该小键盘的键随机分布在由终端MT显示的图像中。用户例如通过激活与他希望投票的候选人对应的小键盘的键来选择候选人,并且通过激活一组键来输入密码,从而允许服务器SRV认证用户。
此外,以诸如乱码电路的不可攻破的程序的形式实施的,耦接到加密组件ENC的组件RNG1同样可以基于仅由处理器GP和服务器共享并且不能在处理器GP和服务器之外访问的秘密数据(乱码随机值RN1),在用于建立处理器GP与安全处理器或服务器SRV之间的安全通信信道的应用中实现。通过使用该秘密数据作为加密密钥或通过由处理器GP和服务器SRV导出相同的加密密钥,使用由处理器GP和服务器SRV实施的加密算法,可以实现安全通信信道。程序APG、APG1然后包括解密组件,用于使用秘密数据对由服务器SRV发送和加密的数据进行解密。可以实施与图10的过程类似的过程,该过程包括步骤S11至S28,但是不具有用于显示图像的步骤S20,也不具有用于确定密码SC的步骤(S28)并将该密码与期望值进行比较的步骤(S29)。
组件RNG1、ENC和FCC同样可以用于在终端的屏幕DSP上生成和显示一次性代码。
应该注意的是,用于生成要显示的小键盘的图像或用于生成要显示的一次性代码的组件KGN的输入处的随机数可以由服务器SRV通过使用如先前所述的安全通信信道向处理器GP发送。
在以上描述中,特别是图10,由服务器SRV执行的所有描述的操作可以可替代地由包括在终端MT中的安全处理器(诸如先前描述的安全处理器SE)执行。
对于本领域技术人员而言显而易见的是,本发明容易受到各种替代和应用的影响。特别地,本发明不限于以用于组件RNG1、ENC和FCC的乱码电路形式的实施例。诸如程序混淆方法的其它方法可以用于使程序的代码难以穿越并且因此使加载在处理器中的程序的操作混淆,和/或防止程序的操作被揭示,或者防止未经授权的人员对程序的修改。这些方法例如在Benny Applebaumy和Zvika Brakerskiz于2015年01月12日发表在IACR-TCC中的文件“Obfuscating Circuits via Composite-Order Graded Encoding(通过组合顺序分级编码混淆的电路)”或在Joe Zimmerman于2014年09月30日发表在IACR中的文件“Howto Obfuscate Programs Directly(如何直接混淆程序)”中描述。
特别地,同样应该注意的是,装备移动终端的一些图形处理器可能不足以执行上述操作。终端的主处理器HP可用于代替图形处理器GP执行全部或部分先前描述的功能,通过以不可攻破的程序的形式实施这些功能来确保交易过程的安全性。这种程序在数学上碰巧不可能通过逆向工程来解码。如果程序的执行结果取决于程序生成的随机值,则同样不可能利用程序的输入数据。同样应该注意的是,受保护的组件可以是边信道分析的主题,包括测量组件的耗电量或组件发出的电磁场中的变化。这种组件的架构同样可以通过电子显微镜分析。相反,这种分析方法在确定不可攻破的程序的语义方面是无效的。
此外,通过利用人类视觉系统的持久性来显示具有在随机时间处单独刷新的像素图案的部分的图像并且组合以形成可理解图像是可以与共享秘密数据的方法分开实施的独立发明。因此,本发明不限于组合秘密数据共享方法的认证方法和以单独人为不可理解的相继帧的形式显示具有随机定义的键分布的小键盘的图像。实际上,可以设想仅基于用户根据具有随机定义的键分布的小键盘的图像引入的密码来认证用户而不共享秘密数据,所述小键盘的图像被显示为单独人为不可理解的相继帧。此外,共享秘密数据的方法具有除了用户认证之外的其它用途。例如,可以实施共享秘密数据的方法,以建立终端与在终端中包括的服务器或安全处理器之间的安全链路。
同样应该注意的是,小键盘的显示图像可以被其中邀请用户选择区域的任何其它图像替代,每个区域与标签或图标相关联,这些区具有随机定义的图像中的相应位置。因此,显示的标签或图标可以表示例如可以呈现交易数据的数字、字母、符号、象形图或消息。显示的图像可以示出质询以及呈现对质询的可能答案的要选择的区域,或以由质询指定的特定顺序选择的键标签。

Claims (30)

1.一种由安全处理器(SRV,SE)认证用户的方法,所述方法包括以下步骤:
由用户终端(MT)执行不可攻破的程序(APG,APG1),所述不可攻破的程序配置所述终端以在所述终端的显示屏上显示呈现可选择区域的图像(IM),每个可选择区域分配有标签或图标并且具有由随机数据定义的所述图像中的分布,所述图像包括对于所述用户单独不可理解的帧(IM1),所述帧以适合于利用所述用户的视觉系统的持久性的速率相继显示,使得所述标签或图标以对所述用户可理解的方式显现在所述显示屏上,
由所述终端借助于所述终端的接口收集由所述用户相对于所显示的图像指定的所述显示屏的位置(Pos<i>),
由所述终端向所述安全处理器发送由所述用户指定的所述位置,以及
由所述安全处理器验证相对于所显示图像的所指定的位置,如果所指定的位置对应于所述安全处理器已知的所述用户的认证数据,则认证所述用户。
2.根据权利要求1所述的方法,包括由所述安全处理器向所述终端(MT)发送所述不可攻破的程序(APG,APG1)的步骤。
3.根据权利要求2所述的方法,其中所述程序(APG1)配置所述终端(MT)以显示交易数据。
4.根据权利要求1至3中任一项所述的方法,其中由所述安全处理器(SRV,SE)向所述终端(MT)发送的所述程序(APG1)配置所述终端以在每个区域中的位置处和/或以特定于所述程序的大小和/或字体显示所述图像中的所述可选择区域的所述标签。
5.根据权利要求1至4中任一项所述的方法,其中由所述终端(MT)对所述图像(IM1)的显示包括相继的步骤:选择针对表示所述可选择区域的所述标签或图标的所述图像的每个像素或像素组的互补像素图案中的分解,并且对于每个所选择的分解,生成互补像素图案(EP1,EP2),使得只有在所述互补像素图案以适合于利用所述用户的视觉系统的持久性的速率相继显示的情况下,所述可选择区域的所述标签或图标才在所述显示屏上可见。
6.根据权利要求1至5中任一项所述的方法,其中由所述终端(MT)对所述图像(IM1)的显示包括相继的步骤:由所述终端在由可变持续时间(TP1,TP2,TP3)间隔开的随机选择时间处显示所生成的像素图案(P1,P2,P3),使得尽管它们相继显示,人类视觉系统可以将它们组合,形成所显示图像的像素图案的所述显示时间(t1,t2,t3)彼此不同并且相互独立。
7.根据权利要求1至6中任一项所述的方法,其中由所述安全处理器(SRV,SE)向所述终端(MT)发送的所述不可攻破的程序配置所述终端以:
生成随机数据(RN1),从所述随机数据(RN1)定义所述图像中所述可选择区域的所述标签或图标的所述分布,以及
以加密形式(ERN1)向所述安全处理器发送所述随机数据,所述方法包括以下步骤:
由所述安全处理器解密所述随机数据,
由所述安全处理器确定由所述终端显示的所述图像中所述可选择区域的所述标签或图标的所述分布,以及
由所述安全处理器从由所述用户指定的所述位置和所述可选择区域的所述标签或图标的所述分布确定由所述用户输入的密码。
8.根据权利要求1至7中任一项所述的方法,其中所述不可攻破的程序(APG,APG1)包括用于生成随机数据(RN2)的随机或伪随机数生成组件(RNG2),所述随机数据(RN2)用于选择针对表示所述图像的可选择区域的标签或图标的所述图像中的每个像素或像素组的互补像素图案分解。
9.一种在用户终端(MT)和安全处理器(SRV,SE)之间共享秘密数据的方法,所述方法包括以下步骤:
由所述终端(MT)生成秘密数据(RN1),
加密所述秘密数据,以及
向所述安全处理器发送所加密的秘密数据,
其特征在于它包括以下步骤:
由所述终端执行不可攻破的程序(RNG1,ENC),所述不可攻破的程序实施生成和加密所述秘密数据(RN1)的步骤。
10.根据权利要求9所述的方法,包括从所述安全处理器(SRV,SE)向所述终端(MT)发送所述不可攻破的程序(RNG1,ENC)的至少一部分的步骤。
11.根据权利要求9或10所述的方法,包括在所述终端(MT)和所述安全处理器(SRV,SE)之间建立链路的步骤,所述链路借助于仅在所述终端(MT)和所述安全处理器之间共享的秘密数据而被保护。
12.根据权利要求9至11中任一项所述的方法,其中所述秘密数据(RN1)由用于生成所述不可攻破的程序(RNG1,ENC)的随机或伪随机数的组件(RNG1)随机地或伪随机地生成。
13.一种由安全处理器(SRV,SE)从连接到所述安全处理器的终端认证用户的方法,所述方法包括以下步骤:
将配置所述终端的程序(RN1,ENC,FCC)加载到所述终端中以执行根据权利要求9至12中任一项所述的方法,以便生成仅在所述终端和所述安全处理器之间共享的秘密数据(RN1),并且用于在所述终端的显示屏上显示呈现可选择区域的图像(IM),每个可选择区域分配有标签或图标并且具有使用所共享的秘密数据定义的所述图像中的分布,
由所述终端执行所述程序以生成所共享的秘密数据并在所述显示屏上显示所述图像,所述图像包括对于所述用户单独不可理解的帧(IM1),所述帧以适于利用所述用户的视觉系统的持久性的速率相继显示,使得所述标签或图标以对所述用户可理解的方式显现在所述显示屏上,
由所述终端借助于所述终端的接口收集由所述用户相对于所显示的图像指定的所述显示屏的位置(Pos<i>),
由所述终端向所述安全处理器发送由所述用户指定的所述位置,以及
由所述安全处理器验证相对于所显示图像的所指定的位置,如果所指定的位置对应于所述安全处理器已知的所述用户的认证数据,则认证所述用户。
14.根据权利要求13所述的方法,其中所共享的秘密数据(RN1)定义所显示的图像(IM1)的所述可选择区域的所述分布。
15.根据权利要求13或14所述的方法,其中所述程序(APG1)配置所述终端(MT)显示交易数据,所述交易数据以对所述用户不可理解的方式显现在帧中。
16.根据权利要求13至15中任一项所述的方法,其中由所述安全处理器(SRV,SE)向所述终端(MT)发送的所述程序(APG1)配置所述终端以在每个区域中的位置中和/或以特定于所述程序的大小和/或字体显示所述图像中的所述可选择区域的所述标签或图标。
17.根据权利要求13至16中任一项所述的方法,其中由所述终端(MT)对所述图像(IM1)的显示包括相继的步骤:选择针对表示所述可选择区域的所述标签或图标的所述图像的每个像素或像素组的互补像素图案中的分解,并且对于每个所选择的分解,生成互补像素图案(EP1,EP2),使得只有在所述互补像素图案以适合于利用所述用户的视觉系统的持久性的速率相继显示的情况下,所述可选择区域的所述标签或图标才在所述显示屏上可见。
18.根据权利要求13至17中任一项所述的方法,其中由所述终端(MT)对所述图像(IM1)的显示包括相继的步骤:由所述终端显示在由可变持续时间(TP1,TP2,TP3)间隔开的随机选择时间处生成的所述像素图案(P1,P2,P3),使得尽管它们相继显示,所述人类视觉系统可以将它们组合,形成所显示图像的所述像素图案的所述显示时间(t1,t2,t3)彼此不同并且相互独立。
19.根据权利要求1至18中任一项所述的方法,其中由所述安全处理器(SRV,SE)向所述终端(MT)发送的所述不可攻破的程序(APG,APG1)配置所述终端占用运行所述程序的所述处理器的计算资源的至少80%。
20.根据权利要求1至19中任一项所述的方法,其中由所述安全处理器(SRV,SE)发送并且由所述终端(MT)执行的所述不可攻破的程序(APG,APG1)包括乱码电路(RNG1,FCC,ENC),所述乱码电路(RNG1,FCC,ENC)包括以若干排序级分布的逻辑门,所述逻辑门包括专门接收所述乱码电路的输入值的第一级收集逻辑门,专门接收来自属于较低级的逻辑门的值或所述乱码电路的输入值的某一级的逻辑门,每个逻辑门与表示所述逻辑门的每个输入比特和每个输出比特的每个可能比特值的乱码值相关联,每个逻辑门与真值表相关联,所述真值表包括针对所述逻辑门的输入二进制值的每个可能组合的通过加密所述乱码值而获得的值,所述乱码值表示与所述逻辑门的所述输入比特值的组合对应的所述逻辑门的输出值,由图形处理器对所述乱码电路的执行包括以下步骤:
以所述级别的次序依次执行逻辑门的所述级别,所述逻辑门的所述级别中的每个级别的执行包括同时执行所述级别的所有逻辑门,逻辑门的执行包括以下步骤:根据所述逻辑门的所乱码的输入值,选择与所述逻辑门相关联的真值表的行,并且解密所选择的行以获得所述逻辑门的所乱码的输出值,以及
传送所得的所乱码的输出值以将它们应用于从输出存储器区域(VMEM)到输入存储器区域(GMEM)的较高级逻辑门输入,使得在执行所述下一级逻辑门的情况下将它们考虑在内。
21.根据权利要求20所述的方法,其中所述乱码电路(RNG1,FCC,ENC)的执行由至少部分地以乱码电路形式实现的解释器(GCI)本身执行。
22.根据权利要求1至21中任一项所述的方法,其中使用乱码电路(RNG1,RNG2)生成所述秘密数据或随机数据(RN1,RN2),以便为相同的输入数据提供不同的输出数据,所述乱码电路包括与具有相同行但不同地排序的表相关联的第一级逻辑门,所述第一级逻辑门的所述输出数据根据由所述第一级逻辑门提供它们的次序提供给下一级逻辑门。
23.根据权利要求1至21中任一项所述的方法,其中通过同时使得并行执行若干相同操作来生成所述秘密数据或随机数据(RN1,RN2),所述随机数据取决于所述操作结束的次序。
24.根据权利要求1至23中任一项所述的方法,其中所述安全处理器是所述终端(MT)连接到的服务器(SRV)。
25.根据权利要求1至23中任一项所述的方法,其中所述安全处理器(SE)被包括在所述终端(MT)中。
26.一种终端,被配置用于:
执行配置所述终端的不可攻破的程序(APG,APG1)以在所述终端的显示屏上显示呈现可选择区域的图像(IM),每个可选择区域与标签或图标相关联并且具有由随机数据定义的所述图像中的分布,所述图像包括对于所述用户单独不可理解的帧(IM1),所述帧以适合于利用所述用户的视觉系统的持久性的速率相继显示,使得所述标签或图标以对所述用户可理解的方式显现在所述显示屏上,
借助于所述终端的接口收集由所述用户相对于所显示的图像指定的所述显示屏的位置(Pos<i>),以及
向安全处理器(SRV,SE)发送由所述用户指定的所述位置,如果所指定的位置对应于所述安全处理器已知的所述用户的认证数据,则由所述安全处理器认证所述用户。
27.一种终端,被配置用于:
执行配置所述终端的不可攻破的程序(APG,APG1)以:
生成秘密数据(RN1),
加密所述秘密数据,以及
向安全处理器(SRV,SE)发送所加密的秘密数据。
28.一种终端,其被配置为实现根据权利要求2至8以及10至25中的任一项所述的方法。
29.一种服务器,其被配置为实施根据权利要求1至25中的任一项所述的方法。
30.一种计算机程序,当由终端(MT)加载和执行时,配置所述终端实施根据权利要求1至25中的任一项所述的方法。
CN201680057607.0A 2015-08-04 2016-08-03 从非安全终端确保交易的方法 Pending CN108141350A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR1557534A FR3039948B1 (fr) 2015-08-04 2015-08-04 Procede de securisation d’une transaction a partir d’un terminal non securise
FR1557534 2015-08-04
PCT/FR2016/052023 WO2017021657A1 (fr) 2015-08-04 2016-08-03 Procédé de sécurisation d'une transaction a partir d'un terminal non sécurise

Publications (1)

Publication Number Publication Date
CN108141350A true CN108141350A (zh) 2018-06-08

Family

ID=54937227

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680057607.0A Pending CN108141350A (zh) 2015-08-04 2016-08-03 从非安全终端确保交易的方法

Country Status (6)

Country Link
US (1) US20180240100A1 (zh)
EP (1) EP3332504B1 (zh)
KR (1) KR20180037254A (zh)
CN (1) CN108141350A (zh)
FR (1) FR3039948B1 (zh)
WO (1) WO2017021657A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI634776B (zh) * 2017-08-04 2018-09-01 飛捷科技股份有限公司 影像顯示系統及應用於其上之影像顯示方法
WO2019110380A1 (en) * 2017-12-04 2019-06-13 Koninklijke Philips N.V. Nodes and methods of operating the same
EP3528161A1 (en) * 2018-02-19 2019-08-21 Skeyecode Method for signing a transaction
US11443072B2 (en) * 2018-06-29 2022-09-13 Microsoft Technology Licensing, Llc Peripheral device with resource isolation
CN110661764A (zh) 2018-06-29 2020-01-07 阿里巴巴集团控股有限公司 安全多方计算协议的输入获取方法和装置
US11126757B2 (en) 2018-10-19 2021-09-21 Microsoft Technology Licensing, Llc Peripheral device
US11245680B2 (en) * 2019-03-01 2022-02-08 Analog Devices, Inc. Garbled circuit for device authentication
FR3099266B1 (fr) * 2019-07-24 2022-06-03 Nothing2Install Procédé de transmission de données
US10797866B1 (en) * 2020-03-30 2020-10-06 Bar-Ilan University System and method for enforcement of correctness of inputs of multi-party computations
CN115292142B (zh) * 2022-10-08 2022-12-16 成都中科合迅科技有限公司 基于可识别格式数据自动化可视化方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090040367A1 (en) * 2002-05-20 2009-02-12 Radoslaw Romuald Zakrzewski Method for detection and recognition of fog presence within an aircraft compartment using video images
WO2012107698A1 (fr) * 2011-02-11 2012-08-16 Jean-Luc Leleu Procede de transaction securisee a partir d'un terminal non securise
EP2887610A1 (en) * 2013-12-19 2015-06-24 Nxp B.V. Binding mobile device secure software components to the sim
CN104823227A (zh) * 2012-09-11 2015-08-05 法商亚宙维金斯安全公司 通过叠加n个共享彩色图像验证安全元件的方法以及实现所述方法的安全元件

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2372945A1 (fr) * 2010-03-31 2011-10-05 France Telecom Procédé de transmission sécurisée de données entre un terminal numérique et une plateforme de services interactifs
FR2959896B1 (fr) * 2010-05-06 2014-03-21 4G Secure Procede d'authentification d'un utilisateur requerant une transaction avec un fournisseur de service
WO2014108835A2 (en) * 2013-01-08 2014-07-17 Bar-Ilan University A method for providing security using secure computation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090040367A1 (en) * 2002-05-20 2009-02-12 Radoslaw Romuald Zakrzewski Method for detection and recognition of fog presence within an aircraft compartment using video images
WO2012107698A1 (fr) * 2011-02-11 2012-08-16 Jean-Luc Leleu Procede de transaction securisee a partir d'un terminal non securise
CN104823227A (zh) * 2012-09-11 2015-08-05 法商亚宙维金斯安全公司 通过叠加n个共享彩色图像验证安全元件的方法以及实现所述方法的安全元件
EP2887610A1 (en) * 2013-12-19 2015-06-24 Nxp B.V. Binding mobile device secure software components to the sim

Also Published As

Publication number Publication date
FR3039948B1 (fr) 2017-08-11
EP3332504A1 (fr) 2018-06-13
EP3332504B1 (fr) 2019-10-30
US20180240100A1 (en) 2018-08-23
WO2017021657A1 (fr) 2017-02-09
FR3039948A1 (fr) 2017-02-10
KR20180037254A (ko) 2018-04-11

Similar Documents

Publication Publication Date Title
CN108141350A (zh) 从非安全终端确保交易的方法
EP3319069B1 (en) Method for authenticating a user by means of a non-secure terminal
US9760721B2 (en) Secure transaction method from a non-secure terminal
EP0354774B1 (en) Data cryptography using control vectors
EP1472584B1 (en) Secure data input dialogue using visual cryptography
CN102780689B (zh) 用于远程访问应用程序的渲染服务
CN106575334A (zh) 访问受保护软件应用
CN105024803B (zh) 白箱实现中的行为指纹
US7350081B1 (en) Secure execution of downloaded software
CN101448127A (zh) 保密信息存储系统和方法
CN105959108A (zh) 对云支付限制密钥进行加密及解密的方法、装置和系统
US20060098841A1 (en) Method and system for enabling remote message composition
Bond Understanding Security APIs
Cao et al. Secure QR code scheme based on visual cryptography
CN105978680A (zh) 在白盒实现方案中实现填充
US20190258829A1 (en) Securely performing a sensitive operation using a non-secure terminal
CN108009418A (zh) 用于借助非安全终端认证用户的方法
CN108021813A (zh) 用于保护从非安全终端执行的交易的方法
CN108022095A (zh) 用于将机密数据安全地发送到终端的用户的方法
CN108021831A (zh) 用于将机密数据安全地传输给终端的用户的方法
EP3594838A1 (en) Method for recovering a secret key securely stored in a secure element
EP3319002B1 (en) Method for securely performing a sensitive operation using a non-secure terminal
CN114531236A (zh) 一种密钥的处理方法、装置及电子设备
KR20090028067A (ko) 온라인에서의 계정정보 보안 방법 및 그 장치

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180608

WD01 Invention patent application deemed withdrawn after publication