| Secure Multi-party Computation. The basic idea is developing methods for two (or more) parties with sensitive data to be able to compute some function of their data without having to reveal the data to one another. The classic example is developing an algorithm that allows two people to figure out who is paid more without either revealing what their salary is. Such algorithms get significantly more complicated if the threat model starts changing from "we're all acting in good faith, but we just don't want to share this private info" to "I'm not sure some of the people involved in this are acting in good faith." Based on my (admittedly limited) look into this field, it seems like there has been some theoretical progress made here, but there's nothing like a generalized framework or library for general development with it. Instead, practical applications seem to be one-offs. For example, a contractor a while back developed a system that lets parties (nation-states or private space firms) figure out if their satellites are going to run into each other without revealing anything about the location or orbit of their satellites. That way they don't share sensitive data, but they can move their satellites if they're on a collision course with somebody else. Personally, I got interested in this when working for the government. I was working on an extremely cool data integration project (State Longitudinal Data System grant form US Department of Education) that basically went nowhere because we couldn't get over the legal hurdles to data sharing... If we didn't have to share data, but could still compute interesting statistics about the data, that would have been really cool. |
This video course too : https://www.cse.iitb.ac.in/~mp/crypto/mpc2017/