CN116566605A - Method for safely sharing careless data under distributed system - Google Patents
Method for safely sharing careless data under distributed system Download PDFInfo
- Publication number
- CN116566605A CN116566605A CN202310588194.0A CN202310588194A CN116566605A CN 116566605 A CN116566605 A CN 116566605A CN 202310588194 A CN202310588194 A CN 202310588194A CN 116566605 A CN116566605 A CN 116566605A
- Authority
- CN
- China
- Prior art keywords
- server
- matrix
- data
- servers
- sharing
- 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
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/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/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
-
- 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
- H04L63/045—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 wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- 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/40—Network security protocols
-
- 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/50—Oblivious transfer
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
技术领域technical field
本发明涉及分布式系统下不经意数据安全共享方法,属于数据安全传输领域。The invention relates to an inadvertent data security sharing method under a distributed system, and belongs to the field of data security transmission.
背景技术Background technique
随着信息技术的发展,当今社会已经进入了大数据时代。随着信息化程度的不断加深,数据共享已成为数据使用的一种重要方式。由于一些用户数据的单一性以及处理能力的局限性,数据共享可以扩大数据的规模,提高数据挖掘的效率,数据共享已经成为智慧城市的重要一环。分布式数据共享是数据使用的一种重要方式。由于一些用户数据的单一性以及处理能力的局限性,分布式数据共享可以扩大数据的规模,提高数据挖掘的效率。分布式数据共享是指位于不同地点的众多服务器通过网络相互链接,共同组成一个完整的、全局的逻辑上集中、物理上分布的大型服务器,并且数据分散存储于服务器,数据访问者通过访问分布式服务器,实现数据共享。分布式共享数据具有来源繁杂、体量庞大和存储分散等特点。分布式服务器与用户在共享数据过程中,服务器可以根据用户的请求推测其访问的重点数据,并且恶意用户可能在访问服务器时窃取他人数据。通信双方的隐私均存在被泄漏的风险。不经意传输技术(oblivious transfer,简称OT)能够较好地在数据共享过程中保护共享双方的隐私,同时也是密码学中重要的密码原语。然而,如果采用不经意传输技术直接对被共享数据进行传输,计算和通信开销将会非常大。同时,分布式服务器与用户之间传输数据时,用户可知数据来源。进而,数据处于哪个服务器的信息将被泄漏。如果在用户和服务器之间引入代理,并使用代理重加密技术,能够隐藏数据的存储痕迹。然而,相比较而言,在分布式服务器和用户之间使用不经意扩展技术,也能实现痕迹隐藏。并且,在共享过程中不引入代理,能够减少计算和通信开销。With the development of information technology, today's society has entered the era of big data. With the continuous deepening of informatization, data sharing has become an important way of data use. Due to the singleness of some user data and the limitation of processing power, data sharing can expand the scale of data and improve the efficiency of data mining. Data sharing has become an important part of smart cities. Distributed data sharing is an important way of data usage. Due to the singleness of some user data and the limitation of processing power, distributed data sharing can expand the scale of data and improve the efficiency of data mining. Distributed data sharing means that many servers located in different locations are linked to each other through the network to form a complete and global logically centralized and physically distributed large-scale server, and the data is stored in the server. server for data sharing. Distributed shared data has the characteristics of complicated sources, huge volume and scattered storage. In the process of sharing data between distributed servers and users, the server can speculate on the key data it accesses according to the user's request, and malicious users may steal other people's data when accessing the server. The privacy of both parties in the communication is at risk of being leaked. Oblivious transfer technology (OT) can better protect the privacy of both parties in the process of data sharing, and it is also an important cryptographic primitive in cryptography. However, if the shared data is directly transferred using oblivious transfer technology, the computation and communication overhead will be very large. At the same time, when data is transmitted between the distributed server and the user, the user can know the source of the data. Furthermore, the information on which server the data is on will be leaked. If a proxy is introduced between the user and the server, and the proxy re-encryption technology is used, the traces of data storage can be hidden. However, comparatively speaking, trace hiding can also be achieved using inadvertent extension techniques between distributed servers and users. Moreover, no agent is introduced in the sharing process, which can reduce computation and communication overhead.
[1]Naor M,Pinkas B.Distributed oblivious transfer[C]//InternationalConference on the Theory and Application of Cryptology and InformationSecurity.Springer,Berlin,Heidelberg,2000:205-219.[1]Naor M, Pinkas B. Distributed oblivious transfer[C]//International Conference on the Theory and Application of Cryptology and Information Security. Springer, Berlin, Heidelberg, 2000:205-219.
Naor等人[1]率先提出了分布式不经意传输概念,在发送方和接收方之间引入m个服务器,并在m个服务器间利用函数秘密共享思想,用户从m个服务器选取l个,并与l个服务器执行n选1OT协议(即)。然而,该分布式不经意传输概念难以实现数据地快速共享,并引入多个服务器实体仅提供拆分函数功能,未参与共享过程。Naor et al. [1] first proposed the concept of distributed inadvertent transfer, introducing m servers between the sender and the receiver, and using the function secret sharing idea among the m servers, the user selects l from the m servers, and Execute n-choice 1OT protocol with l servers (ie ). However, the concept of distributed oblivious transfer is difficult to achieve fast data sharing, and introduces multiple server entities that only provide the splitting function and do not participate in the sharing process.
[2]Ishai Y,Kilian J,Nissim K,et al.Extending oblivious transfersefficiently[C]//Annual International Cryptology Conference.Springer,Berlin,Heidelberg,2003:145-161.[2] Ishai Y, Kilian J, Nissim K, et al. Extending oblivious transfers efficiently [C]//Annual International Cryptology Conference. Springer, Berlin, Heidelberg, 2003: 145-161.
[3]Asharov G,Lindell Y,Schneider T,et al.More efficient oblivioustransfer and extensions for faster secure computation[C]//Proceedings of the2013ACM SIGSAC conference on Computer&communications security.2013:535-548.[3]Asharov G, Lindell Y, Schneider T, et al.More efficient oblivious transfer and extensions for faster secure computation[C]//Proceedings of the2013ACM SIGSAC conference on Computer&communications security.2013:535-548.
Ishai等人[2]提出了第一个高效的将k个base-OT协议扩展成为n个OT协议(k<<n),即半诚实手模型下安全的OT扩展协议。然而,Asharov等人[3]通过实验发现IKNP[2]消耗42%计算开销在矩阵转置上,他们在标准模型下构造了一个新型OT方案,即利用2×2矩阵多次对m×n矩阵进行转置,将m×n矩阵转置计算复杂度从O(mk)降低到O(m/rlogk),其中r是CPU寄存器大小。然而,如果将上述两种不经意传输协议直接应用于分布式环境中(我们考虑的分布式场景是指,数据存储在不同的服务器内,用户需要从服务器内获取数据),会存在两个问题。第一个问题,分布式服务器间需要共同生成OT的辅助参数,如果由一台服务器生成广播给其他服务器,会造成负载失衡的问题。第二个问题,上述协议仅支持用户从m对数据中获取m个数据,即数据获取缺乏灵活性。Ishai et al. [2] proposed the first efficient extension of k base-OT protocols to n OT protocols (k<<n), which is a secure OT extension protocol under the semi-honest hand model. However, Asharov et al. [3] found through experiments that IKNP [2] consumes 42% of the computational overhead on matrix transposition. They constructed a new OT scheme under the standard model, that is, using 2×2 matrix to m×n The matrix is transposed to reduce the computational complexity of m×n matrix transposition from O(mk) to O(m/rlogk), where r is the CPU register size. However, if the above two inadvertent transfer protocols are directly applied to a distributed environment (the distributed scenario we consider means that data is stored in different servers, and users need to obtain data from the server), there will be two problems. The first problem is that distributed servers need to jointly generate OT auxiliary parameters. If one server generates and broadcasts to other servers, it will cause load imbalance. The second problem is that the above protocol only supports users to obtain m data from m pairs of data, that is, the data acquisition lacks flexibility.
综上所述,现有成果存在隐私易泄露、存储痕迹可追踪、共享复杂度过大等问题,且不适用于分布式数据安全共享场景。因此,构建支持隐私保护的分布式数据安全共享方案是当前尚需解决的问题。To sum up, the existing results have problems such as easy disclosure of privacy, traceable storage traces, and excessive sharing complexity, and are not suitable for distributed data security sharing scenarios. Therefore, building a distributed data security sharing scheme that supports privacy protection is a problem that needs to be solved at present.
发明内容Contents of the invention
本发明提供了一种,解决了背景技术中披露的问题。The present invention provides a solution to the problems disclosed in the background art.
为了解决上述技术问题,本发明所采用的技术方案是:In order to solve the problems of the technologies described above, the technical solution adopted in the present invention is:
分布式系统下不经意数据安全共享方法:Inadvertent data security sharing method in distributed system:
多个服务器组成一个分布式服务器系统,数据加密后被分散地存储于不同地点的服务器;Multiple servers form a distributed server system, and the data is encrypted and stored in servers in different locations;
分布式服务器系统中的s个服务器生成一个会话矩阵作;The s servers in the distributed server system generate a session matrix;
s个服务器中的每个服务器拥有会话矩阵的一部分,作为子会话密钥;Each of the s servers owns part of the session matrix as a sub-session key;
利用预先构建的不经意共享通信模型交互,使s个服务器中的每个服务器获取其余s-1个子会话密钥,生成群组会话秘钥和消息验证码;Use the pre-built inadvertently shared communication model to interact, so that each of the s servers can obtain the remaining s-1 sub-session keys, and generate group session keys and message verification codes;
会话秘钥和消息验证码加密传输至用户;The session key and message verification code are encrypted and transmitted to the user;
用户通过消息验证码解密群组会话秘钥获得数据。The user decrypts the group session key through the message verification code to obtain data.
进一步地,所述数据加密的过程为:Further, the data encryption process is:
数据拥有者的数据表示为数据集mi={tresbps||chol||fbs||…||diai};利用访问策略公钥skp和访问控制加密算法对数据集进行第一次加密,表示为;然后,对数据贴公开的标签/>获得数据/>上传数据/>到数据拥有者所在服务器Sl,分布式服务器为每个数据生成一个对称密钥ki,利用对称加密算法对数据进行第二轮加密,表示为/> The data of the data owner is expressed as data set m i ={tresbps||chol||fbs||...||dia i }; using the access strategy The public key sk p and the access control encryption algorithm encrypt the data set for the first time, expressed as ; Then, label the data as public /> get data/> upload data/> To the server S l where the data owner is located, the distributed server generates a symmetric key ki for each data, and uses the symmetric encryption algorithm to encrypt the data in the second round, expressed as />
进一步地,群组会话秘钥和消息验证码的生成过程为:Further, the generation process of group session key and message verification code is:
确定每个分布式服务器与矩阵B的列的对应选取关系,和每个服务器/>至少执行次1-2-OT协议,服务器根据字符串a从矩阵B或者矩阵B’中选取列,生成s’个矩阵Q_l;每个服务器均有矩阵Q的部分列;利用等式p=(τmod s)+1确定第τ位的列存储在第p服务器;矩阵B/B’的第τ位对应的字符串q被存储在服务器p的第τ位;随后,每个服务器根据对应选取关系,执行1-2-OT算法,从矩阵B中选取列,生成s’个矩阵Q_l;其中,字符串不随机存储在服务器p中,保证服务器在执行数据交换后准确地生成矩阵Q,矩阵Q为不经意数据共享矩阵;Determine the corresponding selection relationship between each distributed server and the column of matrix B, and each server /> execute at least In the second 1-2-OT protocol, the server selects columns from the matrix B or matrix B' according to the string a to generate s' matrix Q_l; each server has some columns of the matrix Q; using the equation p=(τmod s )+1 to determine that the τ-th column is stored in the p-th server; the string q corresponding to the τ-th bit of the matrix B/B' is stored in the τ-th bit of the server p; then, each server executes according to the corresponding selection relationship The 1-2-OT algorithm selects columns from the matrix B to generate s' matrices Q_l; among them, the strings are not randomly stored in the server p to ensure that the server can accurately generate the matrix Q after performing data exchange, and the matrix Q is inadvertent data sharing matrix;
每个分布式服务器均拥有至少个矩阵Q的列,且每个服务器间的列不同,S’个服务器经过两轮交互生成群组的共享矩阵Q,共享矩阵Q看作是群组会话密钥;Each distributed server has at least The columns of the matrix Q, and the columns of each server are different, S' servers generate the shared matrix Q of the group through two rounds of interaction, and the shared matrix Q is regarded as the group session key;
每个服务器均已经拥有一个矩阵Ql,其中Ql是由两部分组成,服务器执行OT算法后获得的矩阵Q部分列和剩余被填充0的列,矩阵Ql作为秘钥协商过程中服务器sl的子秘钥,并最终参与构成所有服务器间生成的群组会话矩阵Q;首先,每个服务器执行GenSign()以生成群签名σl,同时,计算其中/>为随机选取的参数;其次,根据LBSM结构,确定第一轮的N个群组;服务器计算并发送(/>Ql,CFDl,σl)给同子群组的服务器;当每个服务器均收到M条信息后,调用签名验证算法VerSign()验证信息的有效性;服务器计算/>最后,验证通过后,转化矩阵/>的下标(i,j)=l,子群组中的服务器计算对∨i∈N,/>每个子群组中的服务器均得到相同的矩阵/>,矩阵/>将用于第二轮的秘钥协商;另外,检测恶意用户,子群组中的服务器计算 Each server already has a matrix Q l , where Q l is composed of two parts, the matrix Q obtained after the server executes the OT algorithm and the remaining columns filled with 0, the matrix Q l is used as the server s in the key negotiation process The sub-key of l , and finally participate in the formation of the group conversation matrix Q generated among all servers; first, each server executes GenSign() to generate the group signature σ l , at the same time, calculate where /> is a randomly selected parameter; secondly, according to the LBSM structure, determine the N groups in the first round; the server calculates and sends (/> Q l , CFD l , σ l ) to servers in the same subgroup; when each server receives M pieces of information, it calls the signature verification algorithm VerSign() to verify the validity of the information; the server calculates Finally, after the verification is passed, the conversion matrix /> The subscript (i,j)=l, the server computing pair ∨i∈N in the subgroup,/> Servers in each subgroup get the same matrix /> , matrix /> will be used for the second round of key negotiation; in addition, to detect malicious users, the servers in the subgroup compute
在第一轮中,同一个子群组中服务器拥有相同的矩阵;根据LBSM结构,确定第二轮的M个群组,同子群组中每个服务器计算并发送(/>,Ci,σl)给其他服务器;当每个服务器均收到N条信息后,运行Versign()算法验证信息的有效性;随后,每个服务器计算/>如果验证成功,同子群组中的服务器计算/>同时,服务器计算/>每个服务器得到不经意共享矩阵Q和用于检测恶意用户的值/> In the first round, servers in the same subgroup have the same matrix ;According to the LBSM structure, determine the M groups in the second round, calculate and send to each server in the same subgroup (/> ,C i ,σ l ) to other servers; when each server receives N pieces of information, it runs the Versign() algorithm to verify the validity of the information; then, each server calculates /> If authentication succeeds, servers in the same subgroup compute /> Meanwhile, the server calculates /> Each server gets the inadvertent sharing matrix Q and the value used to detect malicious users />
进一步地,会话秘钥和消息验证码加密的过程为:Further, the process of encrypting the session key and message verification code is:
输入:发送方S,即服务器,拥有n个数据(de1,d2,…,dn),每个数据的长度是β-bit,这些数据拥有相同的标签,接收方R,即用户,生成一个请求r=(r1,r2,…,rn),其中ri∈{0,1},r的规则是:Input: the sender S, the server, has n data (de 1 , d 2 ,…,d n ), the length of each data is β-bit, and these data have the same label, the receiver R, the user, Generate a request r=(r 1 ,r 2 ,…,r n ), where r i ∈{0,1}, the rule for r is:
输出:R获得的所选择的数据(d1,d2,…,dk);Output: the selected data obtained by R (d 1 ,d 2 ,…,d k );
每个群组服务器Sl初始化一个长度为k-bit的字符串;每个服务器在所选择的列位置随机生成字符,其余位置用0字符进行补充;R随机选择2个k×k矩阵B和B′,计算xj=G(bj),生成m×kbits的矩阵X=[x1||x2||…||xk],随后计算其中bj和bj′分别表示矩阵B和矩阵B’的列(j∈[k]),R根据对应选择关系,分别将uj发送给服务器Sl;Each group server S l initializes a string with a length of k-bit; each server randomly generates characters in the selected column position, and supplements the remaining positions with 0 characters; R randomly selects two k×k matrices B and B', calculate x j =G(b j ), generate m×kbits matrix X=[x 1 ||x 2 ||...||x k ], and then calculate Where b j and b j 'represent the columns (j∈[k]) of matrix B and matrix B' respectively, and R sends u j to server S l respectively according to the corresponding selection relationship;
2)Sl和R间执行k次算法,根据字符串a选取种子矩阵B或矩阵B’的列bj或列bj′;此刻,S和R交换身份,用户作为发送方/>,服务器作为接收方/>输入矩阵B和矩阵B′;每个服务器/>输入对应字符串as1,/>计算/> 设列得到每个服务器自己的m×kbits的矩阵Ql=[ql,1||ql,2||…||ql,k];2) Execute k times between S l and R Algorithm, select the column b j or column b j ′ of the seed matrix B or matrix B' according to the string a; at this moment, S and R exchange identities, and the user is the sender /> , the server as receiver /> Input matrix B and matrix B'; each server /> Input the corresponding string a s1 , /> calculation /> set column Get the matrix Q l of each server's own m×kbits = [q l,1 ||q l,2 ||...||q l,k ];
Sl和R间调用不经意共享通信算法,生成不经意共享矩阵;每个1≤j≤k,设m×kbits的矩阵/>通过计算得知,qj和aj之间的关系满足公式:Call the inadvertent sharing communication algorithm between S l and R to generate the inadvertent sharing matrix ; For each 1≤j≤k, set m×kbits matrix /> It is known through calculation that the relationship between q j and a j satisfies the formula:
服务器Sl根据被存储数据的序列号选取矩阵的行i,计算i∈[n];服务器Sl随机选择/>ξi∈G,计算然后,计算/>发送/>给R,R计算/>然后计算/>获取正确的辅助参数/>;服务器利用/>对对称密钥进行加密/> The server S l selects the matrix according to the serial number of the stored data For row i, calculate i∈[n]; server S l chooses randomly /> ξ i ∈ G, calculate Then, calculate /> send /> For R, R calculates /> then calculate /> Get the correct auxiliary parameter /> ; server exploit /> Encrypt the symmetric key />
进一步地,用户通过消息验证码解密群组会话秘钥获得数据的过程为:Further, the process for the user to decrypt the group session key to obtain data through the message verification code is:
用户利用矩阵B对CRkey对密文CTi′进行第一次解密,即随后,利用访问控制策略对密文进行第二次解密,即最终用户从n个数据中获取了所请求对k个数据。The user uses the matrix B to decrypt the ciphertext CT i ′ for the first time with the CR key , namely Then, use the access control policy to decrypt the ciphertext for the second time, that is, The end user gets the requested pair of k data from n data.
相应地,一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行根据上述的方法中的任一方法。Correspondingly, a computer-readable storage medium storing one or more programs, the one or more programs including instructions, the instructions, when executed by a computing device, cause the computing device to perform the either method.
相应地,一种计算设备,包括:Accordingly, a computing device comprising:
一个或多个处理器、一个或多个存储器以及一个或多个程序,其中一个或多个程序存储在所述一个或多个存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行上述的方法中的任一方法的指令。one or more processors, one or more memories, and one or more programs, wherein the one or more programs are stored in the one or more memories and configured to be executed by the one or more processors, The one or more programs include instructions for performing any one of the above-mentioned methods.
本发明所达到的有益效果:The beneficial effect that the present invention reaches:
1.本发明可以实现支持隐私保护的分布式不经意共享方案。1. The present invention can implement a distributed inadvertent sharing scheme that supports privacy protection.
本发明中,为了能够更加快速地实现不经意数据共享,设计了一种全新的不经意共享方案,可以保护数据拥有者、发送方和接收方的隐私。In the present invention, in order to realize inadvertent data sharing more quickly, a brand-new inadvertent sharing scheme is designed, which can protect the privacy of the data owner, sender and receiver.
2.本发明创新地构建了不经意共享矩阵:2. The present invention innovatively constructs the inadvertent sharing matrix:
本发明中,基于此设计了支持负载均衡的数据安全共享协议,在降低每个服务器计算开销的同时,支持痕迹隐藏,实现并发服务器负载均衡和数据安全共享。针对分布式数据共享中计算开销过大、服务器负载失衡的问题,引入矩阵转置思想,构建负载均衡的不经意共享矩阵,提出具有O(β/λ)复杂度的并发数据共享协议,提升协议性能,实现并发服务器数据安全共享。In the present invention, based on this, a data security sharing protocol supporting load balancing is designed, and while reducing the computing cost of each server, it supports trace hiding, and realizes concurrent server load balancing and data security sharing. Aiming at the problems of excessive computing overhead and unbalanced server load in distributed data sharing, the idea of matrix transposition is introduced to construct a load-balanced inadvertent sharing matrix, and a concurrent data sharing protocol with O(β/λ) complexity is proposed to improve protocol performance , to achieve concurrent server data security sharing.
附图说明Description of drawings
图1为本发明的流程示意图;Fig. 1 is a schematic flow sheet of the present invention;
图2为本发明中螺旋矩阵结构示例;Fig. 2 is an example of a spiral matrix structure in the present invention;
图3为密钥协商过程示意图。FIG. 3 is a schematic diagram of a key agreement process.
具体实施方式Detailed ways
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。The present invention will be further described below in conjunction with the accompanying drawings. The following examples are only used to illustrate the technical solution of the present invention more clearly, but not to limit the protection scope of the present invention.
如图1所示,本发明在分布式系统中,交互方(如服务器和用户)希望在不损害隐私的情况下共享数据。以智能医疗为例,假设一个实际场景。多个医院的服务器组成一个分布式服务器系统。患者在多个医院就诊,他的病理数据被分散地存储于不同地点的服务器。医生利用数据标签,向分布式服务器系统查询所请求的数据。值得注意的是,在本文中OT协议所传输的不是患者的医疗数据,而是用于加密医疗数据的密钥。在数据共享过程中,医生向s个服务器发送包含关键词的请求,s个服务器返回给用户n个数据。在此过程中,为了实现不经意的数据共享,分布式系统中的一组s服务器需要生成一个会话矩阵作为OT协议的辅助参数。每个服务器拥有需共享矩阵的一部分,作为子会话密钥。交互后,每个服务器获取其余s-1个子会话密钥,生成群组会话矩阵和消息验证码。多个服务器共同协商的会话密钥(本文为矩阵)为OT协议的运行提供了安全的保障,也避免了单个服务器广播会话密钥。尤其是,实现了服务器负载的均衡和分布式系统的去中心化。此外,在不经意数据共享中利用所提出的LBSM结构特点,能够有效识别恶意服务器。As shown in Figure 1, the present invention is in a distributed system, where interacting parties (such as servers and users) wish to share data without compromising privacy. Taking smart healthcare as an example, assume a practical scenario. Servers in multiple hospitals form a distributed server system. A patient visits multiple hospitals, and his pathological data are distributed and stored in servers in different locations. The doctor uses the data tag to query the requested data from the distributed server system. It is worth noting that what the OT protocol transmits in this paper is not the patient's medical data, but the key used to encrypt the medical data. In the process of data sharing, doctors send requests containing keywords to s servers, and s servers return n pieces of data to users. During this process, in order to achieve inadvertent data sharing, a group of s servers in a distributed system need to generate a session matrix as an auxiliary parameter of the OT protocol. Each server owns a portion of the matrix to be shared as a subsession key. After the interaction, each server obtains the remaining s-1 sub-session keys, and generates a group conversation matrix and a message verification code. The session key negotiated by multiple servers (this paper is a matrix) provides security for the operation of the OT protocol, and also prevents a single server from broadcasting the session key. In particular, it achieves server load balancing and decentralization of distributed systems. Moreover, exploiting the structural features of the proposed LBSM in inadvertent data sharing can effectively identify malicious servers.
本发明中主要分为四个部分,分别是加密阶段、不经意共享通信模型、数据传输阶段和解密阶段。The present invention is mainly divided into four parts, which are the encryption stage, the inadvertently shared communication model, the data transmission stage and the decryption stage.
以医生调取患者病历的数据信息为例:Take the data information retrieved by a doctor from a patient's medical record as an example:
1.数据加密阶段1. Data encryption stage
数据拥有者将患者的数据和诊断记录被表示为数据集mi={tresbps||chol||fbs||…||diai}。利用访问策略,公钥skp和访问控制加密算法对数据集进行第一次加密,表示为/>然后,对数据进行贴可公开的标签上传数据/>到数据拥有者所在服务器Sl。最后,分布式服务器为每个数据生成一个对称密钥ki,利用对称加密算法对数据进行第二轮加密,表示为/> The patient's data and diagnostic records are denoted by the data owner as data set m i ={tresbps||chol||fbs||...||diai}. access policy , public key sk p and access control encryption algorithm to encrypt the data set for the first time, denoted as /> Then, label the data publicly upload data/> to the server S l where the data owner resides. Finally, the distributed server generates a symmetric key ki for each data, and uses the symmetric encryption algorithm to encrypt the data in the second round, expressed as />
2.不经意共享通信模型及算法2. Inadvertently share communication models and algorithms
群组密钥协商阶段会利用不经意共享通信模型生成不经意共享矩阵,该矩阵将被利用于生成可传输对称密钥的密文。The group key agreement phase uses the oblivious sharing communication model to generate the oblivious sharing matrix, which will be used to generate the ciphertext that can transmit the symmetric key.
1)确定每个分布式服务器与矩阵B的列的对应选取关系。具体而言,和每个服务器/>至少执行/>次1-2-OT协议,服务器需要根据字符串a从矩阵B或者矩阵B’中选取列,生成s’个矩阵Q_l。那么,每个分布式服务器对矩阵B和矩阵B’的哪列执行OT算法的需要被确定。换而言之,每个服务器均有矩阵Q的部分列。利用等式p=(τmod s)+1确定第τ位的列存储在第p服务器。矩阵B/B’的第τ位对应的字符串q会被存储在服务器p的第τ位。随后,每个服务器根据对应选取关系,执行1-2-OT算法,从矩阵B中选取列,生成s’个矩阵Q_l。注意,字符串不能随机存储在服务器p中,为保证服务器在执行数据交换后能准确地生成矩阵Q。1) Determine the corresponding selection relationship between each distributed server and the columns of matrix B. in particular, and each server /> execute at least /> In the second 1-2-OT protocol, the server needs to select columns from matrix B or matrix B' according to string a to generate s' matrix Q_l. Then, the need of each distributed server to perform the OT algorithm on which column of matrix B and matrix B' is determined. In other words, each server has some columns of matrix Q. Use the equation p=(τmod s)+1 to determine that the τ-th column is stored in the p-th server. The character string q corresponding to the τth position of the matrix B/B' will be stored in the τth position of the server p. Subsequently, each server executes the 1-2-OT algorithm according to the corresponding selection relationship, selects columns from the matrix B, and generates s' matrices Q_l. Note that strings cannot be randomly stored in server p, in order to ensure that the server can accurately generate matrix Q after performing data exchange.
2)生成不经意数据共享矩阵Q。利用LBSM通信模型,分布式服务器经过两轮的矩阵交互,最终每个服务器均获得矩阵Q。具体而言,执行Step2后,每个分布式服务器均拥有至少个矩阵Q的列,且每个服务器间的列不同。S’个服务器经过两轮交互生成群组的共享矩阵Q(可以被看作是会话密钥)。2) Generate the inadvertent data sharing matrix Q. Using the LBSM communication model, the distributed servers go through two rounds of matrix interaction, and finally each server obtains the matrix Q. Specifically, after executing Step2, each distributed server has at least The columns of a matrix Q are different for each server. S' servers generate a group sharing matrix Q (which can be regarded as a session key) through two rounds of interaction.
3)-Round 1:--发送矩阵Q的加密方法是基于DL困难问题。Round 1:每个服务器(包括虚拟服务器)均已经拥有一个矩阵Ql。其中Ql是由两部分组成,服务器执行OT算法后获得的矩阵Q部分列和剩余被填充0的列。矩阵Ql作为秘钥协商过程中服务器sl的子秘钥,并最终参与构成所有服务器间生成的群组会话矩阵Q。首先,每个服务器执行GenSign()以生成群签名σl。同时,计算其中/>为随机选取的参数。其次,根据LBSM结构,确定第一轮的N个群组。服务器计算并发送/>给同子群组的服务器。当每个服务器均收到M条信息后,他们调用签名验证算法VerSign()验证信息的有效性。服务器计算/>最后,验证通过后,转化矩阵/>的下标(i,j)=l,子群组中的服务器计算对∨i∈N,/>每个子群组中的服务器均得到相同的矩阵/>矩阵/>将用于第二轮的秘钥协商。另外,检测恶意用户,子群组中的服务器计算 3)-Round 1:--The encryption method of the sending matrix Q is based on the DL difficulty problem. Round 1: Each server (including virtual servers) already has a matrix Q l . Among them, Q l is composed of two parts, some columns of the matrix Q obtained after the server executes the OT algorithm and the remaining columns filled with 0. The matrix Q l is used as the sub-key of the server s l during the key negotiation process, and finally participates in forming the group conversation matrix Q generated between all servers. First, each server executes GenSign() to generate a group signature σ l . At the same time, calculate where /> are randomly selected parameters. Second, according to the LBSM structure, determine the N groups of the first round. The server calculates and sends /> For servers in the same subgroup. When each server receives M pieces of information, they call the signature verification algorithm VerSign() to verify the validity of the information. server computing/> Finally, after the verification is passed, the conversion matrix /> The subscript (i,j)=l, the server computing pair ∨i∈N in the subgroup,/> Servers in each subgroup get the same matrix /> matrix /> Will be used for the second round of key negotiation. Additionally, to detect malicious users, servers in subgroups compute
4)-Round 2:在第一轮中,同一个子群组中服务器拥有相同的矩阵根据LBSM结构,确定第二轮的M个群组。同子群组中每个服务器计算并发送/>给其他服务器。当每个服务器均收到N条信息后,他们运行Versign()算法验证信息的有效性。随后,每个服务器计算/>如果验证成功,同子群组中的服务器计算同时,服务器计算/>每个服务器得到不经意共享矩阵/>和用于检测恶意用户的值/> 4)-Round 2: In the first round, servers in the same subgroup have the same matrix According to the LBSM structure, M groups for the second round are determined. Compute and send /> to each server in the subgroup to other servers. When each server receives N pieces of information, they run the Versign() algorithm to verify the validity of the information. Subsequently, each server computes the /> If authentication succeeds, the servers in the same subgroup compute Meanwhile, the server calculates /> Each server gets inadvertently shared matrix /> and a value for detecting malicious users />
5)举例说明:假设在分布式服务器网络中有16台服务器,用户u关于{Tag1=心脏病}的10条密文分散地存储在16台服务器中的4台。设数据的长度是6位。当医生向所在服务器发送数据请求时,分布式系统执行DOT和GKA算法。首先,所有服务器根据标签(u,Tag1)确定数据所属服务器。服务器Sgm确定群组成员(S1~S4),并运行算法3计算需要补充的空服务器数量(Sempt=0)。第二,服务器Sgm使用算法2构造最优的LBSM结构(N=2,M=2)。第三,医生作为发送者拥有矩阵B和矩阵B′,群组服务器作为接受者获取数据。服务器Sgm利用算法4确定每个群组服务器应接收矩阵数据的序号。然后发送者与接收者间执行1-2-OT算法,获取矩阵Ql。最后,群组服务器利用LBSM结构,进行两轮交互,使得每个服务器均获得不经意共享矩阵图3表示的是4台服务器执行GKA阶段的过程。5) Example: Assume that there are 16 servers in the distributed server network, and user u's 10 ciphertexts about {Tag1=heart disease} are distributedly stored in 4 of the 16 servers. Let the data length be 6 bits. When the doctor sends a data request to the server, the distributed system executes the DOT and GKA algorithms. First, all servers determine the server to which the data belongs according to the tag (u,Tag 1 ). The server S gm determines the group members (S 1 -S 4 ), and runs Algorithm 3 to calculate the number of empty servers that need to be supplemented (S empt =0). Second, the server S gm uses Algorithm 2 to construct the optimal LBSM structure (N=2, M=2). Thirdly, the doctor as the sender owns the matrix B and the matrix B', and the group server obtains the data as the receiver. The server S gm uses Algorithm 4 to determine the sequence number that each group server should receive matrix data. Then execute the 1-2-OT algorithm between the sender and the receiver to obtain the matrix Q l . Finally, the group servers use the LBSM structure to perform two rounds of interaction, so that each server can obtain the inadvertently shared matrix Figure 3 shows the process of four servers executing the GKA stage.
3.数据传输阶段3. Data transmission stage
输入:发送方(S,即服务器)拥有n个数据(d1,d2,…,dn),每个数据的长度是β-bit,这些数据拥有相同的标签。接收方(R,即用户)生成一个请求r=(r1,r2,…,rn),其中ri∈{0,1}。r的规则是Input: The sender (S, the server) has n data (d 1 ,d 2 ,…,d n ), the length of each data is β-bit, and these data have the same label. The receiver (R, ie user) generates a request r=(r 1 ,r 2 ,...,r n ), where r i ∈{0,1}. The rule for r is
输出:R输出能获得的所选择的数据(d1,d2,…,dk)。Output: R outputs the selected data (d 1 , d 2 , . . . , d k ) that can be obtained.
1)每个群组服务器Sl初始化一个长度为k-bit的字符串。根据算法4的对应选择关系,每个服务器在所选择的列位置随机生成字符,其余位置用0字符进行补充。1) Each group server S l initializes a character string with a length of k-bit. According to the corresponding selection relationship of Algorithm 4, each server randomly generates characters in the selected column position, and supplements the remaining positions with 0 characters.
R随机选择2个k×k矩阵B和B′,计算xj=G(bj),生成m×kbits的矩阵X=[x1||x2||…||xk]。随后计算其中bj和bj′分别表示矩阵B和矩阵B’的列(j∈[k])。R根据对应选择关系,分别将uj发送给服务器Sl。2)Sl和R间执行k次/>算法,根据字符串a选取种子矩阵B或矩阵B’的列bj或列bj′。此刻,S和R交换身份,用户作为发送方/>,服务器作为接收方/>。/>输入两个矩阵B和B′。每个服务器/>输入他的字符串as1。/>计算 设列/>得到每个服务器自己的m×kbits的矩阵Ql=[ql,1||ql,2||…||ql,k]。R randomly selects two k×k matrices B and B′, calculates x j =G(b j ), and generates an m×kbits matrix X=[x 1 ||x 2 ||...||x k ]. Then calculate where bj and bj ' denote the columns (j∈[k]) of matrix B and matrix B', respectively. R sends u j to server S l respectively according to the corresponding selection relationship. 2) Execute k times between S l and R /> Algorithm, select column b j or column b j ′ of seed matrix B or matrix B' according to character string a. At this moment, S and R exchange identities, and the user is the sender /> , the server as receiver /> . /> Input two matrices B and B'. per server /> Enter his string a s1 . /> calculate set column /> Obtain each server's own matrix Q l of m×kbits = [q l,1 ||q l,2 ||...||q l,k ].
3)Sl和R间调用不经意共享通信算法,生成不经意共享矩阵。每个1≤j≤k,设m×kbits的矩阵/>通过计算可知,qj和aj之间的关系满足公式3) Call the inadvertent sharing communication algorithm between S l and R to generate the inadvertent sharing matrix . For each 1≤j≤k, set a matrix of m×kbits /> It can be known by calculation that the relationship between q j and a j satisfies the formula
4)承诺阶段:服务器Sl根据被存储数据的序列号选取矩阵的行i,计算i∈[n]。服务器Sl随机选择/>ξi∈G,计算然后,计算/>发送/>给R。R计算/>然后计算/>获取正确的辅助参数/>。服务器利用/>对对称密钥进行加密/> 4) Commitment stage: server S1 selects the matrix according to the serial number of the stored data For row i, calculate i∈[n]. Server S l chooses randomly /> ξ i ∈ G, calculate Then, calculate /> send /> to R. R calculation /> then calculate /> Get the correct auxiliary parameter /> . server use/> Encrypt the symmetric key />
4.数据解密阶段4. Data decryption stage
用户利用矩阵B对CTkey对密文CTi′进行第一次解密,即随后,利用访问控制策略对密文进行第二次解密,即最终用户从n个数据中获取了所请求对k个数据,实现了数据安全共享,并保护了数据拥有者、发送方和接收方的隐私。The user uses the matrix B to decrypt the ciphertext CT i ′ for the first time with the CT key , namely Then, use the access control policy to decrypt the ciphertext for the second time, that is, The end user obtains the requested pair of k data from the n data, realizes data security sharing, and protects the privacy of the data owner, sender and receiver.
本发明主要完成以下任务。The present invention mainly accomplishes the following tasks.
设计了一个支持隐私保护的分布式不经意共享框架。该框架是基于用户端和服务器端之间的OT扩展和s个分布式服务器之间的负载均衡螺旋矩阵(LBSM),用于确定用户和服务器之间的通信。特别是,这个框架保护了发送者(服务器)和接收者(用户)的隐私。具体来说,接收方只能导出k请求的数据,而没有其他n-k数据,发送方无法知道接收方请求的数据。此外,s服务器可以组成组来有效地共享一个不经意的共享矩阵,并通过执行密钥协商来相互验证。A privacy-preserving distributed oblivious sharing framework is designed. The framework is based on an OT extension between client and server and a load balancing spiral matrix (LBSM) between s distributed servers to determine the communication between users and servers. In particular, this framework protects the privacy of the sender (server) and receiver (user). Specifically, the receiver can only export the data requested by k, without other n-k data, and the sender has no way of knowing the data requested by the receiver. Furthermore, s servers can form groups to efficiently share a casual shared matrix and authenticate each other by performing key agreement.
提出了一种通信开销为O(β/s)的分布式不经意共享协议(DOS-)。DOS-/>协议,主要完成×/>,在分布式服务器系统中实现,无需调用代理即可隐藏存储数据的踪迹。该协议使用s服务器来处理n×β位矩阵以便共享它。通过增加承诺阶段,我们提高了半诚实接收者的安全性,实现了针对DOS-/>恶意接收者的安全性。实验结果表明,当k远小于n时,不经意数据共享方案的开销不受n的影响,并且与k正相关。如果/>协议的执行次数越少(k),该方案的开销就越低。在本发明中,不经意的数据共享协议可以用不同的参数实例化,使我们能够权衡计算的通信。其中,β表示密钥的位数,即n×β共享矩阵的列。n表示用户在分布式服务器中所有的数据总量。k表示用户想访问的数据量。s表示分布式环境下服务器数量。A distributed oblivious sharing protocol (DOS- ). DOS-/> Agreement, mainly completed ×/> , implemented in a distributed server system, hides traces of stored data without invoking proxies. The protocol uses s-servers to process the n × β bit matrix in order to share it. By adding a commitment phase, we improve the security of semi-honest receivers against DOS-/> Security for malicious recipients. Experimental results show that when k is much smaller than n, the overhead of the oblivious data sharing scheme is not affected by n and is positively correlated with k. if /> The lower the number of executions (k) of the protocol, the lower the overhead of the scheme. In the present invention, the oblivious data-sharing protocol can be instantiated with different parameters, allowing us to trade off computational communication. where β represents the number of bits of the key, that is, the columns of the n×β sharing matrix. n represents the total amount of data that the user has in the distributed server. k represents the amount of data the user wants to access. s represents the number of servers in a distributed environment.
构建负载均衡螺旋矩阵来共享数据和检测恶意服务器。我们为螺旋矩阵结构构建提供了两种算法。此外,本文提出了基于分布式服务器数量的LBSM构建的最优解算法。假设N=M,LBSM中的服务器交互总数为其中s=N*M成立。LBSM的通信复杂度为N表示螺旋矩阵的行数,M表示螺旋矩阵的列数。螺旋矩阵具体结构和示例如图2所示。Build a load-balancing spiral matrix to share data and detect malicious servers. We provide two algorithms for spiral matrix structure construction. In addition, this paper proposes an optimal solution algorithm based on the LBSM construction based on the number of distributed servers. Assuming N = M, the total number of server interactions in LBSM is Where s=N*M holds true. The communication complexity of LBSM is N represents the number of rows of the spiral matrix, and M represents the number of columns of the spiral matrix. The specific structure and example of the spiral matrix are shown in Figure 2.
一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行分布式系统下不经意数据安全共享方法。A computer-readable storage medium storing one or more programs, the one or more programs including instructions that, when executed by a computing device, cause the computing device to execute a method for inadvertent data security sharing under a distributed system .
一种计算设备,包括一个或多个处理器、一个或多个存储器以及一个或多个程序,其中一个或多个程序存储在所述一个或多个存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行分布式系统下不经意数据安全共享方法的指令。A computing device comprising one or more processors, one or more memories, and one or more programs, wherein the one or more programs are stored in the one or more memories and configured to be executed by the one or more Executed by a plurality of processors, the one or more programs include instructions for executing the method for unintentional data security sharing in a distributed system.
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art should understand that the embodiments of the present invention may be provided as methods, systems, or computer program products. Accordingly, the present invention can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It should be understood that each procedure and/or block in the flowchart and/or block diagram, and a combination of procedures and/or blocks in the flowchart and/or block diagram can be realized by computer program instructions. These computer program instructions may be provided to a general purpose computer, special purpose computer, embedded processor, or processor of other programmable data processing equipment to produce a machine such that the instructions executed by the processor of the computer or other programmable data processing equipment produce a An apparatus for realizing the functions specified in one or more procedures of the flowchart and/or one or more blocks of the block diagram.
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing apparatus to operate in a specific manner, such that the instructions stored in the computer-readable memory produce an article of manufacture comprising instruction means, the instructions The device realizes the function specified in one or more procedures of the flowchart and/or one or more blocks of the block diagram.
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded onto a computer or other programmable data processing device, causing a series of operational steps to be performed on the computer or other programmable device to produce a computer-implemented process, thereby The instructions provide steps for implementing the functions specified in the flow chart or blocks of the flowchart and/or the block or blocks of the block diagrams.
以上仅为本发明的实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均包含在申请待批的本发明的权利要求范围之内。The above is only an embodiment of the present invention, and is not intended to limit the present invention. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present invention are included in the pending application of the present invention. within the scope of the claims.
Claims (7)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310588194.0A CN116566605A (en) | 2023-05-24 | 2023-05-24 | Method for safely sharing careless data under distributed system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310588194.0A CN116566605A (en) | 2023-05-24 | 2023-05-24 | Method for safely sharing careless data under distributed system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116566605A true CN116566605A (en) | 2023-08-08 |
Family
ID=87485993
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310588194.0A Pending CN116566605A (en) | 2023-05-24 | 2023-05-24 | Method for safely sharing careless data under distributed system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116566605A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN119892525A (en) * | 2025-03-31 | 2025-04-25 | 浙江理工大学 | Encryption and decryption method and system based on careless transmission expansion and electronic equipment |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7181017B1 (en) * | 2001-03-23 | 2007-02-20 | David Felsher | System and method for secure three-party communications |
CN107908779A (en) * | 2017-12-05 | 2018-04-13 | 河南科技大学 | The searching method of dynamic multi-attribute connection keyword based on MAT trees under cloud environment |
CN112400171A (en) * | 2018-05-07 | 2021-02-23 | 谷歌有限责任公司 | Private information retrieval using sub-linear public key operations |
-
2023
- 2023-05-24 CN CN202310588194.0A patent/CN116566605A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7181017B1 (en) * | 2001-03-23 | 2007-02-20 | David Felsher | System and method for secure three-party communications |
CN107908779A (en) * | 2017-12-05 | 2018-04-13 | 河南科技大学 | The searching method of dynamic multi-attribute connection keyword based on MAT trees under cloud environment |
CN112400171A (en) * | 2018-05-07 | 2021-02-23 | 谷歌有限责任公司 | Private information retrieval using sub-linear public key operations |
Non-Patent Citations (2)
Title |
---|
HUIJIE YANG等: "A Privacy-preserving Data Transmission Protocol with Constant Interactions in E-health", 《2022 IEEE GLOBAL COMMUNICATIONS CONFERENCE: SELECTED AREAS IN COMMUNICATIONS: E-HEALTH》, 11 January 2023 (2023-01-11), pages 1 - 6 * |
NICO DOOTTLING等: "Interaction-Preserving Compilers for Secure Computation", 《EPRINT》, 15 November 2021 (2021-11-15) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN119892525A (en) * | 2025-03-31 | 2025-04-25 | 浙江理工大学 | Encryption and decryption method and system based on careless transmission expansion and electronic equipment |
CN119892525B (en) * | 2025-03-31 | 2025-07-01 | 浙江理工大学 | Encryption and decryption method and system based on careless transmission expansion and electronic equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113424185B (en) | Fast inadvertent transmission | |
Shen et al. | A privacy-preserving and untraceable group data sharing scheme in cloud computing | |
Araki et al. | High-throughput semi-honest secure three-party computation with an honest majority | |
Liang et al. | Searchable attribute-based mechanism with efficient data sharing for secure cloud storage | |
CN104521178B (en) | The method and system of the multi-party cloud computing of safety | |
US12184754B2 (en) | Low latency calculation transcryption method | |
Modi et al. | Securing healthcare information over cloud using hybrid approach | |
JP2022531593A (en) | Systems and methods for adding and comparing integers encrypted by quasigroup operations in AES counter mode encryption | |
CN114697042A (en) | A blockchain-based proxy re-encryption method for IoT secure data sharing | |
Ranjith et al. | Blockchain-based knapsack system for security and privacy preserving to medical data | |
Wang et al. | Secure updatable storage access control system for EHRs in the cloud | |
CN116566605A (en) | Method for safely sharing careless data under distributed system | |
US11451518B2 (en) | Communication device, server device, concealed communication system, methods for the same, and program | |
Yao et al. | Batch public auditing for distributed mobile cloud computing | |
CN112637233B (en) | Safe averaging method based on multi-user data | |
Ding et al. | Secure Multi‐Keyword Search and Access Control over Electronic Health Records in Wireless Body Area Networks | |
Huang et al. | A lightweight and efficient raw data collection scheme for IoT systems | |
Eslami et al. | Public key encryption with distributed keyword search | |
Zhang et al. | An Efficient Cross-Domain Fine Grain Proxy Re-encryption Scheme for Secure Transmission in IIOT | |
Yan et al. | An Efficient Attribute-Based Multi-Keyword Searchable Encryption with Access Policy Hiding in IoT using Blockchain | |
Tang et al. | Edge‐Cloud‐Assisted Multiuser Forward Secure Searchable Encryption (EMFSSE) Scheme in the P2P Networking Environment | |
Zhang et al. | Cloud-Aided Scalable Revocable Identity-Based Encryption with Ciphertext Update from Lattices | |
CN117499095B (en) | A matrix outsourcing calculation method and system based on parallel computing architecture | |
Sun et al. | Multi‐Authority Criteria‐Based Encryption Scheme for IoT | |
Lu et al. | A tag-based protection method for multi-tenant data security |
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 |