How SMC Allows You to Perform Advanced Data Collaboration Without Exposing Your Data
Join the DZone community and get the full member experience.
Join For FreeData collaboration is the process of combining datasets together to generate new value from data-driven insights. The datasets being combined can come from different organizations, or they can come from data silos internal to an organization.
A number of use cases are possible through data collaboration: fraud detection, advances in healthcare research, real-world data, cross-selling, churn analysis, etc. However, there are significant blockers in realizing the potential benefits of data collaboration. Some of these blockers are so severe that they can stymie potentially valuable collaborations. The blockers originate from a host of areas — fear of loss of IP (intellectual property), privacy regulations, data residency restrictions, and reputational risk (just to name a few).
However, with the right technology, it is possible to remove these blockers. It is possible to engage in advanced data collaboration without exposing, sharing, or moving raw data.
The Power of Secure Multi-Party Computation (SMC)
How? By using advanced cryptography. This enables organizations to acquire the sort of insights produced by combining data in a central location, but without ever moving or exposing the data. This best-of-both-worlds approach sees participants make use of Secure Multi-Party Computation (SMC). SMC enables a number of parties to jointly compute a function over a set of inputs that they wish to keep private.
There is a range of problems that SMC can solve – from simple queries and statistics to training machine learning models. In all cases, raw data is not moved or exposed.
A classic example of SMC is the millionaires’ problem. There are two millionaires, Alice and Bob, who would like to know who has more wealth without revealing their actual wealth. They really just want to know the result of: A > B, but without revealing A or B, where A is Alice’s wealth and B is Bob’s wealth.
They can accomplish this by using SMC – specifically, a protocol called Oblivious Transfer. As defined by the Encyclopedia of Cryptography and Security, Oblivious Transfer (OT) is “a two-party protocol between a sender and a receiver by which the sender transfers some information to the receiver, while the sender remaining oblivious to what information the receiver actually obtains.”
Secret Splitting
Another good example of a sophisticated SMC protocol is called secret splitting. Here, the secret information or data is split into multiple secret shares. In order to retrieve the original information, all shares are mandatory, and it is impossible to obtain the original information until all the shares are carried out.
Once the data has been split into secret shares, it can then be distributed among the participants in collaboration. This is called parties. For example, we have three parties and each party creates three secret shares of their data. Then, one share gets transferred to each of the other parties, so that in the end, each party has one secret share of all of the other party’s data. Now, if they wanted to know the sum or the average of their data each party would perform those operations locally on the secret shares and then exchange the result.
The result itself would be secret shares of the sum or the average. Now, the parties would exchange the result shares so that each party would now have all shares of the result and would sum them up to reveal the answer. Many mathematical operations can be performed in this way, which enables the building of machine learning models in a data collaboration without exposing, sharing, or moving data.
Secret shares are created by applying one-time pad encryption, which offers absolute security. For example, if we were to create two secret shares, one share would be completely random and the other would be the result of subtracting the random share from the original data (or secret). More shares can be created by utilizing more random shares. For absolute security, the random share must be truly random, which is only possible in a finite field. Finite fields work like a clock, in that 1 o’clock can be 1 pm or 1 am. The numbers wrap around so that all numbers have an equal likelihood of appearing.
SMC Requires Software
In order to utilize SMC in data collaboration, organizations require the appropriate software. This software must then be installed locally so that it can access data and establish a secure line of communication with other organizations. The parties must then agree upon the type of analysis and the way in which the result will be distributed.
It is possible to control who gets the result: all parties, a subset of parties, or no parties at all. In the no party case, the result remains a secret share. In order to use it, the parties must engage in the SMC protocol.
SMC enables simple queries, statistical analysis, and the building of ML models — all without exposing, sharing or moving raw data. The result is IP, reputation protection, and the satisfaction of privacy and data residency regulations.
Further Reading
Published at DZone with permission of Roberto Cervantes. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments