CN102317904A - 带有验证完整性的加密系统和方法 - Google Patents

带有验证完整性的加密系统和方法 Download PDF

Info

Publication number
CN102317904A
CN102317904A CN2010800059950A CN201080005995A CN102317904A CN 102317904 A CN102317904 A CN 102317904A CN 2010800059950 A CN2010800059950 A CN 2010800059950A CN 201080005995 A CN201080005995 A CN 201080005995A CN 102317904 A CN102317904 A CN 102317904A
Authority
CN
China
Prior art keywords
data
character
data entity
xor
compositor
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.)
Granted
Application number
CN2010800059950A
Other languages
English (en)
Other versions
CN102317904B (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.)
Fortress Applications Ltd
Original Assignee
Fortress Applications 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 Fortress Applications Ltd filed Critical Fortress Applications Ltd
Publication of CN102317904A publication Critical patent/CN102317904A/zh
Application granted granted Critical
Publication of CN102317904B publication Critical patent/CN102317904B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/04Masking or blinding

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明提供了一种数据完整性系统,其包括:发送器,发送器又包括TX虚拟随机函数生成器、具有发送选项的TX切换函数、以及TX合成器;在初始化阶段,TX合成器能接收来自主机的初始化数据实体,该初始化数据实体包括至少一个字符[TA1],在正常操作阶段,TX合成器能接收两个感兴趣的数据实体[DOI1=TA2]和[DOI2=TA3],每一数据实体[DOI1=TA2]和[DOI2=TA3]分别包括至少一个感兴趣的数据字符[TA2]和[TA3];在初始化阶段的至少一个迭代步骤中,TX合成器接收来自TX虚拟随机函数生成器的第一数据实体,该第一数据实体包括至少一个字符[TC1],其为随机的数据输入,以生成所述初始化数据实体字符[TA1]和至少一个随机数据实体[TC1]的第一XOR加和
Figure DDA0000079753080000011
在正常操作阶段,TX合成器生成并输出第二XOR加和和第三XOR加和
Figure DDA0000079753080000013
Figure DDA0000079753080000014
其中TB2和TB3是随机数据实体;其中,字符TA1、TA2和TA3能初始化数据完整性系统,其包括使数据完整性系统对字符TA2加密,并通过字符TA3生成识别离散值的输出。

Description

带有验证完整性的加密系统和方法
相关的待决申请
本申请要求下列优先权:
a、美国临时申请61206439,名称“A counting Mechanism to Whiten Salt andPreclude Repetition of a Chaining Value”,申请日为2009年9月29日;
b、美国临时申请61214856,名称“Systems for Simultaneous Ciphering andFrame and/or Complete Message Authentication”,申请日为2009年4月30日;
c、美国临时申请61275866,名称“Encryption with Integrity withAutomatic Hash Authentication Interrupt”,申请日为2009年9月4日。
技术领域
一般而言,本发明涉及计算机化的加密,更具体地讲,本发明涉及硬件加速的对称加密和验证。
背景技术
下列公开确信为代表了高扩散硬件加速的对称加密和验证的现有技术状态:
E.Biham和O.Dunkelman,A Framework for Iterative Hash Functions,NIST Hash Forum 2006,2006年8月,圣巴巴拉市;后文称之为“HAIFA”;其描述了在某些设备中广泛使用的一种方法,其使正交反馈(orthogonalfeedback)随机化,并避免Ha s h和MAC生成器的冲突。
C.S.Jutla,Encryption Modes with Almost Free Message Integrity,Journal of Cryptology,第21卷,施普林格出版社,2008年,海德堡。后文称之为“Jutla”;其描述了一种压缩函数,但在硬件中难以实现,其不包括散列值/认证标签(HV/Tag)的无缝生成。
A.J.Menezes等,Handbook of Applied Cryptography,第228-229页、第231页、第366页,CRC Press出版公司,1997年,波卡拉顿;后文称之为“Menezes”;其描述了密码反馈操作模式和使用加密及MAC时数据完整性(data integrity)的替代方法。
本申请说明书中所提及的所有公开文件和专利文件,以及直接或间接引用的公开文件和专利文件,在此一并包括在内。
发明内容
本发明某些实施方式寻求提供强劲的对称加密设备,以保护发送的和存储的二进制数据,其中:
审查中的美国申请US2008/0258825描述了在某些实施方式所用的、对硬件虚拟随机数字导向函数生成正交反馈的通用解决方案,后文称之为“825”;
审查中的美国临时申请61206439描述了基于梅森素数线性反馈寄存器的设备,其用于对“825”的两个32位(bit)的正交反馈数据流生成多于263个未预先指定的白化器(whitener);后文称之为“439”;
审查中的美国临时申请61214856描述了用于同时对数据结构进行加密和/或生成散列值(hash value,或称杂凑值)的系统;后文称之为“856”;
审查中的美国临时申请61275866描述了使用一个或多个虚拟随机字符导向函数对非常长和非常短的信息的数据结构同时加密/解密和/或生成和/或验证散列值的系统;后文称之为“866”;以及
美国申请US2007/0244951描述了原始的ZK-Crypt三角函数、加密器、信息验证编码器架构;后文称之为“951”。
本发明提供了一种紧凑的低能耗多排列正交结果/反馈虚拟随机设备处理器(PRD),用于加速初始化、用于对同时、透明、无缝、极优扩散的加密/解密的单时钟周期字符的输入/输出、用于生成散列值和自动验证散列值。其基本函数为展开函数,其中在每个时钟周期,结果/反馈处理器将输入的信息唯一地加密、随机化、并扩展为两个正交反馈字符。“825”的正交处理确保信息字符中的偏差(一个或多个位)的合并,会线性地影响(翻转位)在不同合并中第一时钟周期的反馈数据流的寄存器组的相互影响的层,使得(翻转回紧随其后的时钟周期中的信息字符)由一个反馈数据流引起的偏差达到一致的尝试总可以(可证实地)在第二影响层中添加相反的翻转。在“825”中我们已证明不能对信息进行有意义的修改或其它的修改。
通常,在每一个时钟周期提供一个展开函数,32位的信息输入在四个时钟周期后随机扩散为多于415个二进制状态变量的等式。链接值包括设备所有的二进制状态变量,该所有的二进制状态变量在一多样性排列中均有效。如同常规的离散处理一样,没有进行截断处理。
该设备支持经验证的“服务支付广告”选项;例如,如果使用者同意允许相关促销文本在他的移动电话屏幕上显示,或以语音表示,移动电话操作者可以延迟对于发送SMS或语音信息的支付。促销文本包括于解密后的散列值/标签之内,通常限定为全是“5”的字符,(5555 5555)16。
基于HAIFA计算器的64位梅森素数LFSR的创新的包含物,代替了Biham和Dunkelman提供的标准的32位二进制HAIFA计算器,进入设备的展开函数的链接值,确保在一个数据流加密序列中,同样的链接值不会发生两次,在散列摘要(digest,或称汇编)序列中或散列值/标签生成序列中。如同在加密/解密/散列摘要的开始,计算器的初始计算值通常是密钥的随机函数、IV、扰码字符的数字,HAIFA计算器的二进制输出通常是未预先指定的。
通常,后续的唯一初始化,始发站的输入为包括机密数据的无缝字符串;接收器,跟随同样的初始化,通常无缝处理始发站的输出,以接收一个清晰的自动的经验证的译文。通常,始发站也称作TX,接收器也称作RX,操作为单独的时钟周期步骤序列。在每个时钟周期中,输入一个字符,输出一个经处理的字符。发送器和接收器通常使用同样的或相匹配的加密硬件引擎,也称作虚拟随机设备处理器PRD。潜在的大的公共领域通常包括多种多样的用户,以及多种多样的数据模组和系统的供应商。任选的促销和/或广告数据能生成任选的市场解码散列值/标签,例如“由BlueWhite提供服务”、“你拨打了获胜电话8004567456”,跟随一个解码的信息序列。
本发明的某些实施方式涉及通用硬件加密设备解决方案,其设计为实现使用极强加速的高扩散硬件虚拟随机数字函数生成器(虚拟随机设备处理器——PRD——这里所述)同时加密/解密和散列值/标签,如同体现为Zk-Crypt加密硬件引擎。“带有完整性的加密”的想法,其中加密和验证被整合为一个操作器,由Moti Yung在“Jutla”中提出。通用实现最近在Journal of Cryptology的一篇文章“Jutla”中提出。Jutla的实现基于以多步骤块加密为基的软件。我们建议任意长度的初始化、明文和散列值/标签、HV/Tag生成器输入数据上的安全实用无缝加速解决方案;带有多种多样的排列、高扩散、大长度正交反馈链接值,导致强加密和经证明的对信息修改的排除,以及链接值冲突。
我们显示了基于通用硬件数据流加密PRD的解决方案的优点,其标准由Yung(后来的Eli Biham和Orr Dunkelman)在“HAIFA”中提出。为了使单一模组(引擎)能加密及散列,我们认为提高ZK-Crypt模组的结果/反馈处理器的两个正交反馈轨迹的加密是必要的,以排除信息修改和内部状态变量的冲突发生。我们遮盖了数码消隐(Cipher Mask)在散列摘要的双反馈字符数据流的启示,其与数据流密码加密和解密同时发生;通常减轻广告尝试,以得到实施方式的内部状态变量(链接值)。散列摘要,这里也叫做“摘要”,为将扩散的影响的信息反馈至PRD的处理,以在几个时钟周期中,使每个位的信息在二进制状态的翻转运动变量(链接值)中,通常引起唯一的、通常大的变化。
使用“Menezes”为密码反馈命名,CFB模式,其中滚动密钥与链接值匹配,并与所有有效的二进制状态的状态匹配。带有完整性的加密,在至少一种实施方式中,由三种不同的处理组成,作用于输入字的无缝数据流;如图7所示,实施例C和D。从初始化到加密的转变和HV/Tag是无缝的。每个处理是任意长度的流程;其中安全参数的长度取决于感觉到的必要安全级别。
对于始发站和接收器,后文称之为TX和RX,的CFB散列摘要初始化处理,其中RX可以是存储密文的解密器/验证器,该密文来自通讯中,或从主机内存中读取:
C0=Esrv(k0||IV);图3A开关300位于A位置;如图2A、5A、5B所示;srv为初始化滚动密钥、初始化链接值以及所有状态变量的初始化设置或重设翻转值,其跟随于PRD的全面设置(重设),未读取编码的输出C0,但是其被散列摘要到RX和TX的PRD;
K0是由发送器和接收器共享的秘密。
IV是已知的唯一值,其通常被填补的扰码扩大。
K1=HD(C0);HD是散列摘要的扩散,其为共享密钥的多样排列的扩散,以及输入到PRD的状态变量的IV。
K1是初始化处理的最后链接值,并且因而是对于发送器和接收器的后续加密/解密以及散列摘要处理的初始滚动密钥。
在初始化的末尾,为马上的加密/解密和/或键入的散列摘要(MAC)设置PRD。如图2C和5A所示,图3A的开关300位于A位置(对于不带有错误传播的常规数据流密码,开关300位于A位置-没有散列摘要,向内反馈,OFB,图2B),在CFB模式中,发送器的加密处理,特别地:
C1=EK1,IV(X),C1是由明文数据流生成的密文,X和C1,带有一个时钟周期的最小延迟,被发送到PRD的接收器RX。在CFB模式中,通过包括的结果/反馈处理器,将C1反馈(散列摘要)到PRD,以生成K2,加密处理的最后的链接值(下一个HV/Value生成处理的初始滚动密钥),以达到仅带有完整性的加密。对于硬件TX和RX,内部K2通常为不可观测的和未预先指定的。
任选地,在CFB模式中,在议定的TX和RX地址中,TX包括(即插入),已知的“验证指定字符”,例如,全是“5”的字符,到明文X中;当被接收器解密或认出,该字呈现先前加密的明文的中间迹象。
四个最后输入的X字符,在CFB模式中,通常为用常量填补,以最大化最后四个有效的明文的散列摘要扩散,例如,全是“5”的字符,其可以限定X;或者,不同的,这些填补的字符扩大HV/Tag生成字符,随着除了最后四个密文字符的所有字符全部扩散。
K2=HD(C1);HD是在CFB模式中的散列摘要函数,其为输入到RX的PRD的状态变量的TX生成的加密的明文的多样排列;K2是发送器的加密处理(同时也是接收器的解密处理)的最后链接值,以及TX的HV/Tag的生成处理的初始滚动密钥。
CFB模式中,接收器的解密处理(假设C1的无误接收),显示于图2C和5B;图3A的开关300位于B位置,特别地:
C2=EK1(C1)
如果C1从TX中无误或无偏差接收,C2为调节一致后的明文,X(如图2B所示,同时在CFB模式中)。
接收到的C1通过包括的结果/反馈处理器被转轨(散列摘要)到接收器的PRD(如同输送到TX的PRD),以生成最后的链接值(HV/Tag生成处理的初始滚动密钥),K2。任选地,如果发送器在明文议定的位置插入了已知的字符X;当该字符被接收器解密,意味着先前加密的明文的中间验证。通常,RX检测分隔符,该分隔符指示X的结尾,以及X的起始和有效性。
K2=HD(C1)
HD,散列摘要,为输入到RX的PRD的状态变量的RX接收的加密明文的多样排列。
K2是RX解密处理最后的链接值,以及RX的HV/Tag生成处理和RX的验证处理的初始滚动密钥。
CFB模式中,发送器的HV/Tag生成处理中,如图2D和5A所示,
C3=EK2(G);图3A开关300位于A位置
HV/Tag生成器的输入G,为任意长度的字符串,当其解码时,向RX指示X的真实性、起源、及适当的接收。
C3是生成的HV/Tag,其为任意长度,其通常涉及感觉到的必要安全级别。将C3发送到接收器设备。通过包括的结果/反馈处理器,将C3反馈(摘要/扩散)到TX的PRD。G的至少几个部分,为接收到的X的完整性的RX的适当指示;例如,HV/Tag生成字符序列可以包括全是“5”的字符数据流(55555555)16;其中该字符的议定的下标指示了完整性;在某些,例如商业应用中,在一系列位置中,通常向G中插入未预先指定的数据,该未预先指定的数据全是“5”的字符的议定数字限定。
接收器同时生成HV/Tag的分路,以及验证G中的HV/Tag。在图3A中,切换函数300位于位置B,如图2D和5B所示。
C3是TX的生成的HV/Tag,其同时被RX解密及摘要。C4=EK2(C3);C4为到文本存储的输出。如同从TX接收,C3通过开关B转轨,并通过包括的结果/反馈处理器输送(摘要/扩散)到RX的PRD。
如果在每一步,TX和RX的PRD的首要输出均相同;C4=G;G可以由主机与已知的G相比;或者检测并计算全是“5”的字符,验证中断自动确保收到的密文的验证,及HV/Tag要求的部分到非常高的可能性。
硬件的某些实施方式中,加密/解密结果处理器连接到PRD,该PRD通常无缝加密生成或解密生成、验证HV/Tag(HV/Tag为生成的数据单元的随机输入的进入未预先指定的字符序列的反射)。对任意长度的单个数据单元处理对话,所有包括的典型时间花费少于50个时钟周期。对于PRD速度,其可以接近DC,每秒高达数以亿计的32位字符;该设备通常处理并包括几乎无缝无中断的加密或解密的32(或64)位字符的数据流,以及验证数据。无缝同时的散列摘要和加密/解密、自动的HV/Tag验证是通向低成本信息科技安全的创新。
发送器(TX或加密器、原始HV/Tag生成器)和接收器(RX或解密器、最终HV/Tag验证器),PRD包括匹配的同步密码引擎,当进行操作时,在每一个处理步骤,其内部状态变量(链接值)均处于同样的状态。在许多应用中,TX和RX可以是相同的PRD加密引擎。例如,在TX(始发站、发送器)模式,引擎通常能加密随机数据,同时节省主机内存中验证的HV/Tag。同样的引擎,在RX(接收器)模式,能解密并且自动验证TX生成的带有附加的HV/Tag的密文。为了减轻通用案件的理解,其中主机解密和/或验证存储于主机内存中的数据,我们把主机称作RX。如同存储于内存中的数据通常为TX架构生成的数据,我们通常把发送器或数据的始发站称作TX。
接下来的初始化,TX的PRD引擎输出加密的信息数据流,其通常同时散列摘要进TX的相同的PRD;其后为附加的尾字符序列,HV/Tag。将TX的原始数据发送、转换、或复制进接收的处理器RX。TX的原始数据输出数据流任选地由数据接收器、解密器、验证器、RX处理。RX的引擎通常无缝解密并散列摘要信息数据,然后通常同时重新生成并识别TX的HV/Tag生成序列。RX的结果/反馈处理器可以自动地或以其它方式为主机指示完整数据发送的有效性。通常,RX的验证包括生成数码消隐序列,该数码消隐序列与TX的数码消隐序列相同。TX生成的HV/Tag是对RX生成的HV/Tag序列的议定的加密;在一种实施方式中,为全是“5”的字符序列,(55555555)16。在其它的商业环境中,HV/Tag生成序列任选地包括商业广告内容。如果RX的数码消隐序列与TX的数码消隐序列一样,就是RX成功地解密了TX的HV/Tag生成序列。
因此,RX的验证(比较)处理解密、发出TX的HV/Tag信息生成输入。在描述的实施例中,TX的HV/Tag生成输入为全是“5”的字符。RX通常同时地重新生成TX的数码消隐序列,并将TX数码消隐序列和TX所谓的HV/Tag进行XOR求和。XOR求和的结果序列通常为解密的TX HV/Tag生成序列。在描述的案件中,解密并检测全是“5”的字符序列,计算解密后的全是“5”的字符的数目。RX的计算器通常设置为向RX主机发送中断,该中断指示了验证后的明文和原始电文。
可以预计,其对于供应商的优点,TX的HV/Tag生成序列可以包括标准的或特定的数据串,如“今晚的电影票”。在某些实施方式中,商业识别结尾之前可以设置若干可检测的全是“5”的字符,代表文件的结尾。在至少一种包括了定义的全是“5”的字符实施方式中,在RX复制TX的数码消隐的过程中及以后,RX的引擎通常标志出主机的成功接收,及从信任的信息源通过可靠的通讯频道接收的经验证的明文的固有完整性。
在第二种实施方式中,RX知道感兴趣的数据的限定部分,RX可以直接向XOR合成器加载散列生成器数据流,以加密散列值;并带有一个时钟周期的延迟,可以数据流比较TX和RX的数据流。
大体上,进入PRD状态变量(也称作链接值)的散列摘要的加密的明文数据,呈现出对可以试图修改信息字符的对手的强烈阻碍,当这些变量仅仅远程地涉及信息输入序列。我们假定对手通常拥有临时的不受限的到多种PRD的信息字符输入和加密的数据输出对的通路。如果这些密钥为本色的随机字符,对这些密钥的暴力搜索通常为以找出密钥为目的的最有效的攻击。
如图1所示,在带有验证完整性的加密中,输入到PRD的信息被数码消隐、PRD的数据搅拌部分生成的两个刺激、附加的基于虚拟随机64位梅森素数的HAIFA计算器加密。HAIFA计算器在信息序列计算的开始,预先未指定地激活,以使其初始计算值为初始化常量(密钥和通常非秘密的唯一初始值IV)的虚拟随机函数的单向结果。HAIFA信息计算器为虚拟随机的64位反馈“白化器”序列,其中对每个信息字符分配一个唯一、不重复的随机数字。由于两个反馈数据流为HAIFA计算器唯一、独立、预先未指定地随机生成,其输出通常排除了集中,其中,诈骗犯不利的插入信息的错误部分,以重复的链接值结尾。
带有验证完整性范式的加密,对于任何合适的PRD通用,其中正交反馈被输入的信息字符线性异变,大量扩散至PRD内,能生成加密或解密的数据流数码消隐。
对于通讯频道易受影响产生轻微噪音且导致错误的情况,不能预先纠正;我们建议在信息帧发送的初步的HV/Tag检查程序,优先于下一步错误的、易受攻击的解密和散列摘要。这种策略通常在每个TX和RX系统都包括两个随身携带的PRD的引擎时最有效;带有适应的强烈纠错功能,或者带有发送错误的信息帧的有效频道。如图8A、8B、8C所示,大数据发送的最终的所有信息帧散列包括每个连续加密的信息帧的完整性检查,其优先于所有信息帧解密器和验证器的摘要。
通过将PRD从数据流中分离,该设备安装为能加密地强烈常规数据流密码器(没有散列摘要)。常规的数据流密码器为发送错误抵抗,如通常地只有噪音通讯频道的翻转位受影响;例如,电视发送中的单个像素,大体上的错误不会传播,如同块密码器中设备所有的状态变量通常被发送中的单个错误影响。预先定义的位置中预先定义的字符,例如,全是“5”的字符在第512至第515个TX明文中重复,当其被RX在数据流密码序列中识别,作为指示,TX和RX系统被带有唯一数码消隐的加密/解密序列同步且保护。
对于通讯频道易受影响产生轻微噪音且解密数据的即时接收是典型的最重要的情况;例如,带有偶然错误信息位的语音数据流;引起输出的pip噪音;使用者可基于常规的错误抵抗架构导向的数据流密码生成器选择一种结构,该结构带有串联的第二PRD引擎,其在TX生成的密文上接收密文和生成HV/Tag。这里互交换地把数据块叫做“块”、“页”、“帧”。
在该方案中,一种错误的信息帧任选为与真的TX生成的HV/Tag一起存储。后来,或在接收之后马上,可以调节错误的信息帧。最终的所有信息帧HV/Tag通常由散列摘要在TX信息帧HV/Tag序列上生成。本领域技术人员也熟知其它的策略。
根据某些实施方式(未描述),对于带有有规律分散的散列值/标签的系统,过去经常限制或标记长的文件块,需要供应暂时存储完整的链接值。位于成功的中间验证序列之后的链接值的复制品存储于暂时存储中,以在下一个中间验证证明有效的无错文本的最后部分失败时恢复链接值。这将允许重复的测试,以调节最后的数据部分。
因而,根据本发明至少一实施方式,提供了一种数据完整性系统,其包括发送器,该发送器包括TX虚拟随机函数生成器、具有发送选项的TX切换函数、TX合成器;在初始化阶段,TX合成器能接收来自主机的初始化数据实体,该初始化数据实体包括至少一个字符[TA1],在正常操作阶段,TX合成器能接收两个感兴趣的数据实体[DOI1=TA2]和[DOI2=TA3],每个数据实体[DOI1=TA2]和[DOI2=TA3]分别包括至少一个感兴趣的数据字符[TA2]和[TA3];在初始化阶段的至少一个迭代步骤中,接收来自TX虚拟随机函数生成器的第一数据实体,该第一数据实体包括至少一个字符[TC1],其为随机的数据输入,以生成初始化数据实体字符[TA1]和至少一个随机数据实体[TC1]的第一XOR加和在正常操作阶段,生成并输出第二XOR加和
Figure BDA0000079753060000101
和第三XOR加和
Figure BDA0000079753060000102
Figure BDA0000079753060000103
其中TB2和TB3是随机数据实体;其中,字符TA1、TA2和TA3能初始化数据完整性系统,其包括使数据完整性系统对字符TA2加密,并通过字符TA3生成识别离散值的输出。
进一步地,根据本发明至少一实施方式,该系统同时包括接收器,该接收器包括RX虚拟随机函数生成器,其与TX虚拟随机函数生成器函数上匹配;RX切换函数,其具有发送选项和接收选项;RX合成器。
根据本发明至少一实施方式,第二XOR加和包括将感兴趣的数据实体[TA2]和[TA3]以及两个未预先指定的数据实体编码,其中每个未预先指定的数据实体均包括由TX虚拟随机函数生成器提供的至少一个字符[TC2]。
此外,根据本发明至少一实施方式,第三XOR加和包括将感兴趣的数据实体[TA2]和[TA3]以及两个未预先指定的数据实体编码,其中每个未预先指定的数据实体均包括由TX虚拟随机函数生成器提供的至少一个字符[TC3]。
根据本发明至少一实施方式,TX切换函数能安排(route)第一、第二、第三XOR加和[TB1]、[TB2]、[TB3]作为TX虚拟随机函数生成器的输入项。
根据本发明至少一实施方式,TX虚拟随机函数生成器能接收来自TX合成器的第一、第二和第三XOR加和[TB1]、[TB2]、[TB3],以从那里生成随机数据实体[TC1]、[TC2]、[TC3],并向TX合成器生成随机数据实体。
根据本发明至少一实施方式,随机数据实体[TC1]、[TC2]、[TC3]分别为关于XOR加和[TB1]、[TB2]、[TB3]的函数f0、f1、f2。
根据本发明至少一实施方式,函数f0、f1、f2均包括关于至少一个虚拟随机函数生成器的无多项式算法(intractable)的随机函数,该虚拟随机函数生成器能被至少一个XOR加和影响。
根据本发明至少一实施方式,RX切换函数能从主机接收数据实体[RA1],该数据实体[RA1]与发送器共享,以使[RA1=TA1]并且其中数据实体[RA1]为XOR求和至至少一个字符数据实体[RC1],该字符数据实体[RC1]为由RX虚拟随机函数生成器输出;并在初始化阶段的至少一个迭代步骤中,安排合成器的输出到RX虚拟随机函数生成器。
根据本发明至少一实施方式,在第二正常操作阶段中,RX切换函数能接收TX合成器的输出,该输出包括编码后的感兴趣的数据TX XOR加和 [ TB 2 = TC 2 ⊕ TA 2 ) [ TB 3 = TC 3 ⊕ TA 3 ) , 以安排RX输入[TB1]和[TB2]至RX虚拟随机函数生成器。
此外,根据本发明至少一实施方式,TA2包括DOI1文件,该DOI1文件包括明文;其中,DOI1文件包括至少一个未预先指定的字符数据实体,该字符数据实体来自于TX虚拟随机函数生成器且包括[TC2=f1(TB1]。
根据本发明至少一实施方式,TA3包括DOI2文件,如果数据的长度大于一个字符,则该DOI2文件包括重复的离散生成字符;其中,DOI2文件包括至少一个未预先指定的字符数据实体,该字符数据实体来自于TX虚拟随机函数生成器且包括[TC3=f2(TB2]。
此外,根据本发明至少一实施方式,在初始化阶段,RX合成器能在初始化阶段的至少一个迭代步骤中接收初始化数据实体[RA1=TA1]。
根据本发明至少一实施方式,在正常操作阶段,RX合成器能接收来自TX XOR合成器输出的至少一个字编码数据实体[TB2]和[TB3]。
根据本发明至少一实施方式,共享第一输入数据[RA1=TA1]与来自RX虚拟随机函数生成器的[RC1=f1(RB1)]XOR相加,且不向主机取样器输出。
此外,根据本发明至少一实施方式,在正常操作阶段,RX合成器能生成两个TX数据输出[TB2]和[TB3]与来自RX虚拟随机函数生成器的两个RX未预先指定的数据实体[RC2]和[RC3]的XOR加和,从而重建感兴趣的数据。
根据本发明至少一实施方式,感兴趣的数据包括
Figure BDA0000079753060000111
Figure BDA0000079753060000112
以及
Figure BDA0000079753060000114
从而指定DOI1的有效性,因为 ( X ⊕ X = 0 , X ⊕ 0 = X ) .
此外,根据本发明至少一实施方式,在正常操作中,RX虚拟随机函数生成器能通过RX切换函数直接接收[TB2]数据和[TB3]数据,从而生成至少两个未预先指定的同样的数据实体[RC2=TC2]和[RC3=TC3],从而继续维护同样的RX虚拟随机函数生成器和TX虚拟随机函数生成器的二进制状态变量。
根据本发明至少一实施方式,[TB2]数据和[TB3]数据同时接收。
根据本发明至少一实施方式,字符TA1、TA2和TA3能初始化数据完整性系统,其包括使数据完整性系统同时对字符TA2加密,并通过字符TA3生成识别离散值的输出。
根据本发明至少一实施方式,该系统还包括多个数据完整性系统,每个数据完整性系统均包括TA3字符,且其中每个单一数据完整性系统的TA3字符对单一的数据完整性系统是唯一的。
根据本发明至少一实施方式,同时提供了一种数据完整性方法,其包括提供发送器,该发送器包括TX虚拟随机函数生成器、具有发送选项的TX切换函数、TX合成器;在初始化阶段,使用TX合成器接收来自主机的初始化数据实体,该初始化数据实体包括至少一个字符[TA1],在正常操作阶段,使用TX合成器接收两个感兴趣的数据实体[DOI1=TA2]和[DOI2=TA3],每个数据实体[DOI1=TA2]和[DOI2=TA3]分别包括至少一个感兴趣的数据字符[TA2]和[TA3];在初始化阶段的至少一个迭代步骤中,使用TX合成器接收来自TX虚拟随机函数生成器的第一数据实体,该第一数据实体包括至少一个字[TC1],其为随机的数据输入,以生成初始化数据实体字符[TA1]和至少一个随机数据实体[TC1]的第一XOR加和
Figure BDA0000079753060000121
Figure BDA0000079753060000122
在正常操作阶段,使用TX合成器生成并输出第二XOR加和
Figure BDA0000079753060000123
和第三XOR加和
Figure BDA0000079753060000125
其中TB2和TB3是随机数据实体;其中,字符TA1、TA2和TA3能初始化数据完整性系统,其包括使数据完整性系统对字符TA2加密,并通过字符TA3生成识别离散值的输出。
根据本发明至少一实施方式,同时提供了一种提高随机性的方法,能提高包括有虚拟随机函数生成器的虚拟随机函数计算系统的随机性,该方法包括:使用至少两个相对的第一最大长度的线性反馈移位寄存数据字符的至少一个字符长度连接,以输出唯一的虚拟随机字计算序列;将到至少一个输入的随机字符计算序列与至少一个虚拟随机函数计算系统输入合并,从而使虚拟随机性与虚拟随机函数生成器相加。
根据本发明至少一实施方式,虚拟随机函数计算系统包括这里显示和描述的任一系统。
根据本发明至少一实施方式,计算序列被初始化为未预先指定的值,该未预先指定的值优先于感兴趣的编码数据,并在第二正常操作阶段中,被输入至TX和RX虚拟随机函数生成器中的一个。
本发明同时提供了一种计算机程序产品,其包括计算机可用媒介和计算机可读存储媒介,其通常为可触摸的,具有计算机可读程序编码;计算机可读程序编码能适应于执行实现这里显示或描述的任何或所有方法。值得注意的是,这里显示和描述的任何或所有计算步骤都可以由计算机实现。根据本发明的教导的操作,可以由为满足所需目的特别架构的计算机实施,或者由通用目的的计算机实施,该通用目的的计算机通过存储于计算机可读存储媒介中的计算机程序达到满足所需目的的特别架构。
任何合适的处理器、显示器、输入装置都可以用于处理、显示,例如,在计算机屏幕上或其它计算机输出设备、存储、接受信息例如这里显示或描述的任何方法或设备使用或生成的信息;根据本发明的一些或所有实施方式,上述处理器、显示器和输入装置包括计算机程序。这里显示或描述的本发明的任何或所有功能可以由常规的个人电脑处理器、工作站或其它程序设备或电脑或电子计算设备实施,通用目的或特别组装,用于处理;计算机显示屏幕和/或打印机和/或喇叭用于显示;机器可读内存例如光盘、CDROMs、磁光盘或其它盘、RAMs、ROMs、EPROMs、EEPROMs、磁卡或光卡或其它卡,用于存储;键盘和鼠标用于输入。如前文所用的术语“处理”包括任何类型的计算或操作或数据转化,如物理现象,例如电子现象,其可以发生或驻留在计算机的寄存器和/或内存中。
上述设备可以通过任何常规的有线或无线数据通讯装置进行通讯,例如,通过有线电话网络或计算机网络例如Internet。
根据本发明的某些实施方式,本发明的设备可以包括机器可读内存,其包含或其它存储有指令程序,当被机器执行,实现一些或所有这里显示或描述的发明的设备、方法、特征、功能。作为替代的或此外,本发明的装置可以包括,根据本发明的某些实施方式,如上文所述的程序,其可以任何常规的程序语言写成,任选地执行该程序的机器例如但不限于通用目的的计算机,其任选地根据本发明的教导进行安装或活动。这里合并的任何教导可以在任何地点合适的操作物理物体或实体的信号代表。
上述实施方式以及其它实施方式,将在下一部分中详细描述。
本说明书或附图中出现的任何商标均为其所有者的产权,这里出现仅仅是为了解释或显示本发明的实施方式的一个实施例是如何实现的。
除非特别陈述,否则,如同后面讨论的字面意思,值得注意的是,在整个说明中,使用术语例如“处理”、“用计算机计算”、“估计”、“选择”、“排列”、“分级”、“计算”、“确定”、“生成”、“再评价”、“分类”、“制造”、“立体匹配”、“注册”、“检测”、“关联”、“叠加”、“获得”或者类似的术语。指的是计算机或计算机系统、或处理器或相似的电子计算设备的动作和/或处理,其在计算系统寄存器和/或内存中,操作和/或转换代表数据的物理量,例如电子量,至另一个相似的代表数据的物理量,在计算系统的内存、寄存器或其它这种信息存储、发送或显示设备。术语“计算机”应该宽泛地解释为覆盖所有具有数据处理功能的电子设备,包括但不限于,个人电脑、服务器、计算系统、通讯设备、处理器(例如,数字信号处理器DSP、微控制器、现场可编程门阵列FPGA、专用集成电路ASIC等等)以及其它电子计算设备。
为了表达清楚,本发明可以以术语进行描述,该术语特定于特殊编程语言、操作系统、浏览器、系统版本、个人产品,以及类似。值得注意的是,这种术语的目的是清楚简要地传达操作的通用概念,通过实施例,而并不是为了限制本发明的范围于任何特殊编程语言、操作系统、浏览器、系统版本或个人产品。
附图说明
为了便于理解,从图2A-2D的通用结构开始,然后参考带有图10中所述数据流的图9A-9B。
图1是简化的框图,其显示了ZK-Crypt多功能PRD,该ZK-Crypt多功能PRD带有对称加密单元,且由结果/反馈处理器改善;其由两个基于随机化唯一32位梅森素数线性反馈移位的HAIFA计算器支持。
图2A是对于始发站和接收器(通常为TX或RX)基于硬件的虚拟随机函数初始化处理的简化的框图。该初始化处理是CFB模式密码反馈的译文,其中,密码输出未读出,初始滚动密钥为初始链接值(二进制状态变量的环境,翻转运动),在全局(重)设置之后,硬件初始化流程。在加密和散列中,双轨正交反馈实现,证明地排除了输入修改,HAIFA计算器排除了链接值冲突,因为没有链接值的切断。
图2B是硬件虚拟随机设备处理器PRD的使用的简要描述,加密长度与上述实施方式相似,用于常规数据流加密。其为输出反馈OFB的一种实施方式的框图,该实现的模式带有内部生成的双倍非正交反馈数据流,该数据流带有HAIFA计算随机化,以排除链接值冲突。
图2C是简化的CFB模式加密/解密实现的描述。排除了随机值HAIFA计算器链接值冲突,双轨正交反馈字符均得到改善。初始滚动密钥为由初始化流程设置的链接值。
图2D是新的CFB模式加密/解密的简要描述,其随机值HAIFA计算器反对链接值冲突及白化,改善了双轨正交反馈。初始滚动密钥为跟随于初始化处理的链接值。
对于全是“5”的明文字符的有效性的自动检测320及322,对于马上的验证传播HV/Tag字符可能有用(除了最终HV/Tag生成);例如,如同在验证结构化的/格式化的信息中,明文或密文中不可能是多于一个全是“5”的字符。
图3A和图3B显示了结果/反馈处理器电路的循环框图;其能实施带有完整性的加密,常规数据流加密及HV/Tag生成。图3B包括实现CFB模式操作的MAC;HAIFA初始化开关,其能强迫内部salts与HAIFA计算器的初始化序列合并;使数据流进OFB和CFB模式操作的0AB开关。
图4A和图4B描述了常规的未键入的散列处理(键入的散列,也就是信息验证代码MAC),其中,TX和RX第一输入待散列摘要的同样的二进制数据。
图5A和图5B描述了TX和RX的引擎的状态,体现了带有验证完整性函数的同时加密的特定处理步骤的唯一的链接值。每个框描述了引擎的环境,具有输入、输出、到PRD的反馈,其在下个第一时钟周期中影响引擎。
图6A描述了基于梅森素数LFSR的HAIFA计算器,其不可预测地白化、加密并使用低层和超层反馈字符的唯一数值。扰码通常为IV的填补。通常,HAIFA计算器被低层反馈Salt和超层反馈Salt初始化。如果所有IV序列的完整扩散是必要的,扰码序列通常要求四个时钟周期。
图6B描述了一个19位第一长度虚拟随机线性反馈生成器的细节部分;19位LFSR计算器,典型HAIFA梅森计算器的基本单元;
图6C描述了图6B中LFSR“一至多”的明确反馈。
图7描述了由结果/反馈处理器调节的四个基本处理的无缝数据流输入和相关输出的实施例。
图8A、8B、8C是不言自明的关于加密的和验证的二进制数据信息帧的多数据实体传输的描述;如通常的做法,可以用于通过公开频道的传输,以机密存储;例如,可靠的加密引导和流程化程序和数据库中,但是不安全的内存中。
图9A和9B描述了带有完整性系统加密的通用数据流,该完整性系统也适用于单一字符初始化、加密、散列值生成和验证。也显示了用于大的单一字符初始化和验证的方法。
图10为根据本发明某些实施方式的装配以及操作每个TX和相应的RX的虚拟随机函数、切换函数、XOR合成器部件的输入和输出的表格。
图11是用于生成长字符的现有技术“825”的结构。
具体实施方式
为了便于理解,从图2A-2D的通用结构开始,然后参考带有图10中所述数据流的图9A-9B。
这里通过参考附图的实施例描述本发明的某些实施方式。其中:
图1是简化的框图,其显示了ZK-Crypt多功能PRD2000,该ZK-Crypt多功能PRD2000带有对称加密设备单元2060,对称加密设备单元2060由结果/反馈处理器2050提高;对称加密设备单元2060由两个基于随机化唯一32位梅森素数线性反馈移位的HAIFA计算器400支持。虚拟随机HAIFA计算器400,向两个32位反馈数据流添加不可预测性,低反馈510和超层反馈520供应寄存器组2030和数据搅拌器2040;通过独立地转化反馈数据流,从而阻止可以得到到这里描述的和显示的临时通道的对手修改信息。
相关文本输出为从结果/反馈处理器2050通过密码/明文路线输出。HV/Tag字符(用于验证)通常沿着Hash Value/MAC Tag路线输出。基于64位梅森素数LFSR的HAIFA计算器400,白化(whitens)并且随机化两个32位反馈数据流,低反馈510和超层反馈520;进入寄存器组2030和数据搅拌器2040。
随机控制器2020与寄存器组2030和数据搅拌器2040交互,以影响一系列虚拟随机函数,其中随机控制器2020内部随机生成器运行得自寄存器组2030和数据搅拌器2040超过65个不同的状态值和14个逻辑变量。随机控制器2020可以包括一系列小的随机函数,如同包括32位状态变量运算符的集合体2060内包括的寄存器组2030、数据搅拌器2040、结果/反馈处理器2050和两个HAIFA计算器400。
数据搅拌器2040的数码消隐输出,通常加密或解密正到达的信息字符。这种输出作为图2C、2D、3A、3B中所述的概念上的通用虚拟随机设备处理器PRD。通用模组可以输出Salts345和347,其通常具有一定程度的内部和外部联系以输入信息。为了确保消除32位变量2060的任何有意义的状态变量,HAIFA计算器400随机地开始双倍加密输入信息的源头。
图2A是简化的意义自明的基于硬件的虚拟随机函数的始发站和接收器(通常为TX和RX)初始化处理的数据流向图。
初始化处理是CFB模式中密码反馈的译文,其中,未读出密码输出,初始的滚动密钥为初始的链接值(二进制状态变量的环境,正反电路)跟随总体(重)设置,硬件初始化处理。双轨正交反馈实现证明地排除了输入修改,HAIFA计算器排除了链接值冲突。
为了执行常规的基于密码的散列(常规的未键入的和键入的),其中据称同样的输入信息由TX和RX散列摘要,其中RX随后核实TX生成的HV/Tag;
为了执行常规的数据流密码加密和解密。数码消隐不是输入的二进制信息数据的函数,因此破坏的发送密文不会如同常规的带有密文反馈的块密码,传播后续的错误,如图2B所示,加密和解密是同样的操作。
为了执行增强的数据流密码,其中,接收的密码或明文据称无误,加密、解密、摘要处理增加了代数加密复杂性,并且通常为同时进行。
对于“带有验证完整性的同时加密/解密”其中,散列和加密在单一的、成对的或者联系到一起的加密引擎中同时执行,任何所述的HV/Tag或RX预先知道的信息内包括的任何数据片段,能指示验证器RX部分或解密信息的有效性。如果RX解密了已知的预期位置(单一的信息或一串信息字符)的数据片段,同时将加密的数据片段分路至PRD,其中解密的部分屈服于预期的明文;RX接收发送有效性的正的指示,直到预期的信息字符,如同在HV/Tag之前,HV/Tag验证指示了密文的有效性。我们已经包括了由RX操作的信息计算器,以生成中断,对于RX的主机以确定是否在预先定义的位置接收到预期的信息字符。
后面的系统定义的初始化选项包括密钥和非密钥、初始值IV、扰码;所有的输入均作为摘要信息。在三个函数的每个中,信息字符由数码消隐值编码,并反馈且摘要/扩散至PED。
在所有的加密函数中,TX和RX以预先定义的参数做同样的初始化。
对于键入的散列值、常规的数据流密码、及“带有完整性的加密”,TX和RX共享一个密钥;通常一串秘密信息。在常规的散列中,给PRD任选供应通过散列摘要预先定义的值;在通常的键入散列中,TX和RX共享密钥。
扰码的目的是确保IV字符被摘要/扩散进入PRD所有的单元中。为了最高的安全,我们推荐四个时钟周期的通用编码扰码;其中,通常的系统字符、通常的IV字符散列摘要进入PRD。在图2A中,使用一系列“0”组成的字符序列扰码信息字符。四字符的扰码确保最后的IV字符的每一位都扩散进入几乎所有的二进制状态变量组成的等式,在四字符输入时钟周期的至少一种实施方式中;例如,在通用的案件中,扩散的效果还没有建立,我们建议更加复杂的扰码。对于常规密码串的实施方式,特别是,对于带有完整性加密的实施方式,初始值IV摘要序列是必要的,对于确保既非第一加密数码消隐、又非在常规密码串中,整个数码消隐序列不会对对手泄露。IV是唯一的、通常为真的随机数字,并且通常为发送和或在清晰公开的通讯频道中商谈。在扰码中,跟随IV常数的散列摘要,图3B的“HAIFA初始化开关启用”,使未预先指定的内部状态变量和HAIFA计算器的内部变量合并。单一的二进制计算通常从“0”开始,如在“HAIFA”中,的思路,现在改进为以未预先指定的64位单一值开始计算。
假定总体(重)设置命令为双时钟周期操作,为了有效的初始化,我们列出了建议时钟周期的最小数字。我们假定32位的字符。我们估计每个时钟周期中,供应一个初始化字符至PRD,并且
常规的未键入的散列初始化仅仅包括总体重设,其中有:非密钥字符-K=0;非IV字符-V=0;非扰码字符-S=0;init=2[估算的时钟];这里init为初始化“间接”时钟估算的数字,我们假定相邻的DNA输入或输出。
键入的散列(也称作MAC),建议的摘要的32位初始字符的数目为:K≥4,V≥2,S≥4;以使init≥12[估算的时钟];
常规的数据流密码中,建议的摘要的初始字符的数目为:K≥4,V≥2,S≥4;以使init≥12[估算初始化的时钟];
带有验证完整性的加密中,建议的摘要的初始字符的数目通常与常规散列的相同:K≥4,V≥2,S≥4;以使init≥14[估算的时钟];
对于正常的安全操作,密钥可以为8个32位字符(256位)的最小值,以与这里形成的标准兼容。一对连接交换的低反馈32位字符的引擎“825”支持512位的密钥。
图2B是简化的意义自明的硬件虚拟随机设备处理器PRD的使用的数据流向描述,加密长度与上述实施方式相似,用于常规数据加密。其为输出反馈OFB的一种实施方式的框图,该实现的模式带有内部生成的双倍非正交反馈数据流,该数据流带有HAIFA计算随机化,以排除链接值冲突。
TX和RX设备均初始化为随后发出相同的数码消隐字符序列。TX将每个数码消隐值与信息字符XOR,以生成密文;RX将其同样的同步数码消隐值与相关的密文字符XOR,以接收所谓的原始明文。这种结构是错误的抵抗(resistant)。如同仅仅翻转进传送的密文片段,导致RX的明文中,同样数目的相关错误片段;例如,在电视传送中,通常导致RX电视屏幕的色差像素。
图2C是简化的意义自明的CFB模式加密/解密实现的描述。排除了随机值HAIFA计算器链接值冲突,双轨正交反馈字符均得到改善。初始滚动密钥为由初始化流程设置的链接值。图2C显示了先前初始化的虚拟随机设备处理器的用途,其密码强度与图2B描述的常规的实施方式相似,以引起更强的数据流加密模式,其通常对于无误传送有用。
同时,摘要的加密数据反馈至上述实施方式的扩张类型的虚拟随机函数;例如,带有不丢失信息的中断。TX和RX设备同样地初始化至先后发射同样的数码消隐值序列,如果他们后续的反馈数据流为同样的。在图中,后面的(相同的)密文值在每个最主要的(由图1中的主机驱动)时钟周期反馈到PRD;因此TX和RX的PRD二进制状态变量(链接值)在整个传送过程中保持相同;同时包括图2D中的HV/Tag生成序列。TX的引擎,将每个数码消隐值与每个输入信息字符XOR求和,以生成密文序列。该密文序列同时反馈至TX的PRD,并传送至RX,或在一些应用中由TX存储,TX的文本加密器,为了后续RX模式中的恢复。RX将其同样的数码消隐值与TX生成的密文字符XOR求和,以恢复输入的信息字符序列;同时TX生成的同样的密文也通过分流开关分流至RX的PRD,该分流开关位于环绕解码XOR[在处理流程中为P]的触点B。结果,为了精确传送,只要密文的传送为精确的且两个引擎同步,RX和TX的加密引擎均为同样的未预先指定的内部状态。
引擎的状态变量被信息字符线性影响。第一信息字符中,单独的片段变化,在四个或五个第一时钟周期以后,通常“变成”图1中的数据搅拌器、寄存器组、结果/反馈处理器里所有的二进制状态变量等式中扩散得很好的单项。明文和密文均不能影响基于未预先指定的64位梅森LFSR等式的HAIFA计算器。HAIFA计算器通常在跟随于IV初始化序列的扰码中被未预先指定的初始化。如图6所示,当打开HAIFA计算器的初始化开关,来自图1中数据搅拌器的Salt字符,与HAIFA计算器状态变量合并。
在有效的传送中,每个时钟周期里TX和RX引擎里所有的二进制状态变量具有同样的值;如同同样的PRD引擎初始化为同样的,输入的PRD的唯一的后续异常的同样反馈,是同样的。进入PRD的通常未预先指定的反馈为有效的散列摘要,因为双轨正交反馈包括信息字符的每个片段加密的线性传送。一个翻转的片段能影响一个大的数目,例如通常超过300个,引擎的二进制状态变量等式,从而,在四个时钟周期内进入随机状态。
图2D描述了意义自明的最终阶段的数据流示意图,该最终阶段中,在带有验证完整性序列的同时加密中,生成HV/Tag验证器。我们假定RX的分流的反馈和TX的生成的反馈,为同样的,如同假定传送频道,在第一瞬间通常为完整的,即,传送频道为无误的。
如图2D所示,在HV/Tag生成过程中,TX设备的信息输入锁定为全是“5”的字符,HV/Tag生成字符。因此,TX的输出HV/Tag和RX的反馈均为TX的数码消隐字符与“5555 5555”在每个时钟周期XPR求和。输入到RX的XOR解码器也是TX的HV/Tag序列。再次假设完整的变量,RX的数码消隐序列与TX的HV/Tag的XOR加和,发射HV/Tag生成的全是“5”的字符。发送的全是“5”的字符(或者任何可选的HV/Tag生成的数据字符)存储于文本存储器中。在每个时钟周期内,TX和RX具有同样的所有阶段的链接值。如果TX的密文或HV/Tag数据或散列摘要包括加密的全是“5”的字符,RX的XOR解码器输出将发送全是“5”的字符至文本存储器中。在下一个时钟周期里,全是“5”的字符,检测器通常将可编程的T计算器标记,该T计算器通常在计算T以中断标记主机。任选地,该计算器设置为在检测到定义数目的HV/Tag字符后,引起中断。如果TX在有组织的/格式化的明文中预先指定的位置插入全是“5”的字符(或者任何专有的字符或短语),RX从上升到位置的文本存储器中接收预期的指示,RX知道接收到的密文和解码后的明文的起源及有效性。
在至少一种实施方式中,为了避免主机在早期计算全是“5”的字符时报警,任何跟随全是“5”的字符的非全是“5”的字符的出现均重设RX的计算全是“5”的字符的计算器。位于冗长的信息的双倍的全是“5”的字符的末尾生成的中断,能作为对主机的指示,即信息通讯结束且很可能有效,其中后面的解密的HV/Tag生成专有字符使带有典型广告短语的验证结束。通常,RX的文本储存器能无缝输出整个解码的信息和整个的HV/Tag生成序列,同时证明TX和RX的PRD发射的密文值是相同的。
图3A和图3B显示了简化的结果/反馈处理器的循环框图;其能生成和/或摘要下面的一些或所有:
a、被输入信息字符影响或未影响的双轨反馈;
b、根据安全级别、通讯频道的可靠度、输入数据的大小产生的加密的或未加密的初始化;
c、对于TX和RX的加密和验证,单一途径和多途径模式无缝的信息串输入;
d、输入HV/Tag,以自动指示对主机的有效性;
e、HV/Tag,通过噪音频道到达的数据信息帧,以实现待存储于明码的或以单个HV/Tag加密长文件的经验证的传送。
将信息输入的所有的数据与数码消隐值XOR合并,并输入到0AB开关及文本存储器。通常,如果该数据为明文信息输入的加密,或者密文信息输入的解密,或者为通常带有全是“5”的字符的定界符的促销HV/Tag,文本存储器被唯一读取。
如图2A、2B、2C、2D所示,在三中不同的被0AB分流开关影响的模式中,将信息字符隔离于或供应于PRD,其中,0AB分流开关执行下面一些或所有的可选功能:
a、为了常规的数据流加密,从PRD隔离信息输入,带有位于“0”接触点的分流开关。反馈数据流不被的数码消隐和信息字符XOR求和的加密或解密的信息影响;加密输入的明文数据;解密输入的密文;主机通过文本存储读取输出的密文或明文;该操作影响散列摘要,且不会影响链接值;
b、输入信息字符,通常为初始化变量、明文或HV/Tag生成变量,其与数码消隐值XOR求和,在“A”位置带有分流开关。在带有完整性处理的TX加密过程中,通常,从文本存储器读取生成的密文,并且将同样的密文摘要进结果/反馈处理器的两个正交反馈数据流。在TX和RX的初始化摘要处理中,通常未读取文本存储器,相同的加密密钥字符,IV字符和扰码字符相似地摘要进TX和RX结果/反馈处理器的两个正交反馈数据流。典型的TXHV/Tag生成包括将HV/Tag生成字符与各自的数码消隐值XOR求和;通过Hash MAC存储器发送HV/Tag并相似地将HV/Tag字符摘要进结果/反馈处理器的两个正交反馈数据流;
c、将正在进入的信息数据流与数码消隐值XOR求和,该正在进入的信息数据流通常包括加密的数据或来自TX或存储于内存的HV/Tag,通常来自TX,在“B”触点带有分流开关,其中XOR解码的和项可以从文本存储器读取,或忽略;同时,分流信息数据流并散列摘要进RX的PRD。在验证阶段,所谓的HV/Tag,通常由始发站TX生成,摘要进RX PRD。在某些实施方式中,由全是“5”的32位字符(55555555)16,是一种实施方式中HV/Tag生成过程中TX使用的输入信息。在每一个首要的时钟周期,加密HV/Tag输入字符,并加载进文本存储器。接收器RX主机,通常从文本存储器中能读取加密的HV/Tag输入字符。如果HV/Tag生成信息输入为全是“5”的字符,有效序列中的每个字符都在RX中检测,所有的“5”都检测及计算;其中计算连贯的全是“5”的字符的数目。通常,在用户定义的预先确定的计算中,对RX主机生成中断,以指示信息源和获得的明文的有效性。
对于所有的实施方式的操作,通常,TX和RX的初始化相同,带有位于“A”位置的分流开关。因此,在有效的初始化摘要序列中,分流开关输出为TX或RX相同的初始化生成信息序列,与TX和RX同样生成的数码消隐序列XOR求和。
如果所有的数据都是有效的,在位置“A”设有分流开关的TX和RX,同样地初始化其各自的引擎,带有紧随其后的总体(重)设置,由任何同样的指定共享的密钥和/或初始值;通常,我们确定两个引擎同步,整个过程的开始,同样的链接值(内部状态变量)。通常,如果TX的位置“A”设有分流开关的加密输出,不会有通过RX的位置“B”的分流开关的错误分流,在每个时钟周期中,匹配的链接值(所有的内部状态变量)为相同的。
如果来自分流开关输出的TX和RX输入是同样的,且TX和RX为同样的初始化。TX和RX中,来自数据搅拌器的数码消隐值和salts(数码消隐、低反馈salt和超级混合salt)同样也是相同的。
初始化之后,分流开关位于“0”时,执行常规的数据流加密,其中没有散列摘要(来自分流开关的输出不会被信息字符输入影响)异于TX或RX的PRD。合成的未预先指定的salts和HAIFA计算器生成强烈的经测试的低层或超层反馈数据流,其通常在这样的系统的实施方式的数以百计的门中扩散。
散列摘要以基于两个正交信息的数据流的生成开始,带有“825”中证明的硬件策略,基于两个连贯的信息字符。在每个首要的时钟周期,分流开关现在的结果输出与先前的结果XOR求和,先前的结果在之前的首要时钟周期中加载进Hash MAC存储器,为低反馈散列摘要数据流的先导。转化为MACMIX半字节储备的正交的现在的结果输出,为超层散列摘要数据流的先导。
将正交散列摘要数据流的两个先导合并进通常未预先指定的salts和虚拟随机序列,虚拟随机序列为常规的数据流密码低层和超层反馈的先导。低层反馈salt(状态变量)和图6A中来自梅森素数HAIFA LFSR计算器,后文所述的“HAIFA计算器”,最小的重大32变量片段,合并进低反馈存储器的输入;超级Mix Salt和HAIFA计算器最重大的32位状态变量,合并进超层反馈存储器的输入。
低反馈Salt和超级Mix Salt为来自数据搅拌器的通常未预先指定的内部状态变量的非线性推导;salts白化且能减少最终反馈数据流的不希望的统计偏误。HAIFA计算器的随机计算序列,与和数码消隐数据流XOR求和的信息及salt不相关,对每个链接值授予唯一的通常64位未预先指定的片段,从而排除了在任何预期的散列摘要过程中两个同样的链接值出现,例如,处理长度,通常少于263信息字符。
HAIFA计算器在每个第一时钟周期激活。在跟随唯一初始值摘要序列的扰码序列,未预先指定的低反馈Salt存储器输出与HAIFA计算器的MS片段虚拟随机状态XOR求和;且未预先指定的超级MIX Salt输出与HAIFA计算器的LS片段的虚拟随机状态XOR求和。在初始值摘要之后,在信息处理的出口处,HAIFA计算器因而处于未预先指定的初始散列摘要状态。后续的HAIFA计算器虚拟随机序列通常,对不知道相关秘密初始化的密钥的对手而言是未预先指定的。
两个轨道影响了ZK-Crypt实施方式中,数据搅拌器和寄存器组中六种不同的多排列虚拟随机32位字符。
在不言自明的图4A和图4B中,我们假定TX和RX进行了同样的初始化。图4A和图4B描述了常规的未加密钥的散列处理(及加密钥的散列,亦即MAC,信息验证编码处理),其中TX和RX第一输入同样的待散列摘要的二进制数据。TX随后开始生成HV/Tag;通常通过输入全是“5”的字符。TX通过Hash MAC存储器向RX输出HV/Tag。
在图5A和图5B所示的实施例中,向HV/Tag生成序列中插入任意长度的任选的信息。分界符为全是“5”的字符。图4B中的RX首先输入所谓同样的相同明文。然而,代替生成HV/Tag带有全是“5”的输入字符的序列,RX通过B分流器分流来自TX的加密的全是“5”的字符HV/Tag,如果所有的都是合适且完整的,B分流器可生成相同的数码消隐序列。如同输入及合适的HV/Tag检查生成的序列是一样的,进入文本存储器的XOR求和之后的序列是全是“5”的字符(55555555);检测,且成功的接收被主机所识别。解码图5A中任意长度的任选的商业信息,带有全是“5”的分界符,该分界符标记了加密信息的结尾、及促销语句的结尾。
图5A和图5B描述了TX和RX引擎的状态,体现了带有验证完整性函数的同时的加密特定处理步骤的唯一链接值。每个块描述了引擎环境,带有到PRD的输入、输出、反馈,该PRD在下一个第一时钟周期影响引擎。
如前所示,在每个阶段中,TX和RX中的PRD都是相同的;TX和RX的数码消隐值也是相同的;到PRD的反馈也是相同的。
在初始化阶段的开始,其与TX和RX相同,引擎的二进制状态变量总体(重)设置为预先定义;“苏醒”状态(所有的状态变量设置为“1”或“0”)有效地使引擎准备几乎马上在通常四个时钟周期内扩散(通常称之为“散列进”)进PRD所有的状态变量每一个密码或信息片段。
在描述的带有验证完整性加密的实施方式中,有担保的、对对手为未预先指定的第一步骤,初始化包括TX和RX共享的“散列进”密钥和“初始值”密钥字符。为了确保所有的非零IV散列进(摘要进)引擎,对对手而言不可预测,提供通常包括扰码处理的协议。每个扰码包括全是“0”的信息的加密;数码消隐值与全是“0”的字符(0000 0000)XOR求和后,输出到未变化的数码消隐值。扰码处理将数码消隐序列反馈至PRD。典型的扰码操作在引擎的四个时钟(机器)周期,散列摘要全是“0”的信息字符。
一种避免对手重新发送同样的传送多于一次的处理,我们知道该同样的传送的内容,是以“摘要进”唯一共享的(可以为非零)初始值IV字符,结束对每个传送会话的初始化处理。[IV对于常规的数据流加密特别重要,没有IV,带有重用密钥初始化的加密/解密数码消隐序列对于每个会话都是一样的;而且容易被获得一个匹配的明文加密文本序列的对手知道,从对手新加入的会话中。]
在上述实施例中,由于所有非零信息字符输入大规模扩散进引擎状态变量,四个时钟周期之后,所有的初始值字符输入均有效地扩散进引擎的所有主要部分。
TX的明文的加密/散列MAC摘要同时输出加密的Y向量,并将Y向量散列进PRD。
假设RX接收完整的密文向量Y,其既解密(读取文本存储器)又向PRD分流(位于B位置的开关);假设RX向RX的PRD供应与TX生成的Y向量一样的Y向量,假设维持TX和RX内部变量于同样的链接值序列。TX和RX可以输入同样数目的扰码字符(或者同一地填补IV序列)。TX和RX可以输入密钥或者密钥的推导;和/或TX和RX可以输入存储的标题;或者输入阶段可能删除的共享的值;由于其很可能冗余。
TX和RX可以生成HV/Tag;TX通常通过输入(加密)全是“5”的序列生成,全是“5”的序列发送至RX;同时RX分流TX的发送,其通常等于RX的数码效益序列,当RX和TX的PRD已经得到同样的反馈。RX同时将TX的发送与其自己的数码消隐序列XOR。若一切顺利,两个序列是相等的,文本存储器接收全是“5”的序列;并且全是“5”的序列检测器、计算器自动以发往主机的有效间断报告成功的验证。(在嵌入广告语的情况下,发送两个有效的间断)
图6A描述了基于梅森素数LFSR的HAIFA计算器,其不可预测地白化、加密并负担低层和超层反馈字符,包括于链接值中,唯一的未预先指定的计算,其很可能确保多于263个信息字符的序列中没有两个链接值能相等。传统上,我们说没有链接值冲突。在跟随TV初始化序列的扰码序列中,有限的状态机器XOR输入两个由数据搅拌器发送的未预先指定的Salt值,以结束HAIFA计算器到未预先指定的初始值的初始化。如同IV值对于每一个会话通常为唯一的,在扰码序列中,我们确定IV值已经扩散进PRD,并且salted HAIFA计算器可以先于该第一信息字符的输入进行初始化,至未预先指定的状态。
图6B描述了一个19位第一长度虚拟随机线性反馈生成器;HAIFA梅森计算器的基本单元。该选定的19位LFSR计算器的单元2、6、8、9、11、18的输出具有接线口。Salt输入通常在扰码序列中,积极初始化HAIFA计算器。正常的LFSR反馈实现全长度的虚拟随机输出,219-1。NFIX门410-19-NFIX确保LFSR永远不会在分流中位于0阶段多于一个计算。图6B和图6C中的单元419-19-s02的描述是匹配的。
图7描述了由结果/反馈处理器调节的四个基本处理的无缝数据流输入和相关输出,其中:
a、序列A描述了流进TX和RX的常规的散列数据生成,其中仅能看到HV/Tag输出;
b、序列B描述了常规的数据流密码加密(或解密)序列,其中加密的文件不会影响密码引擎;对于连续的数据实体解密,LTE提取通常是必要的;
c、序列C描述了带有验证完整性的TX加密;
d、序列D描述了带有自动验证完整性的RX解密。
优先于这四个基本序列数据流的解释,我们描述了输入的数据段,通常在典型的序列中使用和/或保存其单元。为了确保所有的状态变量(链接值)翻转,假定定义的初始流程开始值,其确保了快速的不偏离的扩散所有的信息片段,总体重设命令,亦即总体(重)设置3050被主机初始激活。相反地,在HV/Tag验证序列的结尾,HV/Tag生成3020,仔细的程序员通常选择回到PRD的3300和3400,以知道总体(重)设置3050的原始环境,能移除前面流程的痕迹。
传送的短期保护可以使用机密的任选唯一传输代码,TC3010,其通常能在用户定义的短信息中,唯一地初始化RX和TX。我们建议,当有必要防止对手知道是否接收到有效的传送,使用短的传输代码,TC3010。在传输代码初始化中,通常,与摘要TC3010同时,HAIFA初始化开关打开,以初始化HAIFA计算器400。对于本发明的设备的长期保护,可以使扰码序列3040跟随唯一的TC3010。
文件DOC3015,通常为用户定义的任意信息字符的数据序列。TX/Tag生成由全是“5”的信息字符输入,3020服务于引起编码由全是“5”的信息字符数码消隐值[DOC]3030的输出序列,其反映了唯一的链接值,跟随于加密和散列摘要序列DOC3015的所有PRD3100的二进制状态变量的状态。我们假定4个HV/Tag生成时钟周期3020,最后的DOC3015字符的所有片段均反映进PRD的3015链接值中超过300个状态变量的等式。图5中的促销语序列作为扰码,确保最后加密的信息的扩散的完整。
简要起见,说明函数B、C、D中,我们假定明文DOC3015,为相同的。通常,在一个机器时钟周期内,处理任何输入的信息字符;每个处理的字符通常在下一个主机初始的时钟周期输出。
完整的受保护的初始化处理通常包括将TX和RX共享的密钥3035摘要;单一的初始值3045或3047和通常为全是“0”的字符的扰码输入3040;以在每个通讯会话中,使PRD3200、3300、3400生成唯一的、通常未预先指定的数码消隐序列。实施方式B、C、D中的数据流密码初始化3049,为同样的结构。
如PRD处理3100中的散列摘要实施方式,包括带有任选传输代码TC3010的初始化,传输代码TC3010由TX和RX共享。如果TC3010是已知的常数,PRD处理3100,对于未加密钥的DOC3017的散列摘要,是合适的。对于每个传输TC3010秘密唯一,通常对于机密的有密钥的散列流程提供短期安全初始化。
在TX和RX之间的安全协议通讯下,共享密钥3035可以安全的多次重复使用。如果密钥3035记录于每个部分的安全内存中,这里的密钥对于不需要的第三方不是有效的,对于信任的通讯,通常是确保安全的;并且通常,如果唯一的IV3045扩散进跟随有扰码序列3040的PRD的3200、3300、3400。
扰码序列3040通常用于完成将IV3045和3047的所有片段摘要进PRD的3200、3300、3400和链接值。
初始值,IV3045和3047通常为未预先指定的数字,其通常由TX或RX生成,通常是唯一的,但是通常可为公知常识。常规数据流加密是基于具有定义的初始化的前提,任何及每个加密会话(具有同样的密钥),生成数码消隐字符的设置的序列。没有初始值3045和3047,对手通常从通常信息序列有效的明文对的知识获得单独的数码消隐序列,没有唯一的初始值3045,通常常规的数据流密码通讯能生成同样的可再生的密文序列,能欺骗性地加密与信任的接收器RX的通讯,共享相同的密钥3035。唯一的初始值3045和3047的摘要确保唯一的会话通讯,及唯一用于初始化图6A所示的基于梅森素数的64位HAIFA计算器400的salting序列。
在处理3100、3300、3400的情况下,最后的输出字符结束流程,例如,在额外的锁定活化过程中,HV/Tag3020的最后字符为图3所示的文本存储器310中的“stuck”。当生成最后的HV/Tag,最后锁定留下的最终链接值为无关。锁进Don’t Care字符3025的任何值,通常能使存储于图3B所示的文本存储器310中最后的HV/Tag字符提取出。(数码消隐加密的3025字符通常不相关且不读取)
考虑下面的问题:数据单元的连续单元数据流密码发送,其中单元未定义为常数大小,例如,随机间隔生成的随机大小的结构,特别是其中整个会话后来不带有定义大小的数据单元存储于内存中。通过图3B所示的文本存储器精确地提取第一单元最后加密的信息字符,只有在第二单元的第一信息字符处理后才有可能;亦即,时钟脉冲输入任何错误的信息字符,例如,3025输入信息字符,通常马上破坏PRD处理3300和3400低层反馈存储395和超层反馈存储375;通常与未补偿的常规数据流密码的数码消隐序列不同步。
命令LTE,最终文本提取3052,分流最后处理的字符,其位于图3A和图2B中的文本存储器310的输入到文本存储器310的输出,不带有同步的PRD3200、3300、3400。主机因而,通常不激活PRD时钟地读取带有LTE命令的“最终字符”。使数据单元的最终字符游离,带有Don’t Care字符,会破坏最终链接值。最终通常加密的字符重复作为下一个发送数据单元的第一加密字符。通常,同样的加密字符能为指示RX以合适的顺序接收到第二加密数据单元,以及RX和TX的PRD3300和3400是同步的。
现在考虑数据单元的连续单元数据流密码发送,其中,单元通常具有不变的大小,例如,标准数据实体或信息帧。第一数据单元最后加密的信息字符能在信息字符中以预先定义的时钟提取;例如,通常全是“0”的字符,如后面的实施例,不会缺少安全。
RX能准备其PRD流程3200,以接收下一个数据单元,例如,全是“0”的字符的加密时钟信息帧,知道预期的解密字符通常是TX的最终数码消隐值;亦即,最后的数码消隐值与全是“0”的字符XOR求和。该最后的数码消隐值通常能由TX和RX的文本存储器310在连续的数据单元中字符输出。RX通常检查接收的及自生成的字符。如果其为相同的,RX通常接收正的指示,即该数据单元到达合适的序列,TX的PRD处理3300和RX的PRD处理3400同步。不推荐该流程存储进内存。
加密的文件,ENG[DOC]3055为常规的数据流密码加密序列在DOC3015的输出,其中,数码消隐值不是信息字符的函数,错误抵抗任意长度数据单元输出。
加密的文件,ENC[DOC]3057为数据流密码/散列摘要序列的输出,通常为带有验证的财务加密。ENC[DOC]3057和TAG[DOC],HV/TAG对于引擎序列3400的初始化为附加的,以同时接收DOC3015、散列摘要ENC[DOC]3057、通过输出全是“5”的字符3060的检测器明显地证明有效性。
引擎中的架构3500分流开关300,图3中设置于“A”位置,即为了初始化,又直接摘要ENC[DOC],如同对于TX的处理3100和3300。
引擎中的架构3520分流开关300,图3中在初始化后移到“0”触点,以隔离来自PRD的信息输入,从而实现加密输出的耐错传输(无错传播)。
引擎中的架构3510分流开关300,初始化后移到分流位置“B”,以适当地解密,并散列摘要ENC[DOC]3057以生成并比较HV/Tag。
在某些实施例中,扰码序列跟随IV序列。
图7中的实施例A-D描述了无缝数据流输入及相关的由结果/反馈处理器调节的四个基本处理的输出。所有的操作证明无缝、无中断的数据字符输入,其中:
a、实施例A描述了无缝HV/Tag生成输入序列实施方式,如图3A所示,包括:任选的传输代码初始化;明文DOC的CFB模式散列摘要;图3A所示,CFB模式“G”,全是“5”的字符HV/Tag生成序列;锁定的“don’t care”字符,以排出最后的HV/Tag字符;良好的内务处理总体(重)设置,RST,打开或关闭加密会话的操作。仅仅输出HV/Tag。
b、实施例B描述了第一信息帧,DOC,对于OFB模式的TX加密传输输入序列实施方式,带有位于“0”触点的开关,并且在CFB加密模式中,带有位于“A”触点的开关,包括:以密钥、IV、扰码初始化,开关位于“A”触点;第一信息帧的加密(后续至少有一个信息帧);LTE,最终文本排出命令(不是字符输出),能提取最后的“等待下一个周期”加密DOC字符,不等待输入下一个信息帧的第一字符;因而,不破坏延迟的下一信息帧加密序列处理之前的,最后的链接值。仅仅输出加密的信息帧。
c、如图5A所示,实施例C描述了无缝的TX类型带有验证生成输入序列的加密的实施方式,包括:如实施例B中的加密初始化;与CFB散列摘要同时的加密;“G”,全是“5”的字符HV/Tag生成序列,同时在实施例A中显示;计时的“don’t care”字符,以排除最后的HV/Tag字符。输出加密的DOC和HV/Tag。
d、实施例D描述了RX类型的无缝解密,带有验证生成输入序列的实施方式,包括:如实施例C中的典型的密码初始化;与对TX生成的密文CFB散列摘要同时的解密;与CFB散列摘要的TX生成HV/Tag同时的TX生成的HV/Tag解密,以同时提供对于G(这里全是“5”)序列的和谐解密的密文序列。文本存储器的输出可选为由主机读取。文本存储器的输出输入进全是“5”的检测器,能验证G序列的一部分或全部;每个全是“5”的字符标记可编程的全是“5”的字符计算器,能对主机生成中断,指示验证为和谐的DOC的成功接收。
图8A、8B、8C描述了完整的加密的和验证的二进制数据信息帧的多数据实体传输;如同通常,可用于通过公开频道传输,秘密存储;例如,可靠的内存中的加密的参数(boot)、流程程序、数据基础,其中保存给定的、或新的密钥,特定的IV和HV/Tag以用于验证。每一TX和RX使用两个相同的引擎,对于第一信息帧传输,使用密钥和I V进行相同的初始化。
对于一个会话处理,我们假定TX和RX共享密钥和IV,TX生成传输代码TC,由指标#i表示异常。对于每个信息帧i,传送TX和RX可以获得新的由指标#i表示异常的TC。
基本上,一个引擎用于验证传输,使RX散列摘要/数据流解密序列中明确验证的单一信息帧序列,预先知道接收的加密信息帧数据已经验证过,在RX递增地解密及摘要每个单一帧信息之前。在最后的信息帧的TX的加密和RX的解密之后,TX生成所有的信息帧Tag,RX生成所有信息帧Tag并将其与TX生成的比较。
每个信息帧传送都经过验证,任选的由编入索引的TX掩饰。发现发送的信息帧的HV/Tag为错误的情况下,RX通常要求重复发送,在RX继续散列摘要/解密该信息帧之前,该重复发送必须成功。RX保存所有信息帧,但是不保存来自每一信息帧的HV/Tag。带有调节的错误修正代码的系统中的实现通常防止大部分RX的重复发送的要求。
所有信息帧的Tag作为多数据实体发送的验证的最后的证明,加密数据和数据的起源的验证。通常,RX仅仅需要存储单一的序列中加密的数据,与所有信息帧的Tag并置,该所有信息帧的Tag在未来的使用之前,自动可以为RX证明存储数据的完整性,
图9A和9B描述了虚拟随机函数生成器的通用实施方式,PRFG1101,其包括前面图2A、2B、2C、2D、3B、4A、4B中所述的PRD1100的实施方式。
该PRFG也包括任选的单一时钟周期的当前输入数据字符的大量扩散进下一时钟周期的PRFG数码消隐输出。这允许了单一或多字符初始化、加密/解密、HV生成/验证。单一时钟周期初始化和HV安全,在这样的情况下为与PRFG字符相等的。如“825”中,可以想象128位或更多的字符长度。图9A和9B的实施例显示了单一时钟周期初始化,步骤,明码/密文的单一字符和单一字符散列生成器/散列值-tag输出。
通常,对于单一的时钟周期,单一字符初始化,唯一稀少的初始值的片段与已知的共享密钥的间隔XOR求和,及散布进已知的共享密钥的间隔。该间隔与链接值、特别是数码消隐输入片段的平均的统计扩散相等。在“825”的ZK-Crypt实施方式中,带有分流的内部关键路径缩短器;进入数码消隐的满的扩散在下一个时钟周期实现,最少300链接值片段的等式包括变化。
通常,最大化单一片段即时扩散导致分流内部缓冲存储器,该缓冲存储器能减少内部关键路径的长度,亦即,最大数目的半导体门,在“到达”缓冲输入之前,一个输入变量导线(traverse)。每个路径门具有其自己的传播时间,半导体回路的最大操作频率为最大关键路径的反转函数。漫长的减速信号使其它信号激发时失去平衡,引起大量增加的电流消耗,如同影响的门振动。
有效的系统要求TX的PRFG1101和RX的PRFG1101是同样的或功能匹配,进行同样的初始化,其中,在每一同步的时钟周期,及第二阶段,两个PRFG1101接收同样的TX生成的数据字符输入,能维持同样的PRFG输出值从输出缓冲——数码消隐1102发出。我们此处要求保护的初始化高扩散方法更加有效,如图2A所示,数据被散列摘要(扩散);但在前面的实施方式,其初始值直接输入进PRFG1300的二进制状态变量。
TX和RX的PRFG的第二基本的单元是XOR合成器1300,能同时接收来自数据缓冲1301的数据字符,以及来自数码消隐1102的虚拟随机数据。
TX和RX中,XOR合成器1300用于将通过数据缓冲1301接收到的数据字符和由数码消隐1102输出的虚拟随机数据字符编码(分别加密或解密,见图2A、2B、2C、2D)。编码后的数据通常直接通往主机采样器2005。在初始化过程中,编码的专有数据通常不会被主机采样器2005读取,但是输入进第三个基本单元,切换函数300。
在带有完整性加密的正常阶段,该输出数据通常由主机采样器2005读取。
所述第三基本(在某些实施方式中)单元,切换函数300具有三个输入和一个供应PRFG1101的输出。“0”输入,用于数据的常规数据流加密,如图2B所述,其中数据输入不会影响PRFG1101;亦即,输入为“0”且与本实施例不相关。
第二输入,如图9A中所示的实线,带有切换函数于A位置,直接连接XOR合并器1300的输出至PRFG1101输入。在TX和RX带有共享的密钥和初始环境数据的初始化过程中,该开关位置经常与A位置的切换函数连接。这确保在通讯阶段的开始,所有的二进制状态变量,以及TX和RX下一个阶段的初始链接值是同样的。
在图9A的TX的配置中,如图2C和图2D所示,在TX与RX通讯的正常阶段中;两类感兴趣的编码的数据通过切换函数300供应(散列摘要)进入PRFG1101。
同时,如这里以及图2C和图2D所示,所述编码的数据字符通过主机采样器2005发送至RX。
在图9B的RX配置中,如图2C和图2D所示,在TX与RX通讯的正常阶段中;两类感兴趣的编码的数据通过位于第三分流位置的切换函数300供应(散列摘要)进入PRFG1101,从而确保到TX和RX的PRFG的输入是相同的。
同时,所述相同的TX的编码的,通常加密的数据字符通过主机采样器2005发送至RX缓冲1301中的数据,图9B,RC的XOR合成器如图2C和图2D所示。如果所有都是完整的,包括传送频道,输入RX的两类感兴趣的加密数据,被XOR合成器解密,并输出到主机采样器2005。实施例中典型的定义和数据字符的预测跟随:
TA1=RA1在实施例中为唯一共享的TX-RX密钥/初始值数据;
TA2为感兴趣的第一数据;DOI通常是机密的明文;
TA3是散列生成器字符;DO2,由RX知道,且在半导体实施方式中为任选的嵌入字符;
TB1为被可预测的TC1加密的未预先指定的TA1,TX的PRFG输出;TB1是未预先指定的;
TB2为被TC1加密的TA2,密文,两个字符通常都是未预先指定的;TB2是未预先指定的;
TB3是被TC3加密的,TA3散列生成器字符;因此TB3是定义的散列值。
在所见总体重设操作之后,对于TX和RX的单个和多个据输入,其输入/输出数据流的状态如下表:
Figure BDA0000079753060000331
图10的表格显示了每个TX设备和对应的RX设备的虚拟随机函数的输入和输出、切换函数和XOR合成器部件,其均可根据本发明某些实施方式配置及运转。
图11是现有技术“825”用于生成长字符的结构。带有链式反馈的任意大数目的正交双轨反馈提供了加速输出而不增加每个处理字节所耗费能量的方法。
值得注意的是,例如“强制”、“要求”、“需要”、“必须”等类似术语指的是特定实现的语境做出的实现选择,其目的是表达清楚,而不是限制,因为在替代的移用中,同样的单元可以定义为不是“强制”,也不是“要求”,或者甚至连“可能”都消除。
值得注意的是,本发明的软件部件包括程序和数据,其可以,若要求的话,实现为ROM(只读内存)形式,其包括CD-ROM、EPROM、EEPROM,或者可以存储于任何合适的计算机可读媒介,例如但不限于各种种类的盘、各种种类的卡、RAM。这里描述的作为软件的部件可以,替代地,实现为全部或部分为硬件,若要求,使用常规的技术。相反,这里描述的作为硬件的部件可以,替代地,实现为全部或部分为软件,若要求,使用常规的技术。
在本发明的范围内,内部alia为,携带以任何合适的顺序实施这里描述或显示的任何方法的任何或所有步骤的电脑可读指令的电磁信号;用于以任何合适的顺序实施这里描述或显示的任何方法的任何或所有步骤的机器可读指令;机器可读的程序存储设备,其明白地体现由机器执行的指令程序,从而以任何合适的顺序实施这里描述或显示的任何方法的任何或所有步骤;包括计算机可用媒介的计算机程序产品,其中计算机可用媒介具有电脑可读程序代码例如执行代码和/或计算机可读程序代码以任何合适的顺序实施这里描述或显示的任何方法的任何或所有步骤;当以任何合适的顺序实施时,由这里描述或显示的任何方法的任何或所有步骤带来的任何技术效果;任何合适的装置或设备或类似的结合,单独或合并起来,程序化地以任何合适的顺序实施这里描述或显示的任何方法的任何或所有步骤;电子设备,每个都包括处理器和协同输入设备和/或输出设备,能以软件实施这里描述和显示的任何步骤;信息存储设备或物理记录设备,例如盘或卡的驱动,引起计算机或其它设备的安装以达到以任何合适的顺序执行这里描述或显示的任何方法的任何或所有步骤;内存中或信息网络例如互联网中,预存储的程序,在被下载之前或之后,其体现了这里描述或显示的任何方法的任何或所有步骤,以任何合适的顺序,或者上传或下载这种程序的方法,用于该种用途的包括服务器和/或客户端的系统;单一的或结合有软件的、以任何合适的顺序实施这里描述或显示的任何方法的任何或所有步骤的硬件。
这里描述的任何计算或任何其它形式的分析可以由合适的计算方法实施。这里描述的任何步骤可以由电脑实现。这里描述和显示的发明可以包括:(a)使用计算方法以识别任何问题的结果或这里描述的任何物体的结果,该结果任选地包括至少一个决定、一个行动、一个产品、一种服务、或这里描述的任何可以产生正面影响的其它信息;(b)输出该结果
本发明的特征以分离的实施方式描述,也可以在一个单独的实施方式中合并提供。相反地,发明的特征,包括方法的步骤,为了简要,在一个单独的实施方式中、或某种可以分别提供的顺序、或以任何适当的变形、或以不同的顺序描述。这里使用的“例如”的意义特定的实施例,而非限定。在某些实施方式中,任何附图中的设备、装置、系统可以整合为一个单独的平台,或可以通过任何适当的有线或无线连接,例如但不限于光纤、以太网、局域无线网、家庭PNA、电线通讯、手机、PDA、黑莓GPRS、卫星包括GPS,或其它移动设备。值得注意的是,这里的描述和显示中,系统和部件的功能也可以提供为方法和步骤,方法和步骤的功能也可以提供为系统和部件。附图中用于显示不同单元的比例仅仅是为了作为示范和/或适于显示,并非为了限制本发明。电脑程序产品,包括具有电脑可读程序代码的电脑可用媒介,该电脑可读程序代码适应于执行这里显示或描述的任何方法。

Claims (25)

1.一种数据完整性系统,该系统包括:
发送器,其包括TX虚拟随机函数生成器、具有发送选项的TX切换函数、以及TX合成器;
在初始化阶段,TX合成器能接收来自主机的初始化数据实体,该初始化数据实体包括至少一个字符[TA1],
在正常操作阶段,TX合成器能接收两个感兴趣的数据实体[DOI1=TA2]和[DOI2=TA3],每个数据实体至少分别包括一个感兴趣的数据字符[TA2]和[TA3];
在初始化阶段的至少一个迭代步骤中,TX合成器接收来自TX虚拟随机函数生成器的第一数据实体,该第一数据实体包括至少一个字符[TC1],其为随机的数据输入,以生成所述初始化数据实体字符[TA1]和至少一个随机数据实体[TC1]的第一XOR加和以及
在正常操作阶段,TX合成器生成并输出第二XOR加和
Figure FDA0000079753050000012
和第三XOR加和
Figure FDA0000079753050000013
其中TB2和TB3是随机数据实体;
其中,所述的字符TA1、TA2和TA3能用于初始化所述数据完整性系统,其包括使所述数据完整性系统对所述字符TA2进行加密,并利用所述字符TA3生成一识别离散值的输出。
2.如权利要求1所述的系统,其进一步包括接收器,该接收器包括:RX虚拟随机函数生成器、RX切换函数和RX合成器,其中所述RX虚拟随机函数生成器与所述TX虚拟随机函数生成器在功能上是等同的,所述RX切换函数具有发送选项和接收选项。
3.如权利要求1所述的系统,其中,所述的第二XOR加和包括将所述感兴趣的数据实体[TA2]和[TA3]以及两个未预先指定的数据实体编码,其中每个未预先指定的数据实体包括至少一个由TX虚拟随机函数生成器提供的字符[TC2]。
4.如权利要求1所述的系统,其中,所述的第三XOR加和包括将所述感兴趣的数据实体[TA2]和[TA3]以及两个未预先指定的数据实体编码,其中每个未预先指定的数据实体包括至少一个由TX虚拟随机函数生成器提供的字符[TC3]。
5.如权利要求1所述的系统,其中,所述的TX切换函数能安排所述的第一、第二、第三XOR加和[TB1]、[TB2]、[TB3]作为所述TX虚拟随机函数生成器的输入项。
6.如权利要求1所述的系统,其中,所述的TX虚拟随机函数生成器能接收来自TX合成器的第一、第二和第三XOR加和[TB1]、[TB2]、[TB3],以由此生成随机数据实体[TC1]、[TC2]、[TC3],并为TX合成器生成随机数据实体。
7.如权利要求6所述的系统,其中,所述随机数据实体[TC1]、[TC2]、[TC3]分别为关于所述XOR加和[TB1]、[TB2]、[TB3]的函数f0、f1、f2。
8.如权利要求7所述的系统,其中,每一所述函数f0、f1、f2均包括关于至少一个虚拟随机函数生成器的无多项式算法的随机函数,该虚拟随机函数生成器能被至少一个所述XOR加和所影响。
9.如权利要求2所述的系统,其中,所述的RX切换函数能从主机接收数据实体[RA1],该数据实体[RA1]与所述发送器共享,使得[RA1=TA1],其中所述数据实体[RA1]为XOR求和至至少一个字符数据实体[RC1],该字符数据实体[RC1]为来自所述RX虚拟随机函数生成器的输出;以及在初始化阶段的至少一个迭代步骤中,所述的RX切换函数安排所述合成器的输出
Figure FDA0000079753050000021
至所述RX虚拟随机函数生成器。
10.如权利要求9所述的系统,其中,在第二正常操作阶段中,所述RX切换函数能接收所述TX合成器的输出,该输出包括编码后的感兴趣的TX XOR加和数据 [ TB 2 = TC 2 ⊕ TA 2 ) [ TB 3 = TC 3 ⊕ TA 3 ) , 以安排RX输入[TB1]和[TB2]至所述RX虚拟随机函数生成器。
11.如权利要求10所述的系统,其中,TA2包括DOI1文件,该DOI1文件包括明文;其中,所述DOI1文件包括至少一个未预先指定的字符数据实体,该字符数据实体包括来自于TX虚拟随机函数生成器的[TC2=f1(TB1]。
12.如权利要求10所述的系统,其中,TA3包括DOI2文件,如果数据的长度大于一个字符,则该DOI2文件包括重复的离散生成字符;其中,所述DOI2文件包括至少一个未预先指定的字符数据实体,该字符数据实体包括来自于TX虚拟随机函数生成器的[TC3=f2(TB2]。
13.如权利要求9所述的系统,其中,在初始化阶段中,所述的RX合成器能在所述初始化阶段的至少一个迭代步骤中接收所述初始化数据实体[RA1=TA1]。
14.如权利要求9所述的系统,其中,在正常操作阶段中,所述的RX合成器能接收来自TX XOR合成器输出的至少一个字符编码的数据实体[TB2]和[TB3]。
15.如权利要求14所述的系统,其中,所述的共享第一输入数据[RA1=TA1]与来自所述RX虚拟随机函数生成器的[RC1=f1(RB1)]进行XOR求和,且不向主机取样器输出。
16.如权利要求9所述的系统,其中,在正常操作阶段中,所述的RX合成器能生成两个TX数据输出[TB2]和[TB3]与来自RX虚拟随机函数生成器的两个RX未预先指定的数据实体[RC2]和[RC3]的XOR加和,从而重建感兴趣的数据。
17.如权利要求16所述的系统,其中,所述感兴趣的数据包括
Figure FDA0000079753050000031
Figure FDA0000079753050000032
以及
Figure FDA0000079753050000033
Figure FDA0000079753050000034
从而指示出DOI1的有效性,因为 ( X ⊕ X = 0 , X ⊕ 0 = X ) .
18.如权利要求9所述的系统,其中,在正常操作中,所述的RX虚拟随机函数生成器能通过所述RX切换函数直接接收所述[TB2]数据和[TB3]数据,从而生成至少两个未预先指定的相同的数据实体[RC2=TC2]和[RC3=TC3],从而继续维护RX虚拟随机函数生成器和TX虚拟随机函数生成器的相同的二进制状态变量。
19.如权利要求18所述的系统,其中,所述的[TB2]数据和[TB3]数据是同时接收的。
20.如权利要求1所述的系统,其中,所述的字符TA1、TA2和TA3能初始化所述数据完整性系统,其包括使所述数据完整性系统对字符TA2加密、并同时通过所述字符TA3生成识别离散值的输出。
21.如权利要求1所述的系统,其进一步包括多个数据完整性系统,其中,每个数据完整性系统均包括TA3字符,而且每一独立的数据完整性系统的TA3字符对该独立的数据完整性系统是唯一的。
22.一种数据完整性方法,其包括:
提供发送器,该发送器包括TX虚拟随机函数生成器、具有发送选项的TX切换函数、以及TX合成器;
在初始化阶段,利用TX合成器接收来自主机的初始化数据实体,该初始化数据实体包括至少一个字符[TA1],
在正常操作阶段,利用TX合成器接收两个感兴趣的数据实体[DOI1=TA2]和[DOI2=TA3],每一数据实体分别包括至少一个感兴趣的数据字符[TA2]和[TA3];
在初始化阶段的至少一个迭代步骤中,利用TX合成器接收来自TX虚拟随机函数生成器的第一数据实体,该第一数据实体包括至少一个字符[TC1],其为随机的数据输入,以生成所述初始化数据实体字符[TA1]和至少一个随机数据实体[TC1]的第一XOR加和
Figure FDA0000079753050000041
在正常操作阶段,使用TX合成器生成并输出第二XOR加和
Figure FDA0000079753050000042
Figure FDA0000079753050000043
和第三XOR加和
Figure FDA0000079753050000044
其中TB2和TB3是随机数据实体;
其中,所述的字符TA1、TA2和TA3能初始化所述数据完整性系统,其包括使所述数据完整性系统对字符TA2加密,并利用所述字符TA3生成识别离散值的输出。
23.一种提高随机性的方法,以提高设置有虚拟随机函数生成器的虚拟随机函数计算系统的随机性,该方法包括:
利用至少两个相对的主要最大长度的线性反馈移位寄存数据字符中至少一个字符长度连接,输出唯一的虚拟随机字计算序列;
将至少一个输入的随机字符计算序列与至少一个虚拟随机函数计算系统输入合并,从而使虚拟随机性与虚拟随机函数生成器相加。
24.如权利要求23所述的方法,其中,所述虚拟随机函数计算系统包括权利要求1-21的任一系统。
25.如权利要求24所述的方法,其中,在输入感兴趣的编码数据之前,所述计算序列被初始化为预先未指定的值,并在第二正常操作阶段中,被输入至TX和RX虚拟随机函数生成器中的一个。
CN201080005995.0A 2009-01-29 2010-01-28 带有验证完整性的加密系统和方法 Expired - Fee Related CN102317904B (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US20643909P 2009-01-29 2009-01-29
US61/206,439 2009-01-29
US21485609P 2009-04-30 2009-04-30
US61/214,856 2009-04-30
US27586609P 2009-09-04 2009-09-04
US61/275,866 2009-09-04
PCT/IL2010/000075 WO2010086855A2 (en) 2009-01-29 2010-01-28 System and methods for encryption with authentication integrity

Publications (2)

Publication Number Publication Date
CN102317904A true CN102317904A (zh) 2012-01-11
CN102317904B CN102317904B (zh) 2015-03-11

Family

ID=42396132

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080005995.0A Expired - Fee Related CN102317904B (zh) 2009-01-29 2010-01-28 带有验证完整性的加密系统和方法

Country Status (4)

Country Link
US (1) US8280056B2 (zh)
EP (1) EP2382536B1 (zh)
CN (1) CN102317904B (zh)
WO (1) WO2010086855A2 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104396182A (zh) * 2012-04-16 2015-03-04 迈德安全基金会 加密数据的方法
CN104486756A (zh) * 2014-12-05 2015-04-01 深圳职业技术学院 一种密笺短信的加解密方法及系统
TWI581598B (zh) * 2014-09-17 2017-05-01 國立成功大學 通訊認證方法
CN109923516A (zh) * 2014-05-14 2019-06-21 卡拉公司 加强计算机安全性,可变字长编码以及可变长码解码的技术

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101714108B1 (ko) * 2009-12-04 2017-03-08 크라이프토그라피 리서치, 인코포레이티드 검증가능 누출 방지 암호화 및 복호화
US20110228936A1 (en) * 2010-03-22 2011-09-22 Atek Products Group Wireless synchronization of remote switches for end device applications
GB2501847A (en) * 2011-01-18 2013-11-06 Fortress Gb Ltd System and method for computerized negotiations based on coded integrity
JPWO2013065241A1 (ja) * 2011-10-31 2015-04-02 日本電気株式会社 インクリメンタルmacタグ生成装置、方法及びプログラム並びにメッセージ認証装置
US10797864B2 (en) * 2011-11-21 2020-10-06 Combined Conditional Access Development And Support, Llc System and method for authenticating data while minimizing bandwidth
US8345876B1 (en) 2012-03-06 2013-01-01 Robert Samuel Sinn Encryption/decryption system and method
CN103312732B (zh) * 2012-03-07 2017-12-26 腾讯科技(深圳)有限公司 数据文件的传输方法及装置
US8832450B2 (en) * 2012-05-31 2014-09-09 Apple Inc. Methods and apparatus for data hashing based on non-linear operations
EP2918057B1 (en) * 2012-11-12 2017-01-04 Telefonaktiebolaget LM Ericsson (publ) Methods and nodes for verification of data
TWI510046B (zh) * 2013-07-04 2015-11-21 Univ Nat Cheng Kung 認證式加解密方法
CN106031079B (zh) * 2013-12-20 2019-10-11 皇家飞利浦有限公司 加密算法中的运算符提升
US9576116B2 (en) * 2013-12-26 2017-02-21 Nxp B.V. Secure software components anti-reverse-engineering by table interleaving
TWI712915B (zh) * 2014-06-12 2020-12-11 美商密碼研究公司 執行一密碼編譯操作之方法,以及電腦可讀非暫時性儲存媒體
CN105787711B (zh) * 2014-12-24 2020-01-10 阿里巴巴集团控股有限公司 基于确认码的信息鉴权方法、装置及系统
US9871786B2 (en) 2015-07-23 2018-01-16 Google Llc Authenticating communications
US20170052907A1 (en) * 2015-08-17 2017-02-23 Oblivion Labs,Inc. Synchronized hardware-based security for a communication system
JP6697307B2 (ja) * 2016-03-31 2020-05-20 株式会社メガチップス 暗号化装置、プログラム、及び暗号化方法
US10453074B2 (en) 2016-07-08 2019-10-22 Asapp, Inc. Automatically suggesting resources for responding to a request
US10083451B2 (en) 2016-07-08 2018-09-25 Asapp, Inc. Using semantic processing for customer support
WO2018106570A1 (en) * 2016-12-09 2018-06-14 Cryptography Research, Inc. Programmable block cipher with masked inputs
US10109275B2 (en) * 2016-12-19 2018-10-23 Asapp, Inc. Word hash language model
US10650311B2 (en) 2016-12-19 2020-05-12 Asaap, Inc. Suggesting resources using context hashing
US10560269B2 (en) * 2017-04-05 2020-02-11 Trellisware Technologies, Inc. Methods and systems for improved authenticated encryption in counter-based cipher systems
DE102017208503A1 (de) * 2017-05-19 2018-11-22 Bayerische Motoren Werke Aktiengesellschaft Verfahren, Computerlesbares Medium, System und Fahrzeug umfassend das System zum Bereitstellen eines Datensatzes eines Fahrzeugs an einen Dritten
US20220085816A1 (en) * 2017-06-21 2022-03-17 AEMEA Inc. Clock and Periodic Computing Machines
US10497004B2 (en) 2017-12-08 2019-12-03 Asapp, Inc. Automating communications using an intent classifier
US10489792B2 (en) 2018-01-05 2019-11-26 Asapp, Inc. Maintaining quality of customer support messages
US10210244B1 (en) 2018-02-12 2019-02-19 Asapp, Inc. Updating natural language interfaces by processing usage data
US10169315B1 (en) 2018-04-27 2019-01-01 Asapp, Inc. Removing personal information from text using a neural network
US11216510B2 (en) 2018-08-03 2022-01-04 Asapp, Inc. Processing an incomplete message with a neural network to generate suggested messages
US10747957B2 (en) 2018-11-13 2020-08-18 Asapp, Inc. Processing communications using a prototype classifier
US11551004B2 (en) 2018-11-13 2023-01-10 Asapp, Inc. Intent discovery with a prototype classifier
US10984115B2 (en) 2018-12-04 2021-04-20 Bank Of America Corporation System for triple format preserving encryption
US11552781B2 (en) * 2019-04-05 2023-01-10 Honeywell International Inc. Using error detection bits for cryptographic integrity and authentication
US11429751B2 (en) * 2019-07-01 2022-08-30 Rajant Corporation Method and apparatus for encrypting and decrypting data on an integrated circuit
US11425064B2 (en) 2019-10-25 2022-08-23 Asapp, Inc. Customized message suggestion with user embedding vectors

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1528068A (zh) * 2001-07-05 2004-09-08 乔治・B・古罗夫 用于计算机网络中分布式数据处理的集成式保护的方法与系统
US20070244951A1 (en) * 2004-04-22 2007-10-18 Fortress Gb Ltd. Accelerated Throughtput Synchronized Word Stream Cipher, Message Authenticator and Zero-Knowledge Output Random Number Generator

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2400220C (en) * 2000-02-15 2013-07-30 Silverbrook Research Pty Ltd Consumable authentication protocol and system
US7367045B2 (en) 2002-03-16 2008-04-29 Trustedflow Systems, Inc. Trusted communications system
US7200868B2 (en) 2002-09-12 2007-04-03 Scientific-Atlanta, Inc. Apparatus for encryption key management
WO2006024042A2 (en) * 2004-08-27 2006-03-02 Ntt Docomo, Inc. Provisional signature schemes
US7680273B2 (en) * 2004-12-08 2010-03-16 Schweitzer Engineering Laboratories, Inc. System and method for optimizing error detection to detect unauthorized modification of transmitted data
US7852162B2 (en) 2005-10-27 2010-12-14 FortressGB Pseudo random noise device based on a random frequency modulated oscillator
WO2007063491A2 (en) * 2005-12-02 2007-06-07 Koninklijke Philips Electronics N.V. Protection of digital content
CA2546148A1 (en) * 2006-05-09 2007-11-09 Nikolajs Volkovs Method, system and computer program for polynomial based hashing and message authentication coding with separate generation of spectrums
WO2008029406A2 (en) * 2006-09-07 2008-03-13 Fortress Gb Ltd. A system and method to preclude message modification in data authentication systems through efficient use of feedback in cryptographic functions

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1528068A (zh) * 2001-07-05 2004-09-08 乔治・B・古罗夫 用于计算机网络中分布式数据处理的集成式保护的方法与系统
US20070244951A1 (en) * 2004-04-22 2007-10-18 Fortress Gb Ltd. Accelerated Throughtput Synchronized Word Stream Cipher, Message Authenticator and Zero-Knowledge Output Random Number Generator

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
GRESSEL C; ET AL: "Understanding the ZK-Crypt- a Hash/Stream Cipher for (Almost) all Reasons", 《FORTRESSGB LTD.》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104396182A (zh) * 2012-04-16 2015-03-04 迈德安全基金会 加密数据的方法
CN109923516A (zh) * 2014-05-14 2019-06-21 卡拉公司 加强计算机安全性,可变字长编码以及可变长码解码的技术
TWI581598B (zh) * 2014-09-17 2017-05-01 國立成功大學 通訊認證方法
CN104486756A (zh) * 2014-12-05 2015-04-01 深圳职业技术学院 一种密笺短信的加解密方法及系统

Also Published As

Publication number Publication date
US8280056B2 (en) 2012-10-02
EP2382536A2 (en) 2011-11-02
CN102317904B (zh) 2015-03-11
EP2382536A4 (en) 2012-07-11
WO2010086855A2 (en) 2010-08-05
WO2010086855A3 (en) 2010-12-29
EP2382536B1 (en) 2018-04-25
US20110286596A1 (en) 2011-11-24

Similar Documents

Publication Publication Date Title
CN102317904B (zh) 带有验证完整性的加密系统和方法
Simmons Symmetric and asymmetric encryption
CN102725737B (zh) 可验证防泄漏的加密和解密
US4912762A (en) Management of cryptographic keys
CN103427987B (zh) 数据加密的方法、数据验证方法及电子装置
US6683956B1 (en) Encrypting conversion apparatus, decrypting conversion apparatus, cryptographic communication system, and electronic toll collection apparatus
CA2373787C (en) Self authentication ciphertext chaining
WO2007103906A2 (en) Secure data transmission using undiscoverable or black data
CN102970138A (zh) 签密方法和装置以及对应的签密验证方法和装置
CN101765996A (zh) 远程认证和交易签名
US20080130876A1 (en) Method for Private-Key Encryption of Messages, and Application to an Installation
US6640303B1 (en) System and method for encryption using transparent keys
CN102594551B (zh) Rfid标签隐私数据可靠统计方法
CN102239714A (zh) 基于应用层的移动金融业务的安全通信方法及其装置
CN101001142A (zh) 一种基于迭代随机数产生器的加解密方法
CN101867471A (zh) 基于无理数的des认证加密算法
CN109150505A (zh) 一种用于sap系统的信息传输方法及装置
CN101931535A (zh) 一种无需认证中心的自适应数据加密及认证方法
CN102903226A (zh) 智能电表通信的数据传输方法
CN107896149A (zh) 基于三个群运算的128位对称加密方法
CN108933659A (zh) 一种智能电网的身份验证系统及验证方法
JP5378702B2 (ja) 秘匿認証システム
CN109861822A (zh) 一种区块链系统中可控消息交易加密的方法
JP4556252B2 (ja) 暗号変換装置、復号変換装置、暗号通信装置および自動料金徴収システムに用いられるicカード、車載機および路側機
Joshi et al. A randomized approach for cryptography

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150311

Termination date: 20210128

CF01 Termination of patent right due to non-payment of annual fee