具体实施方式
开始应当理解,尽管以下提供了本公开的一个或多个实施例的示意实施方式,但是可以使用任何技术(无论是目前已知还是现有)来实现所公开的系统和/或方法。本公开无论如何不应限于以下示出的所示实施方式、附图和技术(包括本文所说明和描述的示例性设计和实施方式),而是可以在所附权利要求及其等同物的全部范围内进行修改。
FCC条例规定的过程不包括认证TVBD或数据库或确保操作者信息私密性的任何方式。在没有这种认证过程的情况下,登记、频道分配和协调过程易于在用户中滥用或引发干扰。这里所描述的实施例提供了简单且低成本的有利于TVBD和数据库认证的方法和设备。这些技术不需要TVBD中的专门硬件,且针对TVBD的位置和商业信息提供了私密性保护。尽管将在TVBD及其关联数据库认证的上下文中描述本文所公开的实施例,但是应当理解,这些描述仅是示例。本文所公开的方法和设备可以应用于其它组件且其它情况下。
作为背景技术,现在提供针对FCC需要TVBD向TVWS数据库登记并查询的场景的描述。尽管该描述特定于FCC条例,但是其它管辖权(例如,EU、OFCOM)具有类似的针对白空间频道分配的数据库访问的需求,这里的实施例也可以应用于这种环境。
FCC概述的登记和频道分配过程如图1所示。该图示出了监管者(“FCC”)102、TVWS数据库管理器104、TVBD制造商106、TVBD安装者108、以及TVBD所有者/操作者110之间的关系。该过程的目的是:针对TVBD 112,要给予与TV波段的本地广播(和广播辅助)服务的主要使用相协调的TVWS频道分配。
FCC 102监管TVWS频道114,并提供通过其测试实验室和过程来提供设备证书116的过程。TVWS频道管理被委派给多个TVWS数据库管理器(线2)104。尽管图1中仅示出一个TVWS数据库管理器104,但是可以呈现多个TVWS数据库管理器。TVWS数据库管理器104负责在TVBD仓库118中的维护TVBD 112的记录、其频道使用及其位置。数据库管理器104还保持TV频道数据库120,该数据库指示了每个位置的白空间频道的可用性。图1中的虚线X表示将仓库118和数据库120的功能委派给数据库管理器104,以及FCC 102可以访问数据库管理器的文件中的信息。数据库管理器104还需要与其它数据库管理器共享其信息的各方面。虚线Y指示频道数据库120还可以包含与频道可用性有关的信息,以及由FCC记录提供的信息(例如,有线前端(head-end)接收机位置和来自其它数据库管理器的信息)。
当TVBD制造商106开发TVBD 112时,设备112被认证与FCC可应用条例相兼容(例如,通过在FCC实验室中的测试)(线1)。当实现该认证时,制造商106接收针对该产品的FCC设备ID号122(线1a)。FCC 102维护认证设备112及其制造商106的自身文件(FCC数据库124)和FCC ID号122。FCC设备ID号122是设备型号标识,而不是用于识别各个设备的序列号。具有FCC ID号122的各个设备122还具有其自身的唯一序列号。
当出售了TVBD 112时,TVBD安装者108使用FCC设备ID号122和TVWS设备的位置126(其安装地点),向TVWS数据库120登记设备112。TVWS数据库管理器104将设备信息(FCC ID号122和位置126以及设备所有者110的详情)存储在TVBD仓库118中(线3)。当登记的移动TVBD 112或固定TVBD 112进行操作时,FCC 102所需的输入数据库仓库118的信息包括设备的FCC ID号122、序列号和位置126。针对固定位置的设备112,要提供的附加信息包括负责该设备的个人或单位的名称、负责该设备的操作的联系人的名字、该联系人的地址、该联系人的电子邮件地址、以及该联系人的电话号码。
当TVBD所有者/操作者110(也可以是安装者108)想要使用TVWS频道114进行通信时,所有者/操作者110与TVWS数据库管理器104联系(参考设备的当前位置126),并查询在该设备位置126处的可用频道(线4)。来自TVWS数据库管理器的TV频道数据库120的响应可以列出可用TVWS频道114(线4a)。在一些位置上,可能没有可用TVWS频道114。设备112可以选择可用频道114之一作为其TVWS频道分配128(线5)。可用频道114的列表还可以在登记时由TVBD 112接收,但是TVBD 12需要与TV频道数据库120保持定期联系,以被通知针对其位置的频道可用性中的任何改变。
FCC 102可以约定多于一个数据库管理器104(本文中也被称为“登记器”)。管理器104可以单独提供其服务、或与其它管理器104协作提供其服务。数据库管理器104和登记器可以是相同实体,或者可以是独立的。多个数据库管理器104彼此共享关于登记的信息。数据库管理器104还可以在其数据库120中包括在TV波段(如TV有线前端位置和其它广播辅助服务(如,无线麦克风))操作的其它系统。在数据库120中包括这些类型的系统通过确保在其本地区域排除TVBD操作来保护这些类型的系统的操作。
在FCC的条例中,允许TVWS数据库管理器104对登记和向其数据库120查询可用频道进行收费。一些TVWS数据库管理器104会期望通过收费来进行商业活动码,该收费是针对其数据库120的登记和查询以检查可用频道来进行的。当首次部署时,需要每个TVBD 112的登记。需要在安装/开机时以及在之后定期(例如,24小时)针对固定TVBD 112进行频道数据库查询。移动设备112还必须在开机时向数据库登记器/管理器104登记,并在每次改变位置或以24小时的最大间隔检查频道可用性。
由于针对与数据库规律交互的设备存在监管需求,期望具有这样的过程,使得设备和数据库管理器可以防止被欺诈,尤其在针对每个数据库的登记和查询交互可能涉及费用时。TVBD会需要验证它们正在向合法数据库管理器登记并查询,以及数据库管理器会需要验证:它们仅与认证的TVBD(及其它认证的数据库管理器)登记和交互,以及可以收取它们的费用。此外,尤其对于可以频繁改变位置的移动设备,会期望将查询收费保持最小,并且针对费用,会期望要分配给正确的TVBD或账户。在设备与数据库管理器之间的交互可以通过因特网发生时,有可能创建“假扮的”管理器来错误地收取费用,并且有可能创建“克隆的”设备通过向其它设备收取费用来获得对TVWS频道的访问。一些TVBD用户和一些监管域还会关心位置的私密性和与其TVBD相关联的商业信息。
尽管在因特网中使用了许多安全方法,但是期望TVBD所使用的安全方法具有极低的成本,因为它们在以下市场中竞争:其中,备选波段可能不具有数据库管理器且可能不会收取费用。例如,不应需要TVBD来实现复杂的计算强度大的加密过程,或者不应需要TVBD参与与数据库管理器的复杂协议交互。由于TVBD的量大且成本低(例如,每年售出上百万的设备),对于每个设备和数据库管理器来说,保持单独的密钥是不切实际的,或者在数据库管理器与TVBD之间预先安排共享秘密也是不切实际的。
例如,普通的因特网安全方法通常具有两个阶段。一个阶段在连接两端之间建立安全(“私密”)链路。第二阶段认证端设备(例如,验证其身份)。这些阶段可以是独立的;即,一些方法可以不建立安全链路,一些将安全链路和认证过程结合。在典型的因特网交换中,建立安全链路,然后使用用户名和密码的交换来对设备进行认证。不期望利用用户名和密码认证TVBD,因为这需要针对每个单独设备确立预先设置的用户名和密码,这对于上百万的低成本设备是不切实际的。
其它因特网协议(如,可扩展认证协议传输层安全(EAP-TLS))利用公钥加密技术,其中每个设备具有唯一的公/私钥对。然而,针对设备认证,数据库管理器需要知道每个设备的公钥。这通常使用保持所有公钥并可以向想要认证TVBD的数据库管理器提供密钥的认证拷贝的受信管理机构(“认证管理机构”)来实现。然而不期望地,这涉及另一数据库的支出和复杂性,并且还需要TVBD能够执行复杂的公钥加密过程。
此外,由一些移动电话系统使用认证技术(例如,订户标识模块(SIM)卡)也是不切实际的。这种系统需要将每个单独的移动电话账户向服务提供商(或网络运营商)预先登记,并且仅该提供商可以验证设备的身份。一些协议(例如,EAP SIM和EAP AKA)可用于使得能够对于外部方确认移动设备的可靠,这些可以用于认证也是移动网络设备的TVBD。然而,通常,对于每个TVBD来说,也保持移动网络订阅是不切实际的。普通因特网和移动网络安全协议因而自身不适于TVBD与数据库管理器之间的简单且低成本的相互认证。
尽管已经讨论了免费提供服务的数据库管理器的概念(这将最小化针对TVBD安全过程的需求),但是这种实践由于在如FCC的条例所规定的管理TVWS登记设备和数据库的过程中涉及的真实成本而不太可能。即使数据库查询免费,仍然存在可应用的通信收费。
除了这些安全性顾虑之外,TVBD会需要能够在售出后自动登记(即,它们可以不是预先登记的)。TVBD还会需要在移动到新位置或分配了新数据库管理器或商业安排发展时改变其登记。
有利地,存在在TVBD和数据库管理器之间提供安全性的方法,在TVBD中不需要附加的加密过程,并且不需要在设备和数据库管理器或密钥管理机构或安全服务器之间分配和保持秘密(例如,密钥)。该方法应当保护不受充当(收取费用的)数据库管理器的假扮者的侵害,并防止设备标识被克隆,以避免支付频道数据库访问费用。有利地,该方法为设备所有者和数据库管理器提供了所有权关系和商业安排的改变,并提供了免受普通因特网骗局的保护和拒绝服务攻击。此外,有利地,登记和TVWS数据库查询过程保护TVBD的位置和联系信息的私密性。
本文公开的实施例以对于TVBD操作者、制造商和数据库操作者来说成本最小为目的解决了这些问题。例如,实施例不需要数据库管理器保持TVBD的密钥的列表。也不需要TVBD具有与其证书相关联的密钥或加密过程的任何知识。在这些实施例中提供的方法和设备提供了确保设备登记和数据库查询的高级方法,其易于实现、低价、足够安全、确保用户信息私密性、耐攻击、并且能够适应过程、条例和商业安排中的改变。
尽管本文在与数据库管理器相交互的上下文中针对诸如TVWS之类的机会谱分配(opportunistic spectrum assignments)描述了这些实施例,但是这些实施例也可以用于其它应用,如基于位置的服务(或其它基于网络的服务),其中期望设备和服务器相互认证并保护设备所发送的信息,但不需要预先设置对于每个设备和服务器已知的公共秘密。这些实施例还可以应用于以下任意场景,其中数据库管理器帮助向移动设备分配无线资源(例如,信道和定时),如在许可、交叉许可或未许可分配中可能出现的。这些实施例确保设备正在从数据库管理器接收授权信息,因而可以根据接收到的信息合法地操作其无线设备。这确保了设备的安全和无干扰的操作。
本实施例提供了用于设备与管理数据库的交互的方法和装置。实施例利用加密技术,使用公私钥组合来实现设备与数据库的相互认证,并针对提供给管理数据库储存器的信息提供私密性保护。例如,可以使用私密性保护,以确保对设备位置和商业细节的保护。在实施例中,设备包括密钥和商业信息的存储装置和与数据库管理器交互的处理装置。实施例不需要设备向管理器预先登记,或共享在设备和数据库管理器之间设置的秘密。实施例利用单个消息和应答在设备和数据库管理器之间建立充分认证,因而在实现和操作方面具有非常低的成本,同时最小化信令开销。
本实施例通过利用由制造商作为制造过程的一部分在TVBD中安装的证书来为TVBD和数据库管理器提供安全性。该证书通过使用制造商、监管者和一个或多个数据库管理器的公/私钥来创建。验证过程利用针对通信嵌入TVBD中的密码学能力,因而不需要特别的装置或过程来确保安全的数据库交互。通过以独立密钥保护的位置信息层级来提供位置信息的私密性。
本实施例以仅单个查询和单个响应消息来实现TVBD与数据库管理器之间的安全通信。不必交换一系列多个消息来确立可靠性。这相比于现有认证方法是有利的,现有认证方法会需要多个质询/响应交换来建立安全信道和可靠性。
综上所述,大约在制造时在TVBD中包括制造商证书,从而数据库管理器与TVBD可以彼此相互认证。当TVBD向数据库管理器发送登记消息或TVWS频道查询消息时,TVBD在消息中包括证书。数据库管理器使用私钥从证书中提取信息,并使用该信息验证TVBD的可靠性。数据库管理器然后使用证书中包括的密钥来对返回TVBD的消息进行加密。返回TVBD的消息可以包含关于在TVBD附近可用的TVWS频道的信息。如果TVBD成功解密了该消息,则验证了数据库管理器的可靠性。关于TVBD的私密信息对于数据库管理器保持加密且不可用。然而,可以通过使用监管者证书而使该私密信息对于监管机构可用。尽管这些特征在本文描述为彼此结合使用,应当理解,这些特征可以各自独立使用。
现在将提供这些实施例的细节。在实施例中,制造商大约在制造时在TVBD中安装包括对于每个设备唯一的设备密钥的证书。应注意,这里所使用的词“证书”与普通安全协议中使用的“证书”的含义和结构略有不同。与典型的证书一样,这里所公开的证书是实现通信节点的验证的交换对象。然而,这里所公开的证书的结构还包括一些信息字段,它们的使用和验证不同于其它通信协议的标准化(签名)散列证书。这里所公开的证书包含以下详细讨论的多个唯一元素。
使用制造商私钥对制造商证书进行加密,并在一些情况下进行签名。使制造商的相应公钥公开可用。例如,可以在制造商的网站上公布公钥,制造商的网站地址可以在FCC的网站上获取、或从数据库管理器的信息存储器中获取。在可选实施例中,可以通过监管者所拥有/管理的证书管理机构来发布制造商公钥。在其它可选实施例中,针对每个制造商产品(例如,针对每个FCC ID号)或产品组,可以存在单独的制造商公钥。这种设置将会保护制造商私钥的安全。应注意,TVBD自身不应提供对公钥的引用,因为证书的验证者应当独立获得证书签名者的公钥,以避免冒名顶替者引用错误的密钥。
为了免受克隆证书或欺诈管理器侵害,证书保护可以用于认证TVBD和数据库管理器的信息。证书包括以下字段:该字段包含通过数据库管理器的公钥加密的TVBD唯一通信密钥。该加密字段还可以可选地包含附加私密信息,如对TVBD账户的引用。当向数据库登记或查询时,TVBD向数据库管理器出示其证书。
一旦接收到证书,数据库管理器或证书的任意其它接收方可以使用制造商的公钥来解密证书,以对证书进行初始验证。数据库管理器还可以验证校验和,并确认FCC ID和设备标识与数据库匹配。如果发现匹配,数据库管理器认为TVBD合法。数据库管理器还使用私钥解密TVBD唯一通信密钥字段,以获得TVBD唯一通信密钥。然后,数据库管理器使用该TVBD唯一通信密钥,利用设备所支持的密码学过程(例如,高级加密标准(AES))来加密到该设备的消息。
TVBD使用TVBD唯一通信密钥及其具有的作为其装置一部分的加密针对其用户通信的业务的固有加密过程(例如,AES),来解密来自数据库管理器的加密消息。报告作为证书一部分的TVBD所支持的算法,以使数据库管理器知道使用的加密过程(例如,由管理器的公钥加密的“密码类型”字段)。在一些情况下,数据库管理器和TVBD可以使用通信密钥来建立用于该通信会话或存储并用于将来通信的新会话密钥。
图2示出了制造商证书的一般结构的实施例。由制造商私钥204通过信息字段的加密202来创建制造商证书200。发送给数据库管理器的登记或查询消息包括该证书200以及其它设备信息(例如,FCC ID号122、TVBD标识号206、TVBD类208和数据库管理器ID 210)。
图3示出了可选实施例,其中证书使用签名过程。在该配置中,制造商密钥204用于对设备信息(例如,FCC ID号122、TVBD标识号206、TVBD类208、数据库管理器ID 210和加密通信密钥和账户304)进行“签名”302。针对这样的签名存在多种标准过程,任意一种均适用于本实施例。典型地,通过使用制造商私钥204对通过对设备信息进行散列所创建的字段进行加密来创建签名306。图3的证书具有短于设备信息的长度,而图2的证书与设备信息具有基本相同的长度。
图3的发送给数据库管理器的消息包括签名证书以及其它设备信息(例如,FCC ID号122、TVBD序号206、TVBD类208、数据库管理器ID 210和加密通信密钥和账户304),如图中的顶行所示。该配置具有以下优点:与完全加密技术相比,通信消息在长度上显著缩短(例如,大约三分之二)。还具有以下优点:在证书内不需要校验和字段,因为消息散列的加密提供了免受传输差错影响的保护,并确保应用正确密钥。
利用这些特征,保护TVBD和数据库管理器免受克隆或拷贝证书的侵害,并且确保TVBD正与授权的数据库通信。防止了克隆证书,因为无法创建克隆证书,除非“克隆者”知道制造商私钥。只有制造商可以做出证书。在工厂计算证书并将其安装在设备中,因而无需TVBD能够进行公钥加密过程或知道制造商私钥。欺骗设备无法使用合法设备的证书,因为它将不会知道在证书中隐藏并且只能由预期数据库管理器解密的唯一通信密钥。
在图2和3中示出了使用制造商的“私”钥204创建证书200和签名306。在实施例中,这些私钥204是非对称私/公钥对的一半。在这些配置(通常被称为公钥加密)中,使用仅制造商知道的私钥204执行加密,但使用公开已知的公钥来执行解密。该过程确立由制造商创建证书,制造商是知道私钥204的唯一实体。
这里所公开的证书创建方法使用“对称私”钥同样有效。在该配置中,使用仅对于制造商和数据库管理器已知的私钥加密证书。这些密钥具有加密过程通常执行起来不太昂贵的优点,但具有仅可由制造商私钥的持有者验证证书的缺点。此外,由于该密钥对于制造商和数据库管理器均已知,该技术更易于受到安全威胁。
如这里所使用,术语“密钥”可以指私/公钥对的任一部分、私/公钥对两部分的组合、私/私(对称)密钥系统的发送方或接收方密钥、或发送方和接收方密钥二者。例如,如果使用公钥密码学方法,可以使用私钥进行加密,使用公钥进行解密或反之。在该情况下,这里所使用的术语“密钥”可以指私钥、公钥或私钥和公钥的组合。如果使用私钥(对称)加密方法,则使用私钥用于加密和解密二者。在该情况下,这里所使用的术语“密钥”可以指私钥之一、两个私钥。
为了创建要安装在设备中的证书200,制造商选择唯一通信密钥212。其一般为具有针对TVBD所支持的密码类型214(例如,AES)的适合长度(例如,512比特)的整数。制造商还可以可选地包括附加信息,如要用于记账的账号216(或对账号的引用)。例如,可以通过数据库管理器使用账号216,以对访问费用进行记账,并选择针对该设备签订的服务和特征。还可以提供校验和字段218,以使接收机能够验证是否正确解密了通信和证书的账户字段。
可以使用任意适合的方法(如简单总和或证书的元素的散列函数)来创建校验和218。如下所述,提供校验和218以使接收实体能够快速确定是否使用了正确密钥212进行解密,并因而确认已经对密钥212和账户信息216进行了正确地解码。密钥212的长度可以通过TVBD、区域或国家改变,密码类型字段214可以包含关于密钥长度、以及密码类型的信息。在一些实施方式中,通过制造商标识和标识码来暗示密码类型、密钥长度或检验和过程。即,该信息可以是针对具有相同制造商FCC ID号的所有设备预定义的。然而,对于这些项来说,优选编码为密码类型字段214的一部分,从而可以在新过程或操作需求需要时进行改变。
然后,使用登记器/管理器公钥222,对密码类型214、TVBD唯一通信密钥212、账户参考216(如果有)、以及校验和218的组合进行加密220。然后,使用FCC ID号122、设备标识号206、TVBD类208、数据库管理器ID 210、加密的通信密钥304、以及图2情况下的检验和224,对证书进行组装。可以使用任何适合的方法(例如,证书200的元素的简单总和或散列函数)来创建校验和224,并且该校验和224可以提供为证书200的一部分,从而接收机可以容易地确定证书200是否被成功解密。TVBD类208指示监管者(例如,FCC)所概述的TVBD的类。
在图3的情况下,然后使用制造商私钥204,对FCC ID号122、标识号206、TVBD类208、加密通信密钥304和校验和224的组合进行认证或“签名”302。该认证序列成为在制造时安装在TVBD中(例如将参照图4描述的,记录在TVBD制造商证书数据库404中)的制造商证书。制造商还在设备中安装TVBD唯一通信密钥212(例如将参照图4描述的,该密钥212记录在TVBD控制器的受保护存储器406中)。
数据库管理器ID 210可以用于支持多个数据库管理器的操作。在一个备选中,数据库管理器ID 210可以指示保持用于对TVBD唯一通信密钥212和账号216进行加密的公钥(登记器公钥222)相对应的私钥的登记器/管理器的标识。在实施例中,每个登记器/数据库管理器具有其自身的公/私钥对。在TVBD制造时,制造商与数据库管理器做出商业安排,并在TVBD中安装利用数据库管理器ID 210和使用该登记器/管理器的公钥222编码的制造商证书200。
TVBD还可以被配置有如将参照图4进行描述的登记器/管理器的地址426。在登记或数据库查询时,可以向管理器地址426发送消息,并且可以由进行接收的管理器进行解密。在实施例中,地址426(尽管唯一)是可以在制造之后商业关系发生改变的事件中将消息重定向至适合的登记器/数据库管理器的代理服务的地址。
在其它实施例中,登记/数据库查询可以发送给任一登记器/数据库管理器,然后可以基于在制造商证书200中包括的数据库管理器ID210将该消息转发给适合的登记器/管理器。
尽管可以通过使多个数据库管理器全部使用相同的公/私钥对来操作多个数据库管理器,但并不期望如此,因为公共私钥的泄露会危及所有TVBD和所有管理器的安全。在可能存在多个管辖权(如跨国际边界)的实施例中,TVBD可以安装有可以在每个管辖权内使用的多个制造商证书。设备可以使用其位置知识来针对TVBD的位置选择哪个证书和地址用于联系适合的登记器/数据库管理器。可选地,TVBD可以向本地登记器/管理器查询它应当提交的证书。
在制造了TVBD并安装了指向数据库管理器的证书之后发生在制造商与数据库管理器之间的商业安排的改变的事件中,充当原始管理器代理的新数据库管理器可以在TVBD中安装新的证书和通信密钥,将向新数据库管理器指示将来的查询。可以基于单独设备或基于设备的产品类型或其它分组来安装新证书和密钥。可以随时安装新证书。例如,在所有权关系改变之后登记的设备可以将它们的新证书安装作为数据库管理器登记过程的一部分。
在登记时或针对TVWS数据库查询时,TVBD发送证书(以及设备的FCC ID、标识号和数据库管理器ID)给登记器或数据库管理器,以确立TVBD的可靠性。如图2和3所示,使用TVBD的唯一通信密钥212来对TVBD的位置和商业信息(例如,所有者和联系人姓名)进行加密。如在图2所示通过解密证书200、或如图3所示使用制造商公钥来验证签名306来确认证书200的有效性。数据库管理器通过使用指向制造商的设备的FCC ID号122和相关公钥来确定验证证书200或签名306所需的公钥。
如果在解密之后校验和224正确、以及如图2所示FCC ID号122和TVBD标识号206匹配由TVBD所发送的FCC ID号122和TVBD标识号206、或如果如图3所示验证了签名306,则可以由接收机确定证书200的正确解密。如果FCC ID号122和TVBD标识号206不匹配,则接收机(即,数据库管理器或登记器)可以推测证书200无效。可选地,在传输中可以存在差错。然后,登记器或数据库管理器可以请求TVBD重新发送请求和证书200。
如果证书200示为有效,则登记器或数据库管理器可以通过使用登记器私钥解密那些字段来恢复加密通信密钥212和账户信息216。如果在解密之后校验和224有效,则可以推测字段有效。如果校验和224不匹配,则证书200会是无效或会在传输中存在差错,以及登记器或数据库管理器可以请求TVBD重新发送请求和证书200。这样,不需要校验和224的使用,提供了验证使用了正确密钥212且解密成功的快捷方便的方式。
如果验证了证书200并恢复了通信密钥212,则登记器可以使用通信密钥212来解密消息中指示设备粗略位置的其它字段。例如,可以对位置的最高有效数字进行解密。登记器可以将该信息放入所登记TVBD的储存器中。此时,并没有完全确立TVBD的可靠性,因为先前收听到的登记消息可能被另一(欺骗)TVBD重放。然而,重放登记消息的设备将不会具有真实设备的唯一通信密钥212,因而将无法响应于登记或查询利用由管理器发送的频道或其它信息。通过该方法,重放攻击的影响限于伪造登记或数据库查询。如下所述,通过设备的唯一通信密钥212对设备的坐标进行加密,因而重放查询或登记消息的欺骗设备无法获取针对其位置的数据库响应,因为欺骗设备无法提交其坐标作为重放查询的一部分。
一旦登记了TVBD,登记器可以向确认成功登记的TVBD发送消息。使用在解密证书字段中指示的密码类型214和TVBD唯一通信密钥212,对到达TVBD的消息进行加密。该消息可以包括TVBD已经被登记的信息和(如果请求)针对TVBD的位置的可用频道的列表。
如果TVBD从登记器接收响应,并能够使用其通信密钥212成功将其解密,则它知道它已向合法数据库登记,并且可以被通知可用TVWS频道。
图4示出了在TVBD中可能出现、以使TVBD可以执行这里所描述的实施例的组件。可能包括在TVBD中的组件包括:TVBD寄存器/数据库交互处理器402、制造商证书的存储区域404、以及通信密钥存储器406。可选地,可以在附加证书存储器408和/或附加密钥存储器410中通过制造商或登记器/数据库管理器来存储附加证书和/或密钥。除了先前存在的通信接口412之外,这些元件可以是无线连接的关联天线414、有线连接416、密码处理装置418、位置信息420、TVBD存储器422、以及TVBD的其它元件424。TVBD还存储其FCC ID号122、其标识号206、以及登记器/数据库管理器的地址426或代理。
在一些实施例中,制造商证书存储器404、通信密钥存储器406、附加证书存储器408、以及附加密钥存储器410可以是TVBD中永久性的一般TVBD存储器422的一部分。类似地,TVBD寄存器/数据库交互处理器402可以是在以其他方式操作TVBD的控制处理器上实现的一组功能(例如,在TVBD的控制处理器上运行的应用程序代码)。TVBD寄存器/数据库交互处理器402可以与通信接口412、TVBD存储器422、密码处理装置418和TVBD的其它元件424连接。TVBD寄存器/数据库交互处理器402获取制造商证书,以成为发送给登记器/数据库管理器的消息一部分。TVBD寄存器/数据库交互处理器402还从存储器406中获取通信密钥,并将其与密码处理元件418一起使用,对通过通信接口412发送给登记器/数据库管理器并从登记器/数据库管理器发送的消息内容进行加密和解密。TVBD寄存器/数据库交互处理器402还获取FCC ID号122、标识号206和登记器/数据库管理器的地址426,已成为消息内容的一部分。TVBD寄存器/数据库交互处理器402还可以接收它验证并存储在附加证书存储器408和/或附加密钥存储器410中用于之后通信的附加证书、密钥和/或更新。TVBD寄存器/数据库交互处理器402还可以从TVBD的其它元件获取位置信息420,并使用通信密钥和密码处理器418对其进行加密,以传送到登记器/数据库管理器。TVBD寄存器/数据库交互处理器402还从数据库管理器接收消息,使用通信密钥对其进行解密,并且如果它们包含TVWS频道分配,则向TVBD的其它元件通知所允许的频道。
一些TVBD用户会关注FCC所需要的信息,如设备、所有者和位置信息,以成为另一实体所操作的大数据库的一部分。由于该信息仅需要在存在要由监管者(例如,FCC或其指派)解决的干扰问题时可见,所以优选对该信息进行加密,以使仅监管者可以解锁该信息。如上简要讨论的,可以通过使用TVBD的通信密钥加密TVBD的位置坐标和登记信息来实现私密度。这保护TVBD的位置和商业信息的知识不被通信路径上的偷听者获取,并且该加密确保TVBD:仅授权的登记器/数据库管理器可以接收TVBD的位置信息,因为它由登记器私钥和TVBD通信密钥所保护。然而,一些用户会担心存在保持所有设备的所有位置和所有权关系信息的数据库的数据库管理器,因为这会被认为是敏感商业信息。确实,在一些管辖权中,存在保护私密性并防止该信息滥用的合法需求。
在实施例中,为了保护登记和位置信息的私密性,制造商可以在设备中安装与先前所描述的制造商证书相类似的监管者证书。监管者证书可以用于向监管者(FCC)验证TVBD的身份,并将监管者通信密钥传送给监管者,使得监管者可以对TVBD位置和商业信息进行解密。
完整的TVBD位置信息可以对于FCC可用,但通过将位置信息分为两部分而保持其对于数据库管理器不可访问。针对TVWS频道分配,TVBD的位置所需的分辨率可以限于几百米,而TV覆盖区域在范围上可以是数十千米。在实施例中,通过使用TVBD的位置坐标的最高有效部分来访问位置/频道数据库,以保持TVBD的位置的私密性。例如,使用仅由监管者(例如,FCC)可使用TVBD唯一监管者通信密钥访问的加密密钥,对位置信息的最低有效数字(“位置精细部分”)进行加密。换言之,仅使用数据库管理器公钥,对TVBD的粗略位置进行加密,而使用监管者通信密钥,对一般位置内的TVBD的更详细位置进行加密。数据库管理器将仅会看到粗略位置,而数据库储存器将会包含受监管者通信密钥保护的详细位置的加密版本。
也可以使用监管者通信密钥对FCC所要求的登记信息进行加密。可以在数据库中存储详细位置和商业所有权关系详情、以及由设备提供的监管者证书,但是由于加密,将不会对于数据库管理器可读。然而,如果存在干扰问题,则向监管者(或监管者的指派代理)传送所关心的一般区域中的所有设备的(加密的)详细位置及其监管者证书,可以(使用监管者私钥来获得TVBD的监管者通信密钥)对该信息进行解密,确定精确位置,并使用所有权关系和登记信息来解决该问题。
在图5中示出了监管者证书的实施例。使用证书500,监管者可以针对单独的TVBD访问数据库中受保护的信息。在实施例中,当存在干扰问题(或其它需求)时,数据库管理器向监管者发送监管者证书500和其它设备数据库信息。然后,监管者可以通过使用制造商公钥解密来验证证书500。然后,监管者可以(使用监管者私钥)对TVBD的唯一监管者通信密钥502进行解密。然后,TVBD的唯一监管者通信密钥502可以用于解密TVBD的详细位置信息和商业信息。详细信息可以用于帮助消除干扰或其它操作问题。
图5的配置示出了通过加密设备信息而形成、且与图2的证书200类似的证书500。使用与图3类似的签名过程的可选配置也可以用于缩短消息并减小针对监管者证书500的存储需求。
在实施例中,在登记或数据库查询时,TVBD如上所述发送其监管者证书500及其制造商证书。利用TVBD唯一通信密钥加密商业信息,并将其发送给登记器/数据库管理器。以两部分发送位置信息。发送仅以TVBD唯一通信密钥加密的位置的最高有效部分,而也以TVBD的唯一监管者通信密钥502加密最低有效部分。(发送完整的加密位置信息和未加密的粗略信息是不好的实践,因为这会使信息暴露给部分明文攻击。)将监管者证书500和关联的位置信息发送给通过TVBD唯一通信密钥加密的数据库管理器,从而甚至关于设备的粗略位置信息也被保护免受通信信道上的偷听。
图6示出了发送给登记器/管理器以进行登记或数据库查询的信息的结构的实施例。消息600包括消息报头602和校验和604、以及对于通信协议(例如,点对点协议(PPP))来说适合的这种其它开销。消息600还包括TVBD的FCC ID 122和标识号206及制造商证书200。本实施例不要求将加密应用于这些元素,但是与这些实施例不相关的其它链路加密(例如,TLS)可以应用于消息600。消息600还包括TVBD位置粗略部分606、TVBD监管者证书500、商业信息608、以及位置精细部分610。使用TVBD的监管者通信密钥对商业信息608和位置的精细部分610进行加密。通过TVBD唯一通信密钥对TVBD位置粗略部分606、TVBD监管者证书500、商业信息608和位置精细部分610进行加密。如上所述,登记器/数据库管理器可以对位置部分进行解密,以确定TVWS频道的可用性。将包括标识信息122和206、制造商证书200、监管者证书500和加密位置信息和商业信息608的消息存储为储存器中的记录。如下所述,管理器还可以存储TVBD的网络地址(例如,IP地址),以允许与TVBD的将来通信。
消息600还可以包括以TVBD唯一通信密钥加密的可选交易号612。在一些实施例中,可以针对每个通信交易将该号612递增,以保护免受通信系统上的“重放攻击”。(在重放攻击中,网络中的欺骗设备向接收方“重放”先前听到的消息。有时,该重放将会具有改变的报头,并返回地址以试图欺骗接收方以信息响应欺骗设备。有时,重放是“拒绝服务攻击”的变体,因为它以看似有效的查询充斥(flood)接收方)。包含交易计数器有助于接收方快速丢弃无效消息。也就是说,数据库管理器期望针对TVBD发送的每个有效消息,在该字段中看到递增的数字。
在一些配置中,该计数器612还可以用于区分初始登记消息和频道查询消息。第一消息(具有第一交易号)将会是设备向数据库的初始登记。具有其它交易号的后续消息将会是数据库查询。针对这些后续消息,数据库管理器不需要以关于固定设备的信息更新其储存器,因为设备已经进行了登记。
在实施例中,如果需要消除干扰,则登记器/数据库管理器向监管者发送在怀疑位置附近的设备的全部记录。在图7中示出这种消息700。该消息700具有与图6的登记消息600类似的结构,使用适于通信协议(例如,PPP)的消息报头602和校验和604。消息内容包括消息ID 702、管理器证书800(这将参照图8进行描述)、以及关于从登记仓库报告的一个或多个设备的信息。在这些消息700中,使用管理器唯一通信密钥,对关于TVBD的信息进行加密,商业信息608和详细位置610也通过TVBD的唯一监管者通信密钥进行加密。在该和其它消息中,可以包括本公开中没有描述的附加字段。
图8示出了管理器证书800的实施例,其具有与图2的制造商证书200和图5的监管者证书500类似的结构。图8的配置示出了通过对设备信息进行加密而形成、且与图2的证书200相类似的证书800。使用与图3相类似的签名过程的可选配置也可以用于缩短消息并减少针对管理器证书800的存储需求。
利用该数据库查询方法,可以保护位置信息和商业信息免于向数据库管理器公开,当监管者需要该信息进行干扰消除时,使该信息可用。因此,用户可以利用在TVWS频道中进行操作,而不关心通过与数据库的交互危及其商业兴趣的安全。
在一些管辖权(例如,EU)中,监管者或网络运营商会需要设备始终符合规定,甚至在操作会需要来自外部数据库的信息时。这种操作可以包括在运营商域中的许可频道的使用、或在多个域中许可或未许可频道的组合。这里概述的实施例使设备能够查询外部数据库并按照安全的、且确保接收到的信息来自授权数据库的方式接收操作信息。因此,实施例能够通过仅以来自授权数据库的信息进行操作来使设备符合规定。
在一些实例中,监管者会需要禁止所有特定类型的设备(例如,具有指定FCC ID号和标识号范围)使用TVWS频道。这会由于设备参与干扰情况而发生。该场景易于通过本实施例的方法和装置而解决。为了禁用TVBD,登记器/数据库管理器可以向TVBD发送以设备的唯一通信密钥加密的消息,指示不存在可用的TVWS频道。一旦接收到该消息,TVBD将会解密该消息,验证它来自未授权的数据库管理器。由于不存在指示为可用的频道,TVBD将会停止它在TVWS频道中的操作。该限制消息可以响应于TVBD做出频道查询(例如,作为定期24小时查询的一部分)而发送,或者可以作为到TVBD的定向消息发送。注意,为了向TVBD发送消息,数据库管理器需要知道TVBD的地址(例如,IP地址)。当TVBD需要定期24小时更新或做出一些其它请求时将会知道该地址。为了介入定向到TVBD的定向消息,数据库管理器还可以根据其最新查询来记录TVBD的网络地址。一旦接收到指示不存在可用频道的消息,TVBD将会停止它在TVWS频道中的操作。
图9是示出了针对设备和登记器/数据库彼此相互认证的操作方法和登记器/数据库向设备提供频道分配的一系列事件的实施例900的图示。该方法利用在TVBD、数据库管理器和登记器之间交换的消息。可以使用任何标准方法来交换这些消息。例如,EAP可以用于在TVBD与登记器/数据库管理器之间传输标识和证书。例如,一般EAP-TLS可以扩展为包括针对该方法中使用的证书交换和验证的方法的信令支持。应注意,本实施例与所定义EAP-TLS的不同之处在于,该方法不需要TVBD保持与客户端证书相关联的私钥,因而更为安全、较小计算强度、且成本低。
利用本实施例,TVBD也不需要知道或不需要执行使用与证书相关联的私钥所需的加密功能。例如,诸如传输层安全(TLS)的形式之类的过程可以与这些实施例一起使用,以在TVBD与登记器/数据库管理器之间建立安全通信信道,并通过该安全通信信道可以交换这些实施例的消息。然而,这些实施例的优点之一在于,不需要这种安全信道来获得这里所描述的值。这是重要的安全性优点且节约成本。
优选地,安装在设备中的制造商证书对于每个TVBD来说是唯一的。因此,优选地,TVBD通信密钥是针对每个TVBD唯一的唯一(例如,随机)字段。尽管可以通过使用制造商计数器或唯一设备序号实现证书的唯一性,但是这不是期望的选择,因为这些数字可从设备ID和标识号中预测出,因而会使针对证书的“已知明文攻击”能够恢复制造商私钥并因而能够生成克隆证书。
图10示出了从TVBD 112到数据库管理器104的认证消息流和数据库管理器104建立登记或向TVBD 112提供频道信息的响应的实施例概况。在该实施例中,在块1010,TVBD 112通过表达消息,如使用制造商证书及其加密位置/商业信息(如图6所示),进行登记或频道可用性查询。更具体地,TVBD 12使用其TVBD设备密钥加密其位置并使用监管者通信密钥加密其详细位置和商业信息。然后,TVBD112使用通信网络和在TVBD 112与数据库管理器104之间建立的适合的消息协议来向数据库管理器104发送消息。
在块1020,数据库管理器104从TVBD 112接收消息,并使用其制造商公钥验证制造商证书中的设备ID。然后,数据库管理器104使用其私钥从制造商证书中解密隐藏的TVBD设备密钥。数据库管理器104知道消息和设备查询有效,因为使用制造商公钥对它们进行了恢复。然后,数据库管理器104使用TVBD设备密钥来恢复TVBD位置、监管者证书、以及加密的商业信息。然后,数据库管理器104在其储存器中存储位置信息和加密的商业信息。TVBD的私密商业信息在数据库管理器的储存器中是安全的,因为它受到由TVBD 112提供的监管者通信密钥的保护,并隐藏在监管者证书中。数据库管理器104使用TVBD位置确定针对TVBD 12的可用白空间频道列表。数据库管理器104然后使用TVBD设备密钥对频道可用性信息进行加密。然后,数据库管理器104在消息中向TVBD 112发送加密后的频道可用性信息。
在块1030,TVBD 112从数据库管理器104接收消息,并使用其设备密钥对频道列表进行解密。现在TVBD 112是登记的,并具有针对其位置的有效频道列表。TVBD 112知道该消息和频道分配有效,因为该信息已使用隐藏在初始证书中的TVBD设备密钥进行了加密。
同样的验证过程可以用于登记和数据库查询,但是在一些实施方式中,TVBD可以利用由登记器发布的登记证书进行数据库访问。该登记证书可能具有与制造商证书相同的信息结构,但是可以包括新的唯一通信密钥,并在针对频道分配更新查询数据库时可由TVBD使用。
设备和数据库管理器可以使用相同的机制来确立针对TVBD的新证书(这会导致例如存在单独的制造商证书和数据库管理器证书或多个管理器中的每一个管理器的证书)。在一个场景中,登记器/数据库管理器可由在登记时向TVBD分配新证书和通信密钥。然后,TVBD将会针对它对数据库管理器的查询使用该新证书密钥对,以查询TVWS频道。该新证书和通信密钥将会使用TVBD唯一通信密钥加密传送给TVBD。
本实施例将在TVBD与数据库管理器之间交换的消息数目最小化。大多数登记和查询可以利用从TVBD到管理器的一个消息和从管理器到TVBD的一个响应完成。这将数据库操作成本和网络上的通信成本最小化。建立针对通信的新会话密钥的可选方式可能仅在期望针对安全性关系或更长信息交换(如,数据库更新)而改变通信密钥时使用。
这里所公开的实施例可以减轻数据库管理器维护针对大量设备的密钥列表的需求,因为每个设备针对每个查询报告其证书,该证书包含必要的唯一设备通信密钥。本实施例还可以减轻针对要在设备中执行的复杂加密过程(例如,公钥加密)的需求。也就是说,TVBD不需要公钥的求幂(exponentiation),因为制造商证书通过制造商预先计算,并安装在TVBD中。不存在针对每个设备的单独公/私钥对的需求,因为设备可以利用与登记器/数据库管理器的现有通信过程进行通信消息的加密/解密。在TVBD与管理器之间共享的秘密密钥通过预先存储的证书传送,该证书包含预先存储的设备密钥,其本身使用管理器公钥进行加密。本实施例也允许TVBD的位置和商业信息进行加密,并因而被保护以免受通信信道偷听的侵害。
以上描述的设备可以包括能够执行与上述动作相关的指令的处理组件。图11示出了包括适于实现这里所公开的一个或多个实施例的处理组件1310的系统1300的示例。除了处理器1310(可以被称为中央处理单元或CPU)之外,系统1300可以包括网络连接设备1320、随机存取存储器(RAM)1330、只读存储器(ROM)1340、辅助存储器1350、以及输入/输出(I/O)设备1360。这些组件可以经由总线1370彼此通信。在一些情况下,这些组件中的一些可能不存在,或者可以在多种组合中互相组合,或者与未示出的其它组件以多种组合结合。这些组件可以位于单个物理实体中或多个物理实体中。本文描述为由处理器1310执行的任何动作可以由处理器1310单独执行,或者由处理器1310与图中示出或未示出的一个或多个组件(例如,数字信号处理器(DSP)1380)相结合来执行。虽然DSP 1380被示出为单独的组件,但是DSP 1380也可以合并至处理器1310之中。
处理器1310执行其可以从网络连接设备1320、RAM 1330、ROM1340或辅助存储器1350(可以包括各种基于盘的系统,如硬盘、软盘或光盘)中存取的指令、代码、计算机程序或脚本。尽管仅示出了一个CPU1310,然而也可以存在多个处理器。因此,尽管可以将指令描述为由处理器来执行,但是可以同时地、串行地、或由一个或多个处理器来执行指令。处理器1310可以被实施为一个或多个CPU芯片。
网络连接设备1320可以采取调制解调器、调制解调器组、以太网设备、通用串行总线(USB)接口设备、串行接口、令牌环设备、光纤分布式数据接口(FDDI)设备、无线局域网(WLAN)设备、无线收发机设备(如码分多址(CDMA)设备、全球移动通信系统(GSM)无线收发机设备、微波接入的全球可互操作性(WiMAX)设备)、数字用户线路(xDSL)设备、电缆数据系统接口规范(DOCSIS)调制解调器、和/或用于连接至网络的其它公知设备的形式。这些网络连接设备1320可以使处理器1310能够与因特网或一个或多个电信网络或处理器1310可以从其接收信息或处理器1310可以向其输出信息的其它网络进行通信。
网络连接设备1320还可以包括一个或多个收发机组件1325,收发机组件1325能够采取电磁波的形式(例如射频信号或微波频率信号)在多个天线上以无线的方式发送和/或接收数据。备选地,该数据可以在电导体中或表面上、在同轴电缆中、在波导中、在诸如光纤之类的光介质中、或者在其它介质中传播。收发机组件1325包括单独的接收和发送单元或单个收发机。收发机组件1325所发送或接收的信息可以包括经处理器1310处理过的数据或要被处理器1310执行的指令。这种信息可以采取例如计算机数据基带信号或以载波体现的信号的形式自/至网络接收和输出。数据可以按照处理或产生数据、或发送或接收数据的所需要的来根据不同顺序排列。基带信号、以载波体现的信号、或当前使用的或今后发展的其它类型的信号可以称为传输介质,并且可以根据本领域普通技术人员公知的若干种方法来产生。
RAM 1330可以用于存储易失性数据,并且可能存储由处理器1310执行的指令。ROM 1340是非易失性存储器设备,典型地具有与辅助存储器1350的存储器容量相比较小的存储器容量。ROM 1340可以用于存储指令,并且可能存储在指令执行期间读取的数据。对RAM1330和ROM 1340的存取一般比对辅助存储器1850的存取更快。辅助存储器1350一般包括一个或多个盘驱动器或带驱动器,可以用于数据的非易失性存储,或者在RAM 1330不够大不足以保持所有工作数据的情况下用作溢出数据存储设备。辅助存储器1350可以用于存储在选择程序来执行时加载至RAM 1330中的这些程序。
I/O设备1360可以包括液晶显示器(LCD)、触摸屏显示器、键盘、键区、开关、拨号盘、鼠标、轨迹球、语音识别器、读卡器、纸带读取器、打印机、视频监视器、或其它公知输入/输出设备。此外,收发机1325可以被认为是I/O设备1360的组件,而不是网络连接设备1320的组件,或者除了是网络连接设备1320的组件之外还是I/O设备1360的组件。
在实施例中,提供了一种用于电信设备与数据库管理组件彼此认证的方法。所述方法包括:该设备向数据库管理组件发送第一消息,第一消息包含使用数据库管理组件密钥加密的通信密钥,第一消息还包含与该设备有关的信息,使用制造商密钥对与该设备有关的信息进行加密。所述方法还包括:数据库管理组件使用制造商密钥对与该设备有关的信息进行解密。所述方法还包括:数据库管理组件使用数据库管理组件密钥对通信密钥进行解密。所述方法还包括:当解密后的与该设备有关的信息与数据库管理组件所管理的数据库中的信息相匹配时,数据库管理组件认为该设备合法。所述方法还包括:数据库管理组件使用通信密钥对第二消息进行加密。所述方法还包括:数据库管理组件向该设备发送第二消息。所述方法还包括:当该设备能够解密第二消息时,该设备认为数据库管理组件合法。
在另一实施例中,提供了一种数据库管理组件。数据库管理组件包括处理器,被配置为使得数据库管理组件设备接收与电信设备有关的信息,使用制造商密钥对与该设备有关的信息进行加密。处理器还被配置为使得:数据库管理组件使用制造商密钥对与该设备有关的信息进行解密。处理器还被配置为使得:当解密后的与该设备有关的信息与数据库管理组件所管理的数据库中的信息相匹配时,数据库管理组件认为该设备合法。
在另一实施例中,提供了一种电信设备。所述电信设备包括处理器,被配置为使得该设备向数据库管理组件发送第一消息,所述第一消息包含通过数据库管理组件加密的通信密钥。处理器还被配置为使得:该设备从数据库管理组件接收第二消息,所述第二信息通过通信密钥加密。处理器还被配置为使得:当该设备能够解密第二消息时,该设备认为数据库管理组件合法。
虽然在本公开中提供了若干实施例,但是应当理解的是,在不偏离本公开的范围的情况下,所公开的系统以及方法可以通过多种其它特定形式体现。所述示例应当被认为是示例性的,而不是限制性的,以及本发明不限于本文所述的细节。例如,在另一系统中可以合并或集成多种单元或组件,或者省略某些特征,或不实施某些特征。
此外,在不偏离本公开的范围的情况下,在多种实施例中被描述和说明为分立或单独的技术、系统、子系统以及方法可以与其它系统、模块、技术或方法合并或集成。其它被示出或描述为耦合的或直接耦合或彼此通信的项目可以间接耦合或通过某些无论是电的或机械的或其它的接口、设备或中间组件进行通信。在不偏离本文所公开的精神和范围的情况下,本领域的技术人员可以确定和做出修改、替换物以及变更的其它示例。