本公开属于听力设备的领域,并且尤其属于听力设备安全性的领域。本公开涉及具有一个或多个证书的听力设备及制造听力设备的方法。
背景技术:
听力设备的功能变得越来越先进。已经设计出听力设备和外部设备(如听力设备配件装置、平板电脑、智能电话、智能手表以及远程控制器)之间的无线通信。听力设备的无线通信接口使用开放的基于标准的接口。然而,这对安全性方面提出了许多挑战。听力设备可认为任何输入数据为合法的,并且允许存储由未授权方写入或改变。任何此类侵袭可导致助听器的故障或电池耗尽侵袭。
然而,听力设备是非常小的设备,在计算能力、存储空间等方面具有严格限制。
技术实现要素:
存在对提供改进的安全性的方法和听力设备的需要。
本文公开了一种听力设备。听力设备包括处理单元、存储单元和接口。存储单元具有存储在其上的一个或多个证书。存储单元具有存储在其上的听力设备证书。听力设备证书可包括听力设备标识符、指示听力设备密钥的至少一个听力设备密钥标识符以及一个或多个听力设备密钥。
本文还公开了制造听力设备的方法。听力设备包括配置为补偿该听力设备用户的听力损失的处理单元、存储单元以及接口。方法包括生成听力设备标识符。方法可包括基于听力设备标识符生成一个或多个听力设备密钥。方法包含生成包括听力设备标识符和至少一个所生成听力设备密钥的听力设备证书;并且将听力设备证书发送到听力设备。
所公开的方法和装置提供用于制造具有改进安全性的听力设备的可扩展安全体系结构。本文公开的听力设备有利地验证所接收数据的完整性、检测任何变化并忽略用于例如维护、安装期间和/或远程调整的变化数据。所公开的听力设备和用于制造该听力设备的方法支持听力设备对抗如对听力设备的未授权访问或控制的攻击,同时仍允许访问用于例如装配目的、更新目的、维护目的的合法方(如客户端设备)。本文所公开听力设备的优点在于:打开仅具有认证方的会话,如认证装配设备、认证附件设备、认证外部设备和/或认证服务器。这可提供抵抗模拟和冒充攻击、电能耗尽攻击、窃听、中间人攻击和/或回复攻击的牢固性。另外,在密钥在客户端设备已经被泄露的情况下,降低并简化了对密钥的更新和/或交换的需要。另外有利的是,对于听力设备而言听力设备密钥是唯一的,这使其几乎不可能从听力设备密钥中导出客户端设备密钥。
附图标记
1 系统
2 听力设备
4 处理单元
5 扩音器
6 存储单元
7 接收器
8 接口
10 客户端设备
12 制造设备
14 装配设备
16 服务器设备
21 客户端设备和听力设备之间的通信链路
22 服务器设备和制造设备之间的通信链路
23 听力设备和制造设备之间的通信链路
24 务器和客户端设备/装配设备之间的通信链路
100 听力设备证书
112 听力设备标识符
113 数字签名
114 第一听力设备密钥标识符
115 第一组听力设备密钥
115A 第一一级听力设备密钥
115B 第一二级听力设备密钥
115C 第一三级听力设备密钥
115D 第一四级听力设备密钥
116 第二听力设备密钥标识符
117 第二组听力设备密钥
117A 第二一级听力设备密钥
117B 第二二级听力设备密钥
117C 第二三级听力设备密钥
117D 第二四级听力设备密钥
118 第三听力设备密钥标识符
119 第三组听力设备密钥
119A 第三一级听力设备密钥
119B 第三二级听力设备密钥
119C 第三三级听力设备密钥
119D 第三四级听力设备密钥
130 证书类型标识符
136 签字设备标识符
138 硬件平台标识符
140 软件平台标识符
142 证书时间戳
144 客户端设备类型授权标识符
146 令牌参数
148 第一硬件标识符
400 信号图
401 听力设备证书请求
402 听力设备证书响应
500 方法
附图说明
通过以下参考附图对其中的示例性实施例的详细描述,以上和其它特征以及优点对于本领域技术人员而言将变得显而易见,其中:
图1示意性地示出了根据本公开的示例性体系结构,
图2示意性地示出了示例性听力设备,
图3示意性地示出了示例性听力设备证书,
图4示意性地示出了示例性信号图,以及
图5示意性地示出了示例性方法的流程图。
具体实施方式
以下参考附图描述各种实施例。相同的附图标记附图标记始终是指相同的元件。因此,关于对每个附图的描述将不会详细描述相同的元件。还应当注意的是,附图仅旨在方便对实施例的描述。它们不旨在作为对所要求发明的穷尽性描述或作为对所要求保护的发明的范围限制。此外,所示出的实施例不需要具有所示的所有方面或优点。结合具体实施例描述的方面或有点不必限制于该实施例,并且可以任何其它实施例实践,即使没有如此示出,或即使没有如此明确地描述。
贯穿全文,相同的附图标记用于相同或对应的部件。
本公开的目的是提供听力设备和制造听力设备的方法,所述听力设备试图减轻、减缓或消除现有技术中的上述缺陷和单独或以任何组合的缺点中的一个或多个。
本公开涉及改进的听力设备的安全性。即,本文中所公开的听力设备通过实施适当的安全措施和对策(如安全机制)来克服安全威胁、弱点以及攻击以防止威胁和攻击。本公开涉及克服中继攻击、未授权访问、电能耗尽攻击以及中间人攻击的听力设备。
如本文所使用,术语“听力设备”是指用于帮助用户听到声音的设备,如听力仪器、助听设备、头戴式耳机、一对耳机等。
如本文所用,术语“证书”是指能够对其来源和内容进行验证(如验证其来源和内容的合法性和/或真实性)的数据结构。证书经配置通过证书发行人提供与证书持有人相关联的内容。证书可选地包括密钥材料,如一个或多个密码密钥(例如听力设备密钥)和/或数字签名,以使得证书的接收者能够验证或认证证书内容和来源。因此,证书准许实现对来源与内容、不可否认性和/或完整性保护的认证。证书可另外包括有效期、一个或多个算法参数和/或发行人。证书可包括数字证书、公共密钥证书、属性证书和/或授权证书。证书的示例为X.509证书和安全、多用途因特网邮件扩展(S/MIME)证书和/或传输层安全(TLS)证书。
如本文所用,“密钥”是指确定密码算法的功能输出的密码密钥(即数据段)(例如字符串、参数)。例如,在加密期间,密钥允许明文转变成密文,在解密期间反之亦然。密钥还可以用于验证数字签名和/或消息认证码(MAC)。当相同的密钥用于加密和解密两者时,密钥是所谓的对称密钥。在非对称密码学或公共密匙密码学中,密钥材料为密钥对,所谓的私人-公共密钥对包括公共密钥和私人密钥。在非对称或公共密钥密码系统中(如Rivest Shamir Adelman(RSA)或椭圆曲线密码学(ECC)),公共密钥用于加密和/或签名验证,而私人密钥用于解密和/或签名生成。听力设备密钥可以是允许导出一个或多个对称密钥的密钥材料,如会话密钥和/或用于听力设备通信的证书密钥。听力设备密钥可以包括在听力设备证书中,并且可以存储在听力设备的存储单元中,例如在制造期间。听力设备密钥可以包括用于导出对称密钥的密钥卡片(keying material)。听力设备密钥可包括例如高级加密标准(AES)密钥,如AES-128比特密钥。
本公开涉及听力设备。听力设备包括处理单元、存储单元和接口。存储单元可包括可移动和不可移动数据存储单元,包括(但不限于)只读存储器(ROM)、随机存取存储器(RAM)等。听力设备可包括经配置补偿该听力设备用户的听力损失的处理单元。接口可包括无线收发器,例如配置用于在2.4GHz至2.5GHz范围内的频率处进行无线通信。在一个或多个示例性听力设备中,接口经配置用于与客户端设备或听力设备进行通信(如无线通信),所述接口分别包括经配置接收和/或发送数据的无线收发器。处理单元可以经配置根据所接收数据补偿该听力设备用户的听力损失。听力设备可以经配置经由接口接收听力设备证书和/或允许制造设备访问存储单元进行写入听力设备证书。存储单元具有存储在其上的听力设备证书。存储单元可具有在存储单元的存储地址处和/或存储单元的存储元件中(如在指定的存储元件中和/或在指定的地址处)存储的听力设备证书。听力设备证书可包括听力设备标识符。听力设备证书可包括指示听力设备密钥的至少一个听力设备标识符。听力设备证书可包括一个或多个听力设备密钥。听力设备标识符可以是指听力设备唯一的标识符。如本文所使用,术语“标识符”是指用于标识(如用于分类和/或唯一标识)的数据段。标识符可以是字、数字、字母、符号、列表、阵列或其中的任何组合的形式。例如,作为数字的标识符可以是具有8比特、16比特、32比特等长度的整数(如无符号整数(uint)),如无符号整数的阵列。听力设备密钥标识符可指示以待用作密钥材料的听力设备密钥用于确保与外部方(如与客户端设备)的通信。听力设备密钥标识符可指示哪些听力设备密钥为听力设备证书的一部分。例如,具有数值“5”的第一听力设备密钥标识符指示,听力设备证书根据证书中听力设备密钥的数目包括具有标识符“5”和任选增量的标识符的第一听力设备密钥,如具有标识符“6”、“7”、“8”等的听力设备密钥。例如,听力设备密钥标识符指向和/或标识在多个听力设备密钥中的听力设备密钥。
如本文所使用,术语“客户端设备”是指能够与听力设备进行通信的设备。客户端设备可是指充当客户端的计算设备。客户端设备可包括装配设备、手持设备、继电器、平板电脑、个人计算机、移动电话、在个人计算机或平板电脑、或移动电话和/或插入到个人计算中的USB软件狗上运行的应用程序。客户端设备可以是属于对应于客户端设备的模型、类别或类型的客户端设备类型,如装配类型,例如用于装配听力设备的平板电脑产品模型、类别或分类,用于装配听力设备的USB软件狗产品模型、类别或类型。客户端设备可通过发送装配数据、听力设备运行参数和/或固件数据中任一者控制听力设备的操作。
听力设备证书包括一个或多个听力设备密钥,如多个听力设备密钥。多个听力设备密钥可包括一组或多组听力设备密钥,如第一组和/或第二组听力设备密钥。一组听力设备密钥包括一个或多个听力设备密钥,所述听力设备密钥包括主听力设备密钥。一组听力设备密钥可包括二级听力设备密钥、三级听力设备密钥和/或四级听力设备密钥。一组听力设备密钥,如第一组和/或第二组听力设备密钥可包括一定数目不同的听力设备密钥或由一定数目不同的听力设备密钥构成。在一组听力设备密钥中的听力设备密钥的数目可以是至少三个,如在三个至十个范围内。给定有限的存储尺寸和期望提供足够的听力设备密钥,由三个至六个听力设备密钥构成的一组听力设备密钥可以有利,,以能够进行听力设备的未来操作,而不需要乏味和耗时的听力设备证书的更新。
多个听力设备密钥使得听力设备能够安全地与使用不同的客户端设备密钥的多个客户端设备进行通信。可选地或此外,听力设备可切换到另一听力设备密钥,例如从主听力设备密钥到第二听力设备密钥,例如,如果经配置根据目前使用的听力设备密钥进行通信的客户端设备已达成妥协。在一个或多个示例性听力设备中,多个听力设备密钥包括第一组听力设备密钥,其包括第一一级听力设备密钥。至少一个听力设备密钥标识符包括指示第一组听力设备密钥的听力设备密钥的第一听力设备密钥标识符。第一组听力设备密钥可包括专用于确保通信到第一客户端设备(如第一客户端设备类型)以及从第一客户端设备通信的一组听力设备密钥,例如三或四个听力设备密钥。例如,第一组听力设备密钥可以是用于确保听力设备数据与第一客户端设备进行通信的一组听力设备密钥。
听力设备数据包括,例如固件、装配数据和/或听力设备运行参数。装配数据例如可以是在听力设备安装在用户耳朵中时由分配器使用的装配设备生成的数据。装配数据可包括听力损失参数、压缩器参数、滤波器系数和/或增益系数。听力设备运行参数可包括体积控制参数、模式和/或程序控制参数。固件可是指由听力设备制造商提供并且安装在听力设备上以控制听力设备的计算机程序。固件例如被安装以升级听力设备的操作和能力和/或修补旧固件中的错误。
多个听力设备密钥可包括第二组听力设备密钥,其包括第二一级听力设备密钥。至少一个听力设备密钥标识符可包括指示第二组听力设备密钥的听力设备密钥的第二听力设备密钥标识符。听力设备经配置与一个或多个客户端设备进行通信,如第一客户端设备和/或第二客户端设备。对于听力设备经配置与其进行通信的每个客户端设备或客户端设备类型而言,证书可包括一组听力设备密钥和一个或多个听力设备密钥标识符,所述听力设备密钥经配置能够与客户端设备中的每个或客户端设备类型进行安全通信,所述听力设备密钥标识符中每个听力设备密钥标识符指示哪些听力设备密钥为听力设备证书的一部分。听力设备可以经配置,基于连接至听力设备的客户端设备或客户端设备类型和与对应组的听力设备密钥相关联的听力设备密钥标识符,从所选择组的听力设备密钥中选择听力设备密钥。
听力设备证书可包括证书类型标识符。证书类型标识符可指示在各种证书类型中证书的类型,如听力设备族证书类型、听力设备证书类型、固件证书类型、研究和进展证书类型、客户端设备证书类型。证书类型标识符可以由听力设备使用以标识听力设备接收、存储、认证和/或检索何种类型的证书。听力设备证书可包括指示证书数据格式版本的版本标识符。听力设备可使用证书类型标识符和/或版本标识符以确定证书包括何种类型数据和/或何种类型的数据包括在证书领域中。例如,听力设备基于证书类型标识符和/或版本标识符确定证书的何种领域包括数字签名和/或哪个公共密钥需要验证证书的数字签名。可以设想在证书类型标识符和公共-私人密钥对之间存在一对一映射。
听力设备证书可包括签字设备标识符。签字设备标识符是指标识设备已对听力设备证书签字的唯一标识符,诸如制造设备,例如集成电路卡、智能卡、硬件安全模块。签字设备标识符例如可包括介质访问控制(MAC)、签字设备的地址和/或签字设备的序列号。签字设备标识符可使例如听力设备确定签字设备是否是例如黑名单,并因此拒绝由已被列入黑名单的签字设备签字的证书,例如由于失窃或其它损坏。
听力设备证书可包括一个或多个硬件标识符,例如第一硬件标识符和/或第二硬件标识符。硬件标识符可标识包括在听力设备中的一片硬件,如包括在听力设备中的射频芯片和/或听力设备的数字信号处理器。硬件标识符在制造该件硬件期间可以存储在该件硬件的寄存器中。硬件标识符可包括硬件的序列号、芯片标识符或其中的任何组合。通过比较其存储的硬件标识符和包括在听力设备证书中的对应的硬件标识符,接收或从存储单元中检索包括硬件标识符的听力设备证书的听力设备可验证听力设备证书。在接收听力设备证书后,和/或在从存储单元中检索听力设备证书后(如在听力设备的启动或电源接通时)可以执行此类验证。
听力设备证书可包括一个或多个客户端设备类型授权标识符。客户端设备类型可包括客户端设备的模型、类别或类型,如平板电脑产品模型、类别或类型,USB软件狗产品模型、类别或类型。客户端设备类型授权标识符为授权的客户端设备类型的标识符,如听力设备可授权或接受用于通信(如用于装配)的客户端设备类型的标识符。例如,客户端设备类型授权标识符为在一个或多个听力设备中指示听力设备应该允许装配的客户端设备类型的比特字段。
听力设备证书可包括令牌参数。令牌参数可指示听力设备和客户端设备之间的基于参数的认证是否能够进行。例如,若令牌参数设为0,则听力设备不能够进行客户端设备的基于令牌的认证,并且听力设备将要使用例如客户端设备类型标识符和/或客户端设备标识符(如序列号)的组合以执行客户端设备的认证。若例如令牌参数设为1,则听力设备能够进行客户端设备的基于令牌的认证,即听力设备基于从客户端设备接收的令牌认证客户端设备。听力设备基于所接收的令牌参数也可导出特定的会话令牌,所述令牌参数用于例如接受与客户端设备的连接而不需要用户干预。
听力设备证书可包括硬件平台标识符、软件平台标识符和/或证书时间戳中的一个或多个。硬件平台标识符可标识硬件平台,如操作的听力设备硬件平台,即与听力设备证书兼容的硬件平台。软件平台标识符可标识听力设备证书经配置以在其上操作的一个或一族软件平台。证书时间戳是指产生或制造听力设备证书的时间戳,如指示当听力设备证书生成时的时间瞬间的制造设备的时间戳。证书时间戳可以是例如小时、分钟、日期、月、年的形式。听力设备可使用硬件平台标识符、软件平台标识符和/或证书时间戳执行版本控制和撤销。
听力设备证书可包括数字签名。数字签名使得听力设备证书真实性的证明或验证能够进行,如签字者合法性的验证。当制造听力设备时,数字签名可选地通过使用设备族私人密钥由制造设备生成。听力设备可以经配置,在接收包括数字签名的听力设备证书时验证数字签名。通过使用对应的设备族公共密钥,数字签名是可由听力设备验证的。若使用宣称的公共密钥未成功验证数字签名,则听力设备可忽略证书和/或中断正常操作。这可提供的优点在于,听力设备拒绝篡改或从未认证方接收的听力设备证书。因此,与听力设备的通信可以对于抵抗假冒、修改和伪装攻击具有很好的鲁棒性。
听力设备证书可包括消息认证码。消息认证码(MAC)可以例如基于听力设备证书和密钥由制造设备生成。在接受包括MAC的听力设备证书后,保存该存储密钥的听力设备基于所接收的听力设备证书和MAC生成函数能够重新计算MAC并且比较该重新计算的MAC和所接收的MAC。若重新计算的MAC不与所接收的MAC匹配,则听力设备断定听力设备证实被损坏。若听力设备证书的完整性被损坏,则听力设备可忽略证书和/或中断正常操作。例如,若确定听力设备证书已被未授权方篡改或修改(通过例如插入、删除和/或替代),则忽略听力设备证书可包括拒绝所接收的听力设备证书和否认访问例如外部设备。
本公开涉及制造听力设备的方法。听力设备包括可选地经配置以补偿该听力设备用户听力损失的处理单元、存储单元以及接口。方法包括生成听力设备标识符。生成听力设备标识符可包括生成随机或伪随机数。生成听力设备标识符可以是基于一个或多个硬件标识符。
方法可包括基于听力设备标识符生成一个或多个听力设备密钥。方法包括生成包括听力设备标识符和所生成听力设备密钥中至少一个的听力设备证书;并且将听力设备证书发送到听力设备。该方法可以通过制造设备执行。制造设备是指经配置有助于听力设备制造的设备。制造设备的示例包括个人计算机、移动电话、在个人计算机、或移动电话上运行的应用程序、与个人计算机关联的硬件安全模块(HSM)和/或插入到个人计算机中的USB软件狗。发送听力设备证书可包括将听力设备证书存储在听力设备的存储单元中,如将听力设备证书写入在听力设备的存储单元中。存储单元可具有存储在其上的听力设备证书。
在一个或多个示例性方法中,方法包括获得包含第一客户端设备密钥和/或第二客户端设备密钥的一个或多个客户端设备密钥,并且生成一个或多个听力设备密钥是基于第一客户端设备密钥和/或第二客户端设备密钥。第一客户端设备密钥可以是第一客户端设备基本密钥,如专用于确保与第一客户端设备或客户端设备类型通信的AES基本密钥。制造设备可生成/获得第一客户端设备密钥。制造设备可例如通过使用哈希函数基于第一客户端设备密钥生成一个或多个听力设备密钥。例如,用于与第一客户端设备通信的第一听力设备密钥{HD_KEY_1}可以如下生成:
HD_KEY_1=hash(HD_ID,CD_KEY_1),
其中,hash为哈希函数,HD_ID为听力设备标识符并且CD_KEY_1为第一客户端设备密钥。这也可适用于基于第二客户端设备密钥的第二听力设备和/或基于第一二级客户端设备密钥的第一二级听力设备密钥。听力设备可以经配置使用听力设备密钥中的一个作为密钥材料以导出用于确保(如加密、认证、验证)与客户端设备进行通信的一个或多个密钥,如证书密钥和/或会话密钥。使用例如加密方案可以执行对数据的加密。加密方案可包括对称加密方案和/或非对称加密方案。加密方案的示例包括高级加密标准(Advanced Encryption Standard)、AES、RSA密码系统、椭圆曲线密码学、ECC和三重数据加密算法(Triple Data Encryption Algorithm)。对称密钥的使用提供了能够使用硬件加速器的优点,并因此提供轻量加密。
在一个或多个示例性方法中,生成一个或多个听力设备密钥包括生成包括第一一级听力设备密钥和/或第一二级听力设备密钥的第一组听力设备密钥。一组听力设备密钥可包括一个或多个听力设备密钥,如一级听力设备密钥、二级听力设备密钥等。单个密钥可构成一组听力设备密钥。第一组听力设备密钥包括例如一组密钥,该组密钥专用于确保通信到第一客户端设备或第一客户端设备类型并且从第一客户端设备或第一客户端设备类型通信。例如,听力设备密钥的第一组HD_KEY_A可以如下生成,其中第一组听力设备密钥
HD_KEY_A={HD_KEY_1_1,HD_KEY_1_2,HD_KEY_1_3,HD_KEY_1_4}:
HD_KEY_1_X=hash(HD_ID,CD_KEY_1_X),
其中hash为哈希函数,X为标识用于第一组将要产生的各自的听力设备密钥的指数(例如X={1,2,3,4},用于第一一级听力设备密钥(HD_KEY_1_1)、第一二级听力设备密钥(HD_KEY_1_2)、第一三级听力设备密钥(HD_KEY_1_3)、第一四级听力设备密钥(HD_KEY_1_4)),HD_ID为听力设备标识符并且CD_KEY_1_X为第X级第一客户端设备密钥。这也适用于基于第二客户端设备密钥的第二组听力设备密钥。
方法可包括获得指示第一组听力设备密钥的(第一)听力设备密钥的第一听力设备密钥标识符。获得第一听力设备密钥标识符可包括生成第一听力设备密钥标识符,如设定第一听力设备密钥标识符为指示听力设备密钥包括在听力设备证书中的数值。生成听力设备证书可包括将第一组听力设备密钥和第一听力设备密钥标识符包括在听力设备证书中。
在一个或多个示例性方法中,生成一个或多个听力设备密钥包括生成第二组听力设备密钥,其包括第二一级听力设备密钥和/或第二二级听力设备密钥。方法可包括获得指示(第二)听力设备密钥的第二听力设备密钥标识符,如第二组听力设备密钥的第二一级听力设备密钥。生成听力设备证书可包括将第二组听力设备密钥和第二听力设备密钥标识符包括在听力设备证书中。
在一个或多个示例性方法中,生成听力设备证书包括生成数字签名并且将数字签名包括在证书中。生成数字签名涉及例如私人-公共密钥对和签名生成函数。签名生成和验证系统的示例包括RSA密码系统。RSA密码系统是基于为两个较大素数与整数e和d的乘积的模数N,以使的其中为欧拉函数。RSA公共密钥包括模数N和e作为公共指数,并且对应的RSA私人密钥包括模数N和d作为私人指数。例如,生成数字签名σ以添加到哈希化的消息m包括以例如以下方式:σ≡md(mod N)计算数字签名σ。
验证数字签名包括计算σe并将去与所接收的消息m(mod N)比较。数字签名σ被验证为有效的,或者当升高到公共指数幂的数字签名等同于所接收消息时,σe≡md(mod N),验证是成功的。
方法可包括获得听力设备的一个或多个硬件标识符,如第一硬件标识符和/或第二硬件标识符。获得听力设备的硬件标识符可包括接收听力设备的硬件标识符,和/或从数据存储中检索听力设备的硬件标识符。听力设备或制造设备可从存储单元(如寄存器)中检索或读取硬件标识符。听力设备可将硬件标识符发送到制造设备。硬件标识符可包括序列号、介质访问控制(MAC)、地址、芯片标识符或其中的任何组合。生成听力设备证书可包括将第一硬件标识符和/或第二硬件标识符包括在听力设备证书中。第一硬件标识符可以是硬件模块的序列号。制造设备可以经配置将第一硬件标识符包括在听力设备证书中。接收包括第一硬件标识符的听力设备证书的听力设备可以经配置,通过比较其存储的第一硬件标识符和包括在听力设备证书中的第一硬件标识符,验证听力设备证书。
在一个或多个示例性方法中,生成听力设备证书可包括将证书类型标识符、签字设备标识符、一个或多个硬件标识符、客户端设备类型授权标识符和/或令牌参数中的一个或多个包括在听力设备证书中。听力设备可使用在听力设备证书中的证书类型标识符、客户端设备类型授权标识符和/或令牌参数,以控制并授权客户端设备访问听力设备。听力设备可使用签字设备标识符以认证听力设备证书。听力设备可使用硬件标识符以验证听力设备证书确实用于听力设备。
在一个或多个示例性方法中,生成听力设备证书包括将硬件平台标识符、软件平台标识符和/或证书时间戳包括在听力设备证书中。听力设备可使用在听力设备证书中的硬件平台标识符、软件平台标识符和/或证书时间戳以验证与听力设备的硬件或软件的兼容性并且执行撤销。
图1示意性地示出可以用于制造、维护和/或操作听力设备2的示例性设备。图1示出示例性系统1和听力设备2。系统1可包括制造设备12、客户端设备10和服务器设备16中的一个或多个,用于制造、维护和/或操作与听力损失补偿有关的听力设备2(如用于装配听力设备、用于更新听力设备参数)。
制造设备12可以经配置执行制造本文中所公开的听力设备2方法中的任何步骤。制造设备12可以经配置基于听力设备标识符生成听力设备标识符、生成一个或多个听力设备密钥;生成包括听力设备标识符和所生成听力设备密钥中至少一个密钥的听力设备证书。制造设备12可以经配置将听力设备证书发送到听力设备。制造设备12可包括处理元件(如处理器和存储器),其经配置执行制造本文中所公开的听力设备方法中的任何步骤。
听力设备2可以经配置补偿该听力设备2用户的听力损失。听力设备2可以经配置通过使用例如通信链路23(如单向或双向通信链路)与制造设备12进行通信。通信链路23可以是有线链路和/或无线通信链路。通信链路23可以是单跳通信链路或多跳通信链路。无线通信链路可以在短距离通信系统上进行,如蓝牙、低功耗蓝牙、IEEE 802.11、Zigbee。听力设备2可以经配置接收来自制造设备12的听力设备证书并且将听力设备证书存储在包括于听力设备2中的存储单元中。可选地或另外地,制造设备12可将听力设备证书存储在听力设备的存储单元中。例如,制造设备12可将听力设备证书写入于存储单元中。存储单元可具有存储在其上的听力设备证书。听力设备证书可包括听力设备标识符、指示听力设备密钥的至少一个听力设备密钥标识符和一个或多个听力设备密钥。例如,在听力设备2的制造期间,制造设备12连接到听力设备2并且将听力设备证书发送到听力设备2。听力设备可接受并存储听力设备证书。听力设备2然后可使用在听力设备证书中提供的材料以在需要时确保与客户端设备进行通信。
听力设备2可以经配置经由通信链路21(如双向通信链路)连接到客户端设备10。通信链路21可以是有线链路和/或无线通信链路。通信链路21可以是单跳通信链路或多跳通信链路。无线通信链路可以在短距离通信系统上进行,如蓝牙、低功耗蓝牙、IEEE 802.11、Zigbee。听力设备2可经配置连接到在网络上的客户端设备10。客户端设备10可准许听力辅助设备的远程装配,其中分配器经由用户的客户端设备10连接到听力设备。客户端设备10可包括作为客户端的计算设备,如装配设备14(例如手持设备、继电器、平板电脑、个人计算机、移动电话和/或插入于个人计算机中的USB软件狗)。客户端设备10可以经配置经由通信链路24(双向通信链路)与服务器设备16进行通信。通信链路24可以是有线链路和/或无线通信链路。通信链路24可包括网络,如因特网。客户端设备10可以经配置与服务器设备16进行通信用于维护和更新目的。服务器设备16可包括经配置充当服务器的计算设备,即服务来自客户端设备10和/或听力设备2的请求。服务器设备16可以通过听力设备制造商控制。服务器设备16可以经配置经由通信链路22与制造设备12进行通信,用于制造维护和/或操作目的。服务器设备16和制造设备12可以位于同处和/或形成用于制造维护和/或听力设备2的操作目的一个实体。
图2示意性地示出了示例性听力设备2。听力设备2包括处理单元4、存储单元6和接口8。听力设备2包括经配置补偿该听力设备2用户的听力损失的处理单元4。接口8包括无线收发器,例如经配置用于在2.4GHz至2.5GHz范围内的频率下进行无线通信。接口8经配置用于与制造设备12进行通信(如有线和/或无线通信)。处理单元4可以经配置,根据在制造期间所接收的数据补偿该听力助听器用户的听力损失。听力设备2包括扩音器5或多个扩音器,所述扩音器用于接收声音信号并且将声音信号转换成所转换的声音信号。所转换的声音信号可以是声音信号的电和/或数字版本。处理单元4经配置根据该听力设备2用户的听力损失接收所转换的声音信号并将该信号处理成处理的声音信号。该处理的声音信号可以是压缩的和/或放大的等。听力设备2包括公认为接收器的输出换能器/扬声器7。接收器7经配置用于接收所处理的声音信号并且将其转换成用于由用户耳膜接受的输出声音信号。
听力设备2可以经配置例如经由接口8接收听力设备证书100。听力设备2可以经配置将听力设备证书存储在(例如)存储单元6中。听力设备2也可准予访问制造设备12,其然后将听力设备证书存储或写入存储单元6中。存储单元6可包括可移动和不可移动数据存储单元,包括(但不限于)只读存储器(ROM)、随机存取存储器(RAM)等。存储单元6可具有存储在其上的听力设备证书。听力设备证书可包括听力设备标识符、指示听力设备密钥和多个听力设备密钥的至少一个听力设备密钥标识符。存储单元6可具有在存储单元6的存储地址处存储的听力设备证书100。存储单元6可具有存储的(例如)听力设备标识符、至少一个听力设备密钥标识符、多个听力设备密钥和/或在存储单元6的不同相应的存储地址处的听力设备证书中包括的任何数据。听力设备2可检索听力设备标识符、至少一个听力设备密钥标识符、多个听力设备密钥和/或在来自存储单元6的不同相应的存储地址的听力设备证书中包括的任何数据。听力设备2可使用听力设备证书或其中的至少部分以确保与外部实体进行通信,如客户端设备、服务器设备、另一听力设备。
图3示意性地示出了示例性听力设备证书100。听力设备证书100包括听力设备标识符112、至少一个听力设备密钥标识符,所述听力设备密钥标识符包括指示听力设备密钥和一个或多个听力设备密钥的第一听力设备密钥标识符114。听力设备标识符112可指示唯一或伪唯一的标识符。第一听力设备密钥标识符114指示听力设备证书的第一听力设备密钥。例如,第一听力设备密钥标识符114可指示或指向听力设备证书的听力设备密钥(115A、115B、115C、115D)的第一组115的听力设备密钥,例如第一一级听力设备密钥115A。
听力设备证书100可选地包括两组、三组或至少四组听力设备密钥,听力设备密钥能够确保与对应数目的不同客户端设备/客户端设备类型进行通信。
听力设备证书100包括第一组115听力设备密钥,所述听力设备密钥包括第一一级听力设备密钥115A。至少一个听力设备密钥标识符包括指示第一组115听力设备密钥115A、115B、115C、115D的听力设备密钥的第一听力设备密钥标识符114。第一组115听力设备密钥包括例如第一一级密钥115A、第一二级密钥115B、第一三级密钥115C以及专用于确保与第一客户端设备或第一客户端设备类型通信的第一四级密钥115D。例如,第一组115听力设备密钥可以是用于确保听力设备数据与第一客户端设备的通信的一组听力设备密钥115A、115B、115C、115D。
多个听力设备密钥可包括第二组117听力设备密钥,所述第二组听力设备密钥包括第二一级听力设备密钥117A、第二二级听力设备密钥117B、第二三级听力设备密钥117C和/或第二四级听力设备密钥117D。至少一个听力设备密钥标识符包括指示第二组117听力设备密钥117A、117B、117C、117D的第二听力设备密钥标识符116。听力设备经配置与一个或多个客户端设备进行通信,如第一客户端设备和/或第二客户端设备。对于听力设备经配置以与其进行通信的每个客户端设备或客户端设备类型而言,听力设备证书包括一组听力设备密钥和听力设备密钥标识符,所述听力设备密钥经配置能够确保与特定客户端设备或客户端设备类型进行通信,所述听力设备密钥标识符指示哪些听力设备密钥为听力设备证书的一部分。听力设备证书可包括第三组119听力设备密钥,所述第三组听力设备密钥包括第三一级听力设备密钥119A、第三二级听力设备密钥119B、第三三级听力设备密钥119C和/或第三四级听力设备密钥119D。至少一个听力设备密钥标识符包括指示第三组119听力设备密钥的听力设备密钥的第三听力设备密钥标识符118。听力设备证书100可包括第四组听力设备密钥,所述第四组听力设备密钥包括第四一级听力设备密钥(未示出)。至少一个听力设备密钥标识符包括指示第四组听力设备密钥的听力设备密钥的第四听力设备密钥标识符。听力设备2可以经配置基于连接到听力设备的客户端设备或客户端设备类型选择一组听力设备密钥,并且基于与所选择组的听力设备相关联的听力设备密钥标识符从该组所选择的听力设备密钥中选择听力设备密钥。
听力设备证书100包括证书类型标识符130。证书类型标识符130指示听力设备证书100是例如在多个证书类型中所选择的的听力设备证书,如听力设备族证书类型、听力设备证书类型、固件证书类型、研究与进展证书类型以及客户端设备证书类型。证书类型标识符130可以用于能够使听力设备2标识其接收、存储、认证和/或检索何种类型的证书。听力设备证书100可包括指示听力设备证书的数据格式版本的版本标识符。听力设备2可使用证书类型标识符130和/或版本标识符以确定听力设备证书100包括何种类型的数据、何种类型数据包括在听力设备证书100的字段中。例如,听力设备2可基于证书类型标识符130和/或版本标识符确定证书的何种字段包括数字签名113,以及需要哪个公共密钥以验证数字签名113。可以设想在证书类型标识符130和用于生成数字签名113的公共-私人密钥对之间存在一对一映射。听力设备证书100可包括指示听力设备证书100的长度的长度标识符,例如以比特、字节为单位。
听力设备证书100可选地包括签字设备标识符136。签字设备标识符136是指标识设备(如制造设备12,例如集成电路卡、智能卡、包括在制造设备12中的硬件安全模块)对听力设备证书100已签字的唯一标识符。签字设备标识符136可例如包括介质访问控制(MAC)、签字设备的地址、序列号。签字设备标识符136允许例如听力设备2确定签字设备是否例如被列入黑名单,并因此拒绝由被列入黑名单的签字设备签字的听力设备证书100。
听力设备证书100可选地包括一个或多个硬件标识符,所述硬件标识符包括第一硬件标识符148和/或第二硬件标识符(未示出)。硬件标识符148可标识包括在听力设备2中的一件硬件(如处理单元4)、包括在听力设备2中的射频芯片、听力设备2的数字信号处理器。第一硬件标识符148在该件硬件的制造期间也可以存储在包括在听力设备2中的该件硬件的寄存器中。第一硬件标识符148可包括序列号、介质访问控制(MAC)、地址、芯片标识器或其中的任何组合。听力设备证书100可包括第一硬件标识符148、第二硬件标识符和/或第三硬件标识符。例如,第一硬件标识符148可提供存在于硬件模块(例如处理单元或射频芯片)寄存器中的第一听力设备特定值,同时第二硬件标识符可提供存在于听力设备2的硬件模块寄存器中的第二听力设备特定值,并且第三硬件标识符可提供第三硬件模块标识符(例如处理单元标识符、DSP标识符)。一旦接收包括第一硬件标识符148的听力设备证书100,然后听力设备2通过比较其存储的硬件标识符和包括在所接收的听力设备证书100中的第一硬件标识符148,可验证听力设备证书100。这样的话,听力设备2可确定是否所接收的听力设备证书用于听力设备2,并且若所存储与所接收的硬件标识符不匹配则拒绝所接收的听力设备证书。
听力设备证书100可选地包括客户端设备类型授权标识符144。客户端设备类型可包括客户端设备的模型、类别或类型,如平板电脑产品模型、类别或类型、USB软件狗产品模型、类别或类型。客户端设备类型授权标识符144为授权的客户端设备类型的标识符,如听力设备2可授权用于通信的客户端设备类型的标识符,如用于装配、维护和/或操作。客户端设备类型授权标识符144为例如指示听力设备2应该允许装配的客户端设备类型的位域。
听力设备证书100可选地包括令牌参数146。令牌参数146指示基于令牌的认证是否能够进行。例如,若令牌参数146设为0,则听力设备2不能够进行客户端设备的基于令牌的认证,并且听力设备2将要使用例如客户端设备类型标识符和/或客户端设备标识符(如序列号)的组合以执行客户端设备10的认证。若例如令牌参数146设为1,则听力设备2能够进行客户端设备的基于令牌的认证,即听力设备2认证客户端设备10(如基于从客户端设备10中检索的令牌)。听力设备2可基于所接收的令牌参数146也可导出会话特定令牌,所述接收的令牌参数用于例如接受与客户端设备10的连接而不需要用户干预。
听力设备证书100包括硬件平台标识符138、软件平台标识符140和/或证书时间戳142中的一个或多个。硬件平台标识符138可标识硬件平台,如操作的听力设备硬件平台,即听力设备证书可以在其上使用的硬件平台。软件平台标识符140可标识听力设备证书经配置在其上操作的软件平台族。证书时间戳142是指产生或制造听力设备证书100的时间戳,如指示在听力设备证书100生成时的时间瞬间的制造设备12的时间戳。证书时间戳142可以是例如小时、分钟、日期、月、年的形式。
听力设备证书包括数字签名113和/或MAC。数字签名113使得听力设备证书100真实性的证明或验证能够进行,如签字者合法性的验证(例如签字者是否为合法的制造设备)。数字签名113通过在听力设备制造期间使用设备族私人密钥由制造设备12生成。当接收包括数字签名113的听力设备证书100时,听力设备2或处理单元4然后可验证数字签名113。通过使用对应的设备族公共密钥,数字签名113是可以由听力设备2验证。若使用所宣称的公共密钥未成功验证数字签名113,则听力设备可忽略听力设备证书100和/或中断正常操作。
图4示意性地示出了听力设备2和制造设备12之间的示例性信号图。可能在从制造设备12中接收标识符请求后,听力设备101可将听力设备证书请求或消息401发送到制造设备12。听力设备证书请求401可包括第一硬件标识符148。制造设备12可然后标识听力设备2并且基于(例如)随机或伪随机数生成听力设备标识符112。制造设备12基于听力设备标识符112然后可生成一个或多个听力设备密钥。制造设备12经配置生成包括听力设备标识符112和所生成听力设备密钥中至少一个的听力设备证书100。制造设备12可确定至少一个指示听力设备密钥的密钥标识符,并且可包括指示听力设备证书的至少一个密钥标识符。然后,制造设备12可生成听力设备证书100的哈希值而不需要数字签名并且可基于在没有数字签名的哈希(p21)化的听力设备证书生成数字签名。制造设备12然后可将数字签名包括在听力设备证书100中。制造设备12可将包括听力设备证书100的听力设备证书响应402发送到听力设备2。制造设备12也可以经配置将听力设备证书100直接写入于存储单元6中。接收听力设备证书的听力设备2可以经配置,通过验证数字签名113、证书类型标识符130、版本标识符、硬件平台标识符138、软件平台标识符140、签字设备标识符136和/或硬件标识符148,验证所接收的听力设备证书100。听力设备2可以经配置将所接收的听力设备证书100存储在存储单元6中,例如若验证是成功的。听力设备2可以经配置从存储单元中检索听力设备证书,并且通过验证数字签名113、证书类型标识符130、版本标识符、硬件平台标识符138、软件平台标识符140、签字设备标识符136和/或硬件标识符148,验证听力设备证书。若验证中的任何一个失败,则听力设备2可从存储单元中删除听力设备证书或忽略听力设备证书。
图5示意性地示出了制造听力设备2的示例性方法500的流程图。方法500可以在制造设备中执行。听力设备2包括经配置补偿该听力设备用户的听力损失的处理单元4、存储单元6和接口8。方法500包括生成S1听力设备标识符112。生成听力设备标识符可包括获得例如处理单元和/或接口的一个或多个硬件标识符。生成S1听力设备标识符可以是基于听力设备硬件部件的硬件标识符。生成S1听力设备标识符可包括生成随机或伪随机数。方法500可包括基于听力设备标识符112生成S2一个或多个听力设备密钥。方法包括生成S3听力设备证书100,该听力设备证书100包括听力设备标识符112和所生成听力设备密钥中的至少一个;并且将S4听力设备证书100发送到听力设备2。听力设备2然后可将听力设备证书100存储在存储单元6中。
方法500包括获得S11包括第一客户端设备密钥的一个或多个客户端设备密钥,并且基于第一客户端设备密钥生成S2一个或多个听力设备密钥。第一客户端设备密钥可以是第一客户端设备基本密钥,如专用于确保与第一客户端设备或设备类型进行通信的AES基本密钥。制造设备12可生成第一客户端设备密钥并且可选地将第一客户端设备密钥存储在数据存储中。制造设备12基于第一客户端设备密钥可生成一个或多个听力设备密钥。例如,用于与第一客户端设备通信的第一听力设备密钥{HD_KEY_1}可以如下生成:
HD_KEY_1=hash(HD_ID,CD_KEY_1),
其中hash为哈希函数,HD_ID为听力设备标识符112并且CD_KEY_1为第一客户端设备密钥。这也可以适用于基于第二客户端设备密钥的第二组听力设备密钥并且/或者适用于基于第一二级客户端设备密钥的第一二级听力设备密钥。
在一个或多个示例性方法中,生成S2一个或多个听力设备密钥包括生成包括第一一级听力设备密钥115A的第一组115听力设备密钥。一组听力设备密钥可包括一个或多个听力设备密钥,如一级听力设备密钥115A、二级听力设备密钥115B等。单个密钥可组成一组听力设备密钥。第一组115听力设备密钥包括例如一组第一听力设备密钥,该第一听力设备密钥专用于使得确保与第一客户端设备通信,如第一客户端设备类型。例如,第一组115听力设备密钥HD_KEY_A={HD_KEY_1_1,HD_KEY_1_2,HD_KEY_1_3,HD_KEY_1_4}如下生成:
H_KEY_X=hash(HD_ID,CD_KEY_X),
其中hash为哈希函数,X为标识用于第一组将要产生相应的听力设备密钥的指数(例如X={1,2,3,4},用于第一一级听力设备密钥115A、第一二级听力设备密钥115B、第一三级听力设备密钥115c、第一四级听力设备密钥115D),HD_ID为听力设备标识符112并且CD_KEY_X为第X级第一客户端设备密钥。这也适用于基于第二客户端设备密钥的第二组117听力设备密钥并且/或是适用于基于第三客户端设备密钥的第三组119听力设备密钥。
方法500可包括获得S21指示第一组115听力设备密钥的听力设备密钥的第一听力设备密钥标识符114。获得S21第一听力设备密钥标识符可包括生成第一听力设备密钥标识符114,如将第一听力设备密钥标识符114设为指示听力设备密钥包括在听力设备证书(第一组115听力设备密钥)中的数值。生成S3听力设备证书包括将第一组115听力设备密钥和第一听力设备密钥标识符114包括在听力设备证书100中。
在一个或多个示例性方法中,生成S2一个或多个听力设备密钥包括生成包括第二一级听力设备密钥117A的第二组117听力设备密钥。方法500可包括获得S22指示第二组117听力设备密钥的听力设备密钥的第二听力设备密钥标识符116。生成S3听力设备证书可包括将第二组117听力设备密钥和第二听力设备密钥标识符116包括在听力设备证书100中。在一个或多个示例性方法中,生成S2一个或多个听力设备密钥包括生成包括第三一级听力设备密钥119A的第三组119听力设备密钥。方法500可包括获得指示第三组119听力设备密钥的听力设备密钥的第三听力设备密钥标识符118。生成S3听力设备证书可包括将第三组119听力设备密钥和第三听力设备密钥标识符118包括在听力设备证书100中。
在一个或多个示例性方法中,生成S3听力设备证书包括生成数字签名113并且将数字签名113包括在听力设备证书100中。生成数字签名113涉及例如私人-公共密钥对和签名生成函数。签名生成和验证系统的示例包括RSA密码系统(上述)。
方法500可包括获得S23听力设备2的第一硬件标识符148。获得S23听力设备2的第一硬件标识符148可包括接收听听力设备2的第一硬件标识符148,并且/或者从数据存储中检索听力设备2的第一硬件标识符148。听力设备2可从存储单元(如从寄存器)中检索或读取硬件标识符148,并且可将硬件标识符148发送到制造设备12。第一硬件标识符148可包括序列号、介质访问控制(MAC)、地址、芯片标识符或其中的任何组合。生成S3听力设备证书100可包括将第一硬件标识符148包括在听力设备证书100中。接收包括第一硬件标识符148的听力设备证书100的听力设备2然后通过比较其存储的第一硬件标识符和包括在所接收听力设备证书100中的第一硬件标识符148,验证听力设备证书100。
在一个或多个示例性方法中,生成S3听力设备证书可包括将证书类型标识符130、签字设备标识符136、包括第一硬件标识符148的一个或多个硬件标识符、客户端设备类型授权标识符144和/或令牌参数146包括在听力设备证书100。听力设备2使用在听力设备证书中的证书类型标识符130、客户端设备类型授权标识符144和/或令牌标识符146以控制并授权客户端设备访问听力设备。听力设备2可使用签字设备标识符136以认证听力设备证书100。听力设备2可使用一个或多个硬件标识符,包括第一硬件标识符148,以验证听力设备证书100确实用于听力设备2。
在一个或多个示例性方法中,生成S3听力设备证书包括将硬件平台标识符138、软件平台标识符140和/或证书时间戳142包括在听力设备证书100中。听力设备2可选地使用在听力设备证书100中的硬件平台标识符138、软件平台标识符140和/或证书时间戳142以验证与听力设备2的硬件或固件的兼容性并且可选地执行撤销。
术语“第一”、“第二”、“一级”、“二级”、“三级”、“四级”等不暗含任何具体顺序,但是它们旨在标识单独的元件。此外,使用术语第一、第二等不表示任何顺序或重要性,而是术语第一、第二等用于将一个元件与另一元件区分开。值得注意的是,在此和别处使用的词语第一和第二仅用于标记的目的并且不旨在表示任何空间或时间顺序。再者,第一元件的标记不暗含第二元件的存在。
尽管已经示出并描述了具体特征,但是将要理解的是,它们不旨在限制所要求的发明,并且对于本领域技术人员显而易见的是,在不背离所要求发明的精神和范围的情况下可以作出各种改变和修改。因此,应将说明书和附图视为说明性而非限制性意义。所要求的发明旨在覆盖所有替代物、修改和等效物。