广告

当代对称加密的选定设计和分析技术

开放获取
  • 2.6 k下载

摘要

在本章中,我们概述了最近发表的对称加密算法的设计和分析所选择的方法。首先讨论了带密钥更新功能的密钥流生成器的实际优点、局限性和安全性。然后,我们提出了一种采用通用同音编码和随机加密范式来增强某些加密方案的安全性的方法。

3.1简介

普适计算的概念给加密算法的设计者带来了新的挑战,它引入了经典加密原语由于其成本(如硬件价格、计算时间、电力和能源消耗)而不可行的场景。在本章中,我们提供了一个概述,选择最近的方法来应对这些挑战。

一种方法(27],它允许一个人实现安全流密码的状态大小超出界,这是以前被认为是最小的总结在节。3.2.主要思想是使用所谓的密钥流生成器与键控更新函数(KSGs与KUF),其中密钥不仅涉及到初始化阶段(这是常见的做法),而且涉及到整个加密过程。在解释了优点后[27使用KUF抵御时间记忆数据折衷(TMDTO)攻击的KSGs [47237,以及在硬件上实现的实际问题和限制[421],我们描述了流密码Sprout,其设计目的是为了证明该方法的可行性[27],改进Plantlet,修复了Sprout的安全缺陷[421].在教派。3.3我们提出一种通用攻击[314]来反对这种隐含设计标准的KSGs。部分3.4提出一种利用通用同音字编码来增强某些加密方案的安全的方法[397和随机加密范例[503].本节总结的方法已在许多参考文献中报告和讨论,包括[413418452]和[420].该加密方案的安全评估报告已载于[452]从信息论的观点出发,给出了一种计算复杂性评估方法420].

3.2带有键控更新功能的键流生成器

3.2.1之上设计方法

流密码通常比块密码提供更高的吞吐量。然而,由于某些TMDTO的存在[4791237]攻击时,实现安全流密码所需的区域大小通常更高。原因如下。TMDTO对流密码的攻击是O(2σ∕2),σ是内部状态的大小。因此,经验法则告诉我们要做到κ-bit安全级别时,状态大小应为至少σ= 2⋅κ.这导致一个流密码至少需要2⋅κ内存门在面积和功耗方面是最昂贵的硬件元素。在本节中,我们讨论一个扩展[27421],它允许内部状态大小低于此界限的安全轻量级流密码。

我们通过给出带有KUF的KSG的定义来开始描述流密码设计的新方法[27]:

定义1(带键控更新功能的键流生成器)

一个键流生成器键更新功能包含三个集合,即键空间\({\mathcal {K}}= mathm {GF}(2)^{\kappa}\), IV空间\ ({\ mathcal{我}\ mathcal {V}} = \ mathrm {GF}(2) ^{\ν}\),以及变量状态空间\({\mathcal {S}}=\ mathm {GF}(2)^{{\sigma}}).此外,它还使用了以下三个函数
  • 一个初始化函数\ (\ mathsf {Init}: {\ mathcal{我}\ mathcal {V}} \ * {\ mathcal {K}} \ rightarrow {\ mathcal{年代}}\)

  • 一个更新函数\ (\ mathsf{乌利希期刊指南}:{\ mathcal {K}} \ * {\ mathcal{年代}}\ rightarrow {\ mathcal{年代}}\)这样\ (\ mathsf{乌利希期刊指南}_ {{k}}: {\ mathcal{年代}}\ rightarrow {\ mathcal{年代}}\)Updk): =Updk),对任何来说都是双向的在{\ \ ({k} \ mathcal {k}} \),

  • 一个输出函数\ (\ mathsf {}: {\ mathcal{年代}}\ rightarrow \ mathrm {GF} (2) \)

的内部状态是由可变部分组成的吗在{\ \({圣}\ mathcal{年代}}\)一个固定的部分在{\ \ ({k} \ mathcal {k}} \).KSG工作分为两个阶段。在初始化阶段, KSG将一个密钥作为输入k和公共IV4并将内部状态设置为\({圣}_ {0 }{\,:=\,}\ mathsf {Init} (iv, {k}) {\ \ \,} {\ mathcal{年代}}\).之后,键流生成阶段重复执行以下操作(fort≥0):
  1. 1.

    输出下一个密钥流位zt=Outt

  2. 2.

    更新内部状态tt+1: =Updkt

带有KUF的KSGs和传统的作为流密码核心的KSGs之间的主要区别是,现在下一个状态不仅仅是从当前变量状态计算出来的t(就像通常做的那样)也可以从固定键k

我们现在解释了为什么基于KSGs和KUF构建的流密码在抵抗TMDTO攻击方面比经典KSGs更有优势。TMDTO攻击者的目标如下:给定一个函数\({F}:{\mathcal {N}}\ rightrow {\mathcal {N}}\)而且D图片y1、……yDF,找到这些点的原像,即确定一个值在{\ \ (x_i \ mathcal {N}} \)这样Fx) =y.通常,这些攻击包括两个阶段:预计算(离线)阶段和实时(在线)阶段。首先,攻击者使用该函数预计算一个大表F(离线阶段)。在在线阶段,攻击者得到D输出的F并检查这些值是否包含在预计算表中。在成功的情况下,已经找到了一个原映像。显然,攻击者可以通过在离线阶段预计算更多的值或在在线阶段收集更多的数据来增加成功的概率,在线阶段的最优权衡通常是\ (| {D} | = \√6 {| {\ mathcal {N}} |} \)

在KSGs上下文中,TMDTO攻击的目标是恢复一个内部状态,因为这允许我们计算完整的键流。为此,让FOut: GF (2)σ→GF (2)σ是取内部状态的函数t∈GF (2)σ在某个时钟t作为输入和输出σkeystream比特zt、……zt+σ−1.然后,攻击转化为寻找的原像FOut对于给定的键流段,搜索空间为\({\mathcal {N}}= {\mathcal {S}})至少是一种努力\(\sqrt {|{mathcal {S}}|}=2^{{sigma}/2}\).这就意味着上述的选择规则σ≥2κ

理解定义中给出的设计原则背后的动机1,我们引入了keystream等效状态的概念,这对分析TMDTO攻击的有效性很重要。让F \ ({} _ {\ mathsf{出来}}^ {\ mathrm{惠。}}\)作为输入初始状态并输出最大密钥流位数的函数。如果设计者没有给出界限,我们假定最大周期为2σ生成Keystream位。攻击者对任何允许计算键流的内部状态感兴趣:

定义2 (keystream -等效状态)

考虑一个带有函数的KSGF \ ({} _ {\ mathsf{出来}}^ {\ mathrm{惠。}}\)输出完整的键流。两种状态\({圣},{圣}’\ {\ mathcal{年代}}\)据说是keystream-equivalent(简而言之kse圣”),如果存在整数r≥0,使F \ ({} _ {\ mathsf{出来}}^ {\ mathrm{惠。}} (\ mathsf{乌利希期刊指南}^ r({圣}))= {F} _ {\ mathsf{出来}}^ {\ mathrm{惠。}}({圣}”)\).在这里,Updr意味着r时代的应用Upd

对于任何国家在{\ \({圣}\ mathcal{年代}}\),我们用[的等价类,即\[{圣}]=(\{{圣}的\ {\ mathcal{年代}}\绿色{圣}\枚_ {\ mathrm {kse}}{圣}’\}\)

现在,让我们考虑一个具有状态空间的任意KSG\ ({\ mathcal{年代}}\).因为任何状态都是一个等价类的成员,所以状态空间可以分为不同的等价类:假设一个TMDTO攻击者得到了一些键流(z t),基于未知的初始状态 0.在这种情况下,如果没有对中的值进行预计算\(\左[{st}_{0} \右]\),攻击就会失败。这意味着攻击努力至少在数量上是线性的等价类。因此,我们可以看到,如果我们设计一个这样的密码≥2κ,这样的密码将具有所需的安全级别,以应对权衡攻击。

现在让我们来看看TMDTO用KUF攻击KSG所需的最短时间。我们在下面做一个假设任何两种不同的状态= (k),圣”= (圣”k”),kk”也就是说,永远不要产生相同的键流F \ ({} _ {\ mathsf{出来}}^ {\ mathrm{惠。}}({圣})\ \枚_ {\ mathrm {kse}} {F} _ {\ mathsf{出来}}^ {\ mathrm{惠。}}({圣}”)\).因此,我们至少有2个κ不同的等价类。当工作量随着等价类的数量线性增长时,我们假设攻击者恰好有2个等价类κ等价类。这使得最小时间复杂度为2κ.这意味着,在理论上,可以设计一个安全级别为κ不管长度如何σ它的变量状态。

3.2.2关于连续访问密钥

在大多数情况下,密码的工作流程如下所示。加密或解密过程启动后,密钥将从某个非易失性内存中加载NV进入一些寄存器,即进入一些易失性内存V.我们称它为V一个波动值因为它通常在加密/解密过程中发生变化,存储在NV,非易失性价值非易失性的关键这是固定的。它适用于大多数设计,在钥匙加载后NVV,NV通常不再涉及(除非密钥调度或初始化过程需要重新启动)。但是在Sect中讨论的设计方法。3.2.1之上要求不仅要在初始化寄存器时访问储存在设备上的密钥,而且要在加密/解密过程中持续访问。该方法在不同场景下的可行性已在[421].

有人认为,持续访问密钥会影响可实现的吞吐量。为此目的,需要考虑两个不同的情况。第一个是当键设置一次并且永不改变时,第二个是当可以重写键时。的类型NV(例如,MROM和PROM)可以在第一种情况下使用,允许在访问密钥位时不产生开销的有效实现。但是,这里的密钥管理非常困难。在第二种情况下,也就是对于那些类型NV允许密钥可重写(如EEPROM和Flash),访问NV可能发生。具体来说,这取决于键的存储方式NV需要被访问。在某些情况下,密码的实现需要连续访问存储在可重写类型中的密钥的随机选择位NV可导致吞吐量减少多达50倍[421].然而,需要顺序访问密钥位的设计几乎不受影响,无论底层是什么NV类型。

关于区域大小,在加密过程中,密钥是只读取一次还是连续读取没有太大的区别,因为无论如何都必须实现读取密钥的逻辑(至少一次)。可能需要少量额外的逻辑来与NVM密码进行同步,除非读取密钥材料,否则不应该对NVM密码进行计时NV

3.2.3小溪密码芽和植株

在章节中讨论的设计原则。3.2.1之上通过两个具有键更新功能的具体键流生成器,即Sprout和Plantlet进行了演示。这两种密码具有相似的结构(见图。3.1),灵感来自Grain-128a [14].区别如下:
  1. 1.
    与任何谷物家族密码相比,芽和植株的内部状态尺寸更短[265
    图3.1

    芽和苗密码子的整体结构

  2. 2.

    它们使用round key函数使状态更新依赖于键

  3. 3.

    该计数器用于状态更新,以避免发生键移位导致键流移位的情况

Plantlet的设计实际上是建立在Sprout的基础上,但包含了一些修改来修复几个弱点[50203355387].小苗和小芽的主要区别如下:
  1. 1.

    幼苗的内部状态大小比芽大。引入这种差异是为了增加输出序列的周期,并增加对猜测和确定攻击的抵抗力

  2. 2.

    在这两种密码中,轮询密钥函数循环遍历密钥位,这与前面提到的不同类型的NVM的性能是一致的。然而,在Sprout中,密钥位仅以0.5的概率包含在NFSR更新中,也就是说,只有当几个状态位的线性组合等于1时。这已经被几次攻击利用,所以在Plantlet下一个密钥位是无条件添加在每个时钟周期。

  3. 3.

    Plantlet使用所谓的双层LFSR,它允许高周期,同时避免LFSR被全0初始化

如需详细说明,请参阅[27422].

实现结果

我们使用了Cadence RTL编译器1技术库UMCL18G212T3 (UMC 0.18 μm工艺)。时钟频率设置为100 kHz。对于不同的记忆类型,Sprout需要692 ~ 813个ge,而Plantlet需要807 ~ 928个ge。注意,如果使用相同的工具实现,遵循经典设计方法的最小KSG至少需要1162个ge [421].

安全

如前所述,有几个严重的弱点[50203355387,而Plantlet,据我们所知,目前仍是安全的。

3.3一种针对具有键控更新功能的某些键流生成器的通用攻击

在本节中,我们描述了针对以下类型的带有键控更新函数(定义1):

定义3(带布尔键控反馈函数的KSG)

考虑KSG和KUF的定义1.让Upd表示update函数的布尔组件函数Upd,这是Updk) = (Updk)).如果只有一个组件函数依赖于密钥,我们称之为带有布尔型KFF(键控反馈函数)的KSG。也就是说,有一个索引使所有其他组件的函数具有索引可以改写为Updk) =Upd).我们称之为\ (\ mathsf{乌利希期刊指南}_{我^ *}({k},{圣})\)键控反馈函数,表示为fUpdk).

当我们说到“反馈值”时,我们指的是键控反馈函数的输出fUpdk).文献中具有布尔KUF的KSGs最突出的例子是Sprout [27Plantlet [421)(见教派。3.2.3).尽管对密码斯普劳特的几次攻击已经被公布[50203355387593,只有很少人知道底层方法的安全性(参见Sect。3.2.1之上一般)。下面,我们将解释唯一存在的通用攻击[314这意味着这种密码的设计标准。

这种攻击是一种猜测并确定攻击,它基于从观察到的输出猜测内部状态。它的效率很大程度上依赖于猜测能力,我们下一个定义是:

定义4

对于给定的KSG,一个布尔KFF具有σ-bit内部状态,aκ位键,f Upd作为其布尔键控反馈函数,我们定义平均的猜测能力作为
$ ${对齐}\ \ displaystyle \开始公关\ nolimits_g = \压裂{1}{2}+ 2 ^{-{\σ}}\ sum_{{圣}}\左| \压裂{\ # \ {{k}: f {\ mathsf{乌利希期刊指南}}({k},{圣})= 0 \}}{2 ^ \ kappa} - \压裂{1}{2}\ |。\{对齐}$ $

平均猜测能力只是表明我们能够多么准确地猜测反馈值fUpdk),当我们知道内部状态,但我们不知道关键。下面的攻击[314适用于…的情况\(\Pr \nolimits _g >1/2\)这最终使我们能够制定一个必要的设计标准。

算法1内部状态恢复

攻击的核心是一个内部状态恢复算法(参见算法1).它测试,对于给定的内部状态,是否可以持续产生观察到的输出位。为此,它为下一个状态生成反馈值(布尔键反馈函数的输出),通过从输出中确定它们(如果可能的话),或者先检查然后猜测它们。它由两部分组成:通过算法确定反馈值2并通过算法检测候选状态,如果状态存活则猜测反馈值3..很明显,算法2为每个时钟只产生一个反馈值。同样,算法3.首先检查候选状态是否可以产生输出。因此,它存活的概率是1 / 2,存活的国家将有两个继任者。因此,无论是算法2和算法3.将传播要检查的状态的总数。

算法二确定流程

每个候选状态都有连续时钟的后继器和一组由算法产生的反馈值1.另一方面,我们为每个反馈值计算不匹配的数量。如果反馈值不是通过其内部状态获得的建议值,我们就说反馈值不匹配。如果给定状态的反馈值等于0(或1)的概率大于1 / 2,那么0(或1)将是该状态的建议值。

假设我们为发电机计时α的怪兽检查每个状态的步骤。然后,我们粗略地期望α的怪兽∕不匹配的国家和\(\alpha _{ter} (1-\Pr \nolimits _g)\)不匹配正确的状态。这为我们提供了一个标识符,可以在不知道密钥的情况下恢复正确的状态。我们设置一个阈值α用力推之间,\(\alpha _{ter} (1-\Pr \nolimits _g)\)而且α的怪兽∕2,简单地消除不匹配数目超过的州α用力推.对于一个精心选择的对,我们期望所有错误的内部态都被消除(α的怪兽α用力推),只有正确的状态才有望存活下来。定理1建议适当的值α的怪兽从而获得一个给定的成功率。然后在算法中对阈值进行相应的修正1在第三行。

算法3检验和猜测过程

算法性能1这在很大程度上取决于我们应该进一步消除所有错误的状态而不丢失正确的状态。这是由算法的成功率决定的,而算法的成功率又由猜测能力决定(定义4),如下定理所述1314]:

定理1

\(\Pr \nolimits _g >1/2\) 为给定KSG的猜测能力,其中布尔KFF具有内部状态大小σ。对于一个给定的0 << 1如果α 的怪兽 大于等于什么
$ ${对齐}\ \ displaystyle \开始压裂{1}{(2 \公关\ nolimits_g 1) ^ 2} \左\√{2 \ ln \ε}+ \ sqrt {2 \ ln 2 \ cdot({\σ}1)}\右)^ 2 \{对齐}$ $

然后在算法中计算攻击的成功率1至少是1−虚警次数小于1次。

斯普劳特的平均猜测能力为0.75。因此,在不知道密钥的情况下,可以通过消除大约122个时钟内的错误状态来恢复正确的状态[314].检查约240状态(称为“弱状态”,在预计算阶段加载到表中),可以在大约2分钟内恢复密钥38加密(314].另一方面,算法1就变得不可行\(\公关\长成具_g \)方法1∕2。植株(教派。3.2.3)的猜测能力是1∕2,所以算法1不适用于Plantlet。综上所述,上述攻击隐含了一个新的安全准则:具有布尔KFF的KSG的反馈函数的猜测容量应为1 / 2,以避免绕过密钥的状态恢复攻击。

3.4采用谐音编码的随机加密

3.4.1背景

在[503],讨论了几种加密技术中包括随机性的方法,主要是在块密码和流密码的背景下。描述了随机加密[503]是一种对消息进行加密的过程,方法是从当前加密密钥下对应消息的一组密文中随机选择一个密文。

谐音编码被引入[249]作为一种源编码技术,它将具有任意频率分布的消息符号流转换为具有相同频率的唯一可解码的符号流。通用谐音编码方法[397]是基于嵌入随机位的源信息向量的可逆变换,这种方法不需要源统计信息的知识。通过将码字传递给解码器(逆变器),然后丢弃随机位,可以在不知道随机位的情况下,从谐音编码器输出中恢复源信息向量。

许多随机加密技术已被报道:在[234,提出并分析了一种概率私钥加密方案LPN- c,该方案的安全性可以降低到LPN问题的难度。[报道了一种采用纠错编码和对密钥流进行一定的加性噪声退化的流密码设计方法。201].在加密之前对消息进行编码,这样在对无噪声密钥流序列和密文进行mod 2相加之后,解码就可以提供正确的恢复。该方法对许多通用密码分析技术的阻力也被考虑在[201].为了提高以下分组加密方案的安全性,研究了随机性和专用编码的联合使用:(1)在[418],其中基本密钥流生成器的安全性通过采用基于随机位嵌入的特殊谐音编码得到增强;(2)在413419]和[414]采用随机性和专用编码提高了伪随机向量发生器的安全性;(3)在322]和[577信道编码是为了提高在密文反馈(CFB)模式下工作的DES分组密码的安全性。此外,随机加密的某些问题在[321570]和[313].

3.4.2加密和解密

本节所述的密码技术源自[322414418,与[中提出并讨论的随机加密方案相对应。452].该设计假设纯随机性来源的可用性(例如,作为一个有效的硬件模块),并且适当的纠错编码(ECC)技术是可用的。这种可用性意味着,在适当的场景中,随机源和ECC的实现复杂性并不意味着沉重的实现开销。

该方案采用了谐音方法,其目的与该编码技术设计的目的不同。其主要目的不仅是源消息向量的随机化(同音编码的目标),也不是没有密钥的保密(窃听信道编码的目标),而是通过利用同音或窃听信道编码的底层特征来增强某些加密方案的加密安全性。其目标是通过使用专用编码方案来增强用于加密的加密密钥流生成器的安全性,其中码字提供用于加密的密钥流向量的附加“屏蔽”。图中加密方案。3.2对编码块和密钥流生成器的输出进行模2相加,不仅可以认为是用秘密密钥生成的向量来“屏蔽”消息向量,还可以通过随机映射信息向量来屏蔽密钥流向量。
图3.2

在编码-加密范式中安全增强的随机加密模型:上部显示发送端,下部显示接收端[452

我们假设图。3.2采用下列编码算法的拼接:(1)一种通用的谐音编码[397,它执行以下映射{0,1}→{0,1}<,以及(2)执行{0,1}的线性块纠错码。→{0,1}n<n,该算法在已知比特互补概率的二进制对称信道上提供可靠的通信。请注意,任何合适的二进制线性分组码设计为工作在具有交叉概率的二进制对称信道上p可以使用。在文献中有很多这样的编码方案,可以选择一种最适合特定实现场景(面向硬件或软件)的编码方案。我们考虑如图所示的通信系统。3.2一些消息\(mathbf {a}=[a_i]_{i=1}^l \in \{0,1\}^l\)通过噪声信道发送到发射机,并在发射机和接收机进行以下操作。

在发射机

为保证通信可靠,采用线性纠错编码器C ECC(⋅),表示带-位消息到的码字n>位,使用一个×n二进制代码生成矩阵G ECC.一个同音异义的编码器C H(⋅)加在C ECC(⋅),需要使用矢量\ (\ mathbf{你}= [u_i] _ {i = 1} ^{马丁}\ \{0,1 \}^{马丁}\)纯粹的随机性,也就是每一个u 是实现一个随机变量吗U 与分布公关(U = 1) = Pr(U = 0) = 1∕2的编码C H一个||u)可以由一个×二进制矩阵G H这样
$ $ \ displaystyle \{对齐}开始C_H (\ mathbf{一}| | \ mathbf{你})= [\ mathbf{一}| | \ mathbf{你}]{\ mathbf {G}} _H, ~ {\ mathbf {G}} _H左= \[开始\{数组}{1}{\ mathbf {h}} _1 \ \ \ vdots \ \ {\ mathbf {h}} _l \ \ {\ mathbf {G}} ^ C数组{}\ \端]\{对齐}$ $
(3.2)
在哪里G C是一个(l的生成矩阵(l)线性纠错码C,h 1h 2、……h ll来自{0,1}的线性无关的行向量C
我们得到一个联合编码一个∈{0,1}lC ECCC H一个||u)∈{0,1}n,也可以写成
$ $ \ displaystyle \{对齐}开始C_ {ECC} (C_H (\ mathbf{一}| | \ mathbf{你}))= C_ {ECC} ([\ mathbf{一}| | \ mathbf{你}]{\ mathbf {G}} _H) = [\ mathbf{一}| | \ mathbf{你}]{\ mathbf {G}} _H {\ mathbf {G}} _ {ECC} = [\ mathbf{一}| | \ mathbf{你}]\ mathbf {G}{} \{对齐}$ $
(3.3)
在哪里G=G H G ECC是一个×n在发射机处包含两个连续编码器的二进制矩阵。

发送的码字最终是加密版本yCECCCH一个||u)由y=yk) =CECCCH一个||u)⊕x在哪里\ (\ mathbf {x} = \ mathbf {x} (\ mathbf {k}) = (x_i) _ {i = 1} ^ n \ \ {0,1 \} ^ n \)是加密所需的伪随机向量,由密钥流生成器生成,或由在密码反馈模式(CFB)下工作的分组密码生成,如[322]和[577].注意重要的依赖关系x=xk)k.还需要注意的是,为了说明的简单性,所使用的数据用于生成伪随机向量x,这是公开的(比如公共种子和同步参数),但没有显式地显示。最后,该模型包含了二值向量拼接的假设x以伪随机二进序列的形式出现,并且从统计学的角度来看与随机二进序列是不可区分的。

在接收方

用噪声矢量相加的方法对噪声信道进行建模\ (\ mathbf {v} = [v_i] _ {i = 1} ^ {n} \ \ {0,1 \} ^ n \),每个v是实现一个随机变量吗V与公关(V= 1) =p和公关(V= 0) = 1p.接收方获得z=zk) =yv=CECCCH一个||u)⊕xv从解密开始y= (CECCCH一个||u)⊕xv⊕)x=CECCCH一个||u)⊕v.然后他首先解码CH一个||u).在成功解码的情况下,他进行计算一个使用\ (C_H ^ {1} \)告诉传送器他可以解码。否则,他会要求发射机重发。这假设在接收器和发射器之间无噪声反馈。

3.4.3安全评估

信息理论安全

在[452,从信息论的角度对上述随机加密方案模型进行了研究。目的是分析窃听编码在密钥方面提供的安全增强k模糊性,也就是说,给定对手在被动或主动攻击期间所能收集到的所有信息,他对密钥所面临的不确定性。该分析通过严格下界(引理1和2在[452)和渐近值(定理1和2在[452)密钥的模糊性。这种增强的安全性的代价只是略微增加了实现的复杂性和通信开销。然而,它也显示,如果同一个密钥使用太长时间,对手可能会收集足够大的样本进行离线密码分析。不确定性随后降低到零。然后开始一个体制,其中需要计算安全分析来估计对密钥恢复的抵抗,这是当前论文的动机。

计算复杂度的安全

Mihaljević和Oggier [420]提出了在选择明文攻击场景中考虑的技术的安全评估,这表明在平均和最坏的情况下,计算复杂度安全都低于相关的LPN(从噪声宇称学习)复杂度。这为构造一个专用的谐音编码器提供了指导方针,该编码器可以在给定的编码开销下最大化底层LPN问题的复杂性。

请注意

回想一下,在选择的明文攻击(CPA)场景中,声称方案在信息理论意义上是安全的意味着,即使是拥有无限资源来恢复密钥的攻击者,在考虑的评估场景中,也面临着用于加密的密钥的完全不确定性,即,真实密钥的一组同样可能的候选密钥将存在。另一方面,一个加密方案在计算复杂性意义上是安全的声明意味着:尽管密钥可以在CPA场景中恢复,因此不可能声称信息理论的安全性,但这种恢复的计算复杂性就像解决一个属于一类已证明的困难问题一样困难,就像解决LPN问题一样。

3.5结论与未来发展方向

我们介绍了一些当代对称加密技术在设计和安全性评估方面的一些进展,这些技术在实现/执行复杂性和所需的安全性之间提供了良好的权衡。

一方面,我们演示了使用带有键控更新功能的键流生成器以更小的硬件成本提供相同的安全级别。特别地,我们已经展示了被认为是由状态大小造成的安全限制可以得到改善,从而在硬件需求和安全性之间提供更好的权衡。在另一个方向上,我们描述了使用谐音编码增强某些随机对称加密方案的安全性。

此外,我们还讨论了对所考虑的加密方案进行安全评估的某些通用方法。基于密钥更新函数的加密方案针对专门的猜测和确定攻击进行了评估。采用通用的信息论和计算复杂度方法对随机加密方案进行了评估。我们认为,这一领域还有很大的进一步工作空间,应该研究其他创新方案。我们发现使用键控更新函数和编码理论的结果是设计高级加密方案的重要思路,我们计划在不久的将来进一步探索这些方法。

脚注

参考文献

  1. 14.
    Martin Ågren, Martin Hell, Thomas Johansson和Willi Meier。Grain-128a:带有可选身份验证的新版本Grain-128。国际无线与移动计算杂志5(1): 48-59, 2011年。CrossRef谷歌学术搜索
  2. 27.
    frederick Armknecht和Vasily Mikhalev。关于具有更短内部态的轻量级流密码。编辑Gregor Leander,快速软件加密- FSE 2015,第9054卷计算机科学课堂讲稿, 451-470页,伊斯坦布尔,土耳其,2015年3月8-11日。beplay登入施普林格。谷歌学术搜索
  3. 47.
    史蒂夫·巴贝奇。改进了对流密码的“穷举搜索”攻击。在欧洲安全和探测公约, 161 - 166页。专业,1995年5月。谷歌学术搜索
  4. 50.
    Subhadeep Banik。一些关于Sprout的研究结果。在INDOCRYPT 2015,第9462卷信号, 124 - 139页。beplay登入施普林格,2015年。谷歌学术搜索
  5. 91.
    亚历克斯·比柳科夫和阿迪·沙米尔。流密码的密码分析时间/内存/数据权衡。编辑冈本达明说,密码学进展- ASIACRYPT 2000, 1976年计算机科学课堂讲稿,第1-13页,日本京都,2000年12月3-7日。beplay登入施普林格。谷歌学术搜索
  6. 201.
    İmran Ergüler和Orhun Kara。基于密钥流的密码系统的一种新方法。在国资委2008《车间记录》, 205 - 221页。SASC, 2008年。谷歌学术搜索
  7. 203.
    穆罕默德·埃斯金和奥尔洪·卡拉。利用TMD权衡攻击的完全萌芽的实用密码分析。在密码学的选择领域- SAC 2015,第67-85页,2015。谷歌学术搜索
  8. 234.
    亨利·吉尔伯特,马修·杰比·罗比肖,还有雅尼克·瑟林。如何与LPN问题加密。在国际自动机、语言和程序设计研讨会, 679 - 690页。beplay登入施普林格,2008年。谷歌学术搜索
  9. 237.
    乔帆Dj。Golic。对所谓的A5流密码进行密码分析。在编辑沃尔特·福米的文章中,密码学进展- EUROCRYPT 97的第1233卷计算机科学课堂讲稿, 239 - 255页。beplay登入施普林格,1997年。谷歌学术搜索
  10. 249.
    Christoph G·哈。同音字编码的通用算法。在密码技术的理论与应用研讨会, 405 - 414页。beplay登入施普林格,1988年。谷歌学术搜索
  11. 265.
    马丁·赫尔、托马斯·约翰逊、亚历山大·马克西莫夫和威利·迈耶。流密码的颗粒族。在新的流密码设计, 179 - 190页。beplay登入施普林格,2008年。谷歌学术搜索
  12. 313.
    Orhun Kara İmran Ergüler和Emin Anarim。一种新的密钥流生成器的信息速率与状态大小之间的安全关系。土耳其电气工程与计算机科学杂志24(3): 1916 - 1929年,2016年。CrossRef谷歌学术搜索
  13. 314.
    Orhun Kara和Muhammed F. Esgin。带键控更新的轻量级流密码的分析。IEEE反式。电脑, 68(1): 99 - 110年,2019年。MathSciNetCrossRef谷歌学术搜索
  14. 321.
    叶海亚S Khiabani和魏双庆。一种实现指数衰减信息泄漏的香农密码和隐私放大联合方法。信息科学, 2016年357:6-22。谷歌学术搜索
  15. 322.
    叶海亚S Khiabani,魏双庆,袁健,王健。利用故意噪声增强分组密码系统的保密性。IEEE信息取证与安全汇刊7(5): 1604 - 1613年,2012年。谷歌学术搜索
  16. 355.
    Virginie Lallemand和María Naya-Plasencia。全芽的密码分析。在密码学进展- CRYPTO 2015的第9215卷信号, 663 - 682页。beplay登入施普林格,2015年。谷歌学术搜索
  17. 387.
    Subhamoy Maitra, Santanu Sarkar, Anubhab Baksi和Pramit Dey。从Sprout的状态信息中恢复密钥:用于密码分析和故障攻击。密码学电子印刷档案,报告2015/236。谷歌学术搜索
  18. 397.
    詹姆斯L梅西。源编码在密码学中的一些应用。新兴电信技术学报5(4): 421 - 430年,1994年。谷歌学术搜索
  19. 413.
    J Mihaljevic踩踏。一种基于伪随机性、随机性和编码的流密码框架。在利用纠错码技术增强密码原语, 117 - 139页。IOS出版社,阿姆斯特丹,荷兰,2009年。谷歌学术搜索
  20. 414.
    踩踏J Mihaljević。一种采用专用编码的轻量级加密方法。在全球通信会议,2012年, 874 - 880页。IEEE 2012。谷歌学术搜索
  21. 418.
    Miodrag J Mihaljević和Hideki Imai。一种基于随机和秘密数据联合计算的流密码设计方法。计算, 85(2): 153 - 168年,2009年。谷歌学术搜索
  22. 419.
    Miodrag J Mihaljević和Hideki Imai。利用谐音编码改进基于lpn问题的某些加密方法。在对称密钥加密工作坊,SKEW,页16-17,2011。谷歌学术搜索
  23. 420.
    Miodrag J Mihaljević和Frédérique Oggier。一类随机加密的安全评估和设计元素。专业信息安全2019年,13(1):36-47。谷歌学术搜索
  24. 421.
    瓦西里·米哈列夫、弗雷德里克·阿姆克内希特和克里斯蒂安Müller。对连续访问非易失密钥的密码。对称密码学IACR事务, 2016(2): 52 - 79, 2016。http://tosc.iacr.org/index.php/ToSC/article/view/565谷歌学术搜索
  25. 422.
    瓦西里·米哈列夫、弗雷德里克·阿姆克内希特和克里斯蒂安Müller。对连续访问非易失密钥的密码。对称密码学IACR事务, 2016(2): 52 - 79, 2017。CrossRef谷歌学术搜索
  26. 452.
    Frédérique Oggier和Miodrag J Mihaljević。一类随机加密方案的信息论安全性评估。IEEE信息取证与安全汇刊9(2): 158 - 168年,2014年。谷歌学术搜索
  27. 503.
    罗纳德·L·里维斯特和艾伦·T·谢尔曼。随机加密技术。在密码学的发展, 145 - 163页。beplay登入施普林格,1983年。谷歌学术搜索
  28. 570.
    王健,穆佳琪,魏双庆,江春晓,Norman C Beaulieu。分组密码系统中解密错误的统计表征。IEEE通信汇刊, 63(11): 4363 - 4376年,2015年。谷歌学术搜索
  29. 577.
    魏双清,王健,尹如明,袁健。存在错误密文的块加密系统中安全性与性能的权衡。IEEE信息取证与安全汇刊8(4): 636 - 645年,2013年。CrossRef谷歌学术搜索
  30. 593.
    张斌,龚欣欣。另一种对类似sproutstreamcipher的折衷攻击。在ASIACRYPT 2015,第9453卷信号, 561 - 585页。beplay登入施普林格,2015年。谷歌学术搜索

版权信息

©作者(s) 2021

开放获取本章根据知识共享署名4.0国际许可协议(http://creativecommons.org/licenses/by/4.0/),它允许以任何媒介或格式使用、共享、改编、分发和复制,只要您适当地注明原作者和来源,提供创作共用许可的链接,并说明是否进行了更改。

本章中的图像或其他第三方材料均包括在本章的创作共用许可中,除非材料的信用额度另有说明。如果材料不包括在本章的创作共用许可中,并且您的预期使用不被法定法规允许或超过允许的使用,您将需要直接获得版权持有人的许可。

作者和联系

  1. 1.曼海姆大学曼海姆德国
  2. 2.数学研究所塞尔维亚科学和艺术学院贝尔格莱德塞尔维亚
  3. 3.数学系伊兹密尔理工学院伊兹密尔火鸡

个性化推荐