CN112236973B - 对电源进行部分放电 - Google Patents

对电源进行部分放电 Download PDF

Info

Publication number
CN112236973B
CN112236973B CN201980037509.4A CN201980037509A CN112236973B CN 112236973 B CN112236973 B CN 112236973B CN 201980037509 A CN201980037509 A CN 201980037509A CN 112236973 B CN112236973 B CN 112236973B
Authority
CN
China
Prior art keywords
power supply
power
circuit
discharge
threshold
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
Application number
CN201980037509.4A
Other languages
English (en)
Other versions
CN112236973A (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.)
ARM Ltd
Original Assignee
ARM Ltd
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 ARM Ltd filed Critical ARM Ltd
Publication of CN112236973A publication Critical patent/CN112236973A/zh
Application granted granted Critical
Publication of CN112236973B publication Critical patent/CN112236973B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/003Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Charge And Discharge Circuits For Batteries Or The Like (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Electronic Switches (AREA)

Abstract

提供了一种用于对电源进行部分放电的装置和方法,该装置包括适于向处理电路供电以执行处理操作的电源和适于在处理操作完成之后对电源进行部分放电的放电电路。

Description

对电源进行部分放电
技术领域
本技术涉及电源领域。
背景技术
对于一些处理操作,以安全的方式向处理电路供电可能是有用的。这种情况的特定示例是加密学,其中可以分析加密电路的功率使用以确定关于执行的加密操作的信息。这种攻击形式称为功率分析,并且是一种侧信道攻击形式。侧信道攻击是这样一种攻击:其中,关于例如物理实现方式(例如加密系统)的信息被收集,并被用于确定关于由该系统执行的加密操作的信息;功率分析尤其涉及研究系统随时间的功率消耗并使用该数据从系统中提取秘密信息,例如加密密钥。
因此,以安全的方式向处理电路供电是有益的,这限制了攻击者进行成功的功率分析攻击的能力。
发明内容
从一个方面来看,本技术提供一种装置,包括:电源,适于向处理电路供电以执行处理操作;以及放电电路,适于在处理操作完成之后对电源进行部分放电。
根据上文,通过在处理操作完成之后对电源进行部分放电,处理电路所使用的电荷量是混淆的。该装置包括用于向处理电路供电的电源和用于对电源进行部分放电的放电电路,例如通过将电源两端的电压降低到大于零的值或通过在电源中留下残余电荷。电源可以是被配置为向诸如电容器或电池的装置供电的任何设备。在一些实施例中,电源被配置为经由任何电连接直接向处理电路供电。在其他实施例中,电源被配置为经由例如另一电源间接向处理电路供电。处理电路可以是被配置为执行处理操作的任何电路,例如在一些实施例中,处理电路是加密电路。类似地,处理操作可以是任何处理操作,例如处理操作可以是加密操作。放电电路允许电荷离开电源并被耗散到其他地方。例如,功率可以作为热量在装置内耗散。在处理操作之后对电源进行部分放电并且内部耗散多余功率混淆了由处理电路在执行来自外部观察者的该操作时所使用的电荷量,因为外部观察者无法容易地确定处理电路使用了多少功率以及内部耗散了多少功率。这削弱了外部观察者基于处理电路的功率使用对处理电路所执行的处理操作进行预测或确定的能力。
在一些实施例中,放电电路适于通过充当电阻器来对电源进行部分放电。
电阻器可以被认为是专门设计用于提供电阻并且通过将电功率转化为热量来对电源进行部分放电的设备。在一些实施例中,放电电路包括电阻器;在其他实施例中,放电电路包括未被设计为电阻器而是以提供期望的电阻水平的方式有意地布置的组件。例如,晶体管可以被布置为充当电阻器,因此可以在放电电路中代替电阻器或除了电阻器之外使用。通过充当电阻器,放电电路可以通过允许存储在电源中的一些功率作为热量耗散在装置内而对电源进行部分放电。由于功率在装置内部耗散,外部观察者无法容易地知道处理电路已经使用了多少功率,因为无法根据设备的功率使用来确定功率是用于处理操作还是仅作为热量耗散。
在一些实施例中,放电电路适于对电源放电到阈值。
阈值可以根据例如设备中剩余的电荷量、设备两端的最小电压或任何其他等效量来指定。
在一些实施例中,阈值对于由处理电路执行的不同处理操作是相同的。
通过针对不同的处理操作保持相同的阈值,可以改进由装置提供的混淆,因为每次电源放电到给定阈值时,都会出现使用了相同量的电荷,并且因此不会检测到处理操作中的变化,因为处理操作中的变化不会改变电源放电到的值。不同的处理操作可以是相同操作或操作类型的不同迭代,但它们也可以是具有不同功率使用分布(例如作为时间函数的功率使用)的完全不同类型的操作。
在一些实施例中,放电电路适于改变阈值。
阈值可以以不同的方式变化,例如随机地作为时间的函数随机地或基于一些用户输入。在一些示例中,改变阈值可以通过从系统中进一步去除可预测性来提供对所使用的电荷的进一步混淆,使得外部观察者追踪功率使用变得更加困难。另外,通过改变阈值,如果处理电路需要比在不低于某个阈值的情况下所能提供的功率更多的功率,则可以使用较低的阈值(应当理解,为了保持由装置提供的混淆,除了需要更多功率的处理操作之外,对于使用较少功率的一些处理操作,将阈值设置为较低值可能是合适的,使得外部观察者将无法基于阈值区分处理操作)。
在一些实施例中,该装置还包括被配置为从至少两个值中选择阈值的选择电路。
选择电路可以例如被配置为随机地或基于功率效率目标来选择阈值,例如如果功率效率目标需要高功率效率,则选择电路可以选择较高的阈值,因为较高的阈值意味着电源不需要同样多的功率来对其再充电,或者如果电路被配置为将混淆优先于效率,则选择较低的值。通过从至少两个值中选择阈值,选择电路可以更有效地改变阈值。
在一些实施例中,选择电路适于基于至少一个随机输入来选择阈值。
通过使阈值随机化,可以通过从系统去除甚至更多的可预测性来进一步改进混淆。可以以任何方式生成用于选择阈值的随机输入;理想地,随机输入将是真正随机的,然而应当理解,实际上生成真正的随机值通常是不实际的,并且因此应当理解,在这种情况下,“随机输入”也可以指代以伪随机方式生成的输入。
在一些实施例中,至少两个值是倍数关系。
阈值可以从例如彼此的倍数或公共值的倍数的值中选择。通过提供倍数的值,与其中可能有较宽范围的值的示例相比,可以在几乎没有电路的硬件中更有效地实现该装置。
在一些实施例中,放电电路被配置为通过选择性地激活或去激活放电电路中的元件来改变阈值。
放电电路可以被配置为通过改变例如放电电路中有多少或哪些元件是活动的或不活动的,或在哪些元件连接在电路内来改变阈值。在一些示例中,这是通过使用开关或逻辑门来激活或去激活放电电路中的元件来实现的;在其他示例中,这是通过电路中的旁路元件(作为去激活它们的方式)来实现的。这允许电源以可控制的方式放电,并提供可控制的方式来改变阈值,从而有助于功率使用的混淆。
在一些实施例中,放电电路包括第一晶体管。
在一些示例中,放电电路可以包括晶体管,使得电源由于晶体管内的内部电阻而部分放电。第一晶体管可以是任何类型,例如它可以是金属氧化物半导体场效应晶体管(MOSFET)。晶体管是用于放电电路的特别有用的元件,因为它们是便宜的、广泛可用的并且易于控制的。在一些实施例中,第一晶体管是放电电路中的唯一晶体管,而在其他实施例中,第一晶体管是多个晶体管中的一个。
在一些实施例中,第一晶体管是p型晶体管。
当使用p型晶体管对电路元件(例如,电源)放电时,电路元件只能放电到由p型晶体管的特性所确定的给定阈值,从而在电路元件中留下残余电荷。因此,使用p型晶体管是对电源进行部分放电的简单方法。在一个示例中,p型晶体管是放电电路中的唯一晶体管,而在其他示例中,它是任何类型的多个晶体管中的一个。
在一些实施例中,放电电路还包括串联连接到第一晶体管的第二晶体管。
每个晶体管可以是任何类型的晶体管,包括例如p型晶体管和n型晶体管。提供串联的多个晶体管使电源可以放电到的可能阈值增加,其中每个晶体管增加阈值。这也使得放电电路可以通过激活或去激活电路中的晶体管来改变阈值。
在一些实施例中,该装置还包括第一电源轨和第二电源轨,其被布置为使得电源和放电电路各自连接在第一电源轨和第二电源轨之间,第一电源轨和第二电源轨适于向电源输送电荷或从电源输送电荷。
电源轨例如可以是其两端具有电压的电触点,在这些电触点之间可以连接各种组件。具有最低电压的电源轨的电压可用于确定“零”电压,使得当电源被部分放电时,其相对于该值被部分放电。
在一些实施例中,该装置还包括再充电电路,其适于在电源已经由放电电路进行部分放电之后对电源再充电。
用于在电源被部分放电后对电源在充电的再充电电路确保电源中有足够的电荷,用于由处理电路执行进一步的处理操作。在一些示例中,再充电电路包括附加的电源,并且在其他示例中,其包括被配置为从某个外部电源供电的电路。
在一些实施例中,再充电电路适于针对由处理电路执行的不同处理操作对电源再充电相同的量。
以此方式,该装置进一步混淆放入系统中的电荷量,使得外部观察者甚至更难以确定诸如处理电路的内部组件的功率使用。
在一些实施例中,该装置进一步包括另一电源,该另一电源适于在再充电电路对电源充电时向处理电路供电,其中该电源适于对该另一电源充电。
另一电源例如可以是电容器或电池,并且在一些实施例中,另一电源由第一电源充电。这允许在第一电源被再充电的同时向处理电路供电,从而允许更连续的操作。通过将再充电和电源操作分开有助于改善混淆,例如当第一电源在用于前一处理操作之后被再充电时,可以由另一电源为给定的处理操作供电。
在一些实施例中,电源是电容器。
使用电容器作为电源是合适的,由于其低成本和高耐用性以及电容器的允许大电压从电容器快速放电的特性。
在一些实施例中,处理操作是加密操作。
这是本技术的特别有用的布置,因为它允许在执行加密操作时增加安全性,这可能涉及需要高安全性的非常敏感的数据。在加密操作中,仅了解来自系统的少量数据(例如加密密钥),就可以为攻击者提供访问系统的能力。
附图说明
图1是用于安全地向处理电路供电的布置。
图2是图1中的电源两端的电压随时间变化的图表。
图3是示出图1的装置对连续处理操作的响应的流程图。
图4A和4B示出了p型和n型晶体管上的电路组件的充电和放电。
图5示出了根据一些实施例的放电电路和电源的布置。
图6示出了根据一些实施例的放电电路和电源的布置。
图7示出了根据一些实施例的放电电路和电源的布置。
图8示出了根据一些实施例的用于向处理电路安全地供电的布置。
图9是示出由图8中的充电电路进行的连续充电操作的流程图。
图10是图8中的装置的示例操作方法的流程图。
图11A和11B示出了根据一些实施例的用于对阈值进行编程的配置,电源将被部分放电到该阈值。
图12A和12B示出了根据一些实施例的用于对阈值进行编程的配置,电源将被部分放电到该阈值。
具体实施方式
图1示出用于向处理电路102安全地供电的装置100。装置100包括放电电路104和电源106。电源106被配置为向处理电路102供电以提供处理操作。处理电路可以是被配置为执行处理操作的任何电路,包括例如被配置为执行加密操作的加密电路。放电电路104被配置为在由处理电路102完成每个处理操作之后对电源106进行部分放电。在一些实施例中,放电电路104被配置为通过充当电阻器来对电源106放电,例如放电电路104是被专门设计为提供电阻的电路,使得来自电源106的电能在放电电路104中被转换成热量,该热量在装置内被内部耗散。在一些实施例中,放电电路104包括电阻器;在其他实施例中,放电电路104包括未被专门设计为用作电阻器但被专门布置为提供期望的电阻水平的组件。
图2示出了电源106两端的电压随时间变化的图表。该图示出了在再充电200期间电源106两端的电压增加到Vmax,在该点处电源106被完全充电。在图中标记为202的部分中,当电源106向处理电路102供电时,电源106两端的电压降低。标记为204的区域示出了电源106两端的电压随着其在放电电路104两端放电而降低。根据本技术,图表上的线206示出了在处理操作之后完全放电的电源,而线208和210示出了分别被部分放电到阈值Vt和2Vt的电源106。
在图3所示的示例中,放电电路104在每个处理操作之后对电源106放电相同量。在S302中,执行处理操作,并且在S204a中,放电电路104对电源106进行部分放电到阈值Vt;在S304中,执行与在S302中执行的处理操作不同的处理操作,并且在S204b中,放电电路104对电源106放电到与S204a中相同的阈值Vt
图1-3的装置和方法被布置为使得在由处理电路102执行的每个处理操作之后,放电电路对电源106进行部分放电到某个阈值Vt。多余的功率作为热量在内部耗散。以这种方式,处理电路所使用的电荷被混淆,使得外部观察者无法确定处理电路使用多少功率来执行处理操作。这提供了对例如功率分析侧信道攻击的保护,在功率分析侧信道攻击中,攻击者基于处理操作中使用的功率来解密信息。这样的功率分析对于加密操作特别危险,因为如果攻击者甚至可以解密与执行的加密操作有关的少量信息(例如密钥),他们就有可能获得对系统和/或该系统发布的未来通信的访问。
图4A示出了当电路元件在n型晶体管上放电(i)和充电(ii)时的电压随时间的变化,图4B示出了当电路元件在p型晶体管上放电(i)和充电(ii)时的电压随时间的变化。如图4B(i)所示,由p型晶体管(例如p型MOSFET(pMOS))放电的电路元件只能部分放电到某个阈值V1(其中V1大于零但小于Vmax),留下一些残余电荷。因此,p型晶体管足以对电源106进行部分放电,留下一些残余电荷。相比之下,由n型晶体管(例如n型MOSFET(nMOS))放电的电路元件可以完全放电到零,在电容器中没有留下残余电荷(图4A(i))。因此,当电源106在n型晶体管上放电时,其被完全放电到零,并且单个n型晶体管不足以对电源进行部分放电到某个阈值。应当注意,零电压旨在表示该组件两端的最低可能电压。
相反,当电路元件在p型晶体管上充电时(如图4B(ii)所示),它可以完全充电到最大电压Vmax,而当在n型晶体管上充电时(图4A(ii)),电路元件只能充电到某个阈值电压V2,该阈值电压V2小于最大电压Vmax。如下面参考图6和7详细描述的,这意味着如果将n型晶体管与其他晶体管串联提供,则当电源放电时,可以在n型晶体管上对其他晶体管充电。由于其他晶体管将仅被充电到某个阈值(根据n型晶体管在充电时的特性),这意味着在电源中留下残余电荷,并且因此电源仅被部分放电。
图5示出了根据本技术的示例布置,其中该装置包括连接在电源轨VDD和VSS之间的作为电源106的电容器106a和放电电路104a。根据本技术使用电容器106a作为电源106可能是有利的,因为电容器便宜且耐用并且适于快速充电和放电;然而,应当理解,电容器可以由任何电源代替。放电电路104a适于在处理操作完成之后对电容器106a进行部分放电。在本技术的该特定实施例中,放电电路104a包括p型晶体管502。由于p型晶体管的自然阈值,电容器106a在晶体管502上被放电时仅部分放电,在电容器106a中留下残余电荷。晶体管602可以例如是pMOS晶体管,即p型MOSFET晶体管。
图6示出了本技术的替代实施例,其中放电电路104b包括串联连接的多个n型晶体管602。图6中的布置包括连接在电源轨VSS和VDD之间的电容器106a和放电电路104b。与图5中的放电电路104a类似,放电电路104b适于在这种情况下通过利用n型晶体管的特性对电容器106a进行部分放电到某个阈值。特别地,该布置利用以下事实:在n型晶体管上充电的电路元件只能充电到某个阈值V1,如图4A(ii)所示。当电容器106a在放电电路104b上放电时,电容器106a对第一n型晶体管602a充电,该第一n型晶体管602a又对第二n型晶体管602b充电,该第二n型晶体管602b又对第三n型晶体管602c充电。当晶体管602b在n型晶体管602a上充电时,晶体管602b只能充电到某个阈值,留下残余电荷q,其被存储在电容器106a中。同样,由于在n型晶体管602b上充电,n型晶体管602c也仅能充电到阈值,在电容器106a中留下另一残余电荷q。因此,电容器106a留下残余电荷2q。可以通过添加更多串联的n型晶体管602来增加电容器106a的阈值电压(和残余电荷),并且因此应当理解,放电电路104b中的n型晶体管602的数目不限于3,但可以是大于1的任何数字。
图7示出了本技术的另一实施例,其中放电电路104c包括串联连接的n型晶体管700和p型晶体管702。这种布置利用图4A(ii)所示的n型晶体管在充电中的特性和图4B(i)中所示的p型晶体管在放电中的特性。在图7中,当电容器106a在放电电路104c上被放电时,电容器首先对n型晶体管700充电,该n型晶体管700对第一p型晶体管702a充电,该第一p型晶体管702a又对第二p型晶体管702b充电。当第一p型晶体管702a在n型晶体管700上被充电时,其仅可以充电到某个阈值V2,并且因此残余电荷q保留在系统中。然后,当第一p型晶体管702a在第二p型晶体管702b上被放电时,它仅可以被放电到阈值,留下另外的残余电荷q。因此,在电容器106a中留下残余电荷2q。如在先前的实施例中,电容器106a被放电到的阈值可以通过添加更多的n型晶体管来增加,并且也可以通过添加更多的p型晶体管来增加。因此,应当理解,图7所示的实施例不限于所示的一个n型晶体管700和两个p型晶体管702,而是可以使用任何数量的n型和p型晶体管。
图5、6和7示出了根据本技术的放电电路104的各种配置,然而,应当理解,可以使用允许电源106被部分放电的放电电路104的任何布置。通常,这可以是图5中所示的单个p型晶体管、p型和n型中的一者或两者的多个晶体管,或将给出相同结果的任何其他配置。
本技术的一些实施例包括电源轨VDD和VSS。电源轨VDD和VSS被布置为在它们之间具有电压,并且放电电路和电源连接在电源轨之间,如图5-7所示,使得电源轨VDD和VSS在电源和放电电路之间进行充电。
在一些实施例中,每次电源106被放电时,电源106放电到的阈值是相同的。在其他实施例中,阈值可以是可变的。在图5-7中的任何一个中,可以使用固定阈值,然而图6和7中的布置也可以被配置为提供可变阈值,其中可以通过在放电电路中绕过一个或多个晶体管来降低阈值。如果给定晶体管的阈值为Vt,则串联包括的每个附加晶体管将阈值增加Vt。图2示出这样的阈值的示例,其中208示出了例如在包括单个p型晶体管的装置中的阈值Vt,并且其中210示出了例如在包括串联的两个p型晶体管的装置中的阈值2Vt
图8示出了本技术的实施例,包括被配置为对电源106进行部分放电的放电电路104的电源106。电源106、放电电路104和处理电路102都连接在电源轨VDD和VSS之间,电源轨VDD和VSS从再充电电路800向电源106供电以对其再充电,并且还将电源106连接到处理电路102,使得电源106可以向处理电路102供电,以及将电源106连接到放电电路104,使得可以在放电电路104上对电源106放电。电源轨VSS为系统限定零电压。图8的装置还包括连接在电源轨VDD和VSS之间的另一电源802,其被布置为例如在电源106被再充电或放电时向处理电路102供电。图8还示出了被配置为用作开关的六个晶体管,包括刷新晶体管804和806、传输晶体管808和810以及电源晶体管812和814。晶体管804-814在本文中可互换地称为开关。晶体管804-814可以是MOSFET,然而应当理解,可以使用任何其他功率开关代替晶体管804-814,或者被配置为调节电路中的电流的任何其他组件。
图9示出由充电电路800执行的充电操作。在S900中,处理操作由处理电路102执行。在S902中,电源106被部分放电,并且在S904a中,电源106被再充电电路800再充电到某个第一电平。在S906中,执行与第一处理操作不同的第二处理操作。在S908中,放电电路104对电源106进行部分放电,并且在S904b中,再充电电路800将电源106再充电到相同的第一电平。充电电路800被布置为在每个处理操作之后将电源106再充电到相同水平。
图10示出了一种方法的流程图,通过该方法可以操作图8的装置。开关804、806、808、810、812和814允许对另一电源802充电、向处理电路102供电、对电源106放电或对电源106充电的过程彼此隔离。例如,允许在不对电源106放电的情况下对另一电源802充电。在S1000中,刷新开关804和806被关闭,而转换开关808和810保持打开。这允许电源106被充电。一旦电源106被完全充电,则在S1002中,刷新开关804和806被断开,并且转换开关808和810被闭合。这允许电源106对电源802充电直到两个电源达到平衡。可替代地,如果不存在电源802,则电源106可以被配置为直接向处理电路102供电。处理电路102执行一些处理操作,此后或在电源106和802达到平衡之后,在S1004中,转换开关808和810被断开,允许电源106在放电电路104上部分放电,而电源802被布置为通过闭合两个电源开关812和814来向处理电路102供电。当刷新开关804和806以及转换开关808和810都断开时,外部观察者无法检测到电源106在放电电路104上的放电。放电电路104通过充当电阻器来对电源106放电,将存储在电源106中的电功率转换为热量,该热量在装置内耗散。
本技术通过在每个处理操作之后将电源106放电到某个阈值来混淆由处理电路102在执行处理操作中所使用的电荷量。外部观察者无法测量系统的功率使用来确定处理电路102使用了多少功率来执行特定的处理操作,因为对于这种观察者不存在实际方式来确定系统中有多少功率作为热量耗散以及有多少功率在处理操作中使用。这保护装置免受诸如功率分析侧信道攻击的加密攻击。
该装置可以被配置为在每个处理操作之后将电源106放电到相同的阈值,而不管执行什么类型的处理操作。这确保了系统所使用的功率在每个处理操作中都是相同的,从而混淆电源所使用的电荷量。
可替代地,该装置可以被配置为改变阈值。例如,可以在每个处理操作之后随机地选择阈值。这去除来自系统的所有可预测性并提供了另外级别的混淆,从而进一步提高系统的安全性。
本技术在要求高安全性的操作(例如加密)中特别有利。因此,处理电路102可以是被配置为执行加密操作的加密电路。然而,处理电路102可以是被配置为执行任何类型的处理操作的任何其他类型的处理电路。
图11-12示出了本技术的可编程的实施例,即它们可以使用程序逻辑来控制。图11A示出了如何将与门1104和缓冲器1102与晶体管1100一起布置使得它们可以用于激活或去激活晶体管1106的示例。图11B示出了如何可以将这种设计扩展到多个晶体管1106。这允许通过选择性激活或去激活晶体管1106来改变电容器102放电到的阈值。图11中的布置被称为“低电平有效”配置。
图12示出本技术的可编程实施例的“高电平有效”配置。图12A示出了缓冲器1204、晶体管1202和与门1206,其被配置为基于与门1206的输入来激活或去激活晶体管1200。图12B示出了可以如何将这种配置扩展到多个晶体管1200。
应当理解,尽管图11B和12B仅示出了被配置为选择性地激活或去激活的串联的两个晶体管,但是该布置可以扩展到任何数目的晶体管1106/1200。
图11-12示出了如何改变电容器106a的阈值。因此,阈值可以根据激活多少个晶体管1106/1200选自多个值,每个值是倍数关系。存在可以选择阈值的多种方式,例如可以随机选择阈值。这通过从系统的功耗中去除任何可预测性而进一步提高系统的安全性。可以基于一些随机输入来随机地选择阈值,例如可以生成随机数并且可以激活与该随机数相等的数目个晶体管。应当理解,存在许多随机选择阈值的方式,并且可以使用任何方法。此外,应当理解,做出真正随机选择通常是不实际的,因此应当理解,在本申请的上下文中,“随机”还意指以伪随机方式进行的选择。
图11-12中描绘的本技术的可编程实施例可以由包括程序指令的计算机程序控制。本申请的实施例还提供了被配置为存储程序指令的非暂态计算机可读存储介质,所述程序指令被配置为使计算机执行根据本申请实施例的用于对电源进行部分放电的方法。
在本申请中,词语“被配置为……”和“适于……”用于表示装置的元件具有能够执行所定义的操作的配置。在本文中,“配置”是指硬件或软件的互连的布置或方式。例如,该装置可以具有提供定义的操作的专用硬件,或者可以对处理器或其他处理设备进行编程以执行该功能。“被配置为”并不意味着需要以任何方式改变装置元件以提供所定义的操作。
尽管这里已经参考附图详细描述了本发明的示例性实施例,但是应当理解,本发明不限于这些精确的实施例,并且在不脱离由所附权利要求限定的本发明的范围和精神的情况下,本领域的技术人员可以在其中进行各种改变和修改。

Claims (17)

1.一种对电源进行部分放电的装置,所述装置包括:
电源,适于向处理电路供电以执行处理操作;以及
放电电路,适于在所述处理操作完成之后对所述电源进行部分放电,
其中:
所述放电电路适于把所述电源放电到阈值;
所述放电电路适于改变所述阈值;
所述装置包括选择电路,该选择电路被配置为从至少两个值中选择所述阈值;并且
所述选择电路适于基于至少一个随机输入来选择所述阈值。
2.根据权利要求1所述的装置,其中
所述放电电路适于通过充当电阻器来对所述电源进行部分放电。
3.根据权利要求1或2所述的装置,其中
针对由所述处理电路执行的不同处理操作,所述阈值是相同的。
4.根据权利要求1或2所述的装置,其中
所述至少两个值是倍数关系。
5.根据权利要求1或2所述的装置,其中
所述放电电路被配置为通过选择性地激活或去激活所述放电电路中的元件来改变所述阈值。
6.根据权利要求1或2所述的装置,其中
所述放电电路包括第一晶体管。
7.根据权利要求6所述的装置,其中
所述第一晶体管是p型晶体管。
8.根据权利要求6所述的装置,其中
所述放电电路还包括串联连接到所述第一晶体管的第二晶体管。
9.根据权利要求1或2所述的装置,还包括:
第一电源轨和第二电源轨,其被布置为使得所述电源和所述放电电路各自连接在所述第一电源轨和所述第二电源轨之间;
所述第一电源轨和所述第二电源轨适于向所述电源输送电荷和从所述电源输送电荷。
10.根据权利要求1或2所述的装置,还包括:
再充电电路,适于在所述电源被所述放电电路进行部分放电之后对所述电源再充电。
11.根据权利要求10所述的装置,其中
所述再充电电路适于针对由所述处理电路执行的不同处理操作,对所述电源再充电相同的量。
12.根据权利要求10所述的装置,还包括:
另一电源,适于在所述再充电电路对所述电源再充电的同时向所述处理电路供电,其中所述电源适于对所述另一电源充电。
13.根据权利要求1或2所述的装置,其中:
所述电源是电容器。
14.根据权利要求1或2所述的装置,其中:
所述处理操作是加密操作。
15.一种对电源进行部分放电的装置,所述装置包括:
供电装置,用于向用于执行处理操作的装置供电;以及
部分放电装置,用于在所述处理操作完成之后对所述供电装置进行部分放电,
其中:
所述部分放电装置适于把所述供电装置放电到阈值;
所述部分放电装置适于改变所述阈值;
所述装置包括选择装置,该选择装置被配置为从至少两个值中选择所述阈值;并且
所述选择装置适于基于至少一个随机输入来选择所述阈值。
16.一种对电源进行部分放电的方法,所述方法包括:
从电源向处理电路供电以执行处理操作;
当所述处理操作完成,通过放电电路对所述电源进行部分放电,所述放电电路适于:
把所述电源放电到阈值;
改变所述阈值;
基于至少一个随机输入,从至少两个值中选择所述阈值。
17.一种非暂态计算机可读存储介质,存储程序指令,所述程序指令被配置为使计算机执行根据权利要求16所述的方法。
CN201980037509.4A 2018-06-14 2019-05-10 对电源进行部分放电 Active CN112236973B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/008,345 US11256311B2 (en) 2018-06-14 2018-06-14 Partially discharging a power supply
US16/008,345 2018-06-14
PCT/GB2019/051288 WO2019239098A1 (en) 2018-06-14 2019-05-10 Partially discharging a power supply

Publications (2)

Publication Number Publication Date
CN112236973A CN112236973A (zh) 2021-01-15
CN112236973B true CN112236973B (zh) 2024-01-19

Family

ID=66554436

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980037509.4A Active CN112236973B (zh) 2018-06-14 2019-05-10 对电源进行部分放电

Country Status (5)

Country Link
US (1) US11256311B2 (zh)
KR (1) KR20210019457A (zh)
CN (1) CN112236973B (zh)
GB (1) GB2589476B (zh)
WO (1) WO2019239098A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RO135744B1 (ro) * 2021-12-17 2024-05-30 The Climate Change S.R.L. Beton asfaltic din agregate şi deşeuri derivate din sticlă şi materiale plastice reciclate şi procedeu de obţinere şi utilizare a acestuia

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5666006A (en) 1994-05-12 1997-09-09 Apple Computer, Inc. Circuit offering sequential discharge and simultaneous charge for a multiple battery system and method for charging multiple batteries
US6507913B1 (en) 1999-12-30 2003-01-14 Yeda Research And Development Co. Ltd. Protecting smart cards from power analysis with detachable power supplies
JP4627920B2 (ja) * 2001-04-24 2011-02-09 Okiセミコンダクタ株式会社 電源装置
WO2005029704A1 (en) 2003-09-17 2005-03-31 The Regents Of The University Of California A dynamic and differential cmos logic with signal-independent power consumption to withstand differential power analysis
PL2087497T3 (pl) 2006-11-15 2018-01-31 Linak As System elektrycznego siłownika
WO2008116173A1 (en) 2007-03-21 2008-09-25 The University Of Vermont And State Agricultural College Piezoelectric vibrational energy harvesting systems incorporating parametric bending mode energy harvesting
US7880339B2 (en) 2009-02-03 2011-02-01 The Regents Of The University Of Michigan Isolation circuitry and method for hiding a power consumption characteristic of an associated processing circuit
US20110047052A1 (en) 2009-08-18 2011-02-24 Kevin Terrill Cornish Method and process for an energy management system for setting and adjusting a minimum energy reserve for a rechargeable energy storage device
JP5544923B2 (ja) 2010-02-24 2014-07-09 セイコーエプソン株式会社 保護回路および電子機器
US8841893B2 (en) 2010-12-16 2014-09-23 International Business Machines Corporation Dual-loop voltage regulator architecture with high DC accuracy and fast response time
US8912816B2 (en) 2012-11-12 2014-12-16 Chaologix, Inc. Charge distribution control for secure systems
US9219473B2 (en) 2013-03-15 2015-12-22 International Business Machines Corporation Overvoltage protection circuit
US9785177B1 (en) 2016-08-03 2017-10-10 Nxp Usa, Inc. Symmetrical positive and negative reference voltage generation
US20190007223A1 (en) * 2017-07-01 2019-01-03 Intel Corporation Techniques to power encryption circuitry

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Protecting Smart Cards from Passive Power Analysis with Detached Power Supplies;Adi Shamir;Cryptographic Hardware and Embedded Systems, 2nd International Workshop;第3章 *
Symmetrix Adiabatic Logic Circuits against Differential Power Analysis;BYONG-DEOK CHOI 等;ETRI JOURNAL;第32卷(第1期);第II章 *

Also Published As

Publication number Publication date
US20190384368A1 (en) 2019-12-19
WO2019239098A1 (en) 2019-12-19
GB2589476B (en) 2022-09-14
US11256311B2 (en) 2022-02-22
CN112236973A (zh) 2021-01-15
GB2589476A (en) 2021-06-02
KR20210019457A (ko) 2021-02-22
GB202019740D0 (en) 2021-01-27

Similar Documents

Publication Publication Date Title
TWI468974B (zh) 用於隱藏相關聯處理電路的功率消耗特性的隔離電路及方法
US9430678B2 (en) Charge distribution control for secure systems
JP6882856B2 (ja) セキュアデジタル論理セル
US10169617B2 (en) Multi-topology logic gates
US20190007223A1 (en) Techniques to power encryption circuitry
Yu et al. Security-adaptive voltage conversion as a lightweight countermeasure against LPA attacks
EP2693680A1 (en) Apparatus safe from power consumption analysis attack for encrypting and method for operating same
Yu et al. Charge-withheld converter-reshuffling: A countermeasure against power analysis attacks
KR101359783B1 (ko) 부정합 부하 저항 소자 기반 물리적 복제 불가 함수 시스템
CN112236973B (zh) 对电源进行部分放电
EP3005219B1 (en) Charge distribution control for secure systems
US10680797B2 (en) Security-adaptive voltage conversion as a lightweight counter measure against LPA attacks
US20110128030A1 (en) Monitoring of the activity of an electronic circuit
Kannan et al. Secure memristor-based main memory
CN116054816B (zh) 加密逻辑单元电路、加密芯片、服务器和图像加密方法
US8605401B2 (en) Systems and methods for securing a programmable device against an over-voltage attack
US10824768B2 (en) Security device for preventing leakage of data information in solid-state drive
EP3807975B1 (en) Supplying energy to an apparatus
Alioto et al. Power analysis attacks to cryptographic circuits: a comparative analysis of DPA and CPA
Yu et al. Malicious attacks on physical unclonable function sensors of internet of things
KR101080529B1 (ko) 전력 분석 공격에 안전한 암호화 장치 및 그 동작 방법
FR2954868A1 (fr) Procede et dispositif de contremesure pour proteger des donnees circulant dans un composant electronique
Muresan et al. On-chip decoupling architecture with variable nMOS gate capacitance for security protection
Sarmiento A Simple and Differential Power Analysis Attack Resistance Circuit for Smart Card Reader Using an Integrated Power Spike Vanisher
Şahin S-Box classification and selection in symmetric-key algorithms

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