CN112352208A - 用于改变一个或更多个部件的地址的系统和方法 - Google Patents

用于改变一个或更多个部件的地址的系统和方法 Download PDF

Info

Publication number
CN112352208A
CN112352208A CN201980040448.7A CN201980040448A CN112352208A CN 112352208 A CN112352208 A CN 112352208A CN 201980040448 A CN201980040448 A CN 201980040448A CN 112352208 A CN112352208 A CN 112352208A
Authority
CN
China
Prior art keywords
address
component
new
addresses
candidate
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
CN201980040448.7A
Other languages
English (en)
Inventor
斯蒂芬·P·布什
蒂莫西·约翰·拉德马赫
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.)
Lexmark International Inc
Original Assignee
Lexmark International 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
Priority claimed from US15/954,322 external-priority patent/US20190319915A1/en
Application filed by Lexmark International Inc filed Critical Lexmark International Inc
Publication of CN112352208A publication Critical patent/CN112352208A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • G06F21/608Secure printing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/73Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Mathematical Physics (AREA)
  • Small-Scale Networks (AREA)
  • Storage Device Security (AREA)

Abstract

一种确定多个部件的地址的方法包括由从设备接收来自主设备的地址改变请求。从设备可以是多个部件中的一个部件或与主设备分离的安全模块。响应于接收的地址改变请求,伪随机数生成器(PRNG)状态基于伪随机数生成器先前状态被更新。该方法还包括:针对每个部件从PRNG状态检索一组位,以形成部件的候选地址,并基于该候选地址确定该部件的新部件地址。因此,基于从相同PRNG状态检索的不同组的位,确定多个部件的新部件地址。

Description

用于改变一个或更多个部件的地址的系统和方法
相关申请的交叉引用
本专利申请涉及标题为“System and Methods for Changing Addresses of Oneor More Components”的美国专利申请序列号XX/XXX,XXX,其与本申请同时提交并转让给本申请的受让人。
关于联邦资助的研究或开发的声明
无。
参考序列表等
无。
背景
1.技术领域
本公开大体上涉及寻址方案,且更具体地涉及改变成像设备中部件的地址以提供增强的安全性。
2.相关技术的描述
诸如成像系统的许多计算系统允许使用共享总线与外围设备通信,以在它们之间传送数据。这样的系统是高效的,因为单个总线连接到每个设备。但是,为了提供有序的数据流,需要一组规则或协议,使得多于一个设备不会同时尝试使用共享总线。通常,主设备或主机设备是主导设备,并且控制与其他设备(也称为从设备)的通信。利用这种类型的数据通信系统,主设备确定何时与从设备通信,并且作为响应,从设备做出响应。从设备不会自行发起与主设备的通信。
用于主设备和一个或更多个从设备之间有序数据通信的一个众所周知的协议是集成电路总线(I2C)协议。在I2C协议中,每个从设备都用一个地址唯一标识。当主设备(也称为总线主设备)发起与特定从设备的通信时,在通信发起期间,从设备的地址与数据和/或命令一起在共享总线上传输。当连接到共享总线的所有从设备从总线主设备接收数据和/或命令以及地址时,只有具有匹配地址的从设备响应数据和/或命令,并向总线主设备发回确认。
在一些成像设备中,可以使用与可消耗供给物品相关联的电子认证方案。可消耗供给物品可以包含与位于成像设备中的控制器通信的集成电路芯片或安全设备。在这样的布置中,成像设备包括主设备,该主设备发起并控制共享总线上包括数据、地址、时钟信号和其他控制信号的所有通信的传递,并且每个供给物品可以被配置为从设备。主设备可以通过向每个从设备发送验证询问(verification challenge)并确定从设备是否正确响应验证询问来检查每个从设备的真实性(authenticity)。通过主设备从从设备接收对询问(challenge)的正确响应来验证真实性。否则,如果从设备没有正确响应,则从设备可以被检测为克隆或伪造品,并且适当的措施可以被采取以防止未授权的供给物品的使用,以便优化成像设备的性能和/或防止对成像设备的损坏。
供给物品中的一些安全设备使用I2C总线上的10位寻址与成像设备通信,并且使用地址改变作为安全特征。在一些地址改变方案中,基于给定的供给类型,供给物品地址的特定数量的位是固定的,而剩余的位是可变的,其中初始值为零。一旦接收到地址改变命令,供给物品的安全设备可以将地址的可变部分改变为新值。成像设备中的总线主设备然后可以使用新地址与该供给物品通信。周期性地改变供给物品的地址提供了增强的安全性,因为它增加了未授权部件与总线主设备通信的难度。
然而,对10位寻址模式的支持可能不像许多I2C控制器只支持7位寻址那样广泛。与10位寻址不同,7位寻址通常会导致更高的数据吞吐量,因为相比于10位寻址中的两个字节,一个地址只需要一个字节。虽然7位寻址提供了某些优点,例如更高的数据吞吐量,但是当与上述利用固定和可变地址部分的地址改变方案结合使用时,7位寻址引入了其自身的缺点。更具体地,由于将地址大小减小到7位导致可用作可变地址位的位更少,因此减少或限制了供给物品的可能的地址的数量。例如,如果地址的4位是固定的,那么供给物品将只有剩余的3位作为可变地址位,这转化为对于供给物品只有8个可能的地址。因此,需要一种用于共享总线系统的改进的地址改变方法。
概述
本公开的示例实施例提供了可以在成像设备或系统中实现的示例方法,该示例方法设置多个部件或从设备(诸如供给设备)的地址,从而阻止使用未经授权的部件作为授权部件的替代。
在一个示例实施例中,一种确定多个部件的地址的方法包括由从设备接收来自主设备的地址改变请求。从设备可以是连接到主设备的多个部件中的一个部件或与主设备分离的安全模块。响应于所接收的地址改变请求,伪随机数生成器(PRNG)状态可以基于伪随机数生成器先前状态被更新。该示例方法还可以包括针对每个部件从PRNG状态检索一组位,以形成用于该部件的候选地址。该示例方法还可以包括基于候选地址确定用于该部件的新部件地址。在一个示例方面,针对每个部件从PRNG状态检索该一组位可以包括从PRNG状态检索一组连续位。在该地址改变方案中,可以基于从相同PRNG状态检索的不同组的位来确定多个部件的新部件地址。
确定每个部件的新部件地址可以包括确定候选地址是否是用于分配给部件的有效地址。在一个示例方面,确定候选地址是否是有效地址可以包括确定候选地址是否是保留地址。在另一个示例方面,确定候选地址是否是有效地址可以包括确定候选地址是否是默认地址。在又一示例方面,确定候选地址是否是有效地址可以包括确定候选地址是否是已经被分配给另一部件的地址。在确定候选地址是用于分配给部件的有效地址时,候选地址可以被分配为新部件地址。在确定候选地址不是用于分配给部件的有效地址时,候选地址可以被更新。在一个示例方面,可以通过对候选地址执行数学运算来更新候选地址,以得到新候选地址。
在另一示例实施例中,一种确定具有多个部件的成像设备中的部件的地址的方法包括由与部件相关联的部件电路基于伪随机数生成器(PRNG)的先前状态来更新伪随机数生成器(PRNG)状态。部件电路可以响应于从主设备接收到地址改变请求来更新PRNG状态。部件电路还可以基于PRNG状态生成多个部件的多个新部件地址。部件电路然后可以使用来自多个新部件地址中的不同部件地址作为用于与主设备的至少一个后续通信的部件地址。可以基于与部件相关联的索引值来确定不同的部件地址。生成新部件地址可以包括基于从PRNG状态检索的不同组的位来确定新部件地址。在一个示例方面,生成新部件地址可以包括针对每个部件从PRNG状态检索一组连续的位,以形成每个部件的候选地址。生成新部件地址还可以包括基于候选地址针对每个部件确定新部件地址。
在又一示例实施例中,设置多个部件的地址的方法包括由主设备向安全模块发送检索多个部件的新地址的命令。响应于接收到的命令,安全模块可以基于PRNG状态生成所述多个部件的新地址,然后向主设备发送新地址。响应于从安全模块接收到新地址,主设备向多个部件中的每一个部件发送地址改变请求。响应于接收到的地址改变请求,每个部件可以基于PRNG状态为多个部件生成新地址,由每个部件生成的新地址对应于由安全模块生成的新地址。每个部件然后可以使用不同的新地址作为基于与该部件相关联的索引值确定的新部件地址。在一个示例方面,由安全模块和每个部件生成新地址可以包括针对每个部件从PRNG状态检索一组位,以形成对于每个部件的候选地址。新地址的生成还可以包括基于候选地址确定每个部件的新地址。在另一示例方面,确定每个部件的新地址可以包括确定候选地址是否是以下中的一个:保留地址、默认地址和已经分配给另一部件的地址。
从前面的公开内容和下面对多个示例实施例的详细描述中,对于本领域的技术人员来说明显的是,本公开在确定和设置从设备的地址的领域中提供了显著的进步。鉴于下面提供的详细描述,将更好地理解多个示例实施例的附加特征和优点。
附图简述
通过参考结合附图的示例实施例的以下描述,本公开的上述和其他特征及优点以及获得它们的方式将变得更明晰且被更好地理解。在整个说明书中,相同的参考数字用于指示相同的元素。
图1是成像系统的示意图。
图2是描绘了图1的成像设备的框图。
图3是采用与多个部件通信的总线主设备的共享总线系统的框图。
图4是示出改变和/或设置图3的共享总线系统中的部件的地址的方法的一个示例实施例的流程图。
图5是示出确定多个部件中的每一个部件的新地址的方法的一个示例实施例的流程图。
图6是示出具有用于形成多个部件的新地址的位的256位伪随机数生成器(PRNG)状态的一个示例的框图。
图7是示出具有用于形成多个部件的新地址的位的256位伪随机数生成器(PRNG)状态的第二示例的框图。
图8是示出用于验证部件已经正确地改变了它们相应的地址的方法的一个示例实施例的流程图。
附图的详细描述
应理解的是,本公开不限于在以下描述中阐述的或在附图中示出的部件的结构和布置的细节。本公开能够用于其它示例实施例,并且能够以各种方式被实践或执行。例如,其他示例实施例可以结合结构、时间、过程和其他变化。示例仅仅是代表可能的变化。除非明确要求,否则单个部件和功能是可选的,并且操作的顺序可以变化。某些示例实施例的部分及特征可以被包括于其它实施例中或是代替其他实施例的部分及特征。本公开的范围包括所附权利要求和所有可用的等同物。因此,以下描述不被认为是限制性的意义,并且本公开的范围由所附权利要求限定。
此外应理解的是,本文使用的措辞和术语是出于描述的目的并且不应当被视为限制性的。“包括”、“包含”或“具有”及其变形在本文的使用意在包括在其后列出的项和其等同物以及附加的项。此外,术语“一(a)”和“一(an)”在本文中的使用不表示对量的限制,而是表示存在至少一个参考项目。
此外,应当理解,本公开的示例实施例包括硬件和电子部件或模块,出于讨论的目的,这些部件或模块可以被示出且描述为好像大多数部件仅在硬件中被实现。
还将理解是,可通过计算机程序指令分别实施图中每个块以及图的块的组合。这些计算机程序指令可以被加载到通用计算机、专用计算机或其他可编程数据处理装置上以生产机器,使得在计算机或其他可编程数据处理装置上执行的指令可以创建用于实现在下面的描述中详细讨论的图中的每个块或块的组合的功能的装置。
这些计算机程序指令也可以存储在非暂时性计算机可读介质中,该介质可以引导计算机或其他可编程数据处理装置以特定方式运行,使得存储在计算机可读介质中的指令可以产生制品,包括实现一个或更多个块中指定的功能的指令装置。也可以将计算机程序指令加载到计算机或其他可编程数据处理装置上,以使得在计算机或其他可编程装置上执行一系列操作步骤,从而产生计算机实现的过程,使得在计算机或其他可编程装置上执行的指令实现一个或更多个块中指定的功能。
因此,图中的块支持用于执行指定功能的装置的组合、用于执行指定功能的步骤的组合、以及用于执行指定功能的程序指令装置。还将理解,图中每个块和图中块的组合可由执行指定功能或步骤的专用的基于硬件的计算机系统或专用的硬件和计算机指令的组合实现。
公开了用于改变诸如成像系统的系统中部件的地址的示例系统和方法。根据本公开的一个示例实施例,控制器可以与总线主设备结合操作,以在初始化或复位时(例如在安装之后或在首次向部件供电的情况下)发起对部件的地址改变操作,以便将每个部件的默认地址改变为不同地址。在一个示例方面,总线主设备可以向成像系统的安全模块发送检索系统中各种部件的新地址的命令。安全模块可以使用预定的地址改变算法来计算部件的新地址,并将新地址值返回给总线主设备。在从安全模块接收到新地址之后,总线主设备可以向每个部件发送地址改变命令。每个部件可以运行由安全模块执行的相同的地址改变算法,以便每个部件获得与安全模块通过地址改变算法生成的相同的地址。因此,成像系统中所有部件的地址可能对于每个部件是已知的。基于来自配置证书的供给标识符,可以为每个部件分配相关联的地址索引值。分配给每个部件的地址索引值可用于确定分配给特定部件的地址。
现在参考附图,且特别是参考图1和图2,其中示出了结合本公开使用的成像系统100的示意图。成像系统100包括用于在介质片材上打印图像的成像设备105。要打印在介质片材上的图像的图像数据可以从诸如计算机110、膝上型电脑115、移动设备120、扫描仪125或类似计算设备的各种源提供给成像设备105。这些源经由有线和/或无线连接直接或间接地与成像设备105通信。成像设备105包括控制器130和用户接口135。控制器130可以包括处理器单元142以及相关联的存储器145(图2中示出)。在一些示例实施例中,控制器130可以被形成为一个或更多个专用集成电路(ASIC)或片上系统(SoC)。存储器145可以是存储数据的任何存储器设备,并且可以与控制器130一起使用或者能够与控制器130通信。例如,存储器145可以是任何易失性的或非易失性的存储器或它们的组合,诸如,例如随机存取存储器(RAM)、只读存储器(ROM)、闪存和/或非易失性RAM(NVRAM)等,以用于存储数据。控制器130可以控制对打印数据的处理。控制器130还可以在将图像打印到介质片材上的过程中控制打印引擎的操作。
在一个示例实施例中,成像设备105可以采用电子认证方案来认证被安装在成像设备105中的可消耗供给物品和/或可更换单元。在图1中,示出了代表性的可消耗供给物品,诸如墨粉盒150。可消耗供给物品150可以被安装在成像设备105中的相对应的储存区域中。为了对可消耗供给物品150执行认证,成像设备105可以利用被结合在成像设备105中的安全芯片、设备或模块160以及附接到可消耗供给物品150的安全芯片165。成像设备105中的安全模块160和可消耗供给物品150中的安全芯片165都可以被配置为连接到控制器130的从设备。在一个示例方面,成像设备105中的安全模块160可以类似于可消耗供给物品150中的安全芯片165,但是安全模块160可以在编程方面不同于安全芯片165。安全模块160和安全芯片165可以结合控制器130操作,以执行认证功能,这将在下面更详细地解释。
图2是描绘了图1的成像设备105的框图。在该示例实施例中,共享总线系统200可用于控制各种子组件和部件和/或获得它们的状况报告。如图2所示,诸如成像单元205、墨粉盒150和其他从设备或供给设备的各种部件和/或能够接收和/或处理数据的可寻址部件和子组件210(诸如定影器、激光扫描单元和介质馈送机构)可以连接到共享总线系统200。控制器130通常可以被配置成控制总线主设备215。控制器130还可以通过共享总线系统200与成像设备105中的一个或更多个部件或子组件150、205、210通信。
安全模块160可以结合总线主设备215操作,以促使在控制器130和连接到共享总线系统200的各种部件和子组件150、205、210之间建立连接。例如,安全模块160可以被配置为提供与成像单元205、墨粉盒150和其他可寻址部件210相关的认证功能、安全和操作互锁和/或地址改变功能。在一个示例性实施例中,安全模块160可以被配置为生成成像单元205、墨粉盒150和其他可寻址部件210的新地址,以促使与控制器130建立通信。
图3示出了共享总线系统200的一个示例实施例,其采用与多个部件150、205、210通信的总线主设备215。在图3中,总线主设备215可以与一个或更多个供给设备300a-300n通信,其中n表示在共享总线305上通信的成像设备105中的供给设备300的总数。如本文所使用的,术语“供给设备”可以指成像设备105中与控制器130通信的任何可寻址和/或可替换的部件,例如成像单元205、墨粉盒150和图2中的其他可寻址部件210。在下文中,供给设备300a-300n中的任何一个通常可以被称为供给设备300。
供给设备300可能无法窃听安全模块160对供给设备300的新地址的计算,这将在下面进一步详细讨论。安全模块160可以被配置成将新地址传送给总线主设备215。总线主设备215然后可以将新地址传送给控制器130。在一个示例方面,通过使用数据加密,新地址到总线主设备215和/或控制器130的通信可以保持私密。虽然共享总线305和总线310中的每一个在该示例实施例中被示为双线串行总线,但是在其他示例实施例中可以使用共享并行总线结构或其他有线结构。在一些其他替代示例方面,安全模块160可以通过共享总线305与总线主设备215通信。在又一些其他示例实施例中,促使总线主设备215和供给设备300以及安全模块160之间的通信的结构可以使用无线技术来进行操作。
共享总线系统200可以利用集成电路总线(“I2C”)协议。本领域普通技术人员还将认识到,在其他示例实施例中,可以利用其他总线通信协议,诸如系统管理总线(SMB)协议、UNI/O总线协议或在具有主/从配置的总线结构中使用的其他协议。
总线总控215可以包括处理器315。总线主设备215还可以包括可以由处理器315控制的主I2C电路320。控制器130和供给设备300可以经由总线主设备215的主I2C电路320通过共享总线系统200相互通信。在一些示例实施例中,控制器130的处理器142可以用作总线主设备215的处理器315。
处理器315可以包括相关联的存储器325,以用于存储指令以及控制器130、安全模块160和供给设备300的地址。在一个示例实施例中,总线主设备215可以将供给设备300的地址存储在存储器325中的地址阵列A 330中。在一些示例实施例中,总线主设备215的存储器325可以形成控制器130的存储器145的一部分。在一些替代示例实施例中,单个存储器设备可以用于存储器325和存储器145。
安全模块160可以包括I2C接口电路335,以用于将I2C协议命令与总线主设备215对接。在一个示例实施例中,安全模块160可以配备有地址生成器345,以用于确定供给设备300的新地址。在一些示例方面,地址生成器345可以是存储在存储器340中的软件算法。在其他示例方面,地址生成器电路可以形成安全模块160的一部分。地址生成器345可以包括PRNG,以用于根据预定义的算法生成地址。PRNG可以能够生成大量地址,但方式非常不规则且不可预测。安全模块160可以在存储器340中的地址阵列A 350中存储一个或更多个供给设备300的地址。
每个供给设备300a-300n可以包括部件电路,例如相应的安全芯片165a-165n,每个安全芯片具有用于将I2C协议命令与总线主设备215对接的I2C接口电路352a-352n。每个供给设备300a-300n可以配备有相对应的地址生成器355a-355n,用于根据总线主设备215的请求改变其相应的地址。在一些示例方面,地址生成器355可以是存储在存储器或存储单元360a-360n中的软件算法。在其他示例方面,地址生成器电路可以形成安全芯片165的一部分。当以电路形式体现时,可以采用线性反馈移位寄存器(LFSR),其包括Galios类型。在一些示例实施例中,可以采用其他LFSR,诸如Fibonacci型移位寄存器或其他伪随机类型的移位寄存器。每个供给设备300中的地址生成器355可以实现由安全模块160中的地址生成器345使用的相同伪随机数生成算法,以通过该伪随机数生成算法导出安全模块160为供给设备300计算的相同地址。每个存储单元360a-360n可以在地址阵列A 365中存储成像设备105的一个或更多个供给设备300的地址。在一个示例实施例中,每个供给设备300可以在存储单元360中维护包含成像设备105中所有供给设备300的地址的长度为n的地址阵列A(其中,n表示供给设备300的总数)。用于为成像设备105的一个或更多个部件提供配置设置和/或参数的配置证书可用于向每个供给设备300分配供给标识符,该供给标识符标识每个供给设备300的地址索引,该地址索引可用于从地址阵列A确定供给设备300的地址。
在一个示例实施例中,成像设备105可以采用7位寻址方案。成像设备105中的每个设备可以基于其配置类型具有默认地址。例如,使用7位寻址方案,安全模块160的默认地址可以是地址8(0001000b),并且黑色墨粉瓶的默认地址可以是地址16(0010000b)。安全模块160可能不改变其地址,且因此总是使用其默认地址与成像设备105中的所有其他设备通信。在成像设备105复位之后,每个供给设备300可以使用供给设备300的默认地址通过共享总线305通信,直到供给设备300从总线主设备215接收到改变地址命令。一旦其地址改变,供给设备300使用其新地址通过共享总线305与总线主设备215通信。
总线主设备215可以在共享总线305上传输数据的格式可以包括起始位、预期响应的供给设备300的地址以及读或写位。总线主设备215可以等待被寻址的供给设备300确认接收到总线主设备215传输的数据。一旦接收到确认,总线主设备215就可以将一系列数据传输到被寻址的供给设备300。其他供给设备300在总线主设备215的一系列传输期间不可以中断通信,或者利用共享总线200,直到总线主设备215利用停止位释放总线。在每个数据字的传输之后,被寻址的供给设备300可以传输对数据字的接收的确认。如果总线主设备215最初传输“读”位,则响应于此,供给设备300可以向总线主设备215传输数据字,据此总线主设备215可以在被寻址的供给设备300的每次传输之后确认数据字的接收。当总线主设备215已经接收到所有请求的数据时,它可以传输“非确认”消息来指示读输送的结束。供给设备300然后可以释放共享总线305。如I2C协议所知,总线主设备215完全控制共享总线305上的通信。
图4示出了说明改变和/或设置在共享总线系统200中供给设备300的地址的方法400的一个示例实施例的流程图。该过程的开始在块405中示出,其中每个供给设备300a-300n已经被重置,例如在安装之后或者在首次向供给设备300a-300n供电的情况下,并且被分配了默认地址。供给设备300的默认地址可以从非易失性存储器(未示出)中检索。
在块410处,为了发起与供给设备300的通信,总线主设备215促使在安全模块160和每个供给设备300a-300n之间建立会话。在安全模块160和每个供给设备300之间的通信可以使用会话密钥加密。可以使用在安全模块160和供给设备300之间交换的数据字来计算每个会话密钥。安全模块160可以生成一个地址初始化向量(IV),并将该初始化向量与会话密钥数据一起传输给每个供给设备300a-300n。初始化向量可以是随机位串或固定的任意常数。
在块415处,每个供给设备300a-300n可以使用带有密钥的初始化向量来计算由地址生成器355实现的伪随机数生成算法的种子。在一个示例实施例中,每个地址生成器355a-355n可以使用256位SHA-2散列函数,该函数将种子和初始化向量作为输入,并生成对应于种子的固定大小的256位输出(例如,种子=SHA256(IV||密钥))。本领域普通技术人员还将认识到,在一些示例实施例中,可以使用其他伪随机数生成算法来计算种子。一些伪随机数生成算法包括但不限于线性同余生成器(linear congruential generator)、线性反馈移位寄存器(linear feedback shift register)、梅森扭转算法(Mersenne Twister)或基于密文的算法(cipher-based algorithm),如高级加密标准(Advanced EncryptionStandard)(AES)。虽然已经描述了使用SHA-2根据随机数和密钥来计算PRNG种子,但是在一些示例方面,可以使用不同的操作来代替SHA-2。例如,散列消息认证码(Hash MessageAuthentication Code)(HMAC)或AES加密可用于计算PRNG种子。在其他示例方面,代替使用共享密钥,可以使用公钥交换来建立种子,例如基于有限域密码学或椭圆曲线密码学的Diffie-Hellman。在其他示例方面,安全模块160可以生成种子并以加密形式将其发送给供给设备300。加密可以是对称的,如使用共享私钥的AES,也可以是不对称的,如使用公钥的RSA。
在块420处,每个供给设备300a-300n可以用种子来初始化PRNG状态(例如,state0=种子)。此后,每当需要随机数据时,例如当请求供给设备300的新地址时,可以基于先前的PRNG状态使用256位SHA-2来更新256位PRNG状态(例如,statei=SHA256(statei-1))。
在块425处,每个供给设备300可以初始化存储单元360的地址阵列A并用默认地址填充该地址阵列A。如上所讨论,配置证书可用于为每种类型的供给设备300分配供给标识符,该供给标识符用于确定在地址阵列A中供给设备300的地址索引。
总线主设备215可以周期性地发起供给设备300的地址改变。在一些示例实施例中,改变供给设备300的地址的时间可以基于随机或固定的时间段。在其他示例实施例中,改变地址的时间可以基于成像设备105的操作历史,例如当已经发生特定数量的事务(transactions)时。在块430处,为了发起地址改变操作,总线主设备215可以通过总线310向安全模块160发送检索供给设备300的新地址的命令。作为响应,在块435处,安全模块160可以使用预定算法来计算供给设备300的新地址,并且通过总线310向总线主设备215发送新地址。总线主设备215不需要由安全模块160使用来计算新地址的算法的知识。在一些示例方面,总线310可以与共享总线305隔离,并且连接到共享总线305的任何供给设备300a-300n可能不能窃听由安全模块160计算并传输到总线主设备215的新地址。在其他示例方面,新地址可以在被安全模块160传输到总线主设备215之前被加密。
参考图5,示出了说明确定供给设备300的新地址的方法500的一个示例实施例的流程图。此外,为了帮助描述图5所示的流程图,下面示出了用于计算新地址的示例伪代码:
Figure BDA0002838774420000131
该过程的开始在块505中示出,其中PRNG状态被更新为新的PRNG状态。在示例伪代码中,UpdatePRNG()函数更新PRNG状态。在一个示例实施例中,UpdatePRNG()函数可以通过以先前的PRNG状态作为输入使用SHA256计算新的PRNG状态来更新PRNG状态。然后,在块510处,包含供给设备300的地址的地址阵列A 350可以被复制到存储器340中的先前地址阵列P 375。
对于地址索引从i=0到n-1的每个供给设备300a-300n,确定候选地址。在块515处,可以在所有供给设备300的候选地址的迭代计算开始时确定供给设备300的候选地址。在该示例中,第一供给设备300a可以对应于与地址索引i=0相关联的供给设备,以及最后一个供给设备300n可以对应于与地址索引i=n-1相关联的供给设备300。
在块520处,可以通过从新的或更新的PRNG状态中检索一组七位来生成供给设备300的候选地址。在示例伪代码中,这七位随机数据是使用Random7bits()函数检索的。
在一个示例实施例中,由Random7bits()函数生成的每个供给设备300a-300n的候选地址可以对应于来自新的PRNG状态的每个连续字节的后7位。作为示例,图6中所示的PRNG状态600具有使用UpdatePRNG()函数生成的一组256位b0,b1,…,b255。在该示例实施例中,PRNG状态600的第一字节B1的后七位(从位b6到位b0)可用于形成与地址索引i=0相关联的第一供给设备300a的候选地址,第二字节B2的后七位(从位b14到位b8)可用于形成与地址索引i=1相关联的第二供给设备300b的候选地址,等等。在该示例实施例中,在每组地址位之间有一个位未被使用。
在另一示例实施例中,由Random7bit()函数生成的每个供给设备300的候选地址可以对应于新的PRNG状态的连续位7i+6至7i。作为示例,图7中所示的PRNG状态700具有使用UpdatePRNG()函数生成的一组256位b0,b1,…,b255。对于与地址索引i=0相关联的第一供给设备300a,PRNG状态700的前七位(从位b6到位b0)可用于形成候选地址。PRNG状态700的接下来的七位(从位b13到位b7)可以用于形成与地址索引i=1相关联的第二供给设备300b的候选地址,对于其余的供给设备300以此类推。在该示例实施例中,在每组地址位之间没有未使用的位。
尽管上述示例性实施例示出了使用来自PRNG状态的连续位作为供给设备300的地址位,但是要认识到,在其他示例性实施例中,每个供给设备300a-300n可以使用来自PRNG状态的任意七个位作为地址位,只要成像设备105和安全模块160中的所有供给设备300a-300n知道每个供给设备300a-300n使用的来自PRNG状态的不同位位置的特定一组位。另外,用于形成一个供给设备300的地址位的一个或更多个位(但不是全部)可以与用于形成另一供给设备300的地址位的位重叠或不重叠。通过知道由成像设备105中的每个供给设备300a-300n使用的特定一组位,每个供给设备300a-300n可以导出或到达由成像设备106中的安全模块160和每个其他供给设备300生成的相同地址。
返回参考图5,做出关于使用Random7bits()函数生成的候选地址是默认地址还是保留地址的判定,如由IsReservedAddress()函数所判定的(在块525处)。还可以做出关于候选地址是否被成像设备105中的另一个设备使用的判定,如由IsAddressInUse()函数所判定的。在该示例实施例中,如果候选地址是I2C保留地址或任何默认地址,则IsReservedAddress()函数可以返回“真”值;否则,IsReservedAddress()函数可会返回“假”值。在该示例实施例中,如果候选地址在地址阵列A或先前的地址阵列P中被发现,则IsAddressInUse()函数可以返回“真”值;否则,IsAddressInUse()函数可能会返回“假”值。
可以执行块525中的判定,使得供给设备300的新地址可以不是成像设备105中的任何设备或部件的任何默认地址。还可以执行块525中的判定,使得供给设备300的新地址可以防止地址冲突。特别地,保留默认地址并且不将任何保留的地址分配为新地址可以防止在成像设备105中的设备和/或部件(包括供给设备300)被重置的情况下的地址冲突。例如,广播地址(地址0)可以是保留地址,并且不能被任何供给设备300使用。在一个示例实施例中,不是默认地址或保留地址的所有其他7位地址可以用作新地址。在另一个示例方面,例如在I2C规范中,一些地址被保留用于特殊目的。例如,特殊地址(000001b)被保留用于CBUS,以便I2C总线连接到CBUS接收器。在I2C规范中,地址11110XXb也被保留用于10位从设备寻址。在本公开的一个示例实施例中,这些特殊地址和被保留的地址没有任何特殊含义,并且可以用于寻址供给设备300。
如果在块525中的判定是“真”或肯定的,则过程进行到块530,在块530中候选地址可以被更新以导出新的候选地址。候选地址可以通过向候选地址添加常数K并应用模(MOD)函数来更新,模(MOD)函数将下一个候选地址保持在有效范围内。在示例伪代码中,MOD函数包括“mod128”运算,并且素数(如13)可用于K,以涵盖所有可能的地址值。在另一个示例实施例中,K可以与128互质,诸如15。候选地址可能会继续更新,直到IsReservedAddress()函数和IsAddressInUse()函数中的每一个都返回“假”值为止。如果块308中的判定是“假”或否定的,则过程进行到块535。
在块535处,候选地址可以包含供给设备300的下一个地址,并且可以被写入地址阵列A 350。在块540处,做出关于成像设备105中的供给设备300a-300n的新地址是否已经被确定的判定。根据并非所有地址都已被确定的判定,示例方法500前进到块545,在块545中地址索引i可被递增以继续另一供给设备300的地址计算。此后,示例方法500循环回到块515,以确定下一个供给设备300的候选地址。因此,可以重复从块515到块540的过程流程,直到已经确定了所有供给设备300a-300n的新地址为止。
后续供给设备300的候选地址也可以使用Random7bits()函数来确定。因此,每个后续供给设备300的候选地址可以对应于使用Random7bits()函数检索的随机数据的接下来的七个位。在图6所示的示例PRNG状态600中,从位b14到位b8的下一组七位可以用于形成第二供给设备300b的候选地址,等等。在图7所示的示例PRNG状态700中,从位b13到位b7的下一组七位可以用于形成第二供给设备300b的候选地址,等等。在这些示例实施例中,每个供给设备300a-300n的候选地址可以对应于来自PRNG状态320的不同或唯一的一组连续位。随着过程循环通过每个供给设备300a-300n,地址阵列A 350可以用每个供给设备300a-300n的新地址填充。先前的地址阵列P 375确保在地址改变后可以使用所有的新地址。在该示例算法中,可以避免地址冲突,因为地址阵列A 350可能不包含具有相同值的两个元素。
参考图5,当在判定块540中确定了已经确定成像设备105中所有供给设备300的地址时,过程500前进到块550,在块550中存储在地址阵列A 350中的值可以用作供给设备300的新地址。由每个供给设备300a-300n的配置证书分配的供给标识符可以用于确定与地址阵列A 350中的供给设备300a-300n相关联的地址索引。
返回参考图4,在块440处,总线主设备215可以在从安全模块160接收到新地址时请求每个供给设备300a-300n改变其相应地址。该请求可以通过在共享总线305上的改变地址命令的方式来传输。
当每个供给设备300a-300n从总线主设备215接收到改变地址命令时,每个供给设备300a-300n利用相对应的存储单元360a-360n的相对应的地址阵列A 365a-365n和相对应的先前地址阵列P 370a-370n进行或执行图5中描述的相同地址改变算法,以便在块445处计算所有供给设备300的新地址。每个供给设备300a-300n可以用由相应的地址生成器355a-355n生成的新地址填充相对应的存储单元360a-360n的相对应的地址阵列A365a-365n。
在执行地址改变算法之后,每个供给设备300可以使用其旧地址向总线主设备215发送确认。在发送确认之后,在块450处,每个供给设备300a-300n可以将其地址从相对应的地址阵列A 365a-365n改变为相应的新地址。在该示例中,每个供给设备300a-300n可以将其地址改变为存储在地址阵列A的元素A[i]中的地址值,其中i是与分配给供给设备300的配置证书中的供给标识符相关联的索引值。
在一个示例实施例中,总线主设备215可以测试供给设备300的地址是否已经成功地改变为在地址阵列A 330中生成和存储的新地址。图8示出了用于验证供给设备300是否已经正确地改变了它们相应的地址的一个示例方法800。
在块805处,总线主设备215可以使用在先前地址阵列P 375中供给设备300的旧地址与供给设备300通信。在块810处,如果供给设备300使用其在先前地址阵列P 370中的旧地址进行响应,则总线主设备215可以确定供给设备300没有改变其地址。作为响应,在块815处,总线主设备215可以禁用供给设备300。
在块810处,如果供给设备300没有在其存储在先前地址阵列P 375中的旧地址上进行响应,则总线主设备215可以尝试使用供给设备300的存储在地址阵列A 330中的新地址与供给设备300通信(在块820处)。
在块825处,如果供给设备300没有在新地址上进行响应(即,供给设备300的存储在地址阵列A 330中的新地址与存储在地址阵列A 365中的新地址不匹配),则供给设备300可能生成了错误的新地址。总线主设备215然后可以禁用供给设备(块815)。在块825处,如果供给设备300在新地址上做出响应,则供给设备300计算出了正确的新地址,该新地址与存储在地址阵列A 330中的新地址相匹配。在块830处,总线主设备215然后可以使用其新地址继续与供给设备300通信。
总线主设备215和被寻址的供给设备300都可以用新的供给设备地址来更新,而供给设备不在共享总线305上传输它们的新地址,使得连接到共享总线305的任何设备都不能获得新地址的知识。此后,总线主设备215到被寻址的供给设备300的所有后续传输可以发生在新分配的地址上。在供给设备300由于对总线主设备215发送的询问的不正确的响应而被禁用的情况下,这种供给设备300可以被检测为克隆、伪造品或其他未被授权部件,并且可以采取或建议适当的措施。例如,可以建议用户经由用户接口135的显示器来获取授权的供给设备,或者联系系统管理员或技术支持来帮助解决该问题。成像设备105可以被配置为解决这种情况,以防止未授权部件的使用,从而优化成像设备105的性能和/或防止对成像设备105的损坏。
已经在使用I2C 7位寻址方案的背景下描述了示例实施例的细节的描述。然而,要认识到的是,本文提供的教导和概念可以应用于其他寻址方案,例如10位寻址方案。此外,这样的教导和概念可以应用于任何寻址总线,例如Modbus或USB。
许多实施例的相对明显的优点包括但不限于,与以前的方法相比,提供了可用于供给设备寻址的更多数量的地址。特别地,通过利用地址的所有位作为可变位,并对每个供给设备300a-300n使用任何非保留或非默认地址,可以实现更多数量的可能地址。此外,将地址的整个长度作为变量可能会使攻击者更难破坏或侵入共享总线系统,从而提高安全性。本文描述的地址改变方案还引入了供给设备针对系统中的所有供给设备生成地址的概念,其中每个新的供给设备地址是从公共PRNG状态导出的,这不同于传统的地址改变方案,在传统的地址改变方案中,各个部件仅计算它们各自的新地址。
优点还引入了由系统安全模块160和每个供给设备300a-300n进行地址计算的附加概念,而不是如在传统的主/从配置的情况下由总线主设备215促使在系统安全模块160和供给设备300a-300n之间的通信。相反,总线主设备215可以从与总线主设备215分离的系统安全模块160读取或检索地址,并且总线主设备215不需要用于确定供给设备300地址的算法的知识。总线主设备215还通过总线310与安全模块160通信,总线310与(总线主设备215用来与供给设备300通信的)共享总线305隔离。以这种方式,由总线主设备215用来与供给设备300通信的连接到共享总线305的任何设备可能不能窃听系统安全模块160的地址计算和新地址到总线主设备215的传输。此外,总线主设备215分别地轮询每个供给设备300a-300n以改变其地址,而供给设备300a-300n不必将其新地址传送给总线主设备215,从而防止攻击者获得新地址的知识。
应当理解,本文描述的示例应用是说明性的,而不应被认为是限制性的。将认识到,示例流程图中描述并示出的动作可以以任何合适的顺序来被实行或被执行。还要认识到的是,在图4、图5和图8中描述的所有动作并非都需要根据本公开的示例实施例来执行,和/或可以根据本公开的其他示例实施例来执行附加动作。
受益于前述描述和相关联附图中呈现的教导的这些公开内容所属领域的技术人员将会想到对本文阐述的公开内容的许多修改和其他实施例。因此,应当理解,本公开不限于所公开的特定实施例,以及修改和其他实施例被认为被包括在所附权利要求的范围内。尽管本文使用了特定的术语,但是它们仅在一般和描述性的意义上使用,而不是出于限制的目的。
附加实施例
在以下章节中,描述了本发明的附加实施例。在附加实施例中,公开了用于可更换打印机部件的示例部件电路,其包括用于耦合到主设备的接口和耦合到该接口以用于生成多个部件的多个地址的地址生成器。当接口从主设备接收到命令时,地址生成器更新伪随机数生成器(PRNG)状态,并通过针对多个部件中的每一个部件从PRNG状态检索不同组的位来生成多个地址。对于多个部件中的每一个部件,部件电路基于与一个部件相关联的值将多个地址中的一个地址分配给多个部件中的一个部件。
在第一附加实施例中,公开了部件电路,该部件电路包括:用于耦合到主设备的接口;以及耦合到接口以用于生成多个部件的多个地址的地址生成器,其中,当接口从主设备接收到命令时,地址生成器更新伪随机数生成器(PRNG)状态,并通过针对多个部件中的每一个部件从PRNG状态检索不同组的位来生成多个地址。
公开了采用第一实施例的部件电路的第二实施例,其中,对于多个部件中的每一个部件,部件电路基于与一个部件相关联的值将多个地址中的一个地址分配给多个部件中的一个部件。
公开了采用第一实施例的部件电路的第三实施例,其中从PRNG状态检索的每组位形成多个部件中的一个部件的候选地址。
公开了采用第三附加实施例的部件电路的第四实施例,其中,如果候选地址是保留地址、默认地址和已经分配给另一部件的地址中的一个,则部件电路确定候选地址不是有效地址。
公开了采用第三附加实施例的部件电路的第五实施例,其中,如果候选地址不是分配给部件的有效地址,则部件电路更新候选地址。
公开了采用第一实施例的部件电路的第六实施例,其中,每个不同组的位包括来自PRNG状态的连续位。
公开了采用第一实施例的部件电路的第七实施例,其中,所述不同组的位是从PRNG状态的连续字节中检索的。
公开了采用第一实施例的部件电路的第八实施例,其中PRNG状态是256位PRNG状态。
公开了采用第一实施例的部件电路的第九实施例,其中,部件电路使用来自多个地址的不同地址作为用于与主设备的至少一个后续通信的新地址。
公开了采用第九实施例的部件电路的第十实施例,其中,基于与和部件电路相关联的部件相关联的值来选择不同的地址。
公开了采用第一实施例的部件电路的第十一实施例,其中,部件电路可连接到可消耗供给设备。
在第十二实施例中,公开了一种用于安装在具有主控制器的成像设备中的供给物品,该供给物品包括:外壳;以及连接到外壳的芯片,该芯片具有地址生成器,该地址生成器被耦合用于生成供给物品的多个地址,其中当芯片从主控制器接收到命令时,地址生成器更新伪随机数生成器(PRNG)状态,并且通过从供给物品的PRNG状态中检索不同组的位来生成多个地址。
公开了采用第十二实施例的部件电路的第十三实施例,其中,每个不同组的位包括来自PRNG状态的连续位。
公开了采用第十二实施例的部件电路的第十四实施例,其中,所述不同组的位是从PRNG状态的连续字节中检索的。
公开了采用第十二实施例的部件电路的第十五实施例,其中,芯片使用来自多个地址的不同地址作为用于与主控制器的至少一个后续通信的新地址。
公开了采用第十五实施例的部件电路的第十六实施例,其中,芯片基于与供给物品相关联的值来确定不同的地址。
在第十七实施例中,公开了一种与供给物品一起安装的芯片,该芯片包括用于存储用于生成多个供给物品的多个地址的地址生成器的存储器,其中,当芯片从主设备接收到命令时,地址生成器更新伪随机数生成器(PRNG)状态,并通过针对多个供给物品中的每一个供给物品从PRNG状态检索不同组的位来生成多个地址。
公开了采用第十七实施例的芯片的第十八实施例,其中,每个不同组的位包括来自PRNG状态的连续位。
公开了采用第十七实施例的芯片的第十九实施例,其中,所述不同组的位是从PRNG状态的连续字节中检索的。
公开了采用第十七实施例的芯片的第二十实施例,其中,芯片使用来自多个地址的不同地址作为用于与主设备的至少一个后续通信的新地址。

Claims (20)

1.一种确定多个部件的地址的方法,所述方法包括:
从主设备接收地址改变请求;
响应于所接收的地址改变请求,基于伪随机数生成器(PRNG)的先前状态更新伪随机数生成器(PRNG)状态;和
针对每个部件从所述PRNG状态检索一组位以形成对于所述部件的候选地址,并基于所述候选地址确定所述部件的新部件地址,使得基于从相同PRNG状态检索的不同组的位来确定所述多个部件的新部件地址。
2.根据权利要求1所述的方法,其中,针对每个部件从所述PRNG状态检索所述一组位包括从所述PRNG状态检索一组连续位。
3.根据权利要求1所述的方法,其中,确定所述部件的新部件地址包括确定所述候选地址是否是用于分配给所述部件的有效地址。
4.根据权利要求3所述的方法,其中,确定所述候选地址是否是有效地址包括确定所述候选地址是否是保留地址。
5.根据权利要求3所述的方法,其中,确定所述候选地址是否是有效地址包括确定所述候选地址是否是默认地址。
6.根据权利要求3所述的方法,其中,确定所述候选地址是否是有效地址包括确定所述候选地址是否是已经分配给另一个部件的地址。
7.根据权利要求3所述的方法,还包括在确定所述候选地址是用于分配给所述部件的有效地址时,将所述候选地址分配为所述部件的新部件地址。
8.根据权利要求3所述的方法,还包括在确定所述候选地址不是用于分配给所述部件的有效地址时更新所述候选地址。
9.一种在具有多个部件的成像设备中确定所述多个部件中的部件的地址的方法,所述方法包括:
由与所述部件相关联的部件电路基于伪随机数生成器(PRNG)的先前状态来更新伪随机数生成器(PRNG)状态;
由所述部件电路基于所述PRNG状态生成所述多个部件的多个新部件地址;和
由所述部件电路使用来自所述多个新部件地址的不同部件地址作为用于与主设备进行至少一个后续通信的部件地址。
10.根据权利要求9所述的方法,其中,生成所述多个新部件地址包括基于从所述PRNG状态检索的不同组的位来确定所述多个新部件地址。
11.根据权利要求9所述的方法,其中,生成所述多个新部件地址包括:针对所述多个部件中的每个部件,从所述PRNG状态检索一组连续的位,以形成每个部件的候选地址,并且基于所述候选地址确定每个部件的新部件地址。
12.根据权利要求11所述的方法,其中,确定每个部件的新部件地址包括确定所述候选地址是否是用于分配给所述部件的有效地址。
13.根据权利要求12所述的方法,其中,确定所述候选地址是否是有效地址包括确定所述候选地址是否是保留地址和默认地址中的一个。
14.根据权利要求12所述的方法,其中,确定所述候选地址是否是有效地址包括确定所述候选地址是否是已经分配给另一个部件的地址。
15.根据权利要求12所述的方法,还包括在确定所述候选地址是用于分配给所述部件的有效地址时,将所述候选地址分配为所述部件的新部件地址。
16.根据权利要求12所述的方法,还包括在确定所述候选地址不是用于分配给所述部件的有效地址时更新所述候选地址。
17.根据权利要求9所述的方法,还包括基于与所述部件相关联的索引值来确定所述不同部件地址。
18.一种设置多个部件的地址的方法,所述方法包括:
由主设备向安全模块发送检索所述多个部件的新地址的命令;
响应于接收到的命令,由所述安全模块基于伪随机数生成器(PRNG)状态生成所述多个部件的多个新地址,并且由所述安全模块向所述主设备发送所述多个新地址;
响应于从所述安全模块接收到所述多个新地址,由所述主设备向所述多个部件中的每一个部件发送地址改变请求;
响应于所接收的地址改变请求,由每个部件基于所述PRNG状态生成所述多个部件的新地址,由每个部件生成的新地址对应于由所述安全模块生成的所述多个新地址;和
由每个部件,使用来自所述多个新地址的不同新地址作为基于与所述部件相关联的索引值确定的新部件地址。
19.根据权利要求18所述的方法,其中,由所述安全模块和每个部件生成所述多个新地址包括:针对每个部件从所述PRNG状态检索一组位,以形成每个部件的候选地址,并且基于所述候选地址确定每个部件的新地址。
20.根据权利要求19所述的方法,其中,确定每个部件的新地址包括确定所述候选地址是否是保留地址、默认地址和已经分配给另一个部件的地址中的一个。
CN201980040448.7A 2018-04-16 2019-04-16 用于改变一个或更多个部件的地址的系统和方法 Pending CN112352208A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201815954355A 2018-04-16 2018-04-16
US15/954,322 US20190319915A1 (en) 2018-04-16 2018-04-16 System and Methods for Changing Addresses of One or More Components
US15/954,322 2018-04-16
US15/954,355 2018-04-16
PCT/US2019/027653 WO2019204292A1 (en) 2018-04-16 2019-04-16 System and methods for changing addresses of one or more components

Publications (1)

Publication Number Publication Date
CN112352208A true CN112352208A (zh) 2021-02-09

Family

ID=68239834

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980040448.7A Pending CN112352208A (zh) 2018-04-16 2019-04-16 用于改变一个或更多个部件的地址的系统和方法

Country Status (7)

Country Link
EP (1) EP3782009A4 (zh)
CN (1) CN112352208A (zh)
AU (1) AU2019255227B2 (zh)
BR (1) BR112020020592A2 (zh)
CA (1) CA3096272A1 (zh)
MX (1) MX2020010283A (zh)
WO (1) WO2019204292A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113543202A (zh) * 2021-07-29 2021-10-22 陕西天基通信科技有限责任公司 一种设备序列号sn上报方法及系统

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3097987A1 (fr) * 2019-06-26 2021-01-01 STMicroelectronics (Alps) SAS Procede d’adressage d’un circuit integre sur un bus et dispositif correspondant
AU2021468486A1 (en) * 2021-10-11 2024-03-14 Lexmark International, Inc Methods and systems for determining the authenticity of a component using elliptic-curve cryptography

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1591255A1 (en) * 2004-04-29 2005-11-02 Hewlett-Packard Development Company, L.P. Consumable cartridge theft deterrence apparatus and methods
US20100306431A1 (en) * 2009-05-28 2010-12-02 Christopher Alan Adkins Dynamic Address Change for Slave Devices on a Shared Bus
US20130054933A1 (en) * 2011-08-26 2013-02-28 Zachary Fister Dynamic address change optimizations
CA2851587A1 (en) * 2011-09-08 2013-03-14 Lexmark International, Inc. System and method for secured host-slave communication

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7587539B2 (en) * 2006-04-25 2009-09-08 Texas Instruments Incorporated Methods of inter-integrated circuit addressing and devices for performing the same
BRPI0924228A2 (pt) * 2009-01-22 2016-01-26 Ericsson Telefon Ab L M método para alocar endereço em uma rede, nó de rede, e, meio legível por computador
US9436847B2 (en) * 2014-09-26 2016-09-06 Intel Corporation Cryptographic pointer address encoding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1591255A1 (en) * 2004-04-29 2005-11-02 Hewlett-Packard Development Company, L.P. Consumable cartridge theft deterrence apparatus and methods
US20100306431A1 (en) * 2009-05-28 2010-12-02 Christopher Alan Adkins Dynamic Address Change for Slave Devices on a Shared Bus
US20130054933A1 (en) * 2011-08-26 2013-02-28 Zachary Fister Dynamic address change optimizations
CA2851587A1 (en) * 2011-09-08 2013-03-14 Lexmark International, Inc. System and method for secured host-slave communication

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113543202A (zh) * 2021-07-29 2021-10-22 陕西天基通信科技有限责任公司 一种设备序列号sn上报方法及系统

Also Published As

Publication number Publication date
AU2019255227B2 (en) 2024-02-01
BR112020020592A2 (pt) 2021-01-12
EP3782009A1 (en) 2021-02-24
CA3096272A1 (en) 2019-10-24
EP3782009A4 (en) 2021-12-15
WO2019204292A1 (en) 2019-10-24
MX2020010283A (es) 2020-12-03
AU2019255227A1 (en) 2020-10-29

Similar Documents

Publication Publication Date Title
US9535852B2 (en) System and method for secured host-slave communication
US9922276B2 (en) Dynamic address change optimizations
US8386657B2 (en) Dynamic address change for slave devices on a shared bus
KR100997239B1 (ko) Crum 유닛, 교체가능유닛 및 이를 이용하는 화상형성장치와, 그 인증 및 암호화 데이터 통신 방법
EP3208736B1 (en) Authenticating a replaceable printer component
AU2019255227B2 (en) System and methods for changing addresses of one or more components
US10305892B2 (en) Device system for performing group authentication and operating method thereof
US10581811B2 (en) Method and system for asymmetric key derivation
US10313131B2 (en) Secured daisy chain communication
US20200004476A1 (en) System and Methods for Changing Addresses of One or More Components
CN109313692B (zh) 打印机加密
US20210099417A1 (en) System and Methods for Changing Addresses of One or More Components
JP7213724B2 (ja) 認証方法、認証システム、被認証装置および認証装置
JP2020072348A (ja) 認証方法、認証装置、被認証装置及び画像形成装置
JP7169193B2 (ja) 周辺機器におけるセキュリティ保護を行なう方法および装置
US11777920B2 (en) Authentication system for preventing replication of authentication target apparatus authenticated by authentication apparatus
US20220029833A1 (en) Providing a challenge to a device
CN117940876A (zh) 使用椭圆曲线加密确定部件的可信性的方法和系统
CN116527240A (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