用于通过通信网络调整位串的方法与流程

文档序号:12375370阅读:487来源:国知局
用于通过通信网络调整位串的方法与流程

本发明涉及一种用于通过通信网络调整(Abgleich)位串(Bitfolge)的方法以及用于执行该方法的一种计算单元和一种计算机程序。



背景技术:

所谓的物联网、也就是说不同设备彼此间的联网越来越流行。物联网的主要应用之一是所谓的智能家居(Smart Home),在所述智能家居中,很多设备是电池驱动的并且通过无线电连接被接到中央站上,所述很多设备可以与所述中央站进行通信。

例如由用户预先已知的密钥可以被用于通过一般不被保护的无线电连接的安全的通信。产生对于两个用户共同的密钥的可能性例如是所谓的物理层密钥生成(PHYSEC,physical layer key generation),在所述物理层密钥生成中,根据在所述两个用户之间的无线电连接中的通道的物理特性来产生共同的密钥。这种方法例如从还没有被公开的申请号为10 2014 212 224的德国专利申请中是已知的。

在此,这种密钥还必须在所述用户之间被调整,以便消除可能的、在所述产生时形成的错误。



技术实现要素:

按照本发明,建议了具有独立专利权利要求所述的特征的一种用于通过通信网络调整位串的方法以及用于执行该方法的一种计算单元和一种计算机程序。有利的构建方案是从属权利要求以及随后的描述的主题。

本发明的优点

按照本发明的方法用于通过通信网络调整位串。在此,由第一用户对于多个、分别彼此不同的块中的每个确定纠错信息并且通过通信网络传送所述纠错信息,所述多个、分别彼此不同的块分别包括来自第一位串的预先确定的数目的、尤其是连续的位。在此,所述块中的每个都分别与所述块中的至少一个另外的块具有至少一个共同的位。

这导致了刚好在电池驱动的设备中是值得期望的微小的能量消耗。同样,因此尽可能少的信息通过密钥被泄露给第三方。

而且,这种位串例如也可以被划分成预先确定的数目的位的连续的块,也就是说该位串例如被划分成具有位0至7、8至15等等的块,其中接着针对所述块中的每个,奇偶校验位都被传送,以便可以识别位串中的错误。在此,如果例如错误在块中已经被识别出,那么有关的块接着可以再次被分成部分,并且针对所述两个、接着更小的块,奇偶校验位可以再度重新被传送。以这种方式可以总是进一步划分所述块。在此,然而,因为发送方必须知道接收方当前在哪个块中还具有错误,所以必须在两个用户之间交换很多信息。此外,因为利用奇偶校验位单独地只可以识别奇数数目的位错误,所以所述块也还必须多次被置换,例如其方式是利用每次置换来略过块的另一位。为此,例如伪随机数生成器是必要的。这导致了很高的传送量(Uebermittlungsaufkommen),在所述很高的传送量的情况下一方面很多能量被消耗,而另一方面很多信息通过位串被泄露。这样,例如根据奇偶检验位可能会被反算到可能的位串。这种用于调整位串的方法例如从Gilles Brassard和Louis Salvail的“Secret-key reconcilation by public discussion”(“In advances in Cryptology-EUROCRYPT’93”,第410-423页,斯普林格(springer)出版社,1994年)是公知的。

而现在,因为由于分别是彼此不同的两个块的至少一个共同的位而存在重叠,使得虽然所述两个块具有共同的位,然而没有共有所有的它们的位,所以利用所述按照本发明的方法可能的是放弃这种置换。以这种方式,在检验相应的具有分别所属的纠错信息的块时也可以识别如下错误:所述错误例如在只有一个块时在没有置换的情况下借助于具有奇偶校验信息(例如奇偶校验或者症候群(Syndrom))的位不可被识别。在此,全部要传送的数据量很小,尤其是明显小于在之前所提及的方法的情况下的数据量。例如,两个用户对用于两个用户一定必须相同地实施的这种置换的方案(Schema)的约定也不是必要的。同样,会不必要地消耗能量的伪随机数生成器例如也不是必要的。这有如下优点:一方面,少的能量被消耗,这尤其是对于电池驱动的设备是有利的;而另一方面,少的信息通过例如可以被用作两个用户的共同的秘密密钥的位串被泄露。

如果所述不同的块分别包括来自第一位串的预先确定的数目的连续的位,那么是有利的。因为例如可以选择在存储器中连续地存在的位并且不必考虑或者计算用于选出的模式或者方法,所以这使得能够特别简单地并且快速地选出用于相应的块的位。

优选地,被所有的块全部包括的位包括第一位串的所有的位。借此可以保证:另一用户的位串可以由该用户完整地检验或校正。

有利地,所述块具有起始位(也就是说块的第一位),所述起始位分别对应于第一位串的彼此不同的位。以这种方式可以实现:利用少的数目的块可以覆盖整个第一位串。由此,要传输的数据量也被减少。

如果两个、根据它们的相应的起始位连续的块的起始位分别被移动了第一位串的预先确定的数目的位,那么是有利的。以这种方式可以实现:一方面,在两个这种块之间的重叠尽可能地小;另一方面,但是也还存在足够的重叠,以便可以足够频繁地检查各个位。这样,可以进一步减少块的数目。

优选地,根据预先给定的方案单独地针对每对相互跟随的块来规定两个连续的块的起始位被移动的位的数目,或者所述位的数目对于每对都是相同的。这样,例如对于所述位串在其间被调整的两个用户从一开始变得已知的或者也可以例如在该调整开始之前被约定的方案可以规定如下数字序列:所述数字序列说明了两个连读的块的起始位的间距。这样,所述块例如可以交替地被移动了三个和五个位。通过事先约定的移动,在真正的调整期间不形成其它的通信花费。在准备阶段可以以简单的方式在所述用户之间商定用于调整的参数。而如果预先给定固定的数目(例如三),那么更少的计算花费是必要的,而且必要时也必然泄露更少的信息。

有利地,纠错信息根据预先确定的顺序通过通信网络被传送,所述预先确定的顺序尤其是由相应的块的起始位来规定。这样,各个纠错信息可以例如相继地、也就是说例如首先针对第一块、接着针对第二块、接着针对第三块等等地被传送。这使得能够简单地将接收方的纠错信息关联(Zuordnung)到该接收方的位串的块。

如果所述块分别包括的位的数目根据预先给定的方案针对每个块被规定或者对于每个块都是相同的,那么是有利的。这样,例如对于所述位串在其间被调整的两个用户从一开始变得已知的或者也可以例如在该调整开始之前被约定的方案可以规定如下数字序列:所述数字序列说明了所述块的长度。这样,所述块可以例如交替地长八位和十二位。而如果预先给定固定的数目(例如八),那么更少的计算花费是必要的,而且必要时也必然泄露更少的信息。在长度为256位的位串、八位的块长度和块的彼此为三个位的间距的情况下,得到数目为83的要传送的修正信息(其中块、例如第一块或者最后一块接着只具有为七个位的长度)。

优选地,通过通信网络所传送的纠错信息被第二用户接收,而且第二位串由所述第二用户依据所述纠错信息来检验和/或校正。如已经被提及的那样,可以实现简单地、快速地并且高能效地调整在通信网络中的两个用户之间的位串。在此,所述两个用户的位串、也就是说第一和第二位串一般具有相同数目的位,然而相应的位串的各个位彼此可以有偏差,这适合于校正。

有利地,纠错信息包括奇偶校验位、检验位、前向错误修正位和/或症候群位。例如在奇偶校验位的情况下可以被识别的是:在块中是否存在奇数数目的错误的位。在此,然而通过各个块的重叠也可以识别在只有块和奇偶校验位的情况下不能被识别的错误。在例如以校验和(Checksumme)为形式的检验位的情况下、在前向错误修正位或者症候群位的情况下,同样可以实现适当的检验和修正。症候群例如是代码与检查或者控制矩阵相乘,所述相乘的结果只与代码中的可能的错误有关而不与代码本身有关。因而这用于检验代码。

如果无线电网络(诸如WLAN网络、蓝牙(Bluetooth)等等)被用作通信网络,那么是有利的。因为无线电网络一般是很不安全的并且此外还经常例如被用于很多移动的、电池驱动的设备(在所述设备中低能耗的通信是有利的)的联网,所以本方法刚好在这里是有利的。例如,该通信网络可以在物联网、尤其是所谓的智能家居的范围内被使用。然而,易于理解的是:本方法在其应用中不限于这种通信网络,而是可以被用于所有可能的类型的网络,例如也可以被用于线缆连接的网络或者车辆中的网络或者诸如此类的。

优选地,第一位串的位的至少一部分被用作针对在通信网络中的安全的通信的共同的密钥。在此,在成功的调整的情况下,第二位串对应于第一位串。因为在本身是必要的调整的情况下很少的信息被泄露,所以本方法刚好对于产生共同的秘密密钥是有利的。在此,虽然整个位串例如可以被用作密钥,然而也可以在用作密钥时删去位串的一个或者多个开始和结束位,例如当比在剩余的位的情况下更不可能正确地报告开始和结束位时,那么这是有意义的,例如因为用于检验的块在那里不能与其它的块重叠。

有利地,根据通信网络、尤其是通信网络的现存于第一用户与第二用户之间的通道的物理特性来确定位串。为此,每个用户例如可以根据物理特性(诸如在两个用户之间的无线电网络的通道中的发送/接收功率)来产生位串。对此,所述发送/接收功率例如可以以确定的时间间距同时被所述两个用户中的每个确定,而且视强度(也就是说该发送/接收功率例如是否超过或者低于阈值)而定被关联给位1或者0。因为这种在两个用户之间的通道一般但是在两个方向上关于该通道的物理特性不是精确地相同的,所以这两个用户确定的位串彼此可以有偏差。那么,用于调整的本方法刚好是特别快速的、简单的和有能效的。

按照本发明的计算单元(例如(无线电)发送和接收单元)尤其是以程序技术方式被设立为执行按照本发明的方法。因此,第一用户或者第二用户尤其是也可以被构造为这种计算单元。

尤其是如果进行实施的控制设备还被用于其它的任务并且因而本来就存在,那么所述方法的以计算机程序的形式的实施方案也是有利的,因为这造成了特别低的成本。尤其是,用于提供计算机程序的适当的数据载体是磁的、光学的和电的存储器,诸如硬盘、闪存、EEPROM、DVD以及其它等等。通过计算机网络(因特网、内联网等等)下载程序也是可能的。

本发明的其它的优点和构建方案从描述和附上的附图得出。

附图说明

本发明依据附图中的实施例示意性地被示出并且在下文参考附图被描述。

图1示意性地示出了其中按照本发明的方法是可执行的通信网络。

图2以优选的实施形式示意性地示出了按照本发明的方法的流程。

具体实施方式

在图1中示意性地示出了其中按照本发明的方法是可执行的通信网络。所述通信网络100可以是无线电网络(例如WLAN网络)。

在此,通信网络100包括第一用户200和第二用户300,所述第一用户200和第二用户300通过通信网络100的通道110彼此可以进行通信。在此,第一用户200可以例如是智能家居网络的基站,所述智能家居网络相对应地具有发送和接收单元。

在此,第二用户300例如可以是智能家居网络中的用户,所述智能家居网络中的用户应该满足预先确定的功能(例如温度测量或者诸如此类的)。在此,第二用户300可以尤其是电池驱动的并且同样相对应地具有发送和接收单元。

在图2中以优选的实施形式示意性地示出了按照本发明的方法的流程。在此,第一用户200拥有第一位串201。第二用户300拥有第二位串301。在此,已经可以根据通信网络100的通道110的物理特性来产生所述两个位串201和301。在此,根据通道的物理特性产生这种位串已经在开头简短地被描述并且本身是已知的。因此,这不应该在下文进一步被解释。

在此,所述两个位串201和301可以优选地被用作针对在通信网络100中的第一用户200与第二用户300之间的安全的通信的共同的秘密密钥。为此,然而调整所述两个位串并且必要时也校正所述两个位串之一是必要的。为此,要留意的是:示例性地,位串301与位串201在左侧第四位有偏差。

现在,在步骤S1中,由第一用户200在位串201的(从左侧的)第一位处开始地选出具有数目示例性地为八的位的块211。

现在,对于所述块211或对于位串201的被所述块211包括的位,纠错信息221被确定。所述纠错信息例如可以是前向修正位、也就是说如下代码:借助于所述代码,所述块211的所基于的位的修正是可能的。

所述纠错信息221现在通过通信网络100被传送给第二用户300。第二用户300现在可以从他的第二位串301中在所述位串301的(从左侧的)第一位处开始地选出具有数目示例性地同样为八的位的块311。

在此,块311的位的数目和所述块311的关于位串301的起始位对应于块211的相对应的值。在此,该数目和该起始位例如可以从一开始对于所述两个用户都是已知的。

现在,第二用户300可以依据纠错信息221来检验他的块311。为此,例如可以使用具有长度为八和距离为三的所谓的汉明码(Hamming-Code)、即所谓的(8, 3)汉明码。利用这种代码可能的是纠正直至一个错误。

为此,第一用户200可以生成他的8位码字的症候群并且将该症候群寄送给第二用户300。在这种情况下,该症候群会是四位长并且包含这一个位错误存在于哪个位置上的信息,使得第二用户300利用所述纠错信息可以在第四位置、也就是说第四位上纠正他的块311。

现在,在步骤S2中,具有数目示例性地再度为八的位的块212被第一用户200从位串201中被选出。在此,块212的起始位沿着所述位串向右相对于前面的块、也就是说块211的起始位示例性地被移动了三个位。

现在,对于位串201的所述块212或对于位串201的被所述块212包括的位,纠错信息222被确定,这样如这已经也针对前面的块211被实现的那样。

现在,所述纠错信息222同样通过通信网络100被传送给第二用户300。现在,第二用户300可以从他的第二位串301中现在在所述位串301的(从左侧的)第四位处开始地选出具有数目示例性地同样为八的位的块312。

在此,块312的起始位相对于前面的块、也就是说块311的起始位被移动的位的数目对应于块212也相对于块211被移动的位的数目。在此,两个连续块的起始位被移动的所述数目例如可以从一开始对于所述两个用户都是已知的。

现在,第二用户300可以依据纠错信息222来检验并且校正他的块312。

现在,在步骤S3中,具有数目示例性地再度为八的位的块213被第一用户200从位串201中被选出。在此,块213的起始位沿着所述位串向右相对于前面的块、也就是说块212的起始位示例性地再度被移动了三个位。

现在,对于位串201的所述块213或对于位串201的被所述块212包括的位,纠错信息222被确定,这样如这已经也针对前面的块211被实现的那样。

现在,所述纠错信息223同样通过通信网络100被传送给第二用户300。如也在步骤S2的那样,用户300现在可以选出当前的块、即本块313,并且依据当前的纠错信息、即本纠错信息223检验并且校正所述当前的块、即本块313。

现在,该方法可以一直继续,直到整个位串301被检验并且被校正。接着,两个用户200和300具有相同的位串,而且可以将所述位串用作共同的密钥。

如果块311中的错误的数目不超过针对所选择的纠错信息特定的界限,那么只根据单个纠错信息来校正是可能的。但是,必要时可出现多个位错误,使得利用单个纠错信息的修正不再是可能的。

如果现在在这里所示出的方法中随后的位、也就是说块312的第6、7、8位是正确的,那么用户300可以纠正在重要的(fuehrend)位(例如312的前两位)中的错误。如果连续的块在没有重叠的情况下反而会被移动,那么在这种情况下整个块311或211必然会在调整之后被丢弃(由于缺少一致)。

而在所示出的方法中,在块311中的有错误的位的部分通过来自块312的相对应的、已经被纠正的位来替代之后,只有前三位必然会丢弃或者可替换地可以在修正块312之后试图重复修正块311。

在此,也可设想的是:只有位串的一部分被用作密钥。例如,前三位和后三位可以在应用位串时不加考虑地保持为密钥,所述前三位和后三位分别例如仅一次地形成纠错信息的基础并且因而是较不值得信任的。

易于理解的是:针对块的长度和块的间距的在例子中所选择的数目彼此也可以不同地并且甚至也单独地针对各个块或块的对来被选择。

还要留意的是:也可以交换所述两个用户的角色,也就是说检验并且校正了他的位串的第二用户例如可以是基站。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1