CN108141723A - 管理应用程序的方法 - Google Patents

管理应用程序的方法 Download PDF

Info

Publication number
CN108141723A
CN108141723A CN201680060073.7A CN201680060073A CN108141723A CN 108141723 A CN108141723 A CN 108141723A CN 201680060073 A CN201680060073 A CN 201680060073A CN 108141723 A CN108141723 A CN 108141723A
Authority
CN
China
Prior art keywords
equipment
extention
server
application program
fingerprint
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.)
Granted
Application number
CN201680060073.7A
Other languages
English (en)
Other versions
CN108141723B (zh
Inventor
M.福克勒
B.贡萨尔沃
G.于斯曼斯
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.)
Thales Digital Security France Easy Stock Co
Original Assignee
Gemplus Card International SA
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 Gemplus Card International SA filed Critical Gemplus Card International SA
Publication of CN108141723A publication Critical patent/CN108141723A/zh
Application granted granted Critical
Publication of CN108141723B publication Critical patent/CN108141723B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/50Service provisioning or reconfiguring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • 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
    • 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/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0407Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • 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
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/60Subscription-based services using application servers or record carriers, e.g. SIM application toolkits

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Facsimiles In General (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Abstract

本发明是一种用于管理应用程序的方法,该应用程序包括通用部分和附加部分。通用部分被预先安装在设备上。设备取得它自己的指纹并且在用户认证之后向服务器发送用于取得附加部分的请求。请求包括与用户关联的凭证或用户的参考、指纹和应用程序的参考。服务器使用基于凭证和指纹这两者的密钥来生成附加部分的加密部分,并且构建被配置为对加密部分进行解密的自动解密程序。设备接收加密部分和自动解密程序。它取得指纹和凭证并且通过利用所述指纹和凭证作为输入参数运行自动解密程序来取回附加部分。

Description

管理应用程序的方法
技术领域
本发明涉及管理应用程序的方法。其特别是涉及管理意图在设备上安全地执行的应用程序的方法。
背景技术
在用于便携式设备的应用程序的情境中,安装了越来越多的软件应用程序。这些应用程序中的一些允许对敏感数据或像例如移动支付的服务进行访问。存在如下的风险:有恶意的人将软件应用程序从一个设备复制到另一个设备并且使用应用程序用于欺骗***易。
存在对增加在设备中的软件应用程序的保护的需求。
发明内容
本发明的目的是解决以上提及的技术问题。
本发明的目的是一种用于管理应用程序的方法,该应用程序包括通用部分和附加部分这两者。通用部分被安装在设备上。方法包括以下步骤:
—设备取得设备的指纹并且发起对设备的用户的认证,并且在成功认证的情况下向服务器发送用于取得附加部分的请求,请求包括与用户关联的凭证或者用户的参考、指纹和应用程序的参考。
—服务器标识附加部分,使用基于凭证和指纹这两者的密钥来生成附加部分的加密部分,并且构建被配置为对加密部分进行解密的自动解密程序。
—设备接收加密部分和自动解密程序。
—设备取得指纹和凭证并且通过利用所述指纹和凭证作为输入参数运行自动解密程序来取回附加部分。
有利地,设备可以将加密部分和自动解密程序存储到它的非易失性存储器中,设备可以取得指纹并且发起对用户的认证,并且在成功认证的情况下,设备可以取得凭证并且在刚要执行附加部分时就运行自动解密程序。
有利地,设备可以取得设备的指纹和用户参考,并且可以向控制器服务器发送使用请求,使用请求包括用户的凭证或参考、指纹和应用程序的参考。控制器服务器可以核查用户是否被准许运行应用程序,并且向设备发送反映核查的结果。取决于接收到的结果,设备可以授权或不授权执行应用程序。
有利地,设备可以具有可变的运行时环境。请求可以包括反映当前的运行时环境的状态的特征,并且可以在刚要执行附加部分时就发送请求。
有利地,服务器可以在用于生成加密部分的多个加密算法当中动态地选择加密算法。
本发明的另一目的是一种能够与服务器进行通信的设备。设备被配置为接收和安装应用程序的通用部分。设备包括代理,代理被配置为取得设备的指纹并且发起对设备的用户的认证,并且在成功认证的情况下取回与用户关联的凭证。代理被配置为向服务器发送用于取得应用程序的附加部分的请求。请求包括用户的凭证或参考、指纹和应用程序的参考。代理被配置为从服务器接收与应用程序关联的自动解密程序并且通过利用指纹和凭证作为输入参数运行自动解密程序来取回附加部分。
有利地,设备可以被配置为将加密部分和自动解密程序存储到它的非易失性存储器中。代理可以被配置为发起对用户的认证,并且在成功认证的情况下取得指纹和凭证并且在刚要执行附加部分时就运行自动解密程序。
有利地,代理可以被配置为向控制器服务器发送使用请求,使用请求包括用户的凭证或参考、指纹和应用程序的参考。代理可以被配置为取决于响应于使用请求而从控制器服务器接收到的结果,授权或不授权执行应用程序。
有利地,设备具有可变的运行时环境,并且代理可以被配置为在请求中添加反映可变运行时环境的当前状态的特征。代理可以被配置为在刚要执行附加部分时就发送请求。
本发明的另一个目的是能够参与应用程序的部署的服务器,应用程序包括两部分:通用部分和附加部分。通用部分被预先安装在设备中。服务器包括被适配以接收用于取得附加部分的请求的核查代理。请求包括与设备的用户关联的凭证或设备的用户的参考、设备的指纹和应用程序的参考。服务器包括被适配以标识附加部分的发现代理。服务器包括生成器代理,生成器代理被适配以使用基于凭证和指纹这两者的密钥生成附加部分的加密部分。服务器包括加密代理,加密代理被适配以构建被配置为对加密部分进行解密的自动解密程序并且响应于请求而发送加密部分和自动解密程序这两者。
附图说明
从参照对应的随附附图来阅读以下本发明的数个优选实施例的描述,本发明的其它特性和优点将会更清楚地显现,在附图中:
—图1是根据本发明的示出在设备中的应用程序的安装的示例的流程图;
—图2是根据本发明的示出在设备中的应用程序的执行的控制的示例的流程图;
—图3示出根据本发明管理的应用程序的设计的示例。
—图4示出根据本发明的被配置为管理应用程序的设备的架构的示例;以及
—图5示出根据本发明的被配置为管理应用程序的服务器的架构的示例。
具体实施方式
本发明可以应用于能够与远程服务器进行通信并且意图运行软件应用程序的任何类型的设备。特别是,本发明非常适合于在像移动电话、平板PC、电子眼镜、电子手表和电子手环那样的便携式设备上运行的软件应用程序。它还可以应用于像车辆、仪表、自动售货机、电视机或计算机那样的任何设备。
图1示出根据本发明的用于管理软件应用程序的方法的示例。
在该示例中,设备DE1是具有像例如Android®那样的其自己的操作***的移动电话。
软件应用程序A1被设计从而其包括两个互补的部分:通用部分BT和附加部分P1。
优选地,通用部分BT可以是可以用于若干种类的应用程序的软件部分。它可以包括对于若干个应用程序共有的特征和组件。
通用部分BT是与设备DE1的操作***分离开的。
有利地,通用部分BT可以被开发为能够对附加部分P1的下载进行管理的引导程序。
在第一步骤处,服务器SV2向设备DE1发送通用部分BT并且通用部分BT被安装在设备DE1中。在一个实施例中,可以从服务器SV2自由地取回并且安装通用部分BT。
在第二步骤处,设备DE1对用户进行认证。例如,设备DE1可以要求用户通过设备DE1的屏幕/键盘输入PIN码或特定的密码。设备DE1还可以取得用户的生物测量。替换地,可以使用秘密数据对用户进行认证,该秘密数据是从存储这些秘密数据的另外的设备取回的。该其它设备可以是例如USB令牌或NFC(近场通信)令牌。在成功的用户认证的情况下,设备DE1取得用户的凭证UC。
在第三步骤处,设备DE1取回设备DE1的指纹DFP并且构建请求R1,请求R1包括用户的凭证UC、指纹DFP和对于应用程序A1的参考AppID。
在另一示例中,可以从主凭证得出凭证UC从而对于每个交易而言所使用的凭证UC是变化的。在这种情况下,设备DE1从它自己的存储器取回主凭证并且生成被用作凭证US的得出的令牌。
在另一示例中,设备DE1可以构建请求R1,请求R1包括用户的参考(例如标识符)而不是用户的凭证US。在这种情况下,凭证UC被假定为预先存储在两方中:服务器和设备DE1。
在另一示例中,可以从被用户使用(例如提供)以向设备DE1进行认证的秘密数据得出凭证UC。
参考AppID可以是例如应用程序A1的标识符或名称。指纹DFP可以是设备DE1的序列号或者特定于设备DE1的任何数据。
有利地,指纹DFP可以是基于设备DE1的若干个测量或元件而生成的。例如,可以从安装在设备DE1上的应用程序的数量(和/或名称)与设备DE1的剩余空闲非易失性存储器(NVM)的大小的组合来构建指纹DFP。
然后设备DE1向服务器SV1发送请求R1以用于取得附加部分P1。
在第四步骤处,服务器SV1基于参考AppID标识附加部分P1。服务器SV1可以生成或者从专用存储中取回附加部分P1。然后服务器SV1使用用户的凭证UC和指纹DFP这两者作为输入参数来生成附加部分P1的加密部分EP1。服务器SV1还构建被设计为对加密部分EP1进行解密的自动解密程序AP1。
替换地,服务器SV1可以基于用户的凭证UC和指纹DFP这两者来计算密钥,并且可以使用该计算出的密钥生成加密部分EP1。
在一个实施例中,服务器SV1可以使用预设的加密算法以用于生成加密部分EP1。可选地,服务器SV1可以在用于生成加密部分EP1的若干个加密算法当中动态地选择加密算法从而所使用的加密算法可以一次与另一次不同。例如,服务器SV1可以随机地选择AES(高级加密标准)或XOR算法。
自动解密程序AP1是被配置为对加密部分EP1进行解密的自主的软件应用程序。它需要用户凭证UC和指纹DFP这两者作为输入参数。
在第五步骤处,响应于请求R1,服务器SV1发送加密部分EP1和自动解密程序AP1这两者。优选地,设备DE1可以在独特的包中取得这两个要素。可选地,这两个要素可以是在两个程序包中接收的。
从这点来看,两个选项是可能的。或者在设备DE1的非易失性存储器中储存该包(包括加密部分EP1和自动解密程序AP1这两者)并且稍后使用该包,或者立即使用它以执行应用程序A1而不将其永久地存储在设备DE1中。
在第一选项中,每次附加部分P1将要开始时(即,在刚要执行附加部分P1时),设备DE1对用户进行认证并且在成功认证的情况下再次取得用户的凭证UC和设备DE1的指纹DFP。然后设备DE1使用用户的凭证UC和指纹DFP作为输入参数来发起自动解密程序AP1的执行以取回附加部分P1。设备DE1在它的工作存储器中存储附加部分P1,当设备DE1重新启动或关闭时对该工作存储器进行擦除。
多亏该选项,即使包(包括加密部分EP1和自动解密程序AP1这两者)被非法地从设备DE1拷贝到另外的设备,也因为指纹将不同并且用户的凭证将不可用,所以附加部分P1不能被取回到该另外的设备中。
在第二选项中,通过在没有第二用户认证的情况下使用用户的凭证UC和指纹DFP作为输入参数来执行自动解密程序AP1,从而设备DE1立即(即刚接收到自动解密程序AP1时)取回附加部分P1。在第二选项中,设备并不在它的非易失性存储器中永久地存储自动解密程序AP1、加密部分EP1和附加部分P1。
可选地,设备DE1可以取回特定于其运行时环境的当前状态的特征(即特性)RTP,并且在请求R1中***该特征RTP。服务器SV1可以被设计为生成仅可以在设备DE1的当前运行时环境的情况下使用的附加部分P1。换言之,附加部分P1是为了仅由设备DE1的当前运行时环境可使用而定制的。例如,特征RTP可以是已经被分配用于运行附加部分P1的存储器区域的第一个地址。设备DE1的运行时环境被认为是足够可变的从而定制的附加部分P1稍后(即,当运行时环境的状态已经改变时)不能在设备DE1中或在另外的设备中使用。
在这种情况下,附加部分P1是根据目标运行时环境的状态定制的。
为了加强安全级别,在交换请求R1和其响应之前,服务器SV1和设备DE1可以建立安全信道。例如,它们可以通过OTA(Over-The-Air,空中下载)3G或4G信道或者通过HTTPS会话进行通信。
虽然在以上描述的示例中服务器SV1和SV2被示出为两个分离的实体,但是它们可以被合并在单个服务器或机器中。
图2示出根据本发明的用于控制软件应用程序的执行的方法的示例。
在该示例中,设备DE1可以是平板PC并且应用程序A1可以是与在图1处所描述的应用程序相似的。
该方法适用于以上描述的第一选项。(即,当加密部分EP1和自动解密程序AP1被永久地存储在设备DE1的非易失性存储器中时。)
在刚要执行附加部分P1时,设备DE1就对用户进行认证并且在成功认证的情况下取得用户的凭证UC。例如,它可以从存储这些凭证的第二设备DE2取回凭证UC。例如,设备DE2可以是能够通过像NFC、Wi-Fi或Bluetooth®那样的非接触式会话与设备DE1进行通信的设备。
设备DE1取回设备DE1的指纹DFP,并且构建使用请求R2,使用请求R2包括用户的凭证UC(或用户的参考)、指纹DFP和对于应用程序A1的参考AppID。然后,设备DE1向服务器SV3发送使用请求R2以用于取得授权以运行附加部分P1。
服务器SV3基于参考AppID标识附加部分P1(和因此应用程序A1)。然后服务器SV3核查其凭证UC(或参考)已经被接收到的用户是否被授权以在对应于指纹DFP的设备上执行附加部分P1(即执行应用程序A1)。该核查可以基于分配给用户的账户。它可以基于有限数量的(多个)执行和/或时间窗。
然后服务器SV3向设备DE1发送反映核查结果的响应。在成功核查的情况下,设备DE1授权执行附加部分P1,否则它拒绝执行附加部分P1。
在一个示例中,自动解密程序AP1可以被配置为如果由服务器SV3提供的结果是负面的则拒绝解密附加应用程序P1。
在另一个示例中,通用部分BT可以被配置为在由服务器SV3发送的错误结果的情况下拒绝执行附加部分P1。
在第三示例中,服务器SV3可以发送其值被自动解密程序AP1用作为输入参数的数据。
可选地,图1的服务器SV3和服务器SV1可以被合并在单个服务器或机器中。
图3示出根据本发明管理的应用程序A1的架构的示例。
软件应用程序A1包括为了正确执行应用程序而要求的两部分:通用部分BT和附加部分P1。
通用部分BT被特别地设计用于应用程序A1。通用部分BT是特定于应用程序A1的。
通用部分BT可以被视为不完整的应用程序,其需要附加部分P1以完全地成为完整的应用程序A1。
要注意的是,通用部分BT既不是操作***的要素也不是像Java RE那样的通用虚拟机。它不是共享库(像DLL)。它是可以被独立地启动的并且要求附加部分以执行想要的处理的独立式软件。
相反地,附加部分P1不是可以独立地启动的独立式软件。
在一个示例中,通用部分BT包括其安全级别为低的特征和应用数据,并且附加部分P1包括其安全级别为高的特征和应用数据。
在一个示例中,通用部分BT包括下载管理器DM。下载管理器DM被适配以管理从远程服务器下载附加部分P1。
多亏本发明,可以在应用程序商店中将通用部分BT登记为独特的应用程序。一队设备可以从应用程序商店取得通用部分BT并且然后安全地加载已经针对每个设备定制的附加部分P1。
本发明适用于任何类型的软件应用程序。例如,应用程序A1可以专用于物理访问控制、身份、支付、电信、忠诚度或者像视频、照片或音乐那样的服务访问。
图4示出根据本发明的被配置为管理应用程序的设备DE1的架构的示例。
设备DE1与图1中的移动电话相似。设备DE1包括可以是闪速存储器的非易失性存储器ME。设备DE1的操作***OS、代理AG和应用程序A1的通用部分BT被存储在非易失性存储器ME中。设备DE1还包括运行时环境RTE,当附加部分P1已经被解密并且准备好使用时,运行时环境RTE可以包括该附加部分P1(以虚线画出)。运行时环境RTE包括工作存储器(例如易失性RAM)。
代理AG被配置为取回设备DE1的指纹DFP。例如,代理可以被适配以读取设备DE1的标识符(即序列号)或者在设备DE1中独特地嵌入的硬件组件(像例如硬盘或显示器)的标识符。代理AG还被配置为取回与设备DE1的用户关联的凭证UC。代理AG还可以被配置为取回像标识符、名称或订阅号那样的用户的参考。代理AG被配置为构建请求R1,请求R1包括凭证UC(或用户参考)、指纹DFP和应用程序A1的参考AppID。参考AppID可以是例如应用程序A1的标识符。
代理AG还可以被配置为取得主凭证并且从主凭证得出凭证UC。(例如作为暂时的令牌或者一次性令牌)
请求R1是目的在于从服务器SV1取得应用程序A1的附加部分P1的请求。代理AG还被配置为从服务器SV1接收与应用程序A1关联的自动解密程序AP1并且通过利用指纹DFP和凭证UC作为输入参数运行自动解密程序AP1来取回附加部分P1。
有利地,代理AG可以被配置为取得指纹DFP和凭证UC并且在刚要执行附加部分P1时就运行自动解密程序AP1。
有利地,代理AG可以被配置为核查接收到的自动解密程序AP1(和/或接收到的加密部分EP1)的完整性并且仅在成功的完成性核查的情况下取得指纹DFP和用户的凭证UC。
有利地,代理AG可以被配置为向控制器服务器SV3发送使用请求R2,使用请求R2包括凭证UC(或用户参考)、指纹DFP和应用程序A1的参考AppID。在这种情况下,取决于响应于使用请求R2而从控制器服务器SV3接收的结果,代理AG还可以被配置为授权或不授权执行附加部分P1。
可选地,代理AG可以被配置为在请求R1中添加反映运行时环境RTE的当前状态(即特定于RTE的当前状态)的特征RTP。代理AG还可以被配置为在刚要执行附加部分P1时就发送请求R1。
在一个实施例中,代理AG和通用部分BT可以被合并在单个实体中。例如,通用部分BT可以被配置为提供代理AG的所有特征。
图5示出根据本发明的被配置为管理应用程序的服务器SV1的架构的示例。
服务器SV1包括核查代理M1、发现代理M2、生成器代理M3和加密代理M4。如在图1处描述的那样,核查代理M1被配置为接收请求R1。发现代理M2被配置为基于在请求R1中找到的参考AppID来标识附加部分P1。生成器代理M3被配置为使用在请求R1中找到的用户的凭证UC(或用户参考)和设备指纹DFP这两者来生成附加部分P1的加密部分EP1。
加密代理M4被设计为构建自动解密程序AP1并且响应于请求R1而发送加密部分EP1和自动解密程序AP1这两者,自动解密程序AP1被配置为对加密部分EP1进行解密。
生成器代理M3和加密代理M4可以使用预设的加密算法或者在若干个可用的加密算法当中选择加密算法。
这四个代理可以被实现为不同的软件组件或者被组合在一个或若干个组件中。
根据本发明,一旦附加部分P1被安装在设备DE1中,则即使失去了与服务器SV1的连接,只要设备未被关闭或重新启动,附加部分P1就可以被使用。换言之,当运行应用程序A1时设备DE1可以变成离线。
多亏本发明,因为总是执行用户认证并且在开始执行之前要求用户的凭证和设备指纹这两者,所以附加部分P1(和因此应用程序A1)的执行被保护以对抗欺骗性尝试。本发明提供防克隆解决方案。
本发明允许在向每个经授权的用户提供相同的应用程序(即服务)的同时向每个真正的用户提供变化的包(即加密部分EP1和自动解密程序AP1)。
必须要理解的是,在本发明的范围内,以上描述的实施例是作为非限制性示例而提供的。特别是,设备可以运行利用本发明而保护的若干个应用程序,并且软件应用程序可以采用任何语言进行编写。
设备DE1的架构和服务器SV1的架构仅仅是作为示例提供的。

Claims (10)

1.一种用于管理应用程序(A1)的方法,其特征在于所述应用程序(A1)包括两部分:通用部分(BT)和附加部分(P1),所述通用部分(BT)被安装在设备(DE1)上,并且所述方法包括以下步骤:
- 设备(DE1)取得设备(DE1)的指纹(DFP)并且发起对设备(DE1)的用户的认证,并且在成功认证的情况下向服务器(SV1)发送用于取得附加部分(P1)的请求(R1),所述请求(R1)包括与用户关联的凭证(UC)或用户的参考、指纹(DFP)和应用程序(A1)的参考(AppID),
- 服务器(SV1)标识附加部分(P1),使用基于凭证(UC)和指纹(DFP)这两者的密钥来生成附加部分(P1)的加密部分(EP1),并且构建被配置为对加密部分(EP1)进行解密的自动解密程序(AP1),
- 设备(DE1)从服务器(SV1)接收加密部分(EP1)和自动解密程序(AP1),
- 设备(DE1)取得指纹(DFP)和凭证(UC)并且通过利用所述指纹(DFP)和凭证(UC)作为输入参数运行自动解密程序(AP1)来取回附加部分(P1)。
2.根据权利要求1所述的方法,其中设备(DE1)将加密部分(EP1)和自动解密程序(AP1)存储到它的非易失性存储器中,其中设备(DE1)取得指纹(DFP)并且发起对用户的认证,并且其中在成功认证的情况下,设备(DE1)取得凭证(UC)并且在刚要执行附加部分(P1)时就运行自动解密程序(AP1)。
3.根据权利要求1所述的方法,其中设备(DE1)取得设备(DE1)的指纹(DFP)和用户参考,并且向控制器服务器(SV3)发送使用请求(R2),使用请求(R2)包括用户的凭证(UC)或参考、指纹(DFP)和应用程序(A1)的参考(AppID),
- 控制器服务器(SV3)核查用户是否被准许运行应用程序(A1),并且向设备(DE1)发送反映核查的结果,
- 取决于接收到的结果,设备(DE1)授权或不授权执行应用程序(A1)。
4.根据权利要求1所述的方法,其中设备(DE1)具有可变的运行时环境,其中所述请求(R1)包括反映当前的运行时环境的状态的特征(RTP),并且其中在刚要执行附加部分(P1)时就发送请求(R1)。
5.根据权利要求1所述的方法,其中服务器(SV1)在用于生成加密部分(EP1)的多个加密算法当中动态地选择加密算法。
6.一种能够与服务器(SV1)进行通信的设备(DE1),其特征在于设备(DE1)被配置为接收和安装应用程序(A1)的通用部分(BT),并且所述设备(DE1)包括:
- 代理(AG),其被配置为取得设备(DE1)的指纹(DFP)并且发起对设备(DE1)的用户的认证,并且在成功认证的情况下取回与用户关联的凭证(UC)并向所述服务器(SV1)发送用于取得应用程序(A1)的附加部分(P1)的请求(R1),所述请求(R1)包括用户的凭证(UC)或参考、指纹(DFP)和应用程序(A1)的参考(AppID),所述代理(AG)被配置为从服务器(SV1)接收加密部分(EP1)和与应用程序(A1)关联的自动解密程序(AP1),所述自动解密程序(AP1)被配置为对加密部分(EP1)进行解密,并且所述代理(AG)被配置为通过利用指纹(DFP)和凭证(UC)作为输入参数运行自动解密程序(AP1)来取回附加部分(P1)。
7.根据权利要求6所述设备(DE1),其中设备(DE1)被配置为将加密部分(EP1)和自动解密程序(AP1)存储到它的非易失性存储器中,并且其中代理(AG)被配置为发起对用户的认证,并且在成功认证的情况下,取得指纹(DFP)和凭证(UC)并且在刚要执行附加部分(P1)时就运行自动解密程序(AP1)。
8.根据权利要求6所述的设备(DE1),其中代理(AG)被配置为向控制器服务器(SV3)发送使用请求(R2),使用请求(R2)包括用户的凭证(UC)或参考、指纹(DFP)和应用程序(A1)的参考(AppID),并且其中代理(AG)被配置为取决于响应于使用请求(R2)而从控制器服务器(SV3)接收的结果,授权或不授权执行应用程序(A1)。
9.根据权利要求6所述的设备(DE1),其中设备(DE1)具有可变的运行时环境,其中所述代理(AG)被配置为在请求(R1)中添加反映可变运行时环境的当前状态的特征(RTP),并且其中代理(AG)被配置为在刚要执行附加部分(P1)时就发送请求(R1)。
10.一种能够参与应用程序(A1)的部署的服务器(SV1),所述服务器(SV1)是电子装置,其特征在于所述应用程序(A1)包括两部分:通用部分(BT)和附加部分(P1),所述通用部分(BT)被假定是预先安装在设备(DE1)中的,服务器(SV1)包括被适配以接收用于取得附加部分(P1)的请求(R1)的核查代理(M1),所述请求(R1)包括与设备(DE1)的用户关联的凭证(UC)或设备(DE1)的用户的参考、设备(DE1)的指纹(DFP)和应用程序(A1)的参考(AppID),
服务器(SV1)包括被适配以标识附加部分(P1)的发现代理(M2),服务器(SV1)包括生成器代理(M3),生成器代理(M3)被适配以使用基于凭证(UC)和指纹(DFP)这两者的密钥来生成附加部分(P1)的加密部分(EP1),服务器(SV1)包括加密代理(M4),加密代理(M4)被适配以构建被配置为对加密部分(EP1)进行解密的自动解密程序(AP1)并且响应于请求(R1)向设备(DE1)发送加密部分(EP1)和自动解密程序(AP1)这两者。
CN201680060073.7A 2015-10-16 2016-09-06 管理应用程序的方法 Active CN108141723B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP15306660.0A EP3157272A1 (en) 2015-10-16 2015-10-16 Method of managing an application
EP15306660.0 2015-10-16
PCT/EP2016/070961 WO2017063790A1 (en) 2015-10-16 2016-09-06 Method of managing an application

Publications (2)

Publication Number Publication Date
CN108141723A true CN108141723A (zh) 2018-06-08
CN108141723B CN108141723B (zh) 2021-03-12

Family

ID=54361031

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680060073.7A Active CN108141723B (zh) 2015-10-16 2016-09-06 管理应用程序的方法

Country Status (7)

Country Link
US (1) US10939265B2 (zh)
EP (2) EP3157272A1 (zh)
JP (1) JP6517435B2 (zh)
KR (1) KR102026279B1 (zh)
CN (1) CN108141723B (zh)
ES (1) ES2770006T3 (zh)
WO (1) WO2017063790A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111064757A (zh) * 2020-03-18 2020-04-24 腾讯科技(深圳)有限公司 应用访问方法、装置、电子设备以及存储介质
CN111179522A (zh) * 2020-01-09 2020-05-19 中国建设银行股份有限公司 自助设备程序安装方法、装置及***

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024084770A1 (ja) * 2022-10-17 2024-04-25 株式会社クボタ 管路工事事業支援システム、管路工事事業支援サーバ、管路工事事業支援システム制御方法及び管路工事事業支援システム制御用プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101150390A (zh) * 2006-09-22 2008-03-26 周卫 基于信任检测的应用指纹通信方法及***
EP2388968A1 (en) * 2009-02-27 2011-11-23 ZTE Corporation System and method for downloading application
US20140099925A1 (en) * 2010-10-28 2014-04-10 Apple Inc. Methods and apparatus for delivering electronic identification components over a wireless network

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7146645B1 (en) * 1999-12-30 2006-12-05 Nokia Mobile Phones Ltd. Dedicated applications for user stations and methods for downloading dedicated applications to user stations
JP2001331326A (ja) * 2000-05-19 2001-11-30 Sony Corp ソフトウェア供給システム、ソフトウェア供給方法及び記録媒体
JP2004514936A (ja) * 2000-11-23 2004-05-20 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ オーディオ及び/又はビデオを蓄積し且つ再生する装置
JP4220671B2 (ja) * 2000-12-27 2009-02-04 日立ソフトウエアエンジニアリング株式会社 暗号化データ通信方法並びにそのための暗号化データ生成システム及び記録媒体
US20050246285A1 (en) * 2004-04-01 2005-11-03 Board Of Regents, The University Of Texas System Software licensing using mobile agents
JP2007188324A (ja) * 2006-01-13 2007-07-26 Japan Wave:Kk データの不正使用防止方法
JP4678884B2 (ja) * 2008-01-29 2011-04-27 株式会社日立情報システムズ 可搬記憶媒体管理システム
JP2010124213A (ja) * 2008-11-19 2010-06-03 Toshiba Corp 画像形成装置、およびその制御方法
KR101284676B1 (ko) 2012-02-28 2013-08-23 건국대학교 산학협력단 암호화 기반 사용자 인증 및 안드로이드 앱 불법복제 방지시스템 및 그 방법
JP5931649B2 (ja) * 2012-08-24 2016-06-08 株式会社日立製作所 動的暗号変更システム
DE102012220767A1 (de) * 2012-11-14 2014-05-28 Siemens Aktiengesellschaft Verfahren und Vorrichtungen zum Installieren von Gebäudesteuerungssoftware
US8959331B2 (en) * 2012-11-19 2015-02-17 At&T Intellectual Property I, Lp Systems for provisioning universal integrated circuit cards
KR101466606B1 (ko) 2013-06-24 2014-12-01 바른소프트기술 주식회사 스마트 기기용 애플리케이션의 부정 사용 방지 시스템 및 방법
JP2015121921A (ja) * 2013-12-24 2015-07-02 キヤノン株式会社 サーバ装置、画像形成装置、サーバ装置の制御方法、画像形成装置の制御方法、及びプログラム
KR101532763B1 (ko) 2013-12-26 2015-07-02 주식회사 엔젠소프트 어플리케이션 불법복제 방지 시스템 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101150390A (zh) * 2006-09-22 2008-03-26 周卫 基于信任检测的应用指纹通信方法及***
EP2388968A1 (en) * 2009-02-27 2011-11-23 ZTE Corporation System and method for downloading application
US20140099925A1 (en) * 2010-10-28 2014-04-10 Apple Inc. Methods and apparatus for delivering electronic identification components over a wireless network

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111179522A (zh) * 2020-01-09 2020-05-19 中国建设银行股份有限公司 自助设备程序安装方法、装置及***
CN111179522B (zh) * 2020-01-09 2022-09-02 中国建设银行股份有限公司 自助设备程序安装方法、装置及***
CN111064757A (zh) * 2020-03-18 2020-04-24 腾讯科技(深圳)有限公司 应用访问方法、装置、电子设备以及存储介质
CN111064757B (zh) * 2020-03-18 2020-06-19 腾讯科技(深圳)有限公司 应用访问方法、装置、电子设备以及存储介质

Also Published As

Publication number Publication date
US10939265B2 (en) 2021-03-02
CN108141723B (zh) 2021-03-12
US20180314810A1 (en) 2018-11-01
EP3157272A1 (en) 2017-04-19
KR102026279B1 (ko) 2019-09-27
KR20180051618A (ko) 2018-05-16
JP2018530271A (ja) 2018-10-11
ES2770006T3 (es) 2020-06-30
WO2017063790A1 (en) 2017-04-20
EP3363215A1 (en) 2018-08-22
EP3363215B1 (en) 2019-10-30
JP6517435B2 (ja) 2019-05-22

Similar Documents

Publication Publication Date Title
CN111213171B (zh) 用于安全离线支付的方法和装置
CA3058240C (en) Cryptographic key management based on identity information
JP6704919B2 (ja) 支払いトークンのセキュリティを確保する方法
EP4081921B1 (en) Contactless card personal identification system
US20140068271A1 (en) Method and system for multiple passcode generation
CN103248495A (zh) 一种应用内付费的方法、服务器、客户端和***
CN108141723A (zh) 管理应用程序的方法
CN110431803B (zh) 基于身份信息管理加密密钥
CN111582876A (zh) 操作认证方法、装置、存储介质及电子装置
JP5781678B1 (ja) 電子データ利用システム、携帯端末装置、及び電子データ利用システムにおける方法
JP2010117995A (ja) アプリケーション発行システム、装置及び方法
EP3542335B1 (fr) Procédé de traitement de données transactionnelles, terminal de communication, lecteur de cartes et programme correspondant
US20180240111A1 (en) Security architecture for device applications
JP6499369B1 (ja) オンラインサービス提供システム
KR101683481B1 (ko) 모바일 환경에서 nfc 보안토큰 공인인증서 발급 시스템 및 그 방법
JP2024038201A (ja) オンラインサービス提供システム、icチップ、アプリケーションプログラム
CN116070221A (zh) 网证敏感数据硬保护方法、***、装置、设备和存储介质

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
CB02 Change of applicant information

Address after: Fa Guomodong

Applicant after: Thales Digital Security France

Address before: Fa Guomodong

Applicant before: GEMALTO S.A.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20230315

Address after: French Meudon

Patentee after: Thales Digital Security France Easy Stock Co.

Address before: French Meudon

Patentee before: Thales Digital Security France

TR01 Transfer of patent right