Microsoft To Provide New Encryption Algorithm For the Healthcare Sector 85
An anonymous reader writes: The healthcare sector gets a hand from Microsoft, who will release a new encryption algorithm which will allow developers to handle genomic data in encrypted format, without the need of decryption, and by doing so, minimizing security risks. The new algorithm is dubbed SEAL (Simple Encrypted Arithmetic Library) and is based on homomorphic encryption, which allows mathematical operations to be run on encrypted data, yielding the same results as if it would run on the cleartext version. Microsoft will create a new tool and offer it as a free download. They've also published the theoretical research. For now, the algorithm can handle only genomic data.
Don't Use This! (Score:5, Funny)
It is based on homophobic encryption!
Re: (Score:2)
Re: (Score:1)
Doesn't anyone here know how to spell?
Re: (Score:2)
You read it wrong. What it does mean, however, is that it's going to turn your data gay.
Not that there's anything wrong with that. /Seinfeld
Re: (Score:3)
I think you meant homeopathic encryption.
Is that where you keep replacing a random half of the data with zeroes until you get the desired concentration? You need to remember to spike the data with a jolt of energy to make sure that the zeroes remember what the data was. Then you can use the data safely.
Re:Initial Thought (Score:5, Informative)
This is a type of encryption algorithm known as homomorphic encryption, which allows one to do operate on encrypted data without decrypting it.
This has no bearing on the strength of the encryption against an adversary.
Re: (Score:1)
How do you figure?
If I add two values, and I know the domain of both values... then I... ooooohhhhh, ya never mind, I still have no idea what the two values were, even if I know what they add up too.
I'd still wonder whether this type of encryption which specifically allows for mathematical operations would be weaker than encryption algorythms that don't, but I clearly don't have the correct brain cell arrangements to do that analysis at this time. More learning required.
Very cool though.
Re: (Score:1)
How do you figure?
If I add two values, and I know the domain of both values...
You've got to realize that the operation that you're doing on the encrypted values is not the same as the corresponding operation on the unencrypted values.
For example, if E is the encryption function, then E(a + b) is not performed by calculating E(a) + E(b). Instead, there's a special "EAdd" binary function you need to call to perform addition on the encrypted values -- in other words: E(a + b) = EAdd(E(a), E(b)). The "EAdd" function may be significantly more complicated than simple addition is.
Re: (Score:2)
I guess the point being, if you can operate on encrypted data in the completely same way as if you had the original, what is privacy is advanced through the encryption? It sounds like a second level redirect to encode the sequences to begin with. We know why its being promoted. Having 'no personally identifiable information' sent to and from groups would allow for privacy laws to be bypassed in the name of science. I don't specifically have an axe to grind in that matter, but can you really say the data isn
Re: (Score:2)
PS: Here's an interesting article on the topic a few years old:
http://www.newsweek.com/2014/0... [newsweek.com]
Re:Initial Thought (Score:5, Informative)
You fundamentally don't understand homomorphic encryption.
The results you get are encrypted results. You can't fish with them.
In your example, ABC runs the tests, and gets encrypted results. These are useful only to the person who has the key to understand Joe's DNA in the first place.
What this allows is the people who process data to not always have to be the same people who have the data. So if you build a server that does really hard math on DNA results, you can be given the encrypted data, perform your math on the encrypted data, and hand back the encrypted result. You never understand the data.
Re: (Score:2, Informative)
Or, more importantly, you can take your encrypted data and smash out the results on AWS infrastructure that you've rented and retrieve the results without ever having compromised the privacy of the individual to whom the data belongs.
Re:Initial Thought (Score:5, Interesting)
Your initial thoughts are wrong.
This is a type of encryption algorithm known as homomorphic encryption, which allows one to do operate on encrypted data without decrypting it.
This has no bearing on the strength of the encryption against an adversary.
Practical homomorphic encryption (like this MSFT product) is based on simplified encryption (to make it more practical, duh). AFAIKT in this case the MSFT product is based on a derivative YASHE (yet another somewhat homomorphic encryption) scheme. This is a bit more like steganography than pure encryption as it "hides" the encryption in a ring and requires lattice theory to generate a unique decryption (meaning you can only perform a few addition/multiplication operations before you have to re-decrypt, re-encrypt). Although theoretically, you can make this encryption "strong" by selecting different parameters (and introducing more overhead and lower error bounds), at some point there is a fundamental limit related to the entropy of the data set itself (which for medical-like data is pretty low entropy).
And then there is the (in)famous sum-product puzzle [wikipedia.org], which although is kind of an interesting puzzle in that in illustrates how seemingly impossible obfuscation can be removed by the most innocuous oracle queries.
What will break this type of encryption is not brute force, but say on medical data examining distributional anomalies to make a dictionary of sorts. Also since this appears to be some sort of "ECB-like" encryption (most data is encrypted the same way so you can operate on it), we all know how weak that can be in some situations [wikipedia.org]...
This is why in most medical research, data must be de-identified, not merely encrypted. Not that fixes things by a long shot, but it's better than simply encrypting and hoping...
Re: Initial Thought (Score:1)
Re:Initial Thought (Score:5, Informative)
It's strong. Very strong.
Problem is, there's a tradeoff in time/speed and operations you can do. There are general algorithms that let you do a wide variety of operations, but they are very slow - on the order of a million times slower than unencrypted.
Faster algorithms usually restrict the operations you can do. on the data, and performance is almost equal that of unencrypted.
Note that you don't simply say "I want to add these two numbers" , encrypt them, then just do a simple add - no, the operation after encryption may be a multiplication, or other operation.
And this is actually very useful - because it lets you store critical data in the cloud, and perform manipulations of that data in the cloud, without the cloud provider having to have the encryption key. If the data is stolen, the hacker gets encrypted garbage.
So the current operation is database - you put up an encrypted data in the cloud, and the cloud provider runs an encrypted database service. You can perform limited queries, and the cloud provider will return you the encrypted rows as encrypted blobs to you. You use the key (kept onsite for security), and marvel that you just did a transaction in the cloud, the cloud provider executed the operation, and you got back the rows that you wanted, and at no time other than on your PC was it ever in plaintext.
You could be more fancy - say you want to add up a column - you tell the database server to add it up (encrypted), and the final result is sent back, as encrypted data. You use your key and get your answer.
That's the primary use case for this sort of encryption. Do it right and even in house database can be completely encrypted. So stuff like health information and banking records will never be in plain text until you need it so breaches won't be as harmful.
Is the operation Authentic? (Score:5, Interesting)
Continuing the fine tradition of not RTFA around here, I didn't read the research paper but I did skim wikipedia's entry.
Nowhere do I see any mention of authenticity. This is as important as confidentiality and integrity. I'm not saying there isn't a solution (I'm not a cryptographer) but I wonder if anyone has any insight or links to a solution if it exists.
Here's the scenario. Homomorphic encryption lets us keep the data constantly encrypted, maintaining confidentiality. Ok, that's cool for data breaches, we stay much better protected from loss of confidentiality.
But what if a malicious actor purposely performs an operation on the data? Changing genomic data in this case might mess up diagnoses/research, etc. Future applications could be stuff like medical billing -- if its easy to tack on another bill, even if you don't know previous bills because its encrypted? Is there any mechanism that checks that the operation we perform on the encrypted data was authorized, i.e., that I am a manager allowed to do the operation and I specifically consent to performing the operation? Typical integrity checks wouldn't catch this; integrity is correctness of the data, which means it will only verify the computation was performed correctly and then move on. Authenticity is a different issue.
I would suspect Microsoft Research thought of this. My question is: is there a countermeasure that can be described as part of the algorithm? Or is the countermeasure "be careful with any software that uses this algorithm, make sure it checks authenticity before applying operations!". If the solution is for developers to be careful, I'm not convinced the algorithm made anything better. Many developers do not know cryptography and may assume safety, or may not have the time and resources due to a manager driving a hard deadline; in these cases, "we use MS's algorithm!" can get advertised without any increase in safety (and possibly even a decrease, as some might look to this as a crutch and reason why they can cut corners...).
Re: (Score:2)
But, if it's millions of times slower, then you'd need a cloud provider with a million CPUs to do the same work you could do on your desktop with 1 CPU.
Re: (Score:2)
But its the cloud!
Re: (Score:2)
Re: (Score:2)
Homomorphic encryption is a form of encryption that allows computations to be carried out on ciphertext, thus generating an encrypted result which, when decrypted, matches the result of operations performed on the plaintext.
So the results are "encrypted". Interesting idea.
Re: (Score:2)
I don't think you need the quotes there.
Also, if Microsoft is really on the ball here, they have the ability to be first to market in a niche that could really use this. This is innovative and arguably somewhat charitable
SEAL... (Score:2, Funny)
Re: (Score:2)
I sorta doubt that but maybe. Either way, it's not for you to mount your drive with. AES Twofish Serpent in LUKS or Veracrypt should be used for that.
Re: (Score:1)
And what are we, as non-military individuals living elsewhere than France, supposed to do about it?
Re: (Score:3)
Wave your arms in the air, scream and shout and run in circles?
Re: (Score:2)
When in trouble,
Or in doubt,
Run in circles,
Scream and shout.
-- Heinlein
Re: (Score:1)
Couldn't we lie down or put a paper bag over our head or something?
Re: (Score:2)
>> worst terrorist attack in French history
French history is LONG. Check out the Rhineland Massacres, the Albigensian Crusade, and maybe the Carolingian Succession for starters.
Re: (Score:2)
What shall we do? Stop talking? Hello? The best thing is to go on with your life and tell the haters that you don't care. And by the way it is very interesting to do what MS claims to have done. If you want to do cloud computing you must be able to do similar things to data and code.
Re: (Score:2)
encrytped (Score:2)
>> encrytped
Someone, please buy the Dice interns a spellchecker for Christmas this year.
Re: (Score:3)
>> encrytped
Someone, please buy the Dice interns a spellchecker for Christmas this year.
They also need a grammar checker:
to be ran on encrytped data
Re: (Score:3)
"to be ran on encrypted data" seems like solid grammar to me. Imperfect tense, right?
Re: (Score:3)
"to be ran on encrypted data" seems like solid grammar to me. Imperfect tense, right?
"which allows mathematical operations to be ran on encrytped data" is not proper grammar. "ran" is past tense only. "to be" is future. It should be "to be run on encrypted data."
Re: (Score:2)
Ran in the indicative is past tense.
Ran in the subjunctive is imperfect tense.
Since this referring to a possible future execution of the program being discussed, "ran" seems to fit perfectly as subjunctive imperfect.
Re: (Score:2, Informative)
Re: (Score:2)
I'm curious, (Score:1)
Re: (Score:2)
The system will keep out random hospital workers, secretaries, dr's, nurses, visitors, 3rd party developers and will pass any state, federal, out side 3rd party tests that the data is totally secure after and during networking.
So the "genomic data" will be safe until the government copies it in a readable form for law enforcement needs. Law enforcement always has a warrant so access is always allowed
Re: (Score:2)
Of course you can create all the illusion of security you want but when you have an operating system with a built in keylogger (M$ Windows 10) then all the security is wasted unless you encrypt it prior to entry into those operating system or any functioning, goal or target typed in by the user at their terminal unless they themselves personally are encrypted. So M$, let's punch holes all over our OS to sell advertising and people's private data and then 'er' 'um' security yes, M$ are all about security. Y
Re: (Score:2)
then I fail utterly to understand
Yes, yes you do.
Caution! (Score:1)
You know what this could lead to?! A mandatory Windows(TM) license for every human on earth!
"SEAL" is already a used name (Score:5, Informative)
"SEAL" is the name of a patented cipher from 1994 [wikipedia.org].
Let me introduce you to my new encryption algorithm, Alien Encoding System (AES). Because that won't conflict at all with existing ciphers...
Re: (Score:3)
I think they need to come up with a better IDEA.
Re: (Score:2)
Yep, I was going to say the same thing. Cisco has supported SEAL as a VPN crypto algorithm for quite a while. Not only has it been around for a long time but it's actually in commercial software (e.g. Cisco IOS) and has been refined several times (version 3 came out in 1997). Clearly Microsoft didn't do their due diligence on the name...
Distributed work (Score:2)
Encrypting data using a homomorphic encryption scheme allows for meaningful computation on the encrypted data producing the results of the computation in encrypted form, without the need for decrypting it or requiring access to the decryption key.
How long until someone comes up with a blockchain scheme that pays out for computational work done on encrypted data sets?
Re: (Score:2)
How long until you stop trying to crowbar your buttcoins into every last use-case you can think of in an effort to prop up your failed investment long enough for you to break even after 2 years?
"NSA Approved" (Score:1)
For the healthcare industry eh? (Score:1)
Crazy Idea ??? (Score:1)
Normally I'm always a scientific progressive but something about this idea horrifies me. Doing analysis on data while it still remains encrypted? better hope that nothing goes wrong, better hope that there isn't some hidden unknown variable that develops. Kind of like a magic trick and magic tricks have a habit of going wrong..