CN113946840A - 存储控制器、客户系统以及操作存储控制器的方法 - Google Patents

存储控制器、客户系统以及操作存储控制器的方法 Download PDF

Info

Publication number
CN113946840A
CN113946840A CN202110397779.5A CN202110397779A CN113946840A CN 113946840 A CN113946840 A CN 113946840A CN 202110397779 A CN202110397779 A CN 202110397779A CN 113946840 A CN113946840 A CN 113946840A
Authority
CN
China
Prior art keywords
homomorphic
decryption
homomorphic encryption
client
data
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.)
Pending
Application number
CN202110397779.5A
Other languages
English (en)
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN113946840A publication Critical patent/CN113946840A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • 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/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0827Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving distinctive intermediate devices or communication paths
    • 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/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations
    • 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/34Encoding or coding, e.g. Huffman coding or error correction

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

公开了存储控制器、客户系统以及操作存储控制器的方法。所述客户系统包括:客户端主机装置;以及客户端存储装置,包括存储控制器和存储存储器。存储控制器包括:主机接口;处理器,被配置为控制针对存储存储器的读取操作和写入操作;以及同态加密和解密加速器,被配置为:基于从客户端主机装置接收读取请求,对从存储存储器读取的第一明文数据执行同态加密以生成第一同态密文数据,并且通过主机接口将第一同态密文数据提供给客户端主机装置;并且基于从客户端主机装置接收写入请求,对通过主机接口接收的第二同态密文数据执行同态解密以生成第二明文数据,并且将第二明文数据写入存储存储器中。

Description

存储控制器、客户系统以及操作存储控制器的方法
本申请要求于2020年7月16日在韩国知识产权局提交的第10-2020-0088104号韩国专利申请的优先权,该韩国专利申请的公开内容通过引用全部包含于此。
技术领域
公开涉及同态加密和解密技术,更具体地,涉及用于执行同态加密和解密的存储控制器、包括该存储控制器的系统以及操作该存储控制器的方法。
背景技术
同态加密和解密技术是在加密状态下支持诸如计算、搜索和分析的操作的加密技术。最近,随着个人信息的泄漏成为一个问题,同态加密和解密技术的重要性被更加强调。然而,根据同态加密和解密技术加密的同态密文数据的大小达到同态加密之前的明文数据的大小的几十倍,并且由同态加密和解密技术支持的运算的计算复杂度也非常高。此外,在传输明文数据或密文数据以通过应用同态加密技术来加密明文数据或解密密文数据的过程中也会发生安全问题。
发明内容
提供了能够增强安全性并且减少与同态密文数据的传输相关联的负担的存储控制器、包括存储控制器的系统以及操作存储控制器的方法。
根据示例实施例,一种客户系统包括:客户端主机装置;以及客户端存储装置,包括存储控制器和存储存储器。存储控制器包括:主机接口;处理器,被配置为控制针对存储存储器的读取操作和写入操作;以及同态加密和解密加速器,被配置为:基于从客户端主机装置接收读取请求,对从存储存储器读取的第一明文数据执行同态加密以生成第一同态密文数据,并且通过主机接口将第一同态密文数据提供给客户端主机装置;并且基于从客户端主机装置接收写入请求,对通过主机接口接收的第二同态密文数据执行同态解密以生成第二明文数据,并且将第二明文数据写入存储存储器中。
根据示例实施例,一种存储控制器包括:主机接口;处理器,被配置为控制针对存储存储器的读取操作和写入操作;以及同态加密和解密加速器,被配置为:基于从客户端主机装置接收读取请求,对从存储存储器读取的第一明文数据执行同态加密以生成第一同态密文数据,并且通过主机接口将第一同态密文数据提供给客户端主机装置;并且基于从客户端主机装置接收写入请求,对通过主机接口接收的第二同态密文数据执行同态解密以生成第二明文数据,并且将第二明文数据写入存储存储器中。
根据示例实施例,一种操作存储控制器的方法包括:由同态加密和解密加速器从主机装置接收读取请求;基于从主机装置接收的用于将存储在存储存储器中的数据传输到服务器系统的读取请求,由同态加密和解密加速器通过执行同态加密的第一路径从存储存储器读取数据;以及基于从主机装置接收的不是用于将所述数据传输到服务器系统的读取请求,由同态加密和解密加速器通过不执行同态加密的第二路径从存储存储器读取数据。
附图说明
根据以下结合附图的描述,公开的实施例的上述和其它方面、特征及优点将更明显。
图1是示出根据示例实施例的系统的框图。
图2是示出图1中所示的客户端存储装置的实施例的框图。
图3是示出图2中所示的存储控制器的实施例的框图。
图4是用于描述图3中所示的处理器控制数据的传输路径的过程的图。
图5是示出图2至图4中所示的同态加密和解密加速器的实施例的框图。
图6是示出图5中所示的随机数生成器的实施例的框图。
图7是示出图5中所示的加密电路的实施例的框图。
图8是示出图5中所示的解密电路的实施例的框图。
图9是示出图1中所示的服务器端存储装置的实施例的框图。
图10是示出图9的存储控制器的实施例的框图。
图11是示出图10的同态运算加速器的实施例的框图。
图12是示出操作包括在图1中所示的客户端存储装置中的存储控制器的方法的实施例的流程图。
图13是示出根据示例实施例的客户系统的框图。
图14是示出根据示例实施例的包括存储控制器的多个客户系统和服务器系统的框图。
具体实施方式
在下文中将参照附图更充分地描述示例实施例,在附图中示出了示例实施例。在附图中,同样的附图标记始终指同样的元件。可以省略重复的描述。
示例实施例包括执行同态加密、同态解密和同态运算的存储控制器、包含存储控制器的系统以及操作存储控制器的方法。在这种情况下,因为用于执行同态加密技术的公钥、私钥和其它参数未泄漏到客户端存储装置的外部,所以可以加强执行同态加密技术的系统的安全性。另外,通过使具有增加的大小的同态密文数据的传输的次数最小化,可以减少与同态密文数据的传输相关联的负担。
图1是示出根据示例实施例的系统的框图。
参照图1,系统1000包括客户系统300、服务器系统500和网络700。系统1000执行同态加密和解密技术。
同态加密和解密技术指支持通过在对明文执行运算之后执行加密而获得的值和通过在对每个明文执行加密之后执行运算而获得的值以表示相同结果值的加密技术。同态加密和解密技术指满足以下等式1的加密技术。
【等式1】
OP(E(PD))=E(OP(PD))
在等式1中,PD是通过将明文转换为数据而获得的明文数据,E()是执行加密的函数,OP()是执行运算的函数。当运算对应于加法或乘法时,同态加密和解密技术可以满足下面的等式2或等式3。
【等式2】
E(PD1)+E(PD2)=E(PD1+PD2)
【等式3】
E(PD1)×E(PD2)=E(PD1×PD2)
客户系统300和服务器系统500通过网络700彼此通信。客户系统300可以向服务器系统500请求数据或者将数据传输到服务器系统500,并且服务器系统500也可以向客户系统300请求数据或者将数据传输到客户系统300。
在一些实施例中,由客户系统300和服务器系统500通过网络700传输的数据是通过应用同态加密和解密技术而加密的同态密文数据。客户系统300可以对明文数据进行同态加密以生成同态密文数据,并且将同态密文数据传输到服务器系统500。服务器系统500可以从客户系统300接收并存储同态密文数据,然后对同态密文数据执行同态运算。服务器系统500可以将已经对其执行了同态运算的同态密文数据传输到客户系统300,并且客户系统300可以通过对传输的同态密文数据执行同态解密来生成明文数据。
客户系统300包括客户端存储装置330、客户端主机装置350和客户端动态随机存取存储器(DRAM)370。客户端存储装置330包括存储控制器(SCON)3000和存储存储器(SMEM)3500。客户端主机装置350控制客户端存储装置330,并且存储控制器3000在客户端主机装置350的控制下控制客户端DRAM 370和存储存储器3500。
服务器系统500包括服务器端存储装置530、服务器端主机装置550和服务器端DRAM 570。服务器端存储装置530包括SCON 5000和SMEM 5500。服务器端主机装置550控制服务器端存储装置530,并且存储控制器5000在服务器端主机装置550的控制下控制服务器端DRAM 570和存储存储器5500。
同态加密和解密技术具有可以在数学上证明的安全性。在一些实施例中,可以基于根据晶格问题的有限环来定义根据同态加密和解密技术的同态加密、同态解密和同态运算。在这种情况下,因为到目前为止还不知道用于有效地解决同态加密和解密技术的算法,所以当根据同态加密和解密技术对明文数据进行加密以生成同态密文数据时,可以保证同态密文数据的安全性。
然而,对于客户系统300根据同态加密和解密技术来执行同态加密和解密会需要的公钥、私钥和其它参数可以临时存储在客户系统300中包括的客户端存储装置330以及客户端主机装置350和客户端DRAM 370中。在这种情况下,同态密文数据的安全性会根据实现同态加密和解密技术的问题而不是同态加密和解密技术本身受到损害。在服务器系统500对同态密文数据执行同态运算的过程中也会发生该问题。
然而,根据示例实施例的客户系统300和服务器系统500在实现同态加密和解密技术的存储控制器3000和5000内部执行同态加密、同态解密或同态运算。在这种情况下,因为用于执行同态加密和解密技术的公钥、私钥以及其它参数未泄漏到客户端存储装置330的外部,所以可以加强用于执行同态加密和解密技术的系统1000的安全性。下面将更详细地描述。
图2是示出图1中所示的客户端存储装置的实施例的框图。
参照图2,客户端存储装置330包括存储控制器3000、存储存储器3500和连接器3800。
存储控制器3000在客户端主机装置350的控制下整体地控制客户端存储装置330。在一些实施例中,存储控制器3000控制针对存储存储器3500或客户端DRAM 370的读取操作和写入操作。然而,示例实施例的范围不限于此。
在一些实施例中,存储控制器3000可以控制同态加密和同态解密、存储器错误控制操作、随机化器(randomizer)、读取级别控制和其它信号处理操作。
存储器错误控制操作指控制编程错误、存储在存储存储器3500中的数据的编程/擦除错误、由于存储在浮栅中的电荷的泄漏而发生的错误以及读取错误的操作。随机化器指当存储在存储存储器3500中的数据呈现规则模式或数据呈现连续模式时,减轻由于反向模式依赖性或耦合现象而引起的可靠性降低的操作。读取级别控制指控制根据存储在存储存储器3500中的数据的读取方法而发生的错误的操作。其它信号处理操作可以包括用于提高存储存储器3500的可靠性的编码调制。然而,示例实施例的范围不限于此。同态加密和解密运算将在后面描述。
在一些实施例中,当从客户端主机装置350发出读取请求时,存储控制器3000可以从存储存储器3500或客户端DRAM 370读取请求读取的数据,并且当从客户端主机装置350发出写入请求时,存储控制器3000可以将请求写入的数据写入存储存储器3500或客户端DRAM 370中。在一些实施例中,存储控制器3000可以连接到客户端主机装置350。
存储存储器3500或客户端DRAM 370在存储控制器3000的控制下存储从客户端主机装置350传输的写入数据。在一些实施例中,存储存储器3500可以包括多个非易失性存储器。例如,多个非易失性存储器中的每个可以包括EEPROM(电可擦除可编程只读存储器)、PRAM(相变随机存取存储器)、RRAM(电阻随机存取存储器)、NFGM(纳米浮栅存储器)、PoRAM(聚合物随机存取存储器)、磁性随机存取存储器(MRAM)、铁电随机存取存储器(FRAM)或类似存储器。在一些实施例中,客户端DRAM 370可以包括多个DRAM作为易失性存储器。
存储控制器3000还包括同态加密和解密加速器3200。同态加密和解密加速器3200可以通过对明文数据执行同态加密来生成同态密文数据,并且通过对同态密文数据执行同态解密来生成明文数据。下面将更详细地描述。
图3是示出图2中所示的存储控制器的实施例的框图。
参照图2和图3,存储控制器3000包括存储接口3100、同态加密和解密加速器3200、主机接口3300、处理器(中央处理单元)(CPU)3400、动态随机存取存储器(DRAM)控制器3550、静态随机存取存储器(SRAM)3600和主总线3700。
存储接口3100执行存储控制器3000与存储存储器3500之间的通信。主机接口3300执行存储控制器3000与客户端主机装置350之间的通信。主总线3700执行包括在存储控制器3000中的组件3100、3200、3300、3400、3550和3600之间的通信。同态加密和解密加速器3200可以通过对明文数据执行同态加密来生成同态密文数据,或者通过对同态密文数据执行同态解密来生成明文数据。
在图3中,同态加密和解密加速器3200被示出为与主机接口3300分开的模块,但是示例实施例的范围不限于此。在一些实施例中,同态加密和解密加速器3200可以在主机接口3300内部实现。
处理器3400控制针对存储存储器3500的读取操作和写入操作,并且可以执行上面参照图2描述的存储器错误控制、随机化器、读取级别控制和其它信号处理操作。然而,示例实施例的范围不限于此。
存储器错误控制、随机化器、读取级别控制和其它信号处理操作可以作为不同于处理器3400的单独模块来实现和执行。在一些实施例中,处理器3400可以在执行读取操作和写入操作的过程中控制在存储存储器3500与客户端主机装置350之间传输的数据的传输路径。下面将更详细地描述。
图4是用于描述图3中所示的处理器控制数据的传输路径的过程的图。
在图4中,示出了存储控制器3000的组件3100、3200、3300、3400、3550、3600和3700。组件3100、3200、3300、3400、3550、3600和3700中的每个是与图3中所示的组件相同的组件,但是为了便于描述而通过改变它们的位置来示出。路径A PATHA和路径B PATHB被示出。
参照图2至图4,路径A和路径B表示在存储存储器3500与客户端主机装置350之间传输的数据的传输路径。然而,示例实施例的范围不限于此。路径A表示通过存储接口3100、SRAM 3600、DRAM控制器3550、处理器3400和主机接口3300的数据的传输路径。路径B表示进一步通过路径A上的组件3100、3300、3400、3550和3600以及同态加密和解密加速器3200的数据的传输路径。
也就是说,路径A可以是不通过同态加密和解密加速器3200的传输路径,路径B可以是通过同态加密和解密加速器3200的传输路径。
在一些实施例中,路径A可以包括从存储存储器3500传输的数据停留在存储控制器3000中而不被传输到客户端主机装置350的情况。另外,路径A还可以包括从客户端主机装置350传输的数据停留在存储控制器3000中而不被传输到存储存储器3500的情况。
在一些实施例中,路径B可以是当客户端主机装置350为了将存储在存储存储器3500中的数据传输到客户端存储装置330的外部的目的而向存储控制器3000发出读取请求时生成的路径。在相反的解释中,路径A可以是当客户端主机装置350为了除了将存储在存储存储器3500中的数据传输到客户端存储装置330的外部的目的之外的目的而向存储控制器3000发出读取请求时生成的路径。
在一些实施例中,路径B可以是当客户端主机装置350为了将从客户端存储装置330的外部接收的数据写入存储存储器3500中的目的而向存储控制器3000发出写入请求时生成的路径。在相反的解释中,路径A可以是当客户端主机装置350出于将从客户端存储装置330的外部接收的数据写入存储存储器3500中的目的之外的目的而向存储控制器3000发出写入请求时生成的路径。
在一些实施例中,路径B通过在组件3100、3200、3300、3400、3550和3600之中的同态加密和解密加速器3200的顺序可以刚好在执行存储控制器3000与客户端主机装置350之间的通信的主机接口3300之前。在这种情况下,在路径B上,同态加密和解密加速器3200可以与主机接口3300相邻。
图5是示出图2至图4中所示的同态加密和解密加速器的实施例的框图。
参照图5,同态加密和解密加速器3200包括加密电路(EC)3210、密钥生成电路(KGC)3230、解密电路(DC)3250和参数生成电路(PGC)3270。
加密电路3210从外部接收明文数据PDIN,从密钥生成电路3230接收公钥PUBK,并从参数生成电路3270接收参数PARAM。加密电路3210基于公钥PUBK和参数PARAM通过对明文数据PDIN执行同态加密来生成同态密文数据CDOUT。
密钥生成电路3230生成在同态加密处理中使用的公钥PUBK和在同态解密处理中使用的私钥SECK。
解密电路3250从外部接收同态密文数据CDIN,并且从密钥生成电路3230接收私钥SECK。解密电路3250基于私钥SECK通过对同态密文数据CDIN执行同态解密来生成明文数据PDOUT。
参数生成电路3270生成在同态加密处理和同态解密处理中使用的参数PARAM。在一些实施例中,在同态加密处理中使用的参数PARAM可以与在同态解密处理中使用的参数PARAM不同。在一些实施例中,参数PARAM的数量可以是多个,但是示例实施例的范围不限于此。因此,在实施例中,同态加密和解密加速器3200可以被配置为:基于从客户端主机装置350接收读取请求,对从存储存储器3500读取的明文数据执行同态加密以生成同态密文数据,并且通过主机接口3300将同态密文数据提供给客户端主机装置350;并且基于从客户端主机装置350接收写入请求,对通过主机接口3300接收的同态密文数据执行同态解密以生成明文数据,并且将明文数据写入存储存储器3500中。
在一些实施例中,可以基于由同态加密和解密加速器3200采用的同态加密方案来生成参数PARAM。可以从各种角度对同态加密方案进行分类。例如,同态加密方案可以是部分同态加密、稍微同态加密和完全同态加密中的一种。部分同态加密可以仅支持密文之间的一些运算,稍微同态加密可以支持密文之间的有限数量的运算,完全同态加密可以支持密文之间的无限数量的运算。然而,在一些实施例中,同态加密方案可以是数字同态加密和逐位同态加密中的一种。
在一些实施例中,参数PARAM可以包括与编码、解码、多消息打包、同态加密、同态解密和密钥生成相关的参数,但是示例实施例的范围不限于此。在一些实施例中,参数PARAM还可以包括与数字调整或密钥切换相关的参数。
参数生成电路3270也可以包括随机数生成器(RNG)3275。下面将更详细地描述。
图6是示出图5中所示的随机数生成器的实施例的框图。
参照图6,随机数生成器3275包括线性反馈移位寄存器环形振荡器(LFSR RNG)3271和随机数提供器3273。在一些实施例中,LFSR RNG 3271可以包括移位寄存器和XOR逻辑门。
LFSR RNG 3271生成表示从0到232的值的32位输出信号LOUT,并且将生成的32位输出信号LOUT传输到随机数提供器3273。在一些实施例中,LFSR RNG 3271可以基于FTP(文件传输协议)连接时间、处理器间通信(IPC)时间、外部温度、接口(即,图3中所示的主机接口3300或存储接口3100)的链接时间中的任何一个或任何组合来生成输出信号LOUT。
随机数提供器3273基于输出信号LOUT生成随机数。在一些实施例中,随机数提供器3273可以生成值“-1”、“0”或“1”作为随机数。在一些实施例中,随机数提供器3273可以在输出信号LOUT大于或等于0且小于1/3×232时生成“-1”,在输出信号LOUT大于或等于1/3×232且小于2/3×232时生成“0”,并且在输出信号LOUT大于或等于2/3×232且小于3/3×232时生成“1”,但是示例实施例的范围不限于此。
在一些实施例中,随机数生成器3275可以包括参考查找表(RLUT)3272。
图7是示出图5中所示的加密电路的实施例的框图。
参照图7,加密电路3210包括多项式乘法器(PM1和PM2)3213-1和3213-2、多项式加法器(PA1、PA2和PA3)3217-1、3217-2和3217-3以及编码器(ENC)3211。
加密电路3210接收明文数据PDIN、公钥PUBK和参数PARAM。在一些实施例中,公钥PUBK的数量可以是多个,公钥可以包括第一公钥PK1和第二公钥PK2。在一些实施例中,参数PARAM可以被输入到多项式乘法器3213-1和3213-2以及多项式加法器3217-1、3217-2和3217-3。然而,示例实施例的范围不限于此。
多项式乘法器3213-1接收第一公钥PK1和参数PARAM,并且将执行多项式乘法运算的结果提供给多项式加法器3217-1。多项式乘法器3213-2接收第二公钥PK2和参数PARAM,并且将执行多项式乘法运算的结果提供给多项式加法器3217-2。
多项式加法器3217-1接收参数PARAM和由多项式乘法器3213-1执行的结果数据,并且提供执行多项式加法运算的结果作为第一同态密文数据CT1。多项式加法器3217-2接收参数PARAM和由多项式乘法器3213-2执行的结果数据,并且将执行多项式加法运算的结果提供给多项式加法器3217-3。编码器3211接收明文数据PDIN并对明文数据PDIN进行编码,并且将编码的结果数据提供给多项式加法器3217-3。多项式加法器3217-3接收由多项式加法器3217-2和编码器3211执行的运算的结果,并且提供执行多项式加法运算的结果作为第二同态密文数据CT2。
也就是说,可以根据下面的等式4和等式5生成第一同态密文数据CT1和第二同态密文数据CT2。
【等式4】
CT1=PK1×PARAM1+PARAM2
【等式5】
CT2=PK2×PARAM1+PARAM3+INC(PDIN)
在等式4和等式5中,INC()是编码函数。PARAM1、PARAM2和PARAM3是包括在参数PARAM中的随机数。
图8是示出图5中所示的解密电路的实施例的框图。
参照图8,解密电路3250包括多项式乘法器(PM3)3251、多项式加法器(PA4)3253和解码器(DEC)3255。
解密电路3250接收同态密文数据CDIN和私钥SECK。在一些实施例中,同态密文数据CDIN的数量可以是多个,同态密文数据CDIN可以包括第一同态密文数据CT1和第二同态密文数据CT2。
多项式乘法器3251接收第一同态密文数据CT1和私钥SECK,并且将执行多项式乘法运算的结果提供给多项式加法器3253。
多项式加法器3253接收第二同态密文数据CT2和由多项式乘法器3251执行的运算的结果,并且将执行多项式加法运算的结果提供给解码器3255。
解码器3255接收并解码由多项式加法器3253执行的运算的结果,并提供解码的结果数据作为明文数据PDOUT。也就是说,可以根据下面的等式6生成明文数据PDOUT。
【等式6】
PDOUT=DEC(CT1×SECK+CT2)
在等式6中,DEC()是解码函数。
图9是示出图1中所示的服务器端存储装置的实施例的框图。
参照图9,服务器端存储装置530包括SCON 5000、SMEM 5500和连接器5800。
存储控制器5000在服务器端主机装置550的控制下整体地控制服务器端存储装置530。在一些实施例中,存储控制器5000控制针对存储存储器5500或服务器端DRAM 570的读取操作和写入操作。然而,示例实施例的范围不限于此。在一些实施例中,存储控制器5000可以控制同态运算。存储控制器5000可以控制数论变换(NTT)、逆数论变换(INTT)、矩阵向量乘法、模多项式乘法和模多项式加法。在一些实施例中,NTT运算可以是对每个同态密文数据执行同态乘法而执行的运算。矩阵向量乘法可以是对由NTT运算产生的数据执行逐点乘法而执行的运算。可以基于执行逐点乘法的结果来执行INTT运算。模多项式乘法可以是对每个同态密文数据执行同态乘法而执行的运算。模多项式加法可以是对每个同态密文数据执行同态加法而执行的运算。
在一些实施例中,当从服务器端主机装置550发出读取请求时,存储控制器5000可以从存储存储器5500或服务器端DRAM 570读取请求读取的数据,并且当从服务器端主机装置550发出写入请求时,存储控制器5000可以将请求写入的数据写入存储存储器5500或服务器端DRAM 570中。
在一些实施例中,存储控制器5000可以通过连接器5800连接到服务器端主机装置550。
存储存储器5500或服务器端DRAM 570在存储控制器5000的控制下存储从服务器端主机装置550传输的写入数据。
存储控制器5000还包括同态运算加速器5200。同态运算加速器5200可以在同态密文数据之间执行同态运算,并且生成对其执行同态运算的同态密文数据作为同态运算的结果。在下文中,将更详细地描述。
图10是示出图9的存储控制器的实施例的框图。
参照图9和图10,存储控制器5000包括存储接口5100、同态运算加速器5200、主机接口5300、处理器(中央处理单元)(CPU)5400、DRAM控制器5550、SRAM 5600和主总线5700。
存储接口5100执行存储控制器5000与存储存储器5500之间的通信。主机接口5300执行存储控制器5000与服务器端主机装置550之间的通信。主总线5700执行包括在存储控制器5000中的组件5100、5200、5300、5400、5550和5600之间的通信。
同态运算加速器5200接收同态密文数据。同态运算加速器5200可以在接收到的同态密文数据之间执行同态运算,并且生成对其执行同态运算的同态密文数据作为同态运算的结果。在一些实施例中,同态运算加速器5200可以进一步接收密文运算级别。密文运算级别表示在没有自举处理的情况下可以在同态密文数据之间执行乘法运算的最大次数。
处理器5400控制针对存储存储器5500的读取操作和写入操作,并且可以执行上面参照图9描述的NTT、INTT、矩阵向量乘法、模多项式乘法和模多项式加法。然而,示例实施例的范围不限于此。NTT、INTT、矩阵向量乘法、模多项式乘法和模多项式加法可以由与处理器5400不同的单独模块独立地执行。
图11是示出图10的同态运算加速器的实施例的框图。
参照图11,同态运算加速器5200包括专用处理器(专用中央处理单元)(专用CPU)5210、专用存储器(专用SRAM)5220、NTT电路5230和INTT电路5240、矩阵向量乘法电路5250、模多项式乘法电路5260以及模多项式加法电路5270。
专用处理器5210总体上控制同态运算加速器5200的组件5220、5230、5240、5250、5260和5270。专用处理器5210可以与包括在存储控制器5000中的处理器5400分开地在同态运算加速器5200中实现。在一些实施例中,专用处理器5210可以是数字信号处理器(DSP)。在这种情况下,专用处理器5210可以与高级别并行地执行浮点运算。然而,示例实施例的范围不限于此。专用处理器5210可以是微处理器、应用处理器或ARM处理器中的一种。
专用存储器5220根据NTT电路5230、INTT电路5240、矩阵向量乘法电路5250、模多项式乘法电路5260和模多项式加法电路5270的运算临时存储结果数据。
NTT电路5230、INTT电路5240、矩阵向量乘法电路5250、模多项式乘法电路5260和模多项式加法电路5270可以在同态密文数据之间执行同态运算,或者可在中间步骤中执行运算以执行同态运算。
图12是示出操作包括在图1中所示的客户端存储装置中的存储控制器的方法的实施例的流程图。
参照图1和图12,在操作存储控制器3000的方法中,从客户端主机装置350接收请求(S1000)。
从客户端主机装置350接收的请求可以是读取请求或写入请求。然而,示例实施例的范围不限于此。在一些实施例中,从客户端主机装置350接收的请求可以是用于控制编程错误、存储在存储存储器3500中的数据的编程/擦除错误、由于存储在浮栅中的电荷的泄漏而发生的错误以及读取错误的请求。存储器错误控制操作指控制编程错误、存储在存储存储器3500中的数据的编程/擦除错误、由于存储在浮栅中的电荷的泄漏而发生的错误和读取错误的操作。随机化器指当存储在存储存储器3500中的数据呈现规则模式或数据呈现连续模式时,减轻由于反向模式依赖性或耦合现象引起的可靠性降低的操作。读取级别控制指控制根据存储在存储存储器3500中的数据的读取方法而发生的错误的操作。其它信号处理操作可以包括用于提高存储存储器3500的可靠性的编码调制。
当来自客户端主机装置350的请求是为了将存储在存储存储器3500中的数据传输到服务器系统500的目的的读取请求时,通过执行同态加密的第一路径(例如,路径B)从存储存储器3500读取数据,并且当来自客户端主机装置350的请求不是为了将存储在存储存储器3500中的数据传输到服务器系统500的目的的请求时,通过不执行同态加密的第二路径(例如,路径A)从存储存储器3500读取数据(S2000)。
在一些实施例中,第二路径(例如,路径A)可以包括从存储存储器3500传输的数据停留在存储控制器3000中而不被传输到客户端主机装置350的情况。另外,第二路径还可以包括从客户端主机装置350传输的数据停留在存储控制器3000中而不被传输到存储存储器3500的情况。
在一些实施例中,第一路径(例如,路径B)可以是当客户端主机装置350出于将存储在存储存储器3500中的数据传输到客户端存储装置330的外部的目的而向存储控制器3000发出读取请求时生成的路径。在相反的解释中,路径A可以是当客户端主机装置350出于除了将存储在存储存储器3500中的数据传输到客户端存储装置330的外部的目的之外的目的而向存储控制器3000发出读取请求时生成的路径。
在一些实施例中,第一路径(例如,路径B)通过组件3100、3200、3300、3400、3550和3600之中的同态加密和解密加速器3200的顺序可以刚好在执行存储控制器3000与客户端主机装置350之间的通信的主机接口3300之前。在这种情况下,在第一路径上,同态加密和解密加速器3200可以与主机接口3300相邻。
如上所述,同态密文数据的大小可以是明文数据的大小的几十倍。因此,当存储控制器3000执行除由同态加密和解密加速器3200执行的同态加密和解密之外的其它功能时,存储控制器3000在明文数据的状态而不是同态密文数据的状态下执行其它功能,从而减少在存储控制器3000内部的数据传输所消耗的成本。
图13是示出根据示例实施例的客户系统的框图。
参照图13,客户系统7000包括处理器7100、请求管理电路7200、存储器装置7300、连接电路7400、用户接口7500和电源7600。客户系统7000可以是任何移动系统或计算系统。
处理器7100控制客户系统7000的整体操作,执行操作系统、应用等,并且执行诸如计算或任务的各种计算功能。
连接电路7400与外部装置通信。在一些实施例中,连接电路7400可以被配置为执行WiFi、WiFi直连、以太网、蓝牙、BLE(蓝牙低功耗)、SPP(串口协议)、Zigbee、红外通信、无线电控制、UWM(超宽带)、无线USB和NFC(近场通信)之中的一个或多个通信。
存储器装置7300可以包括存储控制器和非易失性存储器。在一些实施例中,存储器控制器可以是图1至图4、图9和图10中所示的存储控制器3000或5000,并且非易失性存储器可以是图1、图2和图9中所示的存储存储器3500或5500。在一些实施例中,非易失性存储器可以被实现为EEPROM、闪存、MRAM(磁性RAM)、自旋转移矩MRAM、FeRAM(铁电RAM)、PRAM(相变RAM)、RRAM(电阻式RAM)、纳米管RRAM、聚合物RAM、纳米浮栅存储器、全息存储器、分子电子存储器装置或绝缘体电阻变化存储器。
用户接口7500可以包括一个或多个输入装置(诸如键盘、按钮、麦克风和触摸屏)以及/或者一个或多个输出装置(诸如扬声器和显示装置)。在一些实施例中,用户可以通过用户接口7500输入或检查明文。
电源7600可以供应客户系统7000的操作电压。
图14是示出根据示例实施例的包括存储控制器的多个客户系统和服务器系统的框图。
参照图14,系统9000可以包括同态加密处理服务器系统9100、数据库9300、通信网络9500以及客户系统(客户1、客户2和客户3)9700-1、9700-2和9700-3。
同态加密处理服务器系统9100以及客户系统9700-1、9700-2和9700-3可以包括图2和图3中所示的同态加密和解密加速器或者图8和图9中所示的同态运算加速器中的任何一个或任何组合。
客户系统9700-1、9700-2和9700-3是具有通信功能的计算装置或通信终端,并且可以是移动电话、智能电话、平板PC、移动互联网装置(MID)、互联网平板电脑、物联网(IoT)装置或可穿戴计算机,但是示例实施例的范围不限于此。
通信网络9500包括局域网(LAN)、广域网(WAN)、互联网(WWW:World Wide Web)、有线/无线数据通信网络、电话网络、有线/无线电视通信网络等。
无线通信网络可以是3G、4G、5G、3GPP(第三代合作伙伴计划)、LTE(长期演进)、WIMAX(全球微波接入互操作性)、WiFi(Wi-Fi)、蓝牙通信、红外通信、超声波通信、可见光通信(VLC:Visible Light Communication)和Li-Fi(LiFi)中的一种,但是示例实施例的范围不限于此。
如上所述,根据示例实施例的存储控制器、包括存储控制器的系统以及操作存储控制器的方法执行同态加密、同态解密和同态运算。在这种情况下,因为在执行同态加密技术时的公钥、私钥和其它参数不泄漏到客户端存储装置的外部,所以可以加强执行同态加密技术的系统的安全性。另外,通过使具有增加的大小的同态密文数据的传输的次数最小化,可以减少与同态密文数据的传输相关联的负担。
根据示例实施例的存储控制器以及包括存储控制器的客户系统和服务器系统可以广泛应用于应用了同态加密技术的各种应用领域。另外,示例实施例可以更有用地应用于应用了同态加密技术的计算机、膝上型计算机、蜂窝电话、智能电话、MP3播放器、个人数字助理(PDA)、便携式多媒体装置播放器(PMP)、数字TV、数字相机、便携式游戏机、导航装置、可穿戴装置、IoT(物联网)装置、IoE(万物联网)装置、电子系统(诸如,电子书)、虚拟现实(VR)装置和增强现实(AR)装置。
前述内容是示例实施例的说明,而不应被解释为对其进行限制。尽管已经描述了一些示例实施例,但是本领域技术人员将容易理解的是,在实质上不脱离示例实施例的新颖教导和优点的情况下,在示例实施例中许多修改是可能的。因此,所有这样的修改意图被包括在如权利要求中限定的示例实施例的范围内。因此,应理解的是,前述内容是各种示例实施例的说明,并且不应被解释为限于所公开的示例实施例,并且对所公开的示例实施例的修改以及其它示例实施例意图被包括在所附权利要求的范围内。

Claims (20)

1.一种客户系统,所述客户系统包括:客户端主机装置;以及客户端存储装置,包括存储控制器和存储存储器,
其中,存储控制器包括:
主机接口;
处理器,被配置为控制针对存储存储器的读取操作和写入操作;以及
同态加密和解密加速器,被配置为:基于从客户端主机装置接收读取请求,对从存储存储器读取的第一明文数据执行同态加密以生成第一同态密文数据,并且通过主机接口将第一同态密文数据提供给客户端主机装置;并且基于从客户端主机装置接收写入请求,对通过主机接口接收的第二同态密文数据执行同态解密以生成第二明文数据,并且将第二明文数据写入存储存储器中。
2.根据权利要求1所述的客户系统,其中,同态加密和解密加速器还被配置为:
基于从客户端主机装置接收的用于将存储在存储存储器中的数据传输到服务器系统的读取请求,通过第一路径从存储存储器读取第一明文数据;并且
基于从客户端主机装置接收的不是用于将所述数据传输到服务器系统的读取请求,通过不同于第一路径的第二路径从存储存储器读取第一明文数据。
3.根据权利要求2所述的客户系统,其中,第一路径通过同态加密和解密加速器,并且
其中,第二路径是不通过同态加密和解密加速器的传输路径。
4.根据权利要求2所述的客户系统,其中,同态加密和解密加速器在第一路径上与主机接口相邻。
5.根据权利要求1至4中的任意一项所述的客户系统,其中,同态加密和解密加速器包括:
加密电路,被配置为执行同态加密;
解密电路,被配置为执行同态解密;
密钥生成电路,被配置为生成公钥和私钥;以及
参数生成电路,被配置为生成参数。
6.根据权利要求5所述的客户系统,其中,加密电路还被配置为:
接收第一明文数据;
从密钥生成电路接收公钥;以及
从参数生成电路接收参数。
7.根据权利要求6所述的客户系统,其中,参数与编码、解码、多消息打包、同态加密、同态解密和密钥生成有关。
8.根据权利要求5所述的客户系统,其中,解密电路还被配置为:
接收第二同态密文数据;以及
从密钥生成电路接收私钥。
9.根据权利要求5所述的客户系统,其中,参数生成电路还被配置为生成在同态加密和同态解密中使用的参数。
10.根据权利要求9所述的客户系统,其中,参数生成电路还被配置为基于在同态加密和同态解密中使用的同态加密方案来确定参数。
11.根据权利要求10所述的客户系统,其中,同态加密方案包括部分同态加密、稍微同态加密和完全同态加密之中的一种。
12.根据权利要求5所述的客户系统,其中,参数生成电路包括线性反馈移位寄存器和参考查找表。
13.一种存储控制器,所述存储控制器包括:
主机接口;
处理器,被配置为控制针对存储存储器的读取操作和写入操作;以及
同态加密和解密加速器,被配置为:基于从客户端主机装置接收读取请求,对从存储存储器读取的第一明文数据执行同态加密以生成第一同态密文数据,并且通过主机接口将第一同态密文数据提供给客户端主机装置;并且基于从客户端主机装置接收写入请求,对通过主机接口接收的第二同态密文数据执行同态解密以生成第二明文数据,并且将第二明文数据写入存储存储器中。
14.根据权利要求13所述的存储控制器,其中,同态加密和解密加速器还被配置为:
基于从客户端主机装置接收的用于将存储在存储存储器中的数据传输到服务器系统的读取请求,通过第一路径从存储存储器读取第一明文数据;并且
基于从客户端主机装置接收的不是用于将所述数据传输到服务器系统的读取请求,通过不同于第一路径的第二路径从存储存储器读取第一明文数据。
15.根据权利要求14所述的存储控制器,其中,第一路径通过同态加密和解密加速器,并且
其中,第二路径是不通过同态加密和解密加速器的传输路径。
16.根据权利要求14所述的存储控制器,其中,同态加密和解密加速器在第一路径上与主机接口相邻。
17.一种操作存储控制器的方法,所述方法包括:
由同态加密和解密加速器从主机装置接收读取请求;
基于从主机装置接收的用于将存储在存储存储器中的数据传输到服务器系统的读取请求,由同态加密和解密加速器通过执行同态加密的第一路径从存储存储器读取数据;以及
基于从主机装置接收的不是用于将所述数据传输到服务器系统的读取请求,由同态加密和解密加速器通过不执行同态加密的第二路径从存储存储器读取数据。
18.根据权利要求17所述的方法,其中,第一路径通过同态加密和解密加速器,并且
其中,第二路径是不通过同态加密和解密加速器的传输路径。
19.根据权利要求17所述的方法,其中,存储控制器包括用于与主机装置通信的主机接口,并且
其中,同态加密和解密加速器在第一路径上与主机接口相邻。
20.根据权利要求19所述的方法,其中,同态加密和解密加速器包括:
加密电路,被配置为执行同态加密;
解密电路,被配置为执行同态解密;
密钥生成电路,被配置为生成公钥和私钥;以及
参数生成电路,被配置为生成参数。
CN202110397779.5A 2020-07-16 2021-04-14 存储控制器、客户系统以及操作存储控制器的方法 Pending CN113946840A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0088104 2020-07-16
KR1020200088104A KR20220009643A (ko) 2020-07-16 2020-07-16 스토리지 컨트롤러, 이를 포함하는 클라이언트 및 서버, 및 이의 동작 방법

Publications (1)

Publication Number Publication Date
CN113946840A true CN113946840A (zh) 2022-01-18

Family

ID=74668700

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110397779.5A Pending CN113946840A (zh) 2020-07-16 2021-04-14 存储控制器、客户系统以及操作存储控制器的方法

Country Status (4)

Country Link
US (1) US11632232B2 (zh)
EP (1) EP3940676A1 (zh)
KR (1) KR20220009643A (zh)
CN (1) CN113946840A (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102471210B1 (ko) * 2022-03-07 2022-11-29 주식회사 비트코인그룹 블록체인과 동형암호를 기반으로 하는 데이터 분석 서비스 중개 시스템 및 방법
EP4332748A1 (en) * 2022-09-02 2024-03-06 Samsung Electronics Co., Ltd. Systems and methods for integrating fully homomorphic encryption (fhe) with a storage device

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8285972B2 (en) * 2005-10-26 2012-10-09 Analog Devices, Inc. Lookup table addressing system and method
WO2012149395A1 (en) 2011-04-29 2012-11-01 International Business Machines Corporation Fully homomorphic encryption
KR101341709B1 (ko) 2011-07-11 2013-12-13 주식회사 디에스글로벌이엔씨 분절거더를 이용한 교량용 프리스트레스트 거더의 제작 방법 및 이에 의해 시공된 프리스트레스트 거더
US9760737B2 (en) 2015-06-12 2017-09-12 Qualcomm Incorporated Techniques for integrated circuit data path confidentiality and extensions thereof
US10255454B2 (en) 2016-02-17 2019-04-09 Microsoft Technology Licensing, Llc Controlling security in relational databases
KR101832861B1 (ko) 2016-09-26 2018-04-13 연세대학교 산학협력단 패스워드 평가 방법 및 장치
CN106452723B (zh) 2016-12-13 2017-05-31 深圳市全同态科技有限公司 一种基于模运算的全同态加密处理方法
CN110169010B (zh) * 2017-01-18 2022-09-23 三菱电机株式会社 同态运算装置、加密系统和计算机能读取的存储介质
WO2019053486A1 (en) 2017-04-11 2019-03-21 The Governing Council Of The University Of Toronto HOMOMORPHIC TREATMENT UNIT (HPU) FOR ACCELERATING SECURE CALCULATIONS ACCORDING TO HOMOMORPHIC ENCRYPTION
US10778409B2 (en) 2017-12-15 2020-09-15 Crypto Lab Inc. Terminal device performing homomorphic encryption, server device processing ciphertext and methods thereof
US11087223B2 (en) 2018-07-11 2021-08-10 International Business Machines Corporation Learning and inferring insights from encrypted data
US11575500B2 (en) 2018-07-25 2023-02-07 Sap Se Encrypted protection system for a trained neural network
KR102040120B1 (ko) 2018-07-27 2019-11-05 주식회사 크립토랩 근사 암호화된 암호문에 대한 연산을 수행하는 장치 및 방법
FR3097353B1 (fr) * 2019-06-12 2021-07-02 Commissariat Energie Atomique Méthode d’apprentissage collaboratif d’un réseau de neurones artificiels sans divulgation des données d’apprentissage
US11374776B2 (en) * 2019-09-28 2022-06-28 Intel Corporation Adaptive dataflow transformation in edge computing environments

Also Published As

Publication number Publication date
KR20220009643A (ko) 2022-01-25
US11632232B2 (en) 2023-04-18
US20220021515A1 (en) 2022-01-20
EP3940676A1 (en) 2022-01-19

Similar Documents

Publication Publication Date Title
CN110214433B (zh) 一种进行同态加密的终端装置及其加密方法、服务器装置的密文处理方法
CN106850221B (zh) 信息加密、解密方法及装置
KR101965628B1 (ko) 동형 암호화를 수행하는 단말 장치와 그 암호문을 처리하는 서버 장치 및 그 방법들
US10515567B2 (en) Cryptographic machines with N-state lab-transformed switching devices
Patel et al. Symmetric keys image encryption and decryption using 3D chaotic maps with DNA encoding technique
KR102339833B1 (ko) 다변수 패킹을 이용하는 연산 장치 및 방법
US9503267B2 (en) Generating digital signatures
CN113946840A (zh) 存储控制器、客户系统以及操作存储控制器的方法
CN107579813A (zh) 信息加密、解密方法及装置
CN111464564B (zh) 一种基于对称密码算法的数据高速加解密方法及装置
WO2013063694A1 (en) Lightweight stream cipher cryptosystems
CN108270550A (zh) 一种基于sm4算法的安全高效的白盒实现方法及装置
CN105184115A (zh) 用于将隐式完整性或可信性检查包括到白箱实现中的方法
ES2422868T3 (es) Procedimiento de conversión de un primer cifrado en un segundo cifrado
JP7170878B2 (ja) 暗号文に対する非多項式演算を行う装置及び方法
CN111092730A (zh) 随机数生成器、加密装置以及操作加密装置的方法
Faragallah An efficient block encryption cipher based on chaotic maps for secure multimedia applications
US9509495B2 (en) Data protection method and apparatus
CN109923829B (zh) 对秘密值达成一致
CN104753666A (zh) 密钥处理方法和装置
CN105281893A (zh) 用于引入白箱实现对串集合的依赖性的方法
KR20230078510A (ko) 동형 암호 연산 장치 및 방법
CN115834018A (zh) 一种保护隐私的多方数据处理方法、系统和设备
KR101428665B1 (ko) Aes-otp기반의 보안 시스템 및 방법
KR101971001B1 (ko) 화이트박스 암호가 적용된 블록 암호 기반의 난수 생성 방법 및 장치

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