CN104823429B - 用于管理uri方案的注册和发现的系统和方法 - Google Patents

用于管理uri方案的注册和发现的系统和方法 Download PDF

Info

Publication number
CN104823429B
CN104823429B CN201380054896.5A CN201380054896A CN104823429B CN 104823429 B CN104823429 B CN 104823429B CN 201380054896 A CN201380054896 A CN 201380054896A CN 104823429 B CN104823429 B CN 104823429B
Authority
CN
China
Prior art keywords
uri
schemes
ecosystem
names
application program
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
CN201380054896.5A
Other languages
English (en)
Other versions
CN104823429A (zh
Inventor
W·E·索贝尔
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.)
CA Inc
Original Assignee
Symantec Corp
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 Symantec Corp filed Critical Symantec Corp
Publication of CN104823429A publication Critical patent/CN104823429A/zh
Application granted granted Critical
Publication of CN104823429B publication Critical patent/CN104823429B/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
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • 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/75Indicating network or usage conditions on the user display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/30Types of network names

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了用于识别向设备注册的一组URI方案的计算机实现的方法。枚举出URI方案名称以URI命名空间名称开头并以URI命名空间的第一个字符位置中的字符结尾的每个URI方案。迭代地,将所述URI命名空间的下一个字符位置添加到每个所枚举的URI方案的所述URI方案名称中,并枚举出URI方案名称以所述URI命名空间的所述下一个字符位置中的字符结尾的每个URI方案。将向所述设备注册的所述组URI方案被识别为在所述URI命名空间中URI方案名称分支的末端处的所述URI方案。

Description

用于管理URI方案的注册和发现的系统和方法
背景技术
计算设备和计算机相关技术的使用持续快速增长。计算机设备的使用增加已经影响到计算机相关技术的进步。实际上,计算设备日益成为了商界和个体消费者活动中不可分割的一部分。计算设备可用于实现若干商业、工业和学术目的。由于人们越来越多地使用通信网络、计算机网络(包括互联网),这些计算设备的广泛使用也得以加速。
许多企业和个人使用一种或多种通信和/或计算机网络来在连接到网络的各种设备之间传送和共享数据。职员的生产力和效率常常需要人机交互。计算机技术的用户不断要求这些技术提高效率。任何使用和依赖计算机设备的人都希望提高这些技术的效率。
计算设备可以是可移动的,这样用户可以在进行旅行、购物、工作等活动时随身携带它们。这些设备还可用于与其他设备通信。例如,计算设备可为移动电话。移动计算系统在一段预定时间之后、在从用户输入接收特定命令之后、在通电时等等进入“锁定”状态。该锁定状态可阻止未授权的用户访问可存储在系统上的数据。此外,锁定状态可阻止未授权的用户访问系统的各种特征和功能。为了解锁系统,用户可能需要通过设备上的用户输入输入密码或其他凭据。
在一些情况下,移动计算系统还可包含参与具体环境(诸如工作环境)的应用程序和数据。移动计算系统还可包含参与不同甚至迥然不同的环境的应用程序和数据。
发明内容
根据至少一个实施例,描述了用于识别向设备注册的一组唯一URI方案的计算机实现的方法。枚举出URI方案名称以URI命名空间名称开头并以URI命名空间的第一个字符位置中的字符结尾的每个URI方案。迭代地,将URI命名空间的下一个字符位置添加至每个枚举的URI方案的URI方案名称中,并且枚举出URI方案名称以URI命名空间的下一个字符位置的字符结尾的每个URI方案。将向设备注册的该组URI方案作为在URI命名空间中URI方案名称分支末端的URI方案进行识别。
在识别方法的一些实施例中,使用该组URI方案中每个URI方案的URI方案名称访问对应于每个URI方案名称的相应应用程序生态系统的相关信息。
在该方法的一些配置中,通过访问存储在共享存储位置(诸如iPhone操作系统(iOS)粘贴板)中的信息来访问关于相应应用程序生态系统的信息。
在一些例子中,关于每个应用程序生态系统的信息包括每个应用程序生态系统的标识符,并且发现方法还涉及将每个应用程序生态系统的标识符显示给设备的用户。每个生态系统的标识符可包括生态系统名称或图标。在一些实施例中,可接收用户对生态系统的选择,并且可发起加入用户所选的生态系统的进程。
在该方法的一些配置中,发现的该组唯一URI方案包括通过不同应用程序生态系统注册的至少两个URI方案。
在该方法的一些实施例中,URI方案可为URL方案。
在该方法的一些配置中,URI命名空间可具有16或32个字符位置。
还描述了被配置为识别一组URI方案的计算设备。该设备包括处理器以及与处理器电子通信的存储器。指令可存储在存储器中。指令可由处理器执行以枚举每个URI方案,所述URI方案具有以URI命名空间名称开头并以URI命名空间的第一个字符位置中的字符结尾的URI方案名称。指令还可由处理器执行以迭代地将URI命名空间的下一个字符位置添加至每个枚举的URI方案的URI方案名称中,并且枚举出URI方案名称以URI命名空间的下一个字符位置中的字符结尾的每个URI方案。另外,指令可由处理器执行以识别向设备注册的该组URI方案,即URI命名空间中URI方案名称分支末端的URI方案。
还描述了用于识别设备上的一组URI方案的计算机程序产品。该计算机程序产品可包括其上具有指令的非暂态计算机可读介质。指令可由处理器执行以枚举每个URI方案,所述URI方案具有以URI命名空间名称开头并以URI命名空间的第一个字符位置中的字符结尾的URI方案名称。指令还可由处理器执行以迭代地将URI命名空间的下一个字符位置添加至每个枚举的URI方案的URI方案名称中,并且枚举出URI方案名称以URI命名空间的下一个字符位置中的字符结尾的每个URI方案。另外,指令可由处理器执行以识别向设备注册的该组URI方案,即URI命名空间中URI方案名称分支末端的URI方案。
根据至少一个实施例,描述了用于识别向设备注册的URI方案的计算机实现的方法。生成URI方案的标识符。通过将标识符的前N个字符附加到URI命名空间名称来生成一系列URI方案名称。N为范围从一到该唯一标识符中的字符位置个数的整数。向设备注册对应于每个URI方案名称的URI方案。
来自上述实施例中的任一者的特征可根据本文所述的一般原理彼此结合地使用。通过结合附图和权利要求阅读下面的详细描述,将会更充分地理解这些和其他实施例、特征和优点。
附图说明
附图示出了多个示例性实施例并且为说明书的一部分。这些附图结合下面的描述展示并且说明本公开的各种原理。
图1为示出可在其中实现本发明的系统和方法的环境的一个实施例的框图;
图2为注册的URI方案的一个实施例的列表;
图3为示出URI方案管理模块的一个实施例的框图;
图4为示出注册模块的一个实施例的框图;
图5为示出发现模块的一个实施例的框图;
图6为示出用于向设备注册唯一URI方案的方法的一个实施例的流程图;
图7为示出用于发现向设备注册的一组唯一URI方案的方法的一个实施例的流程图;
图8为示出用于发现向设备注册的一组唯一URI方案的方法的另一个实施例的流程图;
图9为示出可实现本发明的系统和方法的设备的框图;
图10示出了适用于实现本发明的系统和方法的计算机系统的框图;以及
图11为示出一种网络体系结构的框图,在该网络体系结构中,客户端系统以及存储服务器中的任一者可使用计算机系统实现。
虽然本文所述的实施例易受各种修改和替代形式的影响,但在附图中以举例的方式示出了特定实施例并且将在本文详细描述。然而,本文所述的示例性实施例并非旨在限于所公开的特定形式。相反,本发明涵盖落在所附权利要求范围内的所有修改形式、等同形式和替代形式。
具体实施方式
如以引用方式并入本文的名称为“Secure App Ecosystem with Key and DataExchange According to Enterprise Information Control Policy”(利用符合企业信息控制策略的密钥和数据交换保证应用生态系统的安全)的美国专利申请号13/598,248中所述,计算设备上的一组应用程序(或“应用”)可被配置为应用程序“生态系统”。生态系统的应用程序可根据信息控制策略安全地交换加密消息和加密数据对象,同时不授权生态系统外的应用和其他组件访问生态系统或其内容。
在一些情况下,生态系统可由生态系统代理建立。生态系统代理还可处理是否允许应用程序进入生态系统。进一步地,生态系统代理可处理加密生态系统目录的创建。该目录包含每个活动生态系统应用程序的记录(条目),其中包括本身也为应用程序的生态系统代理。存储该目录的位置可取决于平台。例如,在iOS下,该目录可存储为粘贴板对象。如果应用程序知道该目录的名称,则可定位该目录(例如,在iOS粘贴板中)。被授权访问生态系统的应用程序可能已经知道其加密生态系统目录的名称。然而,尚未被允许进入生态系统的应用程序可能不知道该目录的名称。
在一些情况下,为应用程序提供查找设备托管的加密生态系统目录名称的方法可能是有用的。这样,例如,新安装的应用程序可发现目录的名称,确定它可能能够加入的一个或多个生态系统是否存在,并提示用户选择该应用程序应尝试加入的一个或多个生态系统。在用户选择该应用程序要加入的生态系统时,可发起用于加入生态系统的进程(例如,“加入协议”)。作为加入协议的一部分,将要求该应用程序或用户提供凭据,建立应用程序加入生态系统的权限。
又如美国专利申请号13/598,248中所述,一个以上的生态系统可共驻在单个计算设备上或被配置为使得共驻生态系统不被允许访问彼此的数据或换句话说参加另一个生态系统的受到保护的生态系统级数据共享。
在一些情况下,可依靠生态系统向设备注册相应URI方案来存储或访问生态系统的名称。URI方案可提供生态系统名称或提供对生态系统名称的访问权限,从而提供发现关于生态系统的信息的途径。然而,至今为止,还没有已知方法来让没有URI方案的先备知识的应用程序以具有时效性的方式发现URI方案。
现在转到附图,图1为示出环境100的一个实施例的框图,在该环境中可实现本发明的系统和方法。在一个例子中,多个设备105-a、105-b、105-c可在网络130上彼此通信。设备105-a、105-b、105-c可为移动设备或固定设备。设备105-a、105-b、105-c可呈现相同或不同形式,并且可为移动电话、智能手机、个人数字助理(PDA)、服务器、膝上型计算机、平板电脑,或任何其他类型的移动计算设备或固定计算设备。网络130可为无线广域网(WAN)、局域网(LAN)、蜂窝网络或任何其他类型的通信网络。
设备105-a被示为具有多个注册URI方案110。关于注册URI方案110的信息可存储在设备105-a的系统存储器或其他存储设备中。URI方案管理模块115提供用以注册或发现注册URI方案110中的URI方案的机制。
各种应用程序和进程可调用URI方案管理模块115。例如,在一些实施例中,设备105-a可托管一个或多个应用程序生态系统120-a-i,其中i为大于或等于一的整数。每个生态系统120-a-i的代理或其他进程可调用URI方案管理模块115来向设备105-a注册多个URI方案(并且通常向设备105-a的操作系统注册)并将URI方案记录在注册URI方案110中。设备105-a还可托管一个或多个应用程序125-a-i,这些应用程序可提示设备用户加入生态系统125-a-i中的一个。这些应用程序125-a-i各自可调用URI方案管理模块115来发现所有注册URI方案110或其子集,从而发现有关生态系统120-a-i的信息并尝试加入生态系统120-a-i中的一个或多个。
图2为注册URI方案110-a的一个实施例的列表200。在一种配置中,注册URI方案110-a可为图1所示的注册URI方案110的例子。如图所示,每个注册URI方案205-a、205-b、205-c、205-d、205-e具有以URI命名空间名称(例如,Symcappcenter)开头并以唯一标识符的前N个字符(例如,对于URI方案205-a为{3};对于URI方案205-b为{3A};对于URI方案205-c为{3A8};对于URI方案205-d为{3A8A1CB0D4D911E1A18804046288709B};并且对于URI方案205-e为{87B42FD00987E556CD43043782379833})结尾的URI方案名称。唯一标识符(例如,{3A8A1CB0D4D911E1A18804046288709B}和{87B42FD00987E556CD43043782379833})各自标识了唯一的URI方案。对于唯一标识符{3A8A1CB0D4D911E1A18804046288709B},URI方案205-a具有以唯一标识符的第一个字符(即N=1)结尾的URI方案名称,URI方案205-b具有以唯一标识符的前两个字符(即N=2)结尾的URI方案名称,并且URI方案205-d具有以唯一标识符(即N=唯一标识符中字符位置的个数)结尾的URI方案名称。
图3为示出URI方案管理模块115-a的一个实施例的框图300。在一种配置中,URI方案管理模块115-a可为图1所示的URI方案管理模块115的例子。在一个实施例中,URI方案管理模块115-a可包括注册模块305和发现模块310。可调用注册模块305来向设备105-a注册一个或多个URI方案并将这一个或多个URI方案记录在注册URI方案110(图1)或110-a(图2)中。可调用发现模块310来发现向设备注册的一组(即一个或多个)唯一URI方案。
在一些实施例中,URI方案管理模块115(图1)或115-a(图2)可作为独立的应用程序或实用程序提供。在其他实施例中,部分或全部URI方案管理模块115或115-a可作为设备操作系统的一部分提供。在其他实施例中,部分或全部URI方案管理模块115或115-a可作为应用程序生态系统120-a-i的生态系统代理的一部分,或作为应用程序125-a-i的一部分提供。具体地讲,将注册模块305作为生态系统代理的一部分来提供并且将发现模块310作为应用程序125-a-i的一部分来提供可为有用的。
图4为示出注册模块305-a的一个实施例的框图400。在一种配置中,注册模块305-a可为图3所示的注册模块305的例子。在一个实施例中,注册模块305-a可包括唯一标识符生成模块405、URI方案名称生成模块410,以及URI方案注册模块415。
在注册模块305-a被调用来向设备(例如,图1中的设备105-a)注册唯一URI方案时,唯一标识符生成模块405生成该唯一URI方案的唯一标识符。在一些实施例中,该唯一标识符为128位或32字符标识符,包括十六进制字符0-9及A-F中的一者或多者。在其他实施例中,该唯一标识符为64位或16字符标识符,包括十六进制字符0-9及A-F中的一者或多者。在另外的实施例中,该唯一标识符可能具有其他位数或其他字符数或字符类型。该唯一标识符的长度(或命名空间的深度)应被配置为降低两个应用程序或实体映射到相同标识符从而导致该标识符不唯一的可能性。在一些情况下,散列法或伪随机方法可用于生成该唯一标识符,从而进一步降低两个应用程序或实体映射到相同标识符的可能性。
URI方案名称生成模块410通过将该唯一标识符的前N个字符附加到URI命名空间名称来生成一系列URI方案名称,其中N为范围从一到该唯一标识符中的字符位置个数的整数。图2提供了由URI方案名称生成模块410生成的URI方案名称的示例性列表。例如,对于具有32个字符的唯一标识符{3A8A1CB0D4D911E1A18804046288709B},URI方案名称生成模块410生成N=1情况下的URI方案名称“Symcappcenter{3}”、N=2情况下的URI方案名称“Symcappcenter{3A}”,以此类推,包括N=32情况下的URI方案名称“Symcappcenter{3A8A1CB0D4D911E1A18804046288709B}”。
URI方案注册模块415向设备105-a注册对应于由URI方案名称生成模块410生成的每个URI方案名称的URI方案205-a、205-b、205-c、205-d(图2)。
通过向设备注册一系列URI方案,注册模块405创建URI命名空间内的可发现的URI方案名称分支(例如,“Symcappcenter”命名空间内的可发现的URI方案名称分支)。这显著缩短了搜索和发现URI命名空间内的URI方案所需的时间。
在一些情况下,可在相同命名空间内注册一个以上的URI方案。当希望发现特定类型的现有URI方案,诸如识别设备105-a上托管的每个生态系统120-a-i(图1)的URI方案时,这可能特别有用。当多个应用程序希望注册具有相同名称的URI方案时,注册具有通过将唯一标识符附加到命名空间名称所形成的URI方案名称的URI方案也是有用的。举例来说,在过去,当两个应用程序向iOS注册相同URL方案(URI方案的一种形式)时,很难将已经注册该URL方案的应用程序枚举,并且没有定义在打开使用该URL方案的URL时要调用哪个应用程序。使用共享URL方案的应用程序之间的冲突很难解决,并且枚举出共享URL方案的应用程序也存在挑战。如下文更详细地描述,注册模块405提供的URI注册方案使得两个应用程序能够使用相同URI方案的变体,其中URI方案的名称成为唯一URI方案的命名空间名称。
图5为示出发现模块310-a的一个实施例的框图500。在一种配置中,发现模块310-a可为图3所示的发现模块310的例子。在一个实施例中,发现模块310-a可包括迭代枚举模块505和URI方案识别模块510。
在发现模块310-a被调用来发现向设备(例如,图1中的设备105-a)注册的一组唯一URI方案时,迭代枚举模块505可枚举出URI方案名称以URI命名空间名称开头并以URI命名空间的第一个字符位置中的字符结尾的每个URI方案。对于图2所示的注册URI方案110-a的列表200,这提供了对具有“symcappcenter{_}”形式的URI方案的枚举,从而产生了URI方案“symcappcenter{3}”和“symcappcenter{8}”。迭代枚举模块505随后开始迭代地1)将URI命名空间的下一个字符位置添加到每个枚举URI方案的URI方案名称中,并且2)枚举出URI方案名称以URI命名空间的下一个字符位置中的字符结尾的每个URI方案。因此,对于注册URI方案110-a的列表200,迭代枚举模块505接下来将会枚举具有“symcappcenter{3_}”和“symcappcenter{8_}”形式的URI方案,这产生了URI方案“symcappcenter{3A}”和“symcappcenter{87}”。然后继续迭代枚举,直到“symcappcenter”内的两个URI方案名称分支被完全解析,从而产生URI方案“Symcappcenter{3A8A1CB0D4D911E1A18804046288709B}”和“Symcappcenter{87B42FD00987E556CD43043782379833}”。
URI方案识别模块510将命名空间中URI方案名称分支末端的URI方案作为发现的向设备注册的一组唯一URI方案进行识别。因此,对于注册URI方案110-a的列表200,URI方案识别模块510将识别以下组的唯一URI方案;“Symcappcenter{3A8A1CB0D4D911E1A18804046288709B}”和“Symcappcenter{87B42FD00987E556CD43043782379833}”。
图6为示出方法600的一个实施例的流程图,该方法用于向设备注册唯一URI方案。在一种配置中,方法600可由图1中的设备105-a实现。具体地讲,方法600可由URI方案管理模块115或115-a的注册模块305(图3)实现。
在方框605处,生成唯一URI方案的唯一标识符。在一些实施例中,该唯一标识符可为128位并且包括32个字符。在其他实施例中,该唯一标识符可为64位并且包括16个字符。
在方框610、615、620和625中,生成一系列URI方案名称。在方框610中,将变量N设定为1。在方框615处,通过将该唯一标识符的前N个字符(初始为一个字符)附加到URI命名空间名称来生成URI方案名称。在方框620处,进行检查以确定N是否等于该唯一标识符中字符位置的个数。如果不相等,则在方框625处使N增大(即N=N+1),并通过方法600的方框615和620处的操作执行另一次迭代。然而,如果在方框620处确定N等于该唯一标识符中字符位置的个数,则方法600前进至方框630。
在方框630处,向应用URI方案的设备注册对应于在方框615处生成的每个URI方案名称的URI方案。可针对向设备注册的多个唯一URI方案中的每一个重复方法600。
图7为示出方法700的一个实施例的流程图,该方法用于发现向设备注册的一组唯一URI方案。在一种配置中,方法700可由图1中的设备105-a实现。具体地讲,方法700可由URI方案管理模块115或115-a的发现模块310(图3)实现。
在方框705、710、715和720处,迭代枚举一系列URI方案。首先,在方框705处,枚举出URI方案名称以URI命名空间名称开头并以URI命名空间的第一个字符位置中的字符结尾的每个URI方案。然后,在方框710处,将URI命名空间的下一个字符位置添加到每个所枚举的URI方案的URI方案名称中。在方框715处,枚举出URI方案名称以URI命名空间的下一个字符位置中的字符结尾的每个URI方案。在方框720处,进行检查以确定最新添加的字符位置是否为URI命名空间的最后一个字符位置。如果不是,则通过方框710、715和720处的操作进行另一次迭代。否则,方法700前进至方框725。
在方框725处,对发现的一组唯一URI方案进行识别。该组唯一URI方案是在URI命名空间中URI方案名称分支末端处的URI方案。
图8为示出方法800的另一个实施例的流程图,该方法用于发现向设备注册的一组唯一URI方案。在一种配置中,方法800可由图1中的设备105-a实现。具体地讲,方法800可由URI方案管理模块115或115-a的发现模块310(图3)实现。举例来说,在发现一组唯一URL方案方面对方法800进行了描述。在其他实施例中,方法800可以更一般地用于发现URI方案。
在方框705-a、710-a、715-a和720-a处,迭代枚举一系列URL方案。首先,在方框705-a处,枚举出URL方案名称以URL命名空间名称开头并以URL命名空间的第一个字符位置中的字符结尾的每个URL方案。然后,在方框710-a处,将URL命名空间的下一个字符位置添加到每个所枚举的URL方案的URL方案名称中。在方框715-a处,枚举出URL方案名称以URL命名空间的下一个字符位置中的字符结尾的每个URL方案。在方框720-a处,进行检查以确定最新添加的字符位置是否为URL命名空间的最后一个字符位置。如果不是,则通过方框710-a、715-a和720-a处的操作进行另一次迭代。否则,方法800前进至方框725-a。
在方框725-a处,对发现的一组唯一URL方案进行识别。该组唯一URL方案是在URL命名空间中URL方案名称分支末端处的URL方案。
在方框805处,使用发现的这组唯一URL方案中每个URL方案的URL方案名称访问与对应于每个URI方案名称的相应应用程序生态系统有关的信息。该信息可包括每个应用程序生态系统的标识符。在一些实施例中,每个标识符可以是或包括生态系统的名称或生态系统的图标。
在方框810处,向托管每个生态系统的设备的用户显示该生态系统的标识符,并且在方框815处,接收用户选择的一个或多个生态系统。在方框820处,可发起加入用户所选应用程序生态系统的进程。在一些实施例中,在方框805、810、815和820处执行的操作可由在设备上首次启动的应用程序或由用户用以发现其可加入的可用生态系统的应用程序(例如,图1的应用程序125-a-i)来执行。
图9为示出计算设备105-d的框图900。设备105-d可包括可用于实现本发明的系统和方法的各种组件。设备105-d可以为图1的设备105-a、105-b或105-c的例子。设备105-d可以为无线通信设备,诸如但不限于蜂窝电话、智能手机或PDA。
设备105-d可包括用于控制设备105-d的操作的处理器905。处理器905也可称为中央处理单元(CPU)。可包括只读存储器(ROM)和随机存取存储器(RAM)两者的存储器910向处理器905提供指令和数据。存储器910的一部分还可包括非易失性随机存取存储器(NVRAM)。处理器905通常基于存储器910中存储的程序指令执行逻辑和算术运算。存储器910中的指令可为可执行的以实现本文所述的方法。例如,URI方案管理模块115-b可存储在存储器910中。模块115-b可以为图1的URI方案管理模块115的例子。
设备105-d还可包括外壳945,该外壳可包括发射器920和接收器925,以允许在设备105-d和远程位置之间传输和接收数据。发射器920和接收器925可以组合成收发器940。天线935可以附接到(并在内部和/或外部布设至)外壳945并电耦接至收发器940。设备105-d还可包括(未示出的)多个发射器、多个接收器、多个收发器和/或多根天线。
设备105-d还可包括信号检测器915,该信号检测器可用于检测和量化收发器940所接收的信号水平。信号检测器915可将这种信号检测为总能量、每伪噪声(PN)码片的导频能量、功率谱密度和其他信号。设备105-d还可包括用于处理信号的数字信号处理器(DSP)930。
设备105-d的各种组件可由总线系统950耦接到一起,除数据总线之外,该总线系统还可包括电源总线、控制信号总线和状态信号总线。然而,为清晰起见,各种总线在图9中示为总线系统950。
图10示出了适用于实现本发明的系统和方法的计算机系统1000的框图。计算机系统1000包括用于互连计算机系统1000的主要子系统(诸如中央处理器1004)的总线1002、系统存储器1006(通常为RAM,但也可以包括ROM、闪存RAM等)、输入/输出控制器1008、外部音频设备(诸如经由音频输出接口1012的扬声器系统1010)、外部设备(诸如经由显示适配器1016的显示屏1014)、串行端口1018和1020、键盘1022(与键盘控制器1024连接)、多个USB设备1026(与USB控制器1028连接)、存储接口1030、可操作以接收软盘1034的软盘单元1032、可操作以与光纤通道网络1038连接的主机总线适配器(HBA)接口卡1036A、可操作以连接至SCSI总线1040的主机总线适配器(HBA)接口卡1036B,以及可操作以接收光盘1044的光盘驱动器1042。此外,还包括鼠标1046(或其他经由串行端口1018耦接到总线1002的点击设备)、调制解调器1048(经由串行端口1020耦接到总线1002)以及网络接口1050(直接耦接到总线1002)。
总线1002允许在中央处理器1004和系统存储器1006之间进行数据通信,如前文提及,该系统存储器可以包括只读存储器(ROM)或闪存存储器(均未示出)以及随机存取存储器RAM(未示出)。RAM是将操作系统和应用程序加载到其中的主存储器。除了其他代码,ROM或闪存存储器可以包含控制基本硬件操作(诸如与外围组件或设备的交互)的基本输入输出系统(BIOS)。例如,用于实现本发明的系统和方法的URI方案管理模块115-c可以存储在系统存储器1006中。与计算机系统1000驻存在一起的应用程序通常存储在非暂态计算机可读介质上并经由它来访问,所述非暂态计算机可读介质诸如硬盘驱动器(例如,固定磁盘1052)、光盘1044、软盘1034或其他存储介质。此外,在通过调制解调器1048或网络接口1050进行访问时,可以根据应用程序和数据通信技术以电子信号的形式对应用程序进行调制。
存储接口1030与计算机系统1000的其他存储接口一样可以连接到标准计算机可读介质(诸如固定磁盘1052)以存储和/或检索信息。固定磁盘1052可以是计算机系统1000的一部分,或者可以是独立的,并且可以通过其他接口系统进行访问。调制解调器1048可以经由电话链路提供与远程服务器的直接连接,或经由互联网服务提供方(ISP)提供与互联网的直接连接。网络接口1050可以经由直接网络链路提供与远程服务器的直接连接,或经由POP(入网点)提供与互联网的直接连接。网络接口1050可以使用无线技术提供此类连接,包括数字蜂窝电话连接、蜂窝数字分组数据(CDPD)连接、数字卫星数据连接等。
很多其他设备或子系统(未示出)可以通过相似的方式进行连接(例如文档扫描仪、数码相机等)。相反,不需要提供图10中示出的所有设备即可实践本发明的系统和方法。可以使用与图10中所示方式不同的方式来互连设备和子系统。计算机系统的操作(诸如图10中所示的操作)是本领域中所熟知的,在本申请中不进行详细论述。用于实现本公开的代码可以存储在非暂态计算机可读介质中,所述非暂态计算机可读介质诸如系统存储器1006、固定磁盘1052、光盘1044或软盘1034中的一者或多者。计算机系统1000上提供的操作系统可以是 或其他已知的操作系统。
此外,关于本文所述的信号,本领域中的技术人员将会认识到,可以将信号从第一块直接传输到第二块,或者可以在块之间修改(例如,放大、衰减、延迟、锁存、缓冲、反转、过滤或其他修改)信号。尽管上述实施例的信号被表征为从一个块传输到下一个块,但本发明的系统和方法的其他实施例可以包括经过修改的信号来代替这些直接传输的信号,只要信号的信息和/或功能方面在块之间传输。在某种程度上,由于所涉及的电路的物理限制(例如,不可避免地存在一些衰减和延迟),第二块上的信号输入可以概念化为根据来自第一块的第一信号输出派生得到的第二信号。因此,正如本文所用,根据第一信号派生的第二信号包括第一信号或对第一信号所做的任何修改,无论是由于电路限制还是由于通过不会改变第一信号的信息和/或最终功能方面的其他电路元件。
图11为示出网络体系结构1100的框图,其中客户端系统1105、1110和1115、以及存储服务器1120-a和1120-b(它们中的任一个均可使用计算机系统1000实现)耦接到网络1130。在一个实施例中,URI方案管理模块115-d可位于存储服务器1120-a、1120-b中的一个中以实现本发明的系统和方法。存储服务器1120-a还被示出为直接附接存储设备1125-a-1至1125-a-j,并且存储服务器1120-b被示出为直接附接存储设备1125-b-1至1125-b-k。SAN光纤网1140支持由存储服务器1120-a和1120-b并且因此由客户端系统1105、1110和115经由网络1130对存储设备1135-1到1135-m进行访问。智能存储阵列1145也被示为可经由SAN光纤网1140访问的特定存储设备的例子。
参考计算机系统1000,可使用调制解调器1048、网络接口1050或一些其他方法来提供从客户端计算机系统1105、1110和1115中的每一个到网络1130的连接。客户端系统1105、1110和1115能够使用例如网络浏览器或其他客户端软件(未示出)来访问存储服务器1120-a或1120-b上的信息。这类客户端允许客户端系统1105、1110和1115访问由存储服务器1120-a或1120-b、或者存储设备1125-a-1至1125-a-j、1125-b-1至1125-b-k、1135-1至1135-m中的一者、或者智能存储阵列1145托管的数据。图11示出使用网络(诸如互联网)来交换数据,但本发明的系统和方法不局限于互联网或任何特定的基于网络的环境。
虽然上述发明使用特定框图、流程图和例子阐述了各种实施例,但每个框图组件、流程图步骤、操作和/或本文描述和/或示出的组件可使用广泛范围的硬件、软件或固件(或其任何组合)配置单独和/或共同来实现。此外,包含在其他组件内的组件的任何公开内容应当被视为在本质上是示例性的,因为可实施许多其他体系结构来实现相同功能。
本文描述和/或示出的过程参数和步骤序列仅通过举例的方式给出并且可根据需要改变。例如,虽然本文示出和/或描述的步骤可以特定顺序示出或讨论,但这些步骤不必按示出或讨论的顺序来执行。本文描述和/或示出的各种示例性方法也可省略本文描述或示出的步骤中的一者或多者,或除了所公开的那些步骤之外还包括附加步骤。
此外,虽然本文已经在完全功能计算系统的背景中描述和/或示出了各种实施例,但这些示例性实施例中的一者或多者可作为各种形式的程序产品来分配,而不考虑用于实际进行分配的计算机可读介质的特定类型。本文所公开的实施例也可使用执行某些任务的软件模块来实现。这些软件模块可包括脚本、批处理或可存储在计算机可读存储介质上或计算系统中的其他可执行文件。在一些实施例中,这些软件模块可将计算系统配置为执行本文所公开的示例性实施例中的一者或多者。
出于阐释目的,已参考特定实施例描述了以上说明书。然而,以上示例性讨论并非旨在是穷举的或将本发明限制为所公开的精确形式。鉴于上述教导,许多修改形式和变型形式都是可能的。为了最好地阐释本发明的系统和方法的原理及其实际应用,对实施例进行了选择和描述,从而使本领域的其他技术人员能够最好地利用本发明的系统和方法以及具有可适于所设想的特定用途的各种修改形式的各种实施例。
除非另有说明,否则在本说明书和权利要求中使用的术语“一”或“一个”应当理解为是表示“...中的至少一者”。此外,为了易于使用,在本说明书和权利要求中使用的词语“包括”和“具有”与词语“包含”可互换并且与词语“包含”具有相同含义。

Claims (22)

1.一种用于识别向设备注册的一组URI方案的计算机实现的方法,包括:
枚举出URI方案名称以URI命名空间名称开头并以URI命名空间的第一个字符位置中的字符结尾的每个URI方案;
迭代地,将所述URI命名空间的下一个字符位置添加到每个所枚举的URI方案的所述URI方案名称中,并枚举出URI方案名称以所述URI命名空间的所述下一个字符位置中的字符结尾的每个URI方案;以及
识别向所述设备注册的所述组URI方案,即所述URI命名空间中URI方案名称分支的末端处的所述URI方案。
2.根据权利要求1所述的方法,还包括:
使用所述组URI方案中每个URI方案的URI方案名称访问与对应于每个URI方案名称的相应应用程序生态系统有关的信息。
3.根据权利要求2所述的方法,还包括:
通过访问存储在共享存储位置中的信息来访问所述与对应于每个URI方案名称的相应应用程序生态系统有关的信息。
4.根据权利要求2所述的方法,其中所述与对应于每个URI方案名称的相应应用程序生态系统有关的信息包括每个应用程序生态系统的标识符,所述方法还包括:
向所述设备的用户显示每个应用程序生态系统的所述标识符。
5.根据权利要求4所述的方法,还包括:
接收用户选择的一个应用程序生态系统;以及
发起加入所述用户所选的应用程序生态系统的进程。
6.根据权利要求4所述的方法,其中每个应用程序生态系统的所述标识符包括名称。
7.根据权利要求4所述的方法,其中每个应用程序生态系统的所述标识符包括图标。
8.根据权利要求1所述的方法,其中所述URI方案为URL方案。
9.根据权利要求1所述的方法,其中所述URI命名空间包括32个字符位置。
10.根据权利要求1所述的方法,其中所述URI命名空间包括16个字符位置。
11.根据权利要求1所述的方法,其中所述组URI方案包括由不同应用程序生态系统注册的至少两个URI方案。
12.根据权利要求3所述的方法,其中所述共享存储位置是iPhone操作系统粘贴板。
13.一种被配置为识别一组URI方案的计算设备,包括:
处理器;
与所述处理器电子通信的存储器;
存储在所述存储器中的指令,所述指令能够由处理器执行以进行以下操作:
枚举出URI方案名称以URI命名空间名称开头并以URI命名空间的第一个字符位置中的字符结尾的每个URI方案;
迭代地,将所述URI命名空间的下一个字符位置添加到每个所枚举的URI方案的所述URI方案名称中,并枚举出URI方案名称以所述URI命名空间的所述下一个字符位置中的字符结尾的每个URI方案;以及
识别向所述设备注册的所述组URI方案,即所述URI命名空间中URI方案名称分支的末端处的所述URI方案。
14.根据权利要求13所述的计算设备,其中所述指令还能够由所述处理器执行以进行以下操作:
使用所述组URI方案中每个URI方案的URI方案名称访问与对应于每个URI方案名称的相应应用程序生态系统有关的信息。
15.根据权利要求14所述的计算设备,其中所述指令还能够由所述处理器执行以进行以下操作:
通过访问存储在共享存储位置中的信息来访问所述与对应于每个URI方案名称的相应应用程序生态系统有关的信息。
16.根据权利要求14所述的计算设备,其中所述与对应于每个URI方案名称的相应应用程序生态系统有关的信息包括每个应用程序生态系统的标识符,并且其中所述指令还能够由所述处理器执行以进行以下操作:
向所述设备的用户显示每个应用程序生态系统的所述标识符。
17.根据权利要求16所述的计算设备,其中所述指令还能够由所述处理器执行以进行以下操作:
接收用户选择的一个应用程序生态系统;以及
发起加入所述用户所选的应用程序生态系统的进程。
18.根据权利要求15所述的计算设备,其中所述共享存储位置是iPhone操作系统粘贴板。
19.一种非暂态计算机可读介质,所述非暂态计算机可读介质上存储有用于识别设备上的一组URI方案的计算机可执行代码,所述代码能够由处理器执行以进行以下操作:
枚举出URI方案名称以URI命名空间名称开头并以URI命名空间的第一个字符位置中的字符结尾的每个URI方案;
迭代地,将所述URI命名空间的下一个字符位置添加到每个所枚举的URI方案的所述URI方案名称中,并枚举出URI方案名称以所述URI命名空间的所述下一个字符位置中的字符结尾的每个URI方案;以及
识别向所述设备注册的所述组URI方案,即所述URI命名空间中URI方案名称分支的末端处的所述URI方案。
20.根据权利要求19所述的非暂态计算机可读介质,其中所述代码还能够由所述处理器执行以进行以下操作:
使用所述组URI方案中每个URI方案的URI方案名称访问与对应于每个URI方案名称的相应应用程序生态系统有关的信息。
21.根据权利要求20所述的非暂态计算机可读介质,其中所述与对应于每个URI方案名称的相应应用程序生态系统有关的信息包括每个应用程序生态系统的标识符,并且其中所述代码还能够由所述处理器执行以进行以下操作:
向所述设备的用户显示每个应用程序生态系统的所述标识符。
22.根据权利要求20所述的非暂态计算机可读介质,其中所述代码还能够由所述处理器执行以进行以下操作:
接收用户选择的一个应用程序生态系统;以及
发起加入所述用户所选的应用程序生态系统的进程。
CN201380054896.5A 2012-10-29 2013-10-23 用于管理uri方案的注册和发现的系统和方法 Active CN104823429B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/663269 2012-10-29
US13/663,269 US8832254B1 (en) 2012-10-29 2012-10-29 Systems and methods for managing registration and discovery of URI schemes
PCT/US2013/066306 WO2014070543A1 (en) 2012-10-29 2013-10-23 Systems and methods for managing registration and discovery of uri schemes

Publications (2)

Publication Number Publication Date
CN104823429A CN104823429A (zh) 2015-08-05
CN104823429B true CN104823429B (zh) 2018-05-25

Family

ID=49551777

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380054896.5A Active CN104823429B (zh) 2012-10-29 2013-10-23 用于管理uri方案的注册和发现的系统和方法

Country Status (5)

Country Link
US (1) US8832254B1 (zh)
EP (1) EP2912829B1 (zh)
JP (1) JP6017699B2 (zh)
CN (1) CN104823429B (zh)
WO (1) WO2014070543A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9866382B2 (en) * 2012-12-21 2018-01-09 Mobile Iron, Inc. Secure app-to-app communication
US20160380968A1 (en) * 2015-06-26 2016-12-29 Intel Corporation Generating network device names
KR101992698B1 (ko) * 2017-06-16 2019-06-25 라인 가부시키가이샤 치팅 어플리케이션 식별 방법 및 시스템
US10733179B2 (en) 2018-04-04 2020-08-04 Schlage Lock Company Llc Access control with multiple security ecosystems

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101510892A (zh) * 2008-12-15 2009-08-19 中原工学院 用于网络通信系统的命名服务方案及利用其实现的通信方法
CN101536469A (zh) * 2006-11-22 2009-09-16 高通股份有限公司 链接到无线装置上的应用程序的设备及方法
CN102597993A (zh) * 2009-09-25 2012-07-18 国际商业机器公司 利用统一资源标识符管理应用状态信息

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7200862B2 (en) * 2002-09-30 2007-04-03 Microsoft Corporation Securing uniform resource identifier namespaces
US7613703B2 (en) * 2004-09-30 2009-11-03 Microsoft Corporation Organizing resources into collections to facilitate more efficient and reliable resource access
JPWO2006051955A1 (ja) * 2004-11-12 2008-05-29 株式会社ジャストシステム サーバ装置及び名前空間発行方法
CN100361553C (zh) * 2005-07-29 2008-01-09 华为技术有限公司 一种无线终端用户标识保存方法与装置
US20090157859A1 (en) * 2007-12-17 2009-06-18 Morris Robert P Methods And Systems For Accessing A Resource Based On URN Scheme Modifiers
US8667031B2 (en) * 2008-06-13 2014-03-04 Oracle International Corporation Reuse of shared metadata across applications via URL protocol
KR101957951B1 (ko) * 2010-09-17 2019-03-13 구글 엘엘씨 컴퓨팅 디바이스들 사이에서 정보를 이동시키기 위한 방법들 및 시스템들

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101536469A (zh) * 2006-11-22 2009-09-16 高通股份有限公司 链接到无线装置上的应用程序的设备及方法
CN101510892A (zh) * 2008-12-15 2009-08-19 中原工学院 用于网络通信系统的命名服务方案及利用其实现的通信方法
CN102597993A (zh) * 2009-09-25 2012-07-18 国际商业机器公司 利用统一资源标识符管理应用状态信息

Also Published As

Publication number Publication date
EP2912829B1 (en) 2016-12-28
EP2912829A1 (en) 2015-09-02
US8832254B1 (en) 2014-09-09
JP6017699B2 (ja) 2016-11-02
WO2014070543A1 (en) 2014-05-08
JP2016504645A (ja) 2016-02-12
CN104823429A (zh) 2015-08-05

Similar Documents

Publication Publication Date Title
US7854010B2 (en) Method and apparatus for searching rights object and mapping method and mapping apparatus for the same
GB2565411A (en) Improved hardware security module management
KR101177310B1 (ko) 전자 문서 보안 전송 중계 장치 및 방법
US20190026442A1 (en) Offline activation for application(s) installed on a computing device
TW201241668A (en) Method and device for managing digital usage rights of documents
GB2479916A (en) Access rights management of locally held data based on network connection status of mobile device
CN104823429B (zh) 用于管理uri方案的注册和发现的系统和方法
WO2014035650A1 (en) Mechanism for facilitating encryption-free integrity protection of storage data at computing systems
CN108108633B (zh) 一种数据文件及其访问方法、装置及设备
US20190238560A1 (en) Systems and methods to provide secure storage
US11159308B2 (en) Preventing an erroneous transmission of a copy of a record of data to a distributed ledger system
CN103930881A (zh) 托管存储锁定
CN103444152B (zh) 一种信息操纵方法和系统
JP2014036335A (ja) ジョブ処理システム、情報処理システム、ジョブ処理方法、情報処理方法、およびプログラム
US11658996B2 (en) Historic data breach detection
US20150227755A1 (en) Encryption and decryption methods of a mobile storage on a file-by-file basis
CN101714920A (zh) 集中多服务帐号的权限管理系统及其方法
US11316841B2 (en) Secure communication between an intermediary device and a network
KR101539811B1 (ko) 암호화 파일 시스템에서 입력/출력의 제어 및 효율성을 향상시키기 위한 방법 및 시스템
TWI701930B (zh) 用於管理密碼的方法、裝置和電腦儲存介質
CN115114670B (zh) 基于外链的文件解锁方法、装置、网盘及存储介质
US11734429B1 (en) Secure bios-enabled passthrough system
CN110324236B (zh) 事件记录的分享方法、装置和计算机设备
US20220094536A1 (en) Key generation systems and methods
US10187380B2 (en) User device, method for setting password thereof, and operating method for setting and verifying password thereof

Legal Events

Date Code Title Description
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200107

Address after: California, USA

Patentee after: CA,INC.

Address before: California, USA

Patentee before: Symantec Corporation

TR01 Transfer of patent right