CN105659241B - 用于验证进行服务请求的服务的身份的方法和系统 - Google Patents

用于验证进行服务请求的服务的身份的方法和系统 Download PDF

Info

Publication number
CN105659241B
CN105659241B CN201480057454.0A CN201480057454A CN105659241B CN 105659241 B CN105659241 B CN 105659241B CN 201480057454 A CN201480057454 A CN 201480057454A CN 105659241 B CN105659241 B CN 105659241B
Authority
CN
China
Prior art keywords
identification information
user
application
computing device
request
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
CN201480057454.0A
Other languages
English (en)
Other versions
CN105659241A (zh
Inventor
迈克尔·戴维·加尔平
乔恩·克里斯蒂安·伯克努根
斯科特·罗伊·阿特伍德
杰弗里·威廉姆·汉密尔顿
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Priority to CN201811196157.0A priority Critical patent/CN109598116B/zh
Publication of CN105659241A publication Critical patent/CN105659241A/zh
Application granted granted Critical
Publication of CN105659241B publication Critical patent/CN105659241B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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
    • 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • G06Q30/0635Processing of requisition or of purchase orders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • 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/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • 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/321Cryptographic 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 involving a third party or a trusted authority
    • H04L9/3213Cryptographic 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 involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • 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/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Software Systems (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Power Engineering (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种应用服务系统从商人服务系统接收包括识别信息的应用程序代码。提取识别信息并分发应用以便在用户设备上操作。用户与应用相交互,创建被连同所提取识别信息一起发射到应用服务系统的访问请求。应用服务系统向用户设备发射包括接收识别信息的访问令牌。用户设备将访问令牌连同服务请求一起发射到应用服务系统。应用服务系统将来自访问令牌的识别信息与从已从商人服务系统接收到的应用程序代码提取的识别信息相比较。如果识别信息匹配,则处理服务请求。如果识别信息不匹配,则服务请求被拒绝,并且向用户设备发射错误消息。

Description

用于验证进行服务请求的服务的身份的方法和系统
技术领域
本公开一般地涉及应用验证系统,并且更具体地涉及提供进行服务请求的应用的身份的验证的方法和系统。
背景技术
商人和应用开发者创建允许用户发起服务请求的应用,该服务请求包括对于来自第三方系统的请求的请求或用以由第三方系统处理财务交易的请求。当这些请求被第三方系统处理时,第三方系统必须有效地验证传达该请求的应用的身份,使得用户和商人服务针对欺诈、身份盗窃及其它恶意行为受到保护。
传统上,系统通过网络令牌的使用来验证传达该请求的应用的身份。应用可以呈现网络令牌并进行对于来自第三方系统的访问令牌的请求。此验证过程要求共享秘密的使用,其为每方提供对同一密码密钥的访问。根据这种方法,为了向第三方系统证明其身份,应用必须首先向商人服务的服务器识别其本身以便被允许访问共享秘密。此循环识别过程对于商人服务而言可能是麻烦的。
发明内容
在本文所述的某些示例性方面中,一种用于验证进行服务请求的应用的身份的方法包括从商人服务系统接收包括识别信息的应用程序代码。该识别信息被应用服务系统访问并保存,并且应用被分发以便在用户设备上操作。用户使用用户设备上的应用发起服务请求。在示例实施例中,服务请求包括用以利用由应用服务系统提供的服务的请求。用户设备从用户设备上的应用程序代码提取识别信息并向应用服务系统发射访问请求。在示例实施例中,访问请求包括从用户设备上的应用程序代码提取的识别信息。响应于接收到该访问请求,应用服务系统产生包括从用户设备上的应用程序代码提取的识别信息的访问令牌,并将该访问令牌发射到用户设备。响应于接收到访问令牌,用户设备向应用服务系统发射服务请求。在示例性实施例中,服务请求包括访问令牌。响应于接收到服务请求,应用服务系统通过将与服务请求相关联的访问令牌中的识别信息与由应用服务系统保存的识别信息相比较来验证进行服务请求的应用的身份。如果识别信息匹配,则服务请求被应用服务系统处理。然而,如果识别信息不匹配,则服务请求被拒绝,并且向用户设备发射错误消息。
在考虑到根据所示示例性实施例的以下详细描述时,示例性实施例的这些及其它方面、目的、特征以及优点对于本领域的技术人员而言将变得显而易见。
附图说明
图1是描绘根据某些示例性实施例的应用验证系统的框图。
图2是描绘根据某些示例性实施例的用于验证进行了用以访问服务的请求的应用的身份的方法的框图。
图3是描绘根据某些示例性实施例的用于开发包括识别信息的应用的方法的框图。
图4是描绘根据某些示例性实施例的用于接收访问令牌的方法的框图。
图5是描绘根据某些示例性实施例的用于将在访问令牌中接收到的识别信息与被应用服务系统存储的识别信息相比较的方法的框图。
图6是描绘根据某些示例性实施例的计算机机器和模块的框图。
具体实施方式
概述
本文所述的示例实施例提供了用于验证进行用以访问服务的请求的应用的身份的计算机实现技术。在示例实施例中,用户访问用户设备上的服务(例如,应用)并发起服务请求,其利用由应用服务系统提供的服务。在促进服务请求之前,应用服务系统验证进行服务请求的应用的身份。
例如,用户访问应用以从航空公司购买票。用户使用应用来提交用以从航空公司购买票的请求。应用向应用服务系统进行服务请求以促进交易的一个或多个方面,诸如处理支付信息以购买票。在处理支付之前,应用服务系统验证服务请求源自于的应用的身份。
在另一示例中,用户访问应用并从商人A订购产品,该商人A然后在用户的住宅处亲自送货并安装。在验证商人A的应用的身份时,应用服务系统的地图服务为商人A提供到用户位置的送货路线和估计行程时间。
在另一示例中,用户使用商人B的购物应用发起交易。在验证商人B的应用的身份时,应用服务系统提供对用户的数字钱包的访问以获得支付信息或应用要约。
商人服务系统创建用于应用的应用程序代码。在示例实施例中,商人服务系统创建并操作商人服务系统设备以创建应用,该应用允许用户发起指向商人服务系统并被应用服务系统促成的过程或服务。例如,旅馆连锁店创建一种应用,其允许用户直接地使用用户设备预订来自旅馆连锁店的房间,并将房间预订的财务交易方面向外提供给应用服务系统。在另一示例实施例中,商人服务系统创建一种应用,其使得用户能够发起由应用服务系统促成但指向某个其它方的过程或服务。例如,第三方开发一种代表慈善组织(或在其指导下)的应用,其使得用户能够使用用户设备上的应用向组织捐钱。
经由商人服务系统创建的应用程序代码包括识别信息,其使得应用服务系统能够验证服务请求源自于的应用的身份。在示例实施例中,该识别信息包括应用服务系统所需要的作为分发应用的前提条件的信息。在另一示例实施例中,识别信息可包括来自应用程序代码的应用服务系统稍后想要视为识别信息的任何适当信息。商人服务系统将包括识别信息的应用发射到应用服务系统,应用被存储在那里。
应用服务系统从应用程序代码提取并存储识别信息。在示例实施例中,应用服务系统具有用于自动地筛掉程序代码并找到识别信息的在先开发过程。例如,应用服务系统可要求程序代码中的其中商人服务系统必须插入识别信息的标准化位置。在另一示例实施例中,应用服务系统运行搜索算法或计算机过程以找到并提取识别信息。
应用服务系统通过所选分发渠道来分发应用。开发者系统可选择渠道,其想要通过该渠道来分发应用。在示例实施例中,应用服务系统使得应用在网站、应用商店(appstore)、在线市场或允许用户选择和下载应用的任何位置上可用。在另一示例实施例中,用电子邮件、文本消息、或被配置成将应用发射到用户设备或者另外适当应用可用于在用户设备上下载的任何适当系统来发射应用。
用户检查并选择应用。在示例实施例中,用户检查、选择(在网站、市场、应用商店或其它适当位置上)并下载或者另外授权在用户设备上运行应用。应用被保存在用户设备上。用户在用户设备上打开应用并使用该应用发起服务请求。在示例实施例中,服务请求可以是支付的授权、对于特定信息的请求、或由应用使得可用的任何其它适当服务请求的形式。在示例实施例中,为了满足服务请求,应用要求由应用服务系统进行促成、处理或服务。
用户设备向应用服务系统发射访问请求。在示例实施例中,访问请求包括来自用户设备上的应用程序代码的识别信息。在示例实施例中,应用验证模块、或用户设备上的其它适当部件从用户设备上的应用程序代码提取识别信息。在示例实施例中,用户设备识别应用程序代码中的标准化位置并提取识别信息。在另一示例实施例中,执行能够识别关于用户设备的信息的算法或计算机程序。
用户设备在访问请求中将提取的信息发射到应用服务系统。响应于从用户设备接收到访问请求,应用服务系统产生访问令牌。在示例实施例中,访问令牌包括从用户设备接收到的识别信息。
响应于接收到访问令牌,用户设备向应用服务系统发射服务请求。在示例实施例中,服务请求包括从应用服务系统接收到的访问令牌。在本实施例中,访问令牌包括由用户设备提取并在访问请求中发射到应用服务系统的识别信息。
应用服务系统接收服务请求并验证进行该请求的应用的身份。在示例实施例中,应用服务系统将在服务请求中接收到的识别信息(例如,从用户设备提取的识别信息)与由应用服务系统存储的识别信息(例如,从已从商人服务系统接收到的应用程序代码提取的识别信息)相比较。如果识别信息匹配,则应用服务系统允许处理服务请求。如果识别信息不匹配,则应用服务系统拒绝该服务请求并向用户设备发射错误消息。在示例实施例中,该错误消息在用户设备上被显示为弹出窗口、电子消息、或其它适当通知。
在结合图示出程序流程的图来阅读的以下描述中更详细地解释了本发明的发明功能。
示例系统架构
现在转到附图,其中类似的附图标记遍及各图指示类似(但不一定相同的)元件,详细地描述示例实施例。
图1是描绘根据某些示例实施例的应用识别验证系统的框图。如图1中所描绘的,示例性操作环境100包括商人服务系统100、用户设备120、以及被配置成经由一个或多个网络140相互通信的应用服务系统130。在另一示例实施例中,这些系统中的两个或更多(包括系统110、120以及130)被集成为同一系统。在一些实施例中,与设备相关联的用户101必须安装应用和/或进行特征功能选择以获得本文所述的技术的益处。
每个网络140包括网络系统(包括系统110、120和130)可以用来通信和交换数据的有线或无线电信手段。例如,每个网络140可以实现为以下各项或者可以是其一部分:存储区域网(SAN)、个域网(PAN)、城域网(MAN)、局域网(LAN)、广域网(WAN)、无线局域网(WLAN)、虚拟专用网(VPN)、内部网、因特网、移动电话网、卡片网、蓝牙、近场通信网(NFC)、任何形式的标准化射频或其任何组合、或者促进信号、数据和/或消息(通称为数据)的传送的任何其它适当架构或系统。遍及本说明书,应理解的是,术语“数据”和“信息”在本文中可互换地用来指代文本、图像、音频、视频或者可以存在于基于计算机的环境中的任何其它形式的信息。
每个网络系统(包括系统110、120和130)包括具有能够通过网络140发射和接收数据的通信模块的设备。例如,每个网络系统(包括系统110、120和130)可以包括服务器、个人计算机、移动设备(例如,笔记本计算机、平板计算机、上网本计算机、个人数字助理(PDA)、视频游戏设备、GPS定位设备、蜂窝式电话、智能电话或其它移动设备)、具有嵌入其中和/或耦合到那里的一个或多个处理器的电视、或者包括或被耦合到用于经由网络140进行通信的网络浏览器或其它应用的任何适当技术。在图1中描绘的示例实施例中,网络系统(包括系统110、120和130)分别地被商人或程序代码开发者、用户101、以及应用服务系统操作员操作。
商人服务系统110包括商人服务系统设备115,其创建与用户设备120兼容并符合由应用服务系统130作为分发的前提条件给出的任何要求规范的应用程序代码。在示例实施例中,商人服务系统110经由商人服务系统设备115来创建应用程序代码本身。在另一示例实施例中,商人服务系统110安排另一实体创建应用程序代码。商人服务系统设备115可以经由网络140将应用程序代码发射到应用服务系统130。
在示例实施例中,商人服务系统100将应用程序代码传送到应用服务系统130。示例应用服务系统130包括应用分发模块131、应用请求模块135、以及数据存储单元137。在示例实施例中,从商人服务系统110接收到的应用程序代码包括用于将在用户设备120上操作的应用125的计算机可读指令。应用分发模块131通过一个或多个分发渠道来分发应用125以便在用户设备120上使用。在示例实施例中,应用分发模块131通过将应用125放在网站、应用商店(例如,“app”商店)、在线市场或允许用户101选择和下载应用125的任何位置上来分发应用125。在另一示例实施例中,用电子邮件、文本消息或被配置成向用户设备120发射应用或者另外使得应用125可用于在用户设备120上下载的任何适当系统来发射应用125。
在示例实施例中,应用分发模块131从已从商人服务系统110接收到的应用提取识别信息,并将提取的信息保存在数据存储单元137中。在另一示例实施例中,应用分发模块131发射整个应用程序代码以便保存在数据存储单元137中。
示例应用请求模块135被配置成对由用户设备120上的应用125进行的访问请求和服务请求进行响应。作为对访问请求的响应的一部分,应用请求模块135产生访问令牌,其包括从应用服务系统130接收到的识别信息。响应于服务请求,应用请求模块135验证进行服务请求的应用125的身份。在示例实施例中,应用请求模块135通过将包括在从用户设备接收到的访问令牌中的识别信息与由应用分发模块131提取并保存在数据存储单元137上的识别信息相比较来验证进行服务请求的应用的身份。如果验证是令人满意的,则应用请求模块135允许处理服务请求。然而,如果验证响应并不是令人满意的,则应用请求模块135向用户设备120发送错误消息并拒绝该服务请求。
示例数据存储单元137使得能够存储应用程序代码和识别信息以供应用请求模块135访问。在示例实施例中,数据存储单元137可以包括适合于存储信息的应用服务系统130可访问的任何本地或远程数据存储结构。在示例实施例中,数据存储单元137存储已加密信息,诸如HTML5本地储存器。
在示例实施例中,应用服务系统130从用户设备120接收服务请求。在示例实施例中,用户设备120可以是个人计算机、移动设备(例如,笔记本、计算机、平板计算机、上网本计算机、个人数字助理(PDA)、视频游戏设备、GPS定位设备、蜂窝式电话、智能电话或其它移动设备)、电视或者包括或被耦合到网络服务器的其它适当技术或用于与网页文件相交互的其它适当应用。用户101可以使用用户设备120来查看、注册、下载、上传、或者另外访问由应用服务系统130分发的应用。
示例用户设备120包括用户接口121、应用125、数据存储单元127、以及应用验证模块129。在示例实施例中,用户接口121使得用户101能够与用户设备120上的应用125相交互。例如,用户接口121可以是触摸屏、网页、基于语音的接口或任何其它接口,其允许用户101提供输入并从应用125接收输出。在示例实施例中,用户接口121允许用户101发起将由应用125传送到应用服务系统130的服务请求。在另一示例实施例中,用户接口121在应用服务系统130拒绝服务请求之后向用户101显示错误消息并向用户设备120发射错误消息。
示例应用125是存在于用户设备120上并在其上面执行操作的程序、函数、例程、小程序或类似实体。例如,应用125可以是购物应用、商人系统110应用、因特网浏览器、数字钱包应用、忠诚卡应用、另一增值应用、用户接口121应用、或在用户设备120上操作的其它适当应用中的一个或多个。在示例实施例中,应用125由商人服务系统110创建并由应用服务系统130分发。在一些实施例中,用户101必须在用户设备120上安装应用125和/或进行特征选择以获得本文所述技术的益处。在示例实施例中,用户101可经由用户接口121来访问用户设备120上的应用125。
在示例实施例中,应用125可以向应用服务系统130发射服务请求。在示例实施例中,该服务请求由用户101发起。在另一示例实施例总,服务请求是用户101的输入的结果或者是用户发起过程的结果。例如,用户101访问访问应用125并期望使用用户101的数字钱包来购买产品。在用户101发起交易之后,应用125向应用服务系统130发射服务请求以访问用户101的数字钱包以处理交易。在示例实施例中,作为到应用服务系统130的服务请求的一部分,应用125可以向应用服务系统130发射访问请求以便接收包括识别信息的访问令牌。
示例数据存储单元127使得能够存储应用程序代码和从应用程序代码提取的任何信息。在示例实施例中,数据存储单元127可以包括适合于存储信息的用户设备120可访问的任何本地或远程数据存储结构。在示例实施例中,可在用户设备120上的安全元件或其它安全存储器(未示出)中实现数据存储单元127和应用125。在另一示例实施例中,数据存储单元127可以是常驻于用户设备120上的单独存储器单元。在示例实施例中,数据存储单元127可以包括适合于存储信息的用户设备120可访问的任何本地或远程数据存储结构。在示例实施例中,数据存储单元127存储已加密信息,诸如HTML5本地储存器。
应用验证模块129可以被应用125和/或用户设备120用来创建给应用服务系统130的访问请求。在示例实施例中,应用验证模块129是用户设备120的操作系统的一部分。在另一示例实施例中,用户101下载、保存、或者另外启用应用验证模块129。在示例实施例中,应用验证模块129与数据存储单元127通信以访问用户设备120上的应用程序代码以便提取识别信息并作为访问请求的一部分发射到应用服务系统130。在另一示例实施例中,应用验证模块129访问数据存储单元127以获得先前从应用程序代码提取并存储的识别信息。
下面参考图2-5中所示的示例方法来描述示例操作环境100的部件。还可用其它系统且在其它环境中执行图2-5的示例方法。
示例系统过程
图2是描绘根据某些示例实施例的用于验证进行请求的服务应用的身份的方法200的框流程图。参考图1中所示的部件来描述方法200。
在框210中,商人服务系统110创建应用125。在示例实施例中,应用125包括可以在用户设备120上执行以执行一个或多个功能的计算机可读指令。在示例实施例中,应用125使得用户101能够进行购买、捐赠或转移钱财、请求或访问信息、进行或更改预订、履行要约或处理与商人服务系统110的任何其它请求或交易。在另一示例实施例中,应用125使得用户101能够经由用户设备120向除商人服务系统110之外的实体进行请求或与其执行交易。下面参考图3中所述的方法来更详细地描述用于创建应用125的方法。
图3是描绘如在框210中参考的根据某些示例性实施例的用于创建应用125的方法210的框流程图。参考图1中所示的部件来描述方法210。
在框310中,商人服务系统110创建用于应用125的应用程序代码。在示例实施例中,商人服务系统110根据由应用服务系统130阐述的规范和要求用商人服务系统设备115来创建应用程序代码。例如,应用服务系统130可要求用来编写程序代码的特定编程语言、用于程序代码的元素的格式、或其它格式化或系统要求。
在框320中,商人服务系统110在应用程序代码内结合识别信息,其使得应用服务系统130能够验证由应用125发起的请求以便处理服务。示例识别信息可包括数字签名、包名称、应用125标识符、商人服务系统110名称、或其它代码或识别信息中的一个或多个。
在另一示例实施例中,识别信息在其被应用服务系统130接收到之后被结合到应用程序代码中。在示例实施例中,应用服务系统130具有作为分发应用125的前提条件必须满足的关于识别信息的规范。例如,应用服务系统130可要求商人服务系统110将识别信息放置在应用程序代码中的某个指定位置上。
在框330中,商人服务系统110向应用服务系统130发射应用125。在示例实施例中,商人服务系统110发射对应用125进行编码的应用程序代码。
在框340中,应用服务系统130接收并存储应用125。在示例实施例中,应用125被应用分发模块131接收到。在示例实施例中,应用程序代码被存储在数据存储单元137中。
方法210然后前进至图2中的框220。
返回图2,在框220中,应用服务系统130从应用程序代码提取并存储识别信息。在示例实施例中,应用服务系统130从应用程序代码中的一个或多个指定位置提取识别信息。在另一示例实施例中,应有功能服务系统130执行搜索算法以从应用程序代码找到且然后提取识别信息。在另一示例实施例中,应用服务系统130在查看应用程序代码之后进行关于识别信息是什么的确定,并且然后提取该信息以用于存储。在另一示例实施例中,应用服务系统130向应用程序代码中的某个位置上插入识别信息,并且然后存储该识别信息。在示例实施例中,提取的识别信息被存储在数据存储单元137中。
在框230中,应用服务系统130分发应用125。在示例实施例中,应用服务系统130选择分发渠道,诸如网站、应用商店(例如,“app”商店)、在线市场、或允许用户101选择和下载应用的任何位置。在另一示例实施例中,用电子邮件、文本消息或被配置成将应用125发射到用户设备120或者另外使得应用125可用于在用户设备120上下载的另一适当系统来发射应用125。在另一示例实施例中,应用125可从一个用户设备120共享给另一用户设备120,并且分发通过代理从一个用户101向另一个发生。在另一示例实施例中,通过分发渠道来分发应用125,并且用户101将其下载到用户设备120并将其传输到属于同一用户101的一个或多个附加设备120。
在框240中,应用125被保存在用户设备120上。例如,用户101访问由应用服务系统130管理的在线应用商店以便要下载到用户设备120上的浏览应用。在示例实施例中,用户101使用用户接口121以便访问应用125位于该处的分发渠道。例如,用户101使用用户设备120上的网络浏览器来访问电子邮件消息收件箱并打开包含从应用服务系统130接收到的应用125的电子邮件消息。在示例实施例中,应用125程序代码被保存在数据存储单元127上。在示例实施例中,一旦选择了应用125,则发起安装过程,并且应用125变成常驻于用户设备120上。例如,用户101用个人计算机来访问分发渠道,并且在决定其想要将应用125下载到用户设备120之后,通过用鼠标双击应用125来选择应用125以用于下载。
在框250中,用户101与用户设备120上的应用125相交互。例如,用户101期望从商人购买产品并在用户设备120上打开商人的应用125。继续先前的示例,用户101使用应用125来决定要从商人购买的产品。在示例实施例中,用户101使用用户接口121与用户设备120上的应用125相交互。例如,用户101可在决定要购买哪个产品或请求哪个信息时使用触摸屏以便与用户设备120上的应用125相交互。
在框260中,用户101使用用户设备120上的应用125来发起服务请求。在示例实施例中,服务请求包括用户101发起的期望请求。例如,用户101期望使用保持在由应用服务系统130维护的用户101的数字钱包中的财务帐户信息来购买产品。在发起支付时,由应用125创建服务请求并发送到应用服务系统130以访问用户101的数字钱包。在另一示例中,用户101(诸如教师)期望访问由应用服务系统130(诸如教科书出版社)维护的私人信息(诸如家庭作业答案)。在请求信息时,由应用125创建服务请求并发送到应用服务系统130以请求对信息的访问。
在另一示例实施例中,服务请求包括用户101请求的一部分。例如,用户101期望使用由应用服务系统130或第三方系统(未示出)维护的数字钱包来购买产品并使该产品被运送到用户101的住宅。用户101手动地向应用125中输入运送信息且然后发起使用数字钱包对项目进行支付和将项目运送到用户101的地址的单个请求。地址信息可被应用125直接地发送给商人,但是由应用125创建服务请求以请求访问用户101的数字钱包以检索用户101的财务帐户信息并处理该支付。在另一示例实施例中,用户101并不输入运送信息,并且服务请求包括用以检索用户101的财务帐户信息和运送信息的请求。
在框270中,用户设备120从应用服务系统130接收访问令牌。在示例实施例中,用户设备110从应用服务系统130请求访问令牌。在本实施例中,应用服务系统130在将访问令牌发射给用户设备110之前产生或检索访问令牌。在示例实施例中,访问令牌包括用来验证由用户101发起的服务请求的识别信息。在本实施例中,访问令牌与服务请求一起被发射到应用服务系统130以用于验证。下面参考图4中描述的方法来更详细地描述用于接收访问令牌的方法。
图4是描绘根据某些示例实施例的用于由用户设备120上的应用125发起访问请求的方法270的框流程图,如在框250中提及的。参考图1中所示的部件来描述方法250。
在框410中,应用验证模块129从常驻于用户设备120上的应用125程序代码提取识别信息。在示例实施例中,用户101服务请求触发应用验证模块129中的预先存在的访问请求算法,其发起识别信息的提取。在另一示例实施例中,用户101服务请求提供应用验证模块129用来从应用125程序代码找到并提取识别信息的可执行指令。
在框420中,用户设备10将访问请求连同所提取的识别信息一起发射到应用服务系统130。在示例实施例中,应用验证模块129提取识别信息并产生访问请求。在另一示例实施例中,应用验证模块129将识别信息发射到用户设备110上的应用125和/或另一模块以便包括在访问请求中并发射到应用服务系统130。
在框430中,应用服务系统130接收访问请求和识别信息。在示例实施例中,该访问请求被应用请求模块135接收。在示例实施例中,应用服务系统130将接收到的访问请求中继到应用请求模块135以对访问请求进行响应。
在框440中,应用请求模块135产生包括从用户设备120接收到的识别信息的访问令牌。例如,应用请求模块135接收访问请求以及包括包名称X和数字签名Y的识别信息。继续同一示例,应用请求模块135产生包括包名称X和数字签名Y的访问令牌。
在框450中,应用服务系统130将访问令牌发射到用户设备120。
在框460中,用户设备120从应用服务系统130接收访问令牌。在示例实施例中,访问令牌被应用125接收到。在本实施例中,访问令牌被包括在由应用125进行的服务请求中。在另一示例实施例中,访问令牌被应用验证模块129接收到并被发射或者另外与应用125共享以允许其被包括在服务请求中。在示例实施例中,用户设备110、应用验证模块129、和/或应用125不能读取或者另外理解包含在访问令牌中的信息。在本实施例中,用户设备110、应用验证模块129、和/或应用125能够确定响应于访问请求而接收到访问令牌,并且其是服务请求的所需元素。
方法270然后前进至图2中的框280。
返回图2,在框280中,用户设备110将服务请求与访问令牌一起发射到应用服务系统130。在示例实施例中,服务请求包括未改变访问令牌。在示例实施例中,用户设备110不能读取或者另外理解访问令牌,然而,其能够确定访问令牌是服务请求的所需元素。
在框290中,应用请求模块135验证进行服务请求的应用125。下面参考图5中描述的方法来更详细地描述用于验证应用125的方法。
图5是描绘根据某些示例实施例的用于将在访问令牌中接收到的识别信息与从商人服务系统110接收到的应用125程序代码提取的识别信息相比较的方法290的框流程图。参考图1中所示的部件来描述方法290。
在框510中,应用服务系统130接收服务请求和访问令牌。
在框520中,应用请求模块135将关于访问令牌的识别信息与由应用服务系统130从应用125程序代码提取并存储的识别信息相比较。在示例实施例中,应用请求模块135包括验证请求算法、或计算机程序代码,其在从应用125接收到服务请求时在没有人类干预的情况下自动地发起应用验证过程。
在框530中,应用请求模块135确定在关于访问令牌的识别信息与由应用服务系统130从应用125程序代码提取并存储的识别信息之间是否存在匹配。
如果识别信息不匹配,则方法290前进至图5中的框540。例如,从已从商人服务系统110接收到的应用程序代码提取的识别信息是包名称X和数字签名A,但是从来自用户设备120的访问令牌接收到的识别信息是包名称X和数字签名B。
在框540中,应用服务系统130拒绝从用户设备120接收到的访问请求。例如,该服务请求是使用由应用服务系统130维护的用户101的数字钱包来处理支付。已确定由请求应用125提供的识别信息是无效的,不访问数字钱包且不执行支付。在示例实施例中,应用服务系统130拒绝应用125的用以使用其服务器来执行过程或访问信息的请求。
在框550中,应用服务系统130向用户设备120发射错误消息。在示例实施例中,应用请求模块135向用户设备120发射错误消息。在示例实施例中,错误消息包括意图向用户101传达该服务请求不能被处理的语言。
在框560中,用户设备120接收错误消息。
在框570中,用户设备120显示错误消息。在示例实施例中,在用户设备120的用户接口121上显示错误消息。在示例实施例中,错误消息包括通过声音或视觉媒介传播的语言。例如,错误消息可由单独的说出“错误:服务请求不能处理”或者连同向用户101传达错误消息的计算机化语音一起的可读消息组成。
返回框530,如果应用请求模块135确定在从访问令牌接收到的识别信息与从已从商人服务系统110接收到的应用程序代码提取的识别信息之间存在匹配,则方法290然后前进至图2中的框295。例如,从已从商人服务系统110接收到的应用程序代码提取的识别信息是包名称X和数字签名A,并且从访问令牌接收到的识别信息是包名称X和数字签名A。
返回图2,框295,应用服务系统130允许处理服务请求。在示例性实施例中,服务请求的处理包括处理财务交易、访问装运信息、访问来自由应用服务系统130维护的帐户的信息、或对交易应用优惠券或要约中的一个或多个。
其它示例性实施例
图6描绘了根据某些示例实施例的计算机器2000和模块2050。计算机器2000可对应于本文提出的各种计算机、服务器、移动设备、嵌入式系统、或计算系统中的任何一个。模块2050可包括被配置成促进计算机器2000执行各种方法和处理本文提出的功能的一个或多个硬件或软件元件。计算机器2000可包括各种内部或附接部件,诸如处理器2010、系统总线2020、系统存储器2030、存储介质2040、输入/输出接口2060、以及用于与网络2080通信的网络接口2070。
可将计算机器2000实现为常规计算机系统、嵌入式控制器、膝上计算机、服务器、移动设备、智能电话、机顶盒、柜员机、车辆信息系统、与电视相关联的一个或多个处理器、自定义机器、任何其它硬件平台或其任何组合或多重性。计算机器2000可以是被配置成使用经由数据网络或总线系统互联的多个计算机器运行的分布式系统。
处理器2010可被配置成执行代码或指令以执行本文所述的操作和功能,管理请求流程和地址映射,并执行计算和生成命令。处理器2010可被配置成监视和控制计算机器2000中的部件的操作。处理器2010可以是通用处理器、处理器核、多处理器、可重配置处理器、微控制器、数字信号处理器(DSP)、专用集成电路(ASIC)、图形处理单元(GPU)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、控制器、状态机、门逻辑、分立硬件部件、任何其它处理单元或其任何组合或多重性。处理器2010可以是单个处理单元、多个处理单元、单个处理核、多个处理核、专用处理核、协处理器或其任何组合。根据某些实施例,处理器2010连同计算机器2000的其它部件一起可以是在一个或多个其它计算机器内执行的虚拟化计算机器。
系统存储器2030可包括非易失性存储器,诸如只读存储器(ROM)、可编程序只读存储器(PROM)、可擦可编程序只读存储器(EPROM)、闪存或者能够在有或没有外加电力的情况下存储程序指令或数据的任何其它设备。系统存储器2030还可包括易失性存储器,诸如随机存取存储器(RAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、以及同步动态随机存取存储器(SDRAM)。还可使用其它类型的RAM来实现系统存储器2030。可使用单个存储器模块或多个存储器模块来实现系统存储器2030。虽然系统存储器2030被描绘为是计算机器2000的一部分,但本领域的技术人员将认识到在不脱离主题技术的范围的情况下系统存储器2030可与计算机器2000分离。还应认识到的是,系统存储器2030可包括诸如存储介质2040之类的非易失性存储器件或与之相结合地操作。
存储介质2040可包括硬盘、软盘、紧凑式磁盘只读存储器(CD-ROM)、数字多功能磁盘(DVD)、蓝光磁盘、磁带、闪存、其它非易失性存储器件、固态驱动(SSD)、任何磁存储器、任何光学存储器件、任何电存储器件、任何半导体存储器件、任何基于物理的存储器件、任何其它数据存储器件或其任何组合或多重性。存储介质2040可存储一个或多个操作系统、应用和程序模块,诸如模块2050、数据或任何其它信息。存储介质2040可以是计算机器2000的一部分或者连接到计算机器2000。存储介质2040还可以是与计算机器2000通信的一个或多个其它计算机器,诸如服务器、数据库服务器、云储存器、网络附接储存器等。
模块2050可包括被配置成促进计算机器2000执行各种方法和处理本文提出的功能的一个或多个硬件或软件元件。模块2050可包括与系统存储器2030、存储介质2040或两者相关联地存储为软件或固件的一个或多个指令序列。存储介质2040因此可表示可在其上面存储指令或代码以供处理器2010执行的机器或计算机可读介质的示例。机器或计算机可读介质一般地可指代用来向处理器2010提供指令的任何介质。与模块2050相关联的此类机器或计算机可读介质可包括计算机软件产品。应认识到的是,包括模块2050的计算机软件产品也可与一个或多个过程或方法相关联以便经由网络2080、任何信号承载介质或任何其它通信或传送技术来向计算机器2000传送模块2050。模块2050还可包括硬件电路或用于配置硬件电路的信息,诸如用于FPGA或其它PLD的微代码或配置信息。
输入/输出(I/O)接口2060可被配置成耦合到一个或多个外部设备、从一个或多个外部设备接收数据以及向一个或多个外部设备发送数据。还可将此类外部设备连同各种内部设备一起称为外围设备。I/O接口2060可包括用于将各种外围设备可操作地耦合到计算机器2000或处理器2010的电和物理连接两者。I/O接口2060可被配置成在外围设备、计算机器2000或处理器2010之间传送数据、地址以及控制信号。I/O接口2060可被配置成实现任何标准接口,注入小型计算机系统接口(SCSI)、串行附接SCSI(SAS)、光纤信道、外围部件互连(PCI)、快速PCI(PCIe)、串行总线、并行总线、先进附接技术(ATA)、串行ATA(SATA)、通用串行总线(USB)、Thunderbolt、FireWire、各种视频总线等。I/O接口2060可被配置成仅实现一个接口或总线技术。替换地,I/O接口2060可被配置成实现多个接口或总线技术。I/O接口2060可被配置为系统总线2020的一部分、全部或者与之相结合地操作。I/O接口2060可包括用于缓冲一个或多个外部设备、内部设备、计算机器2000、或处理器2010之间的传输的一个或多个缓冲器。
I/O接口2060可将计算机器2000耦合到各种输入设备,包括鼠标、触摸屏、扫描仪、电子数字化器、传感器、接收机、触控板、轨迹球、照相机、扩音器、键盘、任何其它定点设备或其任何组合。I/O接口2060可将计算机器2000耦合到各种输出设备,包括视频显示器、扬声器、打印机、投影仪、触觉反馈设备、自动化控制、机器人部件、致动器、马达、风扇螺线管、阀、泵、发射机、信号发射器、光等。
计算机器2000可使用通过网络接口2070跨网络2080到一个或多个其它系统或计算机器的逻辑连接而在联网环境中操作。网络2080可包括广域网(WAN)、局域网(LAN)、内部网、因特网、无线接入网、有线网、移动式网络、电话网、光学网络或其组合。网络2080可以是分组交换、电路交换的任何拓扑结构的,并且可使用任何通信协议。网络2080内的网络链路可涉及到各种数字或模拟通信介质,诸如光纤电缆、自由空间光学件、波导、导电体、无线链路、天线、射频通信等。
处理器2010可通过系统总线2020连接到计算机器2000的其它元件或本文所讨论的各种外围设备。应认识到的是,系统总线2020可在处理器2010内、处理器2010外面或两者。根据一些实施例,可将处理器2010、计算机器2000的其它元件或本文所讨论的各种外围设备中的任何一个集成为单个设备,诸如片上系统(SOC)、封装上系统(SOP)或ASIC设备。
在其中这里所讨论的系统收集关于用户的个人信息或者利用该个人信息的情况下,可为用户提供控制程序或特征是否收集用户信息(例如,关于用户的社交网络、社会行动或活动、职业、用户的偏好或用户的当前位置的信息)或控制是否和/或如何从内容服务器接收到可能与用户更加相关的内容的机会或选项。另外,某些数据在其被存储或使用之前可以被以一个或多个方式处理,使得个人可识别信息被去除。例如,可处理用户的身份,使得对于用户而言不能确定个人可识别信息,或者可将在该处获得位置信息的用户地理位置广义化(诸如到城市、ZIP代码或州层级),使得不能确定用户的特定位置。因此,用户可能可控制如何收集关于用户的信息和该信息如何被内容服务器使用。
实施例可包括体现本文描述和举例说明的功能的计算机程序,其中,在包括存储在机器可读介质中的指令和执行指令的处理器的计算机系统中实现计算机程序。然而,应显而易见的是可以有用计算机编程来实现实施例的许多不同方式,并且不应将该实施例理解成局限于任何一组计算机程序指令。此外,娴熟的程序员将能够基于所附流程图和本申请正文中的关联描述来编写此类计算机程序以实现公开实施例中的实施例。因此,不应认为特定的一组程序代码指令的公开是适当地理解如何完成和使用实施例所必需的。此外,本领域的技术人员将认识到的是可用可在一个或多个计算系统中体现的硬件、软件或其组合来执行本文所述的实施例的一个或多个方面。此外,不应将对由计算机执行动作的任何提及理解为由单个计算机执行,因为超过一个计算机可执行该动作。
可将本文所述的示例性实施例与执行本文所述的方法和处理功能的计算机硬件和软件一起使用。可以用可编程计算机、计算机可执行软件或数字电路来体现本文所述的系统、方法以及程序。可以将软件存储在计算机可读介质上。例如,计算机可读介质可以包括软盘、RAM、ROM、硬盘、可移动介质闪存、记忆棒、光学介质、磁光介质、CD-ROM等。数字电路可以包括集成电路、门阵列、砌块逻辑、线程可编程门阵列(FPGA)等。
先前提出的实施例中描述的示例系统、方法以及动作是说明性的,并且在替换实施例中,在不脱离各种实施例的精神和范围的情况下,可以将某些动作按照不同的顺序、相互并行地执行、完全省略或在不同的示例实施例之间组合,和/或可以执行某些附加动作。因此,此类替换实施例被包括于在本文中要求保护的发明中。
虽然上文详细地描述了特定实施例,但本描述仅仅是出于举例说明的目的。因此,应认识到的是上文所述的许多方面并不意图作为要求或必不可少的要素,除非另外具体地说明。在不脱离在以下权利要求中定义的实施例的精神和范围的情况下,除上文所述那些之外,还可以由受益于本公开的本领域的技术人员实现对应于示例实施例的公开方面的修改以及与之相对应的等价部件或动作,权利要求的范围应是根据最宽泛解释,从而涵盖此类修改或等价结构。

Claims (20)

1.一种用于验证进行服务请求的服务的身份的计算机实现方法,包括:
由一个或多个计算设备从商人服务系统接收应用程序代码,其中,所述应用程序代码包括使得所述一个或多个计算设备能够验证由用户所操作的计算设备进行的服务请求的识别信息;
由所述一个或多个计算设备从已从所述商人服务系统接收到的应用程序代码提取识别信息;
由所述一个或多个计算设备分发所述应用程序代码以便在由所述用户操作的所述计算设备上操作,其中,所述应用程序代码包括可被由所述用户操作的所述计算设备执行以执行服务的计算机可读指令;
由所述一个或多个计算设备从由所述用户操作的所述计算设备接收的访问请求,其中,所述访问请求包括对于访问令牌和识别信息的请求,并且其中,由所述用户操作的所述计算设备从常驻于由所述用户操作的所述计算设备上的所述应用程序代码提取所述识别信息;
由所述一个或多个计算设备产生访问令牌,其中,所述访问令牌包括从由所述用户操作的所述计算设备接收到的所述识别信息;
由所述一个或多个计算设备将所述访问令牌发射到由所述用户操作的所述计算设备;
由所述一个或多个计算设备从由所述用户操作的所述计算设备接收服务请求,其中,所述服务请求包括由所述服务经由所述一个或多个计算设备和访问令牌执行动作的请求;
由所述一个或多个计算设备通过将来自从由所述用户操作的计算设备接收到的访问令牌的识别信息与来自从所述商人服务系统接收到的应用程序代码的提取识别信息相比较来确定是允许还是拒绝所述服务请求。
2.如权利要求1所述的方法,还包括:
响应于将来自从由所述用户操作的所述计算设备接收到的所述访问令牌的所述识别信息与来自从所述商人服务系统接收到的所述应用程序代码的提取识别信息相比较,由所述一个或多个计算设备检测来自所述访问令牌的识别信息与提取的识别信息之间的匹配;以及
由所述一个或多个计算设备响应于检测到所述匹配而允许处理所述服务请求。
3.如权利要求1所述的方法,还包括:
响应于将来自从由所述用户操作的所述计算设备接收到的所述访问令牌的接收的识别信息与来自从所述商人服务系统接收到的所述应用程序代码的提取的识别信息相比较,并未由所述一个或多个计算设备检测来自所述访问令牌的识别信息与提取的识别信息之间的匹配;
由所述一个或多个计算设备响应于未检测到所述匹配而拒绝所述服务请求;以及
由所述一个或多个计算设备向由所述用户操作的所述计算设备发射错误消息,其中,所述错误消息被由所述用户操作的所述计算设备显示。
4.如权利要求1所述的方法,其中,所述识别信息是由所述一个或多个计算设备分发所述应用程序代码所需要的。
5.如权利要求1所述的方法,其中,所述识别信息包括应用标识符、包名称、以及数字签名中的一个或多个。
6.如权利要求1所述的方法,其中,所述服务包括商人服务应用、商人服务网站、或商人装运服务。
7.如权利要求1所述的方法,其中,所述服务请求包括对于由服务处理财务交易的请求、对于装运信息的请求、对于来自由所述一个或多个计算设备维护的所述用户的帐户的信息的请求、或者对于兑换要约或优惠券的请求。
8.如权利要求1所述的方法,其中,从已从所述商人服务系统接收到的所述应用程序代码提取识别信息包括:由所述一个或多个计算设备执行从所述应用程序代码对识别信息进行定位和提取的搜索算法。
9.如权利要求1所述的方法,其中,从已从所述商人服务系统接收到的所述应用程序代码提取识别信息包括:由所述一个或多个计算设备识别所述应用程序代码中的预定位置并从所述预定位置提取识别信息。
10.如权利要求1所述的方法,其中,响应于在由所述用户操作的所述计算设备上发起服务请求而激活由所述用户操作的所述计算设备上的访问请求算法,其中,所述访问请求算法从由所述用户操作的所述计算设备上的所述应用程序代码识别并提取识别信息,并将所述识别信息连同访问请求一起发射到所述一个或多个计算设备。
11.一种非临时计算机可读介质,具有在其中体现的计算机可读程序指令,所述计算机可读程序指令在被计算机执行时促使所述计算机验证进行服务请求的服务的身份,所述计算机可读程序指令包括:
用于从商人服务系统接收应用程序代码的计算机可读程序指令,其中,所述应用程序代码包括使得一个或多个计算设备能够验证由用户所操作的计算设备进行的服务请求的识别信息;
用于从由用户操作的计算设备接收访问请求的计算机可读程序指令,其中,所述访问请求包括对于访问令牌和识别信息的请求,并且其中,由所述用户操作的所述计算设备从常驻于由所述用户操作的所述计算设备上的应用程序代码提取识别信息;
用于向由所述用户操作的所述计算设备发射访问令牌的计算机可读程序指令,其中,所述访问令牌包括从由所述用户操作的所述计算设备接收到的识别信息;
用于从由所述用户操作的所述计算设备接收服务请求的计算机可读程序指令,其中,所述服务请求包括由所述服务经由所述一个或多个计算设备和所述访问令牌执行动作的请求;以及
用于通过将来自从由所述用户操作的计算设备接收到的所述访问令牌的识别信息与来自从所述商人服务系统接收到的所述应用程序代码的提取识别信息相比较来确定是允许还是拒绝所述服务请求的计算机可读程序指令。
12.如权利要求11所述的非临时计算机可读介质,还包括用于从已从所述商人服务系统接收到的所述应用程序代码提取所述识别信息的计算机可读程序指令。
13.如权利要求12所述的非临时计算机可读介质,其中,从已从所述商人服务系统接收到的所述应用程序代码提取识别信息包括:用于执行从所述应用程序代码对所述识别信息进行定位和提取的搜索算法的计算机可读程序指令。
14.如权利要求11所述的非临时计算机可读介质,还包括:
响应于将来自所述访问令牌的识别信息与来自所述应用程序代码的识别信息相比较,用于检测从由所述用户操作的所述计算设备接收到的识别信息与从所述商人服务系统接收到的识别信息之间的匹配的计算机可读程序指令;以及
响应于检测到所述匹配,用于允许处理所述服务请求的计算机可读程序指令。
15.一种用于验证进行服务请求的服务的身份的系统,所述系统包括:
存储介质;以及
处理器,所述处理器被通信耦合到所述存储介质,其中,所述处理器执行应用代码指令,所述应用代码指令被存储在所述存储介质中并促使所述系统:
从由用户操作的计算设备接收访问请求,其中,所述访问请求包括对于访问令牌和识别信息的请求,并且其中,由所述用户操作的所述计算设备从常驻于由所述用户操作的所述计算设备上的所述应用程序代码提取所述识别信息;
向由所述用户操作的所述计算设备发射所述访问令牌,其中,所述访问令牌包括从由所述用户操作的所述计算设备接收到的识别信息;
从由所述用户操作的所述计算设备接收服务请求,其中,所述服务请求包括由所述服务经由一个或多个计算设备和所述访问令牌执行动作的请求;以及
通过将从由所述用户操作的所述计算设备上的所述应用程序代码接收到的识别信息与从商人服务系统接收到的应用程序代码中的识别信息相比较来确定是允许还是拒绝所述服务请求。
16.如权利要求15所述的系统,其中,所述处理器进一步被配置成执行存储在所述存储介质中以促使所述系统从已从所述商人服务系统接收到的所述应用程序代码提取所述识别信息的计算机可执行指令。
17.如权利要求16所述的系统,其中,从已从所述商人服务系统接收到的所述应用程序代码提取识别信息包括:处理用于执行从所述应用程序代码对所述识别信息进行定位和提取的搜索算法的计算机可执行指令。
18.如权利要求16所述的系统,其中,从已从所述商人服务系统接收到的所述应用程序代码提取识别信息包括:处理用于识别所述应用程序代码中的预定位置并从所述预定位置提取所述识别信息的计算机可执行指令。
19.如权利要求15所述的系统,其中,所述处理器进一步被配置成执行存储在所述存储介质中的计算机可执行指令以促使所述系统:
响应于将来自从由所述用户操作的所述计算设备接收到的访问令牌的接收的识别信息与来自从所述商人服务系统接收到的所述应用程序代码的识别信息相比较,检测到从由所述用户操作的所述计算设备接收到的识别信息与所提取的识别信息之间的匹配;以及
响应于检测到所述匹配而允许处理所述服务请求。
20.如权利要求15所述的系统,其中,所述处理器进一步被配置成执行存储在所述存储介质中的计算机可执行指令以促使所述系统:
响应于将来自从由所述用户操作的所述计算设备接收到的访问令牌的接收的识别信息与来自从所述商人服务系统接收到的所述应用程序代码的识别信息相比较,未检测到从由所述用户操作的所述计算设备接收到的识别信息与所提取的识别信息之间的匹配;
响应于未检测到所述匹配而拒绝所述服务请求;以及
向由所述用户操作的所述计算设备发射错误消息,其中,所述错误消息被由所述用户操作的所述计算设备显示。
CN201480057454.0A 2013-09-19 2014-09-19 用于验证进行服务请求的服务的身份的方法和系统 Active CN105659241B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811196157.0A CN109598116B (zh) 2013-09-19 2014-09-19 用于验证进行服务请求的服务的身份的方法和系统

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/032,193 2013-09-19
US14/032,193 US9531718B2 (en) 2013-09-19 2013-09-19 Confirming the identity of integrator applications
PCT/US2014/056596 WO2015042427A1 (en) 2013-09-19 2014-09-19 Confirming the identity of integrator applications

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201811196157.0A Division CN109598116B (zh) 2013-09-19 2014-09-19 用于验证进行服务请求的服务的身份的方法和系统

Publications (2)

Publication Number Publication Date
CN105659241A CN105659241A (zh) 2016-06-08
CN105659241B true CN105659241B (zh) 2018-11-13

Family

ID=52669270

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201811196157.0A Active CN109598116B (zh) 2013-09-19 2014-09-19 用于验证进行服务请求的服务的身份的方法和系统
CN201480057454.0A Active CN105659241B (zh) 2013-09-19 2014-09-19 用于验证进行服务请求的服务的身份的方法和系统

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201811196157.0A Active CN109598116B (zh) 2013-09-19 2014-09-19 用于验证进行服务请求的服务的身份的方法和系统

Country Status (5)

Country Link
US (4) US9531718B2 (zh)
EP (3) EP3859570A1 (zh)
KR (2) KR101794902B1 (zh)
CN (2) CN109598116B (zh)
WO (1) WO2015042427A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9531718B2 (en) * 2013-09-19 2016-12-27 Google Inc. Confirming the identity of integrator applications
US10902423B2 (en) * 2014-09-29 2021-01-26 Mastercard International Incorporated Method and apparatus for streamlined digital wallet transactions
US20170109436A1 (en) * 2015-10-16 2017-04-20 Arris Enterprises, Inc. Apparatus and method for providing alerts for network device errors and for resolving network device errors
US10764294B1 (en) * 2016-03-10 2020-09-01 Amazon Technologies, Inc. Data exfiltration control
CA3021357A1 (en) * 2016-06-24 2017-12-28 Visa International Service Association Unique token authentication cryptogram
US11062304B2 (en) * 2016-10-20 2021-07-13 Google Llc Offline user identification
US10833786B2 (en) * 2017-04-10 2020-11-10 Google Llc Mobile service requests to any sound emitting device
CN108366132B (zh) * 2018-03-13 2021-01-08 平安普惠企业管理有限公司 服务器间的服务管理方法、装置、计算机设备和存储介质
EP3648429A1 (en) 2018-10-29 2020-05-06 Siemens Aktiengesellschaft Method and system for providing access to data stored in a security data zone of a cloud platform
EP3702947B1 (en) * 2019-03-01 2021-10-20 Siemens Aktiengesellschaft Method for verifying at runtime of a hardware-application component a current configuration setting of an execution environment provided by a configurable hardware module
CN111986000A (zh) * 2020-08-21 2020-11-24 李亮 一种全景购物平台的构建方法及系统
CN112069490B (zh) * 2020-08-27 2023-08-15 北京百度网讯科技有限公司 一种提供小程序能力的方法、装置、电子设备及存储介质
CN112235428B (zh) * 2020-12-16 2021-03-30 太平金融科技服务(上海)有限公司 调用请求处理方法、装置、计算机设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6760841B1 (en) * 2000-05-01 2004-07-06 Xtec, Incorporated Methods and apparatus for securely conducting and authenticating transactions over unsecured communication channels
CN101242323A (zh) * 2007-02-06 2008-08-13 华为技术有限公司 设备间管道的建立方法和家庭网络系统
CN102017572A (zh) * 2008-04-25 2011-04-13 诺基亚公司 用于提供单一服务签入的方法、设备和计算机程序产品
CN102143235A (zh) * 2011-04-12 2011-08-03 张�林 对触摸屏终端提供远程服务的方法及系统
CN103067169A (zh) * 2011-12-01 2013-04-24 微软公司 应用许可认证
CN103339636A (zh) * 2011-02-03 2013-10-02 株式会社理光 创建用于认证应用的签名

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7295997B2 (en) 2000-06-19 2007-11-13 United States Of America Postal Service Method for shipping a package privately to a customer
US8793758B2 (en) * 2009-01-28 2014-07-29 Headwater Partners I Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US20110202989A1 (en) * 2010-02-18 2011-08-18 Nokia Corporation Method and apparatus for providing authentication session sharing
US8898759B2 (en) * 2010-08-24 2014-11-25 Verizon Patent And Licensing Inc. Application registration, authorization, and verification
US8868915B2 (en) * 2010-12-06 2014-10-21 Verizon Patent And Licensing Inc. Secure authentication for client application access to protected resources
US20120173431A1 (en) * 2010-12-30 2012-07-05 First Data Corporation Systems and methods for using a token as a payment in a transaction
US20120191556A1 (en) * 2011-01-21 2012-07-26 American Express Travel Related Services Company, Inc. Systems and methods for virtual mobile transaction
US10089606B2 (en) 2011-02-11 2018-10-02 Bytemark, Inc. System and method for trusted mobile device payment
WO2012135748A2 (en) * 2011-03-31 2012-10-04 Google Inc. Integrated mobile/server applications
KR101460182B1 (ko) * 2011-12-01 2014-11-20 에스케이씨앤씨 주식회사 안전한 모바일 지갑 거래 방법 및 시스템
US9075975B2 (en) 2012-02-21 2015-07-07 Andrew Bud Online pseudonym verification and identity validation
WO2014036021A1 (en) * 2012-08-28 2014-03-06 Visa International Service Association Secure device service enrollment
US8769651B2 (en) * 2012-09-19 2014-07-01 Secureauth Corporation Mobile multifactor single-sign-on authentication
KR101740256B1 (ko) * 2012-11-26 2017-06-09 한국전자통신연구원 모바일 앱 무결성 보증 장치 및 방법
US9531718B2 (en) 2013-09-19 2016-12-27 Google Inc. Confirming the identity of integrator applications

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6760841B1 (en) * 2000-05-01 2004-07-06 Xtec, Incorporated Methods and apparatus for securely conducting and authenticating transactions over unsecured communication channels
CN101242323A (zh) * 2007-02-06 2008-08-13 华为技术有限公司 设备间管道的建立方法和家庭网络系统
CN102017572A (zh) * 2008-04-25 2011-04-13 诺基亚公司 用于提供单一服务签入的方法、设备和计算机程序产品
CN103339636A (zh) * 2011-02-03 2013-10-02 株式会社理光 创建用于认证应用的签名
CN102143235A (zh) * 2011-04-12 2011-08-03 张�林 对触摸屏终端提供远程服务的方法及系统
CN103067169A (zh) * 2011-12-01 2013-04-24 微软公司 应用许可认证

Also Published As

Publication number Publication date
KR20160060090A (ko) 2016-05-27
KR101794902B1 (ko) 2017-11-09
US20150082407A1 (en) 2015-03-19
CN109598116B (zh) 2020-06-26
US9852283B2 (en) 2017-12-26
US10445491B2 (en) 2019-10-15
EP3047418A1 (en) 2016-07-27
KR101882930B1 (ko) 2018-07-30
KR20170125132A (ko) 2017-11-13
EP3047418A4 (en) 2017-05-03
US20180096131A1 (en) 2018-04-05
EP3859570A1 (en) 2021-08-04
EP3047418B1 (en) 2019-11-06
US20170061118A1 (en) 2017-03-02
WO2015042427A1 (en) 2015-03-26
CN109598116A (zh) 2019-04-09
EP3617919B1 (en) 2021-04-07
US9531718B2 (en) 2016-12-27
EP3617919A1 (en) 2020-03-04
CN105659241A (zh) 2016-06-08
US20200042693A1 (en) 2020-02-06

Similar Documents

Publication Publication Date Title
CN105659241B (zh) 用于验证进行服务请求的服务的身份的方法和系统
US20210035147A1 (en) Loyalty Account Identification
US10621570B2 (en) Processing payments for an online marketplace
KR102273818B1 (ko) 오프라인 사용자 식별
CN104662571B (zh) 管理与电子钱包账户相关联的装置
CN108140185A (zh) 无线信号转发
US20130197968A1 (en) Behavioral fingerprinting with retail monitoring
JP6647800B2 (ja) アプリケーションのマーケティングチャネルを追跡する方法およびシステム
CN106465126A (zh) 验证网络信标与用户计算设备之间的安全连接
CN108369701A (zh) 基于接近的网络安全
US10616003B2 (en) Methods and systems for service interworking between servers using different user identification systems
KR20150021312A (ko) 보안이 강화된 모바일카드 함께쓰기 서비스 방법 및 시스템
CN110494879A (zh) 音频上的对称发现
JP2021502640A (ja) 収集可能アイコンアニメーションを表示するグラフィカルユーザインターフェース
CN109074589A (zh) 对电子钱包的通用访问
CN105659523A (zh) 能够重新编程的安全密码设备
KR20180122153A (ko) 마일리지 안내를 제공하는 쇼핑몰 서비스 제공 장치, 이를 포함하는 쇼핑몰 서비스 제공 시스템 및 마일리지 안내 서비스 제공 방법, 그리고 컴퓨터 프로그램이 기록된 기록매체
KR20210061886A (ko) 위치 정보에 기초하여 추천된 결제 애플리케이션을 이용한 결제 처리를 요청하는 방법 및 시스템
US20190354960A1 (en) Managing user membership accounts
US20170109737A1 (en) Method for supporting payment service using integrated code, and system and apparatus therefor
KR20200086930A (ko) 보안 결제 장치 및 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: American California

Applicant after: Google limited liability company

Address before: American California

Applicant before: Google Inc.

GR01 Patent grant
GR01 Patent grant