【密码学】基于编码的密码学学习笔记(八) 线性码的距离

admin 2025年6月3日10:13:24评论26 views字数 1428阅读4分45秒阅读模式

【密码学】基于编码的密码学学习笔记(八) 线性码的距离

【密码学】基于编码的密码学学习笔记(八) 线性码的距离

在上一篇的文章当中,我们讲解了如何利用编码来设计一个加密体系,但是目前,我们还遗留了一些问题,首先,我们先来看一下对于线性码,如何计算计算它的距离。

知识回顾

首先,我们还是先来简单回顾一下,有关于编码距离的知识。

汉明距离

「比较两个」长度相同的二进制序列(我们称为“码字”),看看它们有多少个位置上的数字不一样。这个不一样的位置数量,就是它们的「汉明距离」

线性码的最小距离d

一个线性码包含许多有效的码字。线性码的最小距离d是指在这个码中,「所有不同码字对之间汉明距离的最小值」

距离的计算

对于一般的编码来说,距离的计算是一个比较困难的过程,比如,下面这个编码。

【密码学】基于编码的密码学学习笔记(八) 线性码的距离

我们,如果需要来计算他们之间的距离,我们只能两两的距离做一个计算,然后找到他们最短的一个距离。

可以发现,对于上面这个编码,如果要计算距离,我们需要比较的次数可以根据组合数来计算。

可以发现,比较的次数还是非常多的,我们以之前用过的汉明码为例,码字的数量是个,因此,如果我们要挨个比较,我们需要比较

次,显然,随着码字数量的增加,这个方案来计算,显得不是特别的优雅。

线性码的特点

我们考虑,线性码的特点,也就是,在线性组合之后,依然是一个码字,因此,我们想要计算一个线性码的最短距离,我们只需要枚举所有的码字即可,因此,对于上面的汉明码的例子,我们需要计算的次数仅仅为

但是,这个方案,对于一般的编码来说,还是可以用的,比如对于一个字节的编码,但是这种方案在k特别大的时候,计算的复杂度还是非常高的,因此我们需要找到一个方案来快速的计算其距离。

校验矩阵计算法

在之前的文章当中,我们学习了在线性码当中的一个非常重要的概念,也就是校验矩阵,这里,我们来看一个定理。

令H是线性码的校验矩阵,则如果对于H中每s-1列线性无关。

那么,我们来证明一下吧,不感兴趣的读者,可以自行跳过蛤。

是H的最小线性相关列组(),也就是存在不全为0的系数使得

因此,我们可以构造码字,其中(若)否则,根据由于

因此,我们有,且,由于上文所说的线性码的特点,我们有

然后,我们令,并且,根据校验矩阵的性质,我们有

这里,必定有列线性相关,因为和为0,因此我们有,综上所述,我们有.

样例

接下来,我们来看一个例子,还是用之前文章当中的例子来讲解,对于汉明码,我们有生成矩阵

以及他的校验矩阵

从上面,我们不难看出,对于汉明码,他最小的线性相关的列数为3,因此.

总结

本文,我们讲解了如何来计算线性码距离的一个方案,由于线性码的特殊性,对于一些线性码,我们还是有一定的方案来快速计算他的距离的,这对于后续我们设计基于编码的密码体系非常有用,好了,快乐的时光过得特别快,又到了说再见的时候了,咱们下次再见~~

参考资料

  1. https://en.wikipedia.org/wiki/Linear_code
  2. https://courses.smp.uq.edu.au/MATH3302/2010/files/codingnotes.pdf
  3. https://link.springer.com/chapter/10.1007/978-3-540-88702-7_4
  4. https://www.itsoc.org/sites/default/files/2021-11/Code-Based%20Cryptography.pdf

原文始发于微信公众号(Coder小Q):【密码学】基于编码的密码学学习笔记(八) 线性码的距离

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年6月3日10:13:24
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【密码学】基于编码的密码学学习笔记(八) 线性码的距离https://cn-sec.com/archives/4126078.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息