CN117751412A - 感测装置的空中编程 - Google Patents

感测装置的空中编程 Download PDF

Info

Publication number
CN117751412A
CN117751412A CN202280051427.7A CN202280051427A CN117751412A CN 117751412 A CN117751412 A CN 117751412A CN 202280051427 A CN202280051427 A CN 202280051427A CN 117751412 A CN117751412 A CN 117751412A
Authority
CN
China
Prior art keywords
memory
control device
sensor control
data
analyte
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.)
Pending
Application number
CN202280051427.7A
Other languages
English (en)
Inventor
华宣东
库尔特·E·莱诺
纳尔逊·Y·张
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.)
Abbott Diabetes Care Inc
Original Assignee
Abbott Diabetes Care Inc
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 Abbott Diabetes Care Inc filed Critical Abbott Diabetes Care Inc
Priority claimed from PCT/US2022/037654 external-priority patent/WO2023003920A1/en
Publication of CN117751412A publication Critical patent/CN117751412A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Arrangements For Transmission Of Measured Signals (AREA)

Abstract

本文中所描述的实施方式包括被配置用于安全空中(OTA)编程的传感器控制装置。实施方式包括传感器控制装置,该传感器控制装置包括一个或多个处理器、分析物传感器、通信模块和存储器。存储器包括处于不可编程状态的第一组存储块以及处于可编程状态的第二组块。处理器被配置为使用通信模块来接收指令以:将标记数据写入到存储器以将第一组存储块中的第一存储块标记为不可访问,并且将程序数据写入到第二组存储块的第二存储块,使第二存储块被置于不可编程状态。写入到第二存储块的程序数据包括使处理器处理从分析物传感器接收的分析物数据的指令。

Description

感测装置的空中编程
优先权
本申请根据35U.S.C.§119(e)要求于2021年9月29日提交的美国临时专利申请号63/249,735以及于2021年7月21日提交的美国临时专利申请号63/224,088的权益,其均通过引用并入本文中。
技术领域
所公开的主题涉及一种用于对用于收集和监测数据的传感器进行编程和重新编程的系统。传感器可以包括用于直接从患者收集和监测数据的分析物传感器。可以在发出编程和重新编程命令的系统的传感器与另一装置之间没有直接物理连接的情况下执行编程和重新编程。
背景技术
某些感测装置可以无线地向其他计算装置发送数据,以及从其他计算装置接收数据。尽管这些感测装置中的一些配备有强大的处理器并使用永久电源进行操作,但是其他感测装置被设计为使用很少的功率进行高效操作。此外,低功率感测装置可以被设计为一次性的且低成本的,这可能涉及在设计和制造期间相对于复杂性和装置中包括的计算资源进行的权衡。例如,在设计传感器(诸如分析物传感器)时的一种这样的权衡可能涉及设计这样的装置:一旦该装置被分发给终端用户,就没有更新的能力。可以通过使用允许将有限量的数据写入到存储器或对存储器的区域执行有限数量的写入的存储器架构来强制执行无法更新低功率装置。因此,可以在制造时固定低功率装置的行为和成本。然而,该权衡可能降低或消除制造商在已分发给终端用户的装置中实现新特征、纠正这样的装置的编程中的错误以及定制或个性化这样的装置的行为的能力。
在一些情况下,低功率装置(包括低功率感测装置)可以通过直接访问该装置来重新编程。例如,诸如如果装置的硬件被物理地或电子地操纵到编程模式,则存储器架构可以提供用于重写入到存储器的选项。然而,重新编程通常可以涉及擦除低功率装置的整个编程,这可能使模块化更新困难,并且可能引入存储器或软件错误。此外,直接访问装置以执行这样的更新对终端用户可能是不可用的或不方便的,并且如果可用,则可能引入安全挑战,以避免装置软件的篡改或未经授权的复制或逆向工程。
因此,可以由低功率且低成本的装置(包括感测装置)实现的方法和系统有机会利用对低功率装置重新编程的安全方法,而不需要直接访问该装置。
发明内容
所公开的主题的目的和优点将在下面的描述中阐述并根据该描述显而易见,并且将通过所公开主题的实践来了解。所公开的主题的额外的优点将通过在书面描述及其权利要求中具体指出的方法和系统以及根据附图来实现和获得。
为了实现这些和其他优点,并且根据所公开的主题的目的,如具体实施和广泛描述的,所公开的主题包括用于在不直接物理连接到传感器的情况下(诸如通过空中(OTA)编程)对传感器进行安全编程的系统和方法。本文中所描述的技术的益处和应用不排他地限于医疗装置,而是可以与其他类似类型的低功率且低成本装置一起实现和使用,其中,一旦将装置分发给终端用户,访问这些装置就是不方便或不切实际的。示例性系统和方法可以包括传感器控制装置,该传感器控制装置包括一个或多个处理器、分析物传感器、通信模块和存储器,该存储器通信地耦接到一个或多个处理器、通信模块和分析物传感器。存储器可以包括存储块,该存储块包括处于不可编程状态的第一组存储块以及处于可编程状态的第二组块。一个或多个处理器可以使用通信模块来接收指令以:将程序数据写入到处于可编程状态的第二组存储块中的第二存储块,使第二存储块被置于不可编程状态,以及将标记数据写入到存储器,以将处于不可编程状态的第一组存储块中的第一存储块标记为不可访问。写入到第二存储块的程序数据可以包括指令,该指令在由一个或多个处理器执行时,使一个或多个处理器处理从分析物传感器接收的分析物数据。在某些实施方式中,存储器的存储块是动态分配的存储器存储块。在某些实施方式中,存储器可以与通信模块集成。在某些实施方式中,存储器可以与通信模块分离。在某些实施方式中,存储器可以是一次性可编程存储器,其中一旦数据被写入到存储器,数据就不能被重写。在某些实施方式中,写入到第二存储块的程序数据可以包括与传感器控制装置的特征、检测和计算算法、或用于分析物传感器的校准数据相关的指令。在某些实施方式中,在将标记数据写入到存储器之前,传感器控制装置可以使用通信模块来接收签名的命令。该命令可以使用加密密钥来签名。传感器控制装置可以进入编程模式。在某些实施方式中,指令可以作为使用共享加密密钥保护的通信会话的一部分来接收。在某些实施方式中,通信模块可以与第一通信协议兼容,并且传感器控制装置还可以包括与第二通信协议兼容的第二通信模块。在某些实施方式中,在一个或多个处理器将标记数据写入到存储器之前,传感器控制装置可以使用第二通信模块来接收进入编程状态的命令。在某些实施方式中,第一通信协议和第二通信协议中的一个可以是蓝牙低功耗,并且第一通信协议和第二通信协议中的一个可以是近场通信。在某些实施方式中,在执行写入到第二存储块的程序数据的指令之前,一个或多个处理器可以执行对存储器的一项或多项完整性检查。在某些实施方式中,一项或多项完整性检查可以包括对第一组存储块中的每个存储块执行完整性检查。在某些实施方式中,传感器控制装置还可以包括可重写存储器,该可重写存储器通信地耦接到一个或多个处理器、通信模块和分析物传感器。写入到第二存储块的程序数据可以首先写入到可重写存储器。在某些实施方式中,一个或多个处理器可以基于存储在可重写存储器中的简档来执行写入第一组存储块中的存储块中的程序数据的指令。在某些实施方式中,将标记数据写入到存储器以将第一存储块标记为不可访问可以包括:修改存储在可重写存储器中的简档。在某些实施方式中,在一个或多个处理器将标记数据写入到存储器以将第一存储块标记为不可访问之前,传感器控制装置可以重新初始化为兼容更新的状态。在某些实施方式中,分析物传感器可以被配置为生成分析物数据。分析物数据可以指示使用分析物传感器的患者的流体中的分析物的水平。处理从分析物传感器接收的分析物数据可以包括:使用写入到第一组存储块中的存储块的程序数据来分析该分析物数据,以及使用通信模块将分析物数据发送给外部装置。在某些实施方式中,分析物可以包括(通过示例而不是限制)血糖、酮、乳酸、氧、血红蛋白A1C、白蛋白、醇、碱性磷酸酶、丙氨酸转氨酶、天冬氨酸转氨酶、胆红素、血尿素氮、钙、二氧化碳、氯化物、肌酐、红细胞比容、乳酸,镁、氧、pH、磷、钾、钠、总蛋白,尿酸等。在某些实施方式中,分析物数据还可以包括温度、心率、血压或运动数据。
应当理解,前述总体描述和以下详细描述两者均是示例性的,并且旨在提供对所公开的主题的进一步解释。
包括并入本说明书中并构成本说明书的一部分的附图以说明并提供对所公开的主题的方法和系统的进一步理解。附图与说明书一起解释所公开的主题的原理。
附图说明
通过认真阅读附图,本文中所阐述的主题的细节(关于其结构和操作两者)可以是显而易见的,在附图中,相似的附图标记指代相似的部件。
图1是示出了用于与本文中所描述的技术一起使用的示例性分析物监测系统的操作环境的示意图。
图2是示出了根据所公开的主题的示例性实施方式的示例性传感器的框图。
图3是示出了根据所公开的主题的示例性实施方式的用于与传感器通信的示例性数据接收装置的框图。
图4是示出了根据所公开的主题的在传感器的存储器中组织并分配数据的示例的示意图。
图5是示出了根据所公开的主题的用于传感器的空中编程的示例性操作和数据流的示意图。
图6是示出了根据本公开的主题的存储器块管理的示例性演示的示意图。
具体实施方式
现在将详细参考所公开的主题的各种示例性实施方式,其示例性实施方式示于附图中。将结合系统的详细描述来描述所公开的主题的结构和对应的操作方法。
本文中所呈现的系统和方法可以用于在无需直接物理访问传感器控制装置的情况下的传感器控制装置的安全更新。所公开的主题的实施方式包括所谓的空中(OTA)更新。如本文中所使用的,“医疗传感器”或“分析物传感器”可以指代能够从用户接收的对医疗或非医疗目的有用的传感器信息的任何装置,并且可以特别指代小格式、低功率的装置,包括(出于说明的目的)但不限于体温传感器、血压传感器、脉搏或心率传感器、血糖水平传感器、分析物传感器、身体活动传感器、身体运动传感器、或用于医疗或非医疗监测目的的任何其他传感器。由分析物传感器测量的分析物可以包括(通过示例而非限制)血糖、酮、乳酸、氧、血红蛋白A1C、白蛋白、醇、碱性磷酸酶、丙氨酸转氨酶、天冬氨酸转氨酶、胆红素、血尿素氮、钙、二氧化碳、氯化物、肌酐、红细胞比容、乳酸,镁、氧、pH、磷、钾、钠、总蛋白,尿酸等。所公开的主题的目的和优点将根据下面的描述来阐述并根据该描述而显而易见。所公开的主题的额外的优点将通过书面说明书及其权利要求中特别指出的方法、装置和装置以及根据附图来实现和获得。尽管在医疗装置和医疗传感器的上下文中描述了某些实施方式,但是本文中所描述的技术的益处和应用不排他地限于医疗装置,而是可以与其他类似类型的低功率和低成本装置一起实现和使用,其中,一旦将装置分发给终端用户,访问这些装置就是不方便或不切实际的。
出于说明而非限制的目的,所公开的主题包括用于在不直接物理连接到传感器的情况下(诸如通过空中(OTA)编程)对医疗和非医疗传感器进行安全编程的系统和方法。本文中所描述的技术的益处和应用不排他地限于医疗装置,而是可以与其他类似类型的低功率且低成本装置一起实现和使用,其中,一旦将该装置分发给终端用户,访问这些装置就是不方便或不切实际的。示例性系统和方法可以包括分析物传感器或其他传感器控制装置,该传感器控制装置包括一个或多个处理器、分析物传感器、通信模块和存储器,该存储器通信地耦接到一个或多个处理器、通信模块和分析物传感器。存储器可以包括存储块,该存储块包括处于不可编程状态的第一组存储块以及处于可编程状态的第二组块。一个或多个处理器可以使用通信模块来接收指令以:将程序数据写入到处于可编程状态的第二组存储块中的第二存储块,使第二存储块被置于不可编程状态,并且将标记数据写入到存储器,以将处于不可编程状态的第一组存储块中的第一存储块标记为不可访问。写入到第二存储块的程序数据可以包括这样的指令,该指令在由一个或多个处理器执行时,使一个或多个处理器处理从分析物传感器接收的分析物数据。在某些实施方式中,存储器的存储块是动态分配的存储器存储块(dynamically-allocated memory storage block)。在某些实施方式中,存储器可以与通信模块集成。在某些实施方式中,存储器可以与通信模块分离。在某些实施方式中,存储器可以是一次性可编程存储器(one-time programmable memory),其中一旦数据被写入到存储器,数据就不能被重写。在某些实施方式中,写入到第二存储块的程序数据可以包括与分析物传感器或传感器控制装置的特征、检测和计算算法、或用于分析物传感器的校准数据相关的指令。
在某些实施方式中,在将标记数据写入到存储器之前,分析物传感器或传感器控制装置可以使用通信模块来接收签名的命令。该命令可以使用加密密钥来签名。分析物传感器或传感器控制装置可以进入编程模式。在某些实施方式中,指令可以作为使用共享加密密钥保护的通信会话的一部分来接收。在某些实施方式中,通信模块可以与第一通信协议兼容,并且分析物传感器或传感器控制装置还可以包括与第二通信协议兼容的第二通信模块。在某些实施方式中,在一个或多个处理器将标记数据写入到存储器之前,分析物传感器或传感器控制装置可以使用第二通信模块来接收进入编程状态的命令。在某些实施方式中,第一通信协议和第二通信协议中的一个可以是蓝牙低功耗,并且第一通信协议和第二通信协议中的一个可以是近场通信。在某些实施方式中,在执行写入到第二存储块的程序数据的指令之前,一个或多个处理器可以执行对存储器的一项或多项完整性检查。在某些实施方式中,一项或多项完整性检查可以包括对第一组存储块中的每个存储块执行完整性检查。在某些实施方式中,分析物传感器或传感器控制装置还可以包括可重写存储器,该可重写存储器通信地耦接到一个或多个处理器、通信模块和分析物传感器。写入到第二存储块的程序数据可以首先写入到可重写存储器。
根据所公开的主题的方面,一个或多个处理器可以基于存储在可重写存储器中的简档来执行写入第一组存储块中的存储块中的程序数据的指令。在某些实施方式中,将标记数据写入到存储器以将第一存储块标记为不可访问可以包括:修改存储在可重写存储器中的简档。在某些实施方式中,在一个或多个处理器将标记数据写入到存储器以将第一存储块标记为不可访问之前,分析物传感器或传感器控制装置可以重新初始化为兼容更新(update-compatible)的状态。在某些实施方式中,分析物传感器可以被配置为生成分析物数据。分析物数据可以指示使用分析物传感器的患者的流体中的分析物的水平。处理从分析物传感器接收的分析物数据可以包括:使用写入到第一组存储块中的存储块的程序数据来分析该分析物数据,以及使用通信模块将分析物数据发送给外部装置。在某些实施方式中,分析物可以包括(通过示例而不是限制)血糖、酮、乳酸、氧、血红蛋白A1C、白蛋白、醇、碱性磷酸酶、丙氨酸转氨酶、天冬氨酸转氨酶、胆红素、血尿素氮、钙、二氧化碳、氯化物、肌酐、红细胞比容、乳酸,镁、氧、pH、磷、钾、钠、总蛋白,尿酸等。在某些实施方式中,分析物数据还可以包括温度、心率、血压或运动数据。
出于说明而非限制的目的,参考用于与如图1所示的所公开的主题一起使用的分析物监测系统100的示例性实施方式。分析物监测系统100可以适于包括用于代替医疗用途或除了医疗用途之外的非医疗用途的传感器和装置。图1示出了能够实施本文中所描述的技术的优选地低功率分析物监测系统100的操作环境。分析物监测系统100可以包括被设计为提供对人体或动物体的参数的监测的部件的系统,或者可以基于各种部件的配置来提供其他操作。例如,分析物监测系统100可以向用户提供连续的血糖监测,或者可以提供药物和其他药剂的递送。如本文中所实施的,该系统可以包括低功率感测装置110,也被称为由用户佩戴或附接到正在被收集信息的身体的传感器。如本文中所实施的,传感器控制装置110可以是密封的一次性装置,以改进易用性并降低篡改的风险,如本文中进一步讨论的。低功率分析物监测系统100还可以包括读取装置120,该读取装置被如本文中所描述的配置,以促进从传感器控制装置110检索和递送数据,包括分析物数据。
如本文中所实施的,分析物监测系统100可以另外地或替代地包括提供给第三方且并入到多用途硬件装置130(诸如移动电话、平板电脑、个人计算装置中,或者能够通过通信链路与传感器控制装置110通信的其他类似的计算装置)中的软件或固件库或应用。多用途硬件还可以包括嵌入式装置,包括但不限于胰岛素泵或胰岛素笔,其具有被配置为与传感器控制装置110通信的嵌入式库。实施和执行软件库的多用途装置130可以被称为用于与传感器控制装置110通信的数据接收装置。如本文中所使用的,数据接收装置120是指专门制造用于与分析物监测系统100内的传感器控制装置110通信的硬件装置,而多用途数据接收装置130是指合并了软件或固件库或正在执行应用的适当配置的硬件装置。如本文中所使用的,数据通信装置是指数据接收装置120和多用途数据接收装置130中的任一者或两者。将理解,本文中所讨论的安全架构和设计原理同样适用于任何适当配置的系统,该系统包含传感器控制装置110、适当配置的数据接收装置120或多用途数据接收装置130、以及与本文中所描述的部件类似的其他部件。传感器控制装置110的作用可以由在传感器控制装置110中实施的感测硬件的性质来定义。
如本文中所实施的,传感器控制装置110可以包括具有预定有效使用寿命(例如,1天、14天、30天等)的小型、单独封装的一次性装置。传感器110可以应用于患者身体的皮肤,在传感器寿命的持续时间内保持粘附。如本文中所实施的,传感器110可以被设计为选择性地移除并且在重新应用时保持是有功能的。
尽管分析物监测系统100的所示实施方式仅包括传感器控制装置110、数据接收装置120、多用途数据接收装置130、用户装置140和远程服务器150中的每一个中的一个,但是本公开设想分析物监测系统100合并了在整个系统中相互作用的每个部件的倍数。例如,本文中所公开的实施方式包括多个传感器110,其可以与同远程服务器150通信的多个患者相关联。另外,远程服务器被示为单个实体150,但是将理解,其可以涵盖多个联网服务器,该联网服务器可以在地理上分布以减少延迟并引入有意的冗余以避免监测系统停机时间。
出于说明而非限制的目的,参考用于与如图2所示的所公开的主题一起使用的传感器控制装置110的示例性实施方式。图2示出了根据与本文中所描述的安全架构和通信方案兼容的示例性实施方式的示例性传感器控制装置110的框图。如本文中所实施的,传感器控制装置110可以包括与通信模块240通信地耦接的专用集成电路(“ASIC”)200。仅作为示例而非通过限制,示例性通信模块240可以包括蓝牙低功耗(“BLE”)芯片组241、近场通信(“NFC”)芯片组、或用于与类似的短程通信方案一起使用的其他芯片组,诸如根据IEEE802.15协议、IEEE 802.11协议的个域网、根据红外数据协会标准(IrDA)的红外通信等。通信模块240可以经由与数据接收装置120或多用途数据接收装置130的类似能力的通信模块的交互来发送和接收数据和命令。如本文中所实施的,某些通信芯片组可以嵌入ASIC 200(例如,NFC天线225)中。
如本文中所实施的,由于传感器控制装置110被设计为功率高效的、低成本的并且可能是一次性的,因此ASIC 200可以包括微控制器核心210、板载存储器(on-boardmemory)220和存储存储器(storage memory)230。存储存储器230可以存储用在认证和加密安全架构中的数据。数据可以具有各种元素和用途,包括如本文中的示例中所描述的。ASIC200可以从电源模块250(诸如板载电池)或从NFC脉冲接收功率。电源模块250可以仅存储相对较小的电荷。如本文中所实施的,传感器控制装置110可以是具有预定寿命并且没有广域网通信能力的一次性装置。如本文中所实施的,通信模块240可以提供电池功率下的通信。
尽管本公开是关于传感器控制装置110和ASIC 200的示例性配置来描述的,但是也设想了其他合适的配置。作为示例,传感器控制装置110的处理硬件可以实现为另一种类型的专用处理器,诸如现场可编程门阵列(FPGA)。如本文中所实施的,传感器控制装置110的处理硬件可以包括通用处理单元(例如,CPU)或由软件临时配置以执行传感器控制装置110的功能的另一可编程处理器。更一般地,处理硬件可以使用硬件、固件、软件或者硬件、固件和软件的合适的组合来实现。出于说明而非限制的目的,传感器控制装置110的处理硬件可以由一个或多个因素定义,包括计算能力、功率容量、存储器容量、网络连接的可用性等。
如本文中所实施的,传感器100的通信模块240可以是或包括一个或多个模块,以支持传感器控制装置110与分析物监测系统100的其他装置通信。在某些实施方式中,传感器控制装置110可以例如与数据接收装置120或用户装置140通信。通信模块240可以包括例如蜂窝无线电模块。蜂窝无线电模块可以包括一个或多个无线电收发器和/或芯片组,用于使用宽带蜂窝网络进行通信,该宽带蜂窝网络包括但不限于第三代(3G)、第四代(4G)和第五代(5G)网络。使用蜂窝无线电模块,传感器控制装置110可以与远程装置(例如,远程服务器150)通信以提供分析物数据(例如,传感器读数),并且可以接收更新或针对用户的警报。
作为另一示例,通信模块240可以包括BLE模块241和/或NFC模块,以促进与充当NFC扫描仪或BLE端点的数据接收装置120或用户装置140通信。如贯穿本公开所使用的,蓝牙低功耗(“BLE”)是指短程通信协议,该短程通信协议被优化以使蓝牙装置的配对对终端用户来说是简单的。通信模块240可以包括用于与类似的短程通信方案一起使用的额外的或替代的芯片组,诸如根据IEEE 802.15协议、IEEE 802.11协议的个域网、根据红外数据协会标准(IrDA)的红外通信等。通信模块240可以经由与数据接收装置120或用户装置140的类似能力的通信模块的交互来发送和接收数据和命令。某些通信芯片组可以嵌入ASIC 200(例如,NFC天线回路)中。另外,尽管未示出,但是传感器控制装置110的通信模块240可以包括用于使用根据IEEE 802.11标准(例如,802.11a、802.11b、802.11g、802.11n(又名Wi-Fi4)、802.11ac(又名Wi-Fi 5)、802.11ax(又名Wi-Fi 6))中的一个或多个的无线局域网进行通信的无线电。
通信模块243还可以包括其自身的存储器243,该存储器与用于通信模块240的微控制器核心耦接和/或与传感器控制装置110的ASIC 200的微控制器核心210耦接。在具体实施方式中,并且如本文中所描述的,ASIC 200的存储器220和通信模块240的存储器243中的一个或多个均可以是所谓的“一次性可编程”(OTP)存储器,其可以包括支持架构或者以其他方式被配置为定义存储器的特定地址或区域可以被写入的次数,其可以是一次或多于一次直到定义的次数,此后存储器可以被标记为不可用或以其他方式使得不可用于编程。本文中所公开的主题涉及用于利用新信息来更新该OTP存储器的系统和方法。具体地,本文中所公开的主题涉及用于使用OTA编程利用信息来更新该OTP存储器的系统和方法。
如本文中所实施的,传感器控制装置110可以使用使用一个或多个块密码的应用层加密来建立分析物监测系统100中的其他装置的相互认证和加密。使用在应用层中实现的非标准加密设计具有若干个益处。该方法的一个益处是,在某些实施方式中,用户可以以最小的交互完成传感器控制装置110与另一装置的配对,例如,仅使用NFC扫描,而不需要额外的输入,诸如输入安全码(security pin)或确认配对。
为了执行分析物监测或医疗功能,传感器100还可以包括适合其功能的合适的感测硬件260。如本文中所实施的,感测硬件260可以包括例如医疗硬件,诸如为患者开处方用于对药物或其他药剂进行自我给药的自动注射器。因此,感测硬件260可以包括驱动注射器的针或柱塞以便皮下递送药物的机构。注射器可以预先填充有药物,并且可以响应于触发事件而操作。例如,该机构可以将针驱动到患者体内并推进柱塞以经由针皮下递送药物。
如本文中所实施的,感测装置110可以被配置为可附接到患者的身体组织(例如,皮肤、器官、肌肉等)并且能够在受控或选定的时间段内自动递送固定剂量或患者选定剂量的药物的皮下注射的体上注射器。在这样的实施方式中,感测硬件260或感测装置可以包括例如用于将感测硬件260临时附接到患者的身体组织的粘合剂或其他装置、用于存储药物或药剂的主容器、被配置为驱动或允许柱塞释放以从主容器排出药物的驱动机构、套管针(例如,实心针)、设置在套管针周围的柔性套管、被配置为将套管针和/或柔性套管插入患者体内并且可选地缩回套管针而将柔性套管留在患者体内的插入机构、被配置为在装置激活时在主容器与柔性套管之间建立流体连通的流体通路连接器、以及被配置为激活该装置的致动器(例如,用户可移位按钮)。如本文中所实施的,体上注射器可以被预填充和/或预装载。
除了机械部件之外,感测硬件260还可以包括电部件和/或电子部件。例如,电子开关可以耦接到该机构。感测装置110可以建立经认证的通信,接收加密的信号,使用本公开的技术对信号进行解密,确定信号包括操作开关的命令,并使开关驱动针。因此,本文中所实施的感测装置可以被配置为响应于远程命令使用感测硬件260来执行功能。
如本文中所实施的,感测硬件260可以包括行程传感器和模数转换器,以生成指示由针或柱塞行进的距离的数字信号。在递送药剂时,低功率感测装置110可以从传感器获得读数,使用本公开的技术对读数进行加密,并将读数安全地报告给另一装置。另外地或替代地,感测装置110可以报告其他测量值或参数,诸如递送药剂的时间、所递送药剂的体积、递送药剂时遇到的任何问题等。感测装置110可以被配置为向远程装置提供与感测硬件260的操作相关的数据。
感测硬件260可以被配置为实现一个或多个医疗和非医疗功能的任何合适的组合,并且可以包括一个或多个感测部件。感测部件可以被配置为检测感测装置110的操作状态(例如,拆封/准备给药、无菌屏障移除、与患者的身体组织接触、套管和/或针插入、药物递送发起、致动器或按钮移位、药物递送完成、柱塞位置、流体通路阻塞等),感测装置110或其中包含的药物的状况(例如,温度、冲击或振动暴露、光暴露、药物颜色、药物浊度、药物粘度、地理位置、空间定向、时间信息、环境空气压力等),和/或关于患者的生理信息(例如,体温、血压、脉搏或心率、血糖水平、身体活动或运动、指纹检测等)。该检测到的信息可以从传感器控制装置110卸载以促进存储和分析,例如卸载到数据接收装置120、多用途数据接收装置130或远程服务器150。如本文中所实施的,传感器控制装置110可以被配置为从其他装置接收加密数据以及向其他装置发送加密数据两者。
仍然参考图2,传感器控制装置110的ASIC 200可以被配置为使用保持在存储存储器230内的数据来动态地生成认证和加密密钥。还可以利用一组有效的认证和加密密钥对存储存储器230进行预编程,以与特定种类的装置一起使用。ASIC 200还可以被配置为使用接收到的数据来执行与其他装置的认证过程(例如,握手、相互认证等),并且在发送敏感数据(诸如经由通信模块240将敏感数据发送给远程服务器150)之前将生成的密钥应用于敏感数据。所生成的密钥可以是对传感器控制装置110唯一的、对一对装置唯一的(例如,对传感器控制装置110与数据接收装置120的特定配对唯一的)、对传感器控制装置110与其他装置之间的通信会话唯一的、对通信会话期间发送的消息唯一的、或者对消息内包含的数据块唯一的。本文中更详细地讨论由传感器控制装置110的ASIC 200和通信模块240实现的技术。
出于说明而非限制的目的,参考用于与如图3所示的所公开的主题一起使用的数据接收装置120的示例性实施方式。图3示出了与本文中关于示例性实施方式描述的安全和计算架构兼容的示例性数据接收装置120。如本文中所实施的,数据接收装置120可以包括小形状因子的装置。数据接收装置120可以可选地不像传感器控制装置110那样受到存储器或处理能力的约束,并且如本文中所实施的,数据接收装置120可以包括足够用于操作性软件存储和数据存储的存储器,以及足够用于软件执行的RAM,以与本文中所描述的传感器控制装置110通信。如图3所示,数据接收装置120包括ASIC 300,该ASIC包括微控制器310、存储器320和存储设备330,并且与通信模块340通信地耦接。如本文中所实施的,ASIC 300可以与传感器控制装置110的ASIC 200相同。替代地,ASIC 300可以被配置为包括额外的计算能力和功能。用于数据接收装置120的部件的功率可以由电源模块350输送,如本文中所实施的,该电源模块可以包括可再充电电池,从而允许持续操作和持续使用。
数据接收装置120还可以包括显示器370,用于促进查看从传感器控制装置110或其他装置(例如,用户装置140或远程服务器150)接收的分析物数据。显示器370可以是具有相对低的屏幕刷新率的功率高效的显示器,以节省能量使用并进一步降低数据接收装置120的成本。显示器370可以是低成本的触摸屏,以通过一个或多个用户接口接收用户输入。尽管未示出,但是数据接收装置120可以包括单独的用户接口部件(例如,物理键、光传感器、麦克风等)。用于数据接收装置120的部件的功率可以由电源模块350输送,如本文中所实施的,该电源模块可以包括可再充电电池,从而允许持续操作和持续使用。
尽管示出为单独的部件,但是在具体实施方式中,通信模块340的处理器可以执行通常由ASIC 300的微控制器310执行的处理操作。因此,ASIC 300可以被移除,并且存储器和其他存储设备被添加到通信模块,以简化数据接收装置120所需的硬件。
通信模块340可以包括BLE 341模块和NFC模块342。数据接收装置120可以被配置为与传感器控制装置110无线地耦接,并且将命令和数据发送给传感器控制装置110。如本文中所实施的,数据接收装置120可以被配置为,相对于如本文中所描述的传感器控制装置110,经由通信模块340的特定模块(例如,BLE模块342或NFC模块343)作为NFC扫描仪和BLE端点来操作。例如,数据接收装置120可以使用通信模块340的第一模块向传感器控制装置110发出命令(例如,OTA编程命令),并且使用通信模块340的第二模块将数据(例如,OTA编程数据)发送给传感器控制装置110。
如本文中所实施的,数据接收装置120可以被配置用于经由通信模块340的通用串行总线(USB)模块345的通信。数据接收装置120可以例如通过USB模块345与用户装置140通信。数据接收装置120可以例如经由USB接收软件或固件更新,经由USB接收批量数据,或者经由用户装置140将数据上传到远程服务器150。USB连接可以对每次插入事件进行认证。认证可以使用例如具有不同密钥的两次、三次、四次或五次通过设计。USB系统可以支持用于加密和认证的各种不同的密钥集。密钥可以与不同的角色(临床、制造商、用户等)匹配。可能泄露安全信息的敏感命令可以使用经认证的额外的密钥集来触发经认证的加密。
作为另一示例,通信模块340可以包括例如蜂窝无线电模块344。蜂窝无线电模块344可以包括一个或多个无线电收发器,用于使用宽带蜂窝网络进行通信,该宽带蜂窝网络包括但不限于第三代(3G)、第四代(4G)和第五代(5G)网络。使用蜂窝无线电模块344,数据接收装置120可以与远程服务器150通信以接收分析物数据或提供(例如,通过一个或多个用户接口)更新或从用户接收的输入。另外,尽管未示出,但是数据接收装置120的通信模块340可以包括用于使用根据IEEE 802.11标准(例如,802.11a、802.11b、802.11g、802.11n(又名Wi-Fi 4)、802.11ac(又名Wi-Fi5)、802.11ax(又名Wi-Fi 6))中的一个或多个的无线局域网进行通信的无线电。
如贯穿本公开所使用的,蓝牙低功耗(“BLE”)是指短程通信协议,该短程通信协议被优化以使蓝牙装置的配对对终端用户来说是简单的。如本文中所描述的,在传感器控制装置110上使用BLE可以可选地不依赖于蓝牙的标准BLE实现方式来实现安全,而是可以替代地使用使用一个或多个块密码的应用层加密来建立相互认证和加密。使用在应用层中实现的非标准加密设计具有若干个益处。该方法的一个益处是,用户可以仅通过NFC扫描完成传感器控制装置110与数据接收装置120的配对,而不需要用户提供额外的输入,诸如输入安全pin或确认数据接收装置与传感器控制装置110之间的BLE配对。另一益处是,该方法减轻了允许不紧邻传感器控制装置110的装置无意或有意配对的可能性,至少部分是因为用于支持配对过程的信息是经由短程而不是远程BLE信道上的备用短程通信链路(例如,NFC)共享的。此外,由于不涉及BLE配对和结合方案,传感器控制装置110的配对可以避免通过芯片供应商的实现问题或BLE规范中的漏洞。
如本文中所实施的,数据接收装置120的板载存储设备330可以能够在延长的时间段内存储从传感器控制装置110接收的分析物数据。此外,如本文中所实施的多用途数据接收装置130或用户计算装置140可以被配置为经由广域网与远程服务器150通信。如本文中所实施的,传感器控制装置110可以向数据接收装置120或多用途数据接收装置130提供敏感数据。数据接收装置120可以将敏感数据发送给用户计算装置140。用户计算装置140(或多用途数据接收装置130)又可以将该数据发送给远程服务器150以用于处理和分析。在与远程服务器150通信时,多用途数据接收装置130和用户计算装置140可以根据由用户输入并存储在相应的装置处的认证证书来生成唯一的用户令牌。认证证书可以用于建立到远程服务器150的安全连接,并且还可以用于适当地加密提供给远程服务器150的任何敏感数据。如本文中所实施的,多用途数据接收装置130和用户计算装置140可以可选地在其处理能力的使用方面不受限制,并且因此,标准数据加密和传输技术可以用于传输到远程服务器150。
如本文中所实施的,数据接收装置120还可以包括与传感器控制装置110的感测硬件260类似或从其扩展的感测硬件360。仅作为示例而非通过限制,在其中传感器控制装置110的感测硬件260被配置用于连续血糖监测的实施方式中,数据接收装置120的感测硬件360可以被配置有血糖仪,该血糖仪与血糖测试条兼容使用,从而扩展传感器控制装置110的血糖监测。
图4示出了用于在存储器(诸如传感器控制装置110的存储器220或243)中组织数据的示例性实施方式。在第一实施方式中,存储器400被预先布置到多个预先分配的存储器块或容器中。容器被预先分配成固定的大小。容器405a、405b和405c具有被写入到这些容器的数据,并且如果存储器400是一次性编程存储器或者具有以其他方式受限的编程访问的存储器,则容器405a、405b和405c可以被认为处于不可编程状态。容器410a和410b虽然具有与容器405a、405b和405c相同的大小,但是尚未被写入。容器410a和410b因此被认为当前处于可编程或可写状态。一旦容器410a和410b被写入,它们就可能被置于不可编程或不可写状态。使用固定大小的容器可以是有利的,例如以提供数据块的高便携性。通过预先分配数据块的大小,存储器400可以简化替换代码块或补充新特征的过程。另外,以此方式,系统可以通过对可用容器的数量进行计数来确定存储器400可以被添加的剩余次数。以该方式对存储器400进行容器化可以改进将写入到存储器400的代码和数据的可传输性。容器化存储器400还可以增加存储器400对无意错误的弹性,因为代码块可以与存储器边界一致地写入。因此,更新存储在存储器400中的装置(例如,本文中所描述的传感器控制装置)的软件可以通过利用写入到一个或多个新容器的更新代码仅取代特定的先前写入的一个或多个容器中的代码而不是替换存储器中的整个代码来执行,如本文中所描述的。这可以减少或防止引入软件、固件或存储器错误。对存储器400进行容器化还可以确保写入到先前写入的一个或多个容器的数据或指令(诸如以其他方式与被更新的数据或指令无关的数据或指令)不能被修改。
在第二实施方式中,存储器450不是预先布置的。相反,为数据分配的空间是根据需要动态分配或确定的。可以严格控制编程数据的大小,从而潜在地增大存储器的使用率。存储器的编程区段455可以被认为处于不可编程状态。可编程存储器460的区段是未分配的和未写入的。为了将数据写入到可编程存储器460的区段,控制单元、存储器管理单元或其他结构必须首先请求由控制单元将未分配有存储器的一部分分配用于写入。例如,当代码块不与预先分配的存储器中的容器的大小直接一致时,控制单元可以指定要分配的存储器的大小,从而潜在地减少或防止浪费空间。可以发布小的增量更新,因为可以在预期更新的情况下定义不同大小的容器。然而,在写入到存储器时,必须注意确保有足够量的存储器可供分配,诸如以扩展装置功能。如果更新被推送到在大小上比存储器450的未分配区域460大的装置(例如,如本文中所描述的传感器控制装置),则更新可能失败或被拒绝。
图5是示出了根据所公开的主题的用于传感器控制装置中的存储器的空中(OTA)编程以及在由传感器控制装置执行过程中的OTA编程之后的存储器的使用的示例性操作和数据流的示意图。在图5所示的示例性OTA编程500中,从外部装置(例如,数据接收装置130)发送请求以发起OTA编程(或重新编程)。在511处,传感器控制装置(例如,传感器控制装置110)的通信模块510中的一个或多个接收OTA编程命令。通信模块510将OTA编程命令发送给传感器控制装置的控制单元530(例如,ASIC 200的微控制器210)。
继续参考图5,在531处,在接收到OTA编程命令之后,控制单元530验证OTA编程指令。例如,控制单元530可以确定OTA编程命令是否利用了与传感器控制装置的制造商或其授权代表相关联的数字签名令牌来签名。在确定OTA编程命令有效时,控制单元530可以将传感器控制装置设置成OTA编程模式。
在521处,一个或多个第二通信模块520从外部装置接收用于对传感器控制装置进行重新编程的数据。数据可以从发送OTA编程命令的同一外部装置接收,但可以另外地或替代地从不同的外部装置接收。第二通信模块520将OTA编程数据发送给控制单元530。
仍然参考图5,在532处,控制单元530也可以验证OTA编程数据。验证OTA编程数据可以包括:确定是否利用了与传感器控制装置的制造商或其授权代表相关联的数字签名令牌对OTA编程数据进行签名。在一些实施方式中,用于验证OTA编程数据的数字签名令牌可以是用于验证OTA编程命令的相同数字签名令牌。在一些实施方式中,可以使用不同的数字签名令牌,例如,通过使用两个数字签名来进一步增加OTA编程过程的安全,从而保护装置。另外地或替代地,OTA编程数据可以使用加密令牌和方案来加密,该加密令牌和方案已经在传感器控制装置与外部装置之间预先分配和/或相互商定。
在533处,在验证OTA编程数据之后,控制单元530可以重置传感器控制装置,以将传感器控制装置重新初始化为编程状态。重置和重新初始化传感器控制装置可以减少某些自动编程事件的发生,该事件例如但不限于可以防止或禁止对传感器控制装置的编程的未经授权的标识和操纵。作为示例,当从传感器控制装置检索数据或将数据传送给传感器控制装置时,传感器控制装置可以定期停止或防止某些命令的执行。作为另一示例,传感器控制装置可以例如但不限于强制执行通信会话超时,使得持续时间长于阈值量的通信会话可以因为可能遇到错误而被终止,该阈值量可以长于正常通信会话或突发的预期长度。当数据被提供用于OTA编程时,操作或通信超时可以中断编程数据的写入,这可以使传感器控制装置不可操作或导致故障。在完成之后,传感器控制装置已经转变为OTA编程状态。
图5示出了OTA编程500的一个示例,其中OTA编程命令和OTA编程数据由一个或多个通信模块510以及一个或多个第二通信模块520接收,并且随后被中继到控制单元530。另外地或替代地,如本文中所实施的,通信模块520可以被配置为等待将OTA编程数据发送给控制单元530,直到控制单元530已经完成对OTA编程命令的验证之后。作为另一示例,在某些实施方式中,OTA编程数据和OTA编程命令均可以由同一通信模块510接收。传感器控制装置可以包括单个通信模块510,或者如果配备有多于一个通信模块510,则可以被配置为仅接受来自通信模块510中的单个或某些通信模块的OTA编程命令或OTA编程数据。如本文中所描述的,第一通信模块可以被配置为从外部装置接收OTA编程命令,并且例如但不限于,并且如本文中所实施的,第一通信模组可以包括NFC接收器或收发器。另外地或替代地,并且如本文中所实施的,第一通信模块可以包括与蓝牙协议兼容的接收器或收发器,该蓝牙协议可以是BLE协议。在具体实施方式中,如本文中所描述的,一个或多个第一通信模块510可以与第一通信协议兼容,而一个或多个第二通信模块520可以与第二通信协议兼容。例如,当第一通信模块包括NFC接收器或收发器时,第二通信模块可以包括与蓝牙或BLE协议兼容的接收器或收发器。类似地,当第一通信模块包括与蓝牙或BLE协议兼容的接收器或收发器时,第二通信模块可以包括NFC接收器或收发器。
一旦传感器控制装置已经转变为OTA编程状态,控制单元530就可以在534处开始将数据写入到传感器控制装置的可重写存储器540,并且在535处将数据写入到传感器控制装置的OTP存储器550。如本文中所描述的,术语OTP存储器可以指代包括访问限制和安全以促进向存储器中的特定地址或区段写入预定次数。如本文中所描述的,OTP存储器可以被配置为所谓的“一次性可编程存储器”,其可以被编程一次或多于一次,直到定义的次数。另外地或替代地,设想了提供预定义的重新编程实例的存储器的其他实施方式。由控制单元530写入的数据可以基于经验证的OTA编程数据。例如,控制单元530还可以将数据写入到OTP存储器550的空闲或未使用部分。控制单元530可以写入数据以使得OTP存储器550的一个或多个编程块或区域被标记为无效或不可访问。写入到OTP存储器的空闲或未使用部分的数据可以用于替换OTP存储器550的无效或不可访问的编程块。
在某些实施方式中,传感器控制装置的可重写存储器540可以包括用于传感器控制装置的软件的编程清单或简档。编程清单或简档可以包括OTP存储器550的块或写入到该OTP存储器的块的列表。该列表可以包括哪些块是有效的以及哪些块是无效的或不可访问的指示。因此,当基于OTP存储器550执行代码时,控制单元530可以参考块的列表来确定将避免哪些块。在某些实施方式中,编程清单或简档可以另外地或替代地指示在每个编程块之后是OTP存储器550的哪个编程块。然后,当基于OTP的编程块执行代码时,控制单元530可以使用编程清单或简档来确定在特定块或区域之后将使用哪个块,从而有效地跳过无效块。在某些实施方式中,编程清单或简档可以另外地或替代地标识已经是无效的编程块,并且进一步标识哪些编程块已经被指定为用于编程块的替换。这样的标识可以通过参考来完成,使得例如,如果有效编程块参考了无效编程块或存储在其中的代码,则控制单元530可以通过参考编程清单或简档来确定有效编程块包括过时的参考,并且替代地检索替换编程块(或存储在其中的代码)。在下面的图6中提供了使与所公开的主题一致的存储块无效和替换该存储块的所示示例。标识哪些编程块已经取代或替换已经无效的先前写入的编程块(诸如通过参考)促进执行包括在新的编程块和预先存在的编程块两者中的软件指令。当准备软件指令时,基于参考的方法可以确保在适当的、新的编程块处解析对其他编程块的参考或调用,而不更新现在无效的编程块的位置的每个实例。
在控制单元530在534和535处将数据写入到相应的存储器之后,控制单元530可以执行一项或多项软件完整性(integrity)检查,以确保在写入过程期间错误没有被引入到编程块中。例如,可以对单个存储器块执行完整性检查,诸如对新写入的存储器块、对整个存储器(或涵盖多个编程块的存储器的指定区域)、或对传感器控制装置的标准编程流(其可以在编程清单或简档中定义)执行完整性检查。例如,编程清单可以定义将利用新写入的数据执行的许多基本单元测试,其指定将尝试的动作以及将预期的结果。在某些实施方式中,在532处接收的OTA编程数据可以包括与OTA编程数据相关联的完整性检查值,诸如完整性位或检查和值(如本文中所描述的)。在535处将数据写入到OTP存储器550之后,控制单元530可以计算用于一个或多个存储器块的完整性位值或检查和值,并且将所计算的值与提供有OTA编程数据的值进行比较。如果这些值对应,则控制单元530可以继续处理。如果值不同,则控制单元530可以采取一个或多个补救动作,该补救动作可以例如包括尝试重写数据(并且使被认为包括错误的存储器块无效,警告用户已经发生错误,或者警告外部装置在使用通信模块510和520中的一个重写期间已经发生错误)。一旦控制单元530能够确定数据已经无错误地写入,控制单元530就可以恢复传感器控制装置的标准操作。例如,并且如本文中所实施的,控制单元530可以重置传感器控制装置以使传感器控制装置在标准执行模式(例如,不同于编程模式)下重新初始化。
在执行模式下,在536处,控制单元530可以根据可重写存储器540检索编程清单或简档。如本文中所描述的,编程清单或简档可以包括有效软件编程块(或一般地,存储器块)的列表,并且可以包括用于传感器控制装置的程序执行的指南。通过遵循编程清单或简档,控制单元530可以基于软件的当前版本来确定OTP存储器550的哪些存储器块适合执行,并且避免执行过时或无效的编程块或参考存储在无效编程块中的过时数据。在537处,根据编程清单中提供的指南,控制单元530可以选择性地从OTP存储器550检索存储器块。在538处,控制单元530可以使用检索到的存储器块,诸如通过执行存储在存储器中的编程代码或者使用变量(诸如在执行期间存储在存储器中的校准参数)。存储在存储器中的编程代码可以包括由OTA编程数据定义并写入到OTP存储器的存储器块的用于传感器控制装置及其部件的新操作或功能。执行代码可以包括使用与传感器控制装置的分析物传感器或其他感测硬件(例如,医疗硬件)相关联的经修正或更新的算法。经修正或更新的算法还可以影响传感器控制装置的一般操作,诸如用于通信模块的功率电平调节技术或控制软件。执行检索到的存储器块可以使得传感器控制装置使用诸如传感器控制装置的分析物传感器的感测硬件来从患者收集分析物数据,分析或以其他方式处理分析物数据,以及将分析物数据导出、卸载或传输到外部装置。在具体实施方式中,分析物可以包括(通过示例而非限制)血糖、酮、乳盐、氧、血红蛋白A1C、白蛋白、醇、碱性磷酸酶、丙氨酸转氨酶、天冬氨酸转氨酶、胆红素、血尿素氮、钙、二氧化碳、氯化物、肌酐、红细胞比容、乳酸,镁、氧、pH、磷、钾、钠、总蛋白,尿酸等。在具体实施方式中,分析物数据还可以包括关于患者的其他信息,诸如温度、心率、血压或运动数据。
在538处执行从OTP存储器550检索的代码之前,控制单元530可以对检索到的存储器块执行一项或多项完整性检查。类似于在编程模式下写入存储器块之后执行的完整性检查,控制单元530可以对例如存储器的单个块、在编程清单或简档中定义的编程流、或整个OTP存储器550执行完整性检查。在具体实施方式中,可以对可重写存储器和对应的存储器块执行类似的完整性检查。例如,可以在传感器控制装置初始化序列期间执行完整性检查,其中,如果检测到错误,则控制单元530可以拒绝进入标准操作模式。例如,可以在第一次从可重写存储器540或OTP存储器550检索存储器块时执行完整性检查。例如,可以在执行存储器块中的指令之前执行完整性检查,这可以仅发生在选定的时间,诸如第一次执行指令时,或者可以在每次检索存储器块或执行对应的指令时发生。可以例如在编程清单或简档中为控制单元530定义完整性检查的定时和重复性。完整性检查的定时和重复性可以根据平衡传感器控制装置功耗(以及因此,传感器控制装置电池期限和整体服务期限)与用于收集、监测和导出敏感分析物数据的软件的安全的原则进行设置。
图6示出了根据本公开的主题的存储器块管理的示例性演示。具体地,图6示出了根据本公开的主题的OTA编程的示例。图6示出了存储器600a的第一描绘,该存储器诸如一次性可编程存储器或具有以其他方式受限的编程访问的存储器。存储器包括三个存储器块或容器605a、605b和605c。如本文中所实施的,容器605a、605b和605c均具有写入到这些容器的数据,并且因此处于不可写或不可编程状态。这样的数据可以包括例如用于由控制单元执行的操作代码或用于在执行期间使用的变量。存储器600a还包括未分配的区域或区段610。由于存储器600a的区段610是未分配的,因此区段610被认为是可编程存储器。控制单元、存储器管理单元或其他类似结构可以发出命令来分配和写入可编程存储器的区段的一部分,使得可编程存储器的区段的该部分被置于不可编程状态。图6还示出了在可编程存储器的区段的部分605d已经被置于不可编程状态之后的存储器600b的第二描绘。另外,容器615被标记为无效或不可访问,指示该容器或存储器块可以由控制单元在执行期间使用。
未示出的是图1中所示的分析物监测系统100中所使用的装置的制造,该装置包括传感器控制装置110、数据接收装置120、以及可以由远程服务器150、多用途数据接收装置130和其他用户装置140使用或与其一起使用的软件或应用编程接口。制造商可以选择通过安全编程和更新(例如,一次性编程、加密软件或固件更新等)提供对装置安全通信所需的信息和编程。例如,制造商可以提供可以用于为每个装置生成加密密钥的信息,包括用于传感器控制装置110以及可选地用于数据接收装置120的安全根密钥,该安全根密钥可以与装置特定的信息和操作数据(例如,基于熵的随机值)组合使用,以根据需要生成对装置、会话或数据传输唯一的加密值。这些加密密钥可以用于例如验证从外部装置(例如,数据接收装置120、多用途数据接收装置130、用户装置140等)发送给传感器控制装置110的OTA编程命令和OTA编程数据。
制造商可以向每个传感器控制装置110注入唯一标识符(“UID”)和其他标识信息,诸如用于制造商的标识符、用于通信模块和制造商的标识符、或者用于传感器或传感器部件的任何其他合适的标识信息。作为示例,UID可以从传感器唯一数据中导出,诸如从由ASIC供应商分配给在传感器控制装置110中实施的每个ASIC 200的序列号、从由通信模块供应商分配给在传感器控制装置110中实施的通信模块240的序列号以及从由传感器制造商生成的随机值等导出。另外地或替代地,UID还可以从制造值导出,该制造值包括用于传感器控制装置110或其部件的批号、传感器控制装置110或其关键部件的制造商的天、日期或时间、传感器或其关键部件的制造位置、工艺或生产线、以及可以用于标识传感器何时以及如何制造的其他信息。UID可以伴随加密密钥和若干个生成的随机值,该随机值对于每个传感器控制装置110也是唯一的。类似的过程可以用于建立数据接收装置120的安全身份。
由于由传感器控制装置110收集并在传感器控制装置110与分析物监测系统100中的其他装置之间交换的数据属于关于用户的信息,因此该数据是高度敏感的并且可以有益于被保护。与患者相关联的分析物数据是敏感数据,至少部分是因为该信息可以用于多种目的,包括健康监测和药剂给药决策。除了患者数据之外,分析物监测系统100还可以针对外部方进行逆向工程的努力来加强安全。本文中所描述的安全架构可以包括本文中所描述的控制特征的各种组合,包括但不限于对装置之间的通信的保护、对部件和应用内的专有信息的保护以及对秘密和主要密钥材料的保护。如本文中所实施的,加密和认证可以用作用于提供保护特征的示例性技术控制。如本文中所实施的,分析物监测系统100的各种部件可以被配置为符合安全接口,该安全接口被设计为保护该通信和相关联数据的机密性、完整性和可用性(“CIA”)。为了解决这些CIA问题,可以将安全功能并入到分析物监测系统100的硬件和软件的设计中。
如本文中所实施的,为了促进数据的保密性,任何两个装置(例如,传感器控制装置110和数据接收装置120)之间的通信连接可以在由任一装置发送敏感数据之前相互认证。通信连接可以使用装置唯一或会话唯一的加密密钥来加密。如本文中所实施的,加密参数可以被配置为随着通信的每个数据块而改变。
如本文中所实施的,为了保护数据的完整性,可以利用内置到通信中的传输完整性检查来校验任何两个装置(例如,传感器控制装置110和数据接收装置120)之间的加密通信。作为示例,如本文中所描述的,OTA编程数据可以利用传输完整性检查来校验或验证。此外,写入到传感器控制装置110的存储器的数据可以在执行之前利用完整性检查来校验或验证。如本文中所实施的,可以用于加密通信的会话密钥信息可以在两个装置各自已经被认证之后在两个装置之间交换。完整性检查可以包括例如检错码或纠错码,其(作为示例而通过限制)包括非安全检错码、最小距离编码、重复码、奇偶校验位、检查和、循环冗余检查、密码散列函数、纠错码、以及用于检测数字消息中的错误的存在的其他合适的方法。
如本文中所实施的,最小距离编码包括随机纠错码,该随机纠错码提供对可检测错误的数量的严格保证。最小距离编码包含选择码字来表示接收值,该接收值使该值与表示之间的汉明距离最小化。可以使用标准阵列来辅助最小距离编码或最近邻编码。最小距离编码被认为是有用的,其中,错误发生的概率与给定符号的位置无关,并且错误可以被认为是独立事件。这些假设可以特别适用于通过二进制对称信道的传输。
另外地或替代地,如本文中所实施的,重复码涉及一种编码方案,该编码方案跨越信道重复位,以保证通信消息被无错误地接收。给定待传输的数据流,将数据划分为位块。每个块被传输和重新传输某一预定次数。如果重复块的任何传输不同,则检测到错误。
另外,或者作为另一替代方案,如本文中所实施的,检查和是基于固定字长的消息码字的模算术和的、相对于消息或存储的数据块的值。检查和可以从数据的整个块或其子集进行引导。检查和是使用检查和函数或加密哈希函数生成的,该函数被配置为针对目标消息的微小改变输出显著不同的检查和值(或哈希值)。奇偶校验位是添加到传输中的一组位的位,以确保结果中的某些位的计数是偶数或奇数。例如,奇偶校验位可以用于确保值为0的位的数量为奇数。奇偶校验位然后可以检测单个错误或重复的固定数量的错误。奇偶校验位可以被认为是检查和的特殊情况。
如本文中所实施的,为了进一步减少或防止对分析物监测系统100的装置的未经授权的访问,根密钥(例如,用于生成装置唯一或会话唯一密钥的密钥)可以可选地不存储在传感器控制装置110上,并且可以在存储设备中由远程服务器150或者在比传感器控制装置110具有更大计算能力的其他装置(例如,数据接收装置120)上加密。如本文中所实施的,根密钥可以以模糊的方式存储,以防止第三方轻易访问根密钥。根密钥也可以基于其在存储设备中的存储位置而以不同的加密状态存储。如本文中所实施的,为了促进数据的可用性,可以保护传感器控制装置110的操作在使用寿命期间不被篡改,其中,例如并且如本文中所实施的,通过限制经由通信接口(例如,BLE和NFC)对存储器220的写入功能的访问,传感器控制装置110可以被配置为一次性的。传感器可以被配置为仅向已知装置(例如,通过MAC地址或UID的标识符)或者仅向可以提供与制造商或以其他方式认证的用户相关联的预定代码的装置授予访问权限。还可以强制访问存储器220的读取功能,包括例如读取功能试图访问存储器220的已经被指定为安全或敏感的特定区域的情况。传感器控制装置110还可以拒绝在指定的时间量内没有完成认证的任何通信连接请求,以防止对通信接口的特定拒绝服务攻击,包括试图的中间人(MITM)式攻击。此外,本文中所描述的通用认证和加密设计可以支持可互操作的使用,其中,传感器控制装置110的数据可以在不永久绑定到单个装置的情况下对其他“可信”数据接收装置可用。
如本文中所实施的,包括传感器控制装置110和数据接收装置120的装置可以各自采用各种安全实践来确保通过通信会话交换的数据的机密性,并且促进相关装置找到并建立与可信端点的连接。作为示例,传感器控制装置110可以被配置为主动标识并连接可信局域网、广域网或蜂窝宽带网络,并持续校验这些连接的完整性。如果请求者不能在预定时间段内(例如,在四秒内)通过通信接口完成专有登录过程,则传感器控制装置110还可以拒绝并关闭连接请求。例如但不限于,这样的配置还可以防止拒绝服务攻击。
如本文中所实施的,传感器控制装置110和数据接收装置120可以通过存储与其他装置相关联的加密和认证密钥来支持建立长期连接对。例如,传感器控制装置110或数据接收装置可以将连接标识符与用于建立到另一装置的连接的加密和认证密钥进行关联。以此方式,装置可以更快地重新建立丢弃的连接,至少部分是因为装置可以避免建立新的认证配对,并且可以经由加密的通信协议直接进行信息交换。在成功建立连接之后,装置可以避免广播连接标识符和其他信息以建立新的连接,并且可以使用商定的信道跳频方案进行通信,以减少第三方监听通信的可能。
可以使用片上硬件功能来主动管理数据传输和存储的完整性。虽然加密可以提供以防篡改方式传输数据的安全手段,但是加密和解密可能是计算成本高昂的过程。此外,传输失败可能难以与攻击区分开。如先前所描述的,快速的基于硬件的检错码可以用于数据完整性。作为示例,如本文中所实施的,可以使用针对消息长度的适当大小的检错码(例如,16位CRC),但是根据所公开的主题可以使用其他合适的基于硬件的检错码。访问、生成或操纵敏感数据的编程指令可以存储在利用额外的安全措施(例如,加密)进一步保护的存储器块或容器中。
如本文中所实施的,分析物监测系统100可以采用周期性的密钥旋转来进一步降低密钥泄露和利用的可能性。分析物监测系统100所采用的密钥旋转策略可以被设计为确保现场部署或分布式装置的向后兼容性。作为示例,分析物监测系统100可以采用用于下游装置的密钥(例如,在现场的或不能切实提供更新的装置),该密钥被设计为与由上游装置使用的多代密钥兼容。另外,并且根据本文中的主题,可以通过使包括过期密钥的存储器块无效来安全地更新密钥,然后利用写入到新存储器的数据来替换过期密钥。密钥的旋转可以由分析物监测系统100的制造商或操作者发起。例如,分析物监测系统100的制造商或操作者可以生成一组新密钥或定义用于生成密钥的一组新过程。在意图使用该组新密钥的传感器110的制造期间,制造商可以将该组新密钥传播到新制造的传感器110。制造商还可以向与远程服务器150通信的已部署装置推送更新,以用于将该组新密钥或用于生成密钥的该组新过程扩展到已部署装置。作为进一步的替代方案,密钥旋转可以基于商定的时间表,其中,装置被配置为根据某一时间驱动或事件驱动的功能来调整所使用的密钥。
除了以下所要求保护的特定实施方式之外,所公开的主题还涉及具有下文所要求保护的从属特征和上文以及附图中所公开的从属特征的任何其他可能组合的其他实施方式。因此,本文中所公开的具体特征可以在所公开的主题的范围内以其他方式彼此组合,使得所公开的主题可以被识别为还专门针对具有任何其他可能组合的其他实施方式。因此,出于说明和描述的目的,已经呈现了对所公开的主题的特定实施方式的前述描述。其并非旨在是穷举性的或将所公开的主题限制于所公开的那些实施方式。
本文中所公开的实施方式包括:
实施方式A.一种传感器控制装置,其包括一个或多个处理器、分析物传感器、通信模块和一个或多个存储器,该一个或多个存储器通信地耦接到一个或多个处理器、通信模块和分析物传感器,其中:一个或多个存储器包括多个存储块,该多个存储块包括处于不可编程状态的第一组存储块以及处于可编程状态的第二组块;并且其中,一个或多个处理器被配置为使用通信模块来接收指令以:将程序数据写入到处于可编程状态的第二组存储块中的第二存储块,使第二存储块被置于不可编程状态,以及将标记数据写入到存储器,以将处于不可编程状态的第一组存储块中的第一存储块标记为不可访问;并且其中,写入到第二存储块的程序数据包括指令,该指令在由一个或多个处理器执行时,使一个或多个处理器处理从分析物传感器接收的分析物数据。
实施方式A可以具有任意组合的以下额外的元素中的一个或多个:元素1:其中,存储器的多个存储块是动态分配的存储器存储块;元素2:其中,存储器与通信模块集成;元素3:其中,存储器与通信模块分离;元素4:其中,存储器是一次性可编程存储器,其中一旦数据被写入到存储器,数据就不能被重写;元素5:其中,写入到第二存储块的程序数据还包括与传感器控制装置的特征、检测和计算算法、或用于分析物传感器的校准数据相关的指令;元素6:其中,在将标记数据写入到存储器之前,传感器控制装置:使用通信模块来接收签名的命令,其中,命令使用加密密钥来签名;并且进入编程模式;元素7:其中,指令作为使用共享加密密钥保护的通信会话的一部分来接收;元素8:其中,通信模块与第一通信协议兼容,并且传感器控制装置还包括与第二通信协议兼容的第二通信模块;元素9:其中,在一个或多个处理器将标记数据写入到存储器之前,传感器控制装置经由第二通信模块接收进入编程状态的命令;元素10:其中,第一通信协议和第二通信协议中的一个是蓝牙低功耗,并且第一通信协议和第二通信协议中的一个是近场通信;元素11:其中,一个或多个处理器还被配置为,在执行写入到第二存储块的程序数据的指令之前,执行对存储器的一项或多项完整性检查;元素12:其中,一项或多项完整性检查包括对第一组存储块中的每个存储块执行完整性检查;元素13:还包括可重写存储器,该可重写存储器通信地耦接到一个或多个处理器、通信模块和分析物传感器,其中,写入到第二存储块的程序数据首先写入到可重写存储器;元素14:其中,一个或多个处理器基于存储在可重写存储器中的简档来执行写入第一组存储块中的存储块中的程序数据的指令;元素15:其中,将标记数据写入到存储器以将第一存储块标记为不可访问包括修改存储在可重写存储器中的简档;元素16:其中,传感器控制装置被配置为,在一个或多个处理器将标记数据写入到存储器以将第一存储块标记为不可访问之前,重新初始化为兼容更新的状态;元素17:其中,分析物传感器被配置为生成分析物数据,其中,分析物数据指示使用分析物传感器的患者的流体中的分析物的水平;并且处理从分析物传感器接收的分析物数据包括:使用写入到第一组存储块中的存储块的程序数据来分析该分析物数据;以及使用通信模块将分析物数据发送给外部装置。
实施方式B.一种方法,包括:由传感器控制装置的一个或多个处理器使用传感器控制装置的与一个或多个处理器通信地耦接的通信模块来接收将标记数据写入到传感器控制装置的存储器的指令,该存储器与传感器控制装置的一个或多个处理器、通信模块和分析物传感器通信地耦接,其中,存储器包括多个存储块,该多个存储块包括处于不可编程状态的第一组存储块以及处于可编程状态的第二组块;由一个或多个处理器将程序数据写入到处于可编程状态的第二组存储块中的第二存储块,使第二存储块被置于不可编程状态;由一个或多个处理器将标记数据写入到存储器,以将处于不可编程状态的第一组存储块中的第一存储块标记为不可访问;以及由一个或多个处理器基于执行存储在写入到第二存储块的程序数据中的指令来处理从分析物传感器接收的分析物数据。
实施方式C.一种包括指令的计算机可读非暂时性存储介质,该指令被配置为在由传感器控制装置的一个或多个处理器执行时执行操作,该操作包括:由一个或多个处理器使用传感器控制装置的与一个或多个处理器通信地耦接的通信模块来接收将标记数据写入到传感器控制装置的存储器的指令,该存储器与传感器控制装置的一个或多个处理器、通信模块和分析物传感器通信地耦接,其中,存储器包括多个存储块,该多个存储块包括处于不可编程状态的第一组存储块以及处于可编程状态的第二组块;由一个或多个处理器将程序数据写入到处于可编程状态的第二组存储块中的第二存储块,使第二存储块被置于不可编程状态;由一个或多个处理器将标记数据写入到存储器,以将处于不可编程状态的第一组存储块中的第一存储块标记为不可访问;以及由一个或多个处理器基于执行存储在写入到第二存储块的程序数据中的指令来处理从分析物传感器接收的分析物数据。
对于本领域技术人员来说显而易见的是,在不脱离所公开的主题的精神或范围的情况下,可以对所公开的主题的方法和系统作出各种修改和变化。因此,所公开的主题旨在包括在所附权利要求及其等同物的范围内的修改和变化。

Claims (20)

1.一种传感器控制装置,包括:
一个或多个处理器,
分析物传感器,
通信模块,以及
一个或多个存储器,通信地耦接到所述一个或多个处理器、所述通信模块和所述分析物传感器,其中:
所述一个或多个存储器包括多个存储块,所述多个存储块包括处于不可编程状态的第一组存储块以及处于可编程状态的第二组块;并且
其中,所述一个或多个处理器被配置为使用所述通信模块来接收指令以:将程序数据写入到处于所述可编程状态的第二组存储块中的第二存储块,使所述第二存储块置于所述不可编程状态,并且将标记数据写入到所述存储器,以将处于所述不可编程状态的所述第一组存储块中的第一存储块标记为不可访问;并且
其中,写入到所述第二存储块的所述程序数据包括以下指令,所述指令在由所述一个或多个处理器执行时,使所述一个或多个处理器处理从所述分析物传感器接收的分析物数据。
2.根据权利要求1所述的传感器控制装置,其中,所述存储器的所述多个存储块是动态分配的存储器存储块。
3.根据权利要求1所述的传感器控制装置,其中,所述存储器与所述通信模块集成。
4.根据权利要求1所述的传感器控制装置,其中,所述存储器与所述通信模块分离。
5.根据权利要求1所述的传感器控制装置,其中,所述存储器是一次性可编程存储器,在所述存储器中,一旦数据被写入到所述存储器,所述数据就不能被重写。
6.根据权利要求1所述的传感器控制装置,其中,写入到第二存储块的所述程序数据还包括与所述传感器控制装置的特征、检测和计算算法、或用于所述分析物传感器的校准数据相关的指令。
7.根据权利要求1所述的传感器控制装置,其中,在将所述标记数据写入到所述存储器之前,所述传感器控制装置:
使用所述通信模块来接收签名的命令,其中,使用加密密钥来签名所述命令;并且
进入编程模式。
8.根据权利要求1所述的传感器控制装置,其中,所述指令作为使用共享加密密钥保护的通信会话的一部分而被接收。
9.根据权利要求1所述的传感器控制装置,其中,所述通信模块与第一通信协议兼容,并且所述传感器控制装置还包括与第二通信协议兼容的第二通信模块。
10.根据权利要求9所述的传感器控制装置,其中,在所述一个或多个处理器将所述标记数据写入到所述存储器之前,所述传感器控制装置经由所述第二通信模块接收进入编程状态的命令。
11.根据权利要求9所述的传感器控制装置,其中,所述第一通信协议和所述第二通信协议中的一者是蓝牙低功耗,并且所述第一通信协议和所述第二通信协议中的一者是近场通信。
12.根据权利要求1所述的传感器控制装置,其中,所述一个或多个处理器还被配置为在执行所述程序数据写入到所述第二存储块的指令之前,执行对所述存储器的一项或多项完整性检查。
13.根据权利要求12所述的传感器控制装置,其中,所述一项或多项完整性检查包括对所述第一组存储块中的每个存储块执行完整性检查。
14.根据权利要求1所述的传感器控制装置,还包括可重写存储器,所述可重写存储器通信地耦接到所述一个或多个处理器、所述通信模块和所述分析物传感器,其中,写入到所述第二存储块的所述程序数据首先写入到所述可重写存储器。
15.根据权利要求14所述的传感器控制装置,其中,所述一个或多个处理器基于存储在所述可重写存储器中的简档来执行所述程序数据写入所述第一组存储块中的存储块中的指令。
16.根据权利要求15所述的传感器控制装置,其中,将所述标记数据写入到所述存储器以将所述第一存储块标记为不可访问包括:修改存储在所述可重写存储器中的所述简档。
17.根据权利要求1所述的传感器控制装置,其中,所述传感器控制装置被配置为在所述一个或多个处理器将所述标记数据写入到所述存储器以将所述第一存储块标记为不可访问之前,重新初始化成兼容更新的状态。
18.根据权利要求1所述的传感器控制装置,其中,所述分析物传感器被配置为生成所述分析物数据,其中,所述分析物数据指示使用所述分析物传感器的患者的流体中的分析物的水平;并且
处理从所述分析物传感器接收的所述分析物数据包括:
使用写入到所述第一组存储块中的所述存储块的所述程序数据来分析所述分析物数据;并且
使用所述通信模块将所述分析物数据发送给外部装置。
19.一种方法,包括:
由传感器控制装置的一个或多个处理器使用所述传感器控制装置的与所述一个或多个处理器通信地耦接的通信模块来接收将标记数据写入到所述传感器控制装置的存储器的指令,所述存储器与所述传感器控制装置的所述一个或多个处理器、所述通信模块和分析物传感器通信地耦接,其中,所述存储器包括多个存储块,所述多个存储块包括处于不可编程状态的第一组存储块以及处于可编程状态的第二组块;
由所述一个或多个处理器将程序数据写入到处于所述可编程状态的第二组存储块中的第二存储块,使所述第二存储块被置于所述不可编程状态;
由所述一个或多个处理器将标记数据写入到所述存储器,以将处于所述不可编程状态的所述第一组存储块中的第一存储块标记为不可访问;并且
由所述一个或多个处理器基于执行存储在写入到所述第二存储块的所述程序数据中的指令来处理从所述分析物传感器接收的分析物数据。
20.一种计算机可读非暂时性存储介质,包括指令,所述指令被配置为在由传感器控制装置的一个或多个处理器执行时执行包括以下的操作:
由所述一个或多个处理器使用所述传感器控制装置的与所述一个或多个处理器通信地耦接的通信模块来接收将标记数据写入到所述传感器控制装置的存储器的指令,所述存储器与所述传感器控制装置的所述一个或多个处理器、所述通信模块和分析物传感器通信地耦接,其中,所述存储器包括多个存储块,所述多个存储块包括处于不可编程状态的第一组存储块以及处于可编程状态的第二组块;
由所述一个或多个处理器将程序数据写入到处于所述可编程状态的第二组存储块中的第二存储块,使所述第二存储块被置于所述不可编程状态;
由所述一个或多个处理器将标记数据写入到所述存储器,以将处于所述不可编程状态的所述第一组存储块中的第一存储块标记为不可访问;并且
由所述一个或多个处理器基于执行存储在写入到所述第二存储块的所述程序数据中的指令来处理从所述分析物传感器接收的分析物数据。
CN202280051427.7A 2021-07-21 2022-07-20 感测装置的空中编程 Pending CN117751412A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US63/224,088 2021-07-21
US202163249735P 2021-09-29 2021-09-29
US63/249,735 2021-09-29
PCT/US2022/037654 WO2023003920A1 (en) 2021-07-21 2022-07-20 Over-the-air programming of sensing devices

Publications (1)

Publication Number Publication Date
CN117751412A true CN117751412A (zh) 2024-03-22

Family

ID=90277876

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280051427.7A Pending CN117751412A (zh) 2021-07-21 2022-07-20 感测装置的空中编程

Country Status (1)

Country Link
CN (1) CN117751412A (zh)

Similar Documents

Publication Publication Date Title
US10341866B1 (en) Secure communication architecture for medical devices
EP2989574B1 (en) Treatment apparatus with medical feature activation
US20210272687A1 (en) Medical device and secure control system
US12126995B2 (en) Secured communications in medical monitoring systems
AU2013288269B2 (en) Communication secured between a medical device and its remote control device
US12047417B2 (en) Secure communication link between medical apparatuses of a data-management device
US20220150308A1 (en) Transmitting analyte data using low-power instruction sets
US20230083633A1 (en) Modular analyte connectivity system for extendible communication with different types of physiological sensors
JP2024538606A (ja) 検体データ受信デバイスのためのモバイルアプリケーション更新
CN106605227A (zh) 用于使用监督实体或安全模块来生成监视信号的方法
US20230027588A1 (en) Over-the-Air Programming of Sensing Devices
RU2750055C1 (ru) Способ управления работой медицинского устройства в медицинской системе и медицинская система
JP7556953B2 (ja) 医療システムを動作させるための方法、医療システム、およびセキュリティモジュール
US20190130068A1 (en) Secure Patient Data in Medical Environments
CN117751412A (zh) 感测装置的空中编程
US20220409052A1 (en) Medical monitoring systems with cloud communication interface
US20220409053A1 (en) Medical monitoring systems with cloud communication interface
CA3231436A1 (en) Transmitting analyte data using low-power instruction sets
US11937089B2 (en) Medical implant software systems and methods
CN118043806A (zh) 用于与不同类型的生理传感器进行可扩展通信的模块化分析物连接系统

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