CN103378972B - 移动应用的安全配置 - Google Patents

移动应用的安全配置 Download PDF

Info

Publication number
CN103378972B
CN103378972B CN201310128486.2A CN201310128486A CN103378972B CN 103378972 B CN103378972 B CN 103378972B CN 201310128486 A CN201310128486 A CN 201310128486A CN 103378972 B CN103378972 B CN 103378972B
Authority
CN
China
Prior art keywords
configuration data
application
code
message
user
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.)
Active
Application number
CN201310128486.2A
Other languages
English (en)
Other versions
CN103378972A (zh
Inventor
P.厄尔克霍里
S.莱赫内
J.施耐德
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.)
SAP SE
Original Assignee
SAP SE
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 SAP SE filed Critical SAP SE
Publication of CN103378972A publication Critical patent/CN103378972A/zh
Application granted granted Critical
Publication of CN103378972B publication Critical patent/CN103378972B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • G06F21/33User authentication using certificates
    • G06F21/335User authentication using certificates for accessing specific resources, e.g. using Kerberos tickets
    • 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/305Authentication, i.e. establishing the identity or authorisation of security principals by remotely controlling device operation
    • 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
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • G06F21/35User authentication involving the use of external additional devices, e.g. dongles or smart cards communicating wirelessly
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/18Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications
    • H04W12/35Protecting application or service provisioning, e.g. securing SIM application provisioning
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2119Authenticating web pages, e.g. with suspicious links
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephone Function (AREA)
  • Storage Device Security (AREA)

Abstract

本公开涉及移动应用的安全配置。移动应用(“app”)的安全配置包括在讯息,例如具有附件的电子邮件中,将该应用的所要求的配置数据发送到用户的移动计算设备。在附件中包括验证值,以用于保护配置数据的真实性和完整性。将询问码分发给用户(或用户组)。使用询问码来验证配置数据。

Description

移动应用的安全配置
技术领域
本公开涉及移动应用的安全配置。
背景技术
除非在本文中另外指明,否则本部分中描述的方法不是本申请中权利要求的现有技术,也并不因包含在本部分中而被承认为现有技术。
在诸如智能电话和平板设备的移动计算设备上运行的移动应用(“app”)一般由用户从可在互联网上访问的公共应用商店(“appstore”(app商店))下载。移动计算设备的广泛应用以及它们的计算能力水平使这样的设备成为后端系统的远程客户端的可行替代。例如,组织可以具有支持多个组织的若干业务应用系统。移动计算设备允许组织的用户(例如,销售人员)远程地访问这些后端系统。
移动设备的客户端侧应用可以像任何其他移动应用那样通过应用商店的渠道发布。然而,业务应用一般需要许多应用通常不需要的配置。例如,当在移动计算设备上下载并安装之后,可以需要用关于组织服务器(“后端服务器”)的信息、资源地址和端口(一般以统一资源定位符,URL的形式)、以及诸如用户接口设置、安全策略信息等等的任何其他附加的特定于应用的配置信息来配置业务应用。对于非技术用户而言,可能很难手动地将这样的配置细节输入到应用中,并且这样的配置细节会耗费时间、容易出错,因此成为组织可能想要推出的任何移动应用被广泛和快速采用的障碍。
此外,这样的配置信息的完整性和真实性对于应用的安全操作以及避免应用所处理的个人数据、身份和机密数据被误用而言是关键的。例如,如果配置信息被以某种方式攻击或窃取,用户可能无意中将应用配置成在用户不知情的情况下连接到恶意服务器。当用户输入他们的登录信息(例如,用户名和口令)时,将给予黑客允许他们侵入组织中的真实服务器的信息。
发明内容
根据本公开的一方面,一种在移动计算设备上执行的方法包括:接收第一讯息(communication),该第一讯息包括用于至少第一移动应用的配置数据和验证值,该验证值是根据配置数据和第一询问码(challenge code)的组合生成的;从移动计算设备的用户接收询问码;使用所接收的询问码验证配置数据的真实性,包括根据配置数据和所接收的询问码的组合生成候选验证值,其中,当在第一讯息中接收的验证值与候选验证值匹配时认为配置数据通过验证;以及当认为配置数据通过验证时,向第一移动应用提供配置数据。
根据本公开的另一方面,一种系统包括:数据处理器;以及数据存储设备,其上存储有计算机可执行程序代码。该计算机可执行程序代码当被数据处理器运行时,使得该数据处理器:接收第一讯息,该第一讯息包括用于至少第一移动应用的配置数据和验证值,该验证值是通过向配置数据和第一询问码的组合应用安全散列函数而生成的;接收用户的询问码;通过将安全散列函数应用于配置数据和所接收的询问码的组合来生成候选验证值,由此使用所接收的询问码来验证配置数据的真实性,其中,当在第一讯息中接收到的验证值与候选验证值匹配时认为配置数据通过验证;以及当认为配置数据通过验证时,向第一移动应用提供配置数据。
根据本公开的另一方面,一种计算机实现的方法包括:从第一计算机接收第一询问码;第一计算机将配置数据和验证代码作为第一讯息发送到第二计算机,该配置数据用于配置移动应用,该验证代码通过将安全散列函数应用于配置数据和第一询问码的组合生成;在第二计算机处提取第一讯息;接收来自用户的询问码;通过将安全散列函数应用于配置数据和从用户接收的询问码的组合来生成候选验证代码;以及如果第一讯息中的验证代码与候选验证代码匹配,则向移动应用提供配置数据。
优点和技术效果
本公开有助于以简单和容易使用的方式提供和消费移动应用所要求的初始配置数据,其中,简单和容易使用对于非技术用户而言是重要因素。同时,它提供了借助于仅为授权用户(或授权的用户组)所知的秘密(即,询问码)来验证该初始配置数据的真实性和完整性的手段,从而很大程度降低了误用的风险。以容易使用和安全的方式装载和初始移动应用的配置显著提高了产生业务价值的移动应用的接纳和使用率。
附图说明
图1图示了根据本公开的组件布置。
图1A图示了根据本公开的可替换的组件布置。
图2示出了应用服务器可以呈现给用户的门户界面。
图3示出了移动计算设备可以呈现给用户的显示。
图4图示了可以由应用服务器执行的过程的例子。
图5图示了可以由移动计算设备执行的过程的例子。
图6示出了根据本公开的移动计算设备的系统框图。
图7示出了根据本公开的应用服务器的系统框图。
具体实施方式
在以下描述中,出于解释的目的,陈述了许多例子和特定细节以提供对本公开的全面理解。然而,对于本领域技术人员将是明显的是,权利要求所定义的本公开可以单独包括这些例子中的一些或所有特征,或者可以包括这些例子中的一些或所有特征与下面描述的其他特征的组合,或者还可以包括对此处描述的特征和概念的修改或其等同。
图1示出了根据本公开的实施例的用于配置应用的典型布置。用户102代表组织中的用户。用户102可以具有移动计算设备106(例如,智能电话、平板计算机等等),他们代表组织可以使用该移动计算设备106处理业务,用户是例如制造业中的销售人员、采购专员等等。
组织可以提供并支持应用服务器104,以提供在用户的移动计算设备106上运行的应用(例如,应用122)。应用服务器104可以将应用122上载到应用商店服务器112(例如,Appstore),该应用商店服务器112作为主机主管(hsot)应用的库114,以供下载到诸如移动计算设备106的移动计算设备。组织可以提供应用以有助于规划和调度假期、检查顾客记录或销售订单、访问顾客账务信息、访问生产数据等等。为组织开发的应用一般意图便利对存储在组织的后端服务器142中存储的组织的数据的访问。
用户102可以与应用商店服务器112交互以购买应用122。在一些实施例中,应用122可以被免费下载。例如,在组织想要向其员工发布应用的情况下,应用122很可能是免费的,因此“购买”仅仅意味着用户102将免费的应用从应用商店服务器112下载到他们的移动计算设备106。
用户102可以与应用服务器104交互以通知应用服务器他们想要配置他们当前拥有或打算安装到他们的移动计算设备106上的应用122。例如,配置应用122可以包括向应用提供配置数据,从而使应用能够与组织的一个或多个服务器142通信。在一些实施例中,用户102对应用服务器104做出请求,并且,响应于此应用服务器可以向用户提供询问码132。此外,应用服务器104可以经由讯息136向用户102发送配置数据134和验证值134a。
当用户102使用他们的移动计算设备106提取讯息136时,移动计算设备可以启动应用122。如将在下面更详细解释的,用户102可以向应用122提供询问码132',应用122将随后验证配置数据134。如果认为配置数据134通过验证,则应用122可以使用配置数据实施(conduct)与组织的服务器142的通信。
参照图1A,在一些实施例中,配置应用124可以被安装在用户的移动计算设备106上。当用户102利用他们的移动计算设备106提取讯息136时,配置应用124可以被启动以验证配置数据134。如果认为配置数据134通过验证(例如,使用用户提供的询问码132’),则配置应用124可以向应用122提供配置数据134,然后应用122可以实施与组织的服务器142的通信。在一些实施例中,配置数据134可以提供允许配置应用124配置多个应用的信息。
图2示出了应用服务器104可以呈现给用户102的门户界面的说明性的例子。可以以多种方式中的任何一种来访问应用服务器104。例如,可以通过诸如局域网的本地通信网络访问应用服务器104。作为另一个例子,用户102可以使用网络浏览器从互联网访问应用服务器104,例如,如果期望安全性的话,可以使用HTTP访问应用服务器104。
在图2的屏幕#1中,门户界面可以向用户102呈现应用服务器104所支持的应用的列表202。例如,列表202可以包括能够从应用商店服务器112下载的应用。用户102可以选择他们想要在他们的移动计算设备106上配置的一个或若干应用。例如,一组复选框204可以允许用户102选择感兴趣的应用。然后,用户102可以例如通过点击“请求配置”按钮206指示他们已经完成选择过程。
在屏幕#2中,门户界面可以确认用户102做出的选择。根据本公开,门户界面可以向用户102显示询问码132。然后,用户102可以写下询问码132(例如,在一张纸上),用户可以在他们的移动计算设备106上存储该询问码(例如,使用记事本程序),等等。
图3示出了当用户提取到由应用服务器104发送的讯息136时可以在用户102的移动计算设备106上呈现给用户102的显示302的说明性的例子。图3中示出的显示302是当配置应用124(图1A)被启动时的显示的例子。在一些实施例中,用户在图2中做出的对应用的选择可以产生适合于配置所选择的应用的配置数据134。此外,显示302可以向用户102显示将通过配置数据134配置的用户选择的应用的列表312。显示302可以包括用于从用户102接收询问码132’的输入框314。按钮316允许用户102开始验证过程。
现在将在根据本公开的原理进行处理的上下文中讨论附加的细节。参照图4,在步骤402,用户102可以发起使用应用服务器104对他们的移动设备106上的应用的配置过程。用户102可以例如通过使用诸如图2所示的界面来指定一个或多个将被配置的应用122。
在步骤404,应用服务器104可以生成用于在步骤402中指定的一个或多个应用122的配置数据134。一个应用的包括配置数据的特定信息将与另一个应用的不同。配置数据134可以包括将允许应用122建立到组织中的服务器142的通信链路的信息,诸如服务器名称、IP地址、端口号等等。配置数据134可以包括诸如加密密钥与解密密钥的数据安全措施。配置数据134可以根据用户102是谁来配置应用122,例如,对于给定用户可以使能或禁止特定特征。等等。
在步骤406,应用服务器104可以生成询问码132。询问码132可以是随机生成的数字、随机文本串、字母数字字符的随机串,一般而言询问码132可以包括任何可打印字符的随机串。询问码132可以被提供给用户102(步骤408),例如可以通过在图2示出的门户界面上显示询问码来将询问码提供给用户。然后,用户102可以写下询问码132以供以后使用。
在步骤410,应用服务器104可以使用应用服务器在步骤406生成的询问码132以及在步骤404生成的配置数据134来生成验证值134a(图1)。在实施例中,例如,可以通过将配置数据134与询问码132连接(concatenate)、并将连接得到的串馈送到安全散列函数以产生验证值134a来计算基于散列的消息认证码(hash-based message authenticationcode,HMAC)。典型的安全散列函数包括SHA1或SHA-256。当然,将会理解,验证值134a可以使用对配置数据134和询问码132的组合执行的若干已知的安全散列函数中的任何一个来产生。此外,可以使用配置数据134和询问码132的任何确定的和可再现的组合作为安全散列函数的输入。可以以任何方式和次序“组合”配置数据134和询问码132。可以将配置数据134和询问码132连接(如上面公开的),可以将配置数据134和询问码132加密并且可以组合得到的密码,等等。请注意,用于生成验证值134a的安全散列函数是“单向”函数。换句话说,将相同的安全散列函数应用于相同的配置数据134和询问码132的组合将总是产生相同的验证值134a,但是具体来说不能从验证值134a恢复出配置数据134和询问码132。
在步骤412,将讯息136发送给用户102。根据本公开的原理,讯息136包括配置数据134和验证值134a。在一些实施例中,该讯息可以是具有附件的电子邮件消息。将会理解,可以使用其他适当形式向用户102发送讯息136。下面将更详细地解释,在步骤408中提供给用户的询问码132可以随后被用于验证配置数据134,但是询问码132本身不包含在讯息136中。
如在前面的讨论中指示的,在一些实施例中,在询问码132和用户之间存在一对一的关联;一个用户请求配置,接收询问码,并且如将在下面解释的,使用该询问码验证在他们的移动计算设备上的应用122的配置数据。然而,在一些情况中,允许将单个询问码132用于多个用户可能更有效率。例如,假定最初推出应用的目标是部署到组织内的大的用户组。单个用户(例如,部门经理)可以登陆到应用服务器104上,发起对于配置将要推出的应用的请求,并接收单个询问码132(步骤408)。然后,应用服务器104可以生成验证值134a,以及包括配置数据134和验证值134a的讯息136。可以向应用服务器104提供将要接收讯息136的用户的列表(步骤412)。然后该部门经理可以向用户组发布询问码132。之后,每个用户可以下载该应用,并且使用共同的询问码132验证该应用的配置数据134。通过这种方式,仅仅需要由应用服务器104生成一个单个的询问码和一个验证值,而不是生成与大用户组中的用户数量一样多的询问码和验证值。
根据本公开的原理,应用服务器104向用户102提供询问码132的通信信道与将讯息136传递给用户的通信信道是分离的。将询问码132提供给用户102的通信信道可以被看做是可信赖信道。例如,用户102可以与大概是通过组织的内部网访问的应用服务器104直接交互来接收询问码132。用户102可以从同事接收询问码132(例如,部门经理可以向用户组发布询问码),等等。另一方面,通过例如在电子邮件附件中发送讯息来将讯息136单独地提供给用户102。通过使用与递送讯息136不同的通信信道来单独提供询问码132,提供了附加的安全级,因为很难攻击或以其他方式侵入每个通信信道。
参照图5解释根据本公开的原理的移动计算设备106中的配置过程。在步骤502,在某个时间,用户102将购买需要配置过程的应用122。可以在用户登陆到应用服务器104上以发起配置过程之前、或者可以在用户已经登录到应用服务器上之后购买应用122。在“大用户组”的情况下,应用服务器104甚至可以在他们知道应用122之前生成询问码132并发送讯息136(步骤412)。
在步骤504,用户102可以接收应用服务器104发送的讯息136(步骤412)。例如,如果讯息136是电子邮件,则可以通知用户102有电子邮件到达他们的邮箱。
在步骤506,用户102可以使用他们的移动计算设备提取讯息136。例如,用户102可以打开电子邮件并打开包含讯息136的附件。在步骤508,当用户102打开附件时,可以启动与附件相关联的应用。例如,当附件具有文件类型“PDF”时,可以启动与文件类型PDF相关联的PDF阅读器应用以便读取该附件。同样地,讯息136具有文件类型。在一些实施例中,讯息136可以与将被配置的应用122(“目标应用”)相关联,在这样情况下,当用户102打开附件时启动目标应用。在另一个实施例中,讯息136可以与配置应用124(图1A)相关联,在这样情况下,启动配置应用。
在步骤510,应用(不管是目标应用还是配置应用)读入包括讯息136的数据。应用可以在移动计算设备106上显示输入框(例如,图3中的314),以允许用户102输入在步骤408中提供给用户的询问码132。
在步骤512,应用(不管是目标应用还是配置应用)使用在讯息136中接收的配置数据134和在步骤510中接收的询问码生成候选验证值。在步骤514中,如果候选验证值与在讯息136中提供的验证值134a匹配,则认为配置数据134通过验证,并且过程可以前进到步骤516。
在步骤516,应用(不管是目标应用还是配置应用)可以在移动计算设备106上向用户102显示在讯息136中接收的配置数据134。可以提示用户102接受或拒绝配置数据。这个步骤可以作为附加的安全措施来执行,给予用户102最后的决定:是否继续使用配置数据134配置目标应用。
在步骤518,可以将现在已通过验证的配置数据134提供给目标应用。在由目标应用执行步骤510-516的实施例中,然后,目标应用简单地利用配置数据134配置它自己。
在由配置应用执行步骤510-516的实施例中,然后,配置应用可以将配置数据134提供给目标应用。关于如何将配置数据134提供给目标应用的具体细节取决于由移动计算设备106的操作系统(OS)提供的服务、以及所采用的用于向应用提供配置数据的约定。例如,每个应用可以在文件系统中指定用于存储其配置数据的目录或文件。配置应用124可以将配置数据134存储在那些文件中。OS可以提供进程间通信服务,允许配置应用124使用OS的进程间通信服务向目标应用发送配置数据134。
在步骤520,现在对目标应用进行适当地配置以用于与组织的后端服务器142通信。配置数据134可以包括配置目标应用以安全地发送和接收数据、取决于用户是谁来使能或禁止特定功能,等等。
根据本公开的移动计算设备106的具体实施例由图6中的框图示出。移动计算设备106可以包括诸如微控制器的处理组件602。存储器组件604可以包括静态存储器(例如,快闪随机存取存储器,RAM)和/或动态存储器(动态随机存取存储器,DRAM)。存储器组件604可以存储数据和能够由移动计算设备106运行的应用。例如,存储器组件604可以存储应用122,并且在一些实施例中,可以存储配置应用124。应用可以使处理组件602执行诸如在图5中陈述的步骤。通信组件606可以提供到组织的后端服务器142的适当的无线通信信道。通信组件606可以支持若干无线通信格式,包括例如蓝牙、3G,等等。
移动计算设备106可以包括输入组件622和输出组件624。在一些实施例中,输入组件622和输出组件624可以被集成到诸如触控式显示器的一个组件中。在其他实施例中,输入组件622和输出组件624可以是分离的。根据本公开,处理组件602可以在输出组件624上呈现特定的显示。例如,当处理组件602运行应用122或配置应用124时,输出组件624可以呈现图3中图示的显示。
根据本公开的应用服务器104的特定实施例通过图7的框图图示,图7示出了被配置成根据本公开操作的计算机系统702的高层框图。计算机系统702可以包括中央处理单元(CPU)或其他类似的数据处理组件。计算机系统702可以包括各种存储器组件。例如,存储器组件可以包括易失性存储器714(例如,随机存取存储器,RAM)和数据存储设备716。可以提供通信接口718以允许计算机系统702通过诸如局域网(LAN)、互联网等的通信网络722通信。内部总线720可以互连包括计算机系统702的组件。
数据存储设备716可以包括非瞬时性计算机可读介质,该非瞬时性计算机可读介质上存储有计算机可执行程序代码732。计算机可执行程序代码732可以被CPU712运行以使得CPU执行本公开的步骤,例如在图4中陈述的步骤。数据存储设备716可以存储数据结构734,如对象实例数据、运行时对象和任何其他在这里描述的数据。在一些实施例中,数据存储设备716可以存储将被发送到移动计算设备的配置数据134和验证值134a。
用户(例如,用户102)可以使用适当的用户接口设备734与计算机系统702交互。用户接口设备734可以包括例如诸如键盘、键区、鼠标或其他指向设备的输入设备和诸如显示器的输出设备。
此处讨论的所有系统和过程可以被具体实现为存储在一个或多个非瞬时性计算机可读介质上的程序代码。这样的介质可以包括例如软盘、CD-ROM、DVD-ROM、闪存驱动、磁带和固态随机存取存储器(RAM)或只读存储器(ROM)存储单元。将会理解,实施例不局限于硬件和软件的任何特定组合。此处描述为相互通信的元件直接或间接地能够通过用于传输数据的任何数量的不同系统进行通信,包括但不限于共享存储器通信、局域网、广域网、电话网络、蜂窝网络、光纤网络、卫星网络、红外网络、射频网络、以及可以用来在设备间传送信息的任何其他类型的网络。此外,系统间的通信可以通过已知或变得已知的任何一个或多个传输协议来进行,如,异步传输模式(ATM)、网际协议(IP)、超文本传输协议(HTTP)和无线应用协议(WAP)。
以上的描述举例说明了本公开的各种实施例以及如何实现本公开的各个方面的例子。上面的例子和实施例不应被认为是仅有的实施例,提供这些实施例是为了举例说明权利要求所限定的本公开的灵活性和优点。技术上述公开内容以及权利要求,其他布置、实施例、实现方式和等效物对于本领域技术人员而言将是明显的,并且可以被采用而不脱离权利要求所限定的公开的精神和范围。

Claims (20)

1.一种在移动计算设备上执行的方法,包括:
接收第一讯息,该第一讯息包括用于至少一个第一移动应用的配置数据和验证值,该验证值是根据配置数据和第一询问码的组合生成的;
从移动计算设备的用户接收询问码;
使用所接收的询问码验证配置数据的真实性,包括根据配置数据和所接收的询问码的组合生成候选验证值,其中,当在第一讯息中接收的验证值与候选验证值匹配时认为配置数据通过验证;以及
当认为配置数据通过验证时,向第一移动应用提供配置数据。
2.如权利要求1所述的方法,其中,不同于第一移动应用的第二移动应用执行接收询问码和验证配置数据的真实性的步骤。
3.如权利要求2所述的方法,其中,向第一移动应用提供配置数据包括:第二移动应用与第一移动应用通信。
4.如权利要求2所述的方法,其中,向第一移动应用提供配置数据包括:第二移动应用在第一移动应用能够访问的数据文件中存储所述配置数据。
5.如权利要求1所述的方法,其中,第一移动应用执行接收询问码和验证配置数据的真实性的步骤,并且当认为配置数据通过验证时,第一移动应用使用该配置数据建立并实施与服务器的通信。
6.如权利要求1所述的方法,其中,第一讯息包括具有附件的电子邮件消息,该附件包括配置数据和验证值。
7.如权利要求1所述的方法,其中,第一讯息中的验证值是通过向配置数据与第一询问码的组合应用安全散列函数而产生的基于散列的消息认证代码(HMAC)。
8.如权利要求1所述的方法,其中,配置数据被第一移动应用用来建立和实施与服务器的通信。
9.如权利要求1所述的方法,其中,用户通过通信路径接收第一询问码,该通信路径不同于通过其接收第一讯息的通信路径。
10.一种系统,包括:
数据处理器;以及
数据存储设备,其上存储有计算机可执行程序代码,
该计算机可执行程序代码当被数据处理器运行时,使得该数据处理器:
接收第一讯息,该第一讯息包括用于至少一个第一移动应用的配置数据和验证值,该验证值是通过向配置数据和第一询问码的组合应用安全散列函数而生成的;
从用户接收询问码;
通过将安全散列函数应用于配置数据和所接收的询问码的组合来生成候选验证值,由此使用所接收的询问码来验证配置数据的真实性,其中,当在第一讯息中接收到的验证值与候选验证值匹配时认为配置数据通过验证;以及
当认为配置数据通过验证时,向第一移动应用提供配置数据。
11.如权利要求10所述的系统,其中,所述计算机可执行程序代码是不同于第一移动应用的第二移动应用。
12.如权利要求11所述的系统,其中,第二移动应用与第一移动应用通信以向第一移动应用提供配置数据。
13.如权利要求11所述的系统,其中,第二移动应用将配置数据存储在能够被第一移动应用访问的数据文件中。
14.如权利要求10所述的系统,其中,第一移动应用包括所述计算机可执行程序代码。
15.如权利要求10所述的系统,其中,第一讯息包括具有附件的电子邮件消息,该附件包括配置数据和验证值。
16.如权利要求10所述的系统,其中,第一讯息中的验证值是基于散列的消息认证代码(HMAC)。
17.如权利要求10所述的系统,其中,配置数据被第一移动应用用来建立和实施与服务器的通信。
18.如权利要求10所述的系统,其中,用户与接收第一讯息分离地接收第一询问码。
19.一种计算机实现的方法,包括:
从第一计算机接收第一询问码;
第一计算机将配置数据和验证代码作为第一讯息发送到第二计算机,该配置数据用于配置移动应用,该验证代码通过将安全散列函数应用于配置数据和第一询问码的组合生成;
在第二计算机处提取第一讯息;
从用户接收询问码;
通过将安全散列函数应用于配置数据和从用户接收的询问码的组合来生成候选验证代码;以及
如果第一讯息中的验证代码与候选验证代码匹配,则向移动应用提供配置数据。
20.如权利要求19所述的计算机实现的方法,其中,与第一讯息分离地将询问码从第一计算机提供给用户。
CN201310128486.2A 2012-04-23 2013-04-15 移动应用的安全配置 Active CN103378972B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/453,221 US9075978B2 (en) 2012-04-23 2012-04-23 Secure configuration of mobile applications
US13/453,221 2012-04-23

Publications (2)

Publication Number Publication Date
CN103378972A CN103378972A (zh) 2013-10-30
CN103378972B true CN103378972B (zh) 2018-12-04

Family

ID=48143174

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310128486.2A Active CN103378972B (zh) 2012-04-23 2013-04-15 移动应用的安全配置

Country Status (3)

Country Link
US (1) US9075978B2 (zh)
EP (2) EP2743855B1 (zh)
CN (1) CN103378972B (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2975860A1 (fr) * 2011-05-25 2012-11-30 France Telecom Procede de paiement a distance, a partir d'un dispositif utilisateur, d'un panier d'achat sur un serveur marchand et systeme associe
US9075978B2 (en) 2012-04-23 2015-07-07 Sap Se Secure configuration of mobile applications
US9369867B2 (en) * 2012-06-29 2016-06-14 Intel Corporation Mobile platform software update with secure authentication
US20140259135A1 (en) * 2013-03-08 2014-09-11 Signature Systems Llc Method and system for simplified user registration on a website
US9348608B2 (en) * 2013-04-24 2016-05-24 QRC, Inc. System and method for registering application and application transforms on a radiofrequency digitization and collection device
US9058503B2 (en) 2013-05-10 2015-06-16 Successfactors, Inc. Systems and methods for secure storage on a mobile device
US10116754B2 (en) * 2014-01-30 2018-10-30 Comcast Cable Communications, Llc Dynamic configuration of interface identifiers
CN105700767B (zh) * 2014-11-28 2018-12-04 富泰华工业(深圳)有限公司 文件层叠式显示系统及方法
US9811356B2 (en) * 2015-01-30 2017-11-07 Appdynamics Llc Automated software configuration management
US9977671B2 (en) * 2015-07-20 2018-05-22 Google Llc Methods for multi-source configuration of mobile applications
US11424931B2 (en) * 2016-01-27 2022-08-23 Blackberry Limited Trusted execution environment
US10599409B2 (en) 2016-02-02 2020-03-24 Blackberry Limited Application lifecycle operation queueing
US10878123B2 (en) * 2016-04-11 2020-12-29 Hewlett-Packard Development Company, L.P. Application approval
US10122734B2 (en) 2016-11-29 2018-11-06 At&T Intellectual Property I, L.P. Secure email verification service
DK3334185T3 (da) * 2016-12-08 2021-09-13 Gn Hearing As Hearing system, devices and method of securing communication for a user application
US11165753B1 (en) * 2017-03-20 2021-11-02 Amazon Technologies, Inc. Secure data communication for user interfaces
US10389708B1 (en) * 2019-01-03 2019-08-20 Capital One Services, Llc Secure authentication of a user associated with communication with a service representative
CN110413345A (zh) * 2019-07-26 2019-11-05 云湾科技(嘉兴)有限公司 程序验证方法、装置、计算设备及计算机存储介质
US11605166B2 (en) 2019-10-16 2023-03-14 Parsons Corporation GPU accelerated image segmentation
US11587083B2 (en) 2019-12-11 2023-02-21 At&T Intellectual Property I, L.P. Transaction validation service
US11303306B2 (en) 2020-01-20 2022-04-12 Parsons Corporation Narrowband IQ extraction and storage
US11619700B2 (en) 2020-04-07 2023-04-04 Parsons Corporation Retrospective interferometry direction finding
US11569848B2 (en) 2020-04-17 2023-01-31 Parsons Corporation Software-defined radio linking systems
US11575407B2 (en) 2020-04-27 2023-02-07 Parsons Corporation Narrowband IQ signal obfuscation
US11849347B2 (en) 2021-01-05 2023-12-19 Parsons Corporation Time axis correlation of pulsed electromagnetic transmissions
CN114928551B (zh) * 2022-04-30 2024-03-12 苏州浪潮智能科技有限公司 一种系统配置方法、装置和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1350669A (zh) * 1999-05-18 2002-05-22 桑纳拉斯麦脱信托有限公司 用于鉴定程序代码真实性的方法和设备
CN1946222A (zh) * 2005-10-04 2007-04-11 乐金电子(中国)研究开发中心有限公司 移动通信终端的软件认证装置及其方法
US7308718B1 (en) * 2000-05-09 2007-12-11 Neopost Technologies Technique for secure remote configuration of a system
US7877461B1 (en) * 2008-06-30 2011-01-25 Google Inc. System and method for adding dynamic information to digitally signed mobile applications

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE602006021712D1 (de) * 2006-05-16 2011-06-16 Sap Ag Kontext-sensitivitätsbasierte Kryptographie
JP2011504623A (ja) * 2007-11-02 2011-02-10 クゥアルコム・インコーポレイテッド 構成可能なシステム・イベントおよびリソース・アービトレーション管理の装置および方法
CN101939746A (zh) * 2007-12-10 2011-01-05 菲尔爱迪(私人)有限公司 用于管理移动计算设备上的软件应用程序的方法和系统
FR2926938B1 (fr) * 2008-01-28 2010-03-19 Paycool Dev Procede d'authentification et de signature d'un utilisateur aupres d'un service applicatif, utilisant un telephone mobile comme second facteur en complement et independamment d'un premier facteur
US8209744B2 (en) * 2008-05-16 2012-06-26 Microsoft Corporation Mobile device assisted secure computer network communication
US8078158B2 (en) * 2008-06-26 2011-12-13 Seven Networks, Inc. Provisioning applications for a mobile device
US8347386B2 (en) * 2008-10-21 2013-01-01 Lookout, Inc. System and method for server-coupled malware prevention
US8127124B2 (en) 2009-03-19 2012-02-28 Hewlett-Packard Development Company, L.P. Remote configuration of computing platforms
KR101012872B1 (ko) * 2009-09-16 2011-02-08 주식회사 팬택 플랫폼 보안 장치 및 방법
CA2688770C (en) * 2009-12-17 2016-01-19 Diversinet Corp. Method and system for sharing data
US8397274B2 (en) * 2010-07-13 2013-03-12 Research In Motion Limited Method for authenticating device capabilities to a verified third party
US8543828B2 (en) * 2010-12-06 2013-09-24 AT&T Intellectual Property I , L.P. Authenticating a user with hash-based PIN generation
US8812868B2 (en) * 2011-03-21 2014-08-19 Mocana Corporation Secure execution of unsecured apps on a device
US9396325B2 (en) * 2011-03-21 2016-07-19 Mocana Corporation Provisioning an app on a device and implementing a keystore
US20120254949A1 (en) * 2011-03-31 2012-10-04 Nokia Corporation Method and apparatus for generating unique identifier values for applications and services
US20120254768A1 (en) * 2011-03-31 2012-10-04 Google Inc. Customizing mobile applications
US8898629B2 (en) * 2011-04-06 2014-11-25 Media Direct, Inc. Systems and methods for a mobile application development and deployment platform
US8990906B2 (en) * 2011-07-20 2015-03-24 Daon Holdings Limited Methods and systems for replacing shared secrets over networks
US9098678B2 (en) * 2011-09-15 2015-08-04 Verizon Patent And Licensing Inc. Streaming video authentication
US8271394B1 (en) * 2011-10-27 2012-09-18 Bogaard Erik T Confirming local marketplace transaction consummation for online payment consummation
US9152784B2 (en) * 2012-04-18 2015-10-06 Mcafee, Inc. Detection and prevention of installation of malicious mobile applications
US8966653B2 (en) * 2012-04-20 2015-02-24 Adobe Systems Incorporated Method and apparatus for provisioning a mobile application
US9075978B2 (en) 2012-04-23 2015-07-07 Sap Se Secure configuration of mobile applications

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1350669A (zh) * 1999-05-18 2002-05-22 桑纳拉斯麦脱信托有限公司 用于鉴定程序代码真实性的方法和设备
US7308718B1 (en) * 2000-05-09 2007-12-11 Neopost Technologies Technique for secure remote configuration of a system
CN1946222A (zh) * 2005-10-04 2007-04-11 乐金电子(中国)研究开发中心有限公司 移动通信终端的软件认证装置及其方法
US7877461B1 (en) * 2008-06-30 2011-01-25 Google Inc. System and method for adding dynamic information to digitally signed mobile applications

Also Published As

Publication number Publication date
US20130283400A1 (en) 2013-10-24
EP2657871B1 (en) 2015-07-22
US9075978B2 (en) 2015-07-07
EP2657871A3 (en) 2014-01-29
CN103378972A (zh) 2013-10-30
EP2657871A2 (en) 2013-10-30
EP2743855B1 (en) 2017-05-31
EP2743855A1 (en) 2014-06-18

Similar Documents

Publication Publication Date Title
CN103378972B (zh) 移动应用的安全配置
US11956230B2 (en) First factor contactless card authentication system and method
CN105378744B (zh) 在企业系统中的用户和设备认证
US9331995B2 (en) Secure configuration of mobile application
US9356930B2 (en) Secure randomized input
EP2684330B1 (en) Method and system for granting access to a secured website
US9628282B2 (en) Universal anonymous cross-site authentication
US10771457B2 (en) System and method for providing a one-time key for identification
JP2015062129A (ja) 柔軟な準帯域外認証構造
US9344896B2 (en) Method and system for delivering a command to a mobile device
KR102026544B1 (ko) 피싱 웹 페이지 검출 방법 및 시스템
CN111064749B (zh) 网络连接方法、设备及存储介质
EP3724798A1 (en) Method for authenticating a user based on an image relation rule and corresponding first user device, server and system
US10826901B2 (en) Systems and method for cross-channel device binding
CN112154636A (zh) 深度链接认证
CN108701200B (zh) 改善的存储系统
CN106790331B (zh) 一种业务接入方法、系统及相关装置
Sciancalepore et al. FRACTAL: Single-Channel Multi-factor Transaction Authentication Through a Compromised Terminal
CN108092974A (zh) 上网认证方法及装置
TW201203115A (en) Method and system for deployment of software applications to mobile computing devices

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: German Waldo

Applicant after: SAP AG

Address before: German Waldo

Applicant before: SAP AG

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: SAP AG TO: SAP EUROPE AG

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant