CN111095963B - 用于安全测距的方法和装置 - Google Patents
用于安全测距的方法和装置 Download PDFInfo
- Publication number
- CN111095963B CN111095963B CN201880054753.7A CN201880054753A CN111095963B CN 111095963 B CN111095963 B CN 111095963B CN 201880054753 A CN201880054753 A CN 201880054753A CN 111095963 B CN111095963 B CN 111095963B
- Authority
- CN
- China
- Prior art keywords
- ranging
- key
- secure
- data
- session key
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/003—Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S13/00—Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
- G01S13/74—Systems using reradiation of radio waves, e.g. secondary radar systems; Analogous systems
- G01S13/76—Systems using reradiation of radio waves, e.g. secondary radar systems; Analogous systems wherein pulse-type signals are transmitted
- G01S13/765—Systems using reradiation of radio waves, e.g. secondary radar systems; Analogous systems wherein pulse-type signals are transmitted with exchange of information between interrogator and responder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1475—Passive attacks, e.g. eavesdropping or listening without modification of the traffic monitored
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic 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 using a predetermined code, e.g. password, passphrase or PIN
- H04L9/3231—Biological data, e.g. fingerprint, voice or retina
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3297—Cryptographic 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 time stamps, e.g. generation of time stamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/03—Protecting confidentiality, e.g. by encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/041—Key generation or derivation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/12—Detection or prevention of fraud
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
- H04L2209/805—Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0492—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload by using a location-limited connection, e.g. near-field communication or limited proximity of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0872—Generation of secret information including derivation or calculation of cryptographic keys or passwords using geo-location information, e.g. location data, time, relative position or proximity to other entities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biodiversity & Conservation Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mobile Radio Communication Systems (AREA)
- Lock And Its Accessories (AREA)
Abstract
本文所述的实施方案能够以减少和模糊泄漏信息与秘密信息之间的潜在相关性的方式生成用于测距操作的密码资料。一个实施方案提供了一种装置,该装置包括具有一个或多个测距传感器的测距模块。该测距模块通过硬件接口耦接到安全处理系统以接收至少一个加密的测距会话密钥,该测距模块对至少一个加密的测距会话密钥解密以生成测距会话密钥,生成稀疏测距输入,基于测距会话密钥导出消息会话密钥,并经由应用于消息会话密钥和稀疏测距输入的密钥导出级联来导出衍生测距密钥,该衍生测距密钥对测距会话期间传输的数据加密。
Description
相关专利申请
本专利申请要求2017年9月28日提交的美国临时专利申请62/564,947的优先权,该美国临时专利申请据此以引用方式并入本文。
技术领域
本公开整体涉及安全测距的领域。更具体地,本公开涉及增强安全测距系统对于对抗性攻击的抗性的系统。
背景技术
安全测距描述了诸如认证测距和距离边界的概念。在认证测距中,验证者实体测量到另一真实实体的距离,同时拒绝给攻击实体(攻击者)例如通过缩短的实测距离来干扰测量的机会。距离边界使得验证方能够获取针对到不可信证明方的距离的上边界。在安全测距期间可应用各种密码技术,以保护参与测距操作的真实设备的隐私和安全性。
在安全测距操作期间,用于保证操作安全的密码技术可能易受旁道攻击的影响。旁道攻击利用实现密码系统的计算设备的物理测量。此类攻击尝试将这些测量与设备的内部状态相关联。然后,攻击者尝试使用该相关性来发现与系统使用的密钥相关的信息。针对旁道攻击保护安全测距系统可能是资源密集型的,并且可能使实现安全测距的电子设备的开发复杂化。
发明内容
安全测距通过使用独立地由一个或多个测距密钥和输入生成或导出的测距代码,可用于设备之间的无线通信,诸如两个智能电话或者智能电话或可穿戴设备和/或其他设备(诸如机动车辆)之间的无线通信。安全测距允许设备基于所接收信号的飞行时间来分别确定设备之间的距离或范围。安全测距相互认证可用于为无线交互提供更高级别的安全性来抵御中继攻击。相互认证后,设备可以获得关于它们彼此邻近的保证,并且可参与进一步交互。
本文所述的实施方案能够以减少和模糊泄漏信息与秘密信息之间的潜在相关性的方式生成用于测距操作的密码资料。一个实施方案提供了一种装置,该装置包括测距模块,该测距模块具有一个或多个测距传感器。该测距模块通过硬件接口耦接到安全处理系统以接收至少一个加密的测距会话密钥,该测距模块对至少一个加密的测距会话密钥解密以生成测距会话密钥,生成稀疏测距输入,基于测距会话密钥导出消息会话密钥,并经由应用于消息会话密钥和稀疏测距输入的密钥导出级联来导出衍生测距密钥,该衍生测距密钥对测距会话期间传输的数据加密。
一个实施方案提供了一种保护测距操作的方法,该方法包括接收测距会话密钥和防重放计数器值,该防重放计数器值用于为测距帧生成安全前导码;基于测距会话密钥来导出消息会话密钥;基于防重放计数器值和多样化数据来生成稀疏测距输入;经由稀疏测距输入和消息会话密钥来导出衍生测距密钥;以及经由衍生测距密钥对在测距帧内传输的数据进行加密,其中测距帧是在测距操作的测距会话期间传输或接收的数据分组。
一个实施方案提供了一种数据处理系统,该数据处理系统包括安全处理系统,该安全处理系统包括安全处理器和安全处理器固件、安全引导只读存储器(ROM)和密码加速器,以及用于存储在密码系统中使用的一个或多个私钥的安全存储装置;应用程序处理系统,该应用程序处理系统包括引导ROM和一个或多个系统总线,该应用程序处理系统被配置为执行操作系统和一个或多个用户应用程序;系统存储器,该系统存储器耦接到一个或多个系统总线以存储操作系统和一个或多个用户应用程序;和测距模块,该测距模块包括一个或多个测距传感器,该测距模块通过硬件接口耦接到安全处理系统以接收至少一个加密的测距会话密钥,该测距模块对至少一个加密的测距会话密钥解密以生成测距会话密钥,生成稀疏测距输入,基于测距会话密钥导出消息会话密钥,并经由应用于消息会话密钥和稀疏测距输入的密钥导出级联来导出衍生测距密钥,衍生测距密钥对在测距会话期间传输的数据加密。
本文所述的实施方案可包括方法、数据处理系统和非暂态机器可读介质。
以上概述不包括本公开的所有实施方案的详尽列表。所有系统和方法可根据以上概述的各个方面和实施方案以及以下具体实施方式中所公开的那些的所有合适的组合来实践。
附图说明
本发明以举例的方式进行说明,并且不仅限于各个附图的图形,在附图中类似的标号指示类似的元件。
图1A-图1B示出了用于在设备之间执行安全测距的示例性系统。
图2是示出了根据一个实施方案的安全测距操作的发起的图示。
图3A-图3B示出了根据本文所述的实施方案的安全测距数据交换以及可用于传输安全测距数据的数据帧。
图4示出了根据一个实施方案的用于在两个设备之间执行安全测距的系统。
图5示出了根据本文所述的实施方案的用于安全测距系统的密钥导出。
图6是示出了根据一个实施方案的密钥导出和密文生成的流程图。
图7示出了根据一个实施方案的适于生成用于测距操作的密码资料的示例性处理系统。
图8示出了包括硬件以实现密码加速的示例性安全处理器。
图9示出了根据本文所述的实施方案的用于移动设备的移动数据处理和传感器系统。
具体实施方式
本文所述的实施方案提供了一种安全测距系统,该安全测距系统通过使用独立地由一个或多个测距密钥和输入生成或导出的测距代码,可用于设备之间的无线通信,诸如两个智能电话或者智能电话或可穿戴设备和/或其他设备(诸如机动车辆)之间的无线通信。在安全测距操作期间,用于执行密码操作的处理单元可能会泄漏可由旁道攻击在安全测距系统上捕获的信息。针对旁道攻击的对策包括减少可能与秘密数据相关的信息的泄漏和/或减少泄漏数据与秘密数据之间的相关性。这两种技术都可用于保护系统。然而,减少信息泄漏可能增加与使用安全测距的电子设备相关联的成本、重量、复杂性、功率消耗和/或延迟。此外,泄漏数据和机密数据之间的相关性即使很小,也会损害系统的安全性。
本文所述的实施方案能够以减少和模糊泄漏信息与秘密信息之间的潜在相关性的方式生成用于测距操作的密码资料。另外,实施方案可实现相对于本领域已知的安全测距系统的增强的安全性,并且可通过降低经由无线发射跟踪电子设备的能力来增强用户隐私。还可应用本文所述的技术来降低与物理屏蔽密码加速器相关联的费用和设计复杂性,以减少安全测距操作期间的信息泄漏。
下文将描述多个实施方案的各个方面。另外,说明书随附的附图将用于示出实施方案的细节。然而,以下描述和附图应被视为例示而非限制所描述的实施方案,因为在某些情况下,可不描述熟知的或常规的细节以使得能够简洁地论述实施方案。
在本文中对“一个实施方案”或“实施方案”的引用是指结合该实施方案描述的特定特征、结构或特性可以被包括在至少一个实施方案中。在本说明书中的各个位置出现短语“在一个实施方案中”不一定都是指同一个实施方案。在随后的附图中所描绘的过程可由包括硬件(例如,电路、专用逻辑部件等等)、软件或这两者的组合的处理逻辑部件来执行。虽然下文按照某些顺序操作来描述该过程,但应当理解,所描述的某些操作可以不同的顺序执行。此外,某些操作也可并行执行而非按顺序执行。
图1A-图1B示出了根据本文描述的实施方案,用于在设备之间执行安全测距的示例性系统。图1A示出了可用于在两个设备之间实现超宽带(UWB)安全测距的系统100。图1B示出了可用于使用蓝牙和超宽带无线电部件实现安全测距的系统120。
如图1A所示,安全测距可在包括第一设备102和第二设备103的系统100之内执行。设备102可包括测距无线电部件(RR 108)和相关联的天线109、安全处理器(SP 107)和应用处理器系统(AP系统105)。设备103可包括多个测距无线电部件(RR 112A-112F)和相关联的天线113A-113F,以及安全处理器(SP 111)。设备102可为例如智能电话、平板电脑、可穿戴设备(诸如智能设备)或另一电子设备。设备103可以是另一电子设备或移动系统,诸如机动车辆、移动房屋或汽车。在一个实施方案中,设备103可为智能房屋系统内的门或入口上的锁。安全测距可用于此类系统中的自动锁定或解锁。另外,安全测距可用于可根据与安全设备的距离而被激活或去激活的任何种类的安全系统,诸如但不限于警报器、摄像头、百叶窗等。
设备102被示出为包括应用处理器系统(AP系统105),该系统可执行用户程序,诸如但不限于电话或文本消息应用程序,或web浏览器应用程序、地图绘制应用程序或其他信息、实用程序或娱乐相关应用程序。在一个实施方案中,设备103可省略应用处理器,但可包括被定制为执行特定任务而不具有执行通用应用程序的能力的专用处理器。
设备102和设备103各自包括一种类型的安全处理器(例如,SP 107、SP 111)。安全处理器是包括用于执行密码操作的专用逻辑部件的集成电路。安全处理器可嵌入在包括要增强的多个物理安全措施的封装中。示例性安全处理器包括安全区域处理器(SEP)、安全元件或可信平台模块(TPM)。每个设备中的安全处理器(SP 107、SP111)可以是相同或相似类型的处理器,或实现通用密码技术的不同安全处理器。安全处理器可执行用于安全测距的密码操作,并且还可实现附加安全操作,诸如接收和保护用户密码、指纹或其他私有机密用户数据。
设备102可包括一个或多个测距无线电部件(RR 108),其耦接到一个或多个天线(例如,天线109)。测距无线电部件(RR 108)可以实现为超宽带无线电部件,其类似于实现IEEE 802.15.4a标准的无线电部件。设备102上的测距无线电部件可以将伪随机测距代码发送到设备103上的测距无线电部件(RR 112A-112F),并且可以接收此类代码的传输。在一个实施方案中,可采用双向测距,其中设备102上的测距无线电部件(RR 108)将第一代码序列传输至设备103上的一个或多个测距无线电部件(RR 112A-112F)。设备103上的接收测距无线电部件中的每一者可利用被传输回设备102上的测距无线电部件(RR 108)的代码序列来作出响应。设备103上的测距无线电部件可通过一条或多条总线耦接至设备103的安全处理器(SP 111)。SP 111可用于执行作为设备103的安全测距过程的一部分的密码操作。同样,设备102中的SP 107可通过一条或多条总线与RR 108耦接,并且可用于执行作为设备102的安全测距过程的一部分的密码操作。
设备103被示出为具有围绕周边分布的多个测距无线电部件和天线,以允许使用三角测量来确定第二设备104相对于设备102的位置。系统101示出设备103具有六个测距无线电部件(RR 112A-112F),其中对应天线113A-113F耦接到每个无线电部件。然而,应当理解,设备103可将减少数量的测距无线电部件与相同数量的多个天线一起使用,其中减少数量的测距无线电部件可利用不同天线执行时分复用,以提供与六个测距无线电部件相同的结果。
在一个实施方案中,可以使用与测距通信信道不同的无线电协议或通信信道来建立第一通信信道。例如,可以在每个设备上使用蓝牙无线电部件以在设备之间建立安全连接,然后允许每个设备上的安全元件执行安全密钥交换,从中可以导出或者生成测距密钥。本文描述了蓝牙的功率效率。然而,一些实施方案可排除蓝牙的使用,因为本文所述的安全测距系统可仅使用超宽带无线电部件来实现。
图1B示出了可用于使用蓝牙和超宽带无线电部件实现安全测距的系统120。图1B的系统120包括第一设备121和第二设备122。设备121包括蓝牙无线电部件125和相关联的天线126。设备122也包括蓝牙无线电部件135和相关联的天线136。设备121包括测距无线电部件(RR 131)和相关联的天线132。设备122包括多个测距无线电部件(RR 141A-141B)和相关联的天线142A-142B。在一个实施方案中,蓝牙无线电部件125、135可用于建立安全连接,以供相应设备内的安全处理器(SP 127、SP 137)使用。安全连接可用于建立如本文所述的一个或多个测距密钥。然后可使用测距密钥对在测距过程期间传输的数据进行加密。每个设备可为用户程序的执行而提供的应用程序处理系统(AP 123、AP 133)诸如是但不限于蜂窝电话程序、导航程序、文本消息程序等。此外,这些用户应用程序可提供用户界面,允许用户设置一个设备(诸如智能电话)只需在智能电话处于用户口袋或钱包里等情况下或在用户正佩戴可穿戴设备时走向汽车,即可解锁另一个设备(诸如汽车或门禁)。
系统120中的每个设备121、122可以包括存储器(例如,存储器129、存储器139),其可存储密码值或参数,诸如可以在密码操作中用于认证或加密或以其他方式保护设备内以及设备之间的通信的证书。例如,设备121上的存储器129可包括用于该设备的证书(设备证书130A)以及用于设备内的测距无线电部件的证书(RR证书130B)。同样,设备122上的存储器139可包括用于该设备的证书(设备证书140A)以及用于设备内的测距无线电部件的证书(RR证书140B)。在各种实施方案中,在设备包括多个测距无线电部件的情况下,每个测距无线电部件可与单独的证书相关联或可共享公共证书。在一个实施方案中,设备上的存储器129、139仅可由相应设备上的安全元件(SP 107、SP 111)访问。在一个实施方案中,每个设备之内的安全元件处理系统通过安全接口耦接到蓝牙无线电部件和测距无线电部件。在一个实施方案中,该安全接口可以类似于由Inc.(Cupertino,California)提供的设备内的安全区域处理器与应用程序处理系统之间的安全接口。
为了准备进行安全测距,可以使用与测距无线电部件所使用的无线通信信道不同的无线通信信道来交换密钥资料。当设备处于彼此之间的范围内以建立该初始无线通信信道时(例如,通过蓝牙或在一些实施方案中,通过Wi-Fi),可建立通信信道以发起安全测距通信。可加密该初始通信信道以维护对初始交换的资料保密。
初始无线通信信道(例如,蓝牙、Wi-Fi等)的基础技术可通过预先建立的配对提供相互认证。在隐私方面,蓝牙低功耗(来自版本4.2)支持在已经配对的设备之间建立隐私保护信道,允许设备使用看似随机的标识符。在一个实施方案中,用户可对具有蓝牙和安全测距无线电部件的多个电子设备进行配对。例如,可在设备之间执行蓝牙配对,并且该蓝牙配对可用于使用安全测距无线电部件来发起安全测距操作。例如,具有智能电话、智能手表或另一个人的电子设备的用户可在智能电话或智能电话与汽车或另一机动车辆的配备蓝牙的电子系统之间执行蓝牙配对。这种蓝牙配对可用来建立用于初始数据交换的安全信道,该初始数据交换可被执行以准备进行安全测距。
图2是示出了根据一个实施方案的安全测距操作的发起的图示。如本文所述的个人电子设备可包括移动设备蓝牙守护进程220,其可为具有对设备上的蓝牙无线电部件的访问权和控制权限的软件或其他逻辑部件。在一个实施方案中,汽车或机动车辆可为装备有测距模块的设备230,其包括具有一个或多个测距无线电部件的测距模块。例如,机动车辆内的测距模块可控制围绕车辆周边布置的多个测距无线电部件,与图1A中的设备103的测距无线电部件(RR 112A-112F)一样。移动设备蓝牙守护进程220和装备有测距模块的设备230的操作可被描述为设备之间的距离210的函数,该距离可经由无线测距技术诸如射频单一强度指示(RSSI)来确定。
在一个实施方案中,如框221所示,在大约20米(211)处,移动设备蓝牙守护进程220可在装备有测距模块的设备230上发起测距模块的蓝牙发现。测距模块的蓝牙发现可包括向装备有测距模块的设备230发送唤醒信号(222)。如框231所示,唤醒信号(222)可使装备有测距模块的设备230唤醒和引导安全测距系统,其中安全测距系统可包括安全处理器(SP)、超宽带(UWB)无线电部件和由安全测距系统使用的其他部件。引导安全测距系统的部件可包括从装备有测距模块的设备230内的只读存储器或密码保护存储器加载一个或多个安全引导图像。
如框223处所示,移动设备可建立蓝牙链路以用于设置装备有测距模块的设备230的一个或多个传感器。建立蓝牙链路可取决于设备之间先前生成的配对。在一个实施方案中,所建立的蓝牙链路可以是加密的蓝牙链路。移动设备蓝牙守护进程220然后可发送信号(224)以指示测距模块准备进行测距操作。响应于信号224,装备有测距模块的设备可执行针对安全测距的准备操作,包括在装备有测距模块的设备和移动设备之间执行相互认证(如框232处所示),在装备有测距模块的设备和移动设备上生成一个或多个会话密钥(如框233处所示),以及生成安全前导码(如框234处所示)。
在一个实施方案中,可使用在框223处建立的蓝牙链路来执行在框232处执行的相互认证。蓝牙链路可用于交换设备标识符、密钥、证书或能够在设备之间进行相互认证的其他信息。该初始通信信道可被加密以对初始交换的资料保密。虽然蓝牙被示出为进行初始测距、通信和认证的介质,但也可使用其他无线电技术,诸如Wi-Fi。
在框233处生成的会话密钥是定义安全测距通信会话的密钥资料。会话中的所有操作都从会话密钥导出。在一个实施方案中,与其他实体的通信或与同一实体的重新认证导致使用不同的会话密钥,并且将被视为不同的会话。在一个实施方案中,会话密钥的生成由移动设备上的安全处理器和使用共享秘密的装备有测距模块的设备来执行。基于先前执行的操作或先前建立的关系,每个设备中的安全处理器可持有相同的秘密值或可获知另一设备相关联的公共密钥。
在框234处生成的安全前导码是在安全测距过程中使用的不可预测信号。安全前导码的飞行时间用于确定设备之间的距离。安全前导码的不可预测性是为了防止敌对方预测序列信号并将序列提前发送,以使其在测距过程中显得更接近。安全前导码可部分地基于周期性地递增的防重放计数器值来生成。
一旦针对安全测距过程的准备完成,移动设备蓝牙守护进程220可将开始测距信号(225)发送至装备有测距模块的设备,该设备随后可使用测距无线电传感器开始测距过程,如框235处所示。
在一个实施方案中,安全测距是根据帧、周期和会话来执行的。测距帧是在测距期间发送或接收的单个数据分组。测距周期是包含多个交换的帧的重复模式。测距会话是一组可持续至多几分钟或几小时的测距周期,其中一些实施方案能够将单个会话的安全性维持多天。测距会话允许测距端点使用单组商定的密钥资料来多次安全地确定距离。例如,在一个实施方案中,相同的会话密钥被用于测距会话内并被用于导出定义会话的密钥资料。在此类实施方案中,会话密钥由一个或多个设备内的应用处理器生成,而导出密钥由安全处理器或密码引擎生成。为会话维护相同的会话密钥使得能够执行多个测距周期而不需要使用应用处理器,这样可维持在低功率状态下。
图3A-图3B示出了根据本文所述的实施方案的安全测距数据交换以及可用于传输安全测距数据的数据帧。图3A示出了根据一个实施方案的两个设备之间的数据交换。图3B示出了可在安全测距过程期间交换的多种类型或数据帧的格式。在安全测距数据交换期间,传输设备可传输加密的代码序列和一个或多个加密时间戳。接收设备可在本地导出加密的代码序列并将本地导出的代码序列与所接收的代码序列相关联。该设备还对所传输的时间戳进行解密和验证。如果代码序列或时间戳未通过验证,那么安全测距过程无法继续。在此类场景中,测距无线电部件可警示设备内的安全处理器,攻击者正试图绕过安全测距系统。
如图3A所示,第一设备301和第二设备302可在安全测距周期期间执行无线数据交换。安全测距数据交换包括两个或更多个阶段;执行物理测距测量的第一阶段310,交换时间戳的第二阶段320,以及发送时间戳响应的第三任选阶段。在一个实施方案中,在第一阶段期间交换的数据使用1型帧(例如,如图3B中的1型帧340),而在第二阶段320和第三阶段330期间交换的数据可使用2型帧(例如,如图3B中的2型帧350)。例示的数据交换在移动设备和装备有测距模块的设备的一个或多个测距传感器(例如,测距无线电部件)之间执行。然而,实施方案还支持在多个设备之间进行测距,诸如多个移动设备之间,移动设备和多个测距无线电部件之间,或多个移动设备和一个或多个移动设备之间。
在第一阶段310期间,执行物理测距测量,其中在设备之间交换数据分组并且对数据分组的飞行时间进行测量。设备301被例示为发起设备,但任一设备都可发起测距过程。设备301可发送第一传输分组311,该第一传输分组可被设备302接收为第一接收分组312。设备302然后可发送第二传输分组314,该第二传输分组被设备301接收为第二接收分组313。作为响应,设备301可发送第三传输分组315,该第三传输分组可被接收为第三接收分组316。然后,设备可使用对分组的飞行时间的测量来确定设备之间的距离。在一个实施方案中,可基于在第二阶段320期间在设备之间交换的时间戳来确定先前传输的分组的接收时间。
在第二阶段320期间,设备301可发送包括加密的时间戳数据的第四传输分组321。加密的时间戳数据可用于安全测距过程的防重放机制,并且通过发送先前接收的分组的接收时间来实现精确的距离测量。该分组可被设备302接收为第四接收分组322,该设备可对时间戳进行解密和验证。在设备302以一个或多个加密的时间戳进行响应的一些实施方案中,可执行任选的第三阶段330。在一个实施方案中,使用经认证的加密算法来加密在安全测距过程期间交换的时间戳,以对加密的数据启用认证和保密。已认证加密的认证方面提供了保证,即敌对方未修改安全测距期间报告的时间戳。已认证加密过程的输出可包括加密的数据以及消息认证代码形式的认证标签。可以使用认证标记来认证加密的数据,以确保数据在传输期间未被篡改。如果认证标签与加密的数据不匹配,则针对加密的数据的解密过程将返回错误。
图3B示出了在测距周期期间使用的1型帧340和2型帧350的示例性格式。示例性帧格式部分地基于IEEE 802.15.4标准所定义的格式。在一个实施方案中,1型帧340和2型帧350各自包括同步标头(SYNC 341、SYNC 351)和开始帧定界符(SFD 342、SFD 352),它们分别可用于促进数据流的对齐和同步以及标记帧的开始。1型帧340可包括安全前导码344,该安全前导码是用作安全测距过程的安全系统的一部分的不可预测波形。安全前导码344可部分地基于防重放计数器来生成。
1型帧340和2型帧两者还包括物理层标头(PHY标头346、PHY标头356),其可包含诸如相应帧的长度的数据。在相应物理层标头之后,帧包含物理层有效载荷数据347、357。物理层有效载荷数据347、357可包括媒体访问控制(MAC)标头中的源地址和目标地址,以及每个帧的数据有效载荷。1型帧340的有效载荷可包括但不限于帧控制数据、安全性标头、帧计数数据、标识符数据,以及可用于在测距过程期间促进安全性的其他信息。2型帧350的有效载荷可包括与1型帧340类似的数据,并且还包括在测距过程的第二阶段320或第三阶段330期间交换的加密时间戳。可使用图4的硬件架构来执行图2和图3的设置和数据交换。图5和图6中进一步示出了用于加密交换数据的各种密钥的生成。
图4示出了根据一个实施方案的用于在两个设备之间执行安全测距的示例性系统。示出了第一设备450和第二设备470,其中每个设备可以是本文所述的任何电子设备。在一个实施方案中,因为设备450和设备470中的每一者能够在本地独立地生成用于传输或相关的加密的代码序列。设备450包括安全处理器401,该安全处理器可以是本文所述的任何安全处理器。安全处理器401可通过安全接口405与测距无线电部件415耦接。类似地,设备470包括安全处理器403,该安全处理器通过安全接口407与测距无线电部件417耦接。在一个实施方案中,安全接口405和407是安全接口电路,其为测距无线电部件415、417与安全处理器401、403之间的数据连接提供增强的安全性。
如图所示,安全处理器401、403通过设置过程402可执行安全密钥交换以交换用于生成会话密钥(例如,会话密钥409、411)的密钥资料。设置过程402可通过安全的蓝牙或Wi-Fi连接执行,并且可如图2所示进行。在每个设备450、470上,会话密钥409、411可通过安全接口405、407生成、加密并传输至设备450、470上的对应测距无线电部件415、417。然后,每个设备450、470可分别且独立地从会话密钥导出密钥资料和加密的代码序列。然后可以将会话密钥与会话参数(诸如会话标识符、序列标识符、发射器标识符,或此类会话参数的组合)组合,以创建种子419,然后该种子可以用作随机数生成器421的输入。种子419可以是会话密钥409和一个或多个会话参数的级联(或其他组合)。
在一个实施方案中,可在测距无线电部件415接收加密的会话密钥409和相关联的数据密钥之后创建用于测距无线电部件415的种子419。测距无线电部件415将对加密的会话密钥409解密并将会话密钥409与会话参数(诸如会话标识符或序列标识符或发射器标识符或此类会话参数的组合)组合以创建种子419。种子419可用作随机数生成器421的输入。在一个实施方案中,会话密钥409与附加参数的组合可由设备内的处理单元执行,该处理单元可为中央处理器或安全处理器401和测距无线电部件415之外的另一处理单元。在各种实施方案中,随机数生成器421可以是伪随机数生成器(PRNG),诸如确定性随机比特生成器(DRBG),或者可以使用伪随机函数(PRF)族来实现。在一个实施方案中,随机数生成器421是密码安全伪随机数生成器(CSPRNG)。在此类实施方案中,随机数生成器421被配置为以确定的方式操作,以为给定的种子生成相同的随机数序列。可以通过使用计数器或其他增量器来生成随机数序列,以致使随机数生成器421基于特定种子输出随机数序列作为输出431。然后,可以由循环移位器429(例如,前导码选择器、循环移位器和极性改变器)进一步处理那些输出431,这些前导码选择器、循环移位器和极性改变器可以选择前导码、将输出循环移位并且还反转一个或多个位的极性。通常,测距无线电部件415用于创建由接收器相关并解码的波形。所述过程只是可用于生成此类波形的一种技术,因为也可使用其他技术。
前导码选择器、循环移位器和极性转换器的结果可作为输出434提供给相关器425或RF收发器427。当测距无线电部件A在向其他测距无线电部件发射时,来自循环移位器429的输出通过输出434被提供给RF收发器427的发射器,以允许通过天线438发射加密的代码序列,使其由其他测距无线电部件(诸如测距无线电部件417)接收。当测距无线电部件415在接收加密的代码序列时,RF收发器427中的接收器可向相关器425提供输出433,即所接收的代码序列。相关器425还从循环移位器429接收输出435以执行相关操作,以确定加密的代码序列是否匹配输出435上的本地生成的加密代码序列。然而,在对所接收的波形执行相关之前,不需要执行波形的生成。相关器425还可用于使用本领域已知的技术来执行测距操作。
相关器425执行的相关运算的输出可以被提供给控制器423,该控制器可以指示距离以及加密的代码序列是否匹配。控制器423可以提供要组合到种子419中的会话参数,并且还可以与安全元件401通信以指示安全测距操作是否成功。在一个实施方案中,由RF收发器427接收的数据437也可传输至控制器423。
测距无线电部件417能够以与测距无线电部件415类似的方式工作,并且包括类似的元件,诸如随机数生成器453,其生成输出463,然后可以使用循环移位器461对输出463进行移位和反转以提供两个输出,其中一个输出提供给相关器457,并且另一个输出提供给RF收发器459和天线460。控制器455可提供并跟踪会话参数,该会话参数可与会话密钥411一起作为输入被提供以创建种子451。种子451然后被输入至随机数生成器453。另外,由RF收发器接收的数据468可被传输至控制器455。
在一个实施方案中,为来自确定性随机数生成器(DRNG)的特定输出指定特定前导码、循环移位和极性改变的参数可以包括在来自DRNG(例如,随机数生成器421和453)的特定输出的一个或多个部分内,并且这些参数可以由循环移位器429、461使用,以执行由来自DRNG的特定输出的这些部分指定的特定移位和反转。
在一个实施方案中,可以实现各种技术以强化防御对系统的旁道攻击。旁道攻击是基于从系统物理实现泄漏的信息(例如,功耗,电磁泄漏等)来破坏系统安全性的尝试,并且可以通过减少信息泄漏或消除泄漏的信息与秘密信息之间的相关性来抵抗。可以在密码过程内的各个点处实现对旁道攻击的抵抗。在一个实施方案中,可以通过将抵御旁道攻击的防护集中于DRNG的初始状态的构造,来提高系统的整体性能。一旦生成初始状态的过程被针对旁道攻击进行强化,就减少了在各种密码操作期间实施旁道对抗措施的需要。
图5示出了根据本文所述的实施方案的用于安全测距的密钥导出系统500。所示的密钥导出系统500通过减小安全测距期间呈现的攻击配置文件来实现加密系统的增强的安全性、保密性和旁道攻击抗性。密钥导出系统500可针对每个会话或配置更改,针对每个测距周期和针对每个帧导出或生成新密钥或密码资料。生成或导出的每会话/配置输入和密钥资料510包括会话密钥511和协商配置512作为输入,这些输入用于生成盐515、加盐散列514、消息会话密钥(mSK 517)和隐私密钥(mPK 519)。每周期密钥资料520包括导出的测距密钥(dRK 522)和导出的数据密钥(dDK 523)。每帧密码资料包括随机数值535A-535B和认证数据(AD 537)。在一个实施方案中,已认证数据包括每会话的加盐散列514,而随机数值535A-535B是基于包括源地址532和与测距帧相关联的帧计数器533的输入数据的组合生成的。认证数据537可用作附加认证数据(AAD)以启用有效载荷数据534的认证加密。防重放计数器值531被用作输入以生成安全前导码540和1型帧密文541。在一个实施方案中,防重放计数器的初始值可通过蓝牙或其他无线电无线连接在设备之间进行协调。防重放计数器的值然后可在预期传输或接收1型帧的时隙期间递增。有效载荷数据534(包括时间戳数据)被用作输入以生成2型帧密文542。
对于每个会话或配置更改,密钥导出系统基于会话密钥511和协商配置512来导出资料。会话密钥511可与本文所述的其他会话密钥(会话密钥409、会话密钥411等)相同或相似。在每个会话开始时,会话密钥511用于使用多种密钥导出函数(KDF 513、516、518)导出密码资料的多个元素(例如,盐515、mSK517、mPK 519)。盐515用于基于协商配置512来生成加盐散列514。mSK 517是从会话密钥511基于每个会话导出的测距密钥。mPK 519是用于增强安全测距过程的隐秘性的隐私密钥。例如,在一个实施方案中,mPK 519可用于加密在1型帧中传输的防重放计数器值。
部分地使用协商配置512来生成加盐散列514。协商配置512指定安全测距系统的操作的各种细节,包括影响系统安全性的细节。例如,在一个实施方案中,协商配置512可用于影响例如防重放计数器值531的初始值(在计数器递增时),以及为协议中涉及的每个端点保留哪些设定值。使用盐515从协商配置512产生加盐散列。使用从协商配置512导出的加盐散列使得能够检测修改由设备在系统内所协商的配置细节的尝试。在一个实施方案中,在安全边界之外确定协商配置512,这潜在地允许对应用处理器具有访问权限的攻击者尝试碰撞攻击,使得两个生成的配置产生相同的散列。如果攻击者要查找碰撞,攻击者可能能够强制使用修改后的配置,从而使攻击者能够在攻击期间获得优势。
在各种实施方案中,本文所述的密钥导出函数符合“Recommendation for KeyDerivation Using Pseudorandom Functions”(使用伪随机函数导出密钥的建议),NISTSpecial Publication 800-108。示例性密钥导出函数可包括使用计数器模式的密钥导出函数,其中使用计数器作为迭代变量来计算在KDF中使用的伪随机函数(PRF)的输出。在各种实施方案中,用于计算所示密码资料的KDF可各自使用相同或不同的PRF。例如,可使用密钥散列消息认证代码(HMAC)或基于密码的消息认证代码(CMAC)。在一个实施方案中,可使用AES256-CMAC和/或AES128-CMAC。在各种实施方案中,可生成各种长度的密钥。对于某些KDF,密钥导出密钥的长度由用于密钥导出的PRF定义。然而,一些PRF可适应不同的密钥长度。如果HMAC被用作PRF,那么KDF可以使用基本上任何长度的密钥导出密钥。在各种实施方案中,使用介于128位和256位之间的密钥长度,但实施方案不限于任何特定密钥长度。
在一个实施方案中,使用密钥导出函数级联(KDF级联521)在每个测距周期中生成dRK 522和dDK 523。KDF级联521是多个密钥导出函数的嵌套级联。使用KDF的级联可通过将多个密钥导出阶段集中到单个步骤中来增强旁道攻击抗性,从而以级联方式执行密钥资料的导出。例如,可以基于会话密钥(例如,mSK 517)和一组一个或多个参数(例如,param1、param2、param3等)以级联方式生成导出密钥(dKey),使得dKey=KDF(KDF(KDF(mSK,param1),param2),param3)。使用级联可通过减少在密钥导出期间可捕获的数据的量来提供旁道攻击抗性。可以使用任意数量的密钥导出函数,并在生成衍生密钥期间将任意数量的附加输入参数用作多样化数据。
在一些实施方案中,dRK 522和dDK 523从消息会话(mSK 517)导出,密钥多样化数据部分地从当前防重放计数器值531导出。在一些实施方案中,当前防重放计数器可分布在提供给密钥导出函数的密钥多样化数据中,这会生成稀疏测距输入以提供给密钥导出函数。例如,可将来自当前防重放计数器的一个或多个位插入到多样化数据的每个字节中。另选地,防重放计数器的一个或多个位可分布在应用于每个密钥导出函数的输入中。
在多样化数据或其他密钥导出函数输入中散布防重放计数器的位可减小经由利用旁道攻击诸如差分功率分析来捕获秘密资料的可能性。当KDF基于AES块密码时,该技术尤其有效。对于KDF级联521中使用的导出过程的第一块,如果仅将计数器的一个位分布到多样化数据的一个字节,那么只有两个输入可用于攻击第一轮的AES子字节,并且只有16个不同的输入可用于攻击第一轮的混合列。因此,考虑到对系统的密码实现的泄漏模型的最低假设,攻击是不切实际的。对于第二块,可以假设敌对方不知道正向块(前一个块的输出)。消息块可以是带有正向块的XORd。当消息块稀疏时,在最坏情况下,敌对方仅恢复正向块的对应16个位,因此知道第二AES块的稀疏16位输入。该第二块的其他位是变化的,但未知。第二块的输入的已知16位是稀疏的,在处理第二块期间,敌对方不能够恢复该密钥。同样的推理也适用于针对mSK 517的CMAC操作的后续块。对于最后一个块,采取步骤以确保KDF级联521的输出不是已知的,从而使敌对方不能对最后一个AES块的最后几轮执行旁道攻击。因此,在密钥导出中使用单向函数(CMAC)来导出dRK 522和dDK 523而没有可变输入。
可以使用来自防重放计数器531、加盐散列514和dRK 522的密码安全伪随机数生成器(CSPRNG 536)来生成安全前导码540。在一个实施方案中,使用诸如图4所示的那些技术来生成安全前导码,其中加盐散列514、防重放计数器和dRK被用作种子数据(例如,种子419、451)。可使用AES-CCM-128安全套件(例如CCM 538、CCM 539)基于每个帧生成1型帧密文541和2型帧密文542,该安全套件使用了密码块链接消息认证代码技术。使用块密码算法以密码块链接方式对数据进行加密,以创建块链。每个块取决于前一个块的正确加密,这会创建一种相互依赖关系,从而确保对任何明文位的更改将导致最终加密块以不知道块密码的密钥就无法被预测或抵消的方式进行更改。AES-CCM的使用使得能够进行数据加密和数据真实性验证。虽然示出了CCM的使用,但也可使用其他经认证的加密函数来代替CCM。
在一个实施方案中,CCM 538、539表示测距无线电部件和/或安全处理器内的密码加速器。在一个实施方案中,明文数据、密钥和所产生的密文通过测距无线电部件和安全处理器之间的安全接口进行交换。在一个实施方案中,测距无线电部件包括用于存储密钥资料的安全存储器和用于在传输之前对测距数据帧进行加密的密码加速器。在一个实施方案中,一个或多个测距无线电部件和安全处理器共享安全存储器,并且安全处理器可用于在由测距无线电部件传输之前对帧数据进行加密。在一个实施方案中,安全处理器用于生成密钥资料的一部分(例如,会话密钥511),而密钥导出系统500的操作在测距无线电部件上执行。
图6是示出了根据一个实施方案的密钥导出和密文生成的过程600的流程图。过程600可由如本文所述的测距无线电部件和/或安全处理器来执行,以实现密钥导出系统,诸如图5所示的密钥导出系统500。过程600的各种操作可预先计算或与其他操作并行地执行。例如,可执行预先计算以放宽对密钥导出函数的延迟要求。另外,在一个实施方案中,如本文所述的测距无线电部件可将接收器操作和密码操作并行化,其中在接收输入帧的同时执行用于生成用于传输的帧的一些密钥导出或加密操作。
在一个实施方案中,过程600的操作包括接收帧计数器和源地址(如框601处所示),以及接收会话密钥和防重放计数器值(如框602处所示)。在一个实施方案中,可在本地生成在框602处接收的防重放计数器。在一个实施方案中,可接收防重放计数器的初始值,并且可通过周期性地递增防重放计数器来生成新值。在此类实施方案中,在设备之间协商的测距配置可确定防重放计数器的更新速率。在框603处,帧计数器和源地址可用于从源地址和帧计数器导出第一随机数。在框603处导出第一随机数还可包括使用附加输入来减小重复的概率。在一个实施方案中,提供会话标识符作为附加输入。在框604处,可将在框602处接收到的会话密钥和防重放计数器值输入至密钥导出函数中以导出盐。在框606处,可基于协商的配置和在框604处导出的盐来生成加盐散列。在框608处,将会话密钥输入至密钥导出函数中以生成mSK。在框610处,将mSK和防重放计数器输入至密钥导出函数级联中以生成dRK和dDK。在一个实施方案中,使用基于密钥导出级联和稀疏数据输入的导出将mSK和防重放计数器组合为旁道攻击应对措施。在框612处,将会话密钥输入至密钥导出函数中以生成mPK。在框614处,可将在框602处接收的防重放计数器值、在框606处生成的加盐散列以及在框610处生成的dRK提供给CSPRNG以生成安全前导码。在框616处,可将在框612处生成的mPK、在框602处接收的防重放计数器值以及在框603处导出的第一随机数提供给AES-CCM逻辑部件,以生成在1型帧(诸如图3B的1型帧340)内传输的1型帧密文。
在过程600期间,可基于每个帧来更新、改变或递增一个或多个输入值。在一个实施方案中,在框601处接收的并且用于在框603处生成第一随机数的帧计数器值可在框605处更新。任选地,也可在框605处接收更新的源地址。然后可在框607处使用更新的帧计数器和可能更新的源地址来导出第二随机数。在一个实施方案中,可在框607处使用其他附加输入诸如会话标识符来导出第二随机数。通常,可以针对每个帧递增帧计数器。然而,在一个实施方案中,在源地址改变的情况下,在框处接收的更新的帧计数器可与在框601处接收的帧计数器是非连续的。与帧相关联的源地址可被周期性地滚动或随机化以增强设备隐私。本文所述的蓝牙和UWB地址可被配置为具有隐私功能,该隐私功能使得通告分组内的地址被替换为按一定间隔改变的随机值,从而防止恶意攻击者确定一系列不同的随机生成的地址实际上与同一物理设备相关。因此,当源地址在框605处改变时,帧计数器也可被重置以防止可用于损害用户隐私的信息的泄漏。
第二随机数可用于加密在框609处接收的时间戳。在框618处,可将经认证的数据(可以是或包括在框606处生成的加盐散列)连同在框610处生成的dDK、在框607处导出的第二随机数和在框609处接收的时间戳一起输入至AES-CCM逻辑部件,以生成在2型帧(诸如图3B的2型帧350)内传输的密文。
图7示出了根据一个实施方案的适于生成用于测距操作的密码资料的示例性处理系统700。在一个实施方案中,处理系统700包括多核应用处理器710和能够在处理系统700内实现通信的交叉结构,尽管在其他实施方案中也可使用系统总线。在一个实施方案中,应用处理器710包括多个内核712A-712B和至少一个高速缓存214。应用处理器710可帮助在电子设备(诸如智能电话、平板电脑、可穿戴设备或本文所述的其他电子设备)上执行各种应用程序。然后,应用处理器710可使用存储在本地非易失性存储器770上的引导代码722安全地引导,该本地非易失性存储器可以是与系统的主要非易失性存储器不同的存储设备,或者可以是主要非易失性存储器的安全部分。引导代码可伴随有验证代码774,该验证代码可用于验证引导代码772未被修改。
处理系统700还包括安全处理器760,该安全处理器可以是本文所述的任何安全处理器,诸如但不限于安全区域处理器(SEP)、安全元件或可信平台模块(TPM)。安全处理器760包括安全电路,该安全电路被配置为维护用于对与用户相关联的数据密钥进行加密和解密的用户密钥。如本文所用,术语“安全电路”是指保护经隔离的内部资源使其不被任何外部电路直接访问的电路。安全处理器760可用于保护与经由I/O接口720连接的外围设备的通信。安全处理器760可包括密码引擎764,该密码引擎包括用于对安全处理器760执行密码操作的电路。密码操作可包括加密和解密用于在系统内执行存储卷加密或其他数据加密操作的数据密钥。
处理系统700还可包括测距无线电部件730,该测距无线电部件可为用于执行如本文所述的安全测距的超宽带无线电部件。测距无线电部件730还可包括密码引擎734,以使得能够导出密码资料和加密在安全测距过程期间传输的测距数据。密码引擎734可与安全处理器760内的密码引擎764协同工作,以在测距过程期间实现对测距数据的高速和安全加密和解密。测距无线电部件730中的密码引擎734和安全处理器中的密码引擎764可各自实现任何合适的加密算法,诸如数据加密标准(DES)、高级加密标准(AES)、Rivest ShamirAdleman(RSA)或基于椭圆曲线加密(ECC)的加密算法。
图8是示出了根据一个实施方案的安全处理器760的框图。在例示的实施方案中,安全处理器760包括一个或多个核心处理器832、安全外围设备836A-836E、安全ROM 834、安全邮箱860、过滤器862、功率控制单元864、时钟控制单元866和唯一标识符(UID)868。过滤器862可耦接到图7的结构750以及安全处理器760的其他部件也耦接到的本地互连件870。本地互连件870可被配置为基于总线的互连件或另一种互连件,诸如基于分组的、分层的、点到点的或交叉结构。在一个实施方案中,与本地互连件870耦接的安全外围设备836A-836E包括一组AES加密引擎836A-836B、认证电路836C、安全接口836D和其他安全外围设备836E。
在一个实施方案中,第一AES加密引擎836A可耦接到一个或多个处理器832。一个或多个处理器832是管理安全处理器内的操作的一个或多个处理器内核。处理器832可执行与主机操作系统分开的安全操作系统,诸如由图7的处理系统700执行的操作系统。在一个实施方案中,安全处理器操作系统是针对移动处理器或嵌入式处理器进行优化的基于微内核的操作系统。一个或多个处理器832可与安全邮箱860和功率控制单元864耦接。功率控制单元864可耦接到时钟控制单元866和外部功率管理器。时钟控制单元866还可耦接到功率管理器,该功率管理器可输入时钟信号。时钟控制单元866然后可将时钟信号提供给安全处理器760的其他部件。在一个实施方案中,第二AES加密引擎836B可与限定UID 868的一组保险丝耦合,该一组保险丝至少准唯一地标识包括安全处理器760的特定设备。第二AES加密引擎836B可负责安全密钥生成,并且可将所生成的密钥输出至容纳安全处理器760的SoC内的密码电路和/或其他电路,诸如图7的测距无线电部件730内的密码引擎734。
在一个实施方案中,过滤器862可被配置为严格控制对安全处理器760的访问,以增加安全处理器与包含安全处理器(例如,图7的处理系统700)的SoC的其余部分的隔离。在一个实施方案中,仅当操作寻址到安全邮箱860时,过滤器862才可允许来自通信结构(例如,图7的结构750)的读取/写入操作进入安全处理器760。安全邮箱860可包括各自可为先进先出(FIFO)缓冲区的收件箱和发件箱。FIFO缓冲区可具有任何大小,并且可包含任意数量的条目,其中每个条目可存储来自读取操作或写入操作的数据。在一个实施方案中,收件箱被配置为存储来自源自结构(例如,图7的结构750)的写入操作的写入数据,而发件箱可存储来自由处理器832提供的写入操作的写入数据。在一个实施方案中,过滤器862可允许对分配给安全邮箱860的收件箱部分的地址的写入操作以及对分配给安全邮箱860的发件箱部分的地址的读取操作。过滤器862可丢弃或阻挡所有其他读取/写入操作。
在一个实施方案中,过滤器862利用错误对其他读取/写入操作作出响应,并且可在不将写入数据传递到本地互连件870的情况下接收与过滤后的写入操作相关联的写入数据。在一个实施方案中,过滤器862还可将随机数数据供应为用于被过滤的读取操作的读取数据。所供应的随机数数据可以是与安全处理器760内的地址资源无关的任何数据,并且可以是全部零、全部一、来自随机数生成器的随机数据、被编程到过滤器762中以作为读取数据进行响应的数据、读取事务的地址或其他数据。在一个实施方案中,过滤器862仅过滤传入的读取/写入操作,从而允许安全处理器760内的部件对安全处理器所集成到的其他部件具有完全访问权。在此类实施方案中,过滤器862将不过滤来自SoC结构的响应,该响应是响应于由安全处理器760发出的读取/写入操作而提供的。
在一个实施方案中,由一个或多个处理器832生成的将由安全处理器760传输的写入操作的写入数据可任选地由AES加密引擎836加密。一个或多个处理器832发出的写入操作的属性可指示是否要加密数据。在基于分组的实施方案中,该属性可以是分组字段,在基于总线的实施方案中可以是与写入操作一起传输的信号,或者可以任何其他期望的方式传输。在例示的实施方案中,加密引擎836A可实现与AES兼容的加密。然而,其他实施方案可实现任何加密算法,包括但不限于ECC、RSA或DES加密。
功率控制单元864可被配置为控制安全处理器760的功率门控。功率控制单元864可耦接到一个或多个处理器832,并且可监测处理器以确定何时请求功率门控。响应于确定要请求功率门控,功率控制单元864可将功率门控请求传输至外部功率管理器。功率管理器可确定安全处理器760将被功率门控,然后可对安全处理器760进行功率门控。功率控制单元864还可被配置为控制安全处理器760中的时钟门控。另选地,时钟控制单元766可被配置为控制安全处理器760中的时钟门控。时钟门控可在本地控制,或者可在各种实施方案中从功率管理器请求。
时钟控制单元866可被配置为控制安全处理器760中的本地时钟。时钟控制单元866可被耦接以接收输入时钟并且可生成安全处理器760的本地时钟。时钟控制单元766可为可编程的(例如,由一个或多个处理器832),其具有针对安全处理器760中的各种时钟的时钟比率、时钟使能、时钟门控使能等。
安全ROM 834耦接到本地互连件870,并且可对分配给本地互连件870上的安全ROM834的地址范围作出响应。该地址范围可以是硬连线的,并且一个或多个处理器832可被硬连线以在引导时从该地址范围进行获取操作以便从安全ROM 834引导。安全ROM 834可包括用于安全处理器760的引导代码以及在使用期间由一个或多个处理器832执行的其他软件(例如,用于处理收件箱消息并生成发件箱消息的代码、用于安全外围设备836A-836E的接口的代码等)。在一个实施方案中,安全ROM 834可存储在使用期间由处理器832执行的所有代码。
在一个实施方案中,安全外围设备836A-836E包括认证电路836C,该认证电路用于对安全处理器760执行认证操作。认证电路836C可实现一种或多种认证算法,诸如但不限于安全散列算法(SHA),诸如SHA-1、SHA-2、SHA-3或任何其他认证算法。在一个实施方案中,认证电路可与安全处理器760内的各种其他安全外围设备836E协同工作。
除了被设计用于执行特定功能的安全外围设备之外,还可存在作为安全接口的接口单元(诸如安全接口单元836D)的安全外围设备。在例示的实施方案中,安全接口单元836D是可用于通过安全处理器760进行安全存储的芯片外安全存储器的接口。
安全存储器可使用部分基于UID 868的临时密钥来加密。偶尔会重新生成临时密钥。例如,在一个实施方案中,安全处理器760可在每个引导周期期间重新生成临时密钥。只有安全处理器760能够访问用于访问安全存储器的临时密钥。安全存储器使安全处理器760能够安全地访问系统存储器,以存储可能不适合存放在安全处理器760内部的存储器内的数据。
在一些实施方案中,安全处理器760内的安全外围设备836A-836E也可包括在如本文所述的测距无线电部件中。例如,图7的测距无线电部件730的密码引擎734可包括类似于安全外围设备836A-836E的逻辑部件,以及存在于安全处理器760内的其他加密加速逻辑部件。
图9是根据一个实施方案的计算设备架构900的框图。计算设备架构900包括存储器接口902、处理系统904和外围处理系统906。各种部件可通过一个或多个通信总线、结构或信号线耦接。各种部件可以是单独的逻辑部件或设备或可以集成在一个或多个集成电路,诸如片上系统集成电路。处理系统904可包括多个处理器和/或协处理器。处理系统904内的各种处理器可以是类似的架构,或者处理系统904可以是异构处理系统。在一个实施方案中,处理系统904是包括一个或多个数据处理器、图像处理器和/或图形处理单元的异构处理系统。
存储器接口902可耦接到存储器950,该存储器可包括高速随机存取存储器,诸如静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM)。存储器可存储持久存储在非易失性存储器905中的运行时信息、数据和/或指令,非易失性存储器诸如但不限于闪存(例如,NAND闪存、NOR闪存等)。另外,存储器950的至少一部分为非易失性存储器。可经由外围处理系统906促进处理系统904与非易失性存储器905的存储器接口902之间的连接。
传感器、设备和子系统可耦接到外围处理系统906以促进多个功能。例如,运动传感器910、光传感器912和接近传感器914可耦接到外围处理系统906以促进移动设备功能。其他传感器916也可连接至外围处理系统906,诸如定位系统(例如,GPS接收器)、温度传感器、生物识别传感器或其他感测设备以促进相关的功能。可利用相机子系统920和光学传感器922(如电荷耦合设备(CCD)或互补金属氧化物半导体(CMOS)光学传感器)来促进相机功能,诸如拍摄照片和视频剪辑。
外围处理系统906可实现与包括一个或多个无线通信子系统924的通信外围设备的连接,这些无线通信子系统可包括射频接收器和发射器和/或光学(例如,红外)接收器和发射器。无线通信子系统924的具体设计与实现可取决于移动设备打算通过其操作的一个或多个通信网络。例如,包括例示的计算设备架构900的移动设备可包括无线通信子系统924,该无线通信子系统被设计成使用时分多址(TDMA)协议、全球移动通信系统(GSM)协议、码分多址(CDMA)协议、长期演进(LTE)协议和/或任何其他类型的无线通信协议,通过网络来工作。
无线通信子系统924可提供通信机制,客户端浏览器应用程序可通过该机制从远程web服务器检索资源。外围处理系统906还可实现与音频子系统926的互连,该音频子系统可耦接到扬声器928和麦克风930以促进支持语音的功能,诸如语音识别、语音复制、数字记录和电话功能。
外围处理系统906可实现与包括触摸屏控制器942和/或其他输入控制器945的I/O子系统940的连接。触摸屏控制器942可耦接到触敏显示器系统946(例如,触摸屏)。触敏显示器系统946和触摸屏控制器942可例如使用多种触摸和压力感测技术的任何一种检测接触和运动或压力,触摸和压力感测技术包括但不限于电容性、电阻性、红外和表面声波技术,以及用于确定与触敏显示器系统946接触的一个或多个点的其他接近传感器阵列或其他元件。触敏显示器系统946的显示输出可由显示控制器943生成。在一个实施方案中,显示控制器943可以可变的帧速率向触敏显示器系统946提供帧数据。
在一个实施方案中,包括传感器控制器944以监视、控制和/或处理从运动传感器910、光传感器912、接近传感器914或其他传感器916中的一者或多者接收的数据。传感器控制器944可包括逻辑部件来解释传感器数据以通过分析来自传感器的传感器数据来确定多个运动事件或活动中的一者的发生。
在一个实施方案中,外围处理系统906还可实现与一个或多个生物传感器915的连接。生物传感器可被配置为检测计算设备的用户的生物识别数据。生物识别数据可以是基于用户的身体或行为特征在其他人中至少准唯一地识别用户的数据。例如,在一些实施方案中,生物传感器915可包括指纹传感器,该指纹传感器捕获来自用户的指纹数据。在另一个实施方案中,生物传感器915包括相机,该相机从用户的面部捕获面部信息。在一些实施方案中,生物传感器915可保持先前捕获的授权用户的生物识别数据,并且将所捕获的生物识别数据与新接收的生物识别数据进行比较以认证用户。
在一个实施方案中,I/O子系统940包括可耦接到其他输入/控制设备948的一个或多个其他输入控制器945,诸如一个或多个按钮、摇臂开关、拇指滚轮、红外端口、USB端口,和/或诸如触笔的指针设备,或诸如用于扬声器928和/或麦克风930的音量控制的上/下按钮的控制设备。
在一个实施方案中,耦接至存储器接口902的存储器950可存储操作系统952的指令,包括便携式操作系统接口(POSIX)兼容和不兼容的操作系统或嵌入式操作系统。操作系统952可包括用于处理基础系统服务以及用于执行硬件相关任务的指令。在一些具体实施中,操作系统952可以是基于内核或基于微内核的操作系统。
存储器950还可以存储通信指令954以促进与一个或多个附加设备、一个或多个计算机和/或一个或多个服务器的通信,例如从远程web服务器检索web资源。存储器950还可包括用户界面指令956(包括图形用户界面指令)以促进图形用户界面处理。
此外,存储器950可存储促进传感器相关处理和功能的传感器处理指令958;促进与电话相关的过程和功能的电话指令960;促进与电子消息处理相关的过程和功能的即时消息指令962;促进与网页浏览相关的过程和功能的网页浏览器指令964;促进与媒体处理相关的过程和功能的媒体处理指令966;位置服务指令包括GPS和/或导航指令968和基于Wi-Fi的位置指令以促进基于位置的功能性;促进与相机相关的过程和功能的相机指令970;和/或其他软件指令972,以促进其他过程和功能,例如安全过程和功能以及与系统相关的过程和功能。存储器950还可以存储其他软件指令,诸如促进与web视频相关的过程和功能的web视频指令;和/或促进与网络购物相关的过程和功能的网络购物指令。在一些具体实施中,媒体处理指令966分为音频处理指令和视频处理指令,以分别用于促进与音频处理相关的过程和功能以及与视频处理相关的过程和功能。移动设备标识符,诸如国际移动设备身份(IMEI)974或类似的硬件标识符也可存储在存储器950中。
上面所识别的指令和应用程序中的每一者可对应于用于执行上述一个或多个功能的指令集。这些指令不需要作为独立软件程序、进程或模块来实现。存储器950可包括附加指令或更少的指令。此外,可在硬件和/或软件中,包括在一个或多个信号处理和/或专用集成电路中,执行各种功能。
在前述说明书中,已参考具体实施方案描述了用于测距操作的密码资料的生成。然而显而易见的是,在不脱离本发明的更广泛的实质和范围的情况下,可对其进行各种修改和变更。相应地,说明书和附图应被视为具有例示性的而非限制性的意义。所提供的描述和示例中的具体细节可用于一个或多个实施方案中的任何地方。不同实施方案或示例的各种特征可与所包括的一些特征和排除的其他特征不同地组合,以适应多种不同的应用。示例可包括主题,诸如方法,用于执行该方法的行为的装置,包括指令的至少一种机器可读介质,所述指令在由机器执行时使得机器执行该方法的行为,或者根据本文所述的实施方案和示例执行装置或系统的动作。此外,本文描述的各种部件可为用于执行根据实施方案所描述的操作或功能的装置。
本文所述的实施方案能够以减少和模糊泄漏信息与秘密信息之间的潜在相关性的方式生成用于测距操作的密码资料。另外,实施方案可实现相对于本领域已知的安全测距系统的增强的安全性,并且可通过降低经由无线发射跟踪电子设备的能力来增强用户隐私。还可应用本文所述的技术来降低与物理屏蔽密码加速器相关联的费用和设计复杂性,以减少安全测距操作期间的信息泄漏。
本文所述的实施方案能够以减少和模糊泄漏信息与秘密信息之间的潜在相关性的方式生成用于测距操作的密码资料。一个实施方案提供了一种装置,该装置包括测距模块,该测距模块具有一个或多个测距传感器。该测距模块通过硬件接口耦接到安全处理系统以接收至少一个加密的测距会话密钥,该测距模块对至少一个加密的测距会话密钥解密以生成测距会话密钥,生成稀疏测距输入,基于测距会话密钥导出消息会话密钥,并经由应用于消息会话密钥和稀疏测距输入的密钥导出级联来导出衍生测距密钥,该衍生测距密钥对测距会话期间传输的数据加密。
在另一个实施方案中,该测距装置还包括密码引擎,以经由密钥导出函数来导出至少消息会话密钥和衍生测距密钥。密码引擎可经由将密钥导出函数应用到测距会话密钥来导出消息会话密钥,并经由将密钥导出级联应用到消息会话密钥和稀疏测距输入来导出衍生测距密钥。在一个实施方案中,密钥导出函数是基于密钥散列消息认证代码或基于密码的消息认证代码的,并且密钥导出级联包括多个密钥导出函数的嵌套级联。密钥导出级联可用于增强测距模块对旁道攻击的抗性。
在一个实施方案中,稀疏测距输入包括使防重放计数器值的位分布其中的多样化数据,其中多样化数据是密钥导出函数级联的一个或多个密钥导出函数的输入参数。防重放计数器是用于为测距帧生成安全前导码的值,其中测距帧是在测距会话期间传输或接收的数据分组。稀疏测距输入可用于增强测距模块在执行密钥导出级联期间对旁道攻击的抗性。测距模块可使用所传输的加密数据来确定在测距会话期间传输的数据的飞行时间并基于该飞行时间来确定距离。
一个实施方案提供了一种保护测距操作的方法,该方法包括接收测距会话密钥和防重放计数器值,该防重放计数器值用于为测距帧生成安全前导码;基于测距会话密钥来导出消息会话密钥;基于防重放计数器值和多样化数据来生成稀疏测距输入;经由稀疏测距输入和消息会话密钥来导出衍生测距密钥;以及经由衍生测距密钥对在测距帧内传输的数据进行加密,其中测距帧是在测距操作的测距会话期间传输或接收的数据分组。
在一个实施方案中,导出衍生测距密钥包括将稀疏测距输入和消息会话密钥提供给多个密钥导出函数的级联,并且生成稀疏测距输入包括在多样化数据中散布防重放计数器值的位。多样化数据是多个密钥导出函数的级联的一个或多个密钥导出函数的输入参数。
一个实施方案提供了一种数据处理系统,该数据处理系统包括安全处理系统,该安全处理系统包括安全处理器和安全处理器固件、安全引导只读存储器(ROM)和密码加速器,以及用于存储在密码系统中使用的一个或多个私钥的安全存储装置;应用程序处理系统,该应用程序处理系统包括引导ROM和一个或多个系统总线,该应用程序处理系统被配置为执行操作系统和一个或多个用户应用程序;系统存储器,该系统存储器耦接到一个或多个系统总线以存储操作系统和一个或多个用户应用程序;和测距模块,该测距模块包括一个或多个测距传感器,该测距模块通过硬件接口耦接到安全处理系统以接收至少一个加密的测距会话密钥,该测距模块对至少一个加密的测距会话密钥解密以生成测距会话密钥,生成稀疏测距输入,基于测距会话密钥导出消息会话密钥,并经由应用于消息会话密钥和稀疏测距输入的密钥导出级联来导出衍生测距密钥,衍生测距密钥对在测距会话期间传输的数据加密。
本文所述的实施方案可包括方法、数据处理系统和非暂态机器可读介质。
通过附图以及通过上述具体实施方式,本实施方案的其他特征将显而易见。因此,在研究附图、说明书和所附权利要求时,这些实施方案的真正范围对于技能熟练的从业人员来说是显而易见的。
Claims (25)
1.一种测距装置,包括:
测距模块,所述测距模块包括一个或多个测距传感器,所述测距模块通过硬件接口耦接到安全处理系统,所述测距模块被配置为:
接收至少一个加密的测距会话密钥;
对所述至少一个加密的测距会话密钥解密以生成测距会话密钥;
生成稀疏测距输入,所述稀疏测距输入包括使防重放计数器值的位分布于其中的多样化数据;
基于所述测距会话密钥导出消息会话密钥;以及
经由应用于所述消息会话密钥和所述稀疏测距输入的密钥导出级联来导出衍生测距密钥,所述衍生测距密钥被配置为对在测距会话期间传输的数据加密。
2.根据权利要求1所述的测距装置,还包括密码引擎,以经由密钥导出函数来导出至少所述消息会话密钥和所述衍生测距密钥。
3.根据权利要求2所述的测距装置,所述密码引擎经由将所述密钥导出函数应用到所述测距会话密钥来导出所述消息会话密钥,并经由将所述密钥导出级联应用到所述消息会话密钥和所述稀疏测距输入来导出所述衍生测距密钥。
4.根据权利要求3所述的测距装置,其中所述密钥导出函数是基于密钥散列消息认证代码或基于密码的消息认证代码的。
5.根据权利要求1所述的测距装置,其中所述密钥导出级联包括多个密钥导出函数的嵌套级联。
6.根据权利要求5所述的测距装置,其中所述密钥导出级联用于增强所述测距模块对边信道攻击的抗性。
7.根据权利要求6所述的测距装置,其中所述多样化数据是所述密钥导出函数级联中的一个或多个密钥导出函数的输入参数。
8.根据权利要求7所述的测距装置,所述防重放计数器值还被用于为测距帧生成安全前导码,其中所述测距帧是在所述测距会话期间传输或接收的数据分组。
9.根据权利要求8所述的测距装置,其中所述稀疏测距输入用于增强所述测距模块在所述密钥导出级联的执行期间对边信道攻击的抗性。
10.根据权利要求1所述的测距装置,所述测距模块确定在所述测距会话期间传输的数据的飞行时间并基于所述飞行时间来确定距离。
11.一种保护测距操作的方法,所述方法包括:
接收测距会话密钥和防重放计数器值,所述防重放计数器值用于为测距帧生成安全前导码;
基于所述测距会话密钥来导出消息会话密钥;
基于所述防重放计数器值和多样化数据来生成稀疏测距输入;
经由所述稀疏测距输入和所述消息会话密钥来导出衍生测距密钥;以及
经由所述衍生测距密钥对在所述测距帧内传输的数据进行加密,其中所述测距帧是在所述测距操作的测距会话期间传输或接收的数据分组。
12.根据权利要求11所述的方法,其中导出所述衍生测距密钥包括将所述稀疏测距输入和所述消息会话密钥提供给多个密钥导出函数的级联。
13.根据权利要求11所述的方法,其中生成所述稀疏测距输入包括在所述多样化数据中散布所述防重放计数器值的位。
14.根据权利要求13所述的方法,其中,所述多样化数据是多个密钥导出函数的级联中的一个或多个密钥导出函数的输入参数。
15.一种存储指令的非暂态机器可读介质,所述指令使得测距装置的一个或多个处理器执行权利要求11-14中任一项所述的方法。
16.一种数据处理系统,包括:
安全处理系统,所述安全处理系统包括安全处理器和安全处理器固件、安全引导只读存储器(ROM)和密码加速器、以及用于存储在密码系统中使用的一个或多个私钥的安全存储装置;
应用处理系统,所述应用处理系统包括引导ROM和一个或多个系统总线,所述应用处理系统被配置为执行操作系统和一个或多个用户应用;
系统存储器,所述系统存储器耦接到一个或多个系统总线以存储所述操作系统和所述一个或多个用户应用;和
测距模块,所述测距模块包括一个或多个测距传感器,所述测距模块通过硬件接口耦接到所述安全处理系统以接收至少一个加密的测距会话密钥,所述测距模块被配置为:
对所述至少一个加密的测距会话密钥解密;
生成测距会话密钥;
生成稀疏测距输入,所述稀疏测距输入包括使防重放计数器值的位分布于其中的多样化数据;
基于所述测距会话密钥导出消息会话密钥;以及
经由应用于所述消息会话密钥和所述稀疏测距输入的密钥导出级联来导出衍生测距密钥,所述衍生测距密钥被配置为对在测距会话期间传输的数据加密。
17.根据权利要求16所述的数据处理系统,所述测距模块还包括密码引擎,以经由密钥导出函数来导出至少所述消息会话密钥和所述衍生测距密钥。
18.根据权利要求17所述的数据处理系统,所述密码引擎经由将所述密钥导出函数应用到所述测距会话密钥来导出所述消息会话密钥,并经由将所述密钥导出级联应用到所述消息会话密钥和所述稀疏测距输入来导出所述衍生测距密钥。
19.根据权利要求18所述的数据处理系统,其中所述密钥导出函数是基于密钥散列消息认证代码或基于密码的消息认证代码的。
20.根据权利要求16所述的数据处理系统,其中所述密钥导出级联包括多个密钥导出函数的嵌套级联。
21.根据权利要求20所述的数据处理系统,其中所述密钥导出级联用于增强所述测距模块对边信道攻击的抗性。
22.根据权利要求21所述的数据处理系统,其中所述多样化数据是所述密钥导出函数级联中的一个或多个密钥导出函数的输入参数。
23.根据权利要求22所述的数据处理系统,所述防重放计数器值还被用于为测距帧生成安全前导码,其中所述测距帧是在所述测距会话期间传输或接收的数据分组。
24.根据权利要求23所述的数据处理系统,其中所述稀疏测距输入用于增强所述测距模块在所述密钥导出级联的执行期间对边信道攻击的抗性。
25.根据权利要求16所述的数据处理系统,所述测距模块确定在所述测距会话期间传输的数据的飞行时间并基于所述飞行时间来确定距离。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762564947P | 2017-09-28 | 2017-09-28 | |
US62/564,947 | 2017-09-28 | ||
PCT/US2018/040701 WO2019067056A1 (en) | 2017-09-28 | 2018-07-03 | METHODS AND ARCHITECTURES OF SECURE TELEMETRY |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111095963A CN111095963A (zh) | 2020-05-01 |
CN111095963B true CN111095963B (zh) | 2023-09-22 |
Family
ID=63013125
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880054753.7A Active CN111095963B (zh) | 2017-09-28 | 2018-07-03 | 用于安全测距的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11405185B2 (zh) |
EP (1) | EP3646628B1 (zh) |
CN (1) | CN111095963B (zh) |
WO (1) | WO2019067056A1 (zh) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019067056A1 (en) | 2017-09-28 | 2019-04-04 | Apple Inc. | METHODS AND ARCHITECTURES OF SECURE TELEMETRY |
WO2020050555A1 (en) * | 2018-09-07 | 2020-03-12 | Samsung Electronics Co., Ltd. | Method for uwb transaction and electronic device therefor |
US11455257B2 (en) * | 2019-04-07 | 2022-09-27 | Intel Corporation | Ultra-secure accelerators |
WO2020227029A1 (en) * | 2019-05-06 | 2020-11-12 | Cryptography Research, Inc. | Dpa-resistant key derivation function |
KR20200129776A (ko) * | 2019-05-10 | 2020-11-18 | 삼성전자주식회사 | 재전송 공격에 대한 방어책을 포함하는 메모리 시스템의 구동 방법 및 이를 수행하는 메모리 시스템 |
KR20200130920A (ko) * | 2019-05-13 | 2020-11-23 | 삼성전자주식회사 | 거리 측정 및 인증을 동시에 수행하는 방법 및 그 전자 장치 |
KR20210039109A (ko) * | 2019-10-01 | 2021-04-09 | 삼성전자주식회사 | 데이터를 송/수신하는 전자 장치 및 그 방법 |
US11456855B2 (en) * | 2019-10-17 | 2022-09-27 | Arm Limited | Obfuscating data at-transit |
JP2021105834A (ja) * | 2019-12-26 | 2021-07-26 | 株式会社東海理化電機製作所 | 通信装置及びシステム |
EP3886389A1 (en) * | 2020-03-25 | 2021-09-29 | Nxp B.V. | Communication device and operating method using uwb and bluetooth |
KR20220008616A (ko) * | 2020-07-14 | 2022-01-21 | 삼성전자주식회사 | 전자 디바이스가 보안 레인징을 수행하는 방법 및 장치 |
WO2022027333A1 (en) * | 2020-08-05 | 2022-02-10 | Zte Corporation | A method for time information indication |
US20220078609A1 (en) * | 2020-09-07 | 2022-03-10 | Qualcomm Incorporated | Digital key derivation distribution between a secure element and ultra-wide band module |
US11575408B2 (en) * | 2020-10-19 | 2023-02-07 | Hyundai Mobis Co., Ltd. | UWB system |
CN114554590A (zh) * | 2020-11-26 | 2022-05-27 | Oppo广东移动通信有限公司 | 一种设备定位方法、装置、设备以及存储介质和系统 |
DE102020007803A1 (de) | 2020-12-21 | 2022-06-23 | Joynext Gmbh | Bestimmen einer Position eines ersten Funkgeräts relativ zu einem zweiten Funkgerät |
EP4274285A4 (en) * | 2021-01-18 | 2024-07-03 | Samsung Electronics Co Ltd | METHOD AND DEVICE FOR SECURE TELEMETRY BASED ON ULTRA-WIDEBAND COMMUNICATION |
CN112995948B (zh) * | 2021-02-03 | 2023-04-07 | 北京小米移动软件有限公司 | 车辆功能控制方法、车辆功能控制装置及存储介质 |
US11496914B2 (en) | 2021-02-24 | 2022-11-08 | Qualcomm Incorporated | Combined distributed ranging sessions including common devices |
KR20220155867A (ko) * | 2021-05-17 | 2022-11-24 | 삼성전자주식회사 | Uwb 보안 레인징을 수행하기 위한 방법 및 장치 |
JP7539345B2 (ja) * | 2021-05-24 | 2024-08-23 | 株式会社東海理化電機製作所 | 通信装置およびプログラム |
WO2023022708A1 (en) * | 2021-08-17 | 2023-02-23 | Google Llc | Ultra-wideband ranging method and device |
US11917401B2 (en) * | 2021-09-16 | 2024-02-27 | Qualcomm Incorporated | Directional secure communications |
CN116567804A (zh) * | 2022-01-27 | 2023-08-08 | 华为技术有限公司 | Uwb中的测距方法、装置及可读存储介质 |
WO2023192744A1 (en) * | 2022-03-28 | 2023-10-05 | Qualcomm Incorporated | Secure ranging sequence generation |
WO2023185637A1 (zh) * | 2022-04-01 | 2023-10-05 | 华为技术有限公司 | 安全测距的方法和通信装置 |
CN114531239B (zh) * | 2022-04-20 | 2022-08-12 | 广州万协通信息技术有限公司 | 多加密密钥的数据传输方法及系统 |
WO2023244368A1 (en) * | 2022-06-16 | 2023-12-21 | Qualcomm Incorporated | Security for mobile-to-mobile positioning |
CN115308725A (zh) * | 2022-08-10 | 2022-11-08 | 湖南北云科技有限公司 | 测距方法、装置及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008130126A1 (en) * | 2007-04-18 | 2008-10-30 | Lg Electronics Inc. | Method for performing initial ranging in wireless communication system |
CN101309151A (zh) * | 2008-07-11 | 2008-11-19 | 西安电子科技大学 | 无线传感器安全定位方法 |
CN101668289A (zh) * | 2009-09-16 | 2010-03-10 | 中兴通讯股份有限公司 | 无线通信系统中空口密钥更新的方法及系统 |
WO2010085877A1 (en) * | 2009-01-27 | 2010-08-05 | Xyz Interactive Technologies Inc. | A method and apparatus for ranging finding, orienting, and/or positioning of single and/or multiple devices |
CN102440019A (zh) * | 2008-05-07 | 2012-05-02 | 阿尔卡特朗讯美国公司 | 在无线通信网络中生成传输加密密钥 |
CN103430478A (zh) * | 2011-01-10 | 2013-12-04 | 三星电子株式会社 | 用于在无线通信系统中加密短数据的方法和设备 |
WO2016164164A1 (en) * | 2015-04-10 | 2016-10-13 | Qualcomm Incorporated | Method and apparatus for securing structured proximity service codes for restricted discovery |
CN107015234A (zh) * | 2017-05-19 | 2017-08-04 | 中国科学院国家天文台长春人造卫星观测站 | 嵌入式卫星激光测距控制系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3649404B2 (ja) * | 2003-02-28 | 2005-05-18 | ソニー株式会社 | 測距・測位システム及び測距・測位方法、並びに無線通信装置 |
US9689955B2 (en) * | 2011-02-24 | 2017-06-27 | Corvus Technologies Corp | Ranging system using active radio frequency (RF) nodes |
US20150033016A1 (en) * | 2013-07-23 | 2015-01-29 | Battelle Memorial Institute | Systems and methods for securing real-time messages |
GB2558429B (en) * | 2016-02-25 | 2020-04-29 | Arm Ip Ltd | Methods and resources for generating secure communications |
EP3417663A2 (en) * | 2016-04-14 | 2018-12-26 | Apple Inc. | Methods and architectures for secure ranging |
US11582215B2 (en) * | 2016-06-12 | 2023-02-14 | Apple Inc. | Modifying security state with secured range detection |
WO2019067056A1 (en) | 2017-09-28 | 2019-04-04 | Apple Inc. | METHODS AND ARCHITECTURES OF SECURE TELEMETRY |
SG10201900198SA (en) * | 2019-01-09 | 2020-08-28 | Mastercard International Inc | Methods and systems for cryptographic keys exchange |
EP3681046B1 (en) * | 2019-01-10 | 2022-07-20 | Nxp B.V. | Key derivation scheme for data frame transmission in ultra-wide band ranging in keyless entry systems |
-
2018
- 2018-07-03 WO PCT/US2018/040701 patent/WO2019067056A1/en unknown
- 2018-07-03 EP EP18745762.7A patent/EP3646628B1/en active Active
- 2018-07-03 US US16/643,237 patent/US11405185B2/en active Active
- 2018-07-03 CN CN201880054753.7A patent/CN111095963B/zh active Active
-
2022
- 2022-06-24 US US17/848,922 patent/US11728972B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008130126A1 (en) * | 2007-04-18 | 2008-10-30 | Lg Electronics Inc. | Method for performing initial ranging in wireless communication system |
CN102440019A (zh) * | 2008-05-07 | 2012-05-02 | 阿尔卡特朗讯美国公司 | 在无线通信网络中生成传输加密密钥 |
CN101309151A (zh) * | 2008-07-11 | 2008-11-19 | 西安电子科技大学 | 无线传感器安全定位方法 |
WO2010085877A1 (en) * | 2009-01-27 | 2010-08-05 | Xyz Interactive Technologies Inc. | A method and apparatus for ranging finding, orienting, and/or positioning of single and/or multiple devices |
CN101668289A (zh) * | 2009-09-16 | 2010-03-10 | 中兴通讯股份有限公司 | 无线通信系统中空口密钥更新的方法及系统 |
CN103430478A (zh) * | 2011-01-10 | 2013-12-04 | 三星电子株式会社 | 用于在无线通信系统中加密短数据的方法和设备 |
WO2016164164A1 (en) * | 2015-04-10 | 2016-10-13 | Qualcomm Incorporated | Method and apparatus for securing structured proximity service codes for restricted discovery |
CN107015234A (zh) * | 2017-05-19 | 2017-08-04 | 中国科学院国家天文台长春人造卫星观测站 | 嵌入式卫星激光测距控制系统 |
Non-Patent Citations (1)
Title |
---|
曹海源 ; 张玺 ; 孙斌 ; 王淑云 ; .FPGA在激光测距机电路检测系统中的应用.微计算机信息.2009,(02),全文. * |
Also Published As
Publication number | Publication date |
---|---|
US20200336303A1 (en) | 2020-10-22 |
US20220399994A1 (en) | 2022-12-15 |
US11405185B2 (en) | 2022-08-02 |
EP3646628A1 (en) | 2020-05-06 |
CN111095963A (zh) | 2020-05-01 |
US11728972B2 (en) | 2023-08-15 |
WO2019067056A1 (en) | 2019-04-04 |
EP3646628B1 (en) | 2023-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111095963B (zh) | 用于安全测距的方法和装置 | |
US12089178B2 (en) | Methods and architectures for secure ranging | |
US10482291B2 (en) | Secure field-programmable gate array (FPGA) architecture | |
CN107438230B (zh) | 安全无线测距 | |
US10650373B2 (en) | Method and apparatus for validating a transaction between a plurality of machines | |
Huth et al. | Securing systems on the Internet of Things via physical properties of devices and communications | |
CN113691502B (zh) | 通信方法、装置、网关服务器、客户端及存储介质 | |
US12047519B2 (en) | Physical unclonable function based mutual authentication and key exchange | |
US20240073009A1 (en) | Registration of endpoints by authentication server when onboarding to network | |
Lin et al. | Research on PUF-based security enhancement of narrow-band Internet of Things | |
Resner et al. | Key establishment and trustful communication for the internet of things | |
CN114513316A (zh) | 一种基于身份的匿名认证方法、服务器及用户终端设备 | |
US20240064012A1 (en) | Authentication cryptography operations, exchanges and signatures | |
US20240048559A1 (en) | Rendering endpoint connection without authentication dark on network | |
Stecklina | An embedded sensor node microcontroller with crypto-processors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |