安全离线支付系统的制作方法

文档序号:11890805阅读:257来源:国知局
安全离线支付系统的制作方法与工艺

本申请要求2014年3月26日提交的标题为“Secure Offline Payment System”的美国专利申请第14/226,785号的优先权和2014年3月26日提交的标题为“Reserving Account Balance For Concurrent Payments In Secure Offline Payment System”的美国专利申请第14/226,798号的优先权。上述优先权申请的全部内容以引用的方式全部并入本文。

技术领域

本公开一般地涉及一种支付系统,并且更具体地涉及允许用户在离线和没有网络接入的情况下执行支付交易的方法和系统。



背景技术:

近距离通信技术具有一米或者一米以下的有限范围并且可以支持商家装置支付技术。短通信距离使得能够在支持近距离通信的装置之间进行客户识别和安全通信。这种近距离通信技术包括:近场通信(NFC)、无线射频识别(RFID)、或者蓝牙低功耗(BLE)。在NFC交易的操作中,用户针对读取器“轻击”装置,诸如,支持NFC的移动电话或者支持NFC的智能卡。当支持NFC的装置在读取器的范围内移动时,读取器识别该装置,与该装置建立安全通信信道,并且在读取器与该装置之间发起支付交易。在BLE交易的操作中,用户使装置(诸如,支持BLE的移动电话)进入另一个支持BLE的装置(诸如,另一个支持BLE的移动电话)附近。BLE装置检测到这两个装置在彼此附近并且它们可以建立安全通信信道以发起支付交易。

在涉及数据或者信息交换的交易中(例如,在金融交易中)可以利用移动通信装置。传统上,用于金融交易中的移动通信装置链接至金融账户或者包含金融账户信息。因此,当使用移动通信装置时,读取器从金融账户接收金融账户信息并且进行借记交易,需要网络接入来处理在线交易。这种支持常见移动通信装置的金融交易在对网络或者网络上的具体计算机的接入不可用时不可操作。



技术实现要素:

在本文描述的特定示例方面中,用于提供安全离线支付的方法包括:用户装置,该用户装置请求将资金存到由账户管理系统维护的用户账户中和/或请求最新余额证书。该请求可以包括:对在用户的账户中将特定资金进行锁定以防止重复付款的请求。用户装置请求还可以包括:资金被锁定的持续时间和/或特定资金仅在特定位置处可用的请求。随后,当解锁资金被使用、余额证书到期和/或用户请求解除锁定时,将锁定解除。账户管理系统访问用户账户管理系统账户,确定可用的解锁资金,创建余额证书并且对余额证书签名,并且将已签名的余额证书传输至用户装置。

为了完成离线支付交易,用户装置和商家装置建立通信信道。商家装置将支付请求传输至用户装置,并且用户装置针对支付金额生成已签名的取款记录。将已签名的取款记录和已签名的余额证书传输至商家装置,其中,商家装置验证已签名的取款记录以对用户装置的身份进行确认并且验证已签名的余额以对用于完成离线支付交易的资金的可用性进行确认。商家装置对取款记录签名,将取款记录传输至用户装置,并且保存取款记录直到商家装置具有网络接入。当商家装置具有网络接入时,商家装置将已签名的取款证书传输至账户管理系统。账户管理系统验证取款记录并且将取款记录记录在用户账户管理系统账户中。当用户装置请求新的余额证书时,用户装置将已签名的取款记录传输至账户管理系统,并且账户管理系统验证账户余额并且创建新的余额证书。

在本文描述的特定其它示例方面中,提供了一种用于提供安全离线支付的计算机程序产品和系统。

对于本领域的普通技术人员而言,示例实施例的这些和其它方面、目的、特征、和优点将在考虑以下对图示的示例实施例的详细说明时变得显而易见。

附图说明

图1是描绘了根据特定示例实施例的离线支付系统的框图。

图2是描绘了根据特定示例实施例的用于处理离线支付交易的方法的流程框图。

图3是描绘了根据特定示例实施例的用于从账户管理系统接收最新余额证书的方法的流程框图。

图4是描绘了根据特定示例实施例的用于将已签名的余额证书提供至用户装置的方法的流程框图。

图5是描绘了根据特定示例实施例的用于计算用户账户中的可用资金的余额的方法的流程框图。

图6是描绘了根据特定示例实施例的用于处理从商家装置接收的支付请求的方法的流程框图。

图7是描绘了根据特定示例实施例的用于验证用户装置对支付请求的响应的方法的流程框图。

图8是描绘了根据特定示例实施例的用于验证取款记录的方法的流程框图。

图9是描绘了根据特定示例实施例的计算机机器和模块的框图。

具体实施方式

概述

本文描述的示例实施例提供了用于安全地处理离线支付的计算机实现的技术。在示例实施例中,用户启动应用并且授权用户装置将执行离线支付交易的请求传送至账户管理系统。在示例实施例中,用户装置与账户管理系统建立通信信道并且请求将资金存到由账户管理系统维护的用户账户中和/或请求最新余额证书。账户管理系统访问用户账户管理系统账户并且创建余额证书。在示例实施例中,余额证书在时间上有限制(例如,在预定义量的时间已经过去之后,余额证书到期)、在其中可以使用余额证书的支付交易的次数上有限制(例如,在被用于离线支付交易之后,余额证书到期)、受可用于单笔离线支付交易的资金金额的限制(例如,余额证书可以用于在X美元内的离线支付交易)、和/或受位置限制(例如,余额证书仅可以在餐厅或者在位置Z处用于离线支付交易)。账户管理系统利用余额证书私钥对余额证书签名并且将该余额证书传输至用户装置。

在示例实施例中,只有在用户账户管理系统账户中选定部分的资金可用于每笔离线支付交易,并且将剩余的资金进行锁定以防止重复付款。在示例实施例中,用户确定锁定资金的金额和持续时间。例如,用户在对余额证书的请求中提交将特定资金进行锁定的请求。在另一示例实施例中,账户管理系统确定锁定资金的金额和持续时间。在又一示例中,账户管理系统和用户确定锁定资金的金额和持续时间。在示例实施例中,用户请求特定资金仅在特定位置处可用(例如,用户只希望针对公共交通、在餐厅处、或者在城市X中使用资金)。在示例实施例中,当解锁资金被使用、余额证书到期和/或用户请求解除锁定时,将所请求的锁定解除。

用户指示完成与商家或者其它交易方的离线交易的愿望。在示例实施例中,用户在商家装置的预定义距离内“轻击”用户装置,并且装置建立通信信道。例如,装置经由近场通信(NFC)、蓝牙、或者短距离通信信道通信。商家装置将支付请求传输至用户装置,并且用户装置针对在从商家装置接收的支付请求上指示的金额生成取款记录。在示例实施例中,用户装置利用账户证书私钥对取款记录签名并且将已签名的取款记录和已签名的余额证书传输至商家装置。

商家装置使用账户证书公钥验证已签名的取款记录以对用户装置的身份进行确认。商家装置还使用余额证书公钥来验证已签名的余额证书以对余额证书未到期进行确认并且对用于完成离线支付交易的资金的可用性进行确认。在示例实施例中,商家装置使用商家装置签名证书对取款记录签名,将该取款记录传输至用户装置,并且保存该取款记录直到商家装置具有网络接入。在另一示例实施例中,商家装置将状态代码或者消息传输至用户装置,该状态代码或者消息指示交易成功。当商家装置具有网络接入时,商家装置将已签名的取款证书传输至账户管理系统。在示例实施例中,账户管理系统使用商家装置签名证书公钥来验证取款记录并且将该取款记录记录在用户账户管理系统账户中。当用户装置请求新的余额证书时,用户装置将已签名的取款记录传输至账户管理系统,并且该账户管理系统验证账户余额并且创建新的余额证书。

各种示例实施例将在以下描述中更详细地解释,该以下描述将结合图示了程序流程的附图进行阅读。

示例系统架构

现在参照附图,在附图中,类似的附图标记始终指示类似的(但并不一定需要完全相同的)元素,对示例实施例进行详细描述。

图1是描绘了根据特定示例实施例的离线支付系统100的框图。如图1所描绘,示例性操作环境100包括:被配置为经由一个或者多个网络140与彼此通信的商家计算装置120、用户计算装置110、和账户管理计算系统130。在一些实施例中,与装置相关联的用户必须安装应用和/或进行特征选择以获得本文描述的技术的益处。

在示例实施例中,用户装置110和商家装置120被配置为在没有网络140连接的情况下直接地通信并且交换信息。在示例实施例中,装置(包括装置120和110)经由近距离通信技术通信。例如,经由近场通信信道、蓝牙通信、蓝牙低功率(BLE)通信、标准化射频、红外、声音(例如,可听见的声音、旋律、和超声)的形式、其它短距离通信信道、或者促进信号、数据和/或消息(通常被称为数据)的通信的系统。贯穿本说明书,应该了解,术语“数据”和“信息”在本文中可互换使用,指的是:文本、图像、音频、视频、或者可以在基于计算机的环境中存在的任何其它形式的信息。

在另一示例实施例中,将这些系统/装置(包括系统/装置110、120和130)中的两个或者更多个集成到相同的系统或者装置中。在一些实施例中,与装置相关联的用户必须安装应用和/或进行特征选择以获得本文描述的技术的益处。

每个网络140包括有线或者无线电信装置,通过该有线或者无线电信装置,网络系统/装置(包括系统/装置110、120和130)可以通信并且交换数据。例如,可以将每个网络140实施为存储区域网络(SAN)、个人区域网络(PAN)、城域网(MAN)、局域网(LAN)、广域网(WAN)、无线局域网(WLAN)、虚拟专用网络(VPN)、内联网、互联网、移动电话网络、卡网络、或者它们的任何组合、或者任何其它适合的架构,或者可以是它们的一部分。

在示例实施例中,每个网络计算系统110、120、130包括具有能够通过网络140传输并且接收数据的通信模块的装置。例如,每个网络系统/装置(包括系统/装置110、120和130)可以包括服务器、个人计算机、移动装置(例如,笔记本计算机、平板计算机、笔记本计算机、个人数字助理(PDA)、视频游戏装置、GPS定位装置、蜂窝电话、智能电话、或者其它移动装置)、嵌入和/或耦合有一个或者多个处理器的电视、或者包括或者耦合至web浏览器或者用于经由网络140通信的其它应用的其它适合的技术。在图1描绘的示例实施例中,网络系统/装置(包括系统/装置110、120和130)由商家、用户、和账户管理系统操作者分别地操作。

在示例实施例中,商家装置120可以指的是可以经由在装置120与另一个装置(诸如,用户装置110)之间的电子、磁、或者射频场通信的智能通信装置。在示例实施例中,商家装置120具有处理能力,诸如,存储能力/存储器和可以执行特定功能的一个或者多个应用125。在示例实施例中,商家装置120包含操作系统(未图示)和用户界面121。示例商家装置120智能电话、移动电话、个人数字助理(PDA)、移动计算装置(例如,笔记本计算机、平板计算机、和iPad)、膝上型计算机、可穿戴计算装置(例如,手表、戒指、或者眼镜)、和其它装置,无论在哪种情况下都具有处理和用户界面功能。

在示例实施例中,控制器126是蓝牙链路控制器。蓝牙链路控制器126可能能够发送并且接收数据,识别用户装置110,执行认证和加密功能,并且指导商家装置120如何监听来自用户装置110的传输或者根据蓝牙指定的程序将商家装置120配置成各种省电模式。在另一示例实施例中,控制器126是WiFi控制器或者能够执行类似功能的NFC控制器。

应用125是程序、功能、例程、小程序或者在商家装置120上存在并且在商家装置120上执行其操作的类似实体。例如,应用125可以是以下中的一个或多个:离线支付应用、数字钱包应用、优惠券应用、积分卡应用、另一种增值应用、用户界面应用、或者在商家装置120上操作的其它合适的应用。另外,商家装置120可以包括安全元件(未图示),该安全元件可以存在于可移除的智能芯片或者安全数字(SD)卡内或者可以嵌入在装置120上的固定芯片内。在特定示例实施例中,订户身份模块(SIM)卡可能能够托管安全元件,例如,NFCSIM卡。安全元件在保护存储在安全元件内的信息的同时允许驻留在装置120上并且可由装置用户访问的软件应用125与在安全元件内的特定功能安全地交互。安全元件可以包括在其上运行的执行本文描述的功能的一个或者多个应用125。

示例商家装置120包括一个或者多个密钥和/或证书。在示例实施例中,商家装置120响应于支付请求而验证从用户装置110接收的取款记录。用户装置110使用账户证书112对取款记录签名并且商家装置使用账户证书公钥112s来验证该记录以对用户装置110的身份进行确认。在另一示例实施例中,商家装置110响应于支付请求而验证从用户装置110接收的余额证书113。商家装置120使用余额证书公钥113a来验证余额证书113以对余额证书113a未到期进行确认并且对用于完成离线支付交易的资金的可用性进行确认。在示例实施例中,商家装置120使用商家装置签名证书124对取款记录签名并且将已签名的取款记录传输至用户装置110。两个装置(110和120)保存已签名的取款记录,装置(110和120)具有网络140接入并且可以将该记录传输至账户管理系统130。

在示例实施例中,数据存储单元129可以实施在安全元件或者在商家装置120上的其它安全存储器(未示出)中,或者可以是驻留在商家装置120上的单独的存储器单元。示例数据存储单元129能够存储已签名的取款记录直到商家装置120具有网络140接入并且可以将已签名的取款记录传送至账户管理系统130。在示例实施例中,数据存储单元129可以包括适合存储信息的商家装置120可访问的任何本地或者远程数据存储结构。在示例实施例中,数据存储单元129存储加密的信息,诸如,HTML5本地存储。

根据示例实施例,商家装置120可以经由有线连接而连接至网络140。例如,该连接可以是有线通用串行总线(USB)或者以太网连接。在另一示例实施例中,商家装置120可以经由无线连接而连接至网络。例如,该连接可以是与具有有线/无线互联网连接(例如,MiFi)的热点的Wi-Fi连接或者蓝牙连接,或者适合与网络140传送信号的任何其它有线或者无线连接。在另一示例实施例中,该连接可以是蜂窝网络连接。

在示例实施例中,商家装置120用作销售点(POS)终端并且能够处理由用户装置110的用户发起的购买交易。在示例实施例中,用户从商家装置120请求购买。商家装置120从用户装置110接收或者读取支付账户信息。在示例实施例中,购买是由用户装置110与商家装置120的无线“轻击”发起的。

商家装置120经由天线127与用户装置110通信。在示例实施例中,一旦已经激活并且优先化了商家装置应用125,则通知控制器126商家装置120已经准备好进行交易的状态。控制器126通过天线127输出无线电信号,或者监听来自用户装置110的无线电信号。在商家装置120与用户装置110之间建立安全通信信道上,商家装置120可以请求可从用户装置110获取的应用115的列表。首先显示目录,在显示目录之后,基于设置的优先级或者用户装置110的类型,选择应用115并且发起交易。

示例用户装置110可以指的是可以经由在用户装置110与另一个装置(诸如,使用天线117的商家装置120)之间的电子、磁、或者射频场通信的智能通信装置。在示例实施例中,用户装置110具有处理能力,诸如,存储能力/存储器和可以执行特定功能的一个或者多个应用115。在示例实施例中,用户装置110包含操作系统(未图示)和用户界面111。示例用户装置110包括智能电话、移动电话、个人数字助理(PDA)、移动计算装置(例如,笔记本计算机、平板计算机、和iPad)、膝上型计算机、可穿戴计算装置(例如,手表、戒指、或者眼镜)、和其它装置,无论在哪种情况下都具有处理和用户界面功能。

用户可以使用用户装置110经由用户界面111和应用115来执行离线支付交易。应用115是程序、功能、例程、小程序、或者在用户装置110上存在并且在用户装置110上执行其操作的类似实体。例如,应用115可以是以下中的一个或多个:购物应用、商家装置120应用、支付应用、数字钱包应用、积分卡应用、另一种增值应用、用户界面111应用、或者在用户装置110上操作的其它适合的应用。在一些实施例中,用户必须安装应用115和/或在用户装置110上进行特征选择以获得本文描述的技术的益处。另外,用户装置110可以包括安全元件(未图示),该安全元件可以存在于可移除的智能芯片或者安全数字(SD)卡内,该安全元件可以嵌入在装置110上的固定的芯片内,或者实现为安全增强型操作系统的安全隔室。在特定示例实施例中,订户身份模块(SIM)卡可能能够托管安全元件,例如,NFC SIM卡。安全元件在保护存储在安全元件内的信息的同时允许驻留在装置110上并且可由装置用户访问的软件应用115与在安全元件内的特定功能安全地交互。安全元件可以包括在其上运行的执行本文描述的功能的一个或者多个应用115。

在示例实施例中,控制器116是蓝牙链路控制器。蓝牙链路控制器116可能能够发送并且接收数据,识别商家装置120,执行认证和加密功能,并且指导用户装置110如何监听来自商家装置的传输或者根据蓝牙指定的程序将用户装置110配置成各种省电模式。在另一示例实施例中,控制器116是WiFi控制器或者能够执行类似功能的NFC控制器。

示例用户装置110包括一个或者多个密钥和/或证书。在示例实施例中,用户装置110针对在从商家装置120接收的支付请求上指示的金额生成取款记录。用户装置110利用账户证书私钥112对取款记录签名并且将已签名的取款记录和余额证书113传输至商家装置120。

在示例实施例中,数据存储单元119可以实施在安全元件或者在用户装置110上的其它安全存储器(未示出)中,或者可以是驻留在用户装置110上的单独的存储器单元。示例数据存储单元119能够存储已签名的取款记录直到用户装置110具有网络140接入并且可以将已签名的取款记录传送至账户管理系统130。在示例实施例中,数据存储单元119可以包括适合存储信息的用户装置110可访问的任何本地或者远程数据存储结构。在示例实施例中,数据存储单元119存储加密的信息,诸如,HTML5本地存储。

根据示例实施例,用户装置110可以经由有线连接而连接至网络140。例如,该连接可以是有线通用串行总线(USB)或者以太网连接。在另一示例实施例中,用户装置110可以经由无线连接而连接至网络。例如,该连接可以是与具有有线/无线互联网连接(例如,MiFi)的热点的Wi-Fi连接或者蓝牙连接,或者适合与网络140传送信号的任何其它有线或者无线连接。在另一示例实施例中,该连接可以是蜂窝网络连接。

示例用户装置110和商家装置120与账户管理系统130通信。示例账户管理系统130包括账户管理模块131和数据存储单元137。示例账户管理模块131维护用户的账户。在示例实施例中,账户包括由一个或多个金融机构维护的一个或多个金融账户的信息。在示例实施例中,金融账户信息被保存在数据存储单元137中。

在示例实施例中,账户管理系统130使用用户账户管理系统130账户存储用户的金融交易。例如,在数据存储单元137中针对每个账户的每笔资金存款和每笔资金取款。在示例实施例中,账户管理系统130分析交易历史以识别缺失的数据或者可能存在的错误。

示例账户管理系统130包括一个或者多个密钥和/或证书。在示例实施例中,账户管理系统130包括账户证书公钥112a并且可以使用账户证书公钥112a来验证用户装置110和/或用户账户管理系统130账户的身份。在示例实施例中,账户管理系统130访问用户账户管理系统130账户并且创建余额证书113。账户管理系统130利用余额证书私钥113对余额证书113签名并且将该余额证书113传输至用户装置110。在示例实施例中,商家装置120包括余额证书公钥113a并且确认余额证书113由账户管理系统130签名作为验证过程的一部分。在示例实施例中,账户管理系统130还包括商家装置签名证书公钥124a。账户管理系统130使用商家装置签名证书公钥124a来验证由商家装置签名证书124签名的取款记录以对商家装置120的身份进行确认。

在示例实施例中,账户管理系统130访问用户账户管理系统130账户并且将已签名的取款记录保存在数据存储单元137中。数据存储单元137可以包括适合存储信息的账户管理系统130可访问的任何本地或者远程数据存储结构。在示例实施例中,数据存储单元137存储加密的信息,诸如,HTML5本地存储。

在下文参照图2至图8图示的示例方法对示例操作环境100的部件进行了描述。图2至图8的示例方法还可以利用其它系统或者在其它环境中执行。

示例系统过程

图2是描绘了根据特定示例实施例的用于处理离线支付交易的方法200的流程框图。参照图1图示的部件对方法200进行描述。

在框210中,用户在用户装置110上启动应用115和/或指示出执行离线金融交易的愿望。在示例实施例中,用户启动应用115以允许用户装置110与账户管理系统130通信并且允许用户装置110执行与商家装置120的离线支付交易。

在框220中,用户装置110从账户管理系统130接收最新余额证书。在下文中参照图3描述的方法对用于从账户管理系统130接收最新余额证书的方法220进行更详细地描述。

图3是描绘了根据特定示例实施例的用于从账户管理系统130接收最新余额证书的方法220的流程框图,如参照框220。参照图1图示的部件对方法220进行描述。

在框310中,用户装置110从账户管理系统130请求最新余额证书113。在示例实施例中,该请求包括将资金存入用户账户管理系统130账户的授权。在示例实施例中,用户通过授权将资金从金融账户转移到用户账户管理系统130账户来授权该存款。在另一示例实施例中,用户装置110请求将可用资金进行锁定。在又一示例实施例中,用户装置110请求将可用资金进行解锁。在示例实施例中,在用户装置110与账户管理系统130之间的任何通信期间请求最新余额证书113。

在框320中,用户装置120接收该请求并且确定用户装置120是否具有网络140接入。在示例实施例中,要求网络140接入与账户管理系统130通信。在示例实施例中,用户装置120通过尝试与账户管理系统130建立通信信道来确定是否存在网络140接入。

如果用户装置120不具有网络140接入,那么方法220进入框325。在框325中,用户装置120在装置120具有网络140接入时重新尝试与账户管理系统130建立通信信道。

回到图3中的框320,如果用户装置120具有网络140接入,那么方法220进入框330。在框330中,用户装置120与账户管理系统130建立通信信道。在示例实施例中,经由网络140建立通信信道。

在框340中,账户管理系统130确定用户是否具有由账户管理系统130维护或者账户管理系统130可访问的账户。在示例实施例中,账户管理系统130接收用户已经启动在用户装置110上的应用115的通知并且确定用户是否具有账户管理系统130账户。在示例实施例中,当启动应用115时,提示用户登录或者创建账户管理系统130账户。在另一示例实施例中,用户之前登录了账户管理系统130账户并且否则自动地登录账户。在又一示例实施例中,用户的登录凭证在其它账户(例如,社交网络网站和用户装置120账户)之间共享,并且用户使用共享的登录凭证自动地登录账户管理系统130账户。

如果用户不具有账户管理系统130账户,那么方法220进入图3中的框345。在框345中,提示用户创建账户管理系统130账户。在示例实施例中,当用户启动应用115时,提示用户向账户管理系统130注册。在另一示例实施例中,用户可以在启动应用115之前或者之后或者在启动应用115的同时的任何时间创建账户管理系统130账户。在示例实施例中,用户经由应用115和网络140访问账户管理系统130。在示例实施例中,用户将注册信息提交至账户管理系统130,该注册信息包括但不限于,一个或者多个已注册的金融卡账户的名称、地址、电话号码、电子邮件地址、和信息,该金融卡账户包括银行账户借记卡、信用卡、积分奖励账户卡、或者可以用于购物的其它类型的账户(例如,卡类型、卡号、有效期限、安全代码、和账单地址)。在示例实施例中,将用户账户管理系统130账户信息保存在数据存储单元137中并且可由账户管理模块131访问。在示例实施例中,账户管理系统130账户是由账户管理系统130或者第三方系统维护的数字钱包账户。在另一示例实施例中,用户可以使用网站来向账户管理系统130注册。

在另一示例实施例中,用户不需要登录或者注册账户管理系统130账户。在该实施例中,针对“访客”用户,执行本文描述的方法。

在框350中,账户管理系统130创建账户证书。在示例实施例中,账户证书112包括与用户账户管理系统130账户对应的用户和/或用户装置110的身份。账户证书112由账户装置110和/或账户管理系统130维护。在示例实施例中,账户证书112用作响应于从商家装置120接收的离线支付请求而对由用户装置110创建的取款记录签名。

在示例实施例中,账户证书112包括账户证书公钥112a。账户证书公钥112a用作验证由账户证书112签名的取款记录的真实性。在示例实施例中,账户证书公钥112a由商家装置120和/或账户管理系统130维护。在示例实施例中,当商家装置120注册时或者在其后的任何时间,由账户管理系统130将账户证书公钥112a传输至商家装置120。

在框355中,账户管理系统130将账户证书112传输至用户装置110。在示例实施例中,在用户装置110与账户管理系统130之间的任何通信由账户证书112签名。在本实施例中,账户管理系统130通过读取签名来识别用户账户管理系统130账户。

在框360中,用户装置110接收账户证书112。

在框370中,账户管理系统130确定对最新余额证书113的请求是否包括针对将资金存入用户账户管理系统130账户的授权。在示例实施例中,用户通过授权将资金从金融账户转移到用户账户管理系统130账户来授权该存款。在示例实施例中,用户使用用户装置110来执行该授权。例如,用户访问应用115以请求将资金存入。在另一示例实施例中,用户使用另一个计算装置或者可以与账户管理系统130通信的第三方系统来执行该授权。在该示例实施例中,用户装置120将在装置120具有网络接入时请求最新余额证书。

如果对最新余额证书113的请求包括对存入的资金的请求,那么方法220进入图3中的框380。在框380中,账户管理系统130对将资金存入到用户的账户中进行处理。在示例实施例中,将资金从金融账户电子地转移到用户账户管理系统130账户中。

方法220然后进入图3中的框390。

回到图3中的框370,如果对最新余额证书113的请求不包括对存入的资金的请求,那么方法220进入图3中的框390。在框390中,账户管理系统130将已签名的余额证书113提供至用户装置110。在下文中参照图4描述的方法对用于将已签名的余额证书113提供至用户装置110的方法390进行更详细地描述。

图4是描绘了根据特定示例实施例的用于将已签名的余额证书113提供至用户装置110的方法390的流程框图,如参照框390。参照图1图示的部件对方法390进行描述。

在框410中,账户管理系统130确定对最新余额证书113的请求是否包括取款记录。在示例实施例中,用户装置110利用对最新余额证书113的请求将一个或者多个取款记录传输至账户管理系统130。在示例实施例中,用户装置110将所有的取款记录传输至账户管理系统。在本实施例中,用户装置110确定尚未发送哪些取款记录并且将这些记录传输至账户管理系统130。在示例实施例中,每个取款记录包括对与商家装置120进行的离线支付交易的识别。账户管理系统130将每个取款记录保存在用户账户管理系统130账户中并且使用该记录来确定可用的资金余额。

如果对最新余额证书113的请求包括取款记录,那么方法390进入图4中的框420。在框420中,账户管理系统130验证该取款记录。在示例实施例中,每个取款记录在离线支付交易期间由商家装置120签名。在示例实施例中,商家装置120使用商家装置签名证书124对取款记录签名。在示例实施例中,取款记录由商家装置签名证书124签名以认证该记录。在本实施例中,账户管理系统130可以使用商家装置签名证书公钥124a来验证取款记录。在示例实施例中,已签名的取款记录验证在用户装置110与商家装置120之间发生离线支付交易。

如果取款记录未通过验证,那么方法390进入图4中的框430。在框430中,拒绝交易并且账户管理系统130向用户装置120传输通知。

参照图4中的框420,如果取款记录通过了验证,那么方法390进入图4中的框440。在框440中,账户管理系统130将取款记录记录在用户账户管理系统130账户中。在示例实施例中,账户管理系统130更新用户的账户以记入该离线支付交易。

方法390然后进入图4中的框450。

回到图4中的框410,如果对最新余额证书的请求不包括取款记录,那么方法390进入图4中的框450。在框450中,账户管理系统130计算在用户账户管理系统130账户中的可用资金的余额。在下文中参照图5描述的方法对用于计算在用户账户管理系统130账户中的可用资金的余额的方法450进行更详细地描述。

图5是描绘了根据特定示例实施例的用于计算在用户账户管理系统130账户中的可用资金的余额的方法450的流程框图,如参照框450。参照图1图示的部件对方法450进行描述。

在框510中,账户管理系统130计算在用户账户管理系统130账户中的资金的余额。在示例实施例中,账户管理系统130计算存款总额与取款记录总额之差。在另一示例实施例中,账户管理系统130维持在用户的账户中的资金的余额的总累计。

在框520中,账户管理系统130确定资金的余额的一部分是否被锁定。在示例实施例中,用户利用对最新余额证书113的请求来传输对将资金的余额的一部分进行锁定的请求。在另一示例实施例中,账户管理系统130维护规则或者逻辑,该规则和逻辑在没有人工干预的情况下理解为:确定锁定资金的金额。在又一示例实施例中,用户定义用于确定锁定资金的金额的规则。例如,规则可以要求在用户账户管理系统130账户中维持25美元的最低余额。在本示例中,账户管理系统130将锁定25美元以防止该最低金额被用于离线支付。在另一示例中,规则可以要求:将在用户账户管理系统130账户中可用的资金的5%进行锁定。在本示例中,如果用户在用户的账户中具有100美元,那么账户管理系统130将锁定5美元以防止该最低金额被用于离线支付。

如果没有将资金余额的任何部分进行锁定,那么方法450进入图4中的框450。

回到框520,如果资金余额的一部分被锁定,那么方法450进入图5中的框530。在框530中,账户管理系统130确定用于将资金余额的一部分进行锁定或者解锁的规则。在示例实施例中,该规则由用户、账户管理系统、第三方、或者它们的任何组合定义。在示例实施例中,该规则在用户账户管理系统130账户建立时定义。在另一示例实施例中,该规则被建立并且在建立之后随时可能会发生变化。在又一示例实施例中,用户对最新余额证书113的请求包括用于将资金进行锁定或者解锁的一种或者多种规则。

在示例实施例中,在用户账户管理系统130账户中的所有资金都被锁定并且账户管理系统130基于规则来确定资金余额的一部分是否可以被解锁。例如,账户管理系统130通过应用一种或者多种规则来确定资金的余额的50%可以用于离线支付交易。

在框540中,账户管理系统130确定是否存在用于将资金余额的一部分进行锁定或者解锁的基于时间的规则。在示例实施例中,资金余额的一部分可用于有限的时间。例如,可以针对单笔交易将资金余额的一部分进行解锁。在本示例中,余额证书113仅对单笔交易或者仅在短时间量(例如,仅够完成一笔离线交易的时间)内有效。在单笔离线支付交易完成之后,或者在可用于余额证书113的时间到期之后,要求用户请求新的最新余额证书113。

在另一示例中,可以将可用资金的部分锁定一段时间。例如,将资金余额的一部分锁定5分钟。在本示例中,用户可以利用可用资金金额在那些5分钟期间至多达锁定量的时间完成离线支付交易。在交易完成之后,将锁定解除。用户可以通过请求新的余额证书113在那些5分钟到期之前延长锁定时间。

如果账户管理系统130确定存在用于将资金余额的一部分进行锁定或者解锁的基于时间的规则,那么方法450进入图5中的框550。在框550中,账户管理系统130确定在预定义时间段内的可用资金。

方法450然后进入图5中的框560。

参照图5中的框540,如果账户管理系统130确定不存在用于将资金余额的一部分进行锁定或者解锁的基于时间的规则,那么方法450进入图5中的框560。在框560中,账户管理系统130确定是否存在用于将资金余额的一部分进行锁定或者解锁的基于位置的规则。在示例实施例中,资金只可用于指定的位置或者用于与指定类型商家的离线支付交易。例如,用户只希望针对公共交通、在餐厅处、或者在城市X中使用资金。在另一示例实施例中,资金只可用于在第一笔离线支付交易的预定义附近或者其它地理位置处使用。例如,一旦用户发起对商家X的离线支付交易,用户只可以完成在商家X所在位置的10英尺半径内的附加交易。在示例实施例中,每个用户可以具有一个以上的用户装置110。在本实施例中,每个用户装置110可以具有不同的余额证书。通过根据位置将资金余额的一部分进行锁定,用户不可以使用一个以上的用户装置110来超支用户的资金余额。

如果账户管理系统130确定存在用于将资金余额的一部分进行锁定或者解锁的基于位置的规则,那么方法450进入图5中的框570。在框570中,账户管理系统130确定针对预定义位置或者商家类型的可用资金。

方法450然后进入图5中的框580。

回到图5中的框560,如果账户管理系统130确定不存在用于将资金余额的一部分进行锁定或者解锁的基于位置的规则,那么方法450进入图5中的框580。在框580中,账户管理系统130基于用于锁定资金的一种或者多种规则来确定不可用于离线支付交易的锁定资金金额和可用于离线支付交易的资金金额。在示例实施例中,可用资金金额包括存款总额与取款记录总额之差减去任何锁定资金。

方法450然后进入图4中的框460。

回到图4,在框460中,账户管理系统130为用户装置110创建最新余额证书113。在示例实施例中,最新余额证书113包括可用于离线支付交易的资金金额。在示例实施例中,余额证书113在时间上有限制。在本示例实施例中,在过去预定义量的时间之后,余额证书113到期。在另一示例实施例中,余额证书113在离线购买交易的次数上有限制。在本示例实施例中,在预定义次数的离线购买交易完成之后,余额证书113到期。在另一示例实施例中,余额证书113受时间、交易次数、地理位置、商家类型、或者由账户管理系统130或者用户建立的任何其它限制规则限制。在示例实施例中,余额证书包括限制可用于支付交易的资金金额的一种或者多种规则。

在框470中,账户管理系统130对余额证书113签名。在示例实施例中,商家装置120可以使用余额证书公钥113a验证已签名的余额证书113的真实性来读取已签名的余额证书113。

在框480中,账户管理系统130将已签名的余额证书113传输至用户装置110。在示例实施例中,已签名的余额证书113经由网络140连接传输至用户装置110。

在框490中,用户装置110接收已签名的余额证书113。

方法390然后进入图2中的框230。

回到图2,在框230中,用户装置110和商家装置120建立通信信道。在示例实施例中,用户已经指示完成与商家的离线支付交易的愿望。在示例实施例中,用户访问在用户装置110上的应用115,该应用115使用户装置110能够执行离线支付交易。在示例实施例中,用户访问使用户装置110能够与商家装置120无线地通信的应用115。在本实施例中,装置(包括装置110和120)经由安全通信信道(例如,近场通信、蓝牙、Wi-Fi、或者其它形式的无线通信信道)通信。

在框240中,商家装置120将支付请求传输至用户装置110。在示例实施例中,商家将支付请求金额输入到在商家装置120上的应用125中。在本实施例中,支付请求包括商家装置120的识别、支付请求金额、和/或时间戳。在示例实施例中,支付请求经由安全通信信道传输。

在框250中,用户装置110处理从商家装置120接收的支付请求。在下文中参照图6描述的方法对用于处理从商家装置120接收的支付请求的方法250进行更详细地描述。

图6是描绘了根据特定示例实施例的用于处理从商家装置120接收的支付请求的方法250的流程框图,如参照框250。参照图1图示的部件对方法250进行描述。

在框610中,用户装置110从商家装置120接收支付请求。

在框620中,用户装置110针对从商家装置120接收的支付请求上指示的金额生成取款记录。在示例实施例中,该取款记录包括:在支付请求(例如,商家或者商家装置120的识别、支付请求金额、和时间戳)中接收的信息。在另一示例实施例中,取款记录包括用户装置110的识别、用户的识别、和/或用户账户管理系统130账户的识别。在另一示例实施例中,用户可以在取款记录创建之前或者创建的同时使用应用115来改变支付请求金额。

在框630中,用户装置110对取款记录签名。在示例实施例中,利用账户证书112私钥对取款记录签名。在示例实施例中,取款记录由用户装置110或者应用115签名以允许商家装置120验证账户信息(例如,账户管理系统130账户)属于用户并且被授权在离线支付交易中使用。

在框640中,用户装置110检索由账户管理系统130签名的最新余额证书113。在示例实施例中,在从商家装置120接收到支付请求之后的任何时间检索余额证书113。在示例实施例中,用户装置120通过交叉引用支付请求金额与由余额证书113公开的可用于离线支付交易的资金金额,针对离线支付交易对资金的可用性进行确认。在另一示例实施例中,用户装置110核查施加在可用于离线支付交易的资金金额上的任何规则或者限制并且确定支付交易是否满足那些规则。

在框650中,用户装置110将对支付请求的响应传输至商家装置120。在示例实施例中,该响应包括已签名的取款记录和已签名的余额证书113。在示例实施例中,对支付请求的响应经由在用户装置110与商家装置120之间的安全通信信道传输。

方法250然后进入图2中的框260。

回到图2,在框260中,商家装置120验证对从用户装置110接收的支付请求的响应。在下文中参照图7描述的方法对用于验证对从用户装置110接收的支付请求的响应的方法260进行更详细地描述。

图7是描绘了根据特定示例实施例的用于验证对从用户装置110接收的支付请求的响应的方法260的流程框图,如参照框260。参照图1图示的部件对该方法260进行描述。

在框710中,商家装置120从用户装置110接收对支付请求的响应。在示例实施例中,该响应包括已签名的取款记录和已签名的余额证书113。

在框720中,商家装置120验证取款记录。在示例实施例中,商家装置120使用账户证书公钥112a来验证已签名的取款记录。在本实施例中,取款记录在传输至商家装置120之前在用户装置110上由账户证书112签名。商家装置120验证在取款记录上的签名以对用户装置110、用户、和/或用户账户管理系统130账户的身份进行确认。

如果取款记录未通过验证,那么方法260进入图7中的框730。在框730中,拒绝离线支付交易。在示例实施例中,商家装置120将拒绝交易的通知传输至用户装置110。

回到图7中的框720,如果取款记录通过了验证,那么方法260进入图7中的框740。在框740中,商家装置120验证余额证书113。在示例实施例中,商家装置120使用余额证书公钥113a来验证已签名的余额证书113。

在本实施例中,余额证书113在传输至用户装置110之前由账户管理系统130签名。响应于支付请求,将已签名的余额证书113传输至具有取款记录的商家装置120。商家装置120验证在余额证书113上的签名以对用于完成离线支付交易的资金的可用性进行确认。在示例实施例中,商家装置120验证余额证书113未到期和/或验证满足施加在余额证书上的任何其它限制(例如,地理限制、商家限制、或者其它功能限制)。

如果余额证书113未通过验证,那么方法260进入图7中的框750。在框750中,拒绝离线支付交易。在示例实施例中,商家装置120将拒绝交易的通知传输至用户装置110。

回到图7中的框740,如果余额证书113通过了验证,那么方法260进入图7中的框760。在框760中,商家装置120验证用于完成离线支付交易的资金的可用性。在示例实施例中,商家装置120从余额证书113读取可用资金。在示例实施例中,商家装置120按照验证离线支付交易符合施加在可用资金上的任何规则。

如果针对离线支付交易没有充足的资金,那么方法260进入图7中的框770。在框770中,商家装置120和/或用户装置110确定资金的余额的一部分是否被锁定或者在离线支付交易期间不可使用。在示例实施例中,余额证书113包括资金的一部分被锁定的符号。

如果资金的余额的一部分未被锁定,那么方法260进入图7中的框775。在框775中,拒绝离线支付交易。在示例实施例中,商家装置120将拒绝交易的通知传输至用户装置110。

回到图7中的框770,如果资金的余额的一部分被锁定或者在离线支付交易期间不可使用,那么方法260进入图7中的框780。在框780中,用户授权向账户管理系统130请求将资金的一部分进行解锁。在示例实施例中,只有当用户装置110具有网络140连接时才能将将资金进行解锁的请求传输至账户管理系统130。在本实施例中,拒接交易,直到附加的资金被解锁。

方法260然后进入图3中的框310,并且用户装置110请求具有解锁资金的新余额证书113。

回到图7中的框760,如果有充足的资金可用于离线支付交易,那么方法260进入图7中的框790。在框790中,商家装置120授权离线支付交易。

方法260然后进入图2中的框270。

回到图2,在框270中,账户管理系统130验证取款记录。在下文中参照图8描述的方法对用于验证取款记录的方法270进行更详细地描述。

图8是描绘了根据特定示例实施例的用于验证取款记录的方法270的流程框图,如参照框270。参照图1图示的部件对方法270进行描述。

在框810中,商家装置120利用商家装置签名证书124对取款记录签名。在示例实施例中,商家装置120在其验证取款记录,验证余额证书113并且确定有用于离线支付交易的充足的资金之后,授权该离线支付交易。在本实施例中,商家装置120对取款记录签名以授权该交易。在另一示例实施例中,商家装置120创建向用户装置110指示交易成功的状态代码或者消息。

在框815中,商家装置120将已签名的取款记录传输至用户装置110。在示例实施例中,已签名的取款记录经由在用户装置110与商家装置120之间的安全通信信道传输。在示例实施例中,将已签名的取款记录传输至用户装置110来完成离线支付交易。在另一示例实施例中,商家装置120将指示交易成功的状态代码或者消息传输至用户装置110。

在框820中,商家装置120确定其是否具有网络140接入。在示例实施例中,商家装置120要求网络140接入来与账户管理系统130通信。

如果商家装置120不具有网络140接入,那么方法270进入图8中的框830。在框830中,商家装置120存储取款记录直到商家装置120具有网络140接入。

回到图8中的框820,如果商家装置120具有网络140接入,或者一旦网络140接入可用,那么方法270进入图8中的框840。在框840中,商家装置120将取款记录传输至账户管理系统130。在示例实施例中,取款记录由商家装置签名证书124签名。在另一示例实施例中,取款记录是响应于支付请求从用户装置110接收的相同的取款记录。

在框850中,账户管理系统130从商家装置120接收取款记录。

在框860中,账户管理系统130验证取款记录。在示例实施例中,账户管理系统130使用商家装置签名证书公钥124a来验证取款记录。在本实施例中,账户管理系统130验证取款记录和/或商家装置120的身份或者有效性。在另一示例实施例中,商家装置120传输具有取款记录的标识符或者消息。在本实施例中,账户管理系统130通过对商家装置120的身份进行确认来验证取款记录。在另一示例实施例中,账户管理系统130通过验证用户或者用户装置110的身份来验证取款记录。

如果取款记录验证失败,那么方法270进入图8中的框870。在框870中,拒绝离线支付交易。在示例实施例中,账户管理系统130将拒绝交易的通知传输至商家装置120。

回到图8中的框860,如果取款记录验证通过,那么方法270进入图8中的框880。在框880中,账户管理系统130将取款记录记录在用户账户管理系统130账户中。在示例实施例中,取款记录包括:用户、用户装置110、和/或用户账户管理系统130账户的识别。在本实施例中,账户管理系统130利用从商家装置120接收的取款记录来更新用户的账户。

在示例实施例中,用户装置110在商家装置120将取款记录传输至账户管理系统130之前或者之后请求新的余额证书113。在本实施例中,用户装置110将已签名的取款记录传输至账户管理系统130。账户管理系统130将针对相同的离线支付交易接收的两个取款记录记录在用户账户管理系统130账户中。在示例实施例中,这两个取款记录用于验证用户的账户中的资金的余额的有效性。

其它示例实施例

图9描绘了根据特定示例实施例的计算机器2000和模块2050。计算机器2000可以与各种计算机、服务器、移动装置、嵌入式系统、或者本文呈现的计算系统中的任何一个对应。模块2050可以包括一个或者多个硬件元件或者软件元件,该一个或者多个硬件元件或者软件元件被配置为促进计算机器2000执行本文呈现的各种方法和处理功能。计算机器2000可以包括各种内部部件或者附接部件,诸如,处理器2010、系统总线2030、系统存储器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、任何信号承载介质、或者任何其它通信或者传送技术将模块2050传送至计算机器2000的一个或者多个过程或者方法相关联。模块2050还可以包括硬件电路或者用于配置硬件电路的信息,诸如,用于FPGA或者其它PLD的微代码或者配置信息。

输入/输出(I/O)接口2060可以被配置为耦合至一个或者多个外部装置,从该一个或者多个外部装置接收数据,并且将数据发送至该一个或者多个外部装置。这种外部装置,连同各种内部装置,还可以被称为外围装置。I/O接口2060可以包括可用于将各种外围装置操作地耦合至计算机器2000或者处理器2010的电气连接或者物理连接。I/O接口2060可以被配置为在外围装置、计算机器2000、或者处理器2010之间传送数据、地址、和控制信号。I/O接口2060可以被配置为实施任何标准接口,诸如,小型计算机系统接口(SCSI)、串行附接的SCSI(SAS)、光纤信道、外围部件互连(PCI)、PCI express(PCIe)、串行总线、并行总线、高级技术附件(ATA)、串行ATA(SATA)、通用串行总线(USB)、Thunderbolt、FireWire、各种视频总线等。I/O接口2060可以被配置为仅实施一种接口或者总线技术。替换地,I/O接口2060可以被配置为实施多种接口或者总线技术。I/O接口2060可以被配置为:系统总线2020的一部分、系统总线2020的全部,或者结合系统总线2020操作。I/O接口2060可以包括用于对在一个或者多个外部装置、内部装置、计算机器2000、或者处理器2010之间的传输进行缓存的一个或者多个缓存。

I/O接口2060可以将计算机器2000耦合至各种输入装置,包括:鼠标、触屏、扫描仪、电子数字转换器、传感器、接收器、触控板、轨迹球、相机、麦克风、键盘、任何其它定点装置、或者它们的任何组合。I/O接口2060可以将计算机器2000耦合至各种输出装置,包括:视频显示器、扬声器、打印机、投影仪、触觉反馈装置、自动控制、机械部件、致动器、电动机、风扇、螺线管、阀、泵、发射机、信号发射器、光等。

计算机器2000可以通过通往跨网络2080的一个或者多个其它系统或者计算机器的网络接口2070,使用逻辑连接,来在网络环境中操作。网络2080可以包括广域网(WAN)、局域网(LAN)、内联网、互联网、无线接入网络、有线网络、移动网络、电话网络、光学网络、或者它们的组合。网络2080可以是任何拓扑的分组交换、电路交换,并且可以使用任何通信协议。在网络2080内的通信链路可以涉及各种数字或者模拟通信介质,诸如,光纤光缆、自由空间光学、波导、电导体、无线链路、天线、射频通信等。

处理器2010可以通过系统总线2020连接至计算机器2000的其它元件或者本文描述的各种外围设备。应该了解,系统总线2020可以在处理器2010内部、处理器2010外部、或者两者。根据一些实施例,可以将处理器2010、计算机器2000的其它元件、或者本文描述的各种外围设备中的任何一个集成到单个装置(诸如,片上系统(SOC)、系统级封装(SOP)、或者ASIC装置)中。

在此处讨论的系统采集关于用户的个人信息或者可以利用个人信息的情况下,可以为用户提供如下机会或者选择:控制程序或者特征是否采集用户信息(例如,有关用户的社交网络、社交动作或者活动、职业、用户的偏好、或者用户的当前位置的信息)或者控制是否和/或如何从内容服务器接收可能与用户更有关的内容。此外,在存储或者使用特定数据之前,可以按照一种或者多种方式来处理该特定数据,从而使得可以去除个人可识别信息。例如,可以处理用户的身份,从而使得无法确定用户的个人可识别信息,或者可以将获得的位置信息的用户的地理位置一般化(诸如,城市、邮政编码、或者州县等级),从而使得无法确定用户的特定位置。因此,用户可以控制:如何采集关于用户的信息和内容服务器如何使用该信息。

实施例可以包括体现本文所描述和所图示的功能的计算机程序,其中,该计算机程序在计算机系统中实施,该计算机系统包括存储在机器可读介质中的指令和执行该指令的处理器。然而,应该显而易见的是,在计算机编程中可能存在实施实施例的许多不同的方式,并且实施例不应该理解为限于任何一组计算机程序指令。进一步地,熟练的程序员将能够基于本申请的文本中附加的流程图和相关的描述来编写这种计算机程序以实施本公开的实施例的实施例。因此,一组特定的程序代码指令的公开不被认为对充分理解如何制作和使用实施例有必要。进一步地,本领域的技术人员将理解,本文描述的实施例的一个或者多个方面可以由硬件、软件、或者它们的组合执行,因为可以体现在一个或者多个计算系统中。此外,不应该将对由计算机执行的动作的任何提及理解为由单个计算机执行,因为一个以上的计算机可以执行该动作。

本文描述的示例实施例可以与执行本文描述的方法和处理功能的计算机硬件和软件一起使用。本文描述的系统、方法、和程序可以体现在可编程计算机、计算机可执行软件、或者数字电路系统中。软件可以存储在计算机可读介质上。例如,计算机可读介质可以包括软盘、RAM、ROM、硬盘、可移除介质、闪速存储器、记忆棒、光学介质、磁光介质、CD-ROM等。数字电路系统可以包括集成电路、门阵列、构建块逻辑、现场可编程门阵列(FPGA)等。

在先前呈现的实施例中描述的示例系统、方法、和动作是图示性的,并且在替代实施例中,在不脱离权利要求书定义的不同实施例的范围和精神的情况下,特定动作可以按照不同顺序执行,彼此并行地执行,全部省略,和/或可以在不同示例实施例之间结合,和/或可以执行特定附加的动作,本发明的范围与最广泛的解释一致,以便囊括这种替代选择。

尽管上文已经对具体实施例进行了详细描述,但是该描述仅出于举例说明之目的。因此,应该了解,除非明确指出,否则上文描述的许多方面不旨在作为所要求的因素或者必要的因素。除了上文描述的那些之外,在不脱离下面的权利要求书定义的实施例的精神和范围的情况下,获益于本公开的本领域的普通技术人员可以对示例实施例的所公开的多个方面进行修改并且做出与示例实施例的所公开的多个方面对应的等效的部件或者动作,本发明的范围与最广泛的解释一致,以便囊括这种修改和等效结构。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1