CN110032896A - 用于在计算机系统中提供安全性的系统和方法 - Google Patents

用于在计算机系统中提供安全性的系统和方法 Download PDF

Info

Publication number
CN110032896A
CN110032896A CN201811577204.6A CN201811577204A CN110032896A CN 110032896 A CN110032896 A CN 110032896A CN 201811577204 A CN201811577204 A CN 201811577204A CN 110032896 A CN110032896 A CN 110032896A
Authority
CN
China
Prior art keywords
group
ring oscillator
correlation
counter
counter value
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.)
Granted
Application number
CN201811577204.6A
Other languages
English (en)
Other versions
CN110032896B (zh
Inventor
拉斯洛·哈尔斯
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.)
Boeing Co
Original Assignee
Boeing Co
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 Boeing Co filed Critical Boeing Co
Publication of CN110032896A publication Critical patent/CN110032896A/zh
Application granted granted Critical
Publication of CN110032896B publication Critical patent/CN110032896B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/027Generators characterised by the type of circuit or by the means used for producing pulses by the use of logic circuits, with internal or external positive feedback
    • H03K3/03Astable circuits
    • H03K3/0315Ring oscillators
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/84Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Manipulation Of Pulses (AREA)
  • Burglar Alarm Systems (AREA)

Abstract

本公开涉及干扰检测环形振荡器。提供了一种用于在计算机系统中提供安全性的系统。该系统包括多个环形振荡器和一个或多个逻辑电路。环形振荡器配备有相应的多个计数器,以计数环形振荡器的振荡输出的脉冲。一个或多个逻辑电路在重复的计数周期内启动和停止相应的多个计数器,并从多个环形振荡器中选择一组环形振荡器。一个或多个逻辑电路进一步确定一组环形振荡器的振荡输出之间的相关性。当该相关性高于预定阈值相关性时,一个或多个逻辑电路还生成指示一组环形振荡器中的干扰并且从而指示多个环形振荡器中的干扰的通知。

Description

用于在计算机系统中提供安全性的系统和方法
技术领域
本公开内容总体涉及在计算机系统中提供安全性,具体地,涉及使用干扰检测环形振荡器在计算机系统中提供安全性。
背景技术
集成电路中的一些电子元件对集成电路中生成的或从外部注入的干扰敏感。环形振荡器是这种干扰敏感电路。环形振荡器可以用作熵源,以生成用于信息安全的真随机数。然而,当环形振荡器用作熵源并与干扰信号同步时,破坏其相位漂移的随机性。因此,未经授权的第三方可以通过控制或测量干扰来知道相位漂移,并重新创建由环形振荡器生成的真随机数,以危害信息安全。
降低环形振荡器干扰灵敏度的一种现有解决方案是使用物理保护,例如,屏蔽或滤波器。另一种现有的解决方案是使用对干扰不太敏感的逻辑门。然而,现有的解决方案昂贵、脆弱、缓慢,并且难以评估或设计。
因此,希望有一种系统和方法,该系统和方法考虑了上述至少一些问题以及其他可能的问题。
发明内容
本公开内容的示例实现方式旨在使用干扰检测环形振荡器在计算机系统中提供安全性。与现有解决方案相比,示例实现方式通过使用多个环形振荡器来检测环形振荡器的振荡信号之间的任何强相关性,从而提供干扰检测。示例实现方式可以在干扰对信息安全造成任何危害之前检测到干扰。
因此,本公开内容包括但不限于以下示例实现方式。
一些示例实现方式提供了一种由用于在计算机系统中提供安全性的系统实现的方法。该系统包括多个环形振荡器,该多个环形振荡器在设计时相同但是在制造时具有不同的振荡频率,多个环形振荡器配备有相应的多个计数器,相应的多个计数器被配置为对多个环形振荡器的振荡输出的脉冲进行计数。该方法包括:在重复的计数周期内启动相应的多个计数器并停止相应的多个计数器;从多个环形振荡器中选择一组环形振荡器,一组环形振荡器配备有相应的多个计数器中的相应的计数器组;基于在重复的计数周期内从相应的计数器组中获得的计数器值来了确定一组环形振荡器的振荡输出之间的相关性,计数器值指示一组环形振荡器的相应的环形振荡器的振荡频率;并且当相关性高于预定阈值相关性时,生成指示一组环形振荡器中的干扰并且从而产生指示多个环形振荡器中的干扰的通知。
在任何前述示例实现方式的方法的一些示例实现方式中,或者在前述示例实现方式的任何组合中,一组环形振荡器是一对环形振荡器,并且一个或多个逻辑电路被配置为选择一组环形振荡器包括被配置为从多个环形振荡器中选择这对环形振荡器。
在任何前述示例实现方式的方法的一些示例实现方式中,或者在前述示例实现方式的任何组合中,选择一组环形振荡器包括对来自相应的多个计数器的计数器值进行分类,并且基于来自配备有一组环形振荡器的相应的计数器组的计数器值的相似性来选择一组环形振荡器。
在任何前述示例实现方式的方法的一些示例实现方式中,或者在前述示例实现方式的任何组合中,选择一组环形振荡器还包括基于计数器值的相似性将来自相应的多个计数器的计数器值群集成计数器值的一个或多个集群,并选择一个或多个集群中的包括来自配备有一组环形振荡器的相应的计数器组的计数器值的一个集群。
在任何前述示例实现方式的方法的一些示例实现方式中,或者在前述示例实现方式的任何组合中,确定一组环形振荡器的振荡输出之间的相关性包括确定来自相应的计数器组的计数器值(例如,重复重启的计数器值之间的差序列)之间的差,并且其中,生成通知包括当来自相应的计数器组的计数器值(例如,在序列中)的至少预定部分之间的差低于指示相关性高于预定阈值相关性的预定阈值差时生成通知。
在任何前述示例实现方式的方法的一些示例实现方式中,或者在前述示例实现方式的任何组合中,确定相关性包括:基于来自相应的计数器组(例如,周期性重启的计数器)的计数器值,为一组环形振荡器生成位值序列,该序列的每个位值指示来自相应的计数器组的一对计数器值之间的差是高于还是低于预定阈值差;并且将滤波器应用于该序列,以生成指示相关性的滤波器值。
在任何前述示例实现方式的方法的一些示例实现方式中,或者在前述示例实现方式的任何组合中,确定差包括对来自相应的计数器组的计数器值执行算术减法或异或运算。
在任何前述示例实现方式的方法的一些示例实现方式中,或者在前述示例实现方式的任何组合中,选择一组环形振荡器包括从多个环形振荡器中选择多组环形振荡器,其中,确定相关性包括确定在多组环形振荡器的振荡输出之间的相关性,并且其中,生成通知包括当任何相关性高于预定阈值相关性时生成通知。
在任何前述示例实现方式的方法的一些示例实现方式中,或者在前述示例实现方式的任何组合中,生成通知,包括生成视觉或听觉通知、使计算机系统关闭或使计算机系统重置中的至少一个。
一些示例实现方式提供了一种用于在计算机系统中提供安全性的系统,该系统包括一个或多个逻辑电路,该逻辑电路被配置为至少执行任何前述示例实现方式的方法或者前述示例实现方式的任何组合。
通过阅读下面的详细描述以及下面简要描述的附图,本公开内容的这些和其他特征、方面和优点将变得显而易见。本公开内容包括本公开内容中阐述的两个、三个、四个或更多特征或元件的任何组合,而不管这些特征或元件是在本文描述的特定示例实现方式中明确组合还是以其他方式陈述。本公开内容旨在整体阅读,使得在其任何方面和示例实现方式中,本公开内容的任何可分离的特征或元件都应该被视为可组合的,除非本公开内容的上下文清楚地另有规定。
因此,应当理解,提供该简要概述,仅仅是为了总结一些示例实现方式,以便提供对本公开内容的一些方面的基本理解。因此,应当理解,上述示例实现方式仅仅是示例,不应被解释为以任何方式缩小本公开内容的范围或精神。从以下结合附图的详细描述中,其他示例实现方式、方面和优点将变得显而易见,附图以示例的方式示出了一些所描述的示例实现方式的原理。
附图说明
如此概括地描述了本公开内容的示例实现方式,现在将参考附图,附图不一定按比例绘制,且在附图中:
图1示出了根据本公开内容的示例实现方式的用于在计算机系统中提供安全性的系统;
图2示出了根据各种示例实现方式的系统中的环形振荡器;
图3示出了根据各种示例实现方式的用于多个环形振荡器的计数器值的分类网络的示图;以及
图4是示出根据各种示例实现方式的在计算机系统中提供安全性的方法中的各种步骤的流程图。
具体实施方式
现在将在下文中参考附图更全面地描述本公开内容的一些实现方式,其中,示出了本公开内容的一些但不是全部实现方式。实际上,本公开内容的各种实现方式可以以许多不同的形式来体现,并且不应该被解释为限于在本文中阐述的实现方式;相反,提供这些示例实现方式,以便使本公开内容彻底和完整,并且将向本领域技术人员充分传达本公开内容的范围。例如,除非另有说明,否则将某物称为第一、第二等不应被解释为暗示特定顺序。此外,某些东西可以被描述为位于某些东西之上(除非另有说明),也可以相反地位于某些东西之下,反之亦然;类似地,被描述为在某些东西左边的某些东西也可能在右边,反之亦然。相同的附图标记始终表示相同的元件。
本公开内容的示例实现方式通常涉及在计算机系统中提供安全性,尤其涉及使用干扰检测环形振荡器在计算机系统中提供安全性。
图1示出了根据本公开内容的示例实现方式的用于在计算机系统110中提供安全性的系统100。计算机系统可以包括所示的系统。例如,计算机系统可以配备有系统。在另一示例中,计算机系统和系统可以是两个单独的系统。
系统100可包括多个组件、单元等(通常为“组件”)中的每一个的一个或多个,其中至少一些组件可包括诸如多路复用器、寄存器、算术逻辑单元、存储器、微处理器等的逻辑电路或用这些逻辑电路来实现。系统可以被设计用于多种不同应用中的任何一种,并且可以具有特定的适用性,以向系统提供干扰检测能力并且在计算机系统110中提供安全性。
计算机系统110可以包括处理器和耦合到处理器的计算机可读存储介质或存储器,其中,处理器被配置为执行包括存储在存储器中的一个或多个计算机程序的计算机可读程序代码。还应当理解,一个或多个功能以及功能的组合可以由执行指定功能的基于专用电子硬件的系统和/或处理器或者专用硬件和程序代码指令的组合来实现。
在一些示例中,如图所示,系统100包括控制逻辑101和多个至少2个环形振荡器102,即,环形振荡器1021-1024。环形振荡器在设计时相同但是在制造时具有不同的振荡频率。在其公差内的制造变化使得相同设计的环形振荡器略有不同。由于无法预测或复制这些随机差,使得环形振荡器以不同的频率振荡可能会随着温度和电源电压而变化。环形振荡器配备有相应的多个计数器,这些计数器被配置为对多个环形振荡器的振荡输出的脉冲进行计数(如下图2所示)。
在一些示例中,控制逻辑101被配置为启动相应的多个环形振荡器。在其他示例中,环形振荡器持续运行,并且控制逻辑101被配置为在重复的计数周期内重置、启动相应的多个计数器,并停止相应的多个计数器,以测量多个环形振荡器102的频率,即,环形振荡器1021-1024。例如,计数器可以通过在重复的计数周期内计数环形振荡器的振荡周期来测量频率。
在一些示例中,系统100的选择器103被配置为从多个环形振荡器102中选择一组环形振荡器。一组环形振荡器配备有相应的多个计数器中的相应的计数器组。选择器可以向系统的相关性确定器104提供所选一组环形振荡器的信息。
在一些示例中,相关性确定器104被配置为确定一组环形振荡器的振荡输出之间的相关性。基于在重复计数周期内从相应的计数器组获得的计数器值来确定相关性。计数器值表示一组环形振荡器中的相应的环形振荡器的振荡频率。相关性确定器可以向系统的通知发生器105提供确定的相关性。
在一些示例中,通知发生器105被配置为当相关性高于预定阈值相关性时,生成指示一组环形振荡器中的干扰并且从而产生指示多个环形振荡器102中的干扰的通知。
在一些示例中,所述一组环形振荡器是一对环形振荡器,并且选择器103被配置为从多个环形振荡器102中选择该对环形振荡器。例如,选择器可以选择包括两个环形振荡器1021和1022的组。在其他示例中,所选择的所述一组环形振荡器可以包括不同数量的环形振荡器,例如,3或4个环形振荡器。
在一些示例中,选择器103被配置为对来自相应的多个计数器的计数器值序列的第一计数器值进行分类。例如,选择器可以基于分类网络对计数器值进行分类,如下图3所示。选择器还被配置为基于来自配备有所述一组环形振荡器的相应的计数器组的计数器值的相似性来选择所述一组环形振荡器。例如,如果两个环形振荡器的第一计数器值接近(例如,计数器值的差小于1%),则选择器可以选择两个环形振荡器1021和1022。
在一些示例中,选择器103被配置为基于第一计数器值的相似性,将来自相应的多个计数器的第一计数器值群集成计数器值的一个或多个集群。例如,选择器可以将环形振荡器1021和1022群集成一个集群,并将环形振荡器1023和1024群集成另一集群。选择器还被配置为选择一个或多个集群中的包括来自配备有所述一组环形振荡器的相应的计数器组的计数器值的一个集群。
在一些示例中,相关性确定器104被配置为确定来自相应的计数器组的计数器值之间的差(例如,重复重启的计数器值之间的差序列)。通知发生器105被配置为当来自相应的计数器组的计数器值的至少预定部分(例如,在序列中)之间的差低于指示相关性高于预定阈值相关性的预定阈值差时,生成通知。即,当在计数器差序列中时,来自相应的计数器组的值的至少预定部分低于指示相关性高于预定阈值相关性的预定阈值差。
在一些示例中,相关性确定器104被配置为基于来自相应这组(周期性地或重复地重启的)计数器的计数器值生成所述一组环形振荡器的位值的序列。该序列的每个位值指示来自相应的计数器组的一对对应计数器值之间的差是高于还是低于预定阈值差。相关性确定器还被配置为对该序列应用数字滤波器(例如,FIR或IIR滤波器),以生成指示相关性的滤波器值。在一些示例中,相关性确定器被配置为对来自相应的计数器组的计数器值执行异或(XOR)运算。在其他示例中,相关性确定器被配置为计算与最大计数器值的算术差(算术减法)。
在一些示例中,选择器103被配置为从多个环形振荡器中选择多组环形振荡器。例如,选择器可以选择两组。这两组中的一组包括环形振荡器1021和1022,另一组包括环形振荡器1023和1024。在这些示例中,相关性确定器104被配置为确定多组环形振荡器的振荡输出之间的相关性。通知发生器105被配置为当任何相关性高于预定阈值相关性时生成通知。
在一些示例中,通知发生器105被配置为生成视觉或听觉通知,或者促使计算机系统110关闭或重置。例如,通知发生器可以向计算机系统的操作员发送警报或警告。通知发生器还可以重置或关闭计算机系统。
图2示出了根据各种示例实现方式的系统100中的环形振荡器200。在一些示例中,环形振荡器200可以是系统100中的环形振荡器1021-1024中的任何一个,如图1中所述。环形振荡器被配置为具有由控制逻辑101驱动的使能输入。
在一些示例中,环形振荡器200可以包括多个逻辑门,其中,奇数个逻辑门将其输入反相连接到先前逻辑门的输出,所有这些输入以环形配置连接,例如,反相器201-204和负AND(NAND)门,如图2所示。多个反相器中的第一个(例如,反相器201)接收输入并生成输出(输入的逻辑否定),作为环形配置中的下一个反相器(例如,反相器202)的输入。多个反相器中除最后一个反相器之外的每个反相器的输出用作多个反相器中的下一个反相器的输入。多个反相器中的最后一个反相器(例如,反相器204)的输出反馈给多个反相器中的第一反相器(例如,反相器201)并用作其输入。
在一些示例中,环形振荡器200配备有计数器205,计数器205被配置为对环形振荡器的振荡输出的脉冲进行计数。例如,如图2所示,多个反相器中最后一个(例如,反相器204)的输出发送到计数器。计数器通过对一个或多个预定计数周期中的振荡周期进行计数来生成计数器值。计数器值表示环形振荡器200的振荡频率。
环形振荡器200可以用作熵源,以输出用于信息安全的真随机数,因为电路噪声引起相位漂移,表现为振荡器频率的波动。然而,在一个示例中,强干扰信号可以作为噪声影响环形振荡器。干扰可能不是随机的。环形振荡器的真随机噪声的影响可以被强干扰信号掩盖,这破坏了环形振荡器生成的全部或大部分熵。强干扰信号可能源自计算系统工作环境中的装置,例如,开关电源、阴极射线管(CRT)、雷达或声纳。
在另一示例中,未经授权的第三方可以使用强干扰信号来攻击环形振荡器200,并屏蔽环形振荡器的噪声的随机效应。干扰信号可能包含伪随机相位抖动,这导致非随机相位漂移,通过标准统计测试,这些非随机相位漂移无法与真随机噪声区分开来。干扰信号甚至可能具有外部可测量的真随机相位抖动。未经授权的第三方可以使用干扰信号来攻击环形振荡器,从而未经授权的第三方可以知道受攻击的环形振荡器的相位抖动。通过攻击,可以屏蔽真随机内部电路噪声的影响,未经授权的第三方可以知道环形振荡器生成的熵值。如果熵值用于密钥生成、密钥协商协议或计算计算机系统110中使用的其他密钥或不可预测的数字,则计算机系统的安全性会丢失。
在另一示例中,未经授权的第三方可以使用强干扰信号来攻击基于环的物理不可克隆功能(PUF)装置。PUF装置可以包括多个环形振荡器200,并且通过在多个环形振荡器对之间执行频率比较来产生在计算机系统110中使用的芯片ID或根密钥的部件。未经授权的第三方可以使用强干扰信号来同步PUF装置的多个环形振荡器中的一个或多个,并使其频率等于强干扰信号的频率。在这个示例中,PUF装置中一些频率比较的结果可能会改变,并且可能会计算不正确的芯片ID或根密钥。
在一个示例中,未经授权的第三方可以强迫PUF装置中的某些单独的环形振荡器200或所述一组环形振荡器改变其频率。例如,未经授权的第三方可以将干扰信号以其振荡频率注入目标环形振荡器。当这个特定的环形振荡器在干扰下启动时,会锁定这个干扰信号。在这一点上,未经授权的第三方可以逐渐将干扰信号调谐到目标环形振荡器遵循的更高或更低的频率。PUF装置中的其他环形振荡器可能不会跟随或锁定干扰信号的频率。这样,PUF装置的频率比较结果可以改变,并且可以观察和映射PUF装置的异常状况。通过调谐到最小频率偏移,使PUF装置发生故障,可以针对单次频率比较。
在一个示例中,当某个环形振荡器200或一组环形振荡器的频率变化阻止计算机系统110启动时,未经授权的第三方可以得知具有受攻击频率的环形振荡器用于PUF计算,并且频率变化促使一些比较偏离正常结果。当不同的环形振荡器受到攻击时,通过观察计算机系统的启动行为,未经授权的第三方可以获得足以了解所有PUF值的信息,或者至少降低PUF值的熵,使得彻底的搜索可以揭示真实的PUF值。上述干扰注入/调谐使得对芯片ID或根密钥的直接攻击可行,因此,检测这种干扰,对于计算机系统的安全性很重要。
在一些示例中,系统100采用多个环形振荡器102进行干扰检测。多个环形振荡器中的每一个可以是如图2所示的环形振荡器200。多个环形振荡器配备有相应的多个计数器205,这些计数器被配置为在预定持续时间内对多个环形振荡器的振荡输出的脉冲进行计数。在一些示例中,控制逻辑101被配置为启动相应的多个环形振荡器,在其他示例中,控制逻辑被配置为在重复的计数周期内重置和启动计数器,并停止相应的多个计数器,以测量多个环形振荡器的频率。在一个示例中,在固定时间段内,激活计数器,并在相应时间段内,测量多个环形振荡器的平均频率。在另一示例中,计数器被配置为测量振荡周期的持续时间,对环形振荡器的周期之间的高频时钟信号的脉冲进行计数。计数器实际上可以是14…32位宽,以提供足够的分辨率来检测频率差。例如,16位计数器可以提供良好的分辨率。
在一些示例中,多个环形振荡器102在设计时相同,但是在制造时具有不同的振荡频率。在一个示例中,相同设计的环形振荡器的振荡频率在某些环境中可以根据温度和电源电压变化16%。相同设计的环形振荡器的温度和电压特性也可以不同。在某些环境中,两个选定的环形振荡器的计数器值可能显示出1%或更小的频率差,但在其他环境中可能很大(高达16%)。
在一个示例中,系统100采用许多环形振荡器(例如,16个),并且计算某些环形振荡器对之间的相关性。当制造公差导致振荡频率的16%变化时,系统100实现至少n=16个环形振荡器。这样,在每个温度/电压工作点,都有一对振荡频率足够接近的环形振荡器(在1%差内)。这对振荡频率随温度和电源电压而变化。在这个示例中,干扰信号可以类似地影响成对的两个环形振荡器。在较大的制造公差下,可能需要更多的环形振荡器。在更严格的公差下,可能需要更少的环形振荡器。
在一些示例中,选择器103被配置为从多个环形振荡器102(例如,16个环形振荡器200)中选择一组(例如,一对)环形振荡器。所述一组环形振荡器配备有相应的多个计数器中的相应的计数器组205。在一个示例中,如果系统100使用16个环形振荡器,则具有16*15/2=120对来计算相关性,这需要大量计算。为了减少计算,在一些示例中,选择器103被配置为对来自相应的多个计数器的第一计数器值进行分类,并基于来自配备有所述一组环形振荡器的相应的计数器组的计数器值的相似性来选择所述一组环形振荡器。
在一个示例中,首先对环形振荡器的当前频率(计数器值)进行分类,并且相关性确定器104仅计算相邻频率之间(相似频率)的相关性。在该示例中,相关性确定器可以仅计算15个计数器序列之间的相关性,当分类时,这些计数器序列具有彼此相邻的值。此外,通知发生器105可以仅检查15个计数器序列的差是否具有太多的小值。
在一个示例中,16个计数器值的分类可以通过大约16·ln(16)≈44.36次比较来执行,这意味着至少45次比较。在另一示例中,可以使用分类算法或分类网络,其可以在10组并行比较中对16个环形振荡器进行分类,例如,通过使用计量器的合并-交换,如下图3所示。
图3示出了根据各种示例实现方式的用于多个环形振荡器的计数器值的分类网络的示图300。在一个示例中,图中的16行(0-15)对应于最初加载有16个环形振荡器的计数器值的寄存器,即,输入数字。在计数器值的每次比较(用垂直箭头标记)之后是寄存器内容的潜在交换,使得更靠近示图顶部的寄存器获得两个比较数字中较小的一个。例如,第一垂直箭头表示寄存器0和寄存器8之间寄存器内容的比较和潜在交换。由于没有一个比较器知道任何其他比较器做了什么,所以仅比较器的设置就可以保证将输入分类。没有条件动作,这将需要更复杂的算法,例如,快速合并分类或堆分类算法。在这个分类网络中,有63个比较器,分成10个并行操作,在10个时钟周期内执行,或者在使用异步逻辑时更快。
在一个示例中,在执行上述分类步骤之后,将有至少两个非常接近的计数器值存储在彼此相邻的寄存器中。最大频率偏差为16%,实施了16个环形振荡器,计数器值的最小差最多为1%。当预期计数器值约为10000时,最接近的计数器值的差约为100(16位计数器可能包含高达216=65536的值)。
在一些示例中,选择器103被配置为基于计数器值的相似性将来自相应的多个计数器的计数器值群集成计数器值的一个或多个集群。选择器还被配置为选择包括来自配备有所述一组环形振荡器的相应的计数器组的计数器值的一个或多个集群中的一个集群。例如,分类列表中彼此相邻的计数器值的序列可以群集。选择器可以找到接近的计数器值的集群(例如,小于1%的差),这可以在校准时间完成。在另一示例中,选择器可以仅保留具有足够不同中心值的集群,例如,至少1%的差,这也可以在校准时间完成。选择器可以从每个集群中选择一组(例如,一对)代表性计数器。相关性确定器104可以计算足够远的集群中的计数器值之间的相关性。
在一个示例中,选择器103选择一对两个环形振荡器,例如,环形振荡器1021和1022。当这两个环形振荡器的信号的相位漂移变得相关,而不是独立的随机时,相关性可以表示存在强干扰,这影响这两个环形振荡器。在这种情况下,通知发生器105可以向计算机系统110的操作员发出警告或警报。根据计算机系统的安全策略,通知发生器还可以进入错误状态或关闭计算机系统,以防止不安全的操作。
在一个示例中,环形振荡器200的振荡信号的相位漂移可以通过在重复的计数周期上计数振荡脉冲来表征。每个计数周期可以具有相同的预设持续时间。对于一对选定的两个环形振荡器,相应计数器值的序列受到随机噪声和干扰引起的相位漂移的影响。在没有干扰的情况下,两个环形振荡器的计数器值序列之间的相关性很低。如果两个振荡器受到相同干扰的影响,则相关性会变大。
在一个示例中,相关性确定器104可以通过采取其计数器值序列的差来确定两个环形振荡器的信号之间的相关性。相关性确定器可以确定结果序列的统计分布。与预期分布的异常偏差(例如,太多的0或非常小的值)表示干扰。在一个示例中,相关性确定器包括计数器,该计数器对来自这对计数器的计数器值之间的差的小值的出现进行计数。如果小值的比例超过预定部分(例如,20%),则检测到干扰。
在一个示例中,相关性确定器104可以通过处理位值序列(位序列)来计数小的差。在一些示例中,基于来自相应这组或这对计数器205的计数器值,生成位序列。序列的每个位值指示来自相应的计数器组的一对计数器值之间的差是高于还是低于预定阈值差。例如,相关性确定器可以对一对环形振荡器的两个计数器值序列执行XOR运算,以生成位序列。在位序列中,位0表示小差(例如,低于预定阈值差),位1表示大差(例如,等于或高于预定阈值差)。在另一示例中,可以凭经验设置小差(例如,小于差的期望值的10%)。
在一个示例中,相关性确定器104可以通过在计数周期内对位序列的固定长度中的0的数量进行计数来对小差进行计数。相关性确定器可以重新开始生成下一位序列,以便在下一计数周期中随后计算相关性水平。在另一示例中,相关性确定器可以连续地对位序列应用滑动窗口和移动平均滤波器。该滤波器可以是对位序列应用非均匀权重的通用有限脉冲响应(FIR)滤波器。FIR滤波器的当前值表示相关性水平。在另一示例中,相关性确定器可以连续地对位序列应用无限脉冲响应(IIR)低通滤波器,其中,IIR滤波器的当前滤波器值表示相关性水平。IIR滤波器可以是由递归定义的指数移动平均滤波器:yn=αxn+(1-α)yn-1,其中,xn是位序列的当前元素,yn是当前滤波器值。
在一些示例中,如果两个环形振荡器的信号之间的相关性高于预定阈值相关性,则检测到干扰。当来自相应的计数器组的计数器值的至少预定部分之间的差低于预定阈值差时,表示相关性高于预定阈值相关性。例如,如果来自相应的计数器组的计数器值的至少20%具有小差(例如,0或小于差的期望值的10%),则表示相关性高于预定阈值相关性。预定阈值相关性可以通过各种环境条件下的离线测量结果来凭经验设置(在校准期间)。
在一些示例中,通知发生器105被配置为当相关性高于预定阈值相关性时,生成指示所述一组环形振荡器中的干扰并且从而指示多个环形振荡器中的干扰的通知。在一个示例中,系统100中的其他环形振荡器可能受到或不受干扰的影响。通知发生器可以判断出存在影响所述一组环形振荡器的干扰。因此,有可能计算机系统110受到攻击,或者计算机系统操作的环境不符合规范。
在一个示例中,如果在给出最接近计数器值的两个环形振荡器之间没有检测到相关性或仅检测到小相关性(低于预定阈值相关性),则其中的至少一个不受干扰的影响。可以具有多个这种安全环形振荡器。通知发生器105可能不能告诉任何关于其他频率的潜在干扰的信息,在这些频率附近没有成对的环形振荡器振荡。
在一个示例中,当没有检测到干扰时,至少一个环形振荡器不与干扰同步并且使用安全。将两个选择的环形振荡器的计数器值或多个环形振荡器102的所有计数器值散列在一起,可以保证散列值的真正随机性。这样,就不需要确定哪个环形振荡器实际上不受干扰的影响。
在另一示例中,在基于环的PUF装置中,实现了多个环形振荡器,例如,超过200个环形振荡器。PUF装置需要足够的安全性。多个环形振荡器必须紧密地布置在一起,以防止选择性地干扰注入到硅树脂的特定位置,例如,用线圈将EM信号注入PUF装置。相应的多个计数器值可以允许检测许多潜在干扰的情况。可以识别一些代表性频率(预期计数器值)。检测代表频率周围的相关性可以覆盖大多数或所有多个环形振荡器的振荡频率。因此,当没有检测到干扰时,可以合理地指示PUF装置中的大多数或全部多个环形振荡器与干扰不同步。
在一个示例中,计算机系统110具有可由计算机系统的固件实施的安全策略。安全策略可以在计算机系统的控制器上、嵌入式微处理器上运行,甚至可以在具有硬连线安全策略的更简单的状态机上运行。当检测到干扰时,该安全策略可以告诉通知发生器105该做什么。例如,基于安全策略,通知发生器可以发出警报或向操作员发送警告,重置或关闭计算机系统。
图4是示出根据各种示例实现方式的在计算机系统中提供安全性的方法400中的各种步骤的流程图。该方法由用于在计算机系统110中提供安全性的系统100实现。该系统包括多个环形振荡器102,其在设计时相同但是在制造时具有不同的振荡频率。多个环形振荡器配备有相应的多个计数器205,所述计数器被配置为对多个环形振荡器的振荡输出的脉冲进行计数。在方框401中,该方法包括在重复的计数周期内启动相应的多个计数器,并停止相应的多个计数器。在方框402中,该方法包括从多个环形振荡器中选择一组环形振荡器。所述一组环形振荡器配备有相应的多个计数器中的相应的计数器组。在方框403中,该方法包括基于在重复的计数周期内从相应的计数器组中获得的计数器值,确定所述一组环形振荡器的振荡输出之间的相关性。计数器值指示所述一组环形振荡器的相应的环形振荡器的振荡频率。在方框404中,该方法包括当所述相关性高于预定阈值相关性时,生成指示所述一组环形振荡器中的干扰并且从而生成指示多个环形振荡器的通知。
该部分描述了本公开内容的系统和方法的额外方面和特征,这些方面和特征不限于作为一系列段落呈现,为了清楚和高效,其中的一些或全部段落可以字母数字表示。
A1.一种用于在计算机系统中提供安全性的系统,该系统包括:多个环形振荡器,多个环形振荡器在设计时相同但是在制造时具有不同的振荡频率,多个环形振荡器配备有相应的多个计数器,该相应的计数器被配置为对多个环形振荡器的振荡输出的脉冲进行计数;以及一个或多个逻辑电路,其被配置为至少:在重复的计数周期内启动相应的多个计数器并停止相应的多个计数器;从多个环形振荡器中选择一组环形振荡器,一组环形振荡器配备有相应的多个计数器中的相应的计数器组;基于在重复的计数周期内从相应的计数器组中获得的计数器值来确定一组环形振荡器的振荡输出之间的相关性,计数器值指示一组环形振荡器的相应的环形振荡器的振荡频率;并且当相关性高于预定阈值相关性时,生成指示一组环形振荡器中的干扰并且从而产生指示多个环形振荡器中的干扰的通知。
A2.根据段落A1所述的系统,其中,一组环形振荡器是一对环形振荡器,并且一个或多个逻辑电路被配置为选择一组环形振荡器包括一个或多个逻辑电路被配置为从多个环形振荡器中选择一对环形振荡器。
A3.根据段落A1所述的系统,其中,一个或多个逻辑电路被配置为选择一组环形振荡器包括一个或多个逻辑电路被配置为对来自相应的多个计数器的计数器值进行分类,并且基于来自配备有一组环形振荡器的相应的计数器组的计数器值的相似性来选择一组环形振荡器。
A4.根据段落A1所述的系统,其中,一个或多个逻辑电路被配置为选择一组环形振荡器进一步包括将一个或多个逻辑电路被配置为基于计数器值的相似性将来自相应的多个计数器的计数器值群集成计数器值的一个或多个集群,并选择一个或多个集群中的包括来自配备有一组环形振荡器的相应的计数器组的计数器值的一个集群。
A5.根据段落A1所述的系统,其中,一个或多个逻辑电路被配置为确定一组环形振荡器的振荡输出之间的相关性包括将一个或多个逻辑电路配置为确定来自相应的计数器组的计数器值之间的差,并且其中,一个或多个逻辑电路被配置为生成通知包括一个或多个逻辑被电路配置为至少当来自相应的计数器组的计数器值的预定部分之间的差低于指示相关性高于预定阈值相关性的预定阈值差时生成通知。
A6.根据段落A5所述的系统,其中,一个或多个逻辑电路被配置为确定相关性包括一个或多个逻辑电路被配置为:基于来自相应的计数器组的计数器值生成一组环形振荡器的位值的序列,序列的每个位值指示来自相应的计数器组的一对计数器值之间的差是高于还是低于预定阈值差;并且将滤波器应用于该序列以生成指示相关性的滤波器值。
A7.根据段落A5所述的系统,其中,一个或多个逻辑电路被配置为确定差包括一个或多个逻辑电路被配置为对来自相应的计数器组的计数器值执行算术减法或异或运算。
A8.根据段落A1所述的系统,其中,一个或多个逻辑电路被配置为选择一组环形振荡器包括一个或多个逻辑电路被配置为从多个环形振荡器中选择多组环形振荡器,其中,一个或多个逻辑电路被配置为确定相关性包括一个或多个逻辑电路被配置为确定在多组环形振荡器的振荡输出之间的相关性,并且其中,一个或多个逻辑电路被配置为生成通知包括一个或多个逻辑电路被配置为当任何相关性高于预定阈值相关性时生成通知。
A9.根据段落A1所述的系统,其中,一个或多个逻辑电路被配置为生成通知包括一个或多个逻辑电路被配置为生成视觉或听觉通知,或者使计算机系统关闭或重置。
B10.一种由用于在计算机系统中提供安全性的系统实现的方法,系统包括多个环形振荡器,多个环形振荡器在设计时相同但是在制造时具有不同的振荡频率,多个环形振荡器配备有相应的多个计数器,相应的多个计数器被配置为对多个环形振荡器的振荡输出的脉冲进行计数,方法包括以下步骤:在重复的计数周期内启动相应的多个计数器并停止相应的多个计数器;从多个环形振荡器中选择一组环形振荡器,一组环形振荡器配备有相应的多个计数器中的相应的计数器组;基于在重复的计数周期内从相应的计数器组获得的计数器值来确定一组环形振荡器的振荡输出之间的相关性,计数器值指示一组环形振荡器的相应的环形振荡器的振荡频率;并且当相关性高于预定阈值相关性时,生成指示一组环形振荡器中的干扰并且从而产生指示多个环形振荡器中的干扰的通知。
B11.根据段落B10所述的方法,其中,一组环形振荡器是一对环形振荡器,并且选择一组环形振荡器包括从多个环形振荡器中选择一对环形振荡器。
B12.根据段落B10所述的方法,其中,选择一组环形振荡器包括对来自相应的多个计数器的计数器值进行分类,并且基于来自配备有一组环形振荡器的相应的计数器组的计数器值的相似性来选择一组环形振荡器。
B13.根据段落B10所述的方法,其中,选择一组环形振荡器进一步包括基于计数器值的相似性将来自相应的多个计数器的计数器值群集成计数器值的一个或多个集群,并选择一个或多个集群中的包括来自配备有一组环形振荡器的相应的计数器组的计数器值的一个集群。
B14.根据段落B10所述的方法,其中,确定所述一组环形振荡器的振荡输出之间的相关性,包括确定来自相应的计数器组的计数器值之间的差,并且其中,生成通知,包括当来自相应的计数器组的计数器值的至少预定部分之间的差低于指示相关性高于预定阈值相关性的预定阈值差时生成通知。
B15.根据段落B14所述的方法,其中,确定相关性包括:基于来自相应的计数器组的计数器值,为一组环形振荡器生成位值序列,该序列的每个位值指示来自相应的计数器组的一对计数器值之间的差是高于还是低于预定阈值差;并且将滤波器应用于该序列,以生成指示相关性的滤波器值。
B16.根据段落B14所述的方法,其中,确定差,包括对来自相应的计数器组的计数器值执行算术减法或异或运算。
B17.根据段落B10所述的方法,其中,选择一组环形振荡器包括从多个环形振荡器中选择多组环形振荡器,其中,确定相关性包括确定在多组环形振荡器的振荡输出之间的相关性,并且其中,生成通知包括当任何相关性高于预定阈值相关性时生成通知。
B18.根据段落B10所述的方法,其中,生成通知,包括生成视觉或听觉通知、使计算机系统关闭或使计算机系统重置中的至少一个。
受益于前述描述和相关附图中给出的教导,本公开内容所属领域的技术人员将会想到在本文中阐述的本公开内容的许多修改和其他实现方式。因此,应当理解,本公开内容不限于所公开的具体实现方式,并且修改和其他实现方式旨在包括在所附权利要求的范围内。此外,尽管前面的描述和相关联的附图在元件和/或功能的某些示例组合的上下文中描述了示例实现方式,但是应当理解,在不脱离所附权利要求的范围的情况下,可以通过替代实现方式来提供元件和/或功能的不同组合。在这点上,例如,也可以预期与上面明确描述的元件和/或功能不同的元件和/或功能的组合,如在一些所附权利要求中所阐述的。尽管在本文中使用了特定术语,但是这些术语仅在一般和描述性的意义上使用,而不是出于限制的目的。

Claims (15)

1.一种用于在计算机系统中提供安全性的系统,所述系统包括:
多个环形振荡器,所述多个环形振荡器在设计时相同但是在制造时具有不同的振荡频率,所述多个环形振荡器配备有相应的多个计数器,所述相应的多个计数器被配置为对所述多个环形振荡器的振荡输出的脉冲进行计数;以及
一个或多个逻辑电路,所述一个或多个逻辑电路被配置为至少:
在重复的计数周期内启动所述相应的多个计数器并停止所述相应的多个计数器;
从所述多个环形振荡器中选择一组环形振荡器,所述一组环形振荡器配备有所述相应的多个计数器中的相应的计数器组;
基于在重复的计数周期内从所述相应的计数器组获得的计数器值来确定所述一组环形振荡器的振荡输出之间的相关性,所述计数器值指示所述一组环形振荡器的相应的环形振荡器的振荡频率;并且
当所述相关性高于预定阈值相关性时,生成指示所述一组环形振荡器中的干扰并且从而产生指示所述多个环形振荡器中的干扰的通知。
2.根据权利要求1所述的系统,其中,所述一组环形振荡器是一对环形振荡器,并且所述一个或多个逻辑电路被配置为选择所述一组环形振荡器包括所述一个或多个逻辑电路被配置为从所述多个环形振荡器中选择所述一对环形振荡器。
3.根据权利要求1所述的系统,其中,所述一个或多个逻辑电路被配置为选择所述一组环形振荡器包括所述一个或多个逻辑电路被配置为对来自所述相应的多个计数器的计数器值进行分类,并且基于来自配备有所述一组环形振荡器的相应的计数器组的计数器值的相似性来选择所述一组环形振荡器。
4.根据权利要求1所述的系统,其中,所述一个或多个逻辑电路被配置为选择所述一组环形振荡器进一步包括所述一个或多个逻辑电路被配置为基于所述计数器值的相似性将来自所述相应的多个计数器的计数器值群集成所述计数器值的一个或多个集群,并选择一个或多个集群中的包括来自配备有所述一组环形振荡器的相应的计数器组的计数器值的一个集群。
5.根据权利要求1所述的系统,其中,所述一个或多个逻辑电路被配置为确定所述一组环形振荡器的振荡输出之间的相关性包括所述一个或多个逻辑电路被配置为确定来自所述相应的计数器组的计数器值之间的差,并且
其中,所述一个或多个逻辑电路被配置为生成通知包括所述一个或多个逻辑电路被配置为至少当来自所述相应的计数器组的计数器值的预定部分之间的差低于指示所述相关性高于所述预定阈值相关性的预定阈值差时生成所述通知。
6.根据权利要求5所述的系统,其中,所述一个或多个逻辑电路被配置为确定所述相关性包括所述一个或多个逻辑电路被配置为:
基于来自所述相应的计数器组的计数器值生成所述一组环形振荡器的位值的序列,所述序列的每个位值指示来自所述相应的计数器组的一对计数器值之间的差是高于还是低于所述预定阈值差;并且
将滤波器应用于所述序列以生成指示所述相关性的滤波器值。
7.根据权利要求5所述的系统,其中,所述一个或多个逻辑电路被配置为确定所述差包括所述一个或多个逻辑电路被配置为对来自所述相应的计数器组的计数器值执行算术减法或异或运算。
8.根据权利要求1所述的系统,其中,所述一个或多个逻辑电路被配置为选择所述一组环形振荡器包括所述一个或多个逻辑电路被配置为从所述多个环形振荡器中选择多组环形振荡器,
其中,所述一个或多个逻辑电路被配置为确定所述相关性包括所述一个或多个逻辑电路被配置为确定在所述多组环形振荡器的振荡输出之间的相关性,并且
其中,所述一个或多个逻辑电路被配置为生成通知包括所述一个或多个逻辑电路被配置为当任何所述相关性高于所述预定阈值相关性时生成通知。
9.根据权利要求1到8中任一项所述的系统,其中,所述一个或多个逻辑电路被配置为生成通知包括所述一个或多个逻辑电路被配置为生成视觉或听觉通知,或者使所述计算机系统关闭或重置。
10.一种由根据权利要求1到9中任一项所述的用于在计算机系统中提供安全性的系统实现的方法,所述系统包括多个环形振荡器,所述多个环形振荡器在设计时相同但是在制造时具有不同的振荡频率,所述多个环形振荡器配备有相应的多个计数器,所述相应的多个计数器被配置为对所述多个环形振荡器的振荡输出的脉冲进行计数,所述方法包括以下步骤:
在重复的计数周期内启动所述相应的多个计数器并停止所述相应的多个计数器;
从所述多个环形振荡器中选择一组环形振荡器,所述一组环形振荡器配备有所述相应的多个计数器中的相应的计数器组;
基于在重复的计数周期内从所述相应的计数器组获得的计数器值来确定所述一组环形振荡器的振荡输出之间的相关性,所述计数器值指示所述一组环形振荡器的相应的环形振荡器的振荡频率;并且
当所述相关性高于预定阈值相关性时,生成指示所述一组环形振荡器中的干扰并且从而产生指示所述多个环形振荡器中的干扰的通知。
11.根据权利要求10所述的方法,其中,所述一组环形振荡器是一对环形振荡器,并且选择所述一组环形振荡器包括从所述多个环形振荡器中选择所述一对环形振荡器。
12.根据权利要求10所述的方法,其中,选择所述一组环形振荡器包括对来自所述相应的多个计数器的计数器值进行分类,并且基于来自配备有所述一组环形振荡器的相应的计数器组的计数器值的相似性来选择所述一组环形振荡器。
13.根据权利要求10所述的方法,其中,选择所述一组环形振荡器进一步包括基于所述计数器值的相似性将来自所述相应的多个计数器的计数器值群集成所述计数器值的一个或多个集群,并选择一个或多个集群中的包括来自配备有所述一组环形振荡器的相应的计数器组的计数器值的一个集群。
14.根据权利要求10所述的方法,其中,确定所述一组环形振荡器的振荡输出之间的相关性包括确定来自所述相应的计数器组的计数器值之间的差,并且
其中,生成通知包括至少当来自所述相应的计数器组的计数器值的预定部分之间的差低于指示所述相关性高于所述预定阈值相关性的预定阈值差时生成所述通知。
15.根据权利要求14所述的方法,其中,确定所述相关性包括:
基于来自所述相应的计数器组的计数器值生成所述一组环形振荡器的位值的序列,所述序列的每个位值指示来自所述相应的计数器组的一对计数器值之间的差是高于还是低于所述预定阈值差;并且
将滤波器应用于所述序列以生成指示所述相关性的滤波器值。
CN201811577204.6A 2017-12-22 2018-12-21 用于在计算机系统中提供安全性的系统和方法 Active CN110032896B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/853,188 US11068589B2 (en) 2017-12-22 2017-12-22 Interference detecting ring oscillators
US15/853,188 2017-12-22

Publications (2)

Publication Number Publication Date
CN110032896A true CN110032896A (zh) 2019-07-19
CN110032896B CN110032896B (zh) 2023-06-09

Family

ID=64661066

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811577204.6A Active CN110032896B (zh) 2017-12-22 2018-12-21 用于在计算机系统中提供安全性的系统和方法

Country Status (4)

Country Link
US (1) US11068589B2 (zh)
EP (1) EP3502869B1 (zh)
JP (1) JP7222693B2 (zh)
CN (1) CN110032896B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114333694A (zh) * 2021-12-22 2022-04-12 合肥视涯技术有限公司 信号检测方法及电路、温度传感器和硅基有机发光显示装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10778451B2 (en) * 2018-07-30 2020-09-15 United States Of America As Represented By The Secretary Of The Navy Device and method for hardware timestamping with inherent security
TWI783309B (zh) * 2020-11-25 2022-11-11 瑞昱半導體股份有限公司 電路設計方法和相關電路

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1619796A2 (en) * 2004-07-20 2006-01-25 Samsung Electronics Co, Ltd Ring oscillator setting apparatus and method depending on environmental changes of an image formation apparatus
US20080270049A1 (en) * 2007-04-30 2008-10-30 International Business Machines Corporation System and method for monitoring reliability of a digital system
US20130212140A1 (en) * 2012-02-10 2013-08-15 Monty Aaron Forehand Random number generation using startup variances
US20150244377A1 (en) * 2014-02-21 2015-08-27 Vixs Systems Inc. Compensated oscillator
CN105262484A (zh) * 2015-11-17 2016-01-20 中山大学 实现环形振荡器注入锁定的方法及其电路
US20160329882A1 (en) * 2015-05-08 2016-11-10 Qualcomm Incorporated Uncertainty aware interconnect design to improve circuit performance and/or yield
CN106209025A (zh) * 2016-08-26 2016-12-07 哈尔滨工业大学(威海) 具有工艺及温度补偿的环形振荡器
CN106919764A (zh) * 2017-03-07 2017-07-04 合肥工业大学 基于fpga的环形振荡器物理不可克隆函数的可靠性检测方法
US9762241B1 (en) * 2016-06-30 2017-09-12 Intel Corporation Physically unclonable function circuit including memory elements

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2081170A1 (en) 2006-11-06 2009-07-22 Panasonic Corporation Information security apparatus
JP5439964B2 (ja) * 2009-06-12 2014-03-12 富士通セミコンダクター株式会社 遅延比較回路、遅延比較方法、遅延回路および半導体集積回路
JP2011151189A (ja) * 2010-01-21 2011-08-04 Renesas Electronics Corp 半導体集積回路装置
JP5747327B2 (ja) * 2011-08-26 2015-07-15 学校法人 名城大学 情報セキュリティシステム,ホスト,デバイス,その制御方法
DE102013204272A1 (de) * 2013-03-12 2014-09-18 Robert Bosch Gmbh Verfahren zum Erkennen einer Korrelation
JP6882678B2 (ja) * 2017-06-30 2021-06-02 富士通株式会社 衝突検出システムおよび衝突検出方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1619796A2 (en) * 2004-07-20 2006-01-25 Samsung Electronics Co, Ltd Ring oscillator setting apparatus and method depending on environmental changes of an image formation apparatus
CN1725124A (zh) * 2004-07-20 2006-01-25 三星电子株式会社 依据成像装置环境变化的环形振荡器设置装置及方法
US20080270049A1 (en) * 2007-04-30 2008-10-30 International Business Machines Corporation System and method for monitoring reliability of a digital system
CN101669037A (zh) * 2007-04-30 2010-03-10 国际商业机器公司 监视数字系统的可靠性
US20130212140A1 (en) * 2012-02-10 2013-08-15 Monty Aaron Forehand Random number generation using startup variances
US20150244377A1 (en) * 2014-02-21 2015-08-27 Vixs Systems Inc. Compensated oscillator
US20160329882A1 (en) * 2015-05-08 2016-11-10 Qualcomm Incorporated Uncertainty aware interconnect design to improve circuit performance and/or yield
CN105262484A (zh) * 2015-11-17 2016-01-20 中山大学 实现环形振荡器注入锁定的方法及其电路
US9762241B1 (en) * 2016-06-30 2017-09-12 Intel Corporation Physically unclonable function circuit including memory elements
CN106209025A (zh) * 2016-08-26 2016-12-07 哈尔滨工业大学(威海) 具有工艺及温度补偿的环形振荡器
CN106919764A (zh) * 2017-03-07 2017-07-04 合肥工业大学 基于fpga的环形振荡器物理不可克隆函数的可靠性检测方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114333694A (zh) * 2021-12-22 2022-04-12 合肥视涯技术有限公司 信号检测方法及电路、温度传感器和硅基有机发光显示装置

Also Published As

Publication number Publication date
US11068589B2 (en) 2021-07-20
US20190384908A1 (en) 2019-12-19
EP3502869A1 (en) 2019-06-26
JP2019144536A (ja) 2019-08-29
CN110032896B (zh) 2023-06-09
EP3502869B1 (en) 2022-03-30
JP7222693B2 (ja) 2023-02-15

Similar Documents

Publication Publication Date Title
CN110032896A (zh) 用于在计算机系统中提供安全性的系统和方法
KR102267263B1 (ko) 진성 난수 생성기
CN103425942B (zh) 安全模块的篡改检测器
CN103513955B (zh) 用于产生随机数的方法和装置
CN111869158A (zh) 定量数字传感器
US9465585B2 (en) Method for detecting a correlation
CN110022214A (zh) 用于在计算机系统中提供安全性的系统和方法
Lubicz et al. Towards an oscillator based TRNG with a certified entropy rate
CN106775584B (zh) 一种抵抗侵入式攻击的真随机数发生器
US20150193206A1 (en) Method for generating an output of a random source of a random generator
CN103514080B (zh) 用于监控随机发生器的输出的方法
US20150199174A1 (en) Method for Checking an Output
Fischer et al. Modern random number generator design–Case study on a secured PLL-based TRNG
Simka et al. Model of a true random number generator aimed at cryptographic applications
Luo et al. Faulty clock detection for crypto circuits against differential fault analysis attack
US20150019605A1 (en) Method for assessing an output of a random number generator
CN112840342A (zh) 被配置为监视敏感有效载荷的电路
CN104050072A (zh) 用于识别相关的方法
EP2343559A1 (en) A method to detect clock tampering
US9594541B2 (en) System and method for detecting FRO locking
US20240004995A1 (en) System and method for combining cyber-security threat detections and administrator feedback
Laban et al. Low-cost ARM Cortex-M0 Based TRNG for IoT Applications
Arvin et al. Aging prediction of integrated circuits using ring oscillators and machine learning
Rožic Circuit-Level Optimizations for Cryptography
Coşkun et al. Learning under concept drift and non-stationary noise: Introduction of the concept of persistence

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