Slashdot Mirror


Weak Elliptic Curve Cryptography Brute-Forced

thegrommit writes "It seems one implementation of elliptic curve cryptography has been broken. It took four years to break a 109 bit key, but the contest sponsors (who provide encryption products for Cisco, Nortel and Palm among others) believe it's still impossible to break their 163 bit keys. The real question is, for how long?" Update: 11/07 01:59 GMT by T : Dan Kaminsky wrote to point out that the key here was really brute forced, and not broken -- that is, no fundamental flaw was discovered in the algorithm.

42 of 270 comments (clear)

  1. secure enough by MisterFancypants · · Score: 4, Insightful

    4 years for the 109 bit version (and that's with a massive, dedicated attack).... I'm willing to believe (barring some unknown theoretical advance, which is always something you have to worry about with all real-world usable cryptography) that the 163 bit keys are good enough for my data considering the exponential difficulty in attacking the longer keys.

  2. Brute-Forced != broken by JUSTONEMORELATTE · · Score: 5, Informative

    It wasn't broken, it was brute-forced.
    --

    1. Re:Brute-Forced != broken by Anonymous Coward · · Score: 5, Informative

      To say that a cipher has been broken has a specific technical meaning: that a weakness has been found which reduces the cost of decryption without the key to less than the cost of an exhaustive search. The cipher in question was decrypted without the key using an exhaustive search. It was most certainly NOT broken.

    2. Re:Brute-Forced != broken by kaphka · · Score: 3, Informative
      Just because brute-force is an inelegant method of breaking encryption doesn't mean it isn't valid.
      True. However, brute force is only a valid technique for breaking a single message, which is what happened here. The headline says "Weak Elliptic Curve Cryptography Broken", which is false.
      --

      MSK

    3. Re:Brute-Forced != broken by FamousLongAgo · · Score: 5, Insightful

      'Breaking' is a term of art in cryptography. It means finding a solution that requires less time than a brute-force search. Even a 1% improvement qualifies as a 'break', although it might not have any practical value.

      It's a valid distinction to make, since a flawed algorithm may be unsafe at any key length.

      --

      A customer service representative will be with me shortly.
    4. Re:Brute-Forced != broken by iabervon · · Score: 4, Insightful

      More precisely, they broke a single key, not "weak elliptic curve cryptography". Breaking another 109-bit key (one that had been used to encrypt something, for example) would take another 4 years.

    5. Re:Brute-Forced != broken by thing12 · · Score: 4, Insightful
      Right - so what's the lesson here?

      Encrypt your data using a key large enough in proportion to the length of time it will take to brute force if someone started today with a supercomputer. Essentially it takes X amount of time to check if a key is valid multiply that by number of combinations and you have a rough guess. So if you want something to be safe for a longer period of time (assuming no fundamental weakness is found in the algorithm), then encrypt it with a larger key - every bit doubles the probable time to break it at current cpu speeds. Of course you have to factor in the approximate doubling of cpu speeds every 18 months... but all that really means is that if we add a bit to the key length every 18 months going forward it will continue to take just as long to break into newly encrypted data.

      The fact remains that most people don't have anything that needs to be kept 'secret' for a long time anyway. Credit card numbers for online purchases? Those expire after a couple years and the amount of financial gain is not worth the time/cost to break the code. Given that you still need supercomputer equivalents to brute force this encryption it's unlikely that your neighbor is going to be reading your email anytime soon. Even at 109-bit.

  3. Impossible by Skyshadow · · Score: 5, Insightful

    Impossible seems like a pretty weird word to ever use in this sort of situation. "Very, very difficult" or "requiring technology or techniques in advance of what is presently available" might be more accurate.

    --
    Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
    1. Re:Impossible by djtack · · Score: 5, Informative

      Impossible seems like a pretty weird word to ever use in this sort of situation.

      Except that they didn't use the word 'impossible'... you can thank the slashdot editor for that bit of nonsense. The article actually claims it is "computationally infeasible" to break the larger keys.

  4. Where have I see this before? by jdclucidly · · Score: 3, Informative

    Oh yea! (insert Slashdot grumblings here)

  5. Apple and FEE by wizbit · · Score: 4, Interesting

    Apple made use of NeXT's Fast Elliptical Encryption in their "personal security" element of OS 9, allowing basically any document to be encrypted and decrypted by the OS. Apparently they planned this for OS X as well, but I see no mention of it except as a future feature on their scientific papers page. I wonder if this will force them to reconsider such a relatively insecure approach to OS security?

    1. Re:Apple and FEE by egreB · · Score: 3, Informative

      It's only the 109-bit keys that's been brute forced. Quoting the article, it would take 100 million times more computing power to take the 163-bit challenge:

      "It would be about 100 million times harder (to break) than what was just done," Vanstone said. "If you could get every machine on the planet working on the problem...you're still not going to be able to touch the 163 problem."

      I don't think Apple has any troubles using this key as of yet. And it's certainly not an insecure approach to OS security. The encoding of these algorithms is quite fast. This would be a good performance thing for the OS.

  6. 4 long years and the answer was ... by burgburgburg · · Score: 5, Funny

    Mrs. Peacock with a metal pipe in the kitchen

  7. Some Background by Kramer747 · · Score: 5, Informative
    Wolfram has some cool stuff on Elliptic Curves:

    http://mathworld.wolfram.com/EllipticCurve.html

    It was also use by Anrew Wiles in 1993 to prove Fermat's famous last thereom.

    http://mathworld.wolfram.com/FermatsLastTheorem.ht ml

    Enjoy!

  8. Money going to good cause by br0ck · · Score: 3, Informative

    The winner is giving 8 grand to the FSF. Monico, who took up the challenge to "raise awareness of cryptography", will donate the bulk of his prize money to the Free Software Foundation and the remaining $2,000 to two men whose computers helped solve the problem.

  9. How Long? A Loooooooong Time... by chrisleonard · · Score: 4, Informative

    Since a 163-bit key is 2^54 times more complex than a 109-bit key, and it took 4 years for the 109-bit key, aren't we looking at at least 4 * 2^53 years, not even figuring in the elliptical complexity (which I admit I would need to read up on)?

    According to calc.exe, 4 * 2^53 years is 36,028,797,018,963,968 years. Anybody want to start working on that one?

    1. Re:How Long? A Loooooooong Time... by richard-parker · · Score: 5, Informative

      Since a 163-bit key is 2^54 times more complex than a 109-bit key, and it took 4 years for the 109-bit key, aren't we looking at at least 4 * 2^53 years, not even figuring in the elliptical complexity (which I admit I would need to read up on)?
      Recovering a 163-bit ECC key is estimated to require 2^27 times as much effort as a 109-bit ECC key. Current recommendations are that 163-bit ECC keys should be safe to use until 2011, although I don't think we'll see public key-recovery efforts succeed against 163-bit ECC until 2020 or so.

      The following is one of the better articles on this subject:

      A. Lenstra and E. Verheul, "Selecting Cryptographic Key Sizes,"
      Journal of Cryptography, v. 14, 2001, pp. 255-293.

      A PDF file of the article can be downloaded here.
  10. No code is impossible... by sterno · · Score: 4, Insightful

    There is no such thing as a crypto key that is impossibile to crack. What it comes down to is how improbably it is to crack it. In this example, it took 10,000 computers 549 days to crack it and it's only 109 bits. At 163 bits, that's a doubling in difficulty for ever additional bit.

    Just add a bit, and suddenly you've pushed off the efficiencies gained by moore's law for another 18 months. By going to 163 bits, you've got a good 80 years before the that key can be broken in the same time as this 109 bit key. Frankly I wouldn't be too worried about that problem.

    As long as your crypto is good enough to make it too expensive to crack for those who might want to crack it, you've got no worries. And I don't see a lot of people out there able to throw together the 10K computers to crack a key who also don't mind wasting almost two years on the effort.

    --
    This sig has been temporarily disconnected or is no longer in service
  11. Even if it was "broken" ... by binaryDigit · · Score: 5, Insightful

    The time is the most significant factor here. If this was military use, the 500+ days it took to break wouldn't worry anyone since any message more than a few days/hours old is pretty much worthless. If someone where more concerned about long term security, they could setup a system to refresh the keys on any encrypted data, say every year or every quarter.

  12. Duplicate article... by camusflage · · Score: 5, Informative

    We already covered this on slashdot. This is just Yahoo picking up on it now.

    --
    The truth about Scientology, Xenu, and you: Operation Clambake
  13. Difference between brute force and cryptanalysis by yerricde · · Score: 5, Informative

    Just because brute-force is an inelegant method of breaking encryption doesn't mean it isn't valid.

    Brute force just gives a baseline against which other attacks can be measured. With a brute-force break, it takes the same amount of time to break one key that it takes to break any other. With a cryptanalytic attack, on the other hand, you only need to successfully attack one key as a proof of concept; once you've expended the effort to break one key cryptanalytically, you've broken the system and probably reduced the effort to break a key by a couple dozen orders of magnitude relative to the baseline.

    --
    Will I retire or break 10K?
  14. Arms race by coryboehne · · Score: 4, Insightful

    Cryptography is (and I assume will likely always be) an arms race of sorts... You create a new cryptographic cypher and instantly there are people out there whom are willing (some for the potential prize money, most simply for the pleasure) to spend a great deal of time and effort to crack the encryption. The advent of quantium computers however is an interesting problem for cryptographers, as a cypher that now takes years to break will only take seconds/minutes with a quantium computer, once again the arms race is on, and I don't beleve that one side will ever prevail as the absolute end-all solution. As computers get more powerful and people become more savvy there will always be a new way to encrypt data, and a new way to break the encryption. As for me? I enjoy it, and I hope you do too!

  15. 4 years? by CySurflex · · Score: 5, Funny

    4 years?? My bird broke all 104 keys on my keyboard in just one day when I mistakenly left the cage door open.

  16. "How long" is the question... by Da+VinMan · · Score: 4, Interesting

    ...because no system is uncrackable or unbreakable, given enough time. The question isn't "will anyone ever be able to see my data?". The question a user should ask "how long would it take someone to get into my data and will it matter if they finally do get into it?".

    Purists will argue against that idea, but I am being realistic here.

    --
    Please mod this post only if you think others should/n't read this. I have enough ego^H^H^Hkarma. Thanks!
  17. too new... to say impossible. by jukal · · Score: 5, Insightful

    (or unfeasible to be exact) The study of elliptic curves - as a branch of mathematics is not very old one. And as Elliptic Curve Cryptography originates from this theory .... I think this is one of the main reasons why it has not yet been commonly approved for mission critical tasks. Currently, yes, we do know that it is pretty(very) strong against brute-force attacks - but there is still a significant chance that a fundamenta flaws or new discoveries are achieved in ECC theory - leading to easy compromise of previous implementations based on it.

  18. Re:Difference between brute force and cryptanalysi by ChadN · · Score: 3, Insightful

    Furthermore, the article doesn't say how much of the total keyspace was searched (I'm assuming it was a simple exhaustive search algorithm). The time to search 50% of the keyspace, and 100% of the keyspace (corresponding to average and max time to "break" another 109 key, at the same average key checking rate) would be very useful to know.

    But yes, this isn't breaking the algorithm, by any means. In fact, the contest is meant to show how infeasible a brute-force attack is against larger key sizes.

    --
    "It's overkill, of course. But you can never have too much overkill." - Anonymous Slashdot Coward
  19. Re:(OT) Slashdot is an English language board by Dahan · · Score: 4, Informative
    please give the common name of the language you are using

    Why? What good does that do? But since you care, it's in Luo, and is just copied from jaluo.com. Not that that helps you understand what it says...

  20. Is my front door broken? by DrSkwid · · Score: 3, Insightful

    As brute force will open it, even if that means making every possible shaped key or just the mundane big enough hammer.

    --
    There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
  21. Security for the Masses by Oculus+Habent · · Score: 5, Interesting

    It's interesting to see graphs of cracking power.

    RC5 took almost 5 years to crack, but take look at the graph. At the beginning of 1998 there were about 15 GigaKeys/sec. Then look at the increase.

    Sure, a fair portion of the increase was also the addition of new computers, but 261 days to double is comfortably below Moore's Law. If the whole project had run continuously at 200 GigaKeys/sec, it would have taken under 2.5 years, and under two years at their reported peak rate of 270 GigaKeys/sec.

    So, if we follow the 261 day doubling statistic they had, all these encryption methods seem weaker than reported. The big issue is if it's 4 years now, it's 1 year soon, and 3 months, soon after.

    If the cracking power scales nearly linearly, shouldn't we make some projections on how fast we can crack this encryption in a year? In two years?

    If your data is very time sensitive, then most "strong" encryptions currently available will do. If your data is, however, of a continuously sensitive nature (some corporate or government info), maybe you should be looking at the 1000+ bit keys now.

    --
    That what was all this school was for... to teach us how to solve our own problems. -- janeowit
  22. It's *NOT* broken!!! by wirelessbuzzers · · Score: 4, Insightful

    Elliptic encryption is not broken. FEE is still secure, as are all the other well-implemented versions of the encryption out there (unless the NSA has some big news they're not telling us...). Geez.

    What happened is they brute-forced a 109-bit key. That's a small key. The minimum used in this company's product is 163 bits. While I wouldn't call this "impossible," it certainly is computationally secure for several years, and that's the minimum size.

    When distributed.net cracked the 64-bit RC4 key, you didn't hear anyone saying "Oh no! OFB stream ciphers are broken!" That's about what this article amounts to: they brute-forced a small key, and /. claims the algorithm is broken.

    --
    I hereby place the above post in the public domain.
  23. Re:Hello? by Drawkcab · · Score: 3, Insightful

    A little math is a dangerous thing. You've confused yourself completely unnecessarily. He is correct that if Moore's Law were to hold up, then it would take 81 years for computing power to get 2^54 as fast as it is now. Thus in 81 years, we would expect to be able to brute force a key with 54 more bits than one that we can brute force in an equal amount of time now.

  24. Assumptions assumptions! by bugnuts · · Score: 4, Interesting

    It may be computationally infeasable, but that claim is made using certain assumptions which may be wrong.

    An example of such an assumption is that it takes n log(n) time to sort a list of n elements, using the best sort possible. The proof of this is based on the compare statement. However, there are sorts that work in O(n) time, not O(n log(n)) such as a radix sort which does not use the comparison operator (a/k/a "if-then-else").

    The assumptions made are that brute-force is the only way to break this code.

    I don't know of any attacks on elliptic curve crypto, when implemented correctly. That doesn't mean they don't exist using different assumptions, different number systems, or different computer hardware. (Quantum computing looks very promising to destroy our complacent attitude toward "computationally infeasable" problems.)

  25. Here's an idea: by Anonymous Coward · · Score: 4, Interesting

    So now we know distributed efforts can solve great big math problems. Don't get me wrong, that's good to know and all, but.. aren't there any math problems that would be of more use than giving people with 210 IQs something else to bicker over during Star Trek conventions? Really, I'm an engineer, and sometimes I actually have to use math to do things like MAKE A FRIGGIN CAR OR SOMETHING.

    There are plenty of nontrivial engineering problems out there, especially when you take a trip into thermodynamics and fluid flow. Let's solve those. Or sequence the human genome to grow an extra arm or something. Or better yet, let's put the computing power of mankind to work to randomly generate a script for Episode 3 that won't make us want to beat Lucas senseless with our plastic lightsabers. Why can people scrape together all these prizes for pointless pseudo-intellectual drivel but nobody can get some money behind something worthwhile, or at least interesting?

    Here's an idea: Instead of using distributed computing for all this junk science, let's start a central distributed network. This network would have a basic interface element for all the major OS configurations, and would be able to update from the web with whatever mathematic formula and trial space it was supposed to run at a given time. Everyone everywhere could download the client, and set it up to run with whatever processor load they wanted, update on a schedule, maybe vary processor load on a schedule so it works extra hard when you're not using the system. Not much of an interface really. Then some organization, say the NSF or better yet an international science conglomerate, could alot portions of the system load to projects they deemed worthy, depending on complexity and value. The cost is basically nothing, in fact since you could get somebody on the planet to write the code for free one weekend, and the bandwidth would likely be rather low, you would most likely not be talking about the cost of funding a minor research project. Users could still run other distributed clients if they wanted, and the system would be completely voluntary. But it would attract a lot of attention and users, do some good for mankind, and direct our computing power in positive directions.

  26. Weak Elliptic Curve Cryptography Broken by Dunark · · Score: 3, Insightful

    I have a question about brute-force attacks on encryption: How do you know when you've found the right key? Suppose I encrypted my data twice. A brute-force attacker could test *every* possible key (to the outer encryption) and get trash every time.

  27. Re:Whats so hard about 163-bit? by 0x0d0a · · Score: 3, Insightful

    Assuming that there will be no additional reduction of strength from attacks, it's another 54 bits.

    Assuming Moore's Law roughly holds, that's about lg(54) * 1.5 = 11.5 years before systems can break this thing in four years.

    Now, that's actually a little shorter than one might like, and more importantly, it doesn't leave as much breathing room as one might like if more holes are found, but...

  28. Think of EMP shielding by gelfling · · Score: 4, Interesting

    Back in the day when we worked on EMP shielding, no matter the elegance of the solution it all came down to raw force. If you wanted to shield to 100 MEV then all your opponent has to do is create 110 MEV. *Poof*

    "Give me a big enough hammer and a place to stand and I can break practically anything"

    -Archimediocrates

  29. So? by Simulant · · Score: 3, Insightful

    Just change keys every three years and you'll be fine.

  30. mistaken math by Indy1 · · Score: 4, Informative

    IANAC (I am not a Cryptographer)
    every time you increase the bit length by 1, it doubles the brute processing time it takes to crack it. A 219 bit key is 109 bits longer then a 109 bit key, therefore it would take 2^109 = 6.4903710731685345356631204115251e+32 times as long to crack it. If I recall correctly, the reason why you sometimes see huge keys that are 1024 or 2048 bits long is the possibility that a weakness is found in the encryption technique that makes it a lot faster to brute force the key.

    --
    Lawyers, MBA's, RIAA? A jedi fears not these things!
  31. Quantum Crypto and OTP by reverseengineer · · Score: 5, Informative

    One-time pads are uncrackable- mathematical proof exists. That assumes (and it's a rather large assumption) that the rules of using a one time pad are followed.

    Messages encrypted with a OTP have been deciphered in the past, but not from any mathematical failing- people simply failed to correctly follow the rules.

    1. You need a random process to generate the pad. This means random, not pseudorandom. Admittedly, modern pseudorandom number generator algorithms are very complex, and trying to reverse engineer (hey!) a PRNG from just a stream of outputs would be a mammoth task. Rules are rules, however complex- if your pad is pseudorandom, your cipher will only be pseudo-uncrackable. The Enigma produced vey complex keys with a convoluted series of rules, but if you know how an Enigma works, as the Brits did, you can use the ciphertext to help find the key, and then dechiper the entire message. This is one area where quantum mechanics fits in- lots of nice random phenomena arise naturally from quantization- I'll get back to that. Also, the key on the pad must be as long as the message you wish to encode- if you try to encode a 2000-character message by using a 1000-character key two times, your security is no longer guaranteed.

    2. Only use each key on the pad once. That's why it's a one-time pad. If you use the same key more than once, you remove the randomness, and create a pattern that can help the cryptanalyst. Deciphering will still be difficult- but if you wanted difficult, you could have just used triple-DES or RSA or elliptic curve crypto- those are all varying degrees of difficult. You want impossible.

    OTP is unbreakable, if you follow the rules- but the rules are really hard follow. You need random processes, and once you have these neat pads, you face the Key Exchange Problem- if you have an agent out in the field that you'd like to communicate with, and you must communicate in an absolutely secure fashion, you must get a copy of the one-time pad to the agent- it's the only thing that will decipher your messages. However, you can't just pick up the phone and relay the contents of the pad to your agent- the enemy might be bugging your phones- and hilarious hijinks will no doubt ensue when the enemy uses their new your insecurely transmitted pad to read your secure encrypted messages. Encrypting transmission is a good idea, but you can't use OTP to send the first OTP to the agent- how will the agent decrypt his encrypted pad? The classic analogy is that you're trying to send a key (think physical, lock-opening key) in a locked box that only the key inside the box can open. You could encrypt the key with hardass public key crypto, say 1024-bit RSA, but that isn't unbreakable in the same now-and-forever sense as OTP. It would be vulnerable to quantum computers, and vulnerable to any computer if someone discovered a polynomial time algorithm for prime factorization of really gigantic numbers, or if I win a Clay Mathemtics Prize for proving P=NP. You could of course do what the government does for secure key distribution- send couriers carrying OTPs directly to the agent in the field. This is an expensive, difficult, dangerous method, so better ways were searched for.

    This is of course where Quantum Cryptography comes in. Photons all have specific polarizations. You can send a stream of randomly polarized photons through a polarizing filter, and photons with the same polarization angle as the filter will pass, while those with a polarization rotated 90 degrees with respect to the filter are blocked. What then happens to photons that have some intermediate angle? On the macroscale, we can say that the intensity of the light is a function of the angle, and infer that at a 45 degree tilt, 1/2 of the light is blocked, and 1/2 passes through. Enter Quantum Mechanics. It is fairly obvious to see the effect that polarizing filters have on a large scale quantity of light, but what about individual photons? Since the intensity of light at a 45 degree angle is 1/2 its normal value, one can infer that one half of the photons with a 45 degree polarization pass through, while one half are blocked. Simple enough. But if you send just one photon through with a 45 degree polarization, can you determine whether it will pass through? The answer, surprisingly enough, is no. You cannot determine whether a photon will pass through, and you will not know whether it passed through until it hits (or fails to hit) a detector on the other side. Can't determine? That makes it a random process, perfect to set up a OTP. It happens to have some interesting side benefits as well. Since the possibilities are pass and blocked, two possibilities- a string of photons sent at the filter produces a random binary sting of 1's (passed) and 0's (blocked). There is another fascinating benefit- if someone tries to sit in the middle of the photon stream and determine photon polarization, their eavesdropping will be evident- by checking the polarization of a photon in transit, they change the value of the polarization. All two people using quantum crypto need to do is confirm a few values that were sent (this can be done insecurely, since these values will not actually be used in the cipher pad)- if they match up, then send the message, encoded with the OTP, if not, someone is eavesdropping, and so discard the pad. It's a lot more complex than that, of course, but that's the general idea- you can use QC to generate a one-time pad, and then send it in such a way that you know whether or not you're being spied on.

    --
    "FDA staff reviewers expressed concern about the number of patients who were left out of the study because they died."
  32. Re:Whats so hard about 163-bit? by lirkbald · · Score: 3, Informative

    A common mistake I've seen is people assuming that key size == keyspace size. For nearly all cyphers this isn't true. Suppose, for example, that your key requires a large prime number. The Prime Number Theorem says that the fraction of numbers up to N that are prime is approximately 1/lg(N) (that's base e, not base 2). So if we are using a k-bit prime number as the key, the keyspace size would be 2^k/(k*lg(2)), not 2^k. This isn't a huge reduction in keyspace size, but then again most codes have much stronger restrictions on valid keys.

    The point is, a code with, say, 1024-bit keys may only give you, say, a 700-bit keyspace.

  33. Right... by mindstrm · · Score: 3, Insightful

    Hence, if it doubles in 261 days, that is indeed below the time specified in Moore's law.
    What's your point?

  34. 219 is 109 more than 109? by Kjella · · Score: 3, Funny

    You wouldn't by any chance work for intel, do you? I mean 2+2 = 3.99999998673 is close enough ;)

    Kjella

    --
    Live today, because you never know what tomorrow brings