CN110324146A - 对离线唯密文攻击的缓解 - Google Patents
对离线唯密文攻击的缓解 Download PDFInfo
- Publication number
- CN110324146A CN110324146A CN201811485652.3A CN201811485652A CN110324146A CN 110324146 A CN110324146 A CN 110324146A CN 201811485652 A CN201811485652 A CN 201811485652A CN 110324146 A CN110324146 A CN 110324146A
- Authority
- CN
- China
- Prior art keywords
- ciphertext
- output
- module
- encryption equipment
- encryption
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/001—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using chaotic signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/068—Network architectures or network communication protocols for network security for supporting key management in a packet data network using time-dependent keys, e.g. periodically changing keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1491—Countermeasures against malicious traffic using deception as countermeasure, e.g. honeypots, honeynets, decoys or entrapment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0852—Quantum cryptography
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
- H04L9/16—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
- Soil Working Implements (AREA)
- Diaphragms For Electromechanical Transducers (AREA)
- Paper (AREA)
Abstract
在本文公开的是用于缓解密文的离线解密攻击的系统方法,以及计算机程序产品实施例。实施例通过将明文输入到加密器中、将从加密器输出的密文写入到存储器中、将来自存储器的密文输入到噪声生成器中,响应于从定时器接收第一定时信号将来自存储器的密文输出到输出设备,以及响应于从定时器接收第二定时信号将由噪声生成器生成的噪声数据输出到输出设备来进行操作。在一些实施例中,输出设备可以是分布式总账中的节点。分布式总账例如可以包括区块链。使用在本文公开的技术,可以加强加密,以在即使当非可信第三方攻击者使用与合法方的主计算机分开的重要的计算资源时,也阻碍非可信第三方攻击者破解对例如敏感且机密的信息的加密的尝试。
Description
技术领域
本申请涉及离线唯密文攻击的缓解。
背景技术
在加密信息(即,密文)对公众永久可用的情形中,有动机对密文进行解密的攻击者实际上会有无限的时间和资源来尝试进行离线解密,而不会被检测到。合法的有关各方(即,密文的创建者和预定接收者)因此不能够具体了解攻击者诸如通过密码分析或强力正在访问或设法对密文进行解密,并且采取反应性措施来防范此类攻击。区块链上的密文就是像这样的常见情形,利用密文隐藏私有交易。
尽管已知的解决方法存在——诸如避免在分布式公开总账中公开共享可加密验证的数据,但其他危机大量存在。在防止数据破坏、泄漏、伪造、毁灭、篡改或意外丢失时私下地维护交易的一致记录可能招致附加的费用和困难,这可以通过采用区块链技术来补救。
为了确保采用将导致私有信息永久且公开可用的技术,潜在的采用者通常希望保证他们的私人交易信息将是相当安全的,尽管允许潜在的攻击者不受限制地访问这些机密信息,即使只是以加密形式。在这些情形中,尽管通常应当使用所建立的良好的做法,诸如密钥旋转、强力算法、长密钥,等等,但仅仅这些做法将不足以提供对于例如将在永久公开总账上或在任何其他永久公开论坛中公开可用的敏感加密信息的合理保障,这是因为信息不可以被移除或更改以使用新的加密密钥或方案。
计算平台持续发展的趋势,即使能够打破强大的加密,通常也意味着现在被认为是强大的加密将在未来数十年内不会很强,即使需要在相当长的时间内保持机密性,如果不是无限期的话。因此,在数据完整性和机密性受到高度重视的情况下,需要增加一定程度的保证,以保护私人信息并向用于私人交易和其他敏感信息的公开平台——例如基于区块链的系统——的潜在采用者灌注信心。
附图说明
附图被合并于此并且形成说明书的一部分。
图1是图示出根据一些实施例的、适于实施某些增强加密技术的系统体系结构的框图。
图2是图示出根据一些实施例的、用于将噪声引入要被发送到节点用于写入总账的密文信号的方法的流程图。
图3是根据一些实施例的示出在较大的上下文中的系统100的扩展框图,进一步描绘分布式总账的至少一个全局网络300的子集。
图4是图示出根据一些实施例的、用于增强加密技术的操作的方法的流程图。
图5是可用于实施各个实施例的示例计算机系统。
在附图中,相同附图标记通常指示相同的或类似的要素。另外地,通常,附图标记的最左边的数字(多个)标识其中附图标记首先出现的图。
具体实施方式
在本文提供的是用于减轻密文的离线解密攻击的系统、装置、设备、方法和/或计算机程序产品实施例,和/或其组合和子组合。
对于在该实施方式中所引用的一些非限制性示例,包括区块链技术的共享总账或分布式总账可以被包括作为非限制性用例。这样的区块链例如可以是免许可区块链、许可区块链(共同体区块链)或其任何组合,包括混合区块链。任何方法(多个)、功能(多个)、机制(多个)、模型(多个),或协议(多个)都可以用于验证有关的交易、各方的身份等等,以建立共识。共识验证模型的一些示例可以包括:权益证明、空间证明、权限证明,以及工作证明,包括可再用的工作证明。
仅举几个示例,可以通过分布式共识、去中心化共识,或基于共同体的共识来确定共识。可以使用在多个代理系统上的任何类似形式的数据和结果的可靠的、容错的,且一致的验证。除对共识的直接验证之外,分布式总账上的静态合同、完全或部分自执行的智能合同、投入运转的合同,或智能债券(举一些非限制性示例)也可以利用区块链技术并且受益于在本文描述的为了机密性和为了安全性的增强加密技术。
然而,在本文描述的加密技术还可以对于其他类型的通信和/或数据存储产生益处,而不仅限于区块链或分布式总账技术。例如,即使当私有存储的安全通信被损害——诸如,如果安全通信在运输中(有或没有检测到合法相关方)被拦截或者如果存储的密文被窃取或以另外方式从以前信任的已经被非可信第三方损害的存储介质泄露(诸如,在隔离数据破坏、泄漏,或在高级持久性威胁中,举一些示例)时,在本文描述的加密技术也可以提供一些额外的安全性。
因此,即使加密信息不打算用于在诸如区块链之类的公开总账上进行公开共享,采用在本文描述的加密技术也可以进一步提高加密信息的安全性。假定信息(仅作为密文)可能陷于恶意攻击者的控制,无论攻击者如何获得了密文,使用在本文描述的技术所生成的密文都会严重阻碍或完全抑制攻击者对密文进行分析或蛮力解密以得到源明文或任何加密密钥的能力。
图1是图示出根据一些实施例的、适于实施某些增强加密技术的基于客户端的系统体系结构的框图。
系统100可以包括诸如图1中描绘的实施例中的客户端140。客户端140可以包括诸如定时器150、噪声生成器160、加密器180之类的元件,或其任何组合。客户端140可以另外在客户端140上包括高速缓存170、以及用于诸如公开密钥190之类的加密密钥的存贮器。列举一些非限制性示例,可以在一些实施例中使用公开密钥190或者替换地使用私有密钥、共同体密钥集合的至少一部分,或以各种组合的多个密钥来执行加密。加密算法例如可以包括对称密钥算法或不对称密钥算法。在一些实施例中,加密器180可以被配置为实施多个加密算法和密码系统(cryptosystem),包括使用混合密码系统,从而实现例如进一步防范自适应选择的密文攻击等优点。
当客户端140加密明文输入数据时,客户端140可以在诸如经由网络连接130将从加密器180输出的密文中的一些发送到节点120之前暂时地将一些密文存储在高速缓存170中。在一些实施例中,网络连接130可以例如替换为局部总线或总线基础设施(诸如以下关于图5所描述的通信基础设施506)。类似地,节点120和/或本地总账110也可以位于客户端140内,诸如在例如以硬件、软件,或其任何组合实施的本地存储或模块中。节点120可以具有至少一个对应的本地总账110,其可以例如表示分布式总账的本地副本。在一些实施例中,节点120可以例如是区块链节点。
为了本专利公开,向节点输出密文、噪声数据,或任何数据(无论在本地还是经由网络)可以被视为被输出到输出设备。输出设备的其他示例例如可以是文件或流,包括标准输出文件或流;打印机、电传打字机(teletype)、终端,或终端仿真器;音频调制器,包括文本至语音(TTS)设备;发光二极管(LED)、灯,或其他光信令设备;无线电天线或其他电磁换能器;电磁体或生成磁信号的其他装置;或实际上输送信号的输出的任何其他方式或非暂时性数据存贮器,举根据一些实施例的一些非限制性示例。到至少一个输出设备的输出可以涉及到多个类型的输出设备(例如,多于诸如在该段落中列出的输出设备的类型中的一个)的输出。
这些元件中的每一个可以是在硬件、软件,或其一些组合中实施的模块化组件。此外,在一些实施例中,任何元件都可以与客户端140集成。另外地,在一些物联网(IoT)实施例中,客户端140可以是入口或其他平台,并且元件150-190可以在云中或在特定服务器(多个)中在本地或远程地实施为单独的微服务,或者以各种组合被实施为至少一个单片平台。因此,在一些具有模块体系结构的实施例中,客户端140可以包括例如定时器模块(定时模块)、噪声生成器模块、高速缓存模块,和/或加密器模块(加密模块)。
输入数据可以起源于实际上任何源,包括用户输入、机器输入,或包括周期性或事件驱动的输入的其他自动输入。此类自动输入的一些非限制性示例可以包括周期性地或在由传感器检测到阈值时读取诸如环境传感器之类的传感器;明文或编码(例如,二进制,不一定是加密的)格式的自动日志文件;包括应用编程接口(API)输入的其他编程输入;等等。
此外,当向节点120发送数据时,发送给节点120的数据可以包括可以被存储在高速缓存170中的任何密文输出。另外地或者替换地,发送给节点120的数据可以包括由噪声生成器160生成的噪声。在一些实施例中,噪声可以是具有均匀分布或其他预先确定的分布的随机噪声并且可以基于来自传感器的其他环境的输入,以提高熵。另外地或者替换地,噪声可以是伪随机噪声,其可以进一步满足统计随机的至少一个准则,在一些实施例中,包括噪声是否可以通过用于频率分布、序列、间隙,等等的假设检验。
在一些实施例中,噪声生成器160可以实施模拟函数,该模拟函数被设计为输出模拟存储在高速缓存170中的密文输出的噪声数据,但该密文输出不是实际的密文,并且当根据情况利用任何合法的密钥(多个)解密时将导致其他随机数据。然后可以预期任何解密的明文从将通过向噪声生成器160的模拟函数的输出应用解密密钥所产生的任何“解密的”噪声中脱颖而出。
在一些实施例中,模拟函数可以基于在过去的某个时刻或在某个时间窗口期间由加密器180实际上生成和/或输出的(或发送给节点120的)真实密文的统计模型来生成噪声数据。另外地或替换地,模拟函数可以基于向加密器180的一定数量的输出实例或迭代(或发送给节点120的真实密文的实例)(在一些实施例中,例如,加密器180输出的最后20个循环、写入到节点120的真实密文的最后10个块,等等)应用的统计模型。根据一些非限制性示例,可以例如在给定时间,一次性地、周期性地,和/或在随机选择的时间向形成密文的至少一个代表性样本的密文的量应用该统计模型。
替换地,噪声生成器160可以生成将由加密器180使用相同的或不同的加密密钥(多个)加密的虚假明文。使用不同的加密密钥,在利用合法密钥进行解密尝试时,可以预期利用不同的加密密钥被加密的虚假明文数据出现随机输出,但仍然可识别为合法用户可能忽略的数据。即使对虚假数据的加密使用相同的密钥,然后虚假数据在解密时可能也是可读的。然而,在一些实施例中,可以以解密的明文数据的合法预定接收者将知道忽略的方式来生成虚假数据,而虚假数据如果被解密则可以欺骗攻击者或切断密码分析路径。在一些其他实施例中,可以通过模拟函数生成虚假明文数据,该模拟函数可以与先前提及的模拟函数相同或与其不同,并且可以基于向加密器180输入的明文的统计模型,或可以另外地或替换地例如基于诸如语义模型、句法模型之类的其他模型,或任何各种语法模型。
定时器150可以生成定时信号,在一些实施例中,该定时信号可以指示何时噪声生成器160、加密器180,和/或高速缓存170应当将它们的输出发送到客户端140内的适当的元件和/或最终发送到节点120。在一些实施例中,定时器150可以向客户端140的其他元件中的任何一个发出周期性定时信号。另外地或者替换地,在一些实施例中,从定时器150输出的定时信号可以以随机或伪随机方式或者根据预先确定的模式(多个)而变化。
例如,在非限制性示例实施例中,定时器150可以关于系统时钟每x秒(例如,其中x=10)发送定时信号,和/或定时器150可以每y秒(例如,其中y可以是在1和120之间随机地(或伪随机地)选择的数)发送定时信号。另外地或者替换地,举另一个非限制性示例,定时器150可以每z秒发送定时信号,其中z可以表示例如从斐波纳契(Fibonacci)序列的前x个元素中顺序地或随机地选择的数。实际上,根据客户端140的特定实施方式(或在一些实施例中,对应的IoT入口)定时器设置的任何布置都是可能的。
在一些实施例中,可以每x秒输出第一定时信号、可以每y秒输出第二定时信号,并且可以每z秒输出第三定时信号,其中例如,如上所述来定义x、y,和z。替换地,在一些实施例中,至少一个定时信号可以取决于所生成的真实密文或模拟函数输出的量,而不是实际时间或者任何系统时钟,或者除了实际时间或任何系统时钟之外还取决于所生成的真实密文或模拟函数输出的量。
另外地,在一些实施例中,如果多个定时信号同时重合,则可以存在解决竞争的协议。例如,如在以上非限制性示例中如果x恒定,并且y随机,并且然后x和y两者碰巧从初始状态起是相同的,或以另外方式在初始状态之后重合,则定时器150可以被配置为对第一定时信号给予优先权(或者定时信号中的任何一个被预先确定为优先),在第二定时信号之前顺序地输出第一定时信号。替换地,根据一些实施例的实施方式,可以同时地并行输出多个定时信号,而响应则例如关于确定是输出密文还是噪声数据而单独地确定。
当从定时器150发送信号来触发从客户端140到节点120的数据传输时,在一些实施例中,客户端140可以发送(在没有虚假数据的情况下基于真实输入数据的)密文输出、(通过可以包括模拟函数的噪声生成器160所生成的)噪声,或者其一些组合(在一些实施例中)。客户端140可以发送节点120上的给定交易所必需的任何其他伴随的数据。在下面进一步关于图2来描述响应于来自定时器150的定时信号而动作的客户端140的附加逻辑。
图2是图示出根据一些实施例的、用于将噪声引入将被发送到节点(诸如用于写入到总账)的密文信号的方法200的流程图。可以通过处理逻辑来执行方法200,该处理逻辑可以包括硬件(例如,电路、专用逻辑、可编程逻辑、微代码,等等)、软件(例如,在处理设备上执行的指令),或其组合。可能不是在所有情况中都需要方法200的所有步骤来执行在本文公开的增强加密技术。此外,可以同时地,或者以与图2中示出的顺序不同的顺序来执行方法200的一些步骤,如本领域普通技术人员将理解的。
应当参考图1和3来描述方法200。然而,方法200不仅仅受限于那些示例实施例。可以通过耦合到至少一个存储器设备的至少一个计算机处理器来执行方法200的步骤。在以下关于图5来描述示例性处理器和存储器设备(多个)。在一些实施例中,可以通过图1和3的系统100来执行方法200,该系统100可以另外包括诸如图5的那些的至少一个处理器和存储器。
在210,如果该方法还没有被执行,则可以被初始化、被执行或以另外方式启动。从210,在任何实施方式特定的初始化过程(如果有的话)之后,根据一些实施例,该方法然后可以前进到220。在一些实施例中,可以通过有限状态机、过程编程、面向对象编程,和/或硬件、软件,或者以上的某个组的其他逻辑来定义执行的该执行的流程。
在220,执行可以暂停或等待指定时间量。如在以上关于图1的定时器150描述的,在一个非限制性示例中,指定的时间可以是x、y,或者z秒中的任何一个。在一些实施例中,等待时间可以大约是秒的小分数的量级,或者可能长得多,按分钟、小时、天、周,等等算,并且可以取决于将被记录在本地总账110和任何分布式总账中的交易的性质和用于例如验证共识的任何算法。
在230,可以评估条件以确定等待的指定时间量是否已经过去。如果还没有达到该时间,则执行可以返回到等待,直到已经达到这样的时间。一旦已经达到指定时间量,则执行然后可以继续到240。
在240,可以关于是否存在任何高速缓存数据——诸如是否在高速缓存170中存在任何密文输出(如在以上关于图1描述的)来测试或评估条件。在图2的实施例中,如果存在高速缓存数据,然后执行可以继续到250,其中可以经由网络连接130诸如向节点120或以另外方式向一些其他中间位置或缓冲器(未示出)发送高速缓存的数据(在这里为了说明目的,标记为“第一高速缓存数据”)中的至少一些。执行可以进一步继续到260,其中然后可以在一些实施例中从高速缓存170清除所发送的高速缓存数据(“第一高速缓存数据”)以便确保一致性、跟踪高速缓存数据,和/或让出地方给其他高速缓存数据,如通过一些实施例的特定实施细节所确定的。
在240在高速缓存170中没有高速缓存数据可用的情况下,然后执行可以继续到270,其中噪声生成器160可以生成噪声(未示出)。可以按指定的算法生成噪声例如以确保噪声的均匀分布、噪声的有色分布、噪声的目标分布(以便诸如通过模拟函数来模拟合法密文)或者按其他模式来生成噪声。执行可以进一步继续到280,其中然后可以经由网络连接130诸如向节点120或以另外方式向一些其他中间位置或缓冲器(未示出)发送噪声。
在根据一些实施例的非限制性示例中,客户端140可以在确定定时器150已经达到预先确定的时间(诸如x、y、z,等等,如上所述)时发送由噪声生成器160生成的噪声数据。可以例如响应于来自定时器150的定时信号(未示出)进行该确定。在一些实施例中,可以每x秒输出第一定时信号、可以每y秒输出第二定时信号,并且可以每z秒输出第三定时信号,其中例如,如上所述来定义x、y,和z。替换地,在一些实施例中,至少一个定时信号可以取决于所生成的真实密文或模拟函数输出的量,而不是实际时间或者任何系统时钟,或者除了实际时间或任何系统时钟之外还取决于所生成的真实密文或模拟函数输出的量。
在一些实施例中,与上面刚刚描述的示例结合或与其无关地,客户端140可以在检测到(诸如存储在高速缓存170中的或刚刚从加密器180输出的)实际密文的模式满足(或未能满足)统计随机的至少一个准则时发送由噪声生成器160生成的噪声数据,在一些实施例中,所述至少一个准则包括噪声的属性是否可以通过用于频率分布、序列、间隙,等等的假设检验。可以在例如用于模拟函数任何可用的算法、模型,或者模式之后,相应地调整噪声生成器160的模拟函数的输出。
在一些实施例中,噪声数据可以是可以类似于加密数据的随机串。可以通过可以在噪声生成器160的噪声生成器代理(未示出)中实施的模拟函数,来实现噪声数据和实际的加密数据(真实密文)之间的这种相似性。如果另一个设备可以变为连接到客户端140,则然后可以由客户端140在那时读取(或可以自动地或人工地在客户端140上生成)其它设备的值。该值然后可以通过加密器180被加密,并且可以被可选地存储在高速缓存170中,用于随后通过例如(公开或专用网络)上的网络连接130、320,和/或322传输到诸如节点120的节点、或者甚至最终传输节点312和314(请参见在下面的图3)。在这一点上,在一些实施例中,客户端140可以进一步被配置为删除高速缓存中的任何密文中的一些或全部、例如最后向至少一个节点传送的密文中的一些或全部。
在260或280任一之后,执行然后可以流向290(其可以引起从220的等待起重复相同的方法),返回到流程图的该部分。在一些实施例中,也可以例如通过用户人工地或通过自动计算机进程或通过人工智能(AI)出于各种原因将执行暂停或终止。另外地,根据如何执行240以及如何结构化系统100的其余部分,步骤260和280不需要互斥——在一些实施例中,例如,噪声和高速缓存数据可以在相邻的序列中发送,而不插入时间间隙。
可以例如使用一个或多个公知的计算机系统——诸如图5中示出的计算机系统500来实施各个实施例。计算机系统500可以包括系统100,并且可以例如用于实施图2的方法200。
在图2的该示例性实施例中,以以上示出的顺序公开了方法200。然而,实际上,以上公开的操作与其他操作,可以以任何顺序顺序地执行,或者它们可以替代地被并行地执行,其中多于一个的操作被同时地执行,或者以上述的任何组合来执行。
实施图2的以上操作可以提供至少以下优点:例如,攻击者可能不能了解何时(例如,对分布式总账的)更新是真正的(真实密文)或仅仅是噪声,因此战胜基于时间的攻击;并且因为数据的任何比例可能事实上基于专门滤波或建模为类似于真实密文的随机噪声,所以攻击者可能不了解,或者可能不能确定诸如通过密码分析或通过蛮力解密来离线攻击哪个文本。此外,这样的数据的任何统计模型(例如,频率分析)可以通常返回伪造的结果,进一步防止频率分析,更不用说任何解密。以这种方式,也可能不能将真实密文与噪声数据区分开。这因此更高效地实现更强的加密,而无需更常规的加密方法所需要的附加的处理开销(例如,使用非常长的密钥、存储器密集的加密算法、其他计算昂贵的或旋转加密算法,等等),并且无需更复杂地实现密钥和/或算法的随机的随机化,尽管以上技术和许多其他现存的、高级的,或者后量子密码术方法学将仍然与在本文公开的增强加密技术兼容,以进一步增加安全性。
图3是根据一些实施例的示出在较大的上下文中的系统100的扩展框图,进一步描绘具有多个本地副本(每节点至少一个)的至少一个分布式总账的至少一个全局网络300的子集。与图1中示出的类似,在这里在通过虚线分隔的矩形框内描绘系统100。该虚线仅仅用于说明目的,以强调内容与图1的系统100的那些相同(在该示例中);虚线不表示网络300中任何实际的(物理或逻辑的)障壁。
如先前关于一些元件描述的,130、310、314、320、322,和324表示网络连接,在一些示例中,其可以在公开或专用网络上。例如,可能存在分布式总账的多个节点,诸如节点120、312,和316。这些节点中的每一个可以具有对应的本地总账,诸如分别是本地总账110、308,和318。为了在分布式总账的任何节点的相应本地总账中的任何一个中对密文进行解密,可以与审计员304共享诸如私有密钥302之类的解密密钥,该审计员304可以是具有合法地查看密文数据的解密明文的任何授权方。在一些实施例中,解密密钥可以例如是公开密钥、共同体密钥集合的至少一部分,或者各种组合中的多个密钥。攻击者306可以是力图打破分布式总账中的加密的通信的加密的任何方。攻击者306可以从分布式总账中的任何最新的节点——在这种情况下是节点316,接收密文。然而,在其他非限制性示例中,攻击者306可以攻击分布式总账中的任何节点,包括120、312,或者在这里未示出的任何其他节点。
从诸如网络300之类的全局网络的视角,审计员304(或任何其他授权方)可能仍然能够从任何节点的相应的本地总账副本中找到和取出交易。如果审计员304使用客户端140的授权的私有密钥302来解密该副本,则审计员304然后可以解密存在于节点312的本地总账308中的任何或所有真实密文(或类似的节点的任何其他相应副本),然而,在应用相同的解密密钥进行输出之后,噪声数据仍可能显示为类似的噪声。在一些实施例中,可以假定,结果得到的明文输出将与其他噪声容易地可区分并且容易地可辨识——即使对应的密文看起来类似于从模拟函数生成的噪声数据。
尽管这使得审计员304和/或任何其他授权方的访问容易,但另一方面攻击者306可能反而不能对存在于节点316(或对应的分布式总账中的任何其他节点)中的其本地总账318副本执行密文攻击(包括任何有意义的频率分析或其他成功的密码分析)。如果分布式总账或其上的交易链中的非明文条目实际上在其“随机”或“加密”状态下看起来相同,则无论它们是否包含实际的加密明文作为真实密文,对任何对应的公开总账中的任何真实密文的蛮力攻击的成功的可能性都会因此被显著地减小。密文攻击面的减少,同时保持合法利益方的一致性和易用性,可以解决上面背景部分中确定的问题,因此对于诸如区块链技术(列举一些非限制性示例)之类的公开分布式总账技术的新的用户保证至少可接受水平的机密性。
为了描述一个非限制性的场景——其中图3可以描绘涉及物联网(IoT)设备和区块链技术的真实世界的使用情况,在这里客户端140可以是具有IoT配置的嵌入式平台,就像本领域普通技术人员所理解的。在该非限制性示例中,节点120可以是区块链节点。在该示例中,传感器326可以是冰箱、冷冻机、冷却器,或者其他制冷装置内的至少一个温度传感器。
继续相同的非限制性示例场景,货运列车、卡车、仓库、杂货店、便利商店,等等可以配备有易腐货物的容器可能需要通过的入口。这样的容器和入口可以配备有在先前的段落中描述的IoT设备,以及标识符和/或读取这样的标识符的装备,包括但不限于条形码、矩阵码、近场通信(NFC)标识符、射频标识符(RFID)标签,等等。
当此类标识符在通过任何给定入口时被处理和/或记录时,来自传感器326的信息,包括来自给定容器中的至少一个温度传感器的温度信息、然后可以被记录在包括区块链的分布式总账中。温度信息可以包括在入口给定容器的当前温度,以及传感器已经在运输中关于给定容器的当前内含物所登记的最高温度。例如,也可以存在关于入口的时间戳和位置数据。在区块链上,所存储的这个信息的全部因此被永久地且不可改变地存储,防止窜改。
如果容器的内含物是易腐食品或药物,诸如冰淇淋、易损的药物或疫苗、活病毒或生物样品,等等,此类传感器信息将证明在确定容器的制冷装置在运输中是否可能已经发生故障和/或容器的内含物是否可能已经被损坏或以另外方式受损时是有用的。没有哪一方能够改变关于区块链的该信息。
同时,该信息可以是高度敏感且机密的。如果已存在有损坏,则该信息能够就合法的有关方面能够阻止受损货物被输送来说对其是有用的。同时,如果竞争者、第三方攻击者,或者其他恶意方将获取此类信息,则这些其他方能够为了他们的利益使用此类信息,例如或者合法方的装运路线和内含物,以及运输或冷藏设备的故障率、受损货物的标识,等等。此类信息可以进一步用于以其他方式危害合法的有关方面的利益。
为了阻止此类危害,甚至在使用区块链技术的场景中,在本文公开的增强加密技术也可以减轻此类攻击和对竞争者、第三方和恶意攻击者的泄漏。尽管区块链记录可以是永久且不可改变的,因此防止窜改,但区块链也是公开地分发和可下载的,使得能够进行对可以在区块链记录中使用的密文的强大的离线攻击,因此使得恶意方破解加密并且获取存储在区块链上的敏感且机密的加密信息更容易。然而,采用在本文公开和描述的增强加密技术可以显著地减轻甚至对公开可访问的密文的这些此类离线攻击。
图4是图示出根据一些实施例的、用于增强加密技术的操作的方法400的流程图。可以通过处理逻辑来执行方法400,该处理逻辑可以包括硬件(例如,电路、专用逻辑、可编程逻辑、微指令,等等)、软件(例如,在处理设备上执行的指令),或其组合。不是在所有情况中可能都需要方法400的所有步骤来执行在本文公开的增强加密技术。此外,可以同时地,或者以与图4中示出的顺序不同的顺序来执行方法400的一些步骤,如本领域普通技术人员将理解的。
应当参考图1、3,和5来描述方法400。然而,方法400不仅仅受限于那些示例实施例。可以通过耦合到至少一个存储器设备的至少一个计算机处理器来执行方法400的步骤。在以下关于图5来描述示例性处理器和存储器设备(多个)。在一些实施例中,可以通过图1和3的系统100来执行方法400,该系统100可以另外包括诸如图5的那些的至少一个处理器和存储器。
在402中,至少一个处理器504可以被配置为将明文输入到诸如图1和3的加密器180之类的加密器中。明文可以起源于传感器(如上所述)、自动或事件驱动输入、来自用户的手动输入,或者明文输入的实际上的任何其他源,就像本领域普通技术人员所理解的。此类自动输入的一些非限制性示例可以包括读取传感器,诸如传感器326,其可以,根据一些实施例,是环境传感器,所述读取周期性地轮询或在传感器检测到阈值时进行;明文或编码格式(例如,二进制,不一定是加密的)的自动日志文件;包括应用编程接口(API)输入的其他编程输入;等等。
在404中,处理器504可以被配置为将诸如来自加密器180的输出之类的密文写入到存储器中。为了404的目的,存储器可以是任何种类的存储器,包括高速缓存170、主存储器508,和/或辅助存储器510,包括主要存储驱动512或任何可移除的存储驱动514或外部可移除的存储单元(多个)518、522,等等。
在406中,处理器504可以被配置为将来自存储器(诸如密文已在404被存储到其中的存储器,或者相同的密文可能已经同时被传递到其的任何其他中间存储器)的密文输入到诸如噪声生成器160之类的噪声生成器中。在406中密文被输入到其中的噪声生成器可以被配置为采用如在以上关于噪声生成器160所描述的至少一个模拟函数。
在408中,在一些实施例中,当接收第一定时信号时,可以输出密文,诸如从客户端140向外部(外向)接口,或者向客户端140内的另一个元件输出密文。可以从诸如定时器150之类的定时器接收第一定时信号。可以由定时器以类似于关于定时器150在以上描述的那些方式来生成包括第一定时信号的定时信号。在一些实施例中,在408中输出的密文可以起源于在404密文已被存储到其中的存储器。另外地或者替换地,根据一些实施例,在408中输出的密文可以直接地起源于诸如加密器180之类的加密器的输出,被或者不被缓冲在诸如高速缓存170、主存储器508,和/或辅助存储器510等等的任何其他存储器中。
在410中,在一些实施例中,当接收第二定时信号时,可以输出噪声数据,诸如从客户端140向外部(外向)接口,或者向客户端140内的另一个元件输出噪声数据。可以从诸如定时器150之类的定时器接收第二定时信号。可以由定时器以类似于关于定时器150在以上描述的那些方式来生成包括第二定时信号的定时信号。在410中输出的噪声数据可以直接地起源于诸如噪声生成器160之类的噪声生成器的输出,被或不被缓冲在诸如高速缓存170、主存储器508,和/或辅助存储器510等等的任何其他存储器中。
在412中,可以通过处理器504将刚刚在以上描述的在408或410任一(或两者)中生成的输出写入到至少一个输出设备。例如,输出设备可以是以下中的至少一个:文件或流,包括标准输出文件或流;打印机、电传打字机、终端,或终端仿真器;音频调制器,包括文本至语音(TTS)设备;发光二极管(LED)、灯,或其他光信令设备;无线电天线或其他电磁换能器;电磁体或生成磁信号的其他装置;或实际上输送信号的输出的任何其他方式或非暂时性数据存贮器,举根据一些实施例的一些非限制性示例。对至少一个输出设备的输出可以涉及对多个类型的输出设备(根据一些实施例,诸如在该段落中列出的输出设备的类型中的多于一个的设备)的输出。
在414中,当可以接收第一或第二定时信号的另一个实例时,可以对于可用并且尚未写入到输出设备(多个)的任何新的或剩余的密文或噪声数据来重复诸如408和/或410等等的操作。在任何情况下,即使没有新的密文是可用的,也可以至少基于旧的真实密文来生成新的噪声数据,并且根据一些实施例,可以响应于第二定时信号的这样的稍后的实例(多个)来再次输出另外的噪声数据。
可以例如使用一个或多个公知的计算机系统——诸如图5中示出的计算机系统500来实施各个实施例。计算机系统500可以包括系统100,并且可以例如用于实施图4的方法400。
在图4的该示例性实施例中,以以上示出的顺序公开了方法400。然而,实际上,以上公开的操作可以与其他操作以任何顺序顺序地执行,或者它们可以替换地被并行地执行,其中多于一个的操作被同时地执行,或者以上的任何组合。
实施图4的以上操作可以提供至少以下优点:例如,攻击者可能不能了解何时(例如,对分布式总账的)更新是真正的(真实密文)或仅仅是噪声,因此战胜基于时间的攻击;并且因为数据的任何比例可能事实上都基于专门滤波或建模为类似于真实密文的随机噪声,所以攻击者可能不了解,或者可能不能确定诸如通过密码分析或通过蛮力解密来离线攻击哪个文本。此外,这样的数据的任何统计模型(例如,频率分析)可以通常返回伪造的结果,进一步防止频率分析,更不用说任何解密。以这种方式,也可能不能将真实密文与噪声数据区分开。这因此更高效地实现更强的加密,而无需更常规的加密方法所需要的附加的处理开销(例如,使用非常长的密钥、存储器密集的加密算法、其他计算昂贵的或旋转加密算法,等等),并且无需更复杂地实现密钥和/或算法的随机的随机化,尽管以上技术和许多其他现存的、高级的,或者后量子密码术方法学将仍然与在本文公开的增强加密技术兼容,以进一步增加安全性。
本领域技术人员将进一步理解,以上公开的概念解决关于诸如去中心化或分布式总账等等的公开总账的另一个核心问题,这是因为,公开总账允许攻击者得到总账的副本,实际上为任何有动机的攻击者提供有价值的“数据转储”,移除了攻击者仅为了访问敏感的密文而需要采取的任何步骤。然而,在本文的方法可能不足以防止例如明文的审计员或发起者的安全性的泄漏,例如,诸如如果任何敏感密钥或明文经由其他通道被泄漏或损害了。
因此,如果审计员304使私有密钥302落入坏人之手,那么与可信的授权方(诸如审计员304)具有相同的密钥的任何攻击者然后都能够在其他总账条目、其他总账,或者此类密文可以是可用的任何其他位置上读取使用相同的加密密钥加密的任何消息(包括现有的安全性妥协的传统数据转储)。但是这些弱点和类似的问题通常源自基础的安全实践,并非具体与对在本文描述的某些加密技术的特定增强有关。
进一步的改善因此可以包括以下中的至少一个,或者其一些组合:在字串级别使用模拟函数以使字串从密码分析视角具有相同或类似的属性,在消息或其他周期性通信的级别应用相同的模拟函数,和/或实际上利用至少一个不同的加密密钥对至少某些假或虚假数据进行加密,以及在假或虚假数据中包括至少一些随机噪声或已知的假数据(“转移注意力数据(red herring)”或诱骗数据)。
此外,混杂已知的用另一个密钥加密的假数据可能带来进一步的附加好处,即使在攻击者可能实际设法解密了某些数据的极少数情况下,攻击者仍可能不确定该数据集是否为真实数据集,因为攻击者可能被虚假数据欺骗,或者攻击者可能还需要解密所有资产以分析所有内容,并可能需要决定信任哪个版本。类似地,已知的错误数据,可能与虚假数据的附加密钥一起,因此可能在某些数量的真实数据可能被公开泄露或破裂并至少部分地暴露的情况下添加合理的可否定性的元素。因此,这里列出的特征的多个特征的任何组合实现可以导致对本说明书中新描述的加密技术的预期效果的进一步改进。
在一些实施例中,实现本文公开的增强加密技术以及强大的一般安全实践,可以增强依赖于将敏感信息作为密文公开可用的系统中的加密的性能和功效。
该改善进而可以进一步增强对可能将私人信息纳入公共领域的技术的采用者的信心,公共领域的技术包括分布式账本和区块链技术,举几个非限制性的例子。在区块链技术的情况下,此类增添的安全性将进一步允许用户利用共享或分布式公开总账的其他安全益处,诸如他们抵制篡改(例如,伪造、故意的删除或破坏,等等)以及分布式总账技术的总体持久性和不变性。
使用诸如在以上描述的那些技术,通信和存储的数据可以实现额外的安全性。即使在完美前向保密或类似的保护不是可行的情况下(即使诸如因为合同义务、管理需求,或者类似的非技术原因),用户数据的长期的安全性和完整性也可以被显著地改善。
在本文描述的技术的另一个特定优点是可以使对密文元素的频率分析大部分(如果不是完全地)无效。诸如重合计数、基于时间攻击,或者基于长度的攻击之类的其他常用或有关的密码分析技术,针对在本文描述的技术可能同样无效或无用。可以进一步优点,还可以从阻止这里提及的常用密码分析中得出,包括:减慢,实质上阻碍,和/或完全地阻止蛮力攻击,或用于获取目标明文和/或用于得出用于加密的密钥的其他常用明文攻击或密文攻击。
对于理论上或实际上可能不可有效破解的任何其他加密方法,在给定实现中,用户可能仍然易受的社会工程、信息泄露,和旁道攻击的侵害。可以通过对用户介绍这些威胁和对它们的缓解的最佳实践以及通过实施者利用对于旁道脆弱点的独立的审计进行的仔细的设计和测试,来缓解这些次要的弱点。假定诸如这些的任何普遍缺陷被考虑并且被适当地缓解到在任何给定实现中和在实际的使用中可行的范围,在本文描述的加密技术可以证明在维护用户信息的安全性和完整性(包括在公开设置中)时是高度有效的。
可以例如使用一个或多个公知的计算机系统——诸如图5中示出的计算机系统500来实施各个实施例。一个或多个计算机系统500可以例如用于实施在本文讨论的实施例中的任何,以及其组合和子组合。
计算机系统500可以包括一个或多个处理器(也称作中央处理单元,或者CPU),诸如处理器504。处理器504可以连接到总线或通信基础设施506。
计算机系统500还可以包括可以通过用户输入/输出接口(多个)502与通信基础设施506进行通信的用户输入/输出设备(多个)503,诸如监视器、键盘、定点设备,等等。
处理器504中的一个或多个可以是图形处理单元(GPU)。在实施例中,GPU可以是作为被设计为处理数学密集的应用的专业化电子电路的处理器。GPU可以具有并行结构,其对于以下是高效的:例如,大数据块的并行处理,诸如计算机绘图应用、图像、视频、向量处理、阵列处理,等等常用的数学密集的数据,以及密码术(包括蛮力破解),生成密码散列或散列序列,求解部分散列反演问题,和/或产生用于一些基于区块链的应用的其他工作证明计算指令的结果。
另外地,处理器504中的一个或多个可以包括协处理器或用于加速密码计算或其他专业化数学函数的逻辑的其他实施方式,包括硬件加速的密码协处理器。此类加速的处理器可以另外包括使用协处理器进行加速的指令集(多个)和/或促进此类加速度的其他逻辑。
计算机系统500也可以包括主或主要存储器508,诸如随机存取存储器(RAM)。主存储器508可以包括高速缓存的一个或多个层级。主存储器508可能已经在其中存储了控制逻辑(即,计算机软件)和/或数据。
计算机系统500还可以包括一个或多个辅助存储设备或辅助存储器510。辅助存储器510例如可以包括主存储驱动512和/或可移除的存储设备或驱动514。主存储驱动512例如可以是硬盘驱动器或固态驱动。可移除的存储驱动514可以是软盘驱动、磁带驱动、光盘驱动、光存储设备、磁带备用设备,和/或任何其他存储设备/驱动。
可移除的存储驱动514可以与可移除的存储单元518交互。可移除的存储单元518可以包括已经在其上存储了计算机软件(控制逻辑)和/或数据的计算机可用的或可读的存储设备。可移除的存储单元518可以是软盘、磁带、光盘、DVD、光盘存储器,以及任何其他计算机数据存储设备。可移除的存储驱动514可以从可移除的存储单元518被读取和/或被写入到可移除的存储单元518。
辅助存储器510可以包括其他装置、设备、组件、工具或允许计算机程序和/或其他指令和/或数据被计算机系统500访问的其他方式。此类装置、设备、组件、工具或其他方式例如可以包括可移除的存储单元522和接口520。可移除的存储单元522和接口520的示例可以包括程序盒和盒式接口(诸如在视频游戏设备中发现的)、可移除的存储器芯片(诸如EPROM或PROM)和相关联的插座、记忆棒和USB端口、存储卡和相关联的存储器卡片槽,和/或任何其他可移除的存储单元和相关联的接口。
计算机系统500可以另外包括通信或网络接口524。通信接口524可以使得计算机系统500能够与外部设备、外部网络、外部实体,等等(单独地且共同地通过附图标记528被引用)的任何组合进行通信以及与其进行交互。例如,通信接口524可以允许计算机系统500通过通信路径526(其可以是有线和/或无线(或其组合),并且其可以包括LAN、WAN、因特网,等等的任何组合)与外部或远程设备528进行通信。可以经由通信路径526向计算机系统500以及从计算机系统500传送控制逻辑和/或数据。
计算机系统500也可以是物联网(IoT),和/或嵌入式系统的个人数字助理(PDA)、桌面工作站、膝上计算机或笔记本式计算机、上网本、平板机、智能电话、智能手表或其他可穿戴用具部分(举一些非限制性示例),或其任何组合。
应当理解,在本文描述的框架可以被实施为方法、处理、装置、系统,或者制造品,诸如非暂时性计算机可读媒介或设备。为了说明的目的,可以在分布式总账是公开可用的或至少对非可信第三方是可用的上下文中描述本框架。作为现代的使用情况的一个示例是关于基于区块链的系统。然而,应当理解,也可以在其中敏感或机密信息可能需要经过或通过非可信第三方的手的其他设置中应用本框架,以及该技术决不受限于分布式总账或区块链使用。
计算机系统500可以是通过任何输送范例访问或托管任何应用和/或数据的客户端或服务器,包括但不限于远程或分布式云计算解决方案;本地或内部部署软件(例如,“内部部署”基于云的解决方案);“即服务模型”(例如,内容即服务(CaaS)、数字内容即服务(DCaaS)、软件即服务(SaaS)、管理软件即服务(MSaaS)、平台即服务(PaaS)、桌面即服务(DaaS)、框架即服务(FaaS)、后端即服务(BaaS)、移动后端即服务(MBaaS)、基础设施即服务(IaaS)、数据库即服务(DBaaS),等等);和/或包括上文示例或其他服务或输送范例的任何组合的混合模型。
可以从包括但不限于的标准导出任何可适用的数据结构、文件格式,以及模版:JavaScript对象标记(JSON)、可扩展标记语言(XML)、又一种标记语言(YAML)、可扩展的超文本标记语言(XHTML)、无线标记语言(WML)、MessagePack、XML用户接口语言(XUL),或者单独或组合的任何其他功能上类似的表示。替换地,可以专门地或与已知的或开放的标准结合地使用专有数据结构、格式或模版。
可以以诸如数值、文本、图形,或者多媒体格式之类的人类可读的格式(另外包括各种类型的标记语言等其他可能的格式)来存储任何有关的数据、文件,和/或数据库。作为对以上格式的替换或者与其结合,可以以二进制编码、压缩,和/或加密格式,或者任何其他机器可读取的格式来存储、调取、访问,和/或传送数据、文件,和/或数据库。
各种系统和层当中的对接或互连可以采用任何数量的机制,诸如任何数量的协议、编程式框架、平面布置,或者应用编程接口(API),包括但不限于文档对象模型(DOM)、发现服务(DS)、NSUserDefaults、web服务描述语言(WSDL)、消息交换图案(MEP)、Web分布式数据交换(WDDX)、Web超文本应用技术工作组(WHATWG)HTML5Web消息收发、表述性状态转移(REST或RESTful web服务)、可扩展的用户接口协议(XUP)、简单对象存取协议(SOAP)、XML模版定义(XSD)、XML远程过程调用(XML-RPC),或者可以实现类似的功能和结果的任何其他机制(开放或专有)。
此类对接或互连也可以利用统一资源标识符(URI),其可以另外包括统一资源定位符(URL)或统一资源名称(URN)。可以专门地或与诸如以上阐述的那些之类形式结合地使用其他形式的统一和/或唯一标识符、定位符,或者名称。
以上协议或API中的任何可以与任何编程语言(程序上的、功能的,或者面向对象的)任何编程语言对接或在其中实施,并且可以被编译或解释。非限制性示例包括C、C++、C#、Objective-C、Java、Swift、Go、Ruby、Perl、Python、JavaScript、WebAssembly,或者实际上具有在任何种类的框架、运行时环境、虚拟机、解释器、堆栈、引擎,或者类似的机制中的任何其他库或模版的任何其他语言,包括但不限于Node.js、V8、Knockout、jQuery、Dojo、Dijit、OpenUI5、AngularJS、Express.js、Backbone.js、Ember.js、DHTMLX、Vue、React、Electron,等等许多其他非限制性示例。
在一些实施例中,包括具有存储在其上的控制逻辑(软件)的有形、非暂时性计算机可用的或可读的媒介的有形、非暂时性装置或制造品也可以在本文被称为计算机程序产品或程序存储设备。这包括但是不局限于计算机系统500、主存储器508、辅助存储器510,以及可移除的存储单元518和522以及体现上文的任何组合的有形制造品。当此类控制逻辑由一个或多个数据处理设备(诸如计算机系统500)执行时,可以使此类数据处理设备如在本文所描述地进行操作。
基于包含在本公开中的教导,将对本领域技术人员明显的是,如何使用图5中示出的那些之外的数据处理设备、计算机系统和/或计算机体系结构来制造和使用本公开的实施例。具体地,实施例能够利用在本文描述的那些之外的软件、硬件,和/或操作系统执行进行操作。
将理解的是,具体实施方式部分,并且不是任何其他部分意图用于解释权利要求。其他部分能够阐述发明人(多个)所预期的一个或多个、但不是所有示例性实施例,并且因此,并不意图以任何方式限制本公开或所附权利要求。
尽管本公开描述用于示例性领域和应用的示例性实施例,但应当理解,本公开不限于此。对其的其他实施例和修改是可能的,并且处于本公开的范围和精神内。例如,并且不限制该段落的一般性,实施例不局限于在图中图示的和/或在本文描述的软件、硬件、固件,和/或实体。此外,实施例(无论是否在本文明确地描述)具有对超过在本文描述的示例的领域和应用的显著的实用性。
在本文已经借助于图示出指定的功能和其关系的实施方式的功能构建块描述了实施例。为了描述的方便起见已经在本文任意地定义了这些功能构件块的边界。只要适当地执行指定的功能和关系(其或等同物),就能够定义替换的边界。而且,替换实施例能够使用不同于在本文描述的那些的排序来执行功能块、步骤、操作、方法,等等。
在本文对“一个实施例”、“实施例”、“示例实施例”、“一些实施例”或类似的词组的引用指示所描述的实施例能够包括特定特征、结构,或特性,但是每个实施例能够不必然地包括该特定特征、结构,或特性。此外,这样的字句没有必要地指相同的实施例。此外,当与实施例结合来描述特定特征、结构或特性时,不管是否在本文被明确地提及或描述,将这样的特征、结构,或者特性合并到其他实施例中,将处于本领域技术人员的认知内。另外地,能够使用表达“被耦合”和“被连接”以及它们的派生物来描述一些实施例。这些术语没有必要作为彼此的同义词。例如,能够使用术语“被连接”和/或“被耦合”来描述某些实施例以指示两个或更多要素彼此处于直接物理或电接触中。然而,术语“被耦合”也能够意指两个或更多要素彼此不处于直接接触中,但还是仍然彼此协作或交互。
本公开的宽度和范围不应当由任何以上描述的示例性实施例限制,但是应当仅仅根据以下权利要求和它们的等同物来限定。
Claims (20)
1.一种系统,包括:
存储器;
加密器模块,其被配置为基于明文输入来输出密文;
定时器模块,其被配置为输出至少第一定时信号和第二定时信号;
噪声生成器模块,其被配置为根据模拟函数来生成噪声数据,其中,所述模拟函数被配置为模拟由所述加密器模块输出的密文;以及
至少一个处理器,其耦合到所述存储器并且被配置为:
将所述明文输入到所述加密器模块中;
将从所述加密器模块输出的密文写入到所述存储器中;
将来自所述存储器的所述密文输入到所述噪声生成器模块中;
响应于从所述定时器模块接收所述第一定时信号,将来自所述存储器的密文输出到至少一个输出设备;以及
响应于从所述定时器模块接收所述第二定时信号,将由所述噪声生成器模块生成的噪声数据输出到所述至少一个输出设备。
2.根据权利要求1所述的系统,其中,为了输出所述密文和输出所述噪声数据,所述至少一个处理器被进一步配置为:
响应于从所述定时器模块接收所述第一定时信号,将所述密文写入到分布式总账的节点;以及
响应于从所述定时器模块接收所述第二定时信号,将所述噪声数据写入到所述分布式总账的节点。
3.根据权利要求2所述的系统,其中,所述分布式总账包括区块链。
4.根据权利要求1所述的系统,其中,所述加密器模块被配置为基于公开密钥和私有密钥中的至少一个来生成所述密文。
5.根据权利要求4所述的系统,其中,所述加密器模块被进一步配置为实施至少一个混合密码系统。
6.根据权利要求1所述的系统,其中,为了模拟由所述加密器模块输出的密文,所述模拟函数被进一步配置为向由所述加密器模块输出的密文的至少一个样本应用至少一个统计模型。
7.根据权利要求1所述的系统,其中,为了模拟由所述加密器模块输出的密文,所述模拟函数被进一步配置为生成虚假明文,用于输入到所述加密器模块中。
8.一种用于加强加密的计算机实施的方法,包括:
由至少一个处理器将明文输入到加密器中;
由所述至少一个处理器将从所述加密器输出的密文写入到存储器中;
由所述至少一个处理器将来自所述存储器的密文输入到噪声生成器中;
响应于从定时器接收第一定时信号,由所述至少一个处理器将来自所述存储器的密文输出到至少一个输出设备;以及
响应于从所述定时器接收第二定时信号,由所述至少一个处理器将由所述噪声生成器生成的噪声数据输出到所述至少一个输出设备,
其中,通过一个或多个计算机来执行所述输入明文、写入密文、输入密文、输出密文,以及输出噪声数据中的至少一个。
9.根据权利要求8所述的计算机实施的方法,其中:
所述输出密文进一步包括,响应于从所述定时器接收所述第一定时信号,通过所述至少一个处理器将所述密文写入到分布式总账的节点;并且
所述输出噪声数据进一步包括,响应于从所述定时器接收所述第二定时信号,由所述至少一个处理器将所述噪声数据写入到所述分布式总账的节点。
10.根据权利要求9所述的计算机实施的方法,其中,所述分布式总账包括区块链。
11.根据权利要求8述的计算机实施的方法,其中,所述加密器被配置为基于公开密钥和私有密钥中的至少一个来生成所述密文。
12.根据权利要求11所述的计算机实施的方法,其中,所述加密器被进一步配置为实施至少一个混合密码系统。
13.根据权利要求8所述的计算机实施的方法,其中,为了输出所述噪声数据,所述噪声生成器包括被配置为模拟由所述加密器输出的密文的模拟函数,其中,所述模拟函数被进一步配置为通过所述至少一个处理器向由所述加密器输出的密文的至少一个样本应用至少一个统计模型。
14.根据权利要求13所述的方法,其中,为了模拟由所述加密器输出的密文,所述模拟函数被进一步配置为通过所述至少一个处理器生成虚假明文,用于输入到所述加密器中。
15.一种具有存储在其上的指令的非暂时性计算机可读设备,当所述指令由至少一个计算设备执行时,使所述至少一个计算设备执行以下操作,包括:
将明文输入到加密器模块中;
将从所述加密器模块输出的密文写入到存储器中;
将来自所述存储器的密文输入到噪声生成器模块中;
响应于从定时器模块接收第一定时信号,将来自所述存储器的密文输出到至少一个输出设备;以及
响应于从所述定时器模块接收第二定时信号,将由所述噪声生成器模块生成的噪声数据输出到所述至少一个输出设备。
16.根据权利要求15所述的非暂时性计算机可读设备,其中:
所述输出密文进一步包括,响应于从所述定时器模块接收所述第一定时信号,将所述密文写入到分布式总账的节点;并且
所述输出噪声数据进一步包括,响应于从所述定时器模块接收所述第二定时信号,将所述噪声数据写入到所述分布式总账的节点。
17.根据权利要求16所述的非暂时性计算机可读设备,其中,所述分布式总账包括区块链。
18.根据权利要求15所述的非暂时性计算机可读设备,其中,所述加密器模块被配置为基于公开密钥和私有密钥中的至少一个来生成所述密文。
19.根据权利要求15所述的非暂时性计算机可读设备,其中,为了输出所述噪声数据,所述噪声生成器包括被配置为模拟由所述加密器模块输出的密文的模拟函数,其中,所述模拟函数被进一步配置为向由所述加密器模块输出的密文的至少一个样本应用至少一个统计模型。
20.根据权利要求19所述的非暂时性计算机可读设备,其中,为了模拟由所述加密器模块输出的密文,所述模拟函数被进一步配置为生成虚假明文,用于输入到所述加密器模块中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/941,548 US10491578B1 (en) | 2018-03-30 | 2018-03-30 | Mitigation of offline ciphertext-only attacks |
US15/941,548 | 2018-03-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110324146A true CN110324146A (zh) | 2019-10-11 |
CN110324146B CN110324146B (zh) | 2022-05-06 |
Family
ID=64572175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811485652.3A Active CN110324146B (zh) | 2018-03-30 | 2018-12-06 | 对离线唯密文攻击的缓解 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10491578B1 (zh) |
EP (1) | EP3547598B1 (zh) |
JP (1) | JP6924739B2 (zh) |
CN (1) | CN110324146B (zh) |
AU (1) | AU2018260797B2 (zh) |
CA (1) | CA3022471A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113312608A (zh) * | 2021-04-23 | 2021-08-27 | 中国电力科学研究院有限公司 | 一种基于时间戳的电力计量终端身份认证方法及系统 |
CN113466424A (zh) * | 2021-08-12 | 2021-10-01 | 广州高得环保科技股份有限公司 | 一种智慧物联网的管道直饮水水质监控方法及系统 |
CN115333735A (zh) * | 2022-10-11 | 2022-11-11 | 浙江御安信息技术有限公司 | 一种数据的安全传输方法 |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11005646B2 (en) * | 2018-05-23 | 2021-05-11 | International Business Machines Corporation | Blockchain stochastic timer transaction synchronization |
AU2019282536A1 (en) * | 2018-06-04 | 2021-01-14 | Noah RAFALKO | Telecommunication system and method for settling session transactions |
US11328347B2 (en) * | 2018-06-28 | 2022-05-10 | International Business Machines Corporation | Rental asset processing for blockchain |
GB201811263D0 (en) * | 2018-07-10 | 2018-08-29 | Netmaster Solutions Ltd | A method and system for managing digital using a blockchain |
US11177933B2 (en) * | 2019-03-24 | 2021-11-16 | Google Llc | Side channel timing attack mitigation in securing data in transit |
US12106227B2 (en) * | 2019-09-17 | 2024-10-01 | Sap Se | Non-interactive private decision tree evaluation |
US12105842B1 (en) | 2020-01-15 | 2024-10-01 | Ledgerdomain Inc. | Verifiable credentialling and message content provenance authentication |
US11769577B1 (en) | 2020-01-15 | 2023-09-26 | Ledgerdomain Inc. | Decentralized identity authentication framework for distributed data |
US11081219B1 (en) | 2020-01-15 | 2021-08-03 | Ledgerdomain Inc. | Secure messaging in a machine learning blockchain network |
US11316840B2 (en) * | 2020-04-16 | 2022-04-26 | Dell Products L.P. | System and method of utilizing remote information handling systems to securely store files |
CN111800407B (zh) * | 2020-06-30 | 2022-12-02 | 京东科技信息技术有限公司 | 网络攻击的防御方法、装置、电子设备及存储介质 |
JP2021082301A (ja) * | 2020-12-04 | 2021-05-27 | Fairy Devices株式会社 | 首掛け型装置 |
US11741227B2 (en) | 2021-06-22 | 2023-08-29 | Intel Corporation | Platform security mechanism |
EP4096151A1 (en) * | 2021-05-24 | 2022-11-30 | Billon Sp. z o.o. | A computer-implemented method for electronic voting in a dlt network |
US20210312045A1 (en) * | 2021-06-22 | 2021-10-07 | Intel Corporation | Integrated circuit side-channel mitigation mechanism |
US11770410B1 (en) * | 2022-03-22 | 2023-09-26 | Uab 360 It | Enhancing network security |
US11736290B1 (en) | 2022-11-07 | 2023-08-22 | Ledgerdomain Inc. | Management of recipient credentials leveraging private keys on keystores read by provisioned devices |
US11741216B1 (en) | 2022-11-07 | 2023-08-29 | Ledgerdomain Inc. | Credential revocation leveraging private keys on keystores read by provisioned devices |
US11848754B1 (en) | 2022-11-07 | 2023-12-19 | Ledgerdomain Inc. | Access delegation leveraging private keys on keystores read by provisioned devices |
US11741215B1 (en) | 2022-11-07 | 2023-08-29 | Ledgerdomain Inc. | Recipient credentialing leveraging private keys on keystores read by provisioned devices |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120033809A1 (en) * | 2010-08-04 | 2012-02-09 | Huang Lawrence P | System for scrambling and methods for use therewith |
CN103023634A (zh) * | 2012-12-05 | 2013-04-03 | 无锡华大国奇科技有限公司 | 一种防止差分功耗分析的des装置 |
US20170141912A1 (en) * | 2015-11-18 | 2017-05-18 | Siemens Ag Oesterreich | Method for protecting a computer system from side-channel attacks |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4674440B2 (ja) * | 2004-03-04 | 2011-04-20 | ソニー株式会社 | データ処理回路 |
US8107620B2 (en) * | 2007-03-21 | 2012-01-31 | International Business Machines Corporation | Simple and efficient one-pass authenticated encryption scheme |
US9059838B2 (en) * | 2007-03-30 | 2015-06-16 | Verizon Patent And Licensing Inc. | Encryption algorithm with randomized buffer |
US9858401B2 (en) * | 2011-08-09 | 2018-01-02 | Biogy, Inc. | Securing transactions against cyberattacks |
US9281941B2 (en) * | 2012-02-17 | 2016-03-08 | International Business Machines Corporation | Homomorphic evaluation including key switching, modulus switching, and dynamic noise management |
JP2017139728A (ja) * | 2016-02-02 | 2017-08-10 | 株式会社東芝 | 通信装置、暗号通信システム、暗号通信方法およびプログラム |
EP3411824B1 (en) * | 2016-02-04 | 2019-10-30 | Nasdaq Technology AB | Systems and methods for storing and sharing transactional data using distributed computer systems |
US20170344988A1 (en) * | 2016-05-24 | 2017-11-30 | Ubs Ag | System and method for facilitating blockchain-based validation |
-
2018
- 2018-03-30 US US15/941,548 patent/US10491578B1/en active Active
- 2018-10-29 CA CA3022471A patent/CA3022471A1/en active Pending
- 2018-11-05 AU AU2018260797A patent/AU2018260797B2/en active Active
- 2018-12-03 EP EP18209762.6A patent/EP3547598B1/en active Active
- 2018-12-06 JP JP2018228993A patent/JP6924739B2/ja active Active
- 2018-12-06 CN CN201811485652.3A patent/CN110324146B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120033809A1 (en) * | 2010-08-04 | 2012-02-09 | Huang Lawrence P | System for scrambling and methods for use therewith |
CN103023634A (zh) * | 2012-12-05 | 2013-04-03 | 无锡华大国奇科技有限公司 | 一种防止差分功耗分析的des装置 |
US20170141912A1 (en) * | 2015-11-18 | 2017-05-18 | Siemens Ag Oesterreich | Method for protecting a computer system from side-channel attacks |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113312608A (zh) * | 2021-04-23 | 2021-08-27 | 中国电力科学研究院有限公司 | 一种基于时间戳的电力计量终端身份认证方法及系统 |
CN113312608B (zh) * | 2021-04-23 | 2024-03-08 | 中国电力科学研究院有限公司 | 一种基于时间戳的电力计量终端身份认证方法及系统 |
CN113466424A (zh) * | 2021-08-12 | 2021-10-01 | 广州高得环保科技股份有限公司 | 一种智慧物联网的管道直饮水水质监控方法及系统 |
CN115333735A (zh) * | 2022-10-11 | 2022-11-11 | 浙江御安信息技术有限公司 | 一种数据的安全传输方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3547598B1 (en) | 2020-06-03 |
JP6924739B2 (ja) | 2021-08-25 |
AU2018260797B2 (en) | 2023-07-13 |
AU2018260797A1 (en) | 2019-10-17 |
CN110324146B (zh) | 2022-05-06 |
JP2019205152A (ja) | 2019-11-28 |
EP3547598A1 (en) | 2019-10-02 |
CA3022471A1 (en) | 2019-09-30 |
US10491578B1 (en) | 2019-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110324146A (zh) | 对离线唯密文攻击的缓解 | |
Chu et al. | Security and privacy analyses of internet of things children’s toys | |
Rührmair et al. | PUFs in security protocols: Attack models and security evaluations | |
Panah et al. | On the properties of non-media digital watermarking: a review of state of the art techniques | |
CN103457733B (zh) | 一种云计算环境数据共享方法和系统 | |
CN110008745B (zh) | 一种加密方法、计算机设备和计算机存储介质 | |
CN106687980B (zh) | 管理程序和虚拟机保护 | |
CN104239820B (zh) | 一种安全存储设备 | |
CN104469767A (zh) | 一套移动办公系统中集成式安全防护子系统的实现方法 | |
Nguyen et al. | Cloud-based secure logger for medical devices | |
WO2022206453A1 (zh) | 提供跨链隐私数据的方法和装置 | |
WO2023029447A1 (zh) | 模型保护方法、装置、设备、系统以及存储介质 | |
Alluhaybi et al. | A survey: agent-based software technology under the eyes of cyber security, security controls, attacks and challenges | |
JP2019161643A (ja) | ビデオ処理パイプラインのための改竄保護及びビデオソース識別 | |
Othmane | Active bundles for protecting confidentiality of sensitive data throughout their lifecycle | |
Ruhrmair | Sok: Towards secret-free security | |
van Dijk et al. | Protocol attacks on advanced PUF protocols and countermeasures | |
Rajba et al. | Data hiding using code obfuscation | |
Prabha et al. | A review of cyber security in cryptography: Services, attacks, and key approach | |
Huang et al. | Acquiring data traffic for sustainable IoT and smart devices using machine learning algorithm | |
CN109302442A (zh) | 一种数据存储证明方法及相关设备 | |
Mubarak et al. | A critical review on RFID system towards security, trust, and privacy (STP) | |
CN110535816A (zh) | 一种数据信息安全传输方法 | |
Ji et al. | Framework for understanding intention-unbreakable malware | |
Liang et al. | A novel lightweight PUF-based RFID mutual authentication protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |