当前位置:首页 > 威海新闻网财经 > 正文

邢台新闻快报:密码学原语若何应用?剖析密码学特有的数据编解码

隐私珍爱方案的工程实现,若何关联到学术论文中天书一样平常的公式符号?密码学工程中,有哪些特有的数据编解码方式、存在哪些认知误区和注意事项、需要战胜哪些限制和挑战?

作为支持隐私珍爱方案的焦点手艺,若何运用数据编解码,将密码学论文中抽象的数学符号和公式具象成营业中详细的隐私数据,是学术功效向产业转化需要跨过的第一道门槛。

学术论文中所使用的数学语言与工程中所使用的代码编程语言,差异非常大。不少在数学上容易界说的属性和历程,若要在工程上提供有用实现,颇具挑战。实现欠妥的话,甚至可能损坏学术方案中的平安假设,最终导致方案失效、隐私数据泄露。

常用的密码学算法拥有多种尺度化编解码方式,其应用到隐私珍爱方案,可以划剖析决响应问题。以下将逐一睁开。

营业应用难题:类型不匹配

工程实现之道:数据映射

在现实营业中,隐私数据可以表现为五花八门的数据类型,这些类型通常不知足密码学协议中特定的类型要求,无法被直接使用,这就是我们需要解决的第一个问题:数据类型不匹配。

例如,营业系统中,买卖的金额是一个长整型整数,而常见的密码学算法可能要求输入为有限循环群中的一个元素,若是直接使用长整型整数的值,可能该值并不在对应的有限循环群中;在椭圆曲线系统中,单个数值还需要转化成曲线上的点坐标,需要将一个数值转化成两个数值的坐标形式。

针对以上问题,密码学工程实现中,一样平常通过数据映射举行类型转换处置。详细而言,是将用户的隐私数据,通过一定的方式,变换到详细密码协议要求的数据类型。

下面以密码学中的椭圆曲线(Elliptic Curve)加解密为例,先容一种常见的数据映射方式。

椭圆曲线可以简朴理解为界说了一个特定点的聚集,例如下面这种公式界说了对照常见的一类椭圆曲线:

其中知足公式确立的点(x, y)都在椭圆曲线上。椭圆曲线密码通过在限制的点集上界说相关的点运算,实现加解密功效。

在椭圆曲线加解密历程中,首先面临的问题是『若何将待加密的数据嵌入到椭圆曲线上,通过点运算来完成加密操作』。这需要将明文数据m映射到椭圆曲线上的一个特定点M(x, y)。

数据编码方式是将明文数据m通过进制转换到椭圆曲线上某点的x坐标值,然后盘算m^3 am b的完全平方数,获得y,这样就将m转换到了点M(x, y)。

数据解码方式对照直白,解密还原出明文数据点M之后,读取M的x坐标值,再通过进制转换还原为明文信息m。

然而,密码椭圆曲线是界说在有限域上的,即曲线上是一个离散的点聚集。这样会导致盘算完全平方数不一定存在,即x没有对应的y在椭圆曲线上,那么,部门明文数据无法转换到椭圆曲线上的点,从而导致部门数据无法被直接加密。

在现实工程化的方案中,为了保证椭圆曲线加解密的可用性,会加入其它更庞大的扩充编码机制,以应对明文数据转换失败的情形。

一样平常而言,密码学协议中所界说的类型要求越多,数据映射的工程实现也会越庞大,若是缺乏高效的数据编解码算法和配套的硬件优化支持,即便密码学协议的理论盘算庞大度再低,最终也是难以实用化。

详细的数据映射涉及到许多流程细节和算法参数,一旦存在细小的差异,由不匹配的编码算法所发生的数据,都市极大概率无法解码,导致隐私数据丢失、营业中止。

以是,在详细工程实现时,数据映射需要严酷根据已有工程尺度的实现要求,以国密SM2为例,可以参考GM/T0009-2012《SM2密码算法使用规范》、GM/T0010-2012《SM2密码算法加密署名新闻语法规范》等一系列相关手艺尺度。

营业应用难题:数据太长

工程实现之道:数据分组

除了类型不匹配,密码学协议中使用的焦点算法对输入的数据长度往往也有一定要求。但在现实应用中,需要处置源自差别营业需求的隐私数据,难以限制其长度,难免会泛起数据长度超出焦点算法处置长度的情形。

例如,对称加密AES算法AES-128、AES-256,解释其使用的密钥位数划分是128位和256位,但加密历程中单次举行焦点密码运算时处置的数据牢固为128位。

针对以上问题,密码学工程实现中一样平常通过数据分组举行处置,即化整为零,将长数据切分为多个较短且相符长度要求的数据块。

典型的例子是分组加密,例如AES、DES等。分组加密顾名思义就是,将输入的数据分组为牢固长度的数据块,然后以数据块为单元作为焦点密码算法的处置单元举行加解密处置。

为了在数据分组之后,依旧保持方案的平安性,数据分组手艺不仅仅是简朴地对数据举行划分,还需要引入分外的流程操作。

下面以AES 256位密钥加密为例,先容其中典型的分组加密模式ECB、CBC和CTR。

  ECB模式 (Electronic Code Book)

ECB是最简朴的分组加密模式,也是不平安分组模式的典型。

假定有1280位待加密的数据,ECB模式将其平均分为10个128位数据块。每个数据块使用相同的密钥单独加密天生块密文,最后块密文举行串联天生最终的密文。 

ECB模式的加密特点是在相同的明文和密钥情形下,其密文相同,因此泄露了明文数据与密文数据之间的关联性,不推荐用于任何隐私珍爱方案中。

  CBC模式 (Cipher Block Chaining)

CBC模式通过前后数据块的数据勾通制止ECB模式的瑕玷。

与ECB模式类似,CBC模式中,每个明文块先与前一个密文块举行异或后,再举行加密。在这种方式中,每个密文块都依赖于它前面的所有明文块。同时,为了保证每个数据密文的随机性,在第一个块中需要使用一个随机的数据块作为初始化向量IV。

CBC模式解决了ECB模式的平安问题,但也带来了一定的性能问题。其主要瑕玷在于每个密文块都依赖于前面的所有明文块,导致加密历程是串行的,无法并行化。

CTR模式 (CounTeR)

CTR模式的泛起让分组加密更平安且并行化,通过递增一个加密计数器以发生延续的密钥流,使得分组密码变为流密码举行加密处置,平安性更高。

CTR加密和解密历程均可以举行并行处置,使得在多处置器的硬件上实现高性能的海量隐私数据的并发处置成为了可能,这是现在最为推荐的数据分组模式。

密码学协议中的数据分组与传统大数据处置中的数据分组有很大区别。理想情形下,数据分组不应该弱化隐私珍爱的强度,不能为攻击者获取未授权的信息提供可乘之机。这往往会涉及经心的数据分组方案设计,不能简朴看作是数据分块之后的批处置。

营业应用难题:数据太短

工程实现之道:数据填充

数据太长是个问题,数据太短往往也是问题。

在以上分组处置的历程中,最后一个数据块中数据长度不足,密码学协议中的焦点算法也可能无法事情。

假定一个密码协议处置的数据块长度要求为6字节,待加密的隐私数据长度为7字节。用两个十六进制数代表一个字节数据,其示例如下:

b1 b2 b3 b4 b5 b6 b7

7字节长于数据块的处置长度6字节,因此该数据将被分组,且可以分为两个数据块。分组示例如下:

第一个数据块:b1 b2 b3 b4 b5 b6

第二个数据块:b7

其中第一个数据块恰好是6个字符,第二个数据块只有1个字节,这个数据块就太短了,不知足处置要求。

针对以上问题,密码学工程实现中一样平常通过数据填充举行处置,即将短的数据块填充补位到要求的字节长度。示例中第二个数据块需要举行数据填充,为其补上缺少的5个字节。 

与数据分组类似,这里的数据填充也不是通俗的数据填充,也应该知足一定的平安性要求。最常用的数据填充尺度是PKCS,7,也是OpenSSL协议默认接纳的数据填充模式。

  PKCS,7填充

需要填充的部门都纪录填充的总字节数。应用于示例中第二个数据块,则补5个字节都是5的数据,其填充效果如下:

b7 05 05 05 05 05

这里还存在一个问题:若是一个隐私数据的最后一个分组,恰好就是一个相符其填充规则的数据,在事后提取原始数据时,若何分辨是原始数据照样填充之后的数据?

避开这种歧义情形的关键是,任何长度的原始数据,在最后一个数据块中,都要求举行数据填充。

值得注意的是,对隐私数据加密时,按特定填充模式举行处置,那么填充的数据也将被加密,成为加密前明文数据的一部门。解密时,其填充模式也需要和加密时的填充模式相同,这样才可以准确地剔除填充数据,提取出准确的隐私数据。

在隐私珍爱方案的编解码历程中,以上提到的数据映射、数据分组、数据填充,都是保证隐私数据平安的需要环节。此外,在特定的合规要求下,现实营业系统还需要引入更多的相关数据预处置环节,如数据脱敏、数据认证等,使得数据在进入密码学协议前,尽早降低潜在的隐私风险。

正是:理论公式抽象赛天书,工程编码巧手点迷津!

学术论文的公式符号与隐私珍爱方案的可用工程实现之间,存在一条不小的手艺鸿沟,而密码学特有的数据编解码,正是我们确立桥梁实现学术功效产业转化的基石。

平安高效的数据编解码手艺,对于处置以5G、物联网为爆点的海量隐私数据应用意义重大,是隐私数据收支营业系统的第一道防线,其重要性不亚于其他密码学原语。

领会完数据编解码之后,接下来将进入详细应用相关的密码学原语,欲知详情,敬请关注下文剖析。

,

Sunbet

www.0379st.com信誉来自于每一位客户的口碑,Sunbet贴心的服务,让你尊享贵宾通道,秒速提现,秒速到账,同行业中体验最佳。

热点网版权保护: 转载请保留链接: http://www.sunbetweihai.cn

博客主人

推荐文章

热门文章

随机文章