Slashdot Mirror


SHA-0 Broken, MD5 Rumored Broken

An anonymous reader writes "Exciting advances in breaking hash functions this week at the CRYPTO conference. SHA-0 has definitely been broken (collision found in the full function). Rumors are that at the informal rump session, a researcher will announce a collision in full MD5 and RIPEMD-128. And Ed Felten is speculating about collisions in SHA-1! Many systems, especially those that use cryptography for digital signatures are most at risk here."

707 comments

  1. Okay that's it by Anonymous Coward · · Score: 5, Funny

    I picked the wrong week to quit sniffing MD5 hashes.

    1. Re:Okay that's it by Anonymous Coward · · Score: 0

      Maybe the simple solution or workaround is to use two independent encryptions. A collision in SHA won't likely be a collision in md5. Problem solved.

      Just create a tool that generates both.

  2. ec7b19b60e616fb1c6013d4ada83ec32 by Anonymous Coward · · Score: 5, Funny

    d008960fa6b395dca1c8362165bb31be

    1. Re:ec7b19b60e616fb1c6013d4ada83ec32 by idiot900 · · Score: 4, Funny

      d008960fa6b395dca1c8362165bb31be

      You know you're a complete and utter nerd when you read this post, immediately understand it, and laugh out loud, as I just did :)

    2. Re:ec7b19b60e616fb1c6013d4ada83ec32 by boots@work · · Score: 2, Funny

      Is this a Google job ad? If so, 66b24eeeacbccd0baa0c582982f751ab.

    3. Re:ec7b19b60e616fb1c6013d4ada83ec32 by SynKKnyS · · Score: 1

      Are you some kinda robot? I wish I could reverse MD5 hashes back into data in my head! :P

    4. Re:ec7b19b60e616fb1c6013d4ada83ec32 by Basehart · · Score: 2, Funny

      No kidding. I looked at that and kracked up.

    5. Re:ec7b19b60e616fb1c6013d4ada83ec32 by kghougaard · · Score: 2, Funny
      As one of my friends responded a few days back, when a guy called him a nerd:

      "No, no, it's called expert"

      I now use that every single time...

      --
      He, who dies with the most toys, wins
    6. Re:ec7b19b60e616fb1c6013d4ada83ec32 by suwain_2 · · Score: 1

      I realized what a horrible geek I was one day when I was in phpMyAdmin, browsing through the users table for something or other, which stores passwords in MD5 hashes. My eye jumped to something that looked strangely familiar, and I eventually realized it was the MD5 of one of my more common passwords.

      I don't have a clue what it is, but I was able to recognize it as familiar. Of course, I promptly broke down and started crying because of how pathetic it is.

      --
      ________________________________________________
      suwain_2 :: quality slashdot p
    7. Re:ec7b19b60e616fb1c6013d4ada83ec32 by Dwonis · · Score: 1
      "No, no, it's called expert"

      HAHAHAHAHAHAHAHA!

    8. Re:ec7b19b60e616fb1c6013d4ada83ec32 by isabelcat · · Score: 1

      Well, the whole Google job ad was a bit strange... although to be honest, the puzzle was pretty easy. But thanks for linking to my account of the Google ad anyway. I spent some time trying to figure out "why the hell am I getting all this traffic from slashdot?" Some people will click on any link.

  3. Is anything... by XaviorPenguin · · Score: 1, Redundant

    ...really secure or safe anymore? This scares me...

    --
    Friends help you move...
    REAL Friends help you move dead bodies... ^_^
  4. Next step by Anonymous Coward · · Score: 0

    Time to move on to SHA-2 and MD6SUM

    1. Re:Next step by Anonymous Coward · · Score: 3, Funny

      ROT13 should be safe for some time.

    2. Re:Next step by krog · · Score: 3, Funny

      Security experts recommend using Triple-ROT13 for increased safety.

    3. Re:Next step by Anonymous Coward · · Score: 0

      I prefer to use ROT13 eight times on my data for even more protection.

    4. Re:Next step by Anonymous Coward · · Score: 0

      Blech, nothing beats Double DES for Total Information Awareness...

    5. Re:Next step by IchBinEinPenguin · · Score: 5, Funny

      How otfen does this have to be said:
      - odd is development
      - even is release

      use ROT13, tripple-ROT13, quintupple-ROT13 for DEVELOPMENT WORK ONLY!
      For release work, use double, quadruple, hextuple-ROT13

    6. Re:Next step by Hard_Code · · Score: 3, Funny

      Moron. Rot13 is ODD. Use ROT12, it's the last stable version.

      --

      It's 10 PM. Do you know if you're un-American?
    7. Re:Next step by OrangeTide · · Score: 1

      I've since moved on to ROT52

      --
      “Common sense is not so common.” — Voltaire
  5. Should We Fear? by Anonymous Coward · · Score: 2, Interesting

    So what does this really mean for the average web surfer and computer user?

    1. Re:Should We Fear? by kendoka · · Score: 5, Funny

      Your bank will buy enron stock with your accounts, your credit card will explode, and your mind will begin to melt. Nuclear missiles will spontaneously launch and direct themselves to your house. Bush will be exposed as a witless robot when he begins to utter swahili at a press conference. The Martians will arrive from their base on the dark side of the moon, and the War of the Worlds will begin. Super-Bowl half-time will be unceremoniously interrupted when terrorists will arrive to sear off Janet Jackson's nipple with a laser in the name of Allah.

    2. Re:Should We Fear? by Anonymous Coward · · Score: 4, Funny

      Yes, but how does this affect me personally?

    3. Re:Should We Fear? by IchBinEinPenguin · · Score: 5, Informative

      doesn't mean that much.

      Carefully crrafted binary data can be made to have the same checksum.

      This is not a generalised attack where I can create binary data to have a CHOSEN checksum.

      Therefore, if you verify your downloads by checksum, I can't generate a fake download with the same checksum.

      First step is MATCHING some checksums (this has been done)
      The next step is CHOOSING the chekcsum (aka DEADBEEF attack)
      The next step is MANIPULATING, i.e. adding junk to a given binary file to allow you to choose the cheksum. that's the scary one!

      - substitute trojaned binary
      - append some binary junk so the checksum matches
      - profit!!!

      Nothing to worry about yet, sort of like the first proof-of-concept brute force crack of DES.
      Yes, it can be done under some circumstances.
      Yes, eventually processing power and methods may improve to make this a valid attack
      Yes, you can sleep soundly tonight.

    4. Re:Should We Fear? by Anonymous Coward · · Score: 0

      Super-Bowl half-time will be unceremoniously interrupted when terrorists will arrive to sear off Janet Jackson's nipple with a laser in the name of Allah.

      You say that like it's a bad thing.

    5. Re:Should We Fear? by nkh · · Score: 1

      It means a lot to me as one of the crackers was my computer architecture teacher :p (William Jalby, I love you!!)

    6. Re:Should We Fear? by Anonymous Coward · · Score: 0

      Why does this guy get modded as funny?

    7. Re:Should We Fear? by IchBinEinPenguin · · Score: 5, Interesting

      maybe I should have read this first: http://www.freedom-to-tinker.com/archives/000661.h tml "And now the rumor is that somebody has extended Joux's method to find a collision in SHA-1." "The finding of a single collision in SHA-1 would not, by itself, cause much trouble, since one arbitrary collision won't do an attacker much good in practice. But history tells us that such discoveries are usually followed by a series of bigger discoveries that widen the breach, to the point that the broken primitive becomes unusable. "

    8. Re:Should We Fear? by Anonymous Coward · · Score: 0

      So does that make you more prone or safer from some sort of MD5 attack?

    9. Re:Should We Fear? by prichardson · · Score: 4, Funny

      I don't think George Bush is going to start spewing Swahili anytime soon. He has enough troubles with English.

      --
      Help I'm a rock.
    10. Re:Should We Fear? by Anonymous Coward · · Score: 0, Insightful

      Because he's funny?

    11. Re:Should We Fear? by Anonymous Coward · · Score: 1, Insightful

      Well, I'll take a wild guess:

      Because his comment was funny.

      Next question?

    12. Re:Should We Fear? by straterpatrick · · Score: 4, Interesting

      Here is the significance of this story:

      The proof that they have computed two values that have the same hash is significant because it proves that it is computationally feasible with today's computing resources to calculate a second different string or dataset that hashes to the same value as the original. It shows that a md5 hash can be "faked" or duplicated using current computing power. There is nothing significant about the values themselves presented in the story just that such values can now be theoretically found in a reasonable amount of time using available resources.

      Why this is a bad thing:
      Say I sign a program using md5. An attacker writes his own different program and appends some gibberish data in such a way that the two files are different but have the same md5 hash. There is now no way (using md5) to tell the two programs apart. (Of course the programs would have to be similar in other ways, size etc... for the spoof to work.) This same thing could be used to calculate new passwords for md5 hashes that are known to the attacker.

      Why should we not panic: It took a long time to find the collision. Chances are a script kiddie wont be able calculate such hashes to crack into your site. But it show that banks or other highly confidential data stores should now look elsewhere for their hashing needs. (Which they probably already do).

      Strater

    13. Re:Should We Fear? by Anonymous Coward · · Score: 0

      You should have read his post more carefully. No more of Janet Jackson's nipple for you

    14. Re:Should We Fear? by Anonymous Coward · · Score: 2, Funny

      I don't know if I'm ready for a collision at a "informal rump session"

    15. Re:Should We Fear? by serial+frame · · Score: 2, Interesting
      Just to alleviate further fears, you can lower the risk of confusion between a known good file and a malicious file of the same checksum by also comparing the files' sizes.

      However, I don't know enough about MD5 or SHA-[01] to know if collision is possible for every combination of bytes in certain fixed-sized samples. I suppose only quantum comping can tell. :)

      /me tucks self in snugly.

      --

      -
      And the Angel said unto me, "These are the cries of the carrots! The cries of the carrots!"
    16. Re:Should We Fear? by kendoka · · Score: 4, Funny


      WHAT WOULD IT MEAN TO YOU IF YOU GOT A SEMI-AUTOMATIC WEAPON?

      Perhaps I could shoot the first family. =P

      TELL ME MORE ABOUT YOUR FAMILY

      What business is it of yours?

      TELL ME MORE ABOUT YOUR BUSINESS. I CAN OFFER INCENTIVES TO SMALL BUSINESS OWNERS.

      Uh, how about we talk about something else...

      SOMETHING ELSE...

      You know, you're starting to sound like a program I wrote in introduction to programming...

      WHAT RESEMBLANCE DO YOU SEE

      You are not very intelligent-sounding.

      WHAT MAKES YOU THINK I AM NOT VERY INTELLIGENT-SOUNDING?

      You never say anything but conservative rhetoric.

      WHY DO YOU THINK I NEVER SAY ANYTHING BUT CONSERVATIVE RHETORIC?

      You're a mindless tool for the Right-Wing Conspiracy.

      DOES IT PLEASE YOU TO BELIEVE I AM A MINDLESS TOOL FOR THE RIGHT-WING CONSPIRACY?

      Damn it! I knew it! You're just a useless Eliza hack!

      WHAT ELSE COMES TO YOUR MIND WHEN YOU THINK OF ELIZA?

    17. Re:Should We Fear? by Dr.+Blue · · Score: 5, Insightful
      First step is MATCHING some checksums (this has been done)
      The next step is CHOOSING the chekcsum (aka DEADBEEF attack)
      The next step is MANIPULATING, i.e. adding junk to a given binary file to allow you to choose the cheksum. that's the scary one!

      Actually, you can do interesting and dangerous things with variants of your first step, not even progressing to step two. The MD5 collisions (well, almost collisions) are largely the same input data that has differences in only a few places. Now imagine that I have two messages that say something like this:

      1. "Joe will send Dr. Blue $10. Confirmation number 1234567."
      2. "Joe will send Dr. Blue $100000. Confirmation number 6451234."
      Now lets say I can manipulate the confirmation numbers in those two messages so that they have the same hash value -- I don't care what the hash is, as long as it's the same in both cases. Then I send you the $10 message.

      If you agree, you sign it. But you realize that digital signatures don't actually sign the message, right? They sign the hash of the message, so I can later produce the $100000 message, with your signature, and it will verify that you signed that message!

    18. Re:Should We Fear? by Anonymous Coward · · Score: 2, Informative

      There must be exist hash collisions for a given hash function, whenever the plain text is longer than the hash value.

      Of course, even though the hash space is much smaller than the potential plaintext space, it is still large enough that it is infeasable to find such a collision.

      For MD5, the plaintext space is infinite, and the hash space is 128 bits. Thus, for all inputs longer than 128 bits, there must, by necessity, be collisions.

    19. Re:Should We Fear? by Anonymous Coward · · Score: 2, Interesting

      All good points, but further add that it would be *extremely* difficult, if not impossible, to spoof the binary file so that it:

      1) Has the same MD5 hash.
      2) Has the same byte count.
      And perhaps most importantly,
      3) Still does something an attacker would want it to do (like execute on the target's computer).

      Like the parent poster, I won't be losing much sleep over this announcement either. ;)

    20. Re:Should We Fear? by sploo22 · · Score: 5, Interesting

      Or say Microsoft signs the hash of Windows XP SP3 with their special key. I tweak the firewall to allow in a nasty backdoor, put data in the padding to give it the same hash as before, and put it out on a BitTorrent site for hundreds of unsuspecting geeks to download. The signature verifies fine, so it must be OK, right?

      --
      Karma: Segmentation fault (tried to dereference a null post)
    21. Re:Should We Fear? by Stephen+Samuel · · Score: 4, Funny
      I don't think George Bush is going to start spewing Swahili anytime soon. He has enough troubles with English.

      Now you know why.

      --
      Free Software: Like love, it grows best when given away.
    22. Re:Should We Fear? by Anonymous Coward · · Score: 1, Insightful
      Nothing to worry about yet, sort of like the first proof-of-concept brute force crack of DES.



      ... the first proof-of-concept DES crack that we know about.
    23. Re:Should We Fear? by Anonymous Coward · · Score: 0

      You can sign an entire message rather than just its hash. It's certainly possible to just sign hashes too and that saves tons of space, but signing the full message is an option.

      The way I've always heard signatures described assumes a public/private key pair.

      People sign messages by encrypting them with their private key. This allows people with the public key (i.e. everyone) to decrypt the message. So everyone can read the signed document by decrypting it and they know that since the signer's public key worked to decrypt it that it must have been encrypted with the private key.

      This is the reverse of the usual case where the world at large uses someone's public key to send them messages that can only be decrypted with the private key.

    24. Re:Should We Fear? by dgatwood · · Score: 1
      Put another way, how well did you do in that class? :-)

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

    25. Re:Should We Fear? by Spy+der+Mann · · Score: 2, Insightful

      That's why we'd need LOCAL hashes and not just one big global hash.

      So let's say that for a 160megs file you store an md5 hash for every chunk (1, 2, 10 megs maybe?),

      AND THEN you check the global MD5...

      or who knows. Just do some math with the hashes themselves. It's not that hard to make an encryption algorithm more secure.

      Like they did with DES -> 3DES.

    26. Re:Should We Fear? by Nogami_Saeko · · Score: 2, Interesting

      I remember reading an article long ago on Fravia's page of reversing which talked about how to modify executables so the CRC32 value would be whatever you wanted it to be. It was beyond MY level of math, but it could obviously be done.

      The article was referring to software that ran checksums on itself to make sure it wasn't tampered-with as anti-piracy protection, but it could be modified for other uses.

      I think it would be more complex on MD5s and such, but...

      (too bad Fravia moved on to other things - the articles were absolutely fascinating. Fortunately there are still some mirrors around).

      --
      "Nothing strengthens authority so much as silence." - Charles de Gaulle
    27. Re:Should We Fear? by arivanov · · Score: 2, Informative
      it proves that it is computationally feasible with today's computing resources to calculate a second different string or dataset that hashes to the same value as the origin

      Important note - with a guaranteed lower number of operations. Instead of 2^64 (SHA0) they used a method that always delivers 2^51. While neither one of these is within Joe Average computing power, the difference may bring a message into the cracking range of people who are in possession of "heavy computational artillery".

      --
      Baker's Law: Misery no longer loves company. Nowadays it insists on it
      http://www.sigsegv.cx/
    28. Re:Should We Fear? by struppi · · Score: 2, Interesting

      The next question is: what does this mean to the more advanced (but not yet commonly used) CHF's SHA-256 and SHA-512? AFAIK they are harder to break, but are based on the same principle.

    29. Re:Should We Fear? by Blublu · · Score: 1

      Hahahah, that was great. Where are those mod points when you need them!

      --
      meh
    30. Re:Should We Fear? by mophab · · Score: 1

      The usual technique is for the signer to append
      some unguessable, preferably random, stuff to the message before signing such as:

      1. "Joe will send Dr. Blue $10. Confirmation number 1234567. Joe agrees FDXasd-lvaudfljw"

      This way you can avoid the birthday attacks and the attacker must take on the hash at full strength.

    31. Re:Should We Fear? by Zone-MR · · Score: 1

      Generating two seperate but meaningful messages with the same hash is not a simple variant of the fist step. Currently it took 80000 CPU hours to generate two meaningless random strings with matching hashes.

      The example you gave is actually much closer to step 3, than it is to step 1. You are manipulating junk at the end of a message to try and match the checksum. It's even more difficult since the junk needs to be a nice human readable number comprising of ascii characters '0'-'9'.

    32. Re:Should We Fear? by Zone-MR · · Score: 3, Informative

      This is step 3, which he mentioned:

      "The next step is MANIPULATING, i.e. adding junk to a given binary file to allow you to choose the cheksum. that's the scary one!"

      Fortunatly manipulating a file to have the checksum you want is a hell of a lot more difficult than finding a colision between two bits of random data which don't need to match any format or rules.

    33. Re:Should We Fear? by samrolken · · Score: 1

      1) Has the same MD5 hash - difficult, yes, even with this, still very. But not impossible, as this proves. 2) Having the same byte count - trivial. the cost of calculating a plaintext with the same hash as another plaintext is actually less if they *are* the same byte count, due to the way it seems some of these algorithms work. The two plaintext byte sets that collide are the same byte count in the collision announced today. 3) Still does something an attacker would want it to do (like execute on the target's computer) - trivial. If you look at what can be done in just a few dozen bytes of shell code, you'll see examples of attackers working with just a little control over just a few bytes. I won't lose sleep either. In fact, I'll feel more secure knowing that the vulnerabilities in the algorithm are known publicly instead of privately by a government organization, or some organized criminal organization.

      --
      samrolken
    34. Re:Should We Fear? by Lemmeoutada+Collecti · · Score: 1

      Theoretically, woudn't it be possible to use a paralell cluster, i.e. Beowulf to compute a set of hashes from a known data space.

      More specificially, shouldn't the set of possible hashes when run through the hash algorithm produce a dictionary? Since each hash is a unique value, hashing the possible 2^128 hashes would produce a data set containing the original possible hash (cleartext) and a hashed value for the known cleartext (cyphertext). Then a simple search of the space would result in a matching hash for any given cyphertext.

      Now given that 2^128 possible values must be hashed, this would require some set up time, but would result in a very permanent failure of MD5...

      Given enough computing power, and to simplify the search space, subdivide the problem. This is something ideally suited to paralell computation.

      And there are governments (USA) that have the will and resources to do something like that... Imagine something like SETI@HOME being run on every government owned PC and Mainframe and Server to generate a dictionary... even partially complete, they have reduced the computational complexity of the remaining search space... Every additional set of bit combinations calculated means one less bit of strength! From 2^128 to 2^127 to 2^126...

      --

      You can have it fast, accurate, or pretty. Pick any 2.
    35. Re:Should We Fear? by sk8king · · Score: 1

      Wouldn't it be an order more difficult to find a second file that contains gibberish data that has the same MD5 checksum AND the same SHA-0? I figure that generating the two hashes and using them for identification would make it [perhaps] impossible to find a pile of gibberish that produces the same results as the legitimate program you are identifying.

    36. Re:Should We Fear? by rekoil · · Score: 1

      This is true, but the usefulness of the hash function requires that these collisions should not be "discoverable"...they may happen by chance here and there, but deliberately finding one is an entirely different and much more significant story.

    37. Re:Should We Fear? by Anonymous Coward · · Score: 0
      I don't think George Bush is going to start spewing Swahili anytime soon. He has enough troubles with English.

      But at least he doesn't dispute what the meaning of "is" is, so it seems the verbal abilities of our Presidents are improving with time.

    38. Re:Should We Fear? by mistered · · Score: 3, Informative
      But CRC32 is not a cryptographic hash, and is not designed to make it difficult to find a collision. CRC32 is in the same class as checksums, and is designed to catch errors introduced by transmission or storage. It's not just "more complex on MD5s" in the way that CRC32 is "more complex" than a checksum; it's an entirely different class of problem.

      --
      Enjoy your job, make lots of money, work within the law. Choose any two.
    39. Re:Should We Fear? by mistered · · Score: 1
      it is computationally feasible with today's computing resources to calculate a second different string or dataset that hashes to the same value as the original.

      No, what they've shown is that it's possible to find two binary strings that hash to the same value. This is different from being given a hash (e.g. your signed program example) and finding another binary string that produces the same hash.

      Here's a paper that talks about this in greater detail.

      --
      Enjoy your job, make lots of money, work within the law. Choose any two.
    40. Re:Should We Fear? by Dr.+Blue · · Score: 2, Informative
      You can sign an entire message rather than just its hash. It's certainly possible to just sign hashes too and that saves tons of space, but signing the full message is an option.

      Of course you can do this, but the question is what do people actual do. In every single case I know of where digital signatures are actually used (including X.509 certificates, signed e-mail, etc.) it's a hash that's signed. For this to be secure, both the hash and the signature method has to be secure. If people just discovered a way to break the hash, then they can potentially break such a system.

    41. Re:Should We Fear? by Dr.+Blue · · Score: 1

      Yes, you're right. Most protocols these days have both sides generate a random nonce, for a variety of reasons. If Joe adds his own randomly chosen junk to the message, then we're down to what the original poster listed as the second kind of attack, which is certainly much harder. But just because that's the way all good protocols work doesn't mean that's the way they do. Imagine a case where I send you a contract, and say "sign this if you agree." Would an "average Joe" :-) think to add random junk at the end?

    42. Re:Should We Fear? by Dr.+Blue · · Score: 1

      The MD5 hash collision that was also reported took several orders of magnitude less work than 80000 CPU hours. If you believe them, it took only a little over one hour (on an IBM P690 -- sorry, don't know exactly what that is) to find the (almost) MD5 collision. That's a very practical attack.

      And if you look at my example, there was a part with meaningless, random gibberish (the "confirmation number"). This is the only part that needs to be manipulated, and since it's random it doesn't have to be a "meaningful message."

    43. Re:Should We Fear? by Mysticalfruit · · Score: 1

      The other issue that comes into play is the ammount of random data that would have be added to the file for the hashes to match up.

      Maybe your lucky and it's only a couple of kilobytes, however, if it's proven the collisions are very far apart, you could end up with two files with the same hash. One's 25MB, the others 1GB...

      --
      Yes Francis, the world has gone crazy.
    44. Re:Should We Fear? by Anonymous Coward · · Score: 0

      He does seem to have difficulty with the word "sovereign(ty)", though, and his VP seems to have trouble with "unknown" ;)

    45. Re:Should We Fear? by Dwonis · · Score: 2, Insightful
      It's not quite so simple.

      I don't know about other public-key algorithms, but with RSA, the numeric value of your message must be less than the modulus. So if you want to directly sign a 100 MB file with a 2048-bit RSA key, you have to split the 100 MB file into at least 390625 separate messages, and sign them individually. Even then, you run into problems with people re-ordering your messages, so you'd have to insert some sort of sequence-numbered header into each sub-message to prevent that.

      With that many signatures and a predetermined header format, you start giving out an awful lot of data to perform known ciphertext attacks on.

    46. Re:Should We Fear? by Dwonis · · Score: 1
      DES was never broken; its keyspace was just too small. It's not that hard to make an encryption algorithm more secure.

      Oh my. If you truly believe that, I suggest you read some of Bruce Schneier's writings. This is a good start.

    47. Re:Should We Fear? by Zone-MR · · Score: 1

      Yeah, but that junk cannot be complete and random gibberish. You need to rule out whitespaces and all none-printable characters.

      Only 1 in 120892581961462 attempts would give a valid 10-digit number with characters '0'-'9'. So that 1 hour turns into 13800523054 years.

    48. Re:Should We Fear? by tricorn · · Score: 1

      You do realize how big 2^128 is, don't you?

      In storage terms, every person on the Earth today would have to have 56 trillion 16-petabyte storage units to hold that many MD5 hashes. One of those disk drives would hold around 3000 years worth of uncompressed CD-quality stereo music (or only around 450 years of DVD-quality compressed video).

      In computational terms, every person would have to have an 18,000-processor machine, each processor doing one hash every femto-second, and it would still take 100 years. The bandwidth required to store the hashes for just one of those machines would be able to transfer around 350 billion CDs per second.

      The most ridiculous part is, I could be off by a whole bunch of orders of magnitude and it wouldn't make a difference in how totally off-scale those numbers are.

    49. Re:Should We Fear? by Lemmeoutada+Collecti · · Score: 1

      I wasn't really thinking in terms of a complete dictionary, merely a computational reduction in the complexity of the hash collision algorithm.

      Think take enough computers and PC time to calculate a partial dictionary, and use that as the first level of the algorithm. Apply whatever the hack here is for the next level, or whatever more elegant solutions appear.

      The point of using the collision space is to reduce the necessary search space. And in terms of computational complexity and paralellism, the government has many many desktop machines to conscript if needed to approach the problem. If the hash in question is vital enough, they will use that power.

      Using whatever algorithm these guys devised, and a known cleartext space of 2^128 (reduced by whatever dictionary they can calculate), the problem becomes less and less a brute force issue and more an efficiency of approach one.

      I for one do not believe there is any unbreakable encryption, and even with quantum I believe it can be broken. Until proven otherwise, all we are doing is increasing the calculational cost. At no point have we been able to introduce the true entropic factor.

      --

      You can have it fast, accurate, or pretty. Pick any 2.
    50. Re:Should We Fear? by tricorn · · Score: 1

      I don't think you've thought about how ridiculously large 2^128 is. Go back and read what I said. The entire computational capability of the planet, running for the next 10 years, wouldn't even make a noticeable dent in a 2^128 sized space. Those 18,000-processor machines, one for each person, each processor doing femto-second hashes, would take 100 years to do 2^128. How much of a chunk do you think today's multi-nanosecond-per-hash processors would take, even if you had 18,000 of them for each person in the world, and ran them for 10 years? 0.000002 PERCENT, and that's giving a generous 5 nanoseconds per hash. How many 18,000-processor clusters do you think the government actually has access to? Less than 6 billion, I'll bet.

      Note also that you're only talking about 16-bit chunks. It doesn't help you with any other sized chunks, of which there are a LOT more than 2^128.

    51. Re:Should We Fear? by Anonymous Coward · · Score: 0

      No, you aren't supposed to be able to `carefully craft' binary data to produce the same hash as some other binary data. That's the whole point of cryptographic hashing: it's supposed to be difficult, give a message M and a hash H(M), to find a message M' such that H(M') = H(M) (there are different ways of stating the idea with varying levels of strength, but that's the basic idea). What you just described was essentially picking a message M, finding H(M), and `carefully crafting' some data to form M' such that H(M) = H(M').

    52. Re:Should We Fear? by Lemmeoutada+Collecti · · Score: 1

      Actually, I am thinking the size of the search space is not the issue, at least not to the government. The issue would be how quickly can they harvest a set of hashes and find a match.

      Let's say they acquire a set of user id's and passwords for a soviet russian server. They now have (for example) 1000 user id's and passwords. They only need one match from that list to compromize the system. So now the search space is (2^128)/1000 probability to find a match. The more they have precalculated, and the more UID/PWD hashes they get their hands on, the less complex the task of finding a match.

      It's not a matter of being able to break any given hash to them. Just a matter of breaking any one from a very large dataset of possibles.

      Remember, the objective is more important than the methodology, for this case. The objective is a compromise, by whatever means necessary.

      Of course, they could just capture a spy and torture them for information, might be easier.

      --

      You can have it fast, accurate, or pretty. Pick any 2.
    53. Re:Should We Fear? by tricorn · · Score: 1

      Gosh, you're right. If you manage to get 1000 user IDs and passwords for each person on the planet, you'd only need 10,000 clusters of 18,000 processors, each of which is calculating 1 hash per nanosecond, for 10 years, to get an even chance of a match. Remember, each of those 10,000 clusters needs to have enough bandwidth to transfer 350,000 CD's worth of data per second.

      Brute force is not the answer when dealing with difficulty on the order of 2^128 or above.

  6. damn by g-san · · Score: 0

    just got that working with xsupplicant today.

    hello CAs.

  7. emmmmm by Bob+The+Lizard · · Score: 0, Redundant

    Oh this is going to be a fun week.

  8. Don't the laws of computing make it... by Osrin · · Score: 1, Interesting

    ... inevitable that eventually all crypto will be broken? Surely it's only a matter of time.

    1. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      you've pretty much hit the nail on the head; a cryptosystem is only good until the required amount of computing power to break it within a reasonable amount of time is affordable. i dont know of any cryptosystems that claim to be totally unbreakable; and i would think for good reason

    2. Re:Don't the laws of computing make it... by borgdows · · Score: 1, Informative

      i dont know of any cryptosystems that claim to be totally unbreakable

      OTP (one time pass) is totally unbreakable! but is not very practical for use.

    3. Re:Don't the laws of computing make it... by RWaye · · Score: 1

      Yep. In fact, we can relate the ability of computers to break code to the speed of processors. And since processors are supposed to double their speed every 18 months, I guess that cracking ability will follow the same trend. Scary...

    4. Re:Don't the laws of computing make it... by BethLogic · · Score: 4, Insightful

      When used properly, One Time Pad is impossible to break. Of course, carrying around enough truely random characters/bytes for all of your encrypting needs without getting caught is another story. And humans are notoriously good at not following directions properly....

    5. Re:Don't the laws of computing make it... by Ancil · · Score: 5, Interesting
      That's a common misconception.

      In fact, advances in computer speed tend to favor people encrypting data, rather than those trying to decrypt it. For example, increasing CPU speed by a factor of four or five will generally allow you to use a key two or three times as large, and still get the same performance. However, it definitely won't let you crack a key twice as large.

      Suppose your faster CPU inspires you to move from 128-bit keys to 256-bit. What happens to the guy trying to decrypt your message? He now has to work 68,056,473,384,187,692,692,674,921,486,354,000,000 times as long, even if he buys the 5x faster CPU. Ouch!

    6. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      i thought OTP (one time pads) were only good if the data was as close to purely random as possible?

    7. Re:Don't the laws of computing make it... by Darth_Burrito · · Score: 5, Informative

      Indeed, here's another novel argument from Bruce Schneier's book....

      in regards to the strength of 256-bit encryption:

      now, the annual energy output of our sun is about 121 * 10^41 ergs. this is enough to power about 2.7 * 10^56 single bit changes on our ideal computer; enough state changes to put a 187-bit counter through all its values. if we build a dyson sphere around the sun and captured all of its energy output for 32 years, without any loss, we should power a computer to count up to 2 ^ 192. of course, it wouldn't have the energy left over to perform any useful calculations with this counter.

      but that's just one star, and a measly one at that. a typical supernova releases something like 10^51 ergs. (about a hundred times as much energy would be released in the form of neutrinos, but i let them go for now.) if all this energy could be channeled into a single orgy of computation, a 219-bit counter could be cycled through all of its states.

      these numbers have nothing to do with the technology of the devices; they are the maximum that thermodynamics will allow. and they strongly imply that brute-force attracks against 256-bit keys will be infeasable until computers are built from something other than matter and occupy something other than space.

      bruce schneier, applied cryptography, p 158

    8. Re:Don't the laws of computing make it... by Bert690 · · Score: 5, Interesting
      And since processors are supposed to double their speed every 18 months, I guess that cracking ability will follow the same trend. Scary...

      Not really...nobody expects this trend in processing performance to continue forever. There are in fact provable limitations given things such as the number of atoms available in the universe that can be harnessed for computation... ignoring little details like quantum computation and such :-). These limitations may seem "out there" but in fact they aren't nearly as unrealistic as you might think. Exponentials grow FAST.

      It's trivial to continue scaling the computing requirements required to break encryption schemes by simply adding more bits. That is, assuming the encryption/hash scheme itself doesn't have some fatal flaw which may allow for a sub-exponential cracking algorithm.

    9. Re:Don't the laws of computing make it... by cpt+kangarooski · · Score: 2, Funny

      Truly random? Well, you could always buy a copy of "A Million Random Digits" but I still don't think it would work out well for you. ;)

      --
      -- This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
    10. Re:Don't the laws of computing make it... by dmaxwell · · Score: 4, Interesting

      This is all true. However, you have to think about how long you need to keep something a secret. Let's say for the sake of argument that you confessed to a murder and encrypted it with single-DES in 1979. Anyone who got a hold of an intercept of it between then and now has evidence of a felony with no statute of limitations. Single-DES has been practically crackable by brute force since at least the mid-90s.

      More realistically, what if the subject of the communication was a long standing bank account or evidence of a government scandal?

      Advances in computing power can work for attackers who stand to profit from a long-delayed payoff. Advances in quantum computing will lower the expiration date of protection for anything you encrypted in the past even more. The further in the past the ciphertext was made, the weaker it gets. This will be generally true for any arbitrary past date and future date. No ciphertext can be considered indefinitely secure. We can only assume that reasonable protection only exists for the short-to-medium term.

      Fairly long OTP messages may be one exception.

    11. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      Quantum Computing could possibly be the machine needed to do that calculation. Of course, then you're not actually _doing_ a calculation, but you still get the answer.

    12. Re:Don't the laws of computing make it... by AndrewRUK · · Score: 5, Interesting

      No, it's the OTP key that needs to be random. The main problems with OTP are that the key needs to be as long as the message, can only be used once, and a secure channel is needed to distribute the key.

      If you do OTP right, it is unbreakable* because the only possible attack is to brute force it by trying every possible key, and trying every possible key on an n character cyphertext gives you every possible n character plaintext, with no way of telling which one is right. (That is, if you had the 16 character cyphertext "bhgisngukfgxd gyt" you would get all possible 16 character strings as possible plaintexts, including "attack US friday", "shoot Osama soon" and "I like chocolate", and you would have no way to tell which was the actual plaintext.)


      *except for rubber-hosing, but that affects all crypto systems, and is a weakness of the people involved, not the crypto.

    13. Re:Don't the laws of computing make it... by smclean · · Score: 1

      Not really, because you could still guess what the pad is on your first shot. It's not likely, but its not "impossible".

      --

      "'Yrch!' said Legolas, falling into his own tongue."

    14. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      Ah, but what if your new CPU is 40 orders of magnitude faster? Eh? Then your 256 bit key will be broken in only a few weeks!!

      Intel has 'em, but they're slowly metering them out in order to maximize profits.

    15. Re:Don't the laws of computing make it... by Gorath99 · · Score: 4, Interesting
      We can only assume that reasonable protection only exists for the short-to-medium term.

      Fairly long OTP messages may be one exception.

      Actually, all OTP messages are an exception. For every plaintext P and ciphertext C, there is a key K, such that an OTP of P with K will product C. Hence, if you try all possible keys on a ciphertext of length l, you'll find all possible plaintexts of length l. So, if you have a ciphertext of length 3, then there are keys for "bad", "moo", "can", "has", "aaa", "bbb", "ccc", etc., etc. There's no way for you to know what the original was.
    16. Re:Don't the laws of computing make it... by prichardson · · Score: 1

      Ahh, but when key size starts surpassing the size of data it will soon become feasible to, instead of guessing the key, to guess the actual data. Obviously this would only be possible with asynchronous encryption though.

      --
      Help I'm a rock.
    17. Re:Don't the laws of computing make it... by Mr.+Slippery · · Score: 4, Insightful
      Not really, because you could still guess what the pad is on your first shot. It's not likely, but its not "impossible".

      The beauty of the OTP is that it doesn't matter if you guess what the pad is - you can't tell you've got it rigbt.

      Given a cyphertext of length 9, there are keys that will decrypt it to read "Kill Bush", "Save Bush", "FuckOsama", "Bomb Iraq", "Love Boat", "qwertyuio", "!@#3fst9$-", and every other 9 character string. Since the OTP is random, all these keys have equal probability of being the correct one.

      --
      Tom Swiss | the infamous tms | my blog
      You cannot wash away blood with blood
    18. Re:Don't the laws of computing make it... by Zangief · · Score: 1

      There isn't a US law banning the use of keys longer than X-bits? Then, US should ban faster computers!:)

    19. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      ...except that guessing the pad is equivalent to guessing the message, and neither could be verified. For example, the string

      aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

      could be decrypted to

      have a nice day

      or

      attack at dawn

      or any other message shorter than the encrypted data. For every single possible message, there is a possible key that decrypts the above into the message.

    20. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      Or are restrained by something other than thermo-dynamics... I thought quantum computers were supposed to make things like this trivial... if only we could get 256 quantum bits to stick together, and then stick together long enough to do anything useful.

    21. Re:Don't the laws of computing make it... by Magic5Ball · · Score: 1

      There's no way for you to know what the original was.

      Except that kju, tqz, and wmk are not conventional words in the english language, while cat, bad, and dog are. Longer strings make isolating the correct original easier, as there are fewer possible correct permutations according to syntax and context (which you know or have an idea of).

      --
      There are 1.1... kinds of people.
    22. Re:Don't the laws of computing make it... by yourmom16 · · Score: 1

      Or you could just not even look at the ciphertext and guess the plaintext on your first shot. That isn't any less likely than guessing the key

      --
      "We have got to make Stan understand the importance of voting, because he'll definitely vote for our guy." - South Park
    23. Re:Don't the laws of computing make it... by Phleg · · Score: 1

      This quote makes me feel extremely insignificant and tiny. If we simply cannot count up to 2^256, this implies that we simply cannot count to 10^256. Think about that. It is impossible, by our current knowledge of physics, to count up to nothing more than a 256-digit number (and realistically-speaking, significantly lower than that, considering that's just what's implied by a 256-bit limit).

      --
      No comment.
    24. Re:Don't the laws of computing make it... by wizzardme2000 · · Score: 2, Informative

      According to my quick (and quite possibly erroneous) math, 2^256 is about 10^77. Just for your records.

      --

      Toast lands jelly down. If you jelly both sides of a piece of toast, it will hover in a state of quantum indecision.
    25. Re:Don't the laws of computing make it... by dmaxwell · · Score: 0

      There are only so many possible decrypts that make sense in the first place. One component of an OTP attacking machine would a natural language parser. Decrypt candidates with "bad" and "moo" in them would definitely merit further analysis. Furthermore, context will rule out a hell of a lot more. If you're monitoring hell I dunno... neo-nazis you suspect of a string of bank robberies then decrypt candidates with strings like "case", "joint", and "heil the furher" would be mighty interesting.

      The possible number of messages in a short message is not insurmountable with current technology. This is especially true if you are seeking "intelligence" rather than "evidence".

      Of course, given a sufficiently long message text none of this will work. Short messages are still securable for that matter. They just have to be padded before and after with large and random amounts of pad.

    26. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      Not so. For any encrypted message with a length of n, there's a OTP key to decrypt it to any arbitrary message you like of length n.

      You can't tell the "correct original" apart from any arbitrary message of the same length.

    27. Re:Don't the laws of computing make it... by anotherone · · Score: 1

      there are regulations about exporting crypto methods with keys longer than x bits, and there are also regulations about exporting computers that are y powerful.

      --
      Username taken, please choose another one.
    28. Re:Don't the laws of computing make it... by menscher · · Score: 1
      you could still guess what the pad is on your first shot

      Incorrect. How would you know that you had guessed correctly? If my encrypted message is FJKSCIWUGAPN it could be "ATTACKATDAWN" or "SMCLEANISDUMB" or any other message of that length and you would have no way of knowing which. Hence it is impossible to break.

    29. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0
    30. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      No, not true. Because, in an OTP system, the key never repeats, every "decrypt candidate" could contain "bad" and "moo" in each position. However, finding those words in any given position wouldn't give you any hint as to the rest of the ciphertext.

      This is not like a cryptogram. The possible number of messages in a short message is absolutely insurmountable with any technology short of recovering the initial key (or finding a repeat in the keying material.) Brute-forcing an OTP will give you every possible letter in every possible position, and thus every possible piece of text expressible in the number of characters you have. In fact, decrypting this post with the appropriate OTP will result in all the nuclear missile launch codes and the passwords for high-level military systems.

    31. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      you're insane. the only information in an OTP stream is its length. you might as well 'crack' a message whereby a random 1 or 0 gets written for each character I type. If I'm a terrorist and type twenty-one characters, sure you can try to analyze every twenty-one character message I'm likely to have typed based on my patterns of punctuation, what I'm likely to say, etc, and then use a "natural language parser" to only spit out the ones that make sense. But if you think that this is somehow information you're "cracking" from the random stream, you're delusional!

    32. Re:Don't the laws of computing make it... by zelyan · · Score: 1

      this suggests that the best encryption would be a combination of a one-time pad, bad grammar, and random, touretic additions.

      'we hulad caced the joint later earlier, and but then but realized what there was but no security, so it seemed hap fabby like fabby a goood time to taake teh money und run.'

    33. Re:Don't the laws of computing make it... by imlepid · · Score: 2, Interesting

      Well, I like this quote, (I don't remember it from my reading of Applied Cryptography, guess I'll have to re-read the book more carefully) but it assumes something which is impossible, that is, perfect algorithms. A more interesting quote for this particular news post would be any of the many from Schneier's book Secrets and Lies . The whole point of the book, as explained in the Preface, was that Schneier assumed when he wrote Applied Cryptography that it would help people develop secure applications, however what eneded up happening was people peppered cryptography into their software assuming doing only that would make their software secure. The reality is, in most software, the is not properly implimented and therefore not secure.

      Secrets and lies discusses security not cryptography and does and excellent job at it. Although I had the vegue concept that no security system is really secure before I read the book, I came away from my reading thanking Schneier for drilling the idea into my head so that I would not be naive. It is the best book on security I have read and I recommend it to anyone interested in this facinating field.

    34. Re:Don't the laws of computing make it... by PhiRatE · · Score: 5, Informative

      You're so wrong it's funny :)

      Sorry, didn't mean to mock, it's just amusing whenever these one-time pad things come up and everyone starts jumping up and down yelling "unbreakable" and others start going "no, 'cos, like, we could brute-force it.."

      You can't brute-force a one-time pad. That's the point. There are many weaknesses to OTP, related to key exchange, but you can't brute force it, because you have no way of knowing if you're right, or even if you're close. The possible set of plaintexts from a properly OTP encrypted message is the complete set of possible plaintexts of that size (or smaller, plausibly).

      Let us take the following ciphertext:

      aaa

      I have encrypted this with a one time pad. Now, it's a pretty short message. We could brute force all the possible combinations on your regular computer pretty much instantly. Anyone care to guess what the message might be?

      Of course not, because it could be *any* 3 letter combination, assuming that I'm sticking to letters. Any attempt to contextually analyse it is flawed because you will never be able to prove you got it right. Let's say that we know the message is english, and we can therefore reduce the number of possibilities down to all 3 letter english words.

      Woohoo. It doesn't help, it doesn't get us any closer to knowing exactly what it is, because there is no next step, the only information that can aid us in the decryption of a one time pad is information from "outside" the decryption. In this case, two items of information are available to us, the length (3 letters) and the fact that it is english, but the actual ciphertext itself is of no value whatsoever. It doesn't matter if those a's were z's or q's or anything else, we can't do anything with them unless we have the OTP.

      "Decrypt candidates with "bad" and "moo" in them would definitely merit further analysis"

      This is always the point where things go wrong :) there *is* no further analysis you can make. lets take the following:

      abskjhsglkjlssdkglkjsfdlkgjfld

      Now lets imagine that we knew it was coming from bank robbers. Sweet, so, what can we do? again, the *only* information we have is the length. It could say this:

      I am going to rob a bank in WA

      Or this:

      I am going to rob a bank in CA

      Or this:

      I am going to rob a bank in NZ

      And there is no way to prove what it actually says at all. It might say:

      I am going to buy some flowers

      Again, you'll never know unless you have the key, there's just no way to tell.

      --
      You can't win a fight.
    35. Re:Don't the laws of computing make it... by Lehk228 · · Score: 1

      such as the number of atoms available in the universe that can be harnessed for computation

      using clever ways to manipulate data you can have an atom hold more than one bit, i can think up two binary bits to give it right away, (spin [clockwise/CounterClockwise], vibration [vibrating above x magnatude, not vibrating above x]) as well as one trinary (charge -1, 0 , +1)

      --
      Snowden and Manning are heroes.
    36. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0
      Further to this: before encoding something with a OTP, you would want to compress it. The reason for this is twofold: the compression reduces the size of the message, making it quicker to send, as well as reducing the amount of random data needed for the encryption; and it also means that the redundancy in the English language is not a useful starting point for cryptanalysis.

      However, one time pads have one major requirement: you must never re-use the random data which which you encrypted a message. Doing so opens you up for a slew of attacks, and the odds are extremely good that your message will be cracked. This requirement, along with the problem of distributing the random data to the recipient of the message, make OTPs essentially useless for all but the most security paranoid (such as various governments, for example.)

      Oh, and one other thing: the random data you use for encoding the message has to be truly random. "Random looking" data isn't good enough. You need, in short, as much information in the key as there is in the original message (information in the cryptography sense, that is.) Generating, distributing, and keeping secure that much random data is a decidedly non trivial task.

    37. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 1, Funny
      This quote makes me feel extremely insignificant and tiny.


      Shit. I just put some porn on the big screen downstairs and I feel insignificant and tiny.
    38. Re:Don't the laws of computing make it... by Lehk228 · · Score: 1

      a OTP message is actually anything less than or equal to the length, as a messagwe could be padded with spaces (or random junk, doesn't matter with OTP). possibly longer as well if a message is compressed first

      --
      Snowden and Manning are heroes.
    39. Re:Don't the laws of computing make it... by PitaBred · · Score: 2, Informative

      This is true iif (if and only if) there are no weaknesses in the hashing algorithm. If there are, then we start running into a much, much smaller solution space that's necessary to search.

      He's got a point, but he's assuming many, many things.

    40. Re:Don't the laws of computing make it... by alanh · · Score: 3, Informative

      This shows a fundamental misunderstanding of OTPs. Any message of n bits could be encoded as any other message of n bits. Even your "natural language parser" doesn't help. Take an arbitrary "short" message: "A". It is equally likely that it could decode to "I" or "A" or "Z" or any other 1 character string. It doesn't matter if you know what I'm talking about.

      OTPs are provably secure, as long as the key isn't compromised, e.g. by reusing it....

      Here is a good link that answers the question: Why Are One-Time Pads Perfectly Secure?

      -a

      --
      - AlanH
    41. Re:Don't the laws of computing make it... by hoeferbe · · Score: 4, Interesting
      Phleg wrote:
      Think about that. It is impossible, by our current knowledge of physics, to count up to nothing more than a 256-digit number...

      Want something that will really blow your mind? Think about this: your computer monitor can display anything someone can take a picture of with a digital camera. Anything that is visible, can have its picture taken and thus can be displayed in your 1024x768 32-bit color monitor.

      Now, one would normally think that there is an infinite number of possible pictures that one can take in our universe. Heck, just using a paper clip on a table could result in thousands of unique pictures considering the different angles, lighting, etc. Every situation, every person, place or thing you see during your lifetime could have its picture taken and displayed on that monitor! The near-infinite amount of photos that could be displayed on your computer monitor would encompass every visible event from the past, things going on right now, and events in the future. Some of these photos would be real, most would not be.

      Above, I assume our computer monitor is 1024x768 & 32-bit color. To see all these pictures -- here & now, in the future on Mars, in a pretend past where Julius Caesar isn't murdered -- all one needs to do is program their computer to serially go through every pixel & color combination. Although it would take a very, very, very long time, eventually every pixel & color combination will be shown, thus showing everything that can ever be seen. A photograph of everything that could ever be seen, and even many situations that didn't/won't happen will be shown on that computer monitor. EVERYTHING.

      Of course, many more times that in just random pixels & colors will be shown, too.

    42. Re:Don't the laws of computing make it... by Unnngh! · · Score: 1
      One could also potentially derive data from certain combinations of atoms, e.g. molecular structures. So you can end up with a plethora of data far outnumbering the sum of their components.

      People often think that we will reach practical limits in things like:

      • computing
      • air speed
      • landspeed, particularly NHRA stuff
      • size of the universe (was much smaller until hubble)
      Etc. While there probably are limits, I personally doubt that we're even close on the computing end of things.
    43. Re:Don't the laws of computing make it... by RedWizzard · · Score: 4, Informative
      Longer strings make isolating the correct original easier, as there are fewer possible correct permutations according to syntax and context (which you know or have an idea of).
      But it's not enough, because you still can't tell which variation is correct. E.g. a 19 character message can be decoded as both:
      "I killed John Smith"
      "I did not kill John"
      There is no way to tell which is the real plaintext. Since every single 19 character sequence will appear, every 19 character English sentence and every 19 character sentence in every other language that uses the same character set needs to be checked. You can eliminate as many garbage results as you like, there'll still be a huge number of non-garbage results that you have no way of choosing between. In fact, you might as well not even look at the cipher text - it can tell you nothing. Just enumerate all 19 character sentences and work from there.
    44. Re:Don't the laws of computing make it... by bloo9298 · · Score: 2, Interesting

      Even better, the pigeon-hole principle tells you that infinitely many different events will have the same picture.

    45. Re:Don't the laws of computing make it... by bigberk · · Score: 4, Informative
      When used properly, One Time Pad is impossible to break. Of course, carrying around enough truely random characters/bytes for all of your encrypting needs without getting caught is another story

      Yes, the OTP is the way to go -- sequence of random bytes, which you simply XOR with your message. Dump out /dev/random to a CD-R or DVD-R, make a copy for your friend, and you've both got nice one-time-pads that will probably last you quite some time.

      What's interesting is that quantum physics offers several new things that will help implement excellent OTP systems... over existing fiberoptic telecom systems, no less! This is really exciting stuff.

      First, quantum physics offers us a new way to generate truly random numbers for your OTP. Your rand() function sucks, I guarantee you. /dev/random is very good, but slow... /dev/urandom uses hash mixing so isn't nearly as random. Both rely on physical events, time intervals, and possibly thermal noise. In comparison, a quantum random number generator in theory gives you random bits that are totally un-influencable.

      So now you've got your random bitstream... what do you do with it? Well, you hook up the OTP stream to a laser-based system that sends essentially single photons down an optical fiber. The idea being that single photons are either received by your friend or intercepted (absorbed) by your enemy. They can't be copied. Anyway several factors complicate this process but the basic idea remains. It's for real.

      So your computer can generate a random OTP, securely send it to your friend (without fear of interception), and now you can both exchange classical data encrypted with your OTP. Repeat as necessary. If the physics behind this is sound, we shouldn't have to worry about algorithmic attacks in the future. Here's a rather complete article describing everything.

    46. Re:Don't the laws of computing make it... by mindfucker · · Score: 3, Funny
      now, the annual energy output of our sun is about 121 * 10^41 ergs. this is enough to power about 2.7 * 10^56 single bit changes on our ideal computer; enough state changes to put a 187-bit counter through all its values. if we build a dyson sphere around the sun and captured all of its energy output for 32 years, without any loss, we should power a computer to count up to 2 ^ 192. of course, it wouldn't have the energy left over to perform any useful calculations with this counter.

      but that's just one star, and a measly one at that. a typical supernova releases something like 10^51 ergs. (about a hundred times as much energy would be released in the form of neutrinos, but i let them go for now.) if all this energy could be channeled into a single orgy of computation, a 219-bit counter could be cycled through all of its states.

      these numbers have nothing to do with the technology of the devices; they are the maximum that thermodynamics will allow. and they strongly imply that brute-force attracks against 256-bit keys will be infeasable until computers are built from something other than matter and occupy something other than space.

      bruce schneier, applied cryptography, p 158

      Okay Bruce, guess I'll have to take your word for it...
    47. Re:Don't the laws of computing make it... by +MG · · Score: 5, Insightful
      Indeed, here's another novel argument from Bruce Schneier's book.... in regards to the strength of 256-bit encryption: now, the annual energy output of our sun is about 121 * 10^41 ergs. this is enough to power about 2.7 * 10^56 single bit changes on our ideal computer; enough state changes to put a 187-bit counter through all its values. if we build a dyson sphere around the sun and captured all of its energy output for 32 years, without any loss, we should power a computer to count up to 2 ^ 192. of course, it wouldn't have the energy left over to perform any useful calculations with this counter.
      That is an erroneous conclusion based upon the (incorrect) assumption that a small amount of energy (kT) must be dissipated for each elementary computational step. If the computation is carried out using a reversible (classical) computer, this is not the case. Thermodynamics does not place any such restriction on computation. On the other hand, quantum mechanics does place constraints on the speed of a classical computer.
      For more fun see Ultimate physical limits to computation by Seth Lloyd
    48. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      One step further, like spam messages with random words and characters in the message, of course you could probably train to ignore the beginning and the end, but you could also say, agree to ignore every other paragraph or sentance, and then inject gibberish psuedo sentances and characters, so that even a successful attack will look wrong, unless carefully examined, and hopefully only make apparent sense to the intended recipient(s).

    49. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      There is still a finite number of atoms in the universe right? As much as you can make one atom store or compute as data there isn't an infinite amount of atoms to work with.

    50. Re:Don't the laws of computing make it... by swillden · · Score: 4, Informative

      but it assumes something which is impossible, that is, perfect algorithms.

      No, it doesn't. Schneier is discussing the computational complexity of scanning a uniform keyspace, which depends only on key size and doesn't touch on algorithmic quality in the slightest. Now, if he were talking about the security of 256-bit ciphers against any attack, rather than just against brute force, then the quality of the algorithm would indeed be important.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    51. Re:Don't the laws of computing make it... by flonker · · Score: 1

      this suggests that the best encryption would be a combination of a one-time pad, bad grammar, and random, touretic additions.

      'we hulad caced the joint later earlier, and but then but realized what there was but no security, so it seemed hap fabby like fabby a goood time to taake teh money und run.'


      So that explains those emails from Nigeria!

    52. Re:Don't the laws of computing make it... by dowlingw · · Score: 1

      We are quickly reaching the limits of silicon based technology. You can only push data so fast through the circuits we are currently using, and we're in a mind state at the moment where we are trying to push lots of data faster and faster. I beleive that RISC instruction sets don't suffer this problem as badly, as they don't do as much work per instruction anyway? Not quite sure how that works.

      Also, with using individual atoms for computing, whilst it would be nice, it's also impossible(?) - given that the more accurately you try to measure one property of an atom, the less accurately you can measure it's other properties. There's a name for this, but I can't remember.

    53. Re:Don't the laws of computing make it... by Spy+Hunter · · Score: 3, Insightful
      Also, with using individual atoms for computing, whilst it would be nice, it's also impossible(?) - given that the more accurately you try to measure one property of an atom, the less accurately you can measure it's other properties. There's a name for this, but I can't remember.

      It's the Heisenburg uncertainty principle, and it doesn't rule out computing with individual atoms. It just means that computing with individual atoms will work a lot differently than it does with normal, mostly deterministic electronics. The field of quantum computing is all about exploiting the weird quantum properties of atoms to do even more computation than would be possible if they were completely deterministic little point particles.

      --
      main(c,r){for(r=32;r;) printf(++c>31?c=!r--,"\n":c<r?" ":~c&r?" `":" #");}
    54. Re:Don't the laws of computing make it... by 1u3hr · · Score: 1
      people often think that we will reach practical limits in things like:...size of the universe (was much smaller until hubble)

      Actually, I thought the age of the universe (simply related to the size) used to be estimated as about 17 billion years; last I heard was 13.5. (Of course, the actual most distant observed object is further away/older with Hubble, unless you count the 3 degree background radiation from the Big Bang, observed in 1965.)

    55. Re:Don't the laws of computing make it... by FrankHaynes · · Score: 1

      Wow! I feel a lot better about my 2048-bit PGP key from back in the day.

      This article would make me worried that I can't remember the passphrase, except that I had to swallow the floppy to avoid being thrown in jail for trafficking in munitions. :-(

      --
      slashdot: A failed experiment.
    56. Re:Don't the laws of computing make it... by Stephen+Samuel · · Score: 1
      Decrypt candidates with "bad" and "moo" in them would definitely merit further analysis. ....

      This only works if you have some sort of 'book' of possible pads or some way of generating pads from limited data (( read: 'key' in which case it's not a real pad )). If the pad is really based on truly random data, then the fact that you managed to extract some text from the cypher text means nothing.
      It's like saying that 37+63=100 says something about 37 (or 45, being the number following 37 in the cyphertext)

      --
      Free Software: Like love, it grows best when given away.
    57. Re:Don't the laws of computing make it... by ivarneli · · Score: 5, Informative

      Some quick numbers on this:

      First let's start with something that might return some "sensible" (i.e. not ridiculously high) numbers. On the Apple II, Basic programmers had access to an incredibly low resolution mode with 40x40 pixels and 16 colors. Assuming we only use 2 colors (say, black and white), there are:

      2^(40*40) = 4.44 x 10^481 possible screen images.

      Whew! Already far beyond the 2^256 limit discussed. But out of curiosity, we can look at some other numbers. Using the full 16-color support of this low-res mode:

      16^(40*40) = 3.90 x 10^1926

      How many possible terminal screens are there, assuming only alphanumeric (and space) characters?

      (26+26+10+1)^(80*24) = 5.41 x 10^3454

      And some other modes of interest:

      320 x 200, 2 colors: 8.31 x 10^19265
      320 x 200, 256 colors: 2.27 x 10^154127
      640 x 480, 256 colors: 2.07 x 10^739811

      After this, direct computation was far too slow, but we can get rough estimates:

      640 x 480, 16-bit color:
      640*480*log10(65536) = 10^1,479,622

      800 x 600, 16-bit color:
      800*600*log10(65536) = 10^2311910

      1024 x 768, 16-bit color: 10^3787833

      And finally...

      1024 x 768, 32-bit color: 10^7575677

      Yep, a 1 with 7.5 million zeroes behind it. So we may all have to wait awhile before we see a computer sequentially generate a picture of alternate post-Caesar Earth. Still, an interesting thought.

    58. Re:Don't the laws of computing make it... by Lehk228 · · Score: 1

      but there is an infinite number of ways to arrainge them, allowing more and more complex representations of data

      --
      Snowden and Manning are heroes.
    59. Re:Don't the laws of computing make it... by Sinner · · Score: 4, Interesting

      Ummm... 1024x768x32bit = 25165824 bits. Cycling through these bits is exactly equivalent to the "counting up" problem you're responding to. Since we've already established we can't count that high, there's no danger anyone is ever going to show you ever possible picture. Given the thousands of possible variations of goatse guy, this is probably a good thing.

      What should make you feel small is that physicist have figured out a way to count all the possible states for a particular volume of matter (assuming an upper bound on temperature, if that makes any difference). That means the entirety of the observable universe has only a finite number of possible states.

      If the unobservable universe is infinite, and if states are distributed probabilistically (and why wouldn't they be?), that means that your hypothetical world where Julius Caesar wasn't murdered actually exists, out there, somewhere, far out of reach.

      --
      fish and pipes
    60. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      You shouldn't feel so great: public key bit sizes are not at all comparable to private key bit sizes. It takes much less than 2^2048 steps to crack a 2048 bit RSA key (though it still takes too many to be practical today).

    61. Re:Don't the laws of computing make it... by ocelotbob · · Score: 1

      Ah, but RSA is a lot less secure per bit than standard encryption. Because you're dealing with prime numbers, you can automatically get rid of half the keyspace straight out. Then you can get rid of a third of the remaining numbers, etc, and eventually, you can get to a comparably reasonable keysize to brute force. RSA has already been cracked. It's just that very large prime numbers, like a 2048 bit number, are still mathematically too expensive to be feasible to brute force. IIRC, we're up to the low 200 bits as far as RSA private keys that are considered unusable. 2048 is most likely going to be cracked within the next couple decades, even without quantum crypto.

      --

      Marxism is the opiate of dumbasses

    62. Re:Don't the laws of computing make it... by DavidpFitz · · Score: 2, Informative
      When used properly, One Time Pad is impossible to break.
      Not quite true - a one time pad cipher where the key is as long, or longer than the message is impossible to break.

      The phone line between the Kremlin and the White house is enciphered this way.

      D.
    63. Re:Don't the laws of computing make it... by God!+Awful+2 · · Score: 1

      Suppose your faster CPU inspires you to move from 128-bit keys to 256-bit. What happens to the guy trying to decrypt your message? He now has to work 68,056,473,384,187,692,692,674,921,486,354,000,000 times as long, even if he buys the 5x faster CPU. Ouch!

      Yeah, but unfortunately he can still crack your 8 byte, 5 bit of entropy, password 4-5 times as fast. :-)

      -a

    64. Re:Don't the laws of computing make it... by RetroGeek · · Score: 1

      All very interesting but do we really need that level of resolution?

      Taking the goatse guy as an example, do we really care that the pimple on his ass is a lighter shade of red?

      Um, sorry about the mind pictures.....

      Anyway, the human mind processes images very well, so we do not really need to go through every possible combination to get the gist of the picture on the screen. Moreover we could do very well with just mono-chrome pictures.

      --

      - - - - - - - - - - -
      I am a programmer. I am paid to produce syntax not grammar. Deal with it.
    65. Re:Don't the laws of computing make it... by CaptnMArk · · Score: 1

      I have a picture sized 2048x1536 that you can't see.

    66. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      There's no way for you to know what the original was.

      Except that kju, tqz, and wmk are not conventional words in the english language, while cat, bad, and dog are. Longer strings make isolating the correct original easier, as there are fewer possible correct permutations according to syntax and context (which you know or have an idea of).


      Nope, there are more possible correct permutations, they're just a smaller fraction of the total number of permutations.
      With the one time pad you cannot extract knowledge about the plaintext from the cyphertext if you do not have the key (except information about the message length). The one time pad cannot prevent you from learning about the contents of the plaintext through methods that do not involve the cyphertext (such as english grammer). But if you do not have the key, the cyphertext will not help you.

    67. Re:Don't the laws of computing make it... by dackroyd · · Score: 2, Funny

      If the computation is carried out using a reversible (classical) computer, thermodynamics does not place any such restriction on computation.

      I would be _very_ interested in buying any machine off you that is not subject to the laws of thermodynamics.

      --
      "Free software as in beer, copy protection as in racket" - Telsa Gwynne
    68. Re:Don't the laws of computing make it... by Simon+Garlick · · Score: 1

      > Suppose your faster CPU inspires you to move from 128-bit keys to 256-bit. What happens to the guy trying to decrypt your message? He now has to work 68,056,473,384,187,692,692,674,921,486,354,000,000 times as long, even if he buys the 5x faster CPU.

      Which is why it's a lot easier to buy a gun instead and hold it to your wife's head while asking for the passphrase. The algorithm is the HARDEST part of any cryptosystem to attack -- the fleshy bits are the easiest.

    69. Re:Don't the laws of computing make it... by nikster · · Score: 1
      these numbers have nothing to do with the technology of the devices
      ...unless you have a quantum computer and do it in minutes. for pretty much any length key.
    70. Re:Don't the laws of computing make it... by cowbutt · · Score: 1
      Secrets and lies discusses security not cryptography and does and excellent job at it. Although I had the vegue concept that no security system is really secure before I read the book, I came away from my reading thanking Schneier for drilling the idea into my head so that I would not be naive. It is the best book on security I have read and I recommend it to anyone interested in this facinating field.

      Now read Security Engineering by Ross Anderson. ;-)

      --

    71. Re:Don't the laws of computing make it... by alex_tibbles · · Score: 1

      ... and that's before you take account of any possible padding :) (ie the plaintext can be any length 19, assuming no compression).

    72. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      Yes he can...all he has to do is put together a collage of 4 of his 1024x768 pictures.

    73. Re:Don't the laws of computing make it... by photon317 · · Score: 1


      The big problem with this is the physical medium, the fiber. Right now, I can do a reasonably secure openssl session with any of god knows how many millions of hosts on the internet. You can't replace my current cryptography technology with your quantum otp system unless you give me direct fiber links from my PC to all of those millions of others. And another set of millions of fibers to my cellphone and laptop too while you're at it. I'm sure certain government organizations, banks, and large corps will use quantum otp styled solutions for certain important point-to-point links, bu tit's just not practical for general deployment.

      --
      11*43+456^2
    74. Re:Don't the laws of computing make it... by dm(Hannu) · · Score: 1
      /dev/random is very good, but slow...

      Besides, /dev/random probably uses some good cryptographic hash function (MD5 or SHA-1) internally to distill random bits from less random sources. And as anyone who has RTFA knows, both of them are broken ;-)

      (I know, I know, even if they are subject to collisions does not mean that they are bad PRNGs... except if someone finds a really clever way to manipulate the entropy sources used by /dev/random...)

    75. Re:Don't the laws of computing make it... by lachlan76 · · Score: 1

      except for rubber-hosing, but that affects all crypto systems

      Not if I destroy my copy of the key after encrypting the message, and do not know who the recipient is, and the plaintext is in a language that I do not speak or is an already encrypted ciphertext. You can't find out anything from the nothing that I know.

    76. Re:Don't the laws of computing make it... by 26199 · · Score: 1

      OTPs are next to useless compared to public/private key systems... the fact that they're unbreakable means nothing next to the requirement that you must have a secure channel for the key. Even with a quantum-based secure channel... why not just use that to send the message in plaintext, if it's secure?

      Whereas public/private key systems allow you to securely send data without any prior agreements beyond those necessary to establish identity. The main disadvantage is that each system might conceivably become breakable at some point in the future...

      If that worries you, I would suggest sending a few gigabytes of encrypted data every day, most of it junk. They'll run out of storage space sooner or later :-).

    77. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0
      • That is an erroneous conclusion based upon the (incorrect) assumption

      No, it is a valid conclusion based on an incorrect assumption.
    78. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      Of course. This is implied in "when used properly". In fact, if your key is shorter than the message it isn't one time pad at all!

    79. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      Uhm.

      The *first* example he gave was 40x40 monochrome...

    80. Re:Don't the laws of computing make it... by PenguiN42 · · Score: 1

      and if states are distributed probabilistically (and why wouldn't they be?)

      Does "why" or "why not" ever come into the picture of how the universe is set up? How is it any more than "is it" or "is it not"?

      I mean, it's possible that they're not -- what can you say beyond that? You can have a repeating universe, or a random universe with states that just never come up. Why wouldn't it be like this?

      --
      The following sentence is true. The preceding sentence was false.
    81. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      I don't have a reference, but I recall that Schneier has acknowledged this mistake. BTW, I doubt it was a 'novel argument' when he wrote Applied Cryptography.

    82. Re:Don't the laws of computing make it... by WalksOnDirt · · Score: 1

      Unless space is quantized, as has been hypothesized.

      --
      a,e,i,o,u and sometimes w and y (at be if of up cwm by)
    83. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 1, Informative

      Well, what the "quantum-based secure channel" gives you is a way to transmit completely random bits; it's not possible to control or predict those bits. So you can't use it to send your message. In any case you're right about the rest.

    84. Re:Don't the laws of computing make it... by mikeee · · Score: 1

      No, the point is that, strangely, it isn't computing per se that necessarily takes energy, it's *forgetting*. A computer that can be run backwards to reverse the calculation has no thermodymanic limit on its minimum power consumption.

    85. Re:Don't the laws of computing make it... by Phisbut · · Score: 1
      And since processors are supposed to double their speed every 18 months

      If I'm not mistaken, that is what is known as "Moore's law" (and it deals with the number of transistors on a CPU rather than the frequency, but we can suppose doubling the number of transistors doubles the speed). However, after having been obeyed during roughly 30 years (from 1972 to 2002), Moore's law has failed lately, when about 30 months have passed from the introduction of the 2.0GHz CPU and the 3.4GHz, which is not quite the double now.

      We seem to have reached a certain limit in making things smaller and smaller, and silicon CPUs won't grow much faster in the near future. We'll need some new technology (quantum processors, photon processors) to drastically increase frequency now.

      --
      After 3 days without programming, life becomes meaningless
      - The Tao of Programming
    86. Re:Don't the laws of computing make it... by dackroyd · · Score: 1

      A computer that can be run backwards to reverse the calculation has no thermodymanic limit on its minimum power consumption.

      Translation - a computer that isn't subject to the laws of thermodynamics can be run without subject to the laws fo thermodynamics.

      As I said, I would be very interested in seeing an actual working version of this machine.

      it isn't computing per se that necessarily takes energy

      From the paper you linked to "to perform an elementary logical operation in time delta t requires an average amount of energy E *h/2*delta t.". Think about it - you're deliberately changing the state of a machine. No matter what type of machine it is that will consume energy (work) that cannot be recovered at 100% efficiency. Otherwise you've created a perpetual motion machine.

      --
      "Free software as in beer, copy protection as in racket" - Telsa Gwynne
    87. Re:Don't the laws of computing make it... by HuguesT · · Score: 1

      This is still an interesting calculation, because no one has figured out yet how to put together a reversible computer in practice. Today's real computers perform irreversible computations and are affected by Shneier's limit.

      Now a reversible computer would require not forgetting any previous computations, i.e. requires humongous amounts of storage.

    88. Re:Don't the laws of computing make it... by Bill+Hayden · · Score: 1
      Let us take the following ciphertext:

      aaa

      I have encrypted this with a one time pad. Now, it's a pretty short message. We could brute force all the possible combinations on your regular computer pretty much instantly. Anyone care to guess what the message might be?

      FP!

      --
      Protect your browser with the Force Safe Search add-on
    89. Re:Don't the laws of computing make it... by maccle · · Score: 1

      Well, what is available today is somewhat limited. The article you link to states a current maximum dedicated transmission distance of 50Km. There are also sizable holes in what Qcrypto can do, and lots of areas where it is theoretically fantastic, but no-one has ever set out the red rag by sticking any Microsoft IP behind it and publically declaring it 'safe'. Still, the maths are fairly straight forward, and assuming the kit can be made reliable enough, then this certainly looks like the way forward for OTP and key distribution. Maccle P.s. Hmm... Magicq... they are particularly vague, but I really didn't know anyone was comercially offering anything even remotely linked to this yet...

    90. Re:Don't the laws of computing make it... by +MG · · Score: 1
      From the paper you linked to "to perform an elementary logical operation in time delta t requires an average amount of energy E *h/2*delta t.". Think about it - you're deliberately changing the state of a machine. No matter what type of machine it is that will consume energy (work) that cannot be recovered at 100% efficiency. Otherwise you've created a perpetual motion machine.

      You have quoted a quantum (not thermodynamic) limit. You can tell by the appearance of Planks constant and non-appearance of temperature or Boltzmann constant. This quantum limit restricts the maximum rate of computation based upon the total energy (not the dissipated energy) of the computer.

      a computer that isn't subject to the laws of thermodynamics can be run without subject to the laws fo thermodynamics.

      A reversible computer, in accordance with the laws of thermodynamics, can be run without dissipating energy. Read.

    91. Re:Don't the laws of computing make it... by mikeee · · Score: 1

      Well, it wasn't me that linked to that paper. But try this for an overview.

      With a reversible machine you aren't changing its state in that sense; it will still use energy, but it's not clear there's a hard lower bound.

      Now, actually building one of these and getting it to do anything useful is a whole other issue; to date as far as I know reversible computers are research toys and simulations, not practical compute engines.

    92. Re:Don't the laws of computing make it... by AndrewRUK · · Score: 1
      You can't find out anything from the nothing that I know.
      But there is something that you do know - who or where you got the message from. So when they've got that out of you, they can go after that person, or investigate the dead letter box you used, or whatever.
    93. Re:Don't the laws of computing make it... by AJWM · · Score: 1

      Toast lands jelly down. If you jelly both sides of a piece of toast, it will hover in a state of quantum indecision.

      Actually not, it will just fall twice as fast. Or at least be twice as likely to fall.

      (True story: we had to perform and report on a practical experiment in my college statistics class. I tossed buttered toast (about a dozen slices, several times each). It landed butter side down about 62% of the time. Might have had higher percentages with jelly; I didn't try that.)

      --
      -- Alastair
    94. Re:Don't the laws of computing make it... by Lodragandraoidh · · Score: 1

      A falling body falls at the same acceleration, regardless of mass in a vacuume.

      So a one-side jellied toast would fall just as fast as a two-side jellied toast.

      Of course, falling through a column of air brings aerodynamics into the equation...

      --

      Lodragan Draoidh
      The more you explain it, the more I don't understand it. - Mark Twain
    95. Re:Don't the laws of computing make it... by ralatalo · · Score: 1

      As has been mentioned you can't, or shouldn't reuse ONE TIME pads. My idea has always been to use musical CD's as the pads.

      In theory all CDs of the same album should have the same data, so if my friend and I both have access to the same album then all we need to do is somehow transmit which CD. Smaller messages might only require a certain song.

    96. Re:Don't the laws of computing make it... by Pendersempai · · Score: 1
      the fact that they're unbreakable means nothing next to the requirement that you must have a secure channel for the key... why not just use that to send the message in plaintext, if it's secure?

      Because you can exchange the key at any time. It stays good until you use it. So if you're a soldier heading into the field, your commander might hand you a CD-R with your key. You're face to face, so that's a secure transaction. But once you're in the field and plans start changing, you can update your commander by radioing back your comments encrypted by the pad.

      For most purposes today, I think we all agree that public/private key systems are superior. If you don't believe in the integrity of the encryption algorithms, though, or if you expect the entire NSA to try to crack your message, or if you want it to remain secure until the end of time, you may as well use a OTP.

    97. Re:Don't the laws of computing make it... by Pendersempai · · Score: 1

      Bad idea. Then everyone has access to the key. Your only protection is hoping other people won't guess which CD it is: security through obscurity.

      Better to use GPG in your situation.

    98. Re:Don't the laws of computing make it... by Pendersempai · · Score: 1
      this certainly looks like the way forward for OTP and key distribution.

      Bah. Just load up a couple terrabytes' RAID with OTP and drive it over yourself. You'd only need to do it once per year or so, and it can be over any distance. It's also just as unbreakable and a lot cheaper than quantum hocus-pocus.

    99. Re:Don't the laws of computing make it... by haralder · · Score: 1
      > you can't brute force it, because you have no way of knowing if you're right

      What if the message is signed or has a md5 hash or whatever?

    100. Re:Don't the laws of computing make it... by Ripped_edge · · Score: 1

      Actually, armed with contextual information, it might be possible to break a one time pad, not by exploiting the pad, but the humans.

      First, the 'random' number source. If I know what the random number generator is, I can make guesses as to the probability distribution of letters in the pad.

      Second, the language of transmission. If I know you're communicating in say English, I know the frequency that I can expect letters and even certain words to appear.

      I now have at least two interesting probabilities to work with. So, in looking at the brute force generated messages, I can quickly eliminate ones that don't conform to the expected distributions.

      OTP's are often susceptible to 'out of band' methods of cracking. The more I know about the context of the message, the manner it was generated, who what when and where it was sent to and from, the more accurate guesses I can make. It's almost impossible to get an exact crack, but the more messages sent using a certain one time pad, the more likely it is that a heuristic can be generated to analyze it.

    101. Re:Don't the laws of computing make it... by AJWM · · Score: 1

      It must be sad to be so humour-impaired.

      My sympathies.

      --
      -- Alastair
    102. Re:Don't the laws of computing make it... by RespekMyAthorati · · Score: 1

      Horseshit. That's the same as using infinite monkeys on infinite typewriters, and picking the results that you think seem reasonable. The whole point of a OTP is that it is only used once (hence the "O" in OTP). Guessing of any kind is utterly useless since the OTP randomizes the message in a unique way that can never be replicated.

    103. Re:Don't the laws of computing make it... by ArbitraryConstant · · Score: 1

      I thought about this for a while... I think OTP encrypted messages aren't quite impervious.

      1) We can examine the messages sizes and timings to develop heuristics that tell us with a high degree of certainty what type of message it is. In the case of something like me typing my password, it might even be possible to figure out what keys I press from the timings, and we can tell the length as well. This applies to all cryptography that doesn't inject garbage to screw up these methods, but it's worth noting that OTP is not immune automatically.

      2) If the probability of any given bit in our key being 1 is 50%, then it would be possible to do stuff like look at the high bit and figure out with a high degree of certainty what sort of traffic it is, eg: binanries or plain text. Having an additional layer of encryption, or maybe compression would defeat that, I hope.

      --
      I rarely criticize things I don't care about.
    104. Re:Don't the laws of computing make it... by Lodragandraoidh · · Score: 1

      Yes...yes it is... :p

      --

      Lodragan Draoidh
      The more you explain it, the more I don't understand it. - Mark Twain
    105. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      Great, you've got your OTP method figured out. And, maybe you can calculate approximately how long the message will stay secure. But have you realistically analyzed -- Who are you trying to keep this a secret from? Your roommate? Your neighbor? Your government?

      One must properly allow that the end computers (source/destination) can be compromised. The government doesn't care to crack your OTP (see USA) or any method you use -- they will just confiscate your computer, and scour it. Your hacker roommate or anyone that can get access (remote or local) to your computer (without confiscating it) is capable of bypassing that great OTP.

      (tongue in cheek) The midget idea is sounding pretty good.

      FWIW - souring my computer could likely prove that this message was posted from it.

    106. Re:Don't the laws of computing make it... by PhiRatE · · Score: 1

      You are correct, the weaknesses of OTP are all out of band, one of which is the randomness of the keys. Perfectly random keys are of cours eunbreakable, but if I use a psuedo-random function, it is no longer a one-time pad, it's a stream cipher with the psuedo-random generator as the source and the initial state as the key.

      However "english" is simply not enough of a qualifier, even given the trivial length message I presented first, there is no real way of knowing what I said, or even close. You would need many many qualifiers in order to reduce the search space, and at that point of course, you wouldn't need the ciphertext at all. That's why OTP is "unbreakable", in order to break it, you need so much information you already know the answer.

      --
      You can't win a fight.
    107. Re:Don't the laws of computing make it... by Lehk228 · · Score: 1

      I doubt that space is quantized, if it were than an object or particle moving along a non-linear path would have tiny induced stresses as is stretched and contracted in order to "fit" into the smallest possible movement for any given particle, such an arraingement would cause a fairly noticable(on a galactic scale) seeping of energy from all moving objects.

      --
      Snowden and Manning are heroes.
    108. Re:Don't the laws of computing make it... by Krach42 · · Score: 1

      Actually... think about it. Were you to make a program such as this, then it would generate pictures of you generating pictures of you generating pictures, ad nauseum until you reach the limits of the pixel size.

      But you'd still get eventually a picture of yourself looking at the monitor generating nearly every possible output. (due to constraints due to image quality loss moving from discreet photons to discreet pixels)

      --

      I am unamerican, and proud of it!
    109. Re:Don't the laws of computing make it... by Krach42 · · Score: 1

      He said that eventually any plaintext could be comprimisable.

      This is still even true of a OTP.

      Say you make an entire CD from /dev/random, and use that as a OTP with your friend. You then send OTP information between each other.

      It is entirely possible that someone could obtain this CD, and the synchronizing information used to encrypt and decrypt, then your OTP could eventually become vulnerable.

      The problem just becomes PROVING that the information is actually what you say it is. You likely couldn't prove it within 100% mathematical accuracy, but remember that in a court of law for a criminal case, you only need prove it "beyond a shadow of a doubt." (we found this CD contain the OTP sequences, and these communications containing the synchronizing data, and we are confident that these are the messages intended)

      Even worse, in a civil case, you only need prove beyond a plausible doubt. This just means that the jury would only need to be mostly convinced that the messages were intentended. "Using this same sequence we were able to extrapolate some other messages which contained directions that were followed directly by one party, thus this same technique is likely to have been followed now."

      Honestly, the only 100% safe thing to do is not to even write it down... until we make thought reading machines, and Big Brother owns the world.

      --

      I am unamerican, and proud of it!
    110. Re:Don't the laws of computing make it... by Krach42 · · Score: 1

      They're NOT "perfectly" secure though. As far as the cyphertext is concerned, it's the most secure part of it. But you said it yourself the key is the insecurity in the whole method.

      If you even keep the key around, or have any directions as to how the key was synchronized, you could possibly come up with a resonable decryption of the text.

      And in a court of law, you don't have to prove something perfectly, or 100% mathematically, you just have to prove that there's no doubt in a (generally) non-technically minded person as to the accuracy of your key finding method. The defense could scream all they want that "OTP is uncrackable! They can't PROVE that's the message." But the prosecution just need to support the evidence with "This is how we found the key, and we every reason to believe that the key is valid."

      In a civil case this is even easier, as the plantiff need only prove beyond a reasonable doubt that the key they've developed is correct.

      If you can prove you obtained the key, by any sort of forensic analysis.. even a broken CD containing a /dev/random image would yield portions of the key, which when paired with other instructions as to finding it, could be used to extract a partial valid key, and thus a partial valid plaintext.

      So, what I'm saying is, if you're up against a OTP, don't crack the cyphertext, because, you're right, it says NOTHING about the cyphertext. Rather, you work your butt off to find the key, then the cyphertext gives you the plaintext.

      Personally, seeing as how the key is data just like the cyphertext, you've just doubled the data size, and hope that someone doesn't find the other half of the data. And as /.ers are fond of telling people. Security through Obscurity is no Security at All.

      --

      I am unamerican, and proud of it!
    111. Re:Don't the laws of computing make it... by Sinner · · Score: 1
      Does "why" or "why not" ever come into the picture of how the universe is set up? How is it any more than "is it" or "is it not"?

      I think we should be free to ask the question, even if it's rather difficult to test our hypotheses. I'm basing my ideas on extrapolating from what I do know about. While this has obvious limitations, it's the best I can manage.

      You can have a repeating universe, or a random universe with states that just never come up. Why wouldn't it be like this?

      The idea of a repeating universe seems very weird to me. Say I do a quantum interference experiment, and the answer comes out as "1". Then another version of me, N light years away, is constrained to also get the answer "1". This seems like a violation of the no-action-at-a-distance principle.

      Similarly, if there are states that never come up, I'd prefer it if there was some reason why they never came up.

      Thanks for the interesting response.

      --
      fish and pipes
    112. Re:Don't the laws of computing make it... by I'mJVC · · Score: 1

      The great thing about Google calculator is that you barely need to know math to use it ;).

      BTW, is it google or Google

      --
      Will add sig later...
    113. Re:Don't the laws of computing make it... by filmotheklown · · Score: 1

      Last I checked, 32bit color was actually 24 bits of color and 8 bits of alpha channel, thus shouldn't it be 1024 x 768 x 24bit???? (since we presumable won't need alpha channel to view our images)
      --

      --
      Filmo The Klown
    114. Re:Don't the laws of computing make it... by tricorn · · Score: 1

      Or, put another way, guessing at the key is identical to guessing at the decrypted message. Just guess what the message might be. You don't even have to intercept the encrypted message to do this. Just guess! "I wonder if it could be ... aha, proof that Iraq has weapons of mass destruction! Wow, that's so unlikely that I randomly guessed that exact message that it must be right. It even has he word "misunderestimate" in it, it must be real!" Maybe the encrypted message is a little short? Guess that they first compressed it with gzip, then added some zero padding (or you can make a guess what the padding is, too), and a signed MD5 signature . Guess what? It's so unlikely that the message just happens to be what you guessed, in gzip format and all, with the exact same padding, and look at that signnature you guessed, that it must be the message. Wow, they managed to encrypt BOTH messages at the same time, what an advanced code!

    115. Re:Don't the laws of computing make it... by cynic10508 · · Score: 1

      When used properly, One Time Pad is impossible to break. Of course, carrying around enough truely random characters/bytes for all of your encrypting needs without getting caught is another story. And humans are notoriously good at not following directions properly....

      True about the directions part. But one problem with one-time pads is the random part. A computer pseudo-random number generator would become a weak point to attack. Plus, it's usually the implementation of the cryptography that's the problem and not the algorithm itself.

    116. Re:Don't the laws of computing make it... by BethLogic · · Score: 1

      When used properly, One Time Pad is impossible to break. Of course, carrying around enough truely random characters/bytes for all of your encrypting needs without getting caught is another story. And humans are notoriously good at not following directions properly....

      True about the directions part. But one problem with one-time pads is the random part. A computer pseudo-random number generator would become a weak point to attack. Plus, it's usually the implementation of the cryptography that's the problem and not the algorithm itself.

      The real problem with getting computers to come up with random numbers is that they are deterministic. Given the bits (or even numbers) generated by an Alternating Stop and Go Generator (See Applied Cryptography by Schneier) in a vacuum, you will find that the numbers are statistically random. But if you happen to know the set up of the generator, you can calculate everything because there is no additional randomness (once the IVs are choosen) within the system. On the other hand, you could use this kind of generator because of the psuedo-ness. Instead of passing back and forth GBs of random bits/numbers out of band, you could just transfer the IVs out of band and generate your OTP from there. Both Parties (or even many parties) can have all the same numbers. The 3 LFSRs that make up the generator must be of order 31 (IIRC) or higher, so you end up with (31^2)^3 possible starting points, too many to brute force.

      BLogic

      ps- Fun fact of the Day: the C function rand() when seeded with ms from the epoch produces bits that are statistically random enough to pass the FIPS 140-2 standard for cryptographic devices. Not that you'd ever use it for one...

    117. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      You do not understand.

    118. Re:Don't the laws of computing make it... by owlstead · · Score: 1

      And if you have a true random generator, otherwise your key won't be secure.

    119. Re:Don't the laws of computing make it... by Anonymous Coward · · Score: 0

      Wrong.

      The cryptographic problem in question has _256_ bits!

      Taking a 2D array of just bits (on-off points) 1024x768 is already FAR more than the crypotgraphic key under consideration. In fact, 256 bits only cover the first 256 spaces in said array.

  9. Just a Thought . . . by homeobocks · · Score: 0

    It might be wise to shut off your SSH server until MD5 has either been confirmed reliable, or replaced.

    --
    MOUNT TAPE U1439 ON B3, NO RING
  10. Consequences? by Fruny · · Score: 5, Insightful

    Can a crypto-geek sum up the consequences for all of us dummies? Thanks.

    1. Re:Consequences? by Anonymous Coward · · Score: 1, Funny

      Uhh....

      Shit?

    2. Re:Consequences? by germinatoras · · Score: 1, Informative

      It's in the attached articles there. MD5 and others are "hash" algorithms. They generate a small "digest", say 2048 bits, from a much larger data set. So if you run a 85-meg JPEG through MD5, you'll get a (hopefully) unique 2048-bit number. The goal is to have a hash algorithm that makes it impossible for anyone to "decode" the MD5 digest back into the 85-meg JPEG that it came from.

      So what's the big deal about finding a collision? The answer is this direct quote:

      The finding of a single collision in SHA-1 would not, by itself, cause much trouble, since one arbitrary collision won't do an attacker much good in practice. But history tells us that such discoveries are usually followed by a series of bigger discoveries that widen the breach, to the point that the broken primitive becomes unusable.

      In other words: When people find collisions (two different datasets that result in the exact same digest), then that is the first step towards being able to "reverse" the digest process, and extract the original data from the digest, thus rendering the encryption useless.

    3. Re:Consequences? by sinclair44 · · Score: 2, Informative

      While an md5 collision would be a Bad Thing, it isn't necessarily the end of the world. Just because you can have two files that have the same hash (a collision) doesn't always mean you can arbitrarily change a file but keep the hash. However, it's likely that we'll eventually find a problem with md5 that will allow a determined attacker that really knows what they're doing to make limited changes to files; this collision is the first step in that direction.

      --
      Omnes stulti sunt.
    4. Re:Consequences? by Anonymous Coward · · Score: 0

      Yeah. I'm not sure what the problem is... they take 80,000 computer hours to find two messages which are similar except for some number of bits. Of course it will be possible to find a collision given enough time. There are only 2^160 possible sha0 hashes.

      Or maybe I don't really know what they mean by collision?

    5. Re:Consequences? by Myen · · Score: 2, Interesting

      Has it?

      Reading the list, it looks like some people in China managed to produce a hash collision using unknown means...

      Although the mention in the paper that the result was obtained in one hour (using a P690, whatever that is) sounds scary... There is very little information though, for example we don't know if the message was special in any way.

      Basically, they have managed to find two particular messages which collide, but I'm not yet convinced that they know how to make a collision for any abritary message.

      But then... I'm not a cryto person.

    6. Re:Consequences? by mblase · · Score: 5, Informative

      I looked up hash collision (e2) and hash function (e2) at Wikipedia and Everything2, which clarified the summary quite a bit.

    7. Re:Consequences? by Narkov · · Score: 1

      [...]the first step towards being able to "reverse" the digest process, and extract the original data from the digest

      So as a result of breaking the encryption have they just found the best compression method? Did I read what you said correctly or is that what you are suggesting?

    8. Re:Consequences? by Anonymous Coward · · Score: 5, Informative

      No, it is not possible to extract the original data from the digest. Hash algorithms have nothing to do with compression.

      However, it might be possible to construct a file to a given hash. In that case, MD5 sums become worthless to check wether a downloaded file is what independent sources claim it is.

      The security implications are quite severe. Also, P2P clients that use MD5 to identify unique files will be vulnerable to spoofing by malicious users.

    9. Re:Consequences? by Stonent1 · · Score: 1

      IIRC a P690 sounds like an IBM RS/6000.

    10. Re:Consequences? by Smidge204 · · Score: 3, Informative

      Honestly, I can't see how it would be possible to reliably reconstruct the data that produced the hash. If there are multiple data sets then it's still impossible to figure out which is the original, though you may have narrowed it down.

      The REAL problem here is that hashes are used to store passwords and other security sensitive data. It is still impossible to recover the original data, but if a method is known that produces collisions then it would be possible to find an equivalent data set to give the same resulting hash. In other words, you may not have the exact same key but you can make one of your own that will work anyway.

      One possible (and temporary) solution would be to salt the data somehow. This adds an extra layer of security because the hash you are looking at is a an unknown password AND an unknown data set which you (theoretically) have no access to. You can generate a data set that produces the same hash, but when submitting that data set it will be salted to generate a new hash that won't work. Think of it as a single math equation with two unknowns.

      This fails, of course, if you manage to get a password and it's corresponding hash. Then you only have one unknown (the salt).
      =Smidge=

    11. Re:Consequences? by Anonymous Coward · · Score: 0

      Actually it may not be that you can easily reverse the digest process. What it really means is that you can fake a signature, which means that if a hacker is between the sender and recipient, he can alter their communications without them knowing (and possibly give each of the sender and reciever his key, and dupe them into thinking they have each other's keys, all the while reading their messages).

    12. Re:Consequences? by NotQuiteReal · · Score: 2, Insightful

      It also means you can deny stuff. "Hey Mr. Lawman, sure that encrypted stuff looks incrimidating, but really is is just innocent spam that I encrypted and signed as a test. The fact that you decrypted it to kiddie porn is just a coincidence. Prolly no better odds than O.J.'s blood match - they let him off..."

      --
      This issue is a bit more complicated than you think.
    13. Re:Consequences? by arothstein · · Score: 0, Informative
      no, it does not mean the algorithm is reversible (ie, you could regenerate the input from the hash), it means the hash is insecure, and that, potentially, I can easily screw around with a trojan version of linux-2.6.7.tar.bz2 to make the hash of the trojan match the published hash of the virgin 2.6.7 kernel. At that point, publishing hashes (md5, sha-1, or other) of your binaries/source/etc. is meaningless.

      A cryptographically strong hash has so much chaos in the hash function that "dialing in" the desired hash by fiddling with bits in the source (plain text) file takes years and years to produce the desired hash. A cryptographically weak hash (a "broken" hash algorithm) could be exploited to produce the desired hash in minutes or hours.

    14. Re:Consequences? by Anonymous Coward · · Score: 0

      Yes, exactly. You could then compress a 700MB movie to 32Byte (provided the copyright holder of the movie agrees to it; consult mpaa.org if in doubt).

    15. Re:Consequences? by Anonymous Coward · · Score: 0

      Or maybe I don't really know what they mean by collision?

      Confirmed.

    16. Re:Consequences? by GreenHell · · Score: 5, Informative

      Of course it will be possible to find a collision given enough time. There are only 2^160 possible sha0 hashes.

      You say 2^160 like it's some tiny number.

      To demonstrate how large that truly is, let me do a little thing that my cryptography prof did when I took the course several years ago:

      2^160 = 1.4615016373309029182036848327163e+48 possibilities. (We'll be nice to the people following along and say 1.46 x 10 ^ 48 possibilities.) Now, let's say you can successfully generate one unique hash per second, that's 1.46 x 10 ^ 46 seconds.

      But just how long is that exactly?

      Well, let's be nice (for the sake of making the math easy), and say that there are 100 seconds in a minute. That's 1.46 x 10^46 minutes. Now, let's do the same thing for minutes in an hour: that's ~ 1.46 x 10^44 hours.

      Now we reach hours in a day. I'm feeling really generous, so we'll say 100 hours in a day. That's 1.46 x 10 ^ 42 days.

      365 (or 366) days in a year is too close to 3 x 10 ^ 2, and dividing by 3s is just messy, so we'll say 1 000 days in a year. That gives us 1.46 x 10 ^ 39 years.

      Chances are good that our sun will have burnt itself out long before you've managed to generate every single possible hash.

      However, what makes this particular case more interesting is that they've found a way to get a collision without brute forcing their way through every possible hash. It's not particularly useful yet, as it's still a 2^51 problem, (approx 2.25 x 10 ^15), so it's hardly trivial enough for you to do on your home PC, but it's a step in the right direction.

      --
      "I won't mod you down - I feel the need to call you a twit explicitly, rather than by implication."
    17. Re:Consequences? by noahm · · Score: 1
      In other words: When people find collisions (two different datasets that result in the exact same digest), then that is the first step towards being able to "reverse" the digest process, and extract the original data from the digest, thus rendering the encryption useless.

      No. Completely and utterly wrong. The consequence here is not to "decrypt" a hash. It's a hash, not an encryption. Hashes are used to verify the integrity of the input. That's why you see your favorite Linux distributer release MD5 hashes of the official .iso images of their distribution. The hashes allow you to verify that the ISO image you're downloading is identical to the one they intended to distribute, and has not been secretly replaced by some malicious party. Nothing is encrypted; you have the original data and don't need to decrypt anything to get at it. You don't even need to verify the checksum if you don't want to.

      The consequence here is that if SHA-n or MD5 is broken, then somebody could conceivably release an ISO image that contained different data (e.g. a trojan) but still matched the MD5 sum of the original image.

      The reason I don't think this will be of huge consequence to most users is that it's normal to have either multiple hashes of a single file or other traits that you can look at that will tell you if the data is what you expected. So in theory, yes, maybe it is possible for you to find some data that results in the same MD5 checksum as the Debian woody CD1 ISO image, but the likelihood that that data will consist of a valid ISO9660 filesystem that bears any resemblance to the original is very, very, very slim.

      noah

    18. Re:Consequences? by Q2Serpent · · Score: 1

      No, it's not about recovering the original data - that's certainly impossible. Since there are an infinite number of data streams that will produce the same hash, going from the hash the one original data stream is ridiculous. Instead, it's about finding any one of the streams that produces a hash that you already know.

      Think about this: many authentication systems store a hash of your password. To authenticate you, they hash what you type in each time to what they have stored, and if it matches, there is *reasonable probability* that you typed in the correct password. Now, if someone figures out a way to generate some other password that hashes to the same thing, they can log in as you. See?

    19. Re:Consequences? by germinatoras · · Score: 1

      That's true about the passwords - all you need is a string that results in the same hash, which this algorithm would give.

      About the reconstructing - it would be some kind of a brute-force approach. Yeah - at this point it seems pretty unlikely that we'll have an "un-md5sum" appearing on SourceForge anytime soon. But I was thinking that if a collision algorithm could sufficiently narrow down the possible data sets that generate Key XYZ, then it might reduce the computational time to a pratical amount where you could actually brute-force the original data out. I might be totally off-base though; I've never actually tried to generate an MD5 collision to know how difficult it is.

    20. Re:Consequences? by psetzer · · Score: 5, Interesting
      Quick combinatorics, folks. There are 2^8,388,608 different 1 MB files. If we digest it into a 2048 bit file, then we have created a function from a set of order 2^8,388,608 to a set of order 2^2,048. That means that there are on average 2^8,386,560 different 1 MB files that will create our 2,048 bit hash.

      What this means for passwords is simple. People don't decrypt your password and compare it to a stored copy. They hash it, and then store the hash. When you log in, they hash your attempt, and if the hashes match, then the assumption is that the passwords matched, and you are let in. Hashes are very difficult to reverse, which is why they are used. The chances of two passwords producing the same hash is 1/2^2048. However, either one can be substituted for the other. We just trust in the extreme unlikelyness that two passwords would have the same hash and go on our merry ways.

      Now suppose that someone has the hash of your password. They may be extremely unlikely to find your password, but they can find something just as good, if a bit unwieldly, since there's no guarantee that the substitute password is just as short as yours. If you don't mind a million character password, then there are likely about 2^8,386,560 passwords that will spoof yours.

      --
      "Anyone who attempts to generate random numbers by deterministic means is living in a state of sin." -- John von Neumann
    21. Re:Consequences? by afidel · · Score: 2, Informative

      As others have pointed out the problem is bigger because file hashing is not the sole use of MD5, it is also used for password hashing. The problem with password hashing is that with a collision you don't need to have the origional password, a data set that hashes to the same value can be used for entry because the only thing the password checking function can check is the hashed value. The solution to a slightly broken hash function is to either use the same function to hash the password with two different salts or use two different hash functions, either way the chances of a collision value hashing with either the salts or two different functions is astronomically small.

      --
      There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
    22. Re:Consequences? by dpletche · · Score: 4, Informative

      In other words: When people find collisions (two different datasets that result in the exact same digest), then that is the first step towards being able to "reverse" the digest process, and extract the original data from the digest, thus rendering the encryption useless.

      Nooo.... Not even close.

      Let me illustrate with a simple example. Imagine that a hash function produces a 2 bit digest value from an arbitrary input 500 bit string. It's not a good hash function, because in about three tries you find another input string that produces the same hash value. However, you don't have any hope of turning one of the hash values (0, 1, 2 or 3) back into the 500 bit input string, even though the hashing algorithm is clearly broken by any commonly accepted definition.

      A more realistic example is the MD5 hashing algorithm, which produces a 128 bit digest value from an arbitrary input string. Assume, for the sake of simplicity, that you're hashing only 1024 bit strings (though the input strings could be of any length). Then there are 2^(1024-128) = 2^896 possible input strings for every hash value. Your chances of guessing the correct input string are 1 in 2^896 (i.e. zero.) Remove the restriction that the input string must be of fixed length and your chances suffer even further.

      In reality, the problem with a broken hashing algorithm is that an attacker can manufacture an altered document without affecting the "tamper-resistant" seal, i.e. the hash function digest. Other applications of digest algorithms dependent on probabilistically-guaranteed uniqueness of digest values as a function of content, like the creation of content-based unique identifiers, are likewise endangered.

      However, the mere existence of a few random collisions, while potentially a source of unease for system and application designers, is not in itself evidence that a hashing algorithm is broken. Brokenness implies that for a given input X and digest F(X), other inputs Y can be generated in limited time such that F(X)=F(Y).

    23. Re:Consequences? by andreyw · · Score: 1

      I think you need a refresh on your definitions of "encryption" and "hash."

      Cause otherwise I think you're up for a Nobel Prise, if you figured out a way to compress any-sized files into a 2048-byte chunk.

    24. Re:Consequences? by Smidge204 · · Score: 1

      Well the problem is you have a finite number of bits and an theoretically infinate number of data sets. Logically speaking, if you had a MD5 hash (256 bits, or 2^256 unique hashes), then you can only have 2^256 unique input-output pairs. If you have (2^256)+1 unique inputs you are guaranteed to have one collision. Fortunately that's quite a lot of data sets, so the chances of having two inputs that give the same output is small - but not small enough to be considered secure anymore. So far nobody has found a pair of data sets but it won't be long before someone does.

      But generating the original data is essentially impossible, because there are theoretically infinate inputs. To use the Jpeg example, you might be "lucky" and find a 2MB image tht has the same hash as the original 85MB one, or you might find a 400MB one that has a matching hash. Without any other information about it you have no way of knowing if it's the real image or not... and this assumes you even know to look for a JPG image. If you're "really lucky" the image might have a hash identical to that of the license plate number on your car, your pet's name, or the Paris Hilton sex tape in XViD format. There is just no way to tell.
      =Smidge=

    25. Re:Consequences? by Anonymous Coward · · Score: 0

      > if someone gets hold of a database which has your password stored in md5, then they can crack it.

      A common misconception: glibc MD5 crypt() is not the same as an MD5 digest. The linux password/shadow files are configured for the former, and that's *far harder* to crack than a plain MD5 digest. In particular, MD5 crypt is a heavily-iterated one-way hash.

      In short, your paswords are safe and will remain so for the conceivable future.

    26. Re:Consequences? by pnot · · Score: 3, Informative

      For the sake of this post, I will simply define the two methods of
      attack...


      For the sake of this post, you will blatantly paste in great wodges of content from http://www.security-forums.com/forum/viewtopic.php ?t=8325 , without any attribution to the original author, one Justin Troutman. Shame on you.

    27. Re:Consequences? by cr0y · · Score: 1

      So being what some others said, In that you could take a small hash and reverse it back into its original state, Could You technically take Gigs of data, hash it, then send the hash around the net and let the people who want it rebuild it?

      --

      ItWasFree.com - Take the mystery
    28. Re:Consequences? by kyhwana · · Score: 1

      No, MD5 is 128bit/16bytes. It does not produce a 2048bit checksum/hash.
      The largest hash algorithm that I know of is SHA512, which produces a 512bit hash.

      --
      My email addy? should be easy enough.
    29. Re:Consequences? by Hard_Code · · Score: 1

      Yeah...md5 is not "compression" of any sort... in fact hashes are the direct opposite (well in my laymans expression of it), they should bear as little relation as possible to the inputs.

      Given the finite nature of hashes and the (relatively) infinite possibilities...there are an infinite amount of things that could possibly result in that particular hash. You may have to consume the entire matter of the universe several times over to count them.

      So no, it ain't gonna happen.

      --

      It's 10 PM. Do you know if you're un-American?
    30. Re:Consequences? by Anonymous Coward · · Score: 0

      You, sir, are the worst karma-whore I've seen on /. in a long time. I sincerely hope you aren't some sort of professional academic IRL.

    31. Re:Consequences? by kyhwana · · Score: 1

      As below, MD5 is 128bits, not 256.
      So replace 256 with 128..

      --
      My email addy? should be easy enough.
    32. Re:Consequences? by Cramer · · Score: 1
      • ...
      • able to "reverse" the digest process...
      This is not true. In much the same manner that one cannot reverse crypt(). Information is lost in the "compression" of the larger input set to the smaller, fixed size of the result set. Reversing the process will at best return all of the collision sets -- all of the datasets that result in the same hash value -- which will likely be many more than 2. (and the process is certainly not going to be computationally "free".)

      The announcement is merely confirmation of mathmatically realities... one cannot uniquely represent a dataset with less data than you started out with. In fact, the hash output can be much larger than the input and still have collisions; anyone who's studied data structures knows this -- the mythical "perfect hash function". So, we know there will be collisions with SHA. Now we have one in hand. By itself, this is nothing more than "neat"; it will take lots of colliding datasets to be useful in predicting and eventually creating collisions.

      The only serious point here is that 2048bits is a common size for keys. So, this is basically proving your "house key" isn't as unique as you might think.[*] At this point, it'll still be a random accident if someone finds a collision with one of your 2048bit keys... assuming there is a collision for your key.

      [*] BTW, your house/apartment key isn't unique. (none of your real world keys are truely unique.)
    33. Re:Consequences? by Anonymous Coward · · Score: 0

      Oh...dear...god...not the CHINESE!!!!!!!

      Run for the hills ma! The Chinese are a comin'!!

      Christ on a stick, the only thing the Chinese are good at is making Chinese food.

    34. Re:Consequences? by Anonymous Coward · · Score: 0

      Oh dear god where is the -1,Gay Nigger mod option when you really need it???

    35. Re:Consequences? by Cramer · · Score: 1

      It has yet to be shown that a file can be meaningfully changed in a functional manner. For example, inserting shell code in login without trashing the program. If the program will no longer run, then it's useless.

      So far, the example shows very few differences. Certainly not enough to do anything as complex as inserting code. However, very few bits would be needed to invert or skip checks. (think "any password is valid")

    36. Re:Consequences? by kcbrown · · Score: 1
      One possible (and temporary) solution would be to salt the data somehow. This adds an extra layer of security because the hash you are looking at is a an unknown password AND an unknown data set which you (theoretically) have no access to. You can generate a data set that produces the same hash, but when submitting that data set it will be salted to generate a new hash that won't work. Think of it as a single math equation with two unknowns.

      Well, maybe.

      The reason you salt data (passwords in particular) is to prevent fast dictionary attacks, which only works when computing the hash is an expensive operation. If the hash is computed only on the plaintext and not (plaintext + salt) then you can precompute the hashes of a bunch of (relatively common) plaintext values. Then, you can quickly find out which plaintext produced the hash that you're trying to crack by looking the hash up in the precomputed hash table.

      Salting prevents this by massively increasing the size of the required precomputed hash table. Now instead of storing N precomputed values, you have to store N * S, where S is the number of possible salt values. Password mechanisms which make use of salted values typically store the salt value along with the hash of the salted password. Not only does this potentially make a dictionary attack harder, it also prevents those who know the passwords in question from determining whether or not their password is the same as someone else's simply by examining the hash (the salt is supposed to introduce enough randomness to make this an unlikely occurrance).

      Now, for this particular problem (finding a plaintext value which will generate the given hash via an exploitation of a weakness in the hash function itself), adding a salt may complicate things because it may add an additional constraint that has to be accounted for in the attack. I don't know enough to say whether or not that's even an issue in this particular case, however.

      --
      Use 'slashdot stuff' in the subject line in any email you send me if you want to get past the spam filter.
    37. Re:Consequences? by arose · · Score: 1

      Why not use a couple of different hashing methods for passwords. Collisions wouldn't be portable across hashing methods, would they?

      --
      Analogies don't equal equalities, they are merely somewhat analogous.
    38. Re:Consequences? by cabraverde · · Score: 1

      I Honestly, I can't see how it would be possible to reliably reconstruct the data that produced the hash

      True - but that's not necessarily the problem. Think of (for example) the RIAA polluting peer-to-peer networks. If you can quickly generate a hash collision for any given file, you can produce a load of junk with the same hash as the 'good' file.

    39. Re:Consequences? by Anonymous Coward · · Score: 0

      I am no crypto expert, though reading Schneier's book has helped my understanding a bit. To me, the most important implication of a collision attack with such a relatively low order of complexity is with regard to password security. Many programs store passwords in hashed form for authentication purposes. Hashes are one-way functions, and Schneier describes them as the equivalent of shattering a plate. The inputed data creates a "shattered" pattern whose sole purpose is to be unique. Hence the only way to recreate it is to input the same original data. In authentication, this would be a password. Instead of actually storing your clear-text password, the "shattered" version is stored instead. Each time you authenticate with your password, it is compared to this shattered version, and if they match, it is assumed the input (i.e. your password) is correct. Usually this means that if crackers gain access to your hashed passwords, their main course of action is to brute-force attack, hashing every password combo possible (key-length) to try to reproduce your password. The way most hashes are set-up, this is computationally infeasible. However, with a collision attack, a cracker could find a different password string that hashes equivalently to your original password. Thankfully most authentication systems are far more complex than this and implement salts and other niceties, but I'm sure there are *some* systems vulnerable to such an attack.

      I think it would be *much* more difficult to actually change the data in any distributed program so that it would actually contain anything malicious while maintaining an equivalent hash, but it would be possible to distribute junk over the internet. Imagine people propagating junk through P2P programs. You'd have to download multiple versions of the "same" (hashes match) file before finding the correct copy.

    40. Re:Consequences? by Forbman · · Score: 1

      But if the RIAA could do this with BitTorrent, KaZaa, or whatever, couldn't enterprising people do the same to whatever service the RIAA ends up finally embracing as well?

      Then what will happen?

    41. Re:Consequences? by R.Caley · · Score: 1
      Time to open a chain of shops selling clean underwear with outlets near large IT companies.

      But don't trust any orders which some in with digital signatures.

      --
      _O_
      .|<
      The named which can be named is not the true named
    42. Re:Consequences? by Threni · · Score: 1

      > Why not use a couple of different hashing methods for passwords. Collisions
      > wouldn't be portable across hashing methods, would they?

      A natural question, but I don't think it works like that. People devise, test, debug, retest algorithms such that they work in certain situations. Once they are released they get attacked by people and after a while people `understand` them pretty well. Look at the Quicksort algorithm. People have spent years studying it, tweaking various parameters to make it faster in most situations.

      Just running a few different hashing algorithms together doesn't really increase your security, unless you're employing security by obscurity, which means you're not going to have the source to analyze what you're doing, so who knows how secure it is. If I came to you with such a system and said `it's secure, but you're going to have to trust me about that` you'd quite rightly tell me to piss off! And if you are going to publish the source/algorithm to your multi-hash system then you're back in the situation where each algorithm can be checked out individually and you're not gaining anything. At this stage you're way beyond casual hackers anyway.

    43. Re:Consequences? by ssimpson · · Score: 1

      Cryptographic hashes usually output hashes much smaller than 2048-bits. MD5 is just 128-bits, SHA-{0|1} is 160-bits. The largest hash in any kind of real world use is SHA-512.

      --
      "Mary had a crypto key, she kept it in escrow, and everything that Mary said, the Feds were sure to know."
    44. Re:Consequences? by Smidge204 · · Score: 1

      You're right... I automatically used 32 byte output * 8 bits/byte = 256 bits, but it doesn't use the full range for each byte. I stand corrected!
      =Smdige=

    45. Re:Consequences? by jafuser · · Score: 1

      When people release popular applications on the internet, there is always a risk that somebody will take that application archive file (zip, tgz), open it, inject malicious changes, re-zip it, and then drop that file into a P2P network, or just hack into a mirror site and replace the valid copy with his own.

      These "Hash" functions (MD5, SHA) can give the people who download archives a way to confirm that the files are exact copies of the original, and have not been tampered with.

      They can confirm this by going to the original distributor, looking up the posted MD5, and comparing that to a check of their own downloaded copy. If it's the same, they are practically certian to be in the clear. If it's not, then it's likely that the file was corrupted in the transfer process, or someone changed it.

      The thing is, these hashes are not unique to every concieveable random file that could ever be generated (since a hash is smaller than the files).

      A single hash can describe many, many different files, however these algorithms (MD5, SHA) are supposed to make it very difficult to discover *other* files which would result in the same hash.

      Here's what this article is about: this team has discovered that in the case of SHA-0, "very difficult" isn't as difficult as it theoretically should be (though it does presently remain quite difficult).

      What worries the crypto people is that something like this can be a "crack in the dam" that could open wider as the weakness is better understood.

      The implications aren't just for confirming the intact contents of your downloaded files; hashes also play a key part in most cryptography, including the algorithms in https.

      Presently, it's not too much for most people to worry about. This is still very far off from being exploitable, since all it does is finds some random chunk of binary data which makes a matching hash. In this case, all you'd get opening the compromised download is random junk data that could neither infect your machine or do anything intentional.

      The time to worry is when it's feasible to make an already existing, *useful* chunk of data generate a hash that matches another predefined hash. In this case, someone could take the archive, inject their modifications, then pad the archive with some specially-chosen data to make the final hash match.

      But unless some sudden miraculous breakthroughs are discovered, that's still a long way off.

      I'm still fairly new to understanding crypto, but I'm fairly certian this is an accurate explanation. However, I'll happily accept any corrections. =)

      --
      Please consider making an automatic monthly recurring donation to the EFF
    46. Re:Consequences? by mengel · · Score: 1
      Well, what's

      bad

      is if you can compute a short block (approx the size of the MD5 hash) which you can append to a file and make the resulting file have a given MD5 hash. Then you can take any arbitrary tarfile, add a chunk on the end, and the resulting tarfile will have the "right" MD5 sum, but still unpack the large wooden horse complete with hidden gate-opener code.
      --
      - "History shows again and again how nature points out the folly of men" -- Blue Oyster Cult, 'Godzilla'
    47. Re:Consequences? by Zaiff+Urgulbunger · · Score: 1

      (I'm wearing my "I am totally a security n00b" hat)

      But if you used (say) MD5 *and* SHA-0, then surely to break it, a hacker would need to find a collision in both algorithms that are both at the exact same point?

      (at this point I'd just like to emphasise that I completely and utterly, 100%, do not understand this stuff.... so its quite possible I'm talking out of my arse! END-DISCLAIMER!!)

    48. Re:Consequences? by Dr.+Manhattan · · Score: 1
      I use MD5 in my project (see sig) but I think it's still relatively safe. Each time a client connects, it gets a new, randomly-generated salt. It then uses HMAC to hash the secret password with the salt, and sends the response back. The server compares the response with its own list of hash(password+salt) outputs, and if one matches, it runs the associated command.

      Currently, a potential attacker sniffing the wire can record the salt and the response, but figuring out what password was used boils down to reversing MD5, making a pig out of sausage. Dictionary attacks are the most practical way to carry this out now. Fast collision-finding would allow someone to find a Y such that it hashes to the same value as X for a particular salt.

      The problem is, finding an X and a Y that both hash to Z doesn't help much here. An attacker would need to find an X and a Y that, for (at least) two different salts S1 and S2, satisfied the condition that hash(X+S1)=hash(Y+S1) and hash(X+S2)=hash(Y+S2). In practice, they'd need to find such a hypothetical X, Y pair that satisfied this condition for a lot of potential salts to have a chance of successfully breaking in.

      I'm not sure such pairs exist; I suspect that the only way for the above condition to be satisfied in practice is for X and Y to be equal, that is, for the attacker to reconstruct the actual password. Maybe I'm dense, but I think dictionary attacks are still the more practical choice...

      --
      PHEM - party like it's 1997-2003!
    49. Re:Consequences? by jonabbey · · Score: 1

      I would think that stacking hashes like that would weaken protection, not increase it. If you just do a naive MD5 of the original input text, followed by a SHA-0 of the MD5 hash, you could break the verification by finding any plaintext whose MD5 matched the MD5 of the original input text.. but you don't have to. All you have to do is find a plaintext whose MD5 collides under SHA-0 with the original MD5 hash.

      Since you can fake a match by either colliding in MD5 or in SHA-0, you've presumably weakened your hash relative to just using one or the other.

    50. Re:Consequences? by discord5 · · Score: 1
      365 (or 366) days in a year is too close to 3 x 10 ^ 2, and dividing by 3s is just messy, so we'll say 1 000 days in a year. That gives us 1.46 x 10 ^ 39 years.

      Now let's build a beowulf cluster and start mapping those hashes. ;)

    51. Re:Consequences? by AndrewRUK · · Score: 1

      I think what Zaiff is suggesting is to take the MD5 hash of the plaintext, and the SHA-0 hash of the plaintext, so an attack would then have to find a collision in both hashes at once.

      So, for example, consider verifying a copy of your post. The MD5 hash of the message is fc378543397e79179240f317a6c99076, and the SHA-1 of the message is 47a032769e6d6b5f9ac1efedb81911727303ba5c. If we just use one hash function, an attacker only has to find a collision in that function. If we use both, then an attacker has to find another plaintext that has the same MD5 as your message, and the same SHA-1 as your message, which is going to be harder than matching just one.

    52. Re:Consequences? by _pi-away · · Score: 1

      Andrew has it correct, and yes, this does increase security.

      The ultra paranoid have been using IDSs that use take both MD5 and SHA-1 on the system files for a while now.

      --

      "The crows seemed to be calling his name, thought Caw."
    53. Re:Consequences? by jonabbey · · Score: 1

      Oooooh. Yes, that would seem to make it extraordinarily more difficult to craft a collision across both hashes, if indeed it is possible.

      If MD5 and SHA-1 are strong, though, it should be about the same as if you used an SHA-1-like algorithm to generate a hash whose length was the sum of the MD5 and SHA-1 hash lengths, though, so you might just as well use SHA-256 or whatever.

      Thanks for clarifying.

    54. Re:Consequences? by suwain_2 · · Score: 1

      Maybe this changed a few decades ago, but don't at least some systems still truncate your password to 8 bytes? (I'd venture to guess that the limit's been raised to something longer, but still reasonable -- maybe 256 bytes?)

      That could really cut into your odds: now there are 2^8,386,560 passwords, but chances are slim that they'll be short enough.

      --
      ________________________________________________
      suwain_2 :: quality slashdot p
    55. Re:Consequences? by suwain_2 · · Score: 1

      Do many systems even use a 'salt'?

      I've always thought that you could complicate things a bit more by simply hashing something other than the 'pure' password.

      Suppose my password is "password," which I'm sure the MD5 sum of is well-known. But now suppose that, when I set my password to "password," the system actually stores the hash of "hostname:password." Now, you have to know two pieces of information: my hostname *and* my password. If you make "hostname" any arbitrary string, perhaps random banging on the keyboard by the admin at system setup-time, it's suddenly much harder to compute MD5s, unless you're on the same system.

      --
      ________________________________________________
      suwain_2 :: quality slashdot p
    56. Re:Consequences? by beaststwo · · Score: 1

      I'm not a cryptologist, just a geeky engineer, but it seems to me that we're missing the point. Everyone seems to be making the assumption that you can use hashing to absolutely assure that the input data was what we thought it was.

      Since the hash contains less data than the original message (again, within the assumptions of the orginal article), we're dealing in probabilities. It seems to me that two factors come into account:

      1. That the probability of any message having the same hash as any other is sufficiently unlikely that it's useful (i.e., the above 2-bit digest value example)

      2. That the probability of a false message passing a hash check falls within our level of comfort for a given system.

      While I'd like for the hash my bank uses to be 100% reliable (at least when the error wouldn't be in my favor), I'm willing to accept that things will go wrong from time to time. We societally accept these risks.

      If we can't accept collision probabilities, then we should forget digesting altogether.

    57. Re:Consequences? by AnyoneEB · · Score: 1

      I believe that *nix systems have been using salts for a long time, and the most recent version of the NT password hash uses a salt, too. I'm not sure exactly how it is implemented (look at wikipedia, everything2, or the source code for that), but I think every password has a different salt which is stored along with the hash. This makes cracking a set of password hashes more difficult.

      If we're looking at and md5 problem though, having a salt or not may not add much protection. I guess if they're finding any string that hashes to that md5 hash, then they would have to keep trying until they got a string with the salt in the right place, which would take a lot longer than without a salt.

      --
      Centralization breaks the internet.
    58. Re:Consequences? by alexburke · · Score: 1

      P similar to Q similar to the square root of N, of course, is the birthday bound, which is most efficient.

      Phew! I'm glad we got that cleared up!

  11. What are the rammifications? by ThisNukes4u · · Score: 2, Interesting

    What are the possible rammifications if MD5 is confirmed to have a collision? What other hashing algo's are there that may take its place? And even if it does have collisions, is that serious enough to break many security systems already in place?

    --
    thisnukes4u.net
    1. Re:What are the rammifications? by Anonymous Coward · · Score: 0

      The editors removed a bunch of links in my article posting, including one which gave an explanation of the ramifications. Lousy Taco!

    2. Re:What are the rammifications? by thecampbeln · · Score: 1

      How 'bout giving us the link then?

      --
      "1984" was ment to be a warning, not a guidebook. You hear that Kim Jong-il!? BushCo?!
    3. Re:What are the rammifications? by halowolf · · Score: 0

      Well the obvious ramification is that since MD5 is used as part of the signature algorithm that if it is broken than those things signed with MD5 cannot be trusted. And trust is such a vital foundation to public key cryptography used on the internet, and for verifying the authenticity of downloaded executables, etc.

    4. Re:What are the rammifications? by halowolf · · Score: 1

      Agg now I have my MD5's mixed up with SHA-1's! I'm going to sleep...

    5. Re:What are the rammifications? by Gorath99 · · Score: 2, Informative
      What are the possible rammifications if MD5 is confirmed to have a collision? What other hashing algo's are there that may take its place? And even if it does have collisions, is that serious enough to break many security systems already in place?
      It has already been established that MD5 has collisions. This is actually pretty trivial, since MD5 maps a byte string of arbitrary length to a byte string of length (IIRC) 16. Thus, since there are infinitely more strings of the former variety than of the latter variety, there must be at least one collision.

      So, the fact that there are collisions is not a big deal; we already knew that. If one is found, then that doesn't really change anything. What would change everything is if someone found a way to find a collision for an arbitraty byte string. That way you could set up a mirror for a popular piece of software and instead of the real program, you could distribute something that has the exact same md5sum, but which does something completely else (most likely nothing sensible, since it'll be effectively a random string).

    6. Re:What are the rammifications? by Anonymous Coward · · Score: 0

      How on earth is it insightful/interesting to ask such obvious questions? /. has become lame. Hello technocrat.

    7. Re:What are the rammifications? by Anonymous Coward · · Score: 1, Interesting

      What would change everything is if someone found a way to find a collision for an arbitraty byte string. That way you could set up a mirror for a popular piece of software and instead of the real program, you could distribute something that has the exact same md5sum, but which does something completely else (most likely nothing sensible, since it'll be effectively a random string).

      What would make that really bad is if the cracker wrote a trojaned version of the software and padded it with extra random data (say in the block padding at the end of a tar file) to make the hashed value of the file come out the same. Now you have a working trojan and a seemingly valid hash.

    8. Re:What are the rammifications? by KillerCow · · Score: 1

      MD5 has been long suspected to not be collision resistant. As such, it isn't used in applications which require collision resistence.

      I don't remember the details (never learned the actual algorithm,) but a while ago someone showed how to get collisions in a weakened version of MD5. [I think they could find a collision after 2 rounds of the algorithm, instead of the usual 4.]

      Not being collision resistant isn't so bad. What really matters is being pre-image and second pre-image resistant. But collision resistance implies the other two, so it is the goal.

      The algorithm to take MD5's place (and should have once the earlier weakness was shown) is SHA-1.

    9. Re:What are the rammifications? by archen · · Score: 1

      Well if SHA-1 has collisions, then that doesn't leave much in the place of strait hashing algorithms. But, you can pretty much use any encryption algorithm for simple passwords. Just encrypt a password using itself as they key. I may be mistaken, but I believe this is what is done if you choose to use Blowfish for password encryption on FreeBSD (I'm guessing Linux supports this as well). So it's probably just as likely that you could use something like 256bit AES (if you trust such a new algorithm) to secure passwords.

      As for checksums... well I really don't care so much. MD5 will probably work just fine for that purpose.

    10. Re:What are the rammifications? by sugarboy · · Score: 1
      What are the possible rammifications if MD5 is confirmed to have a collision? What other hashing algo's are there that may take its place? And even if it does have collisions, is that serious enough to break many security systems already in place?

      It depends on how the collision is discoverred. If the collision is derived using brute force methods ('hard'), then there's probably not much to worry about. If the collision is discoverred using the result hash and working back from there ('easy'), then that's another story. The security implications depend on the application of the hashing algorithm.

      For example: lets suppose we use MD5 hash of user passwords, and we check the MD5 hash of the password that the user supplied when attempting to authenticate against the one that we have. If the hash's match, then we assume that the user enterred in the correct password, and we validate them.

      Why do we store the MD5 hash as opposed to the original password itself? Because the MD5 hash is (was) supposedly 'secure', meaning that we can't derive the original password from it (except via brute force or other password guessing techniques), in the event that the MD5 hash is compromised. So, even if the 1337 h4x0r managed to get the hash, it doesn't do him any good.

      Now suppose that if there was suddenly a method of easilly deriving data that will generate a matching MD5 hash. If the 1337 h4x0r is able to get the MD5 hash, then he can generate a password that he can authenticate with. If that's the case, then storing the MD5 hash is no better than storing the plain text password.

      This (as far as I understand it) is pretty much what happenned with the old DES style password hashes that we used to use in unix.

      This is a problem with hash' in general. Because the algorithm will accept any input to generate a hash, theoretically the set inputs is infinite, and every input will generate a hash value from a finite set of hashes.

      The approach to reducing the problem is to 'reduce' the infinite input set to a 'smaller' infinite set, or a finite set (f you could define a reasonably large finite set with no (or very few collisions) then it's not a problem). That way you not only have to find a string that generates the same hash, but is also within the input set, therfore satisfying two conditions.

      In terms of using MD5 hashes for passwords, this should actually be fairly trivial (if required at all). The input set is already fairly limited to certain characters (a-zA-Z0-9...). It can be restricted further by placing limits on the size of the string. Then you can also implement a good password policy. These all limit the size of the input set. The goal is to limit the input set such that even if another string was generated with the same hash, the chances of it being within the input set are very minimal. Then, the trick is that when you verify the MD5 hash, you also check to see if the input string was in the input set.

      Another method would be to include some statistical information about the input string (a 'signature') in your hash. For example: lets suppose that 'm' is your input data, H() is your hashing function (say, MD5), and Sig() is a statistical function (it can really be just another hashing algorithm).

      This is what's currently recorded:

      passwdhash = H(m)

      You can also record the statistical information:

      passwdhash = H(m) || Sig(m)
      (where '||' means you just concatenate the strings). This means that what the user supplies has to match two different criteria, therefore the input set is much smaller.

      That should be good enough, but you can get as fancy as you need to by adding more criteria. Eg:

      passwdhash = H(m) || Sig (m) || Sig( H(m) || Sig (m) )
      The good thing about this is that on modern unix systems it's not too hard to implement something that will do this.
  12. md5 is so weak by Krunch · · Score: 5, Informative
    $ echo "first post" | md5sum d008960fa6b395dca1c8362165bb31be
    I didn't figured out your title tough.
    --
    No GNU has been Hurd during the making of this comment.
    1. Re:md5 is so weak by Anonymous Coward · · Score: 0
      I isn't figuring out your grammer. :)

      Shurely 'grammer' is a speling mistoke.

    2. Re:md5 is so weak by Anonymous Coward · · Score: 0

      Did you try echo "fp!" | md5sum ?

    3. Re:md5 is so weak by Anonymous Coward · · Score: 0

      Yeah.

      $ echo "fp\!" | md5sum
      74b19454c895cf3b9f92f7976336c847 -

    4. Re:md5 is so weak by Bingo+Foo · · Score: 5, Insightful

      Okay, jokes aside, this shows how social engineering will always be among the best tools for cracking. Krunch, you da man.

      --
      taken! (by Davidleeroth) Thanks Bingo Foo!
    5. Re:md5 is so weak by Roguelazer · · Score: 4, Funny

      I give up on the title... I tried all the usual slashdot titles (varying caps and w/ and w/o punctuation)...

      "md5 cracked?"

      "crack this!"

      "GNAA"

      "In Soviet Russia, MD5 cracks you!"

      "fp!"

      "First Post!"

      I just don't get it...

    6. Re:md5 is so weak by nazsco · · Score: 1

      it's probably "goatse", if i knew /.

    7. Re:md5 is so weak by Niten · · Score: 1

      No mod points right now, so I'll just say it: very astute.

    8. Re:md5 is so weak by Anonymous Coward · · Score: 0

      You said toke!
      On national... well.. international... oh well.. fuck it..

    9. Re:md5 is so weak by eatmadust · · Score: 1

      wouldn't $ echo -n "first post" | md5sum d008960fa6b395dca1c8362165bb31be make more sense? -n would not print the trailing new line. OK, wrong in this case, but normally that's how you do it! The "correct" sum would then be 6436a55a08760c5b94dbed4476f83fcd

    10. Re:md5 is so weak by essreenim · · Score: 1

      True, why suck up so much electrical power and resources on a trivial MD5 collision when you can
      use a common desktop to correctly crack a password for someones mail account. What with all the sophisticated long passwords floating around...

    11. Re:md5 is so weak by freeweed · · Score: 3, Funny

      I didn't figured out your title tough.

      Just wait till the end of the conference. I hear there's a rumor MD5 is broken :)

      --
      Endless arguments over trivial contradictions in books written by ignorant savages to explain thunder in the dark.
    12. Re:md5 is so weak by vinlud · · Score: 3, Funny

      I give up on the title... I tried all the usual slashdot titles (varying caps and w/ and w/o punctuation)...

      You forgot the typo's...

      --
      Repeat after me: We are all individuals
    13. Re:md5 is so weak by Krach42 · · Score: 1

      sacrifice ~$ echo "Just wait till the end of the conference. I hear there's a rumor MD5 is broken :)" | md5sum
      923b63f834837c76c216737fe0e3eed6 -

      Nah, that can't be it.

      --

      I am unamerican, and proud of it!
    14. Re:md5 is so weak by tedgyz · · Score: 1

      I tried "frist post" and similar variants to no avail, but I think the typo comment is actually quite relevant. :-)

      --
      "No matter where you go, there you are." -- Buckaroo Banzai
  13. privacy by bunburyist · · Score: 1, Insightful

    In the wake of stories like this, and last year's story about RSA-576 being cracked (here [slashdot.org]), is this a message that we need more secure forms of encryption than we already have? RSA is great so far, but how long until 1024 is broken? Or any other schemes, like the MD5 hashing that's used for digital signatures? Topics that people with lots of credentials behind their names are going to have to solve. Keeping ahead of the crackers is a big concern not only for security of transactions, but for personal privacy as well.

    1. Re:privacy by Anonymous Coward · · Score: 0

      RSA-1024 isn't about 2 times more difficult to break than RSA-576. It is many, many, many, many, many times more difficult to break, and I doubt it will be broken any time soon.

    2. Re:privacy by Anonymous Coward · · Score: 0

      rsa has not been broken. one (i repeat : ONE) random rsa key has been broken and nothing else. this is just a game to evaluate how much computing power you require to attack ONE rsa key of x bits long. rsa has not been broken and if you really believe that rsa 576 has been broken (1) you obviously don't understand shit about the purpose of the rsa contests and (2) you understand shit about cryptography itself. keep your false and invalid comments for yourself.

    3. Re:privacy by Anonymous Coward · · Score: 0

      The above looks copy and pasted from a previous story. The give away is the line:

      ...last year's story about RSA-576 being cracked (here [slashdot.org]), is this...

      The url in the square brackets doesn't follow a link as one would expect in an original/authentic post.

    4. Re:privacy by Anonymous Coward · · Score: 0

      I don't know how to make links, ok sorry i put in the thing and it takes it off ok you ho!

  14. Bound to happen by KaSkA101 · · Score: 1

    It was bound to happen, we will create stronger ones and as computers get better we will need better and better ones.

    1. Re:Bound to happen by drix · · Score: 1

      You're forgetting the great equalizer: someone will invent a fast way to factor large primes, in which case the better part of two decades of crypto research gets tossed out the window. A highly uplifting thought that should make us all sleep better.

      P.S. Who is to say this hasn't happened? Certainly not the NSA.

      --

      I think there is a world market for maybe five personal web logs.
    2. Re:Bound to happen by Daniel+Boisvert · · Score: 1

      someone will invent a fast way to factor large primes

      That would be a neat trick indeed. Perhaps you meant to say that "someone will invent a fast way to factor products of large primes"? ;)

    3. Re:Bound to happen by HuguesT · · Score: 1

      In fact it is trivial to factor large primes. If P is a prime of any size, its factors are 1 and P by definition.

    4. Re:Bound to happen by Daniel+Boisvert · · Score: 1

      Touche. :)

  15. is this a joke? by Anonymous Coward · · Score: 0

    md5 and sha1 hashes have been crackable with different programs for a very long time.

  16. Re:Just a Thought . . . by Anonymous Coward · · Score: 4, Funny

    Good plan. I will switch all my systems to "telnet" immediately. Thank you for your insightful comment.

  17. Re:Just a Thought . . . by ThisNukes4u · · Score: 2, Insightful

    Well, even if they confirm a collision, that doesn't mean that it can be exploited, especially if they don't release many details of how they got the collision and under what circumstances.

    --
    thisnukes4u.net
  18. Of course! by prichardson · · Score: 0

    There always going to be collisions in check-sums. If that weren't the case than we wouldn't need to distribute actual files, just check-sums.

    --
    Help I'm a rock.
    1. Re:Of course! by addaon · · Score: 3, Informative

      how the heck did the parent get modded up informative?

      There always going to be collisions in check-sums. If that weren't the case than we wouldn't need to distribute actual files, just check-sums.

      Um, wow. Let's start from the top.

      1) Yes, there's always going to be collisions in check-sums. Fewer bits than the checksum than the data, pigeon hole principle, yada yada.

      2) Even if there were no collisions, the whole point (well, one of two... more on the second below) is that they're NOT REVERSIBLE. So perhaps just distributing collisionless hashes would be a good replacement for kazaa (it's all about collection, not actually listening, doncha know)... but for those who like to be able to use files, it's kinda missing the point.

      3) And that point is, no KNOWN collisions. More importantly, no way, given a known data/hash pair, to generate another data string with the same hash. If you violate that principle, you've made the cryptosystem useless for ensuring that the data is the same data that was originally hashed. And that's exactly what this article is about... a technique (who knows how general yet?) to find collisions.

      --

      I've had this sig for three days.
    2. Re:Of course! by Zangief · · Score: 2, Funny

      There always going to be collisions in check-sums. If that weren't the case than we wouldn't need to distribute actual files, just check-sums.

      You just ruined a GREAT and REVOLUTIONARY compression algorithm!!!

    3. Re:Of course! by Cinabrium · · Score: 1
      Yes. Of course!
      But the issue is that when cryptographers speak of `collissions', they point to collissions in the hashing function that turn the task of finding a collission easier (in computational terms) than it should be according to probability. E.g., in this case:
      • SHA-0 gives 160-bit-long hashes;
      • For having a probability better than 0.5 of finding a collission, you should need 2**80 operations (due to birthday paradox) for finding two random messages mapping to the same hash; and 2**159 operations for finding a message mapping to the same hash than a certain message.
      • These guys have discovered collissions into the hashing function, making the task as easy as 2**51 operations.
    4. Re:Of course! by prichardson · · Score: 2, Insightful

      You seem to have misunderstood my post. In any function where f(a) can never equal f(b) where a and b are two unequal real numbers there is an inverse to function f. The reason that MD5 works for what it's intended to is because it has collisions. Since it has collisions, and because it's a fairly complex function, it's impossible to come up with any kind of inverse. With anything that isn't loss-less compression you can't be absolutely sure that you have the same data that was originally hashed. There is always going to be some input that will generate the same hash. Hashes are used to reduce the probability that your data has been tempered with. Hashes reduce the probability so much that everyone considers them proof that no tampering has been done, including me. Until someone can use a hash to create a file that can be hashed and get THE SAME hash MD5 will not be broken.

      --
      Help I'm a rock.
    5. Re:Of course! by oskillator · · Score: 1
      Even if there were no collisions, the whole point ... is that they're NOT REVERSIBLE.

      If there were no collisions, the hash function would a one-to-one operation, and thus be reversible.

      If you hadn't been in such a rush to find someone to insult, you might've realized that this was the original poster's whole point.

    6. Re:Of course! by Anonymous Coward · · Score: 0
    7. Re:Of course! by evilviper · · Score: 1
      2) Even if there were no collisions, the whole point (well, one of two... more on the second below) is that they're NOT REVERSIBLE.

      Yes, but if you also knew the length, you could create a file of that size, then start systematically incrimenting each bit in the file. Find the hash of that file, and compare it to the original hash. If it doesn't match, incriment another bit.

      Sure, it'll take forever, but it would be possible.
      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
  19. Happy for holes? by ejito · · Score: 5, Funny
    "We are glad to announce that we found a collision for SHA-0." - from the article
    I just found the wording kinda weird... I'm hoping to do research in cryptography in the future. I know I'd feel quite proud if I found a vulnerability like that, but is it appropriate to show such enthusiasm? Kinda like an overjoyed astronomer that finds a comet heading into a collision course with Earth.
    1. Re:Happy for holes? by 0x0d0a · · Score: 5, Funny

      Kinda like an overjoyed astronomer that finds a comet heading into a collision course with Earth.

      *I'd* be happy. Missing seeing that comet would definitely suck.

    2. Re:Happy for holes? by snero3 · · Score: 1

      I think they are happy they found it and announced it unlike some back hat hacker who would find and not announce it + use it to their own ends. I can see why they are happy can't you?

      --
      It said "windows 98 or better" so I installed Linux
    3. Re:Happy for holes? by Anonymous Coward · · Score: 0

      No, that's still not good. Because in your excitement to announce it to the world, you forget you have a phone, a computer with email, or any other form of communication. You get in a car and drive to tell someone (WITH THE EVIDENCE!!!), and you crash and die.

      Then you're dead, and all the credit goes to some snotty little kid who goes on to play hobbits in his spare time.

      I've seen it happen.

    4. Re:Happy for holes? by bigsteve@dstc · · Score: 1

      That's a bit unfair. Clearly, English is not their native language.

    5. Re:Happy for holes? by tesmako · · Score: 1
      It is bad that SHA is not secure, just like the earth-killing comet would be a bad thing. Knowing about it however means one can do something about it, which is clearly a good things.

      Never forget that one does not really have to be a conspiracy theorist to suspect that the NSA could have known about this for a decade or so already :)

    6. Re:Happy for holes? by DMNT · · Score: 1

      I don't understand why several people have missed this: It's a good thing to get it known in the public that something possibly is breakable.

      Microsoft relies in security by obscurity: If they don't tell about a flaw, there is no flaw, even if there's an existing exploit for that.

      However, I'm not sure if glad is the word they should use there...

      --
      ?SYNTAX ERROR
    7. Re:Happy for holes? by Dwonis · · Score: 1

      Heh. Now I can repudiate that bad contract I signed with PGP! ;-)

  20. Umm... by Anonymous Coward · · Score: 5, Interesting

    I'm a neophyte, so excuse my ignorance, but how does the fact that a full-time researcher (working on the SHA-0 algorithm), using a computation requiring: (direct quote follows):
    The computation was performed on TERA NOVA (a 256 Intel-Itanium2 system developped by BULL SA, installed in the CEA DAM open laboratory TERA TECH). It required approximatively 80 000 CPU hours. The complexity of the attack was about 2^51.
    ... in order to find two different input values which produce the same output value (I presume that's what they did.. I could be wrong) make _any_ sort of practical difference?

    1. Re:Umm... by Anonymous Coward · · Score: 0

      if a researcher can break it, so can uncle sam

    2. Re:Umm... by rhysweatherley · · Score: 2, Insightful
      I'm a neophyte, so excuse my ignorance, but how does the fact that a full-time researcher (working on the SHA-0 algorithm), using a computation requiring: (direct quote follows): ... to find two different input values which produce the same output value (I presume that's what they did.. I could be wrong) make _any_ sort of practical difference?

      Once upon a time, you needed millions of dollars and specialized hardware to crack 56-bit DES. Now it can be done with commodity hardware and a little time. Moore's Law is relentless. Today's TERA NOVA is tomorrow's PDA.

    3. Re:Umm... by Nevo · · Score: 1, Interesting

      I'm a neophyte too, but my answer is that this doesn't make a hill of beans' worth of difference.

      SHA wasn't "broken" at all... a brute-force attack found a single collision.

      Whoop-dee-do.

      Now, if it were possible to generate a message to collide with a given hash, that would be a big deal.

      One collision out of 80 kilohours of CPU time isn't newsworthy, IMO.

    4. Re:Umm... by addaon · · Score: 5, Informative

      Good question. :-)

      The complexity of the attack was around 2^51.

      SHA-0 is a 160-bit hash. Now, you might at first think that means it would take aorund 2^160 tries to get two strings that collided, but because of the birthday paradox (what's the probability that two people on a football field have the same birthday) it's actually supposed to be the square root of that, or 2^80.

      Unfortunately, 2^51 is much, much less than 2^80. Which means that this crack was not just brute force (which is kinda redundant, since the definition of a crack to a cryptosystem is a violation like this without using brute force, but whatever). That means they've found a mathematical technique for making this 'easy'. Generally, once the idea is out there for an easy crack, people can gnaw on it and make it more general or easier, bringing this down to every-day-concern level.

      --

      I've had this sig for three days.
    5. Re:Umm... by Anonymous Coward · · Score: 3, Informative

      SHA is a 160-bit hash; the average attack complexity is expected to be 2^159, so reducing this to 2^51 reveals a huge weakness. The difference is a factor of 2^108 - the attack should have required 25961484292674138142652481646100480000 CPU hours, or trillions of actual years.

      But there shouldn't be any practical effect - SHA-0 was believed to be weak, so nobody really uses it. The news about possible weaknesses in other algorithms like SHA-1 and MD5 is much more significant.

    6. Re:Umm... by logic+hack · · Score: 1, Offtopic

      Are you kidding? Once Longhorn is released, these systems will be in every living room!

    7. Re:Umm... by shadow_slicer · · Score: 4, Insightful

      "Now, if it were possible to generate a message to collide with a given hash, that would be a big deal."

      Really? I don't think so.
      In order to do anything with it it would also have to pass all the other sanity checks.

      Use an faked md5 to put out rootkitted .tgz? Odds are that any other message with the same hash isn't going to be a valid .tgz.

      Use md5 to verify logins? Then who cares if someone can generate a message to collide with your password's hash when it's computationally more difficult than regenerating your password.

      For the all applications that I've heard md5 being used, I don't think it would be a big deal. But of course I probably am not thinking of some other places md5 is used...

    8. Re:Umm... by Anonymous Coward · · Score: 0

      The difference is a factor of 2^108 - the attack should have required 25961484292674138142652481646100480000 CPU hours, or trillions of actual years.

      Oops, it would only have required 2^80 steps because of the birthday attack, meaning the difference is a factor of 2^29. So it should have taken around 42949672960000 CPU hours if you ignore Moore's law, or several million years. But now people can find a collision in weeks.

    9. Re:Umm... by FLAGGR · · Score: 0

      Obviously your new to slashdot or something. In a few years when every skript kiddie and their grandma are making SHA-0 and MD5 spoofers in VB .net (not that it'll be around that long (jokes, jokes) ) then I think we can ask you again if it was news worthy. Oh, and by the way, it wasn't a brute force attack, some one in the forums explained it clearly.

    10. Re:Umm... by yppiz · · Score: 5, Informative
      Mod parent up. I just waded through 50 posts, and this is the only one that got it right.

      The key is not that they found a collision, but that they did so with substantially less than brute-force effort. Substantially less here means 30 - 130 orders of magnitude less (depending on whether you call SHA-0 a 2^160 space or a 2^80 space because of the birthday paradox mentioned in the parent article).

      --Pat / zippy@cs.brandeis.edu

    11. Re:Umm... by Anonymous Coward · · Score: 0

      ROTFLMAO!

    12. Re: Umm... by Black+Parrot · · Score: 2, Funny


      > Now, if it were possible to generate a message to collide with a given hash, that would be a big deal.

      DeaR Valooed Customer,

      Ple ase tipe yoUr credit card imformaTion into the_form beElow.

      Tha nk s,
      Customr Cervise

      --
      Sheesh, evil *and* a jerk. -- Jade
    13. Re:Umm... by Anonymous Coward · · Score: 0

      Since when did /.ers start believing in small-sample statistics? Answer: We don't.

      There is exactly one sample here. Let us know when they've reproduced this problem 10x on different keys at 2^51. And at that time, I'll say "good job, now go do 100, and I might believe you." And I won't really believe it until they've done at least 1000.

      For all we know, they just got lucky.

    14. Re:Umm... by addaon · · Score: 1

      Um, there's no requirement for belief... they'll publish their algorithm, we'll look over it, say "hmm that makes sense"... exactly as happens for any other successful cryptanalysis. The only difference here is they can say "and it has practical application" (that is, is computationally feasible), which (a) makes it easier to publish and (b) is interesting in and of itself.

      --

      I've had this sig for three days.
    15. Re:Umm... by Jeffrey+Baker · · Score: 1

      Check out the two collissions for SHA-0. They look different but if you actually calculate the Hamming distance of the two messages it's only 74 bits. That's bad! It means that instead of finding out that "First post!" collides with "kajhdfkjh" they found that "First post!" collides with "F1rst ps0t" which is an important result.

    16. Re:Umm... by Anonymous Coward · · Score: 0

      It only needs to calculated once though and then it can go in a database for others to use/copy.

    17. Re:Umm... by computer_chacham · · Score: 1

      Small correction--orders of magnitude is base ten, while we're talking about base two.
      So multiply your orders of magnitude by ~ 0.30103 .

    18. Re:Umm... by God!+Awful+2 · · Score: 1

      I'm a neophyte too

      I could tell.

      but my answer is that this doesn't make a hill of beans' worth of difference.

      But your answer is wrong because the impact of this discovery is that it probably is possible to generate a message to collide with a given hash.

      -a

    19. Re:Umm... by Anonymous Coward · · Score: 0

      /. shouldn't be allowed to publish news about CRYPTO-papers any more ... :-) The problem is, RTFA does not apply for most /. readers in this case.

      Happy to see someone got it right.

    20. Re:Umm... by Anonymous Coward · · Score: 0

      They better play the lottery then, with 30-130 orders of magnitude of luck.

    21. Re:Umm... by ztane · · Score: 2, Informative
      Use an faked md5 to put out rootkitted .tgz? Odds are that any other message with the same hash isn't going to be a valid .tgz.

      Perhaps not, but it could still work... :
      % gzip file
      % cat /dev/urandom >> file.gz
      % gunzip file.gz
      gunzip: file.gz: decompression OK, trailing garbage ignored
      %
    22. Re:Umm... by rew · · Score: 4, Insightful

      For passwords, the collision avoidance of MD5 will make sure that your very complicated password is not "cracked" by some stupid child typing "hi" at your password prompt. But not much more.

      The important issue starts when you use PGP to sign your message.

      Suppose you sign:

      mybank: Please transfer $100 to my son's account: 12345678 ref: Have a nice vacation!

      then your PGP program will calculate the MD5 sum of this message and sign that using RSA (or DSA). As all know those algorithms are very very strong.

      Next, the attacker will change your message to:

      mybank: Please transfer $1000,000 to J. Crook account 87654321 Ref: XXXXXXXXXXXXXXXXXXXXXXXXXXXX

      and when the crook can then adjust the XXX part in such a way that an MD5 has collision occurs.... You just authorized your bank to do something you may not have wanted....

      There should be about 28 X's in there. That will allow the crook over 2^160 possible messages. Trying them all, there is a high probability that at least one of them has a hash collision with your signed original message. If calculating which one of the possible over 2^160 messages has the "right" MD5sum, costs significantly less than 2^160 operations, then that's considered breaking the hash....

    23. Re:Umm... by Tony-A · · Score: 1

      Uhhh, orders of magnitude is whatever base you're working in, not necessarily stated or even known.
      With a range of 30-130 orders of magnitude, the 0103 of 0.30103 looks kinda silly. Base 2 to base 10 is a small difference. This is talking about big differences.

    24. Re:Umm... by evbergen · · Score: 1

      Of course, this gets much harder, and without guaranteed success, if the length of the 'X'es string is limited to, let's say, 16 characters.

      Cheers,

      Emile.

      --
      All generalizations are false, including this one. (Mark Twain)
    25. Re:Umm... by Rasta+Prefect · · Score: 1
      SHA wasn't "broken" at all... a brute-force attack found a single collision.

      This wasn't a brute force attack. It did use significant CPU time, but the complexity of the attack was around 2^51 instead of the 2^80 or so that would be expected.

      --
      Why?
    26. Re:Umm... by rew · · Score: 1

      Right. If you have 16 places to vary the plaintext, you only get say 6bits per byte, or about 96 bits of freedom. You'll get "about" 2^96 different md5sums, or have a chance of one in 2^64 of hitting the ONE md5sum that had been signed.

      So, you're saying the bank should limit "comment" fields to 16 places, and that will solve the problem?

      It is very easy to think of ways to find "bits-of-freedom" in different applications. I reacted to a post where someone found it impossible/unlikely to make a tar.gz's md5sum come out correctly. Give me two seconds and I can come up with a way. 1... 2... You can still adjust the timestamps in the tar.gz for example to give you bits-of-freedom that will allow you to get the signed md5sum.

      As an attacker, I might even consider telling gzip not to compress at all. Result: I don't need to reverse the gz step after every adjustment to the next candidate.....

      Be careful with "it'll be hard to make this into a real exploit" kind of remarks: the making it into a real attack is easier than cracking the crypto.

  21. This could be a problem. by WhatAmIDoingHere · · Score: 3, Funny

    As long as we don't tell anybody, it doesn't exist right?

    Oh...

    --
    Not a Twitter sockpuppet... but I wish I was.
  22. Broken how? by Matey-O · · Score: 3, Funny

    If it's brute force, I'm not worried. If it's a cryptologically trivial computation, I'll have to go back to ROT26.

    --
    "Draco dormiens nunquam titillandus."
    1. Re:Broken how? by prichardson · · Score: 3, Funny

      ROT26 sucks! Doing ROT13 twice makes so much more sense. I've even heard of people who do ROT2 thirteen times. I think they're a little wacky though.

      --
      Help I'm a rock.
    2. Re:Broken how? by Epistax · · Score: 1

      I'm sorry but if your password is "god" or "sex" no algorithm is gonna save your sorry ass.

    3. Re:Broken how? by he+who+meows · · Score: 1

      You might want to look up "ROT26" before you call it an algorithm.

    4. Re:Broken how? by Anonymous Coward · · Score: 1, Funny

      ROT26 sucks!

      Then for the love of God, WHY ARE YOU USING IT???

    5. Re:Broken how? by shfted! · · Score: 1

      Dude! I cracked it! I can read your post in plain text! *feels 'leet*

      --
      He who laughs last is stuck in a time dilation bubble.
    6. Re:Broken how? by Anonymous Coward · · Score: 0

      However, I can do ROT26 in real time on my current hardware.

  23. Isn't this Inevitable? by Josh+Booth · · Score: 3, Informative

    Isn't it always going to happen when you make a hash code that is shorter than the string you make it from there is the possibility of collisions? Or is it just that there was found two equal length strings that have the same hash? Either way, is it that big of a deal?

    1. Re:Isn't this Inevitable? by Sebastopol · · Score: 1

      Yes, by definition this will happen. IANAC, but from what I understand the probability is SOOO slim that it doesn't matter for some applicatioins. What this implies for the security of the algorithm is beyond me...

      --
      https://www.accountkiller.com/removal-requested
    2. Re:Isn't this Inevitable? by thogard · · Score: 1

      What this work provies is the chance isn't trivial to compute.
      Assume the latest kernel tarballed is md5ed. If I created a hacked version that has a backdoor and I want to put this on a cracked mirror, I would need to install my code and then find some other bits to change to get the same md5. In throey I could just pick 128 bits that don't matter and change them till I get the same md5. The older theorys were that it would be close to a 1 in 2^128 chance of picking bits to give the same. This work may show an easy way to pick the values of the bits or something else. MD5 is very uniform but there are some cases where its not quite right.

      Depending on what yoru doing with md5, this may not be an issue at all.

    3. Re:Isn't this Inevitable? by seanadams.com · · Score: 2, Informative

      a cryptographic hash is not the same as data encryption - it's a *signature* of the data such that generating other data with the same signature is difficult. This is how you can check that the mandrake ISO you snagged off of bittorrent is a) intact and b) authentic

      I'm not sure about the definition of "collision" in this case, but of course if you always reduce the number of bits, or always maps to fixed number of bits, then you will always have >1 thing (specifically, an infinite number of things for most hash algos) which will map to the same reduced number of bits.

      What they mean by "broken" is that you can trivially *find* such a string.

    4. Re:Isn't this Inevitable? by TFoo · · Score: 1

      You are absolutely correct -- since the hash code is shorter than the string, then there must be some pair of inputs that hash to the same code... ...but you're missing the point. They didn't find this pair by chance -- logically think about it: they'd have to have hit the 1-in-2^64 jackpot! We're talking number of atoms in the universe here!! No: the point is that they found some pair not by chance but by an algorithm of some sort that let them **generate a pair of inputs that hashed to the same key**.

      Here's why it matters: lets say you "digitally sign" (this isn't just limited to signatures, take my word for it that the same argument applies all encryption using MD5 or SHA-0) some important piece of data to protect it from tampering. That means you take the data and calculate the hash code of it -- and store the hash somewhere. You can tell if the data is ever changed by looking at the hash code.

      In theory, nobody in the world can tamper with the data without you knowing: because if they change the data at all, then it won't hash to the same value. In fact, it is computationally Hard (ie requires trying ~2^64 possible inputs) to find another input that will hash to the same signature that you have!

      2^64 is too big a space to search -- if the bad guy really has to just blindly try inputs to find one that matches your key: you're pretty safe.

      On the other hand -- if the bad guys found an _algorithm_ that made this faster -- so that they didn't have to search quite so far to find another message that hashed to your key -- then you're in a lot of trouble.

      You with me so far? Think back to that 2^64 chance here: the fact that someone out there in the world was able to find _any_ pair of inputs that hash to the same output -- well, that is *huge*. It strongly implies that is some algorithm which lets you compute a second input given a first input.

      You with me? See why it is a big deal?

      Note that I'm definitely glossing over a ton of subtlety and Important Details here, -- but this could very well be a significant thing...

    5. Re:Isn't this Inevitable? by Anonymous Coward · · Score: 0

      I'm still not concerned. They changed 30% of the input to get this difference. If they showed me they could target a few bytes (i.e., I want to change byte 30 to 0x85) and then selectively change another group of bytes (change bytes 90-120) in such a way as to get the same hash... then we have something to worry about.

      If you randomly change 30% of a .tar.gz you're going to get the GIGO affect, gaurenteed.

    6. Re:Isn't this Inevitable? by TFoo · · Score: 1

      correction: with sha-0, the expected work to find a matching pair is 1-in-2^80, not 1-in-2^64....which makes it even more surprising to find a match.

    7. Re:Isn't this Inevitable? by shadowmatter · · Score: 4, Informative

      Indeed, there are infinitely many unique bit strings we may take the hash of, and yet only 2^160 hash values they can map to. By the pigeonhole principle, some hash value is mapped to by at least two unique bit strings.

      (The pigeonhole principle says that if you shoot N pigeons with N+1 bullets, and don't miss, one pigeon has two holes... or something like that.)

      Now hash functions can be classified as either weak collision resistant or strong collision resistant.

      A hash function h is weak collision resistant if, given h and a bitstring x, it is impossible to find some other x' such that h(x) = h(x'). Note that x is specified.

      A hash function h is strong collision resistant if it is infeasible to compute any collision (x, x') of h.

      So, if a collision was found in MD5, it's no longer strong collision resistant (since the person found a pair x, x' such that h(x) = h(x')). Its when MD5 is no longer weak collision resistant that things start to get scary -- meaning, given any arbitrary bit vector, I can find another bit vector that generates the same hash value in a reasonable amount of time. This means that, after you download your favorite Linux ISO, just making sure the MD5 hash checks out does not garuantee the authenticity of the file.

      But no worries. There's still SHA-1. And if that isn't good enough, there's its bigger cousins, SHA-256, SHA-384, and SHA-512.

      - sm

    8. Re:Isn't this Inevitable? by jamesh · · Score: 1

      Even if they can trivially (for certain values of 'trivial') generate an input string the same as, say, a gzipped iso, the first thing i'm going to do, after I validate the hash, is gunzip it. What are the chances that the generated input string is a valid gzip stream?

      Taking the simpler case of an uncompressed exe file, to successfully tamper with it or replace it, they have to be able to generate some data to tack on the end (or middle, or start, or whatever) of their trojan exe file, which is a different to just generating a string that has the same hash as another.

      I'm reserving the right to panic until later.

    9. Re:Isn't this Inevitable? by labratuk · · Score: 1

      Yes, but the difference is being able to predict one.

      --
      Malike Bamiyi wanted my assistance.
    10. Re:Isn't this Inevitable? by Anonymous Coward · · Score: 0

      Score: +5 Mentions Pigeon-Hole Principle

    11. Re:Isn't this Inevitable? by Sebastopol · · Score: 1

      Oof, I never thought of that. Thank you for making me more scared.

      --
      https://www.accountkiller.com/removal-requested
    12. Re:Isn't this Inevitable? by intangible · · Score: 1

      It would suck to find out my Debian ISO was really Windows ME.

    13. Re:Isn't this Inevitable? by Jeffrey+Baker · · Score: 1

      If the payload is ASCII text and only the low 7 bits are ever interpreted, you could flip the 8th bit all you want and nobody will ever notice.

    14. Re:Isn't this Inevitable? by julesh · · Score: 1

      If you can generate a collision with a known starting hash (which isn't what has been done here, incidentally), you can probably arrange it so that the algorithm produces a 'tail' to an initial data stream that produces the right hash. That's only a matter of changing the start state of the algorithm, which will usually be possible. In this case, you can produce a .tgz file that uncompresses to whatever you want and then fails as corrupted at the end -- but you might not notice that failure and just execute what decompresses successfully first. In the .exe case it's even easier... that 'tail' can be in a section of the file that isn't used at all, so no failure would occur.

    15. Re:Isn't this Inevitable? by Anonymous Coward · · Score: 0

      (The pigeonhole principle says that if you shoot N pigeons with N+1 bullets, and don't miss, one pigeon has two holes... or something like that.)

      LOL

      This is much better than the usual version with putting pigeons into pigeonholes.

    16. Re:Isn't this Inevitable? by seanadams.com · · Score: 1

      (The pigeonhole principle says that if you shoot N pigeons with N+1 bullets, and don't miss, one pigeon has two holes... or something like that.)

      I prefer not to ruin the meat, so I always put the second bullet through the original hole.

      Mmmmm. pigeon.

  24. ohhhh yeah by Anonymous Coward · · Score: 0
    Rumors are that at the informal rump session

    n3rd pr0n

  25. Repeat after me... by Space_Soldier · · Score: 1

    NOTHING IS SECURE FOREVER!

    1. Re:Repeat after me... by Rosco+P.+Coltrane · · Score: 1

      NOTHING IS SECURE FOREVER!

      I don't know, I've been using the very latest in encryption technology: "cat /dev/urandom > file_to_encrypt". It works very well indeed. Even I can't recover the original content, that's how secure it is!

      --
      "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
    2. Re:Repeat after me... by FLAGGR · · Score: 0

      but if I take the power supply out of my computer and lock it in a room with armed guards, I'm willing to be your 1337 skillz wont h4x0r it.

    3. Re:Repeat after me... by fiber_halo · · Score: 1
      Nothing Is Secure Forever!

      Unless it is.

    4. Re:Repeat after me... by Anonymous Coward · · Score: 0

      Come back after 'forever' has passed and make that statement...

      Until then you can't prove it.

  26. Yeah, but.. by AgentPhunk · · Score: 1, Funny

    That's nothing. I can decrypt 1024-bit encryption in my head, in under 60 seconds, with Natalie Portman and Halle Berry rolling about in hot grits just off to the side of my 6 flatpanels.

    Seriously though, makes you wonder how long the spooks have known about this.

    (yells out) "Hon? Where's the tin foil?"

    1. Re:Yeah, but.. by colonslashslash · · Score: 1
      That's nothing. I can decrypt 1024-bit encryption in my head, in under 60 seconds, with Natalie Portman and Halle Berry rolling about in hot grits just off to the side of my 6 flatpanels.

      Actually it was 7 flatpanels.

      Oh dear god, I am admitting I actually paid attention to that movie, I'm guessing the next step is lynching by the slashdot mob?

      --
      She's built like a steak house, but she handles like a bistro....
  27. It probably isn't a big deal... or is it? by chrispyman · · Score: 1, Insightful

    Considering that MD5 is mostly use to "sign" programs, how likely do you think it is that someone could "trojan" your app while keeping the MD5 sums the same. On another note, there could be big problems when we uses these in, oh, a password database. I guess the severity of the problem really depends on how you're using it.

  28. What are the ramifications? by shawn_f · · Score: 3, Interesting

    I am curious about 2 things:

    Firstly, perhaps someone here on slashdot.org might be able to shed some light on the particular encryption algorythms mentioned in the article...thier basic differences, weaknesses and strengths.

    Secondly, I am assuming that a "collision" is not as seriuos as a crack...what is a collision, and what are the ramifications of this in my ssh sessions and the like...

    I have read about and used encryption, but have never really delved into it. I would venture to say that a good many of us would benefit from some enlightenment.

    1. Re:What are the ramifications? by ThisNukes4u · · Score: 1

      A collision refers to when two differnet inputs to an algorithm compute out to the same encrypted string, such as inputing HI and HEY into MD5 and them both coming out to YJFPSL(complete BS). If this is possible, then it is easier for someone to reverse a hash to the plaintext because there is a link between the HI and HEY in the algorithm, and with that knowledge it is easier to reverse the hash.

      This may be incomplete or inaccurate, as I don't study cryptography for a living or as a hobby, so anyone who knows better correct me.

      --
      thisnukes4u.net
    2. Re:What are the ramifications? by ctr2sprt · · Score: 4, Informative
      Well, basically, there is a kind of data structure called a hash table. The idea there is that you take an arbitrary-length key and convolve it so you get a fixed-length, shorter result called a "hash." The hash is then used as an index into some other kind of data structure, typically a flat array. This lets you get very fast accses to anything in the hash table, provided that your hashing function is a good one. The main factor which hurts hashes is a function that doesn't evenly spread data across the entire table. Consider the English language. Some letters start words much more frequently than others. Using the first letter of the key would therefore be a bad hash function, since there would be a lot of keys with the same hash and several with almost none.

      So, very simply, collisions are when a hash function takes two different input keys and produces the same hash for both as output. Going with our English-language library example from above, "Stevenson, Robert Louis" and "Sheridan, John" would both produce the same hash ("S"). That's all there is to a collision. They are inevitable when you take longer strings and turn them into shorter ones.

      Now what this has to do with security may be becoming clearer. Because SHA1 and MD5 are good, general-purpose algorithms, they are used in lots of places. They are used to store your password. (You enter your password, the system runs MD5 or whatever against it, then stores that. When you need to verify your password, it runs the same process and compares the hashed versions.) They are also used as "digital signatures" to verify that the content of an object hasn't changed. And they are, of course, used in hash tables with a lot of disparate entries.

      But this is genuinely not something you should be worried about. Like I said, collisions are inevitable. But the computational effort required to find one is far from trivial. It's much easier for someone to crack your password using a dictionary-based attack or social engineering or pretty much anything else, at least for now. When you should worry is if someone finds a way to take a hash and use that to produce something which, when hashed again, will result in the original: that is, two-way hashing. MD5 and SHA1 are both allegedly one-way hashes, so you cannot ever go from the hash to any sort of original data. This is why they're secure for passwords and the like. But if that should turn out to be wrong...

      I can't speak much to specifics about MD5 and SHA1 because I don't really have the background in math to do so. (I have the background to write a computer program implementing the algorithms, but I can't explain why they work so well.) MD5 is older and has been suspected to be not-so-good for a few years now. SHA1 is newer and better. That's about all I can tell you.

    3. Re:What are the ramifications? by Anonymous Coward · · Score: 0

      as far as ssh goes.. probably nothing. SSH does a Diffie-Hellman key exchange, and then encrypts the rest of the connnection - typically using blowfish, or possibly others.

      MD5 and SHA are hashing algorithms - basically one way cryptography, once encrypted you can never get the information back. Basically you take some information like a password, run it through the algorithm and get UNIQUE bunch of junk on the other side (cipher text). If you know what the cipher text is, and you run a password through the algorithm and it matches the cipher text, then you know you have a match (the same password). This is also used the same way to generate checksums of files.

      Typical encryption like you are thinking is generally not affected directly. Hashing algorithms are only used to protect information which cannot be recovered or verify/confirm things.

    4. Re:What are the ramifications? by smallpaul · · Score: 1

      Your description was fine except that "hash tables" are not relevant to the discussion. They are an application of hashes but not one with any relevance to cryptographic security. It will never be possible for a hash of 2048 bits to return you the data of a 2MB file. That's not worth worrying about. The problem is if someone gets your /etc/passwd and can figure out how to generate a new password that will hash to the same value. At that point, there was no value in hashing the password before putting it in /etc/passwd.

    5. Re:What are the ramifications? by mewphobia · · Score: 1
      When you should worry is if someone finds a way to take a hash and use that to produce something which, when hashed again, will result in the original: that is, two-way hashing. MD5 and SHA1 are both allegedly one-way hashes, so you cannot ever go from the hash to any sort of original data. This is why they're secure for passwords and the like. But if that should turn out to be wrong...

      Just wondering, if a hashlength for a given piece of data < length of arithmatically coding that same data then can we consider ourselves safe from restoring the data from the hash?

    6. Re:What are the ramifications? by julesh · · Score: 1

      Yeah, I don't think SSH is affected. I believe it uses the entire public key of a connected entity to identify them (is this right? Someone here must know more about the protocol than I do). SSL, on the other hand, uses hashes (usually SHA-1) to verify the signature of the X509 certificates that are used to identify either client or server. If SHA-1 were completely broken, then an attacker would be able to imitate an SSL client or server.

  29. Oh it's okay then by Rosco+P.+Coltrane · · Score: 0

    Many systems, especially those that use cryptography for digital signatures are most at risk here."

    Well, they still beat some Microsoft "encryption" method from Microsoft...

    --
    "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
    1. Re:Oh it's okay then by Champion3 · · Score: 1

      Windows 95 originally stored the user's password (the key for it's PWL "password cache") as plaintext in memory. OEM Service Release 2 introduced so-called "encryption" - they XOR'd each character in the buffer with 0x7E.

      --
      I'm going to the casino. Don't gamble.
    2. Re:Oh it's okay then by Stevyn · · Score: 1

      Alright, but that was almost 10 years ago. I was looking for the knee-jerk reaction saying how microsoft is worse, but I was hoping it would detail about windows XP.

      I'm sure microsoft will spin this as "another hole in shoddy open source software." However, isn't since this was open source encryption it was damn good for as long as it lasted? I'm sure if microsoft opened up it's encryption schemes they'd be cracked very quickly because they're not used to the security scrutiny that linux is required of.

      I'm amazing an open source encryption scheme lasted so long. Not because I doubt open source, but if a safe company released detailed specs of the inner workings of their safes and it took years for people to break into them, that's one hell of a safe! I'll admit I don't know much about encryption techniques, but it amazes me that even open techniques can be this good.

  30. Kind of expected this by Vilim · · Score: 4, Informative

    I have been expecting the MD5 crack for a while, it just isn't a secure hash anymore. SHA-0 was proven to be mathematically weak back in '98. There was no real need to brute force it. I highly doubt that SHA-1 was cracked, if it was, we are in trouble, is there any better hash to replace it? I figured that we would get quite a few more years out of SHA-1

    What we really need is a mathematically strong hash which will let you user define its strength. For example the first byte of the hash tells the program how strong the hash is. As the strength byte increases, the mandatory execution time of the hash increases exponentially.

    --
    History will be kind to me, for I intend to write it - Sir Winston Churchill
    1. Re:Kind of expected this by Vilim · · Score: 1

      OK, I am being stupid here. We do have a better algorithm SHA-256, SHA-224, SHA-384, and SHA-512. Of course if SHA-1 was broken because of a flaw in the algorithm, these may be vulnerable too.

      --
      History will be kind to me, for I intend to write it - Sir Winston Churchill
    2. Re:Kind of expected this by g-san · · Score: 5, Funny

      hmmmm....

      I have heard rumors of a cypher on the street called SHA-X. It's not mathematically strong, as you so eloquently put, but it's supposed to be really good, really stong stuff. And is really asymmetrical, meaning it takes less time to decypher the message after encryption. Unfortunately it uses a semi-random keysize, so you never know the strength until you try to decrypt. It also has a key that destroys itself 48 hours later so Alice or Bob can't even tell you were ever encrypted. Only problem is the algorithm tends to overuse one particular register resulting in spontaneous cpu burnout.

      But hey, if you got extra cpus...

    3. Re:Kind of expected this by evilviper · · Score: 1
      I highly doubt that SHA-1 was cracked, if it was, we are in trouble, is there any better hash to replace it?

      Well, there are a few... Whether they are "better" is obviouly debatable: rmd160, tiger, whirlpool.

      rmd160 is available in openssl.
      Tiger (tree) hashes are used by many P2P programs.
      Whirlpool is still very young.
      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
    4. Re:Kind of expected this by Anonymous Coward · · Score: 0

      Slashdot language nazi: Kind is German. In English you write "Children have expected this."

    5. Re:Kind of expected this by epi314 · · Score: 1

      The mandatory execution time should only need to increase polynomially. It is finding a collision that would hopefully take exponential time.
      Doubling the number of bits in the hash used in the hash might make it take four times as long to compute the hash and exponentially (say 2^50) times longer to crack.

    6. Re:Kind of expected this by Kynde · · Score: 1

      I have been expecting the MD5 crack for a while, it just isn't a secure hash anymore.

      Care to elaborate on that a bit?

      Being able to produce a weak collisions with SHA-0 is not really a "yet another end of cryptography as we know it". Almost all uses for MD5 and SHA-1 only require them to be strong collision resistant.

      Moreover, I wouldn't jump the gun based on rumours. SHA-0 was known to be broken, like you already said, hence we have SHA-1 and MD5 has been around quite a while and has been studied quite a bit.

      --
      1 Earth is warming, 2 It's us, 3 it's royally bad, 4 we need to take action NOW
    7. Re:Kind of expected this by David+Gerard · · Score: 1

      I believe that was included in Hamilton 95.

      --
      http://rocknerd.co.uk
    8. Re:Kind of expected this by tod_miller · · Score: 1

      "it just isn't a secure hash anymore.'

      o.O

      Some truth, all cryptography has a weakness in brute force lookups. However, this is so absurdly crazy with todays CPU's, that it isn't really a weakness.

      Knowing that this is your only weakness, is a strength. I do not think that they found a magic way of reducing the complexity required to find a collision, or indeed, brute force the result.

      I think the 'discovery' of this has no impact of the prior strength, existing strength, or applications of SHA-1 or MD5.

      As far as I know, a hash will always have collisions.

      As long as a hash is one way only (and the work to go the other way is significantly high) then it works.

      I fail to find this 'reduced complexity' in predicting or locating the collision, which should be as hard as finding the original. So there are two +5 posts here, that sounds intelligent, that make no sense to me.

      At all. Unless I am wrong, they have said, hashes, that by thier nature have collisions - have been found to have - collisions.

      now they should be (trez) unlikely in a large enough numbr of bits.

      I will re-read for this magic talk about 74 bit hamming, which just sounds like a fluke to me.

      --
      #hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
    9. Re:Kind of expected this by Vilim · · Score: 1

      Some truth, all cryptography has a weakness in brute force lookups. However, this is so absurdly crazy with todays CPU's, that it isn't really a weakness.

      Yes, but the relative strength of a hash isn't only based upon how strong it is mathematically. For example, as far as I know RC5-64 doesn't have any mathematical weaknesses, but would you use it for your credit card details? I know that with todays CPUs it would take a very long time to crack, but that doesn't change the fact that Moores law made it an unsecure algorithm.

      I know the ability to brute force an algorithm isn't a very good way of cracking it, but it shows that with the current technology it is possible to brute force it. No matter how strong your algorithm, the key size has to stay ahead of the technology

      Efforts are already underway to find a collision in MD5, the fact that it is even being attempted shows that Moores law has caught up to MD5.

      --
      History will be kind to me, for I intend to write it - Sir Winston Churchill
    10. Re:Kind of expected this by Anonymous Coward · · Score: 0

      You are being simple minded. Execution time cannot be defined because of Moore's law and other possible advances (like using your brain rather than brute force).

    11. Re:Kind of expected this by Vilim · · Score: 1

      Your right, execution time cannot be defined, but if we have a strong (brain-proof) variable strength CHF whos execution time scales exponentially (or polynomially as another poster suggested) with the strength, then it will last us alot longer than MD5 has because we can just up the execution time (CPU Cycles, not hours an minutes) without going to a fundamentally different algorithm

      --
      History will be kind to me, for I intend to write it - Sir Winston Churchill
    12. Re:Kind of expected this by tod_miller · · Score: 1

      I hate Moored law, what bullshit it is. Some guy looked at the rate of CPU growth (probably using excel version 1.0 or something...) and now its catching up with things.

      Lets all forget Moores law! Lets call it my law, market forces spur on investors to give money to intelligent people who find ways of making things go faster. This happens at a rate that may seem predictable.

      (think doom and todays GPU's)

      OK, back to reality. Yes, and No. Yes, brute forcing is a weakness, but it takes a small ammount of time to encrypt something 'small' with a 10k bit key today. And as computers get faster, we can more readily use huge key sizes.

      It will always be so much faster to encrypt a large key than to brute force one.

      Unless they find that they have been thinking the wrong way, and you can reverse these hashes using a codex from a pack of lucky charms. (or a whistle from a pack of captain crunch...)

      So that wraps it up. The worse part is not knowing. If they find it, you had better hope you used two algorithms to encrypt your data!

      I XOR all my stuff with DEADBEEF, but don't tell anyone, else they will find a way to hack it!

      --
      #hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
    13. Re:Kind of expected this by Tim+Browse · · Score: 1

      I hate Boyle's Law, what bullshit it is. Some guy looked at the pressure and volume of gas at different temperatures (probably using a pen and paper or something), and now it's used to design submarines.

      Let's all forget Boyle's Law. Let's call it my law, gas is all schloopy and stuff.

  31. So? by capologist · · Score: 1

    Does this collision actually mean anything?

    OK, so somebody found two documents that have the same digest. This doesn't mean that they can construct a document to match any given digest. Even it did, the document so constructed would be gibberish.

    Does this discovery point to any kind of meaningful exploit?

    1. Re:So? by mblase · · Score: 1

      OK, so somebody found two documents that have the same digest. This doesn't mean that they can construct a document to match any given digest. Even it did, the document so constructed would be gibberish.

      IANACE (I Am Not A Crypto Expert), but the application here isn't encrypting documents, but passwords. If I have a password which, when encrypted, is identical to your encrypted password, then I can use it to log into your account whether I know your actual password or not.

      The only time I've used crypto functions is in web development. It's foolish to store passwords in an Access database in plaintext, so you encrypt them in your code and then compare it to your encrypted password in the database. That way, nobody can use the passwords even if they steal the database -- unless it's possible to find a collision within a reasonable amount of time.

    2. Re:So? by Tom7 · · Score: 1

      Yes. If you could, for instance, pad the end of a document with arbitrary data without making it invalid, then it is easy to see this being useful for an exploit.

      Really, it all depends on what the technique is. But many formats have room for such padding, and all it takes is one forged Verisign signature to cause a lot of problems...

    3. Re:So? by John+Hasler · · Score: 1

      > Does this collision actually mean anything?

      Yes. It means that collisions are far, far easier to find then we had believed. This indicates that there is a defect in the algorithm, and it may not be long before someone finds a practical exploit.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    4. Re:So? by arcade · · Score: 2, Informative

      Does this discovery point to any kind of meaningful exploit?

      Yes, I can think of one immediately.

      File sharing networks, where someone can inject garbage with the correct hash - for example in a bittorrent network. I don't know which hashing function bt uses, but if it turns out to be easy to generate collisions - you could wreak havoc against movie-sharers all over the globe.

      I'm pretty sure the MPAA / RIAA would throw a gigantic party if such a break became easy.

      --
      "Rune Kristian Viken" - http://www.nwo.no - arca
    5. Re:So? by Pendersempai · · Score: 1

      Meh, they'd just release a new version of BT that used a different hash function.

      And if ALL hash functions were broken, the ??AA would be the least of our worries.

  32. How is this news? by 0racle · · Score: 4, Informative

    Im reading 'Practical Cryptography' by Niels Ferguson and Bruce Schneier, a facinating read on current crypto and cypher systems btw. Now it was copyrighted 2003, and there (page 88) they talk about SHA-0 being broken when it was created and give the distinct impression that SHA-1 is not to be trusted.

    On a side note, I would recommend 'Practical Crytography' to anyone interested in, or working with modern crytography.

    --
    "I use a Mac because I'm just better than you are."
    1. Re:How is this news? by Anonymous Coward · · Score: 5, Informative

      Okay, the story goes like this:

      NIST (working with the NSA, but in a GOOD way) develops the SHS, of which SHA is part, during their effort to develop the DSS (of which the DSA standard is part). The standard is published, and everybody rejoices.

      A little while later, NIST says, "Hey! There's a new version of SHA! We're calling it SHA-1. There are, uh, 'security concerns' with the old SHA. We can't tell you what it is, but don't use it. By the way, the main difference between SHA and SHA-1 is the introduction of a shift instruction. Buh-bye!"

      The obvious inference here is that the NSA's crypto folks found a nasty problem with the original algorithm, and had it changed in the interest of keeping the Secure Hash Algorithm, well, secure.

      Now, this catches the interest of cryptologists. They spend a bunch of time analyzing the algorithm, and a couple of folks found that there are a few attacks-- very theoretical, very impractical-- that could find a collision in slightly less time than a brute force search or a birthday attack.

      With that, everybody stops trusting the original SHA. Most people decide to use SHA-1 or MD5 instead-- but SHA-1 has a longer hash length than MD5 (SHA-1 is designed for ~80 bits of security, MD5 designed for ~64 bits), so a lot of people decide to trust SHA-1 instead.

      What's happened at CRYPTO '04 is a significant improvement on the attacks discovered previously. A birthday attack on the SHA-0 algorithm would normally be on the order of 2^80 memory and 2^80 time. This attack used 2^51 time and significantly less memory-- in other words, this attack is somewhere in the area of 500 million times faster than previously known possible.

      As for the idea that "SHA-1 is not to be trusted", well-- maybe the more paranoid folks avoid it, but a lot of applications still use SHA-1:

      For the record, SHA-1 is used in PGP (but not exclusively, and not necessarily as the default hash algorithm), in SSL (again, this can be configured), in a number of TripWire-like programs, by Gentoo's "emerge" system, the *BSDs' "ports" trees, and-- this is important, here-- as the only officially recognized hash for use in the digital signature standard (DSS).

      So an attack on SHA-1 would be VERY significant.

    2. Re:How is this news? by Anonymous Coward · · Score: 0


      A little while later, NIST says, "Hey! There's a new version of SHA! We're calling it SHA-1. There are, uh, 'security concerns' with the old SHA. We can't tell you what it is, but don't use it. By the way, the main difference between SHA and SHA-1 is the introduction of a shift instruction. Buh-bye!"

      The obvious inference here is that the NSA's crypto folks found a nasty problem with the original algorithm, and had it changed in the interest of keeping the Secure Hash Algorithm, well, secure


      That's just what they want you to think. Clearly, the NSA was unable to break SHA-0, and so they backdoor'd it by introducing that shift instruction so that they can indeed break SHA-1. Then, they leak the allegations of "security concerns" about SHA-0 to get you to switch to the new, weaker version.

      I'm switching back to SHA-0!

  33. Time taken by Xugumad · · Score: 1

    "It required approximatively 80 000 CPU hours"

    You'll excuse me, I'm sure, if I refrain from panicking just yet? If this is true, we do need better algorithms, but that's still 9-10 years to find a collision! Not likely to be a problem, at least for the stuff I try to keep secure (our physical security is far, far weaker than that, for example).

    1. Re:Time taken by NeoThermic · · Score: 1, Troll

      No. Read again. 80,000 CPU hours. Its like man hours. If two men work for 1 hour, thats 2 man hours.

      So in theory, you could assign 40,000 CPU's for 2 hours on the task and get a collision.

      NeoThermic

      --
      Use my link above, or to view my server, NeoThermic.com
    2. Re:Time taken by Anonymous Coward · · Score: 1, Informative

      I think they said it was a 256 CPU unit, so thats just 13 days to crack

    3. Re:Time taken by Zillatron · · Score: 1
      So in theory, you could assign 40,000 CPU's for 2 hours on the task and get a collision.

      Thank God that although I am very important to a select few people, I'm not worth 2 hours time on 40,000 processors. The little guy rests easy tonight.

    4. Re:Time taken by Paul+Jakma · · Score: 1

      To be specific, their 256 cpu Itanic cluster hence can find collisions in just:

      80000/256/24 = 13 days

      Also, SHA computation is simple integer arithmetic so, assuming the attack also is integer only, you dont need expensive Itanics (which have an edge on floating point only), a cheap P4 or Athlon will do the job as well. Finding collisions in SHA-0 within a few weeks is then likely quite possible for less than 500m (ie available even to smallish companies) or for any group that has enough members to give it access to a few hundred PCs.

      If the attack extends to SHA-1, this is fairly bad news..

      --
      I use Friend/Foe + mod-point modifiers as a karma/reputation system.
    5. Re:Time taken by Xugumad · · Score: 1

      Oh, certainly. My point was, the systems I maintain have much weaker security elsewhere, and contain little to nothing of value (they're mostly development or live servers for GPLed software). Someone interested in breaking in would probably have better success exploiting a flaw in, say, Apache, before I patched the software (there's usually a 24-hour window).

      The only real concern for my system's security is script kiddies, who seem unlikely to organise themselves enough to break the security on a low-value system.

      This is not to say I won't be happier when SHA-1 and MD5 are confirmed unbroken, or a replacement is found, just that I'm not overly stressed about this information...

  34. Re:Airplane quotes by xmas2003 · · Score: 3, Informative
    For those who don't recognize the above quote, go here ... especially Joey if you haven't seen a grown man naked yet ... ;-)

    BTW, it wasn't that long ago that /. reported about the Feds finally formally dropped DES.

    --
    Hulk SMASH Celiac Disease
  35. Collision != Broken by scovetta · · Score: 3, Informative

    A hashing algorithm H is "broken" when for an arbitrary input A, you can feasibly calculate another input B for which H(A) = H(B).

    All they found here were two values C, D for which H(C) = H(D). Anyone who thinks this was suprising needs to take a look at the idea of a hash:
    Start out with 512 bits (2^512 possible values)
    Hash it to 128 bits (2^128 possible values)
    For each possible value to come out of the hash, you're going to have (2^(512-128)) = 2^384 collisions.

    If they could find two data values with less than, say, 80 bits of data that both hash to the same, then that's something, 'cause that could be someone's password. And if two values of 80-bit data hash to the same thing, then the algorithm is bad.

    I just don't think this is anything special. It's sort of like saying, "look, i found my password in the newspaper by circling various letters and numbers thoughout the articles." Or maybe not, it's still just not that great.

    --
    Wer mit Ungeheuern kämpft, mag zusehn, dass er nicht dabei zum Ungeheuer wird. --Nietzsche
    1. Re:Collision != Broken by 0x0d0a · · Score: 5, Informative

      All they found here were two values C, D for which H(C) = H(D). Anyone who thinks this was suprising needs to take a look at the idea of a hash:

      The existence of collisions is obvious. The point is that it should be so phenomenally difficult to find a collision that you can't ever come up with one in a sane amount of time.

      If they could find two data values with less than, say, 80 bits of data that both hash to the same, then that's something, 'cause that could be someone's password.

      That would be unlikely to be a big deal. For passwords, I can just brute force the password, maybe precompute a dictionary of password hashes.

    2. Re:Collision != Broken by GoofyBoy · · Score: 2, Interesting


      >I just don't think this is anything special.

      From the article;
      The finding of a single collision in SHA-1 would not, by itself, cause much trouble, since one arbitrary collision won't do an attacker much good in practice. But history tells us that such discoveries are usually followed by a series of bigger discoveries that widen the breach, to the point that the broken primitive becomes unusable. A collision in SHA-1 would cast doubt over the future viability of any system that relies on SHA-1; and as I've explained, that's a lot of systems. If SHA-1 is completely broken, the result would be significant confusion, reengineering of many systems, and incompatibility between new (patched) systems and old.

      --
      The surprise isn't how often we make bad choices; the surprise is how seldom they defeat us.
    3. Re:Collision != Broken by chgros · · Score: 1

      Actually there are several definition of "broken" (or of "cryptographically secure").
      In this case the hash is not cryptographically secure against chosen plaintext attack; if you can find a collision, you can e.g. get a document signed and claim another, different document was signed instead.

    4. Re:collision != broken by 44BSD · · Score: 2, Insightful

      Collision == broken if the reason the collisions were found lies in a property of the algorithm which until now was misunderstood.

      Collision == broken if the research leads to subsequent work which further weakens the algorithm.

      Agreed that finding a collision via an exhaustive search is no big whoop, but I don't *think* that is what this rumor is about ;^).

      Basically, that crack in your foundation *might* be no big deal, but it *might* mean that there's a spring running 6" below the foundation wall and in six months your mansion collapses.

    5. Re:Collision != Broken by Unnngh! · · Score: 1
      Unless something has changed since I first looked into it, there is no mathematical proof substantiating a one-way hash. We just think they exist because they are so phenomenally complex compared to the amount of damage that computer-based attacks have been able to do to them. So far.

      I would imagine that one-way hashes in the form of digests (SHA, MD5, etc.), do not actually exist. The collision found in SHA-0 is very interesting and comes from data of the same length. Nonetheless, you're correct, a spoof attack would be horribly impractical based on this data alone.

      The problem is, this is big news and will help further research by quite a bit, I would speculate, based on my previous assumption that there are not really one-way hashes. At some point we will be able to forge digital signatures of SHA and MD5. When that point comes it may be too late to change rapidly to a better system. Time to start looking around for a better solution now. No crypto will be good forever.

    6. Re:Collision != Broken by Anonymous Coward · · Score: 0

      Collisions?! Now my hashing compression software is fucked.

    7. Re:collision != broken by KenFury · · Score: 1

      First off, I think it was only one hour. More importantly, I remember a confrence I was at and someone said I can break this key for 5 million in computing power. Most people did not appear to care however some of us went "Oh Shit". 5 mil is trivial amount of money to even a small nation (iraq, iran, syria, brazil, etc..) 500 mil is still nothing to a major power (US, NATO, China) scary times.

    8. Re:collision != broken by hundalz · · Score: 1

      True to a certain extent. Even as we speak now, not many people can afford the 80000 CPU hours. So, Joe Schmoe won't be able to crack the MD5, unless he gets 1000 (say) of his mates to help hand in hand.

      The problem is that these algorithms are meant to be one way. No two files are meant to share the same hash. At the end of the day, there may be many more files that may prove to have the same effect. As they say: it's only a matter of time.

      It may be that this is only a one timer, it may be that they have found a major flaw in the algorithms and more combination of files may have the same hash. But these events are eye openers as they have a "proof of concept" theme to it, and one can just extend it further. Who knows, maybe one day some guy actually manages to craft another file that can have the same hash.

    9. Re:Collision != Broken by Nafai7 · · Score: 1

      it should be so phenomenally difficult to find a collision that you can't ever come up with one in a sane amount of time.

      For the less of us, what methods do you use to enforce this? It seems to me if you have the code that generates the hash, you could reverse engineer it and generate collissions just as easy. Why not?

    10. Re:Collision != Broken by 0x0d0a · · Score: 1

      For the less of us, what methods do you use to enforce this? It seems to me if you have the code that generates the hash, you could reverse engineer it and generate collissions just as easy. Why not?

      Understand that I am not a cryptographer, and not the best person to get an answer on this. Here's one link that might help.

      Basically, I can give you an intuitive idea of why this is possible. At first blush, you look at any single operation that a computer can do, and say to yourself "It's easy to come up with a set of input parameters to that operation that yields the same output. Every hash I can do is made up of individual instructions. Given that, why don't I just reverse each step in order, until I have the original inputs that will solve my hashing algorithm for the desired output?"

      For instance, adding two numbers A1 and B1 and taking the result C as output -- as "reversable for some value". I can easily choose a value A2, subtract it from C, and get another number B2 which again gives C as output.

      A cryptographer would say "there are no 'one way' operations apparent to you".

      Sometimes reversing a basic operation *can* be expensive. Prime factorizations are not, as far as I know, used in any hashing algorithms, but they are used in encryption, and prime factorization is an example of a one-way operation. Suppose I take in two numbers, with the constraint that the two are primes. Checking to see whether a number is prime is reasonably fast, with runtime order of something the log of the tested number to some constant power, so it isn't that hard to enforce this constraint. The output would be the two numbers multiplied together. Finding the two input prime numbers required to produce the output prime number, the reverse operation, takes *much* longer than the actual checking and multiplication involved in producing the output number.

      There is probably a lot more involved in producing a good one-way hash -- but at least I can demonstrate one example of a one-way operation on a computer.

    11. Re:collision != broken by asuffield · · Score: 1

      > Basically, that crack in your foundation *might* be no big deal, but it *might* mean that there's a
      > spring running 6" below the foundation wall and in six months your mansion collapses.

      In other words, the presence of the crack tells you nothing useful. That's a pretty good analogy.

    12. Re:collision != broken by The+Other+White+Meat · · Score: 1

      > No two files are meant to share the same hash

      Sorry, but you don't seem to understand what the hash function is doing. A hash takes a message of arbitrary size, and creates a fixed length message of much smaller size. The attributes of this smaller message are: 1. For a given input message, you will always receive the same output hash. 2. For a given hash, it is not possible to determine the input message.

      If you look closely, you will see that there is no requirement THREE regarding an absence of collisions. First, collisions are mathematically impossible to avoid when you have a hash function that produces an output hash of smaller length than the original message. For a message of length X, and a hash of length Y, 2^x > 2^y. There are always going to be more message possibilities than hash possiblities.

      This is not a flaw though; in fact, collisions are NECESSARY to meet requirement TWO. For a given hash, there MUST be collisions; if collisions were impossible, then it would be possible to take a hash value and calculate the one and only unique message which was capable of creating it.

      A hash function that creates hashes of the same length as the message would be LESS secure; it would essentially be a two way encryption algorithm with a hard coded key.

      As for the news that they found a collision, I say big deal. Show me an algorithm that allows me to generate meaningful messages that have hash values of my choosing, and then I will be concerned. Showing me that two gibberish messages happen to have the same hash is a non-event.

      --

      --- Generation X: The first generation to have SIG lines inferior to their parents... ---
    13. Re:Collision != Broken by one-of-many · · Score: 1

      But if:
      Given: H(), H(A)
      Find: B, where H(B) = H(A)
      is a problem with a practical solution, then a significant weakness has been discovered, no?

    14. Re:Collision != Broken by scovetta · · Score: 1

      Of course, this would totally undermine the essence of why people would use a hash. If this is indeed 'practical', then I'd say we need a better algorithm.

      --
      Wer mit Ungeheuern kämpft, mag zusehn, dass er nicht dabei zum Ungeheuer wird. --Nietzsche
  36. The real point... by chicagozer · · Score: 2, Insightful

    Right, in theory collisions are possible.

    However, if the algorithm is weak enough to allow a collision to be manufactured deterministically, then an attacker can craft a substitute message that returns the same hash. Think appending a junk file to the end of an archive to force the same hash.

    Can you see the problem with that?

    --
    ZZ
    1. Re:The real point... by prichardson · · Score: 1

      Of course, but as far as I can tell all that was found was a brute force collision.

      --
      Help I'm a rock.
    2. Re:The real point... by John+Hasler · · Score: 1

      The probability of stumbling upon an md5 collision by brute-force is so extremely, mind-bogglingly low that it is far, far, far more likely that the discovery of a collision is evidence of a defect in the algorithm.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    3. Re:The real point... by prichardson · · Score: 1

      It's simple to find a collision. An MD5 checksum is N bits, so anything larger than N bits is guaranteed a collision. Simply take a file N+1 bits long (random data would be nice and hash it. Then flip the first bit, hash the file, flip the first bit back, flip the second bit, hash again, and so on. Do this and eventually you'll run into a collision. Also, you'll only need to do N+1 calculations. N isn't that big either.

      --
      Help I'm a rock.
    4. Re:The real point... by Tony-A · · Score: 1

      Then flip the first bit, hash the file, flip the first bit back, flip the second bit, hash again, and so on. Do this and eventually you'll run into a collision. Also, you'll only need to do N+1 calculations. N isn't that big either.

      The sequence 100000 010000 001000 000100 000010 000001
      does NOT exhaust the space.

      You need 2^N+1 calculations

  37. Poetry by Anonymous Coward · · Score: 0

    for a new millennium
    would be a few stanzas
    with the resultant md5
    as a closing line.

    e2f536c7a7836ad (jk)

  38. OT: p690 by germinatoras · · Score: 1

    It's an IBM high-end Unix server. Runs Linux too, if you desire. Or both AIX and Linux simultaniously. Pretty sweet machines, and very enjoyable to work with.

    IBM p690

  39. wha?? by flacco · · Score: 3, Funny

    i don't care about the implications for crypto or the science behind all of this. i just want to know what the fuck a "rump session" is, and would appreciate tips on avoiding them if i should go to such a conference.

    --
    pr0n - keeping monitor glass spotless since 1981.
    1. Re:wha?? by Anonymous Coward · · Score: 0

      In High School we read "A Separate Peace", and in discussion a friend suggested the protagonists struggles were because he was gay, and trying to deal with his world. Someone helpfully pointed out the smoking room was called "the butt room" in the book.

    2. Re:wha?? by Anonymous Coward · · Score: 0

      From "The Ambiguously Gay Duo":

      Ace and Gary (as they assume, an, ahem, questionable pose): "What's everybody looking at???"

      Everyone else: "NOTHING!!!"

  40. Welcome to the Museum of Overused Slashdot Jokes by Anonymous Coward · · Score: 1, Funny

    I've been running Outlook Express 4 and IE 3.05 unpatched on Win98SE for ages without a single probl@$#%@&^+++NO CARRIER+++

    And here ladies and gentlemen, we have an example of the classic "NO CARRIER" joke. This probably was already in use before the 1-digit UID serie even started on Slashdot. It is quite old, and most people are tired of it, but some still thing it's funny.

    And now, we'll move to the next MOSJ exhibit: a large former-USSR flag, and words printed on swappable cards...

  41. IBM P690 by 0racle · · Score: 1
    --
    "I use a Mac because I'm just better than you are."
  42. It is far worse than the article says. by perry · · Score: 1

    At this point, all hashes other than SHA-1 (for practical purposes) are known broken.

    The paper is pretty definitive about MD4, MD5, HAVAL-128, RIPEMD and SHA-0. SHA-1 is rumored to be about to fall too.

    And yes, this is bad.

    1. Re:It is far worse than the article says. by eric76 · · Score: 1

      In the meantime until something new and better is found, you could use multiple hashes and concatenate the results.

      That is, given some text A, use the hashh MD4(A)+MD5(A)+HAVAL-128(A)+RIPEMD(A)+SHA-0(A)+SHA- 1(A).

      Even if they are all broken, it is still going to be very difficult to find a collision for all of them simultaneously.

  43. Re:Just a Thought . . . by addaon · · Score: 1

    Why wouldn't they release the details? Expect a full paper to follow as soon as they can get it polished off... something like this should breeze through peer review. This is good cryptanalysis and good science... this is what mathematicians (well, a subset of them) do. Why wouldn't they release the details?

    --

    I've had this sig for three days.
  44. MD5 Rumored broken? by tokachu(k) · · Score: 2, Informative
    1. Re:MD5 Rumored broken? by kasperd · · Score: 1

      Pretty big rumor!

      The problem with that article is, that they made a bug in their MD5 implementation. They got the byte ordering of the IV wrong. Which means that the collisions they provide is not for MD5, but rather collisions for a very similar hash function. They say they can produce collisions for an arbitrary IV, and why wouldn't that be true? There is no reason to believe the one IV would be easier or more difficult than the other. But the article doesn't give enough details for others to reproduce. So this article give very strong evidence that MD5 is broken, but no actual proof.

      --

      Do you care about the security of your wireless mouse?
  45. My response. by Anonymous Coward · · Score: 0

    fuck...

  46. Bah humbug by Anonymous Coward · · Score: 0

    You're just using a known plaintext attack. Nothing impressive about that at all.

    1. Re:Bah humbug by Anonymous Coward · · Score: 0
      OK, so you try to get that title by brute force...

      I tried 'imagine a beowulf cluster of that' and was very surprised that it didn't work!

    2. Re:Bah humbug by Kynde · · Score: 1

      You're just using a known plaintext attack. Nothing impressive about that at all.

      It's still by far the best form of attacks. Even this case shows it.

      --
      1 Earth is warming, 2 It's us, 3 it's royally bad, 4 we need to take action NOW
  47. No, No, No! by chicagozer · · Score: 5, Insightful

    Obtaining the original data is hardly the point of breaking the hash. You can't recreate the Illiad from 2048 bits for God's sake.
    An attacker's goal would be to substitute something else for the original data and make you trust it.

    --
    ZZ
    1. Re:No, No, No! by Kristoffer+Lunden · · Score: 1

      You can't recreate the Illiad from 2048 bits for God's sake.

      Well, you could, using the "infinite monkeys" algorithm. ;-)

  48. Re:Just a Thought . . . by Anonymous Coward · · Score: 0

    Why wouldn't they release the details?

    You know, some people, unlike you, actually left their parent's basement with 30 and have to make some money.

  49. Hacked by Chinese by Anonymous Coward · · Score: 0

    Just kidding. Someone had to say it.

  50. ROT13 by MidoriKid · · Score: 1

    Glad I stuck with ROT13.
    And you all said I was a fool!

  51. Re:It probably isn't a big deal... or is it? by baxissimo · · Score: 1

    Well I think the idea is that someone running a mirror could replace that nice linux installer executable with a short executable containing a root exploit followed by however many junk bytes are required to make the md5 come out right. Previously it was thought too hard to figure out an apropriate sequence of junk bytes to achieve the same md5 (in any reasonable amount of time), but now apparently someone has succeeded in doing it.

    So the amazing thing is not that md5 can have collisions. That's obvious. The big deal is that someone actually computed a sequence that hashes with md5 to a particular given hash value.

  52. Biggest problem with MD5 breaking by Facekhan · · Score: 3, Interesting

    I would just like to mention that one of the biggest problems of it becoming feasible to find a collision in MD5 is that a lot of routers use MD5 to authenticate routing updates with one another. If a hash is sniffed and the password is cracked then it becomes a trivial matter to inject bad routing updates and crash large networks especially if the inter-ISP BGP links are cracked. Its not quite as simple as I put it here but it is possible.

    1. Re:Biggest problem with MD5 breaking by BoneFlower · · Score: 1

      Yeah, then a bad guy will steal that, mutate your code, and distribute it to all your allies so you can't get through the servers that you need to get through.

    2. Re:Biggest problem with MD5 breaking by Anonymous Coward · · Score: 0

      Bad stargate pun alert.. Wrooop Wrooop Unscheduled gate activation....

    3. Re:Biggest problem with MD5 breaking by Kynde · · Score: 1

      I would just like to mention that one of the biggest problems of it becoming feasible to find a collision in MD5 is that a lot of routers use MD5 to authenticate routing updates with one another. If a hash is sniffed and the password is cracked then it becomes a trivial matter to inject bad routing updates and crash large networks especially if the inter-ISP BGP links are cracked. Its not quite as simple as I put it here but it is possible.

      But that would require MD5 being broken all the way to strong collisions, right?

      What they so far have is just a weak collision with a known-to-be-broken SHA-0. A

      --
      1 Earth is warming, 2 It's us, 3 it's royally bad, 4 we need to take action NOW
    4. Re:Biggest problem with MD5 breaking by 3247 · · Score: 1

      If you are able to find a collision in MD5, that still does not allow you to find the password.
      It does not even allow you to forge the payload (and leave the hash the same) because the input for the hash function includes the password.

      --
      Claus
  53. It means we all have to carry a midget around by IronChefMorimoto · · Score: 5, Funny

    Yep -- that's right. I'm not a crypto expert. Hell -- I'm a layman compared to most /.'ers, and my user number proves it (all 7 embarrassing digits of it). But I do know this -- if Slashdot crypto geeks are concerned about it, then we've reached the point of...

    CARRYING A MIDGET AROUND.

    Yes, it's true. Every person with encrypted data on Earth will soon have to carry around a Level 10 Anthromorphic Hexidecimal Midget Encryption System. Or "Midget Key" for short. The midget will become part of every computer purchase where the user requires high encryption, secured communications, etc. Families without sufficient room to accommodate and feed the midget will have to run computers with the old and vulnerable encryption technologies.

    Meanwhile, those of us with a Midget Key will need to have his/her encryption midget with us at all times. The midget will encrypt data locally by locking a portable hard drive to his/her wrist and preventing anyone OTHER THAN THE OWNER of said local data from accessing it again. To facilitate this local midget encryption, each encryption midget will be equipped with:

    - body armor
    - handgun
    - lightweight sub-machine gun
    - tactical nuclear or convential explosive self destruct device

    Addtionally, each encryption midget will be required to communicate with all other encryption midgets around the world using special genetically encoded phones that cannot be replicated outside of the midget gene pool. The phone will be surgically embedded in the arm of each encryption midget and require a drop of said midget's body temperature saliva to activate the phone (a.k.a. spit on the arm to make the call).

    Why encryption midgets? They're:

    - portable
    - eat less than an encryption giant and/or an encryption obese person
    - tough as nails

    Why tough as nails? If you've watched The Amazing Race at all this season on CBS, you have witnessed a midget drag her whiney, lazy cousin around the world. She has become the envy of other teams featuring health nuts, ex-Marines, and super-Christians. Who wouldn't entrust their data with a badass little person that can grab a live electrified cattle fence somewhere in South America, cuss about it, and STILL manage to continue the race?

    Get me THAT encryption midget, and you'll never get a hold of MY data!

    IronChefMorimoto

    [Note -- if the midget from the show mentioned above has been eliminated from said show, then our data is doomed. I've missed the last several episodes, so all may be lost.]

    1. Re:It means we all have to carry a midget around by aelbric · · Score: 3, Funny

      I only see 6 digits in your ID, maybe your hash was cracked.

      --
      nos laetus epulor qui would domito nos
    2. Re:It means we all have to carry a midget around by PinchDuck · · Score: 5, Funny

      It's better then my encryption dog. That system was broken with a raw DEADBEEF attack. Lousy mutt.

    3. Re:It means we all have to carry a midget around by jafomatic · · Score: 1
      each encryption midget will be equipped with:

      ... What, no flashlight?

      --
      ::jafomatic
    4. Re:It means we all have to carry a midget around by Mr.+Hankey · · Score: 2, Funny

      Not yet at the same time, you'll need to wait for the duct tape patch in a week or so.

      --
      GPL: Free as in will
    5. Re:It means we all have to carry a midget around by dgatwood · · Score: 0
      N00b.

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

    6. Re:It means we all have to carry a midget around by cyways · · Score: 1

      I'd bet all this is within Sumomo's (Plum's) powers, and she can ride on your shoulder, too!

      http://www.absoluteanime.com/chobits/sumomo.htm

    7. Re:It means we all have to carry a midget around by Wiz · · Score: 1

      Oooooh, nice of you to join us at last!

      5 digit UID?! Pah! ;)

    8. Re:It means we all have to carry a midget around by Anonymous Coward · · Score: 0

      then it would be far to easy for the encryption midgets to take over the world. Think about it they have all the best weapons, They have untapable 24/7 communication with each other and access to all important security info in the world. Plus like you said there tough as nails. And there small size makes it easier to sneak around.

    9. Re:It means we all have to carry a midget around by KnarfO · · Score: 1

      Nice sack^H^H^H^H UID man!...

      --


      "Creativity is allowing ones self to make mistakes. Art is knowing which ones to keep" - Scott Adams
    10. Re:It means we all have to carry a midget around by FlopEJoe · · Score: 1

      Like they always say... the most brilliant solution seems obvious after someone else thought of it. And since you didn't (c) your idea, let me introduce you to my new company, Encryp-o-Mig (tm).

  54. Mod parent up by Anonymous Coward · · Score: 0

    This is the first comment I've seen that accurately describes the real problem.

    1. Re:Mod parent up by Anonymous Coward · · Score: 0

      AGREE /parent.post HTTP1.1

  55. Ah... that doesn't sound quite right by Anonymous Coward · · Score: 0

    The "goal" of md5 is not encryption. I'm not sure what you have in mind.

    The purpose of a one-way (no, you can't "decode" it) hashing function is either passwords or checksums.

    It is called a "one-way" has for a reason. The hash value is only unique for some degree of "unique".

    In the case of checksums, the hope is that small changes in the original data will produce large changes in the generated hash, or at least some change.

    It is "possible" that a classified government document will produce the same hash as a warez binary of counter strike 2, but in that case, a sanity check would prevail.

    Common sense wins again.

  56. Re:Just a Thought . . . by Lisandro · · Score: 1

    True. It's not clearly stated HOW they found the colliding data blocks.

    This was done by using a generalization of the attack presented at Crypto'98 by Chabaud and Joux. This generalization takes advantage of the iterative structure of SHA-0. We also used the neutral bit" technique of Biham and Chen (To be presented at Crypto'2004).

    Could anyone with a background on maths shed some light on how this attack works, and how feasible is creating a data block for a given hash with it? That's all that matters.

  57. "informal rump session" by Anonymous Coward · · Score: 0

    Sometimes the jokes just write themselves, don't they...

    1. Re:"informal rump session" by Anonymous Coward · · Score: 0

      +1, teh funny -- wish I had mod points.

  58. Re:Just a Thought . . . by addaon · · Score: 1

    With 30 what?

    --

    I've had this sig for three days.
  59. Re:FP by Anonymous Coward · · Score: 1, Funny

    $ echo "I have no dick" | md5sum
    WOOT!!

  60. What kind of CPU hours? by NotQuiteReal · · Score: 0
    I think it was Casio calculator-watch cpu-hours.

    As soon as they get a Beowulf cluster of, say TI-87 Calculators working on the problem, then the search will go much quicker.

    Of course, I didn't RTFA, but what did they use. Obviously it wasn't 111 years of a single CPU.

    --
    This issue is a bit more complicated than you think.
  61. in summary... by Vanguard(DC) · · Score: 1

    uhhh...does "oh shit" cover it?...

    --
    "I think, therefore I get paid."
  62. collision != broken by Rex+Code · · Score: 2, Insightful

    I wouldn't consider MD5 "broken" unless someone had discovered an easy way to add bits to an existing file to produce a desired checksum. If that were the case, I'd be seriously concerned.

    Finding a single example of an MD5 collision in 80000 CPU hours is an interesting exercise, but I think we always knew collisions were possible (with any hash function), and I fail to see how this finding reduces the security of MD5 in any practical way.

  63. Re:Just a Thought . . . by SpooForBrains · · Score: 1

    Absolutely. Let's all just revert back to telnet. Or perhaps for maximum security we should all administrate our boxes with VNC ...

    --
    "The dew has clearly fallen with a particularly sickening thud this morning"
  64. No, this is a huge deal by Tom7 · · Score: 2, Interesting

    The paper that claims to have broken these says that the computation took 1 hour (with something like 15 seconds for subsequent collisions). Being able to generate collisions that quickly is a huge deal, and it has many applications -- it is often possible to "pad" a message with arbitrary data, so the data don't even have to have any particular format. It is scary to see all of these algorithms fall in the same week...

  65. Mod this legerdemain down by Anonymous Coward · · Score: 1, Insightful

    He subtly switched from "checksum" to "hash" starting from his point #2 in order to demolish the grandparent's post about "checksums" using arguments for "hashes".

  66. Collisions don't mean it's broken by avarame · · Score: 1

    Gee, correct me if I'm wrong, but aren't collisions like this absolutely inevitable?

    You have many bits of data becoming fewer bits of data. There WILL BE collisions.

    What does this REALLY mean about the strength of the algorithm, though? In one possible instance, a file could be changed in a very particular way that could theoretically result in a non-nonsensical modification to the source while the hash remained the same. Does this mean the algorithm is "broken"?! No.

    Or, if it DOES mean the algorithm was broken, then it was broken since it was dreamed up in some mathematician's mind.

    --
    Save time now so you can waste it later
    1. Re:Collisions don't mean it's broken by nytes · · Score: 1

      The issue is not that there are collisions, but that the collisions become predictable. e.g. Given a hash value, you could deliberately generate data to yield the same hash value.

      For a real world example, it was a broken hash function that allowed some versions of the iopener to be hacked. Someone was able to determine that the password hash algorithm had a bug in it, and they generated a password that had the same hash code - instant root login!

      --
      -- I have monkeys in my pants.
  67. For every hash there is an answer: by w1r3sp33d · · Score: 0

    forty-two.

  68. Re:Just a Thought . . . by 0racle · · Score: 1

    A collision in a hashing function wouldn't make an exploit in something that uses a block cipher ie ssh, they are not the same thing. Something that did use a hash in the event of a collision would cause a leak of information, not a application exploit.

    --
    "I use a Mac because I'm just better than you are."
  69. Summary by TheRealFoxFire · · Score: 5, Informative

    First, a little about SHA and SHA-1. SHA (0) was developed as a national standard hash function. Curiously, a last minute change was proposed by the NSA which resulted in SHA-1. The change was puzzling the cryptographers in academia. After some time, an attack was discovered on some classes of cryptographic hashes which SHA-1 turned out to be curiously immune to.

    All that aside, one should view cryptographers a bit like plumbers. Cryptographers have a bag full of equipment (algorithms), which they combine in many ways to accomplish what they want. After much research and testing, certain ways of combining those pipes, valves, and spigots are 'proven' to work well, within given assumptions, such as expecting an L-joint not to leak. SHA-1 likewise is an integral component in many cryptographic systems.

    SHA, MD5, RIPEM, and others are cryptographic hash functions. Cryptographers expect certain things out of a hash function. Its job is to take a variable amount of input bytes, and give you back a small, fixed number of bytes. Most importantly:

    1. The function is 'one-way'. You can't determine from the output what any of the input was.
    2. The probability that two inputs hash to the same output should be exceedingly low. In particular, an ideal hash function has a randomly distributed output for a large set of inputs.
    3. Given a hash output, it should be extremely difficult to construct another document which also hashes to that output.
    In this case, it seems that it may be much more easy than the designers had hoped to break the second condition. This tends to mean that 3 is easier as well, which has ramifications for security protocols.

    So, in summary, this discovery is a bit like finding out that an L-joint which has been used reliably by plumbers the world over is much more likely to leak than previously thought.

    But we haven't seen the results yet...

    1. Re:Summary by martin-boundary · · Score: 1
      Err, your summary 1.-3. doesn't make much sense. For 2., if you have a variable sized input and a fixed sized output, then at least one output has an infinite number of inputs which produce it. Probably, most outputs have an infinite number of different inputs which all produce the same output.

      What you really want is some formal way of stating that fairly similar looking inputs produce radically different looking outputs. That way, if you pick a smallish number of different inputs at random in the real world, the chance of a collision is very small.

      2. can't have much to do with 3. Since at least for one of the outputs, there's an infinite number of different inputs which give the same result, the real question is whether computing the sequence of colliding inputs is an easy task for a given output. But if you can manage that, then you can make up lists of inputs which all collide, but the inputs you find naturally in the world are going to be unaffected.(*)

      (*) It's hard to talk like this.

    2. Re:Summary by Erik+Hollensbe · · Score: 1

      Please come back when you learn what a hash is.

      Have a nice day.

    3. Re:Summary by Sircus · · Score: 1, Informative

      To restate your 1, 2 and 3 in a way that might be easier for people:

      1. The output doesn't look like the input. (This is actually really, really easy. The easiest bit by far of the problem. Say you've got a 20-byte output - as soon as you've got a 21-byte input, Shannon's law pretty much guarantees that your output no longer looks like your input - you *have* to lose information. If you manage to produce a 20-byte hash algorithm from which it's possible to reconstruct 1Mb of input text, you're in line for a Nobel prize and a visit from angry physicists with pitchforks and torches who now need to revise their ideas about the second law of thermodynamics.)

      2. Trying to find two inputs that produce the same output should ideally take at least 2^(N-1) steps. (It's necessarily easier to find two inputs with matching output than it is to find a matching input for a given output. Look up "Birthday paradox" on Google for why.)

      3. Trying to produce a input that will hash to a given output should ideally take at least 2^N steps (where N is the bitsize of the hash)

      --
      PenguiNet: the (shareware) Windows SSH client
    4. Re:Summary by julesh · · Score: 1

      Trying to find two inputs that produce the same output should ideally take at least 2^(N-1) steps.

      Shouldn't that be 2^(N/2)?

    5. Re:Summary by Kynde · · Score: 1

      >> Trying to find two inputs that produce the same output should ideally take at least 2^(N-1) steps.

      > Shouldn't that be 2^(N/2)?


      Yes.

      Trying to find and input that produces the same
      output as some predermined input did is 2^(N-1)

      --
      1 Earth is warming, 2 It's us, 3 it's royally bad, 4 we need to take action NOW
    6. Re:Summary by Kynde · · Score: 1

      In this case, it seems that it may be much more easy than the designers had hoped to break the second condition. This tends to mean that 3 is easier as well, which has ramifications for security protocols.

      No, weak collisions (your condition 2) is not the same as strong collisions (your condition 3). Or to be more precise, in general case ability to produce weak collisions does not say anything about the strong collision resistance of a hash function. The technique used may (or may not, in this case the article doesn't really say about that) also reduce the strong collision resistance a bit, but luckily there's quite a bit of difference between 2^N and 2^(N/2)

      --
      1 Earth is warming, 2 It's us, 3 it's royally bad, 4 we need to take action NOW
  70. Excellent! by Anonymous Coward · · Score: 0

    So now I can get a personalized freemail account!

    Um, wait a minute...

  71. $10,000 anyone? by jlcooke · · Score: 1

    http://www.certainkey.com/md5challenge/

    The creators are welcome to apply.

  72. Hmmmm.... by My+name+is+Puggy,+I · · Score: 1

    HAHAHA, no MD5 breaking algorithm can decrypt my clear-text passwords.

  73. Paradigm Shift long overdue by EssTiDee · · Score: 0

    On another note... read Dan Brown's "Digital Fortress" if this Crypto stuff gets ya goin...

    Now, so as not to be -1 offtopic (for the shameless book plug)... Can't say I'm surprised at this sort of an announcement, and not to be a conspiracy theory-monger, but you've gotta believe the NSA has computers that will readily break basic MD5 and SHO-0 encryption. Bergofsky Principle quite simplified states that an unbreakable mathematical algorithm cannot be created. In contrapositive therefore, given enough time and trial, even the longest and most complex encryption can be broken.

    I won't be happy until someone disproves that theory, and writes something that is truly immune to the CPU-cycle approach to break in. God only knows what the NSA would want with my emails and files, but I'm thinking that if it really came down to that, I wouldn't really be around to speculate for very long...

    my 2 yen's worth (grossly inflated, of course)

    ~Ess

    1. Re:Paradigm Shift long overdue by Anonymous Coward · · Score: 0

      Yes, unbreakable encryption is impossible. But it's quite possible to encrypt in such a way that there isn't enough matter-energy in the universe to power a computer to break your encryption.*
      .
      .
      .
      *n.b. this applies to classical computers, quantum computers can, I think, break any classical encryption scheme.

    2. Re:Paradigm Shift long overdue by Anonymous Coward · · Score: 4, Insightful

      Argh!!!! Digital Fortress had good characters, but absolutely rotten-to-the-core technicals. It's funny that someone would quote the "Bergofsky Principle", which Dan Brown made up out of the whole cloth (I've certainly never heard of it). The author is a technology ignoramus, which is not a fatal flaw except that he was pretending to be an expert, and getting almost everything wrong to one degree or another. The fact that I finished reading it is a testimony to his skill as a crafter of good fiction writing, not to its interest as a techno-thriller.

      See earlier post about a thought experiment Bruce Schneier carried out that showed 256-bit symmetric encryption (if it had no holes) would be proof against any attack that could be carried out using (using our current knowledge of physics, that is).

  74. Implication for Trusted Computing by Alsee · · Score: 1

    If someone has found a way to generate a collision with a specific SHA-1 hash, or has a development that leads to someone else making such a breakthrough, then it cracks Trusted Computing wide open. SHA-1 is part of the central foundation of Trusted Computing.

    Cracking SHA-1 would certainly cause a variety of problems in other areas, but if it kills Trusted Computing then I'm all for it.

    -

    --
    - - You can't take something off the Internet! That's like trying to take pee out of a swimming pool.
  75. Re:It probably isn't a big deal... or is it? by noda132 · · Score: 1

    On another note, there could be big problems when we uses these in, oh, a password database.

    I'm no cryptographer, but I don't think this is a problem. After all, an md5 sum is longer than an 8-character password; most passwords won't have a conflict of reasonable length.

  76. Short term workaround by Anonymous Coward · · Score: 0

    Post checksums for your files using 2 different hashing algorythms (e.g. MD5 & SHA-1). Even if both do eventually get broken, the collision spaces have about 0% chance of overlapping.

    Say someone cracks the hosting server and modifies the downloadable binary in such a way that the MD5 sum is still the same. There are only a select few ways of modifying that file while preserving the same MD5 sum. Picking any one of those, the SHA-1 value will have changed.

  77. collisions found in MD5 by roca · · Score: 4, Informative

    It's true.

    Paper here:
    http://eprint.iacr.org/2004/199.pdf

    Independently verified here:
    http://www.mail-archive.com/cryptography@me tzdowd. com/msg02579.html

    1. Re:collisions found in MD5 by RedSlash0 · · Score: 5, Informative

      They didn't get a real MD5 collision. The authors of that paper got the IV vector endianness wrong on the MD5 algorithm and therefore the algorithm used wasn't MD5. However, the IV vectors don't seem to have any significance on the MD5, so I wouldn't think it'd be hard for them to produce a real collision after fixing up the algorithm.

    2. Re:collisions found in MD5 by Nafai7 · · Score: 1

      Ok, a question for you experts...

      why couldn't you use the original code and generate collisions?

    3. Re:collisions found in MD5 by kasperd · · Score: 1

      why couldn't you use the original code and generate collisions?

      I can see two different ways to interpret your question, so I'll try to answer both. Why didn't the authors use an existing MD5 implementation? Good question. I guess most MD5 implementations out there are optimized for performance rather than readability. And probably they would have to modify the code quite a bit to efficiently find a collision. This is not a brute force attack, so they definitely must have relied on some of the structure of MD5 in their code. Publishing the result without verifying the collision against existing MD5 implementations is plain sloppiness. Why don't somebody take the breaking code and fix the minor bug to produce a real MD5 collision? The answer to that question, they didn't publish the code, they didn't even explain how it worked. They only provided the resulting collision.

      --

      Do you care about the security of your wireless mouse?
  78. Compression algorithms by Anonymous Coward · · Score: 0

    My favorite compression algorithm is one that a college professor demonstrated:

    1 - Whiteboard is covered with text (our dataset)
    2 - Grab tissue and erase whiteboard
    3 - The tissue now has the compressed dataset
    4 - Your Homework: write a decompression algorithm

  79. Bah, I give up by Anonymous Coward · · Score: 0

    But I tried, though ;)

    All I know it doesn't match any words in /usr/share/dict/linux.words (45427 words from RedHat9)

    $ for line in `cat /usr/share/dict/linux.words`;do if [ "`echo $line|md5sum`" == "ec7b19b60e616fb1c6013d4ada83ec32" ]; then echo "match: $line"; break; else echo $line ; fi; done

    1. Re:Bah, I give up by Anonymous Coward · · Score: 0

      try combining words

  80. Saltation of Password Hashes by Anonymous Coward · · Score: 2, Informative

    "this means that if someone gets hold of a database which has your password stored in md5, then they can crack it."

    Generally not true. Most password hashing is done with unique salt data for the system, which is unknown to the cracker. In other words the passwords is not simply hashed by itself. (That would be really stupid.) Rather the password is mixed up (in a consistent way) with the "salt" data before the hash is generated. This prevents brute force generation of a password based on the hash. The larger the salt data set the better, of course.

  81. Re:It probably isn't a big deal... or is it? by Anonymous Coward · · Score: 0

    Yeah, but all that padding.. Sure the MD5 sum will match up, but will the file sizes?

    Suddenly, you check file sizes and MD5 sum and you can be pretty sure of your archive's authenticity.

    Moot point.

  82. Exactly! by Adrian+Lopez · · Score: 1

    Exactly. There's no such thing as a hash function that doesn't produce collisions (assuming the data is allowed to grow longer than the checksum). All you need to do to produce a collision is to append a sequence of bytes that's longer than the resulting hash; it may take a very long time to discover a collision, but it's certainly possible to produce one regardless of the algorithm. It is not a problem unless you know how to produce a collision quickly enough to become practical.

    --
    "In prison you just have to shut your eyes and take it. Here you have to shut your eyes and give it."
  83. why not do both a md5sum and a sha-0 ? by aprosumer.slashdot · · Score: 2, Interesting

    why not do both a md5sum and a sha-0 on the same data? Isn't it more difficult to spoof a binary and have matching collisions in both hashes at the same time? If either of the md5sum or the sha-0 don't match then you know that the data has been tampered with, right?

    1. Re:why not do both a md5sum and a sha-0 ? by Anonymous Coward · · Score: 0

      There is no guarantee that colliding both would be harder. Maybe it's a lot harder, or maybe there's a shortcut that makes it just as easy. I certainly wouldn't be comfortable with it.

      Using multiple hashes is obviously guaranteed to be at least as strong against collisions as the strongest hash, and at least as weak against reversing as the weakest hash. Other than that, there isn't enough information to even guess.

    2. Re:why not do both a md5sum and a sha-0 ? by kasperd · · Score: 2, Informative

      why not do both a md5sum and a sha-0 on the same data?

      What you suggest is essentially just a 288 bit hash (128+160). The question is, would you rather trust this 288 bit hash created from two weak hash functions, or one of the 256 bit hash functions designed to replace SHA-1 and MD5?

      --

      Do you care about the security of your wireless mouse?
  84. How quickly can PGP/SSL/X.509 change? by two-tail · · Score: 1

    If I remember correctly, PGP (IIRC up to 2.6.x) used MD5 as the hash in PGP signatures. Some (possibly current) versions use/used RIPE-MD/160. Current versions of PGP/GPG use SHA1. I could imagine someone taking a signed message, replacing its text with readable/understandable text that has the same hash, and releasing it as a supposedly-valid message.

    The OpenPGP standard (RFC 2440), which PGP and GPG support (at least partially), list MD5, SHA-1, RIPE-MD/160, and MD2 as possible hash algorithms, with support required for SHA-1 (and suggested for MD5). HAVAL, TIGER-192, and an undefined double-width SHA algorithm have spaces reserved on the list, but that is all that's said. If (Once) MD5 and SHA-1 are broken, now long will it it be until PGP and GPG are updated to support new algorithms, and (in the case of PGP) would the update be free?

    It's also worth noting that X.509 certificates and SSL use MD5 and SHA-1 (I think SSL may just use MD5). How secure would SSL and X.509 be if SHA-1 and MD5 are broken? SSL transactions don't leave much time to intercept and forge a packet, but X.509 used in e-mail and other messages could certainly sit around long enough to be messed with.

    Oh, well. It was bound to happen; let's see how well/quickly a solution/workaround is found (and let's see if the vulnerability is as bad as many have made it out to be)!

  85. Thanks for the explanation Michael. by Anonymous Coward · · Score: 0

    We'd never have figured that out for ourselves.

  86. Correction by GreenHell · · Score: 5, Informative

    I see that I forgot the birthday paradox, which means that brute forcing a hash is much closer to a 2 ^ 80 problem.

    So here's the calculations for that:

    2^80 = 1.208925819614629174706176 x 10^ 24, so we use 1.2 x 10 ^ 24.
    1.2 x 10 ^ 24 seconds / 100 seconds/minute = 1.2 x 10 ^ 22 minutes
    1.2 x 10 ^ 22 minutes / 100 minutes/hour = 1.2 x 10 ^ 20 hours
    1.2 x 10 ^ 20 hours / 100 hours/day = 1.2 x 10 ^ 18 days
    1.2 x 10 ^ 18 days / 1000 days/year = 1.2 x 10 ^ 15 years

    A much smaller number, but you're still not likely to get it before the sun goes out.

    --
    "I won't mod you down - I feel the need to call you a twit explicitly, rather than by implication."
    1. Re:Correction by Anonymous Coward · · Score: 0

      one hash per second isn't being generous - a million hashes per second is.

    2. Re:Correction by GreenHell · · Score: 1

      Right, one million hashes per second... (How long does a SHA-0 has take to generate anyways? I usually do this example when dealing with other crypto systems that take slightly longer to run through.)

      That drops our number to brute force 2 ^ 80 hashes down to... 1.2 x 10 ^ 9 years, or one billion and 200 million years. Not anywheres near as long, but still not something you could conceivably do at home.

      --
      "I won't mod you down - I feel the need to call you a twit explicitly, rather than by implication."
    3. Re:Correction by Kynde · · Score: 1

      I see that I forgot the birthday paradox, which means that brute forcing a hash is much closer to a 2 ^ 80 problem.

      That applies for weak collisions only, which I am assuming that they are talking about.

      However, almost all "practical" (attack) uses needs strong collisions, for which the complexity indeed is about 2^160.

      (The artice doesn't explicitly say it, but it should be obvious enough that it's a weak collision. Had they found a 2^51 attack for strong collisions there'd tons more fuss about it)

      --
      1 Earth is warming, 2 It's us, 3 it's royally bad, 4 we need to take action NOW
    4. Re:Correction by julesh · · Score: 1

      one hash per second isn't being generous - a million hashes per second is.

      That depends on the size of the message you're trying to generate. For most practical attacks (e.g. substituting one set of data for another) you'll be aiming at a message that's the same size as the original message. If that's up in the megabyte range, 1 second per hash is about right.

    5. Re:Correction by ztane · · Score: 1

      Well, usually the cryptographic hash functions hash their input in small blocks, so it really doesn't matter... just change the last, let's say, 128 bytes and hash them again...

    6. Re:Correction by Anonymous Coward · · Score: 0
      What is the matter of 3DES's 168 bit?

      3DES's 168 bit = SHA0 160 bits + 8 bit, hahahahahha.

      open4free ©

  87. Re:This could be a problem. (OT) by Geoffreyerffoeg · · Score: 1

    You wasted a GMail account registration on that username?

  88. CORRECTION by germinatoras · · Score: 1

    sed s/"reverse the digest process, and extract the original data from the digest"/"generate different data with the same hash"

    I made a mistake, now I am corrected, thanks all for the info. I'm off to go read the shadow(3) and ssh(1) man pages now...

  89. Yes. Fear the BotNet by TubeSteak · · Score: 1
    Don't we have IRC'ers and various spam groups selling lists of ??? x 10 thousand compromised computers? Why not buy a few lists, put a distributed cracking program on them and then let 'er rip!

    Instant mass computing. Illegal? Yes, but still easy for your avg /nerd.

    --
    [Fuck Beta]
    o0t!
  90. MOD PARENT DOWN by Anonymous Coward · · Score: 5, Informative
    You sure done lernt hows to use the copy an' paste real good. You is plagiarizin' at a 5th grade level already!

    http://www.google.com/search?q=%22attack+relies+on +the+idea+of+producing+duplicates%22&num=20&hl=en& lr=&ie=UTF-8&safe=off&filter=0

  91. Re:This could be a problem. (OT) by WhatAmIDoingHere · · Score: 1

    What's wrong with it?

    --
    Not a Twitter sockpuppet... but I wish I was.
  92. [759 digit comment] by Anonymous Coward · · Score: 0

    see your parent for clues on decrypting subject.

  93. Good journalism by Pan+T.+Hose · · Score: 4, Funny

    Slashdot reports that CowboyNeal posts that an anonymous reader writes that rumors are that at the informal rump session, an unknown researcher will announce a collision in full MD5, two ACs confirm, all slashdotters consider MD5 definitely proved broken, film at eleven. That is what I call good journalism.

    --
    Sincerely,
    Pan Tarhei Hosé, PhD.
    "Homo sum et cogito ergo odi profanum vulgus et libido."
  94. Read the pdf at iacr.org! by Anonymous Coward · · Score: 0

    MD5 takes that group about an hour to break.

    I suspect this qualifies at "not good".

    j

  95. Question by bmac · · Score: 1

    What if you took the SHA-1 and MD5 and
    ran both on your data (for example, a
    password) and then stored them both side-
    by-side? Wouldn't that make it nearly
    impossible to break? Sure, you could,
    according to this theory, find a new
    set of data that matches, say, the SHA-1
    hash, but that data couldn't *possibly*
    match the MD5, could it?

    Problem is, I'm sure there's a patent
    on serial variant hashing. If not,
    here's my prior art :-)

    Peace & Blessings,
    bmac

    1. Re:Question by eric76 · · Score: 1

      Given a hash scheme that produces X bits, X>1, the set of all possible messages of X bits or less is guaranteed to have collisions.

      For example, suppose you had a two bit hash, f, such that f(00)=11, f(01)=00, f(10)=01, and f(11)=10. Then, the hash of f(0) must be either 11, 00, 01, or 10 and so it must collide with one of the previous hashes.

      Consider two hash schemes. Assume the first does X bits and the second does Y bits. Then, you basically have a X+Y bit hash. The set of hashes of all messages of X+Y bits or less is guaranteed to have collisions.

    2. Re:Question by Hank+Reardon · · Score: 1
      Wouldn't that make it nearly impossible to break?

      Let me preface this by saying I'm not a cryptographer and I've got about 30 seconds until a beer meeting, so I don't have time to do a Google for it.

      In a word, no.

      When PHP was brand new, I remember reading an article talking about using multiple crypto systems on the same data. Depending on the systems used, it could actually make the encrypted file much less secure.

      It's not a definite bad thing to do, but from what I remember, cryptographers generally avoid it because computing which systems are safe with each other is a pain.

      --
      There's so little difference between politics and jihad lately...
    3. Re:Question by Vo0k · · Score: 1

      ENCRYPTED-yes. That is, if you have them encrypted in paralell, you give twice as many hints as to contents of the file, so you break any encryption and you're in.
      But he talks about SIGNATURES. That means you need to break both signature systems to break both signatures. Given problems of adjusting data for one signature system to get given hash WITHOUT breaking the hash for the other system would be a hell. If you intended to substitute signed content with some actual meaningful payload (modified source code) and not just carefully engineered noise, it would make it extremely hard.

      In many cases though providing longer hash for one algorithm is easier, without negative impact.

      --
      Anagram("United States of America") == "Dine out, taste a Mac, fries"
    4. Re:Question by Hank+Reardon · · Score: 1

      Ahhh, Ok...

      My mind thought "cryptographic hash" and immediately assigned the same types of cryptographic problems to them.

      You can see my mind was more on the beer than the actual topic, as I used PHP in place of PGP, and didn't stop to think about the nicety of MD5 being, effectively, a one way methodology for password encryption.

      Beer was good, my lack of extrapolation bad. Thanks for the correction.

      --
      There's so little difference between politics and jihad lately...
    5. Re:Question by Vo0k · · Score: 1

      Heh, and I didn't RTFP again before posting. Actually the original poster said he wanted to apply that to his password... and then you're right.
      We must distinguish between two things: 1-way encryption when your aim is to remove as much of original content as possible while remaining decently unambigious, to leave as little hints to the original content as you only can, so the original content can't be in no way retrieved from the hash, OR signing, where the content is public and you don't care if one could retrieve parts of all of the content from the hash, you just care that no other, different content ever has the same hash (just the problem described in the article) so you actually want to leave as many hints to the original content as possible (i.e. multiple signatures). Of course if someone can create a -different- content that generates -the same- hash, you're just as screwed with your passwords. (I'm sure the guy didn't use 93_sH/N as his BIOS password, too smart for him... so what. It works.) Usually creating identical hash from a different string is impossible without knowing the original string though, so your passwords should be safe.

      What I wonder would be the extreme compression algorithm based on cracking hashes. Imagine byte stream (integer values of 0-255) being hashed with an algorith which upon reversal (of arbitrary stream) generates a stream of complex (real+i*real) values. Only a very small subset of the reversed hashes would generate a string of 0-255 integers from the real domain. Probably a 100-200byte hash would uniquely define a huge original data stream like 10MB. But for decompressing it you'd have to, like, brute force a 10MB long password :)

      --
      Anagram("United States of America") == "Dine out, taste a Mac, fries"
  96. SHA-1 is not SHA-0 by Effugas · · Score: 3, Informative

    It's worth pointing out that it was widely assumed that there was a serious flaw in the original SHA, enough that NSA saw fit to add that final left shift at the end of each round. SHA-1 *exists* because there's a problem in SHA-0. The original SHA is not "slightly less secure" because it just lacks the fix; the nature of the algorithm is such that the slight variation NSA introduced created enormous deviations in the output function. Unless there's a fundamental architectural hole -- possible, see MD4/MD5 -- the original SHA could fall to pieces and it wouldn't mean SHA-1 was dead in the water.

    I don't really know what Ed Felten means regarding "weaker cousins" of SHA-1 being the only other popular hashes. SHA-256 is a cousin, but has a larger hash size and is generally considered to be stronger. SHA (SHA-0?) is a cousin, but I've never seen it deployed anywhere. MD4/MD5 are still mildly popular, but they're at best design ancestors and not cousins -- there's no way a break in SHA-1 is going to make them any less secure (they have their own issues, of course). RIPE-160 and TIGER are the only two other hashes I've seen in the field, and they too have nothing to do with SHA-1.

    There might be something here -- the left shift could have been a band-aid solution to an architectural fault in the SHA design, and there may be lots of curiosity about whether the new SHA-0 attack routes neatly around the fix. We'll see.

  97. Probably not a big deal... by barfy · · Score: 2, Insightful

    The discovery of a single collision is not a big deal. Discovery of an algorithm to create a collision WOULD be a very big deal.

    The greatest weakness would be in password systems where only hashes are stored. If you could create an arbitrary password that had the same hash as one stored on the system (and there have been attacks on the password generation side, but none successfully on the side of specifically creating a password *based* on a hash), then you can get in.

    There may yet be discovered a formula for creating that collision, now that we have discovered one, we can determine if there is a relationship between the two plaintexts that can be exploited if we know either the plaintext, or the hash, and can generate an arbitrary collision.

    Document signatures are much less problematic. You would have to create a *sensible* document to replace the hashed document. This is way less likely to occur, to the point that would be attacking by far the strongest link in the chain.

    1. Re:Probably not a big deal... by evilviper · · Score: 2, Insightful
      If you could create an arbitrary password that had the same hash as one stored on the system [...], then you can get in.

      Well, that doesn't have much to do with *collisions* at all.

      If you have any method at all (collisions or not) to generate a string from a hash, then you have a problem with password systems... A collision would only be necessary if, for some strang reason, finding the ORIGINAL password isn't good enough, which isn't the case in any password-protected systems I can think of.

      we can determine if there is a relationship between the two plaintexts that can be exploited if we know either the plaintext, or the hash, and can generate an arbitrary collision.

      Well, if you need to have the plaintext to generate the collision, it's not at all useful for finding hashed values, such as passwords.

      Document signatures are much less problematic. You would have to create a *sensible* document to replace the hashed document.

      Indeed, it would be extremely difficult to exploit a collision, even if you do have a method to find them easily...
      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
  98. I like "Absolute security is a fallacy". by anti-NAT · · Score: 1

    cause it is.

    --
    The Internet's nature is peer to peer - 20050301_cs_profs.pdf
  99. Hash Clash is nothing new. by diggem · · Score: 3, Informative

    I find clashes "ALL THE TIME" with MD5. I wrote a scriptie that does some data munging. It creates specialized logs ("clickstreams") of my employers public website. It takes input from four separate log servers, two, and then two redundant. To avoid logging the same thing twice it does an MD5 on some of the data. If the MD5 is different, great, keep the record. If it is the same, it does a byte by byte check of the strings and if the strings are actually different it keeps the 'new' record and increments a 'clash' counter. Clashes are still fairly rare, but I get about 2 or 3 a week at least on around 20-30 thousand records per day.

    "HashClash" has been around since the first hash function was written. :) You got 30 items and 20 buckets? You're gonna have to either stick two things in a bucket, or get more buckets (larger hash domain/more bits).

    1. Re:Hash Clash is nothing new. by Vo0k · · Score: 1

      That's true that "accidents happen". But the problem is: Could someone DoS your site by forcing several thousands of byte-by-byte comparisons by sending data carefully engineered to generate multiple hashes?

      In your case MD5 works like a simple CRC. You have access to both sources so you can compare them. The problem appears when people use MD5 to sign critical data.
      Somebody hacks Openssl.org and replaces the binaries. You'd still find MD5sums different on the mirror sites and you'd think things are wrong. But if the md5sum remains the same, nobody will suspect a thing.

      --
      Anagram("United States of America") == "Dine out, taste a Mac, fries"
    2. Re:Hash Clash is nothing new. by Animats · · Score: 3, Informative

      That has to be a bug. Check that your MD5 implementation gets the right answers. If you still think it's not a bug, save a "clash" and post the data to sci.crypt.

    3. Re:Hash Clash is nothing new. by jbb999 · · Score: 2, Informative

      This sounds wrong to me. You'd need around 2^40 documents to have a good chance of any two of them having the same MD5 hash. You have no where near that many. Are you sure you are calculating your MD5 correctly?

    4. Re:Hash Clash is nothing new. by diggem · · Score: 1

      Meh... open mouth, insert foot...

      True enough, the hash function's fine. :) It found a clash but it was the same record. The actual request times were more than 2 seconds off. So the second "clashing" record gets kept. All four servers are ntp synched, so I am (almost) sure that they are never more than half a second apart from one another. It'd been quite a while since I looked at the code, forgot that the second test was time, and then byte-check. Time's are much quicker to compare than an entire string. In all cases the times were always different.

  100. Mmmhmm by SidEgg · · Score: 2, Interesting
    Once they can break this: SuperD5/SHA Encryption Combo (crap, I am going to slashdot my own site :D) I will be impressed. I admit, it is hardly feasible, here is my code for those who are interested :)
    function SuperD5($username, $password)
    {
    $one = $username;
    $two = $password;
    $thr = $one . $two;
    $fou = $thr . $one;
    $fiv = $fou . $one;
    $six = $thr . $thr;
    $sev = $one . $two . $thr . $one;
    $md1 = md5( $sev . $two . md5($one . $fiv . md5($sev . strrev( $sev))));
    $md2 = md5( $md1 . md5( $one . $thr . $fou . md5( $sev . $md1)));
    $md3 = md5( $md2 . md5($md1));
    $md4 = md5( $md3 . $md1 . $md2 . md5($sev));
    //$md5 left out so not to error/confuse the parser
    $md6 = md5($md4 . $md1);
    $md7 = md5($md6 . $md4 . $md3 . md5(md5($six)));
    $md8 = md5($md6 . md5($md7) . $md4);
    $sha = sha1($md1);
    $sha2 = sha1($md2);
    $sha3 = sha1($md3);
    $sha4 = sha1($md4);
    $sha5 = sha1($md6);
    $sha6 = sha1($md7);
    $sha7 = sha1($md8);
    $sha8 = sha1($sha . $md1);
    $sha9 = sha1($sha2 . $md3 . $sha8 . $sha7 . $md2);
    $sha10 = $sha . $sha2 . $sha3 . $sha4 . $sha5 . $sha6 . $sha7 . $sha8 . $sha9;
    $sha11 = sha1($sha . $sha2 . $sha3 . $sha4 . $sha5 . $sha6 . $sha7 . $sha8 . $sha9);

    return $sha10 . $sha11 . $sha . $sha2 . $sha3 . $sha4 . $sha5 . $sha6 . $sha7 . $sha8 . $sha9 . strrev(md5($md2 . $md1. $md4 . $md3 . $md2 . $md6 . $md7 . $md8)) . $md2 . $md1. $md4 . md5($md3 . $md2) . $md6 . $md7 . $md8 . md5($md2 . $md1. $md4 . $md3 . $md2 . $md6 . $md7 . $md8);
    }
    1. Re:Mmmhmm by SidEgg · · Score: 1

      Btw, with the code, you can now break it if you can break MD5 and SHA1, but without it, it would be almost impossible.

  101. Significance of collision by merlin_jim · · Score: 1, Interesting

    One of the properties necessary to a good hash function is that one finds it extremely difficult to find two documents that hash to the same value. These guys managed to do it. That in itself isn't such a big deal; we knew that throwing enough compute cycles at the problem would eventually allow someone to find a collision.

    But that period of time should be measured in decades. The author of this paper did it in just a little over 13 days. I'm not quite sure what he did; something about neutral bits... which sounds an awful lot like a way to predict which bits can be switched together to produce the same hash.

    Cryptographic strength is based on np complete problems. The problems that you have to solve to break a hash function are typically characterized as one that can only be solved in less than polynomial time by having an oracle function; that is, some way to know the result of a calculation without having to actually do that calculation.

    Neutral bits sounds like an oracle function. 80 000 CPU hours on a 256-way system is just a little over 14 days. Now I'm just waiting to see if SHA-1 is vulnerable. (let's hope not!!!)

    --
    I am disrespectful to dirt! Can you see that I am serious?!
  102. ObGoatse by sharkey · · Score: 0, Offtopic
    i just want to know what the fuck a "rump session" is

    I think it's a hands-on instructional session.

    --

    --
    "Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next.
  103. If this is a security hole... by VeryProfessional · · Score: 1

    OMG! Somebody just trojaned my carefully selected meaningless binary string in just 80,000 CPU hours! Excuse me while I go drown myself.

    1. Re:If this is a security hole... by ocelotbob · · Score: 1

      While it's true that the world won't end quite yet, the odd thing about cryptography is that once a hole is open, that hole seems to get wider and wider as more people look at it. While right now, it's just a collision between two random strings of numbers, it is now more likely, both due to the fact that a method for exposing a specific weak hash, and the fact that lots of people are going to be poreing over the SHA algorithm looking for similar weaknesses, some which may be able to be used in combination with this new SHA attack to get a collision much faster than statistics would dictate otherwise.

      --

      Marxism is the opiate of dumbasses

  104. Beating microsoft source code encryption by Darthmalt · · Score: 1

    A friend of mine was in the building at georgia tech when some computer students cracked the encryption protecting the microsoft source code. I think he said it was Rot 20 something

  105. If SHA-1 is not enough, use lots of CHFs by wintermute42 · · Score: 2, Interesting

    Basicly you're saying that if SHA-1 alone is not good enough then use some combination of cryptographic hash functions and that will be better.

    Well, OK. But it does not address the reason that so many people hope that the attack on MD5 and SHA-1 are not solid. These algorithms have a number of attractive characteristics. They are not hugely expensive to compute (the algorithm above is). They can be used to calculate a (supposedly) unique signature for an input. And the signature does not consume a large number of bits (another problem with the algorithm proposed above).

    On a related note: I wonder if the attack on these algorithms has something to do with the number of bits used as input. Intuitively it seems that the larger the number of bits in the input stream, the more unique (widely distributed) the hash should be. So if you used small inputs then collision might be more likely.

    1. Re:If SHA-1 is not enough, use lots of CHFs by SidEgg · · Score: 1

      Yeah, it was kind of a joke. And, the larger the number of bits the more 'secure' it is, KIND OF... I am going to check how long it takes to compute. "Completed in 0.0039598941802979 seconds" Doesn't seem that heavy... Sure, it is a large amount heavier then JUST using md5 or sha1..

    2. Re:If SHA-1 is not enough, use lots of CHFs by ocelotbob · · Score: 1
      I wonder if the attack on these algorithms has something to do with the number of bits used as input. Intuitively it seems that the larger the number of bits in the input stream, the more unique (widely distributed) the hash should be. So if you used small inputs then collision might be more likely.
      It's actually more likely to have a collision with a greater bitsize. Suppose you have a 256 bit hash. Assuming you are hashing a set of 128 bit numbers, and that the has is evenly porportioned -- that is, it doesn't colide -- you will get a different has for every value, ensure the uniqueness of the number. For a 256 bit hash, assuming that the algorithm isn't flawed, and that there is an even distribution of hash values, again, you will have unique hashes for each value. For a 512 bit number, for each hash, there are going to be two possible inputs. For a 1024 bit value, there are going to be 4 collisions, etc. Thus, for hashing functions, a collision is far less likely if you have an input size less than the hash size. Conversely, greater inputs are, by definition, going to have a greater hash size. The whole point of a hash, however, is that these collisions are supposed to be rare enough as to not see them in the real world. If a hashing algorithm is broken, however, this assumption changes, and certain inputs are more likely than others to collide, which runs counter to the entire point of a hash.
      --

      Marxism is the opiate of dumbasses

  106. Cheap shot... by Aaden42 · · Score: 1

    Well... As long as you can only do it with Natalie and Halle there, I guess the world of crypto has nothing to worry about.

  107. What a waste of time... by Ghoser777 · · Score: 1

    This is probably the checksum for Longhorn... we'll never figure it out now.

    --
    James Tiberius Kirk: "Spock, the women on your planet are logical. No other planet in the galaxy can make that claim."
    1. Re:What a waste of time... by the+MaD+HuNGaRIaN · · Score: 1

      Nope:
      echo "Longhorn" | openssl md5
      544e109434f5f0bf64ff79dcf8666605

      By the way, what's "Longhorn" ?

    2. Re:What a waste of time... by First+Person · · Score: 1

      By the way, what's "Longhorn" ?

      A variety of cattle which is the mascot of the University of Texas at Austin. See here for more info.

      --
      Given one hour to live, the student replied: "I'd spend it with professor FP who can make an hour seem like a lifetime."
  108. double-sign? by Anonymous Coward · · Score: 0

    which is harder to find a collision for: hashing with two very different algorithms, or hashing with the same algorithm but using a longer target string? collisions occur either way . . .

  109. One thing is secure forever by Theatetus · · Score: 2, Interesting

    One time pads. If the pad's bits are generated by truly stochastic events (say, radioactive decay) and the pad is longer than the plaintext, there is provably no way to ever ever ever ever recover the plaintext without the key; the only method is to simply guess all possible plaintexts.

    --
    All's true that is mistrusted
  110. Linear and Quadratic probing being more than one.. by asbestos_tophat · · Score: 0
    MD5 was never trusted as a computationally infeasible component of a complete symmetrical encryption scheme. What does this have to do with MD5 hashing signatures? Two jobs, two criteria, and two differing security threats.


    So what, the signature hashing of data is one way and collisions are the way in which data is protected in a one-way encryption scheme. Linear and Quadratic probing of collisions are common with those key value signature offsets. Sure O(1) is no longer true, but if all collisions were handled (via a logic decay into a stupid simple linked list) the signature could be predicted and regenerated incrementally. However, the likelihood of a data set being the exact size is very remote due to the probabilistic nature of the actual content being more than one "thing" (i.e. sorry, but the man-in-the-middle will have to wait).

  111. Might crash some software? by r6144 · · Score: 1

    I guess there are quite a number of software that use MD5 or SHA-1 hashes as if a collision is impossible, and indeed even when there is code to handle hash collision, it had been hard to test that code when no real collisions were known. Now, if such software is fed with two pieces of data with identical MD5 hashes, it might well break in horrible ways --- at least a DoS attack.

  112. MD5 not *quite* broken yet, but maybe close.... by menscher · · Score: 4, Informative
    For those who are seriously following this, you've probably seen the paper claiming to break MD5. I immediately started playing with confirming their results, but failed. There was some seriously strange stuff going on.

    Eventually I gave up trying to reproduce the hashes, and went to looking online. I found a good summary explaining the mistake the authors made (endianness problems, mostly) at this website.

    The end result is that they didn't break MD5 -- yet. But their result can probably be modified to break the real MD5. Looks like we have a few more days till the world ends. ;)

  113. I really must know... by Devi0s · · Score: 1

    ..how long you've had that one stored up. You must have been dying for an appropriate time for your marketing campaign launch...

    Does Blamo make these?
    ---------------------

    --
    - Have you ever noticed that the more you learn about technology, the more stupid you sound trying to explain it?
    1. Re:I really must know... by Forbman · · Score: 1

      No, but I saw the Midget on a Ronco commercial last night after the Olympics on MSNBC hawking MS Passport and Bob.

  114. breaking BitTorrent by oskie · · Score: 2, Insightful

    Finding a SHA-1 collision would break current versions of BitTorrent. Recent versions identify each piece of the file by its SHA-1 checksum. First the pieces are downloaded out of order, in consecutive order. Then they are reordered based on SHA-1 checksum. If one put two different pieces with same SHA-1 checksum in a file, it is likely that 50% of the time you would end up with an invalid file if transferred over torrent. This could be used to prevent certain files to be transferred over BitTorrent, such as copyrighted files.

    1. Re:breaking BitTorrent by Lelon · · Score: 3, Informative

      I believe you are correct but your reasoning is not.

      In order to put two different pieces with the same SHA-1 checksum in a file, odds are your file is garbage anyway. You could not do this with someone elses file (as you mention, a copyright file).

      You could however, very simply, send incorrect data (on purpose) that matches the hash in the torrent file. Users' bittorrent clients would believe the file to be complete when it is in fact corrupted. This would result in 100% of the users who downloaded that segment from you getting a corrupted file.

    2. Re:breaking BitTorrent by ysachlandil · · Score: 1

      Are you telling me that BitTorrent dosn't verify the whole file using SHA-1 after verifying all the chunks?

      If that is the case, and SHA-1 is broken, then BitTorent is sunk.

      But I expect that BitTorrent does check the whole file using SHA-1. It would then detect there was an error, and maybe try to get the chunks again.

      To break this scheme, you need to find a chunk that collides with a legit chunk, and at the same time makes a file that collides with the legit file. This is a lot harder ;)

      --Blerik

    3. Re:breaking BitTorrent by Lelon · · Score: 1

      BitTorrent does not check the hash of the complete download. That data is not stored in the torrent file. (I'm 98% sure) You may be able to check it yourself if the file's originator included the hash information (obviously not stored in the torrented files).

      In any case, it doesn't matter. Your only option would be to download the entire file over again, and you still have the possibility of downloading another piece of data that is corupted but has a colliding hash.

      Given the way BitTorrent works, it would be easy for someone who found the collison early to poison almost everyone downloading file, since that corrupted segment will then be uploaded to other people, who will in turn upload it to other people.

  115. +1 Informative by Lelon · · Score: 0

    If I had any mod points... going on 2 years now

  116. SHA-x sanctioned by NSA, by Anonymous Coward · · Score: 0

    and by NIST. Makes you wonder what NSA
    is doing with those acres & acres of
    mainframes in the underground bunkers.
    Or is it just a matter of "good enough
    for the rest of us" (and simple enough
    for us to decrypt ...) ?

    I now reach for my tin-foil hat ...

  117. One Time Pad ?? by McSnarf · · Score: 1

    Google VENONA !

  118. crypto news flash... by xquark · · Score: 5, Informative

    This person's intro into this "news flash" is so out of wack I don't know where to begin!
    Lets start with SHA-0 collisions, methods for determining collisions in the original
    SHA algorithm have been known since 98'. In 95' the NSA issued a modification to the
    SHA-0 (original algorithm) which became SHA-1, the modification was to counter an attack
    unknown to open researchers known as parallel shifting. The two French guyz which found
    collision in SHA-0 in 98' were the first open researchers to encounter this attack method.
    A side point I would like to make is that the NSA made a similar change back in the early
    70's to the IBM DES algorithm which until 89-90 was not known why such a change was needed.
    The attack the modification was protecting against was differential cryptanalysis. early 90s
    there was a 20 year difference in knowledge late 90s there was only 3 years difference in
    knowledge GO FIGURE!

    So in theory the SHA news is old news, as far as MD5 and RipeMD, well anyone that has the
    slightest clue of the mathematics behind message digests will know that all MDs derive from
    the same logic and same mathematics, and that a flaw found in one algorithm can be easily
    transferred to another algorithm if that a particular algorithm hasn't already dealt with
    that specific attack/flaw.

    And on a final note:
    "Many systems, especially those that use cryptography for digital signatures are most at risk here."

    Tell me of system in the world that uses security and does not make use of hash functions?

    Arash Partow

    ________________________________________________ __
    Be one who knows what they don't know,
    Instead of being one who knows not what they don't know,
    Thinking they know everything about all things.
    http://www.partow.net

    --
    Arash Partow's Philosophy: Be a person who knows what they don't know, and not a person who doesn't know.
    1. Re:crypto news flash... by trawg · · Score: 1
      Tell me of system in the world that uses security and does not make use of hash functions?
      The lock on my door! ... even though it has a key, ahaha, ha, ha.
  119. New quine-like puzzles? by Anonymous Coward · · Score: 0

    Write content whose MD5 hash is identical to the content.
    Write content that produced the same hashes in 2 or more different algorithms.
    And many more :)

  120. But by TheLink · · Score: 1

    It seems the ugliness of OTP is there are plenty of stupid/ignorant people around who don't understand it.

    So you may be convicted and executed based on your "decrypted" "confession" and evidence from an "expert" witness.

    --
  121. One Time Pad means just that by Rex+Code · · Score: 1

    Yes, the OTP is the way to go -- sequence of random bytes, which you simply XOR with your message. Dump out /dev/random to a CD-R or DVD-R, make a copy for your friend, and you've both got nice one-time-pads that will probably last you quite some time.

    Actually, if you reuse a one time pad and a few samples of encrypted data are intercepted, it becomes trivial to crack. Hence the name: One Time Pad.

    1. Re:One Time Pad means just that by arose · · Score: 1

      You still can comunicate one CD/DVD worth of plaintext.

      --
      Analogies don't equal equalities, they are merely somewhat analogous.
    2. Re:One Time Pad means just that by Anonymous Coward · · Score: 0

      One CD's worth of pad can be good for more than one message; just don't reuse any given portion.

  122. Hashing with Hash? by B2382F29 · · Score: 1

    What about including the Hash of the plaintext in the original?

    Something like:

    Hello Worlde59ff97941044f85df5297e1c302d260

    and then hashing that new plaintext?

    --
    Move Sig. For great justice.
    1. Re:Hashing with Hash? by ocelotbob · · Score: 1

      It's just a bandaid. Yeah, adding the plaintext hash makes it more difficult when hashing hello world, but it doesn't do much for binaries in the long run. If you've trojaned a specific binary, you just need the application to run similar enough to the original program. A clever cracker could introduce lots of padding bytes though jumps, nops, etc, to get space to get the 256+ bytes needed to perturb the program enough to create a collision.

      --

      Marxism is the opiate of dumbasses

  123. How to crack hashes by flux · · Score: 4, Funny

    Well, it's quite simple actually. Let's take an arbitrary md5sum for instance:

    d3b07384d113edec49eaa6238ad5ff00

    Now, we obviously can see that the beginning of the data is complete gibberish. However, may I point your attention to the trailing three nibbles: f00. This is a clear clue! Let's use that as a base for our educated guess:

    % echo foo | md5sum

    d3b07384d113edec49eaa6238ad5ff00 -

    And voilá, we're cracked it!

  124. Explain ? by noselasd · · Score: 1

    Could someone explain the meaning here ? Ok, they found a
    collision, so... ?

    1. Re:Explain ? by ctid · · Score: 2, Interesting
      These are hashing functions. The creator of some file can run a program against that file to create a "hash key". This hash-key is supplied with (separate to) the file and someone who downloads the file can run the same program as the originator and confirm that the hash-key he gets is the same as the one the originator provided. In principle, if a bad person were to change even one bit in the file, it would generate a different hash key and therefore the receiver would know that it had been tampered with.


      What has happened here (IIUC) is that somebody has shown that it's possible to create a new file with the same hash key as some other file. Which means that I could put up a file for download and provide a hash key for it, but someone could "mirror" the file and change it to something different which still generates the same hash key. Which means that the "guarantee" that the hash-key gives is broken - a receiver can no longer be sure that a matching hash key means a matching file.

      --
      Reality is defined by the maddest person in the room
    2. Re:Explain ? by Ed+Avis · · Score: 3, Insightful

      Nobody has 'shown that it's possible to create a new file with the same hash key as some other file'. That has been known all along and it's true for any hashing function where the length of the hash is shorter than the length of the original file. For example, if your hash function produces a result 100 bits long then there are 2 ** 100 possible hashes. Obviously there are more files than this so it is _always_ the case that there are two different files with the same hash value. Usually I'd expect an infinite number of files with any given hash value!

      So I don't know what the news item is here, except as a curiosity ('look we found it' - like finding the next Mersenne prime) or some technique has been found for making hash collisions which is better than brute force. If all they did was brute-force hash lots of files until finding two with the same MD5sum or whatever, it's obvious they were going to find a collision eventually.

      --
      -- Ed Avis ed@membled.com
    3. Re:Explain ? by ctid · · Score: 1
      Nobody has 'shown that it's possible to create a new file with the same hash key as some other file'.

      You're right of course, I worded that poorly. I think that what is being reported is the ability to generate to order a file which matches a given hash key.
      --
      Reality is defined by the maddest person in the room
    4. Re:Explain ? by noselasd · · Score: 1

      >What has happened here (IIUC) is that somebody has shown that it's >possible to create a new file with the same hash key as some other >file.
      Well, DUH!! You're reducing an arbitary long sequence into a fixed lenght one. Ofcourse colllisons exist, have anyone ever thought otherwise ?

    5. Re:Explain ? by Ed+Avis · · Score: 1

      I think if they were announcing a way to generate a file to order matching a certain hash key, they would have chosen the key 'aa bb cc ...' or the hash value of some string like 'hello there'. This seems like a way to generate two files, with no particular content, which have the same hash value. It took eighty thousand hours to find this pair - unless further speedups are discovered it would take inordinately long to find a pair of messages that have meaningful content (for some definition of meaningful) and the same hash value.

      --
      -- Ed Avis ed@membled.com
    6. Re:Explain ? by chickenmonger · · Score: 1

      Makes me wonder if one could search the hashes of, say, the Debian unstable repository, and look for duplicates. There should be enough files there for at least the chance of a match.

  125. Actually XOR... by Vo0k · · Score: 1

    Actually XOR is the strongest unbreakable encryption algorithm... providing some simple yet uncomfortable rules.

    1) The key is the exact length of the cryptogram.
    2) The key is made using really good enthropy source.
    3a) The key is used to encrypt/decrypt the (arbitrary) content just once
    or
    3b) The content entropy is pretty high as well.

    I heard about this: A pair of 2 identical CDs filled with white noise, identical. Encrypt the content with one, decrypt with the other, with next chunk of content move on to next (unused yet) piece of the noise. Destroy the CDs after all the noise has been used up.

    --
    Anagram("United States of America") == "Dine out, taste a Mac, fries"
    1. Re:Actually XOR... by SuiteSisterMary · · Score: 1

      This is what you call a One Time Pad, and so long as a) the data on the pad is truely random, and b) the pad isn't compromised or reused, it is utterly unbreakable.

      --
      Vintage computer games and RPG books available. Email me if you're interested.
  126. Theoretically, don't all CHF have collisions? by twbecker · · Score: 1

    I mean, the number of possible messages greatly exceeds the number of possible hashes, since the hashes are of fixed length. So, isn't it just a matter of time before a collision is found for any given CHF?

    --
    "The problem with internet quotations is that many are not genuine" -Abraham Lincoln
    1. Re:Theoretically, don't all CHF have collisions? by thelittlestbuddy · · Score: 1

      Yes, by the pigeon hole principle all hash functions have collisions.

      It's just a matter of how much time it takes to find one.

      You try to design the hash function such that even an adversary with computing power measured in acres does not have enough resources to find a collision in a pratical amount of time.

      That's the intuition, anyway.

  127. Then you have items... by Kjella · · Score: 1

    ...that result in the exact same log entry. Which obviously result in the same hash. Either that, or your program is broken.

    Kjella

    --
    Live today, because you never know what tomorrow brings
  128. Really, really no. by Onan · · Score: 4, Interesting

    If there is a fundamental flaw in the hash algorithm itself, simply using it more often will probably not solve the problem.

    It absolutely is incredibly hard to make an encryption algorithm more secure. Just "doing some math with the hashes" is the type of bit-twiddling at which cryptologists both wince and sneer. "Then I'll multiply the second one by three, then add them together! Then modulo it 17! Then oohoohooh, square root the whole thing and drop the first digit! No one will _ever_ figure this out!" Crap like this does not add any new cryptographic strength, just a dependency on a secret algorithm. And any method which relies on a secret algorithm is hopelessly flawed.

    There is still considerable debate in the cryptographic community about whether 3des is actually any stronger than des. Many people feel that if an attack is found to be effective against the des algorithm, the extra layers of stirring the bits around will not make the plaintext any more secure.

    I'm afraid that Schneier covered this succinctly: "Anyone who creates his or her own cryptographic primitive is either a genius or a fool. Given the genius/fool ratio for our species, the odds aren't very good."

    1. Re:Really, really no. by townmouse · · Score: 1
      There is still considerable debate in the cryptographic community about whether 3des is actually any stronger than des. Many people feel that if an attack is found to be effective against the des algorithm, the extra layers of stirring the bits around will not make the plaintext any more secure.
      I have never heard any member of the cryptographic community claim that triple DES is no stronger than DES, except in a very theoretical sense. At least one attack has already been found to be effective against DES (exhaustive search of the keyspace), but it is not currently feasible against 3DES. A cryptographic attack that could crack DES faster than brute force would quite likely work against 3DES too, but that doesn't mean it will necessarily be computationally feasible.
      --
      Ask me if I've been required to disclose any crypto keys.
    2. Re:Really, really no. by r3m0t · · Score: 1

      'It absolutely is incredibly hard to make an encryption algorithm more secure. Just "doing some math with the hashes" is the type of bit-twiddling at which cryptologists both wince and sneer. "Then I'll multiply the second one by three, then add them together! Then modulo it 17! Then oohoohooh, square root the whole thing and drop the first digit! No one will _ever_ figure this out!" Crap like this does not add any new cryptographic strength, just a dependency on a secret algorithm. And any method which relies on a secret algorithm is hopelessly flawed.'

      Well... what if instead of MD5-ing passwords, I SHA1 them and then MD5 them? Let me explain.

      Say I have (read-only) access to a database with the passwords stored as MD5. I just need to make up loads and loads of passwords and MD5 them, and when I have the correct one, I put it into the real login system and I'm in. Right? Right.

      What if it was SHA1'ed before MD5'ing it? Firstly, most likely, I'll do the usual thing: Find a string which MD5s to give the correct hash. Then it doesn't work. So eventually I work out they've been SHA1'ed before being MD5'ed (maybe I cracked into the IIS server and got a peek at the source code ;)).

      Now I need to try every SHA1-size string (I think they're 40 hexadecimal digits?) against MD5. Say I found it.

      Now I need to try loads of strings and SHA1 them. Once I find one, *then* I can login.

      Then I find out there's a salt added to the password before it's SHA1'ed... ;)

    3. Re:Really, really no. by r3m0t · · Score: 1

      Clarification: When I said "the correct one" in the third paragraph, I meant any password which hashes nicely.

    4. Re:Really, really no. by therealtroff · · Score: 1
      There is still considerable debate in the cryptographic community about whether 3des is actually any stronger than des. Many people feel that if an attack is found to be effective against the des algorithm, the extra layers of stirring the bits around will not make the plaintext any more secure.
      Well, I don't think the main reason for moving to 3des is that it would protect against vulnerabilities in des but rather that exhaustive key searches are becoming rather feasible and downright trivial on specialized hardware.
    5. Re:Really, really no. by Anonymous Coward · · Score: 0

      The problem is 3DES has only a ^3 larger search space which is not much for modern computers, check distributed.net's last DES challenge. (also using fully optimised chips you can imagine doing DES checking at 1 check per clock cycle)

    6. Re:Really, really no. by Anonymous Coward · · Score: 0

      Based on the way MD5 works and the way this attack is designed, I'd think that there are some simple things that could be used to do a stronger hash based on the same algorithm. For example, H(H(M), M) would shoot to hell all attempts at fiddling individual bits - you'd have to keep both hash rounds from changing at once, even though they hash is in a completely different state by the time it gets to the same bits.

  129. Oh well... by raehl · · Score: 1

    Nuclear missiles will spontaneously launch and direct themselves to your house.

    At least my neighbors will be safe.

    1. Re:Oh well... by Anonymous Coward · · Score: 0

      And the children, don't forget the children!

  130. I have a hash by Anonymous Coward · · Score: 0

    That is of arbitrary length and will never be obsolete. In effect, it's perfect.

    Hmmm.... GNU or U.S. Patent Office?

  131. Sigh... by Kjella · · Score: 4, Insightful

    1. If you can produce a hash collision between two random inputs, that is rarely a problem. Either input will be junk. It doesn't matter that you have two interchangable pieces of junk.

    2. If you can produce a hash identical to a desired hash, you can mostly only sabotage (poison) a transfer.

    3. If you can take an existing file and append data to match a hash, you have a total and very dangerous compromise.

    From what I can tell, we're at #1. Make it #2, and things will break as people move to a new algorithm, but I doubt there'll be much problems. Now do #3, and I'm worried...

    Kjella

    --
    Live today, because you never know what tomorrow brings
    1. Re:Sigh... by horza · · Score: 1

      Take a Red Hat ISO. You insert an exploit in the kernel. Rank all RPMs from least used to most used. Take the current ISO as the initial random state. Start your 'randomiser' which progressively fills the ISO with random garbage. If you hit the hash with only breaking some never-used apps and obscure device drivers then distribute compromised CD. So I'd say 2 and 3 were the same thing.

      Phillip.

    2. Re:Sigh... by Nevyn · · Score: 2, Informative
      If you hit the hash with only breaking some never-used apps and obscure device drivers then distribute compromised CD. So I'd say 2 and 3 were the same thing.

      That's more like three than two, two is where you generate a large random file that hashes the same as the iso (thus making downloads look ok, but actually be bad). If you can start with some known data, and then append something to make the hash be what you want then, yes, that's almost as bad as starting with the original and altering it but keeping the hash.

      You also have other problems like the .iso you end up with really needs to be the same size and you probably need to break both MD5 and SHA-1 on the same file, which is probably much harder.

      --
      ustr: Managed string API with ave. 44% overhead over strdup(), for 0-20B
  132. Unless.... by raehl · · Score: 1

    I beat you over the head and take your CD.

    That's the biggest issue with the one-time pad - it has to physically exist somewhere, so now you have to secure it physically.

    On the other hand, a "password" can exist in a head. Maybe not as computationally secure, but definitely more physically secure.

  133. I can brute force a one-time-pad. by raehl · · Score: 0

    At least as long as you need to decode the one time pad.

    I just come over to your house and beat you until you give me your pad and decode the message.

    1. Re:I can brute force a one-time-pad. by Lord+of+Ironhand · · Score: 1

      You could actually keep two pads, one of which decrypts the cyphertext to the information you're trying to hide, and one which decrypts it to something far less useful that is of the same length. Someone comes over and beats you, give him the one that decrypts the cyphertext to the useless information.

  134. Can be used as a DoS by pslam · · Score: 2, Interesting
    Really? I don't think so. In order to do anything with it it would also have to pass all the other sanity checks.

    What if you find a hole in the sanity checks, or if there aren't any sanity checks at all? It's highly likely there are many programs out there which "trust" data which passes authentication, and don't bother with much in the way of checking. Now this is obviously a short sighted thing to do, but given that SHA-1 and friends are apparently not broken, I wouldn't be surprised.

    Personally, I think breaking authentication has far more effect than breaking encryption. Often all you need is a garbage message to be accepted, e.g:

    Use an faked md5 to put out rootkitted.tgz? Odds are that any other message with the same hash isn't going to be a valid.tgz.

    No, but it will cause the application to fail in an unexpected way: an authenticated .tar.gz which doesn't untar. How about a scarier example: run you an apparently "safe" signed client-side piece of executable code off a web page, except it's actually garbage and it causes your web browser to crash. Or your web server does an automatic update from the vendor only to have its installation corrupted. Or simply inserting garbage but authenticated packets into a network stream thereby causing it to disconnect (or even crash one or both sides).

    An interesting thing I notice in the SHA-0 collision is that there aren't that many bits changed - the message looks largely the same. I wouldn't be surprised if you could apply the technique to signed executable code such that a collision is found which would crashes a program in just the right place and just the right way to execute arbitrary code, e.g fork a shell.

  135. Dont ever hash a password...It's just stupid. by Anonymous Coward · · Score: 0

    Once you hash a password you are giving an attacker more combinations against it. The best thing to do is encrypt the password with itself.

  136. *lots* of CPU time... by arafel · · Score: 1

    To quote from the French email about SHA-0:

    The computation was performed on TERA NOVA (a 256 Intel-Itanium2 system developped by BULL SA, installed in the CEA DAM open laboratory TERA TECH). It required approximatively 80 000 CPU hours.

    So finding an SHA-0 collision is probably out of the range of most attackers, at least for a couple of years.

    1. Re:*lots* of CPU time... by Stephen+Samuel · · Score: 1
      The computation was performed on TERA NOVA (a 256 Intel-Itanium2 system ..... It required approximatively 80 000 CPU hours.

      That would be about 312 hours (13 days) on the Terra Nova's 256 CPUs -- not 80000 hours on the Tera Nova (9 years using CPUs that have only existed for less than a year).

      Now how many script kiddies do you think could sell you 'ownership' of 512 CPUs for 2 weeks??? I don't even know if they sell batches that small!

      --
      Free Software: Like love, it grows best when given away.
    2. Re:*lots* of CPU time... by phats+garage · · Score: 1
      I'd imagine the better script kiddies could find 512 zombies out there on the net. They may have to lower cpu a bit to make the owner less suspicious, but who hasn't run windows (or even kde), cussed the slowness, yet never investigated anything.

      Heck, this is a good app for the next virus/trojan/worm if theres some value in faking hashes.

  137. Why do I get the feeling... by Kjella · · Score: 1

    *I'd* be happy. Missing seeing that comet would definitely suck.

    ...that this would be just like asking the person to be executed whether he'd like a blindfold or not?

    Kjella

    --
    Live today, because you never know what tomorrow brings
  138. Obligatory Simpsons quote by appletalking · · Score: 1

    "Young lady, in this house we obey the Laws of Thermodynamics!!"
    --Homer to Lisa

  139. OTP... by Kjella · · Score: 1

    ...is great if you can use them as they are meant to be used. Take a huge random pad (e.g. a DVD), deliver it through a secure channel (preferably in person), and use it for point-to-point communications.

    The reality of it is that for most connections, this is hopeless. Remember, you can have no authority model in any way as they all rely on cryptography. Every point needs to be connected to every other point, each with their own OTP.

    Symmetric cryptography has made the OTP redundant. While public-key algorithms (which typically involve hashes of digests too) are under scrutiny, I don't remember there ever being any common symmetric algorithm that has been cryptographically broken (i.e. with less work than keysize). DES is still broken by brute force.

    Kjella

    --
    Live today, because you never know what tomorrow brings
  140. md5 colision found ?! by Anonymous Coward · · Score: 0

    read:
    http://eprint.iacr.org/2004/199.pdf

    and comment this
    --
    ^^MAg^^

  141. Re:Airplane quotes by VonKruel · · Score: 1

    I like movies about Gladiators.

  142. Bobby Fischer by VonKruel · · Score: 0, Offtopic

    Fischer is/was a great chess player, but the guy thinks that Sept. 11 was a great thing, and so... he's a shithead. I don't care what kinda chess skillz he has - he is a shithead. Not that America is any safer if they get him, but on the other hand I won't shed any tears for that jerk.

    And Michael Moore is a fat boob.

    Hmm .. am I off-topic?

    1. Re:Bobby Fischer by 0x0d0a · · Score: 1

      Fischer is/was a great chess player, but the guy thinks that Sept. 11 was a great thing, and so... he's a shithead. I don't care what kinda chess skillz he has - he is a shithead.

      Bobby Fischer started playing chess and got good at it.

      When he won a world championship, he was turned into a political tool.

      When he wanted to stop playing, he was hounded by the press.

      When he went to play (and win) a chess game in Yugoslavia, he had US agents start hunting him. He has had to spend many years living in secret on the run, (and is now and elderly man).

      Do you seriously, honestly expect him *not* to be angry with the United States? Oh, yes, he's got an angry quote saying that September 11 was a great thing, and that he wished that the United States would crumble. There are hordes of US nationalists saying that "all towelheads should be killed" on rightnation.us. If the man is going to be condemned for a quote he made once, I should think that the same logic can equally apply to imprison a number of the people on rightnation.us.

      And Michael Moore is a fat boob.

      I have not seen Fahrenheit 9/11, but I have read Stupid White Men and seen Bowling for Columbine. Michael Moore does bring up some good points, but ultimately he's a propagandist, a Karl Rove for the Libertarian party. I dislike Moore doing things like the Charleton Heston footage (which said essentially nothing about the actual issues behind widespread gun ownership) about as much as I dislike Rove attacking Kerry's military record.

      All that being said, I don't recall endorsing Moore, and I can't figure out why you brought him up.

  143. Well, blow me by tod_miller · · Score: 1

    These are the two messages that collided

    First message (2048 bits represented in hex):
    a766a602 b65cffe7 73bcf258 26b322b3 d01b1a97 2684ef53 3e3b4b7f 53fe3762
    24c08e47 e959b2bc 3b519880 b9286568 247d110f 70f5c5e2 b4590ca3 f55f52fe
    effd4c8f e68de835 329e603c c51e7f02 545410d1 671d108d f5a4000d cf20a439
    4949d72c d14fbb03 45cf3a29 5dcda89f 998f8755 2c9a58b1 bdc38483 5e477185
    f96e68be bb0025d2 d2b69edf 21724198 f688b41d eb9b4913 fbe696b5 457ab399
    21e1d759 1f89de84 57e8613c 6c9e3b24 2879d4d8 783b2d9c a9935ea5 26a729c0
    6edfc501 37e69330 be976012 cc5dfe1c 14c4c68b d1db3ecb 24438a59 a09b5db4
    35563e0d 8bdf572f 77b53065 cef31f32 dc9dbaa0 4146261e 9994bd5c d0758e3d

    Second message:
    a766a602 b65cffe7 73bcf258 26b322b1 d01b1ad7 2684ef51 be3b4b7f d3fe3762
    a4c08e45 e959b2fc 3b519880 39286528 a47d110d 70f5c5e0 34590ce3 755f52fc
    6ffd4c8d 668de875 329e603e 451e7f02 d45410d1 e71d108d f5a4000d cf20a439
    4949d72c d14fbb01 45cf3a69 5dcda89d 198f8755 ac9a58b1 3dc38481 5e4771c5
    796e68fe bb0025d0 52b69edd a17241d8 7688b41f 6b9b4911 7be696f5 c57ab399
    a1e1d719 9f89de86 57e8613c ec9e3b26 a879d498 783b2d9e 29935ea7 a6a72980
    6edfc503 37e69330 3e976010 4c5dfe5c 14c4c689 51db3ecb a4438a59 209b5db4
    35563e0d 8bdf572f 77b53065 cef31f30 dc9dbae0 4146261c 1994bd5c 50758e3d

    --
    #hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
  144. After further reading by tod_miller · · Score: 1

    "To be cryptographically sound, a CHF should have two main properties. (1) Given a digest, it must be essentially impossible to figure out what data generated that digest. (2) It must be essentially impossible to find find a "collision", that is, to find two different data values that have the same digest."

    Which is as I stated, however, 80,000 hours to find a collision? is that essentially impossible? Given his hardware, on SHA-0 ?

    Now, the collision is spookily close, but it looks like they cannot explain that. 80,000 hours is a heart beat in cryptography though.

    Yes, it is interesting...

    --
    #hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
  145. newbie question by stud9920 · · Score: 1

    So Alice sends Bob a file, along with it's checksum. Bob applies the hashing function to the file, and controls the result with the checksum. Bob sees they match and concludes Mallory can't possibly have tampered the file, as there's one chance in a google that the tampered file would have the same checksum.

    But what exacty proves to Bob that Mallory's hypothetical man-in-the-middle attack
    didn't also replace the checksum with one consistant with the tampered file he tries to inject ?

  146. “Umm...” indeed. by Anonymous Coward · · Score: 0

    The computation was performed on TERA NOVA (a 256 Intel-Itanium2 system developped by BULL SA, installed in the CEA DAM open laboratory TERA TECH). It required approximatively 80 000 CPU hours. The complexity of the attack was about 2^51.

    So it was developed by BULL SH? I thought so...

  147. Avian over TCP/md5 by freeweed · · Score: 1

    The pigeonhole principle says that if you shoot N pigeons with N+1 bullets, and don't miss, one pigeon has two holes... or something like that.

    Hahahaha!

    It's rare to see a correct, informative post with a really clever joke in it. My hat's off to you, sir/madam :)

    (For those not getting it, the pigeonhole principle refers to having N+1 pigeons and putting them in N holes, which guarantees you will have at least one hole with 2 pigeons in it. I think I'll use this explanation in the future though, it's much more fun!)

    --
    Endless arguments over trivial contradictions in books written by ignorant savages to explain thunder in the dark.
  148. I found the original paper by Vilim · · Score: 1

    It looks like there are collisions for MD5, MD4, HAVAL-128 and RIPEMD

    I am in the process of verifying them now, but may not be able to until my lunch break (1pm EST)

    --
    History will be kind to me, for I intend to write it - Sir Winston Churchill
    1. Re:I found the original paper by Gemini · · Score: 2, Informative
      It looks like there are collisions for MD5, MD4, HAVAL-128 and RIPEMD

      I am in the process of verifying them now, but may not be able to until my lunch break (1pm EST)


      The MD4 collision has been verified.

      The MD5 collision has some problems, but the researchers are trying to re-run their code before tonight's presentation.
  149. Forgot the URL by Vilim · · Score: 1

    http://eprint.iacr.org/2004/199.pdf

    --
    History will be kind to me, for I intend to write it - Sir Winston Churchill
  150. How about this result dated back 1998 ? by tgt · · Score: 1

    1998: Differential Collisions in SHA-0
    by Florent Chabaud & Antoine Joix
    http://fchabaud.free.fr/English/Publications/sha.p df

    It presents the algorithm, an actual collision found and the conclusion, quote, "...our attack will therefore be totally inefficient on SHA1."

    It didn't generate that much noise back in 1998. I'm wondering if it has to do with stock market...

    --
    I like my outfit, it's inexpensive, but cool -- April Ryan
  151. What if by dheltzel · · Score: 2, Interesting
    I send someone a file and use both SHA-1 and MD5 hashes to sign it. Can anyone tell me the odds of a simultaneous collision in both algorithms?

    Unless the hashes have a lot on common, it seems like this would be a simple way to extend the useful life of both hashes.

  152. Advanced Trolling? by mvw · · Score: 1
    First, a little about SHA and SHA-1. SHA (0) was developed as a national standard hash function. Curiously, a last minute change was proposed by the NSA which resulted in SHA-1. The change was puzzling the cryptographers in academia. After some time, an attack was discovered on some classes of cryptographic hashes which SHA-1 turned out to be curiously immune to.

    I wonder if this posting is a case of advanced trolling.

    When coming up with the DES (Data Encryption Standard), some government agency insisted on a modification of the S-Boxes (the part that scrambles the bits) that later turned out to make DES more strong against the at that time (publically) unknown differential cryptanalysis technique, making it very reasonable that this agency knew about that attack technique.

    This is described in Simon Singh's "code book".

    Thus I wonder if there are two similiar stories, or if you intentionally or not, messed up the storiy.

    Regards,
    Marc

    1. Re:Advanced Trolling? by mvw · · Score: 1
      Hm.. a comment below seems to indicate that history has repeated itself here.

      Sorry,
      Marc

  153. And then...? by maximilln · · Score: 1

    Other than an impressive show of mathematical calculation, this really doesn't change much as long as you don't give away the files containing the hashes, does it?

    I'd be more interested in an achievement which found a string that causes a mathematical fault when md5 or sha-0 are called on it. In terms of probabilities isn't a fault just as probable as as collision?

    --
    +++ATHZ 99:5:80
  154. Wow. by LordPixie · · Score: 1

    I can't belive you used the term "Dark side of the moon" and no astro-geek has leaped up to correct you. Usually there's fifty posts along the lines of "You're wrong blah blah Tidal Locking blah Synchronous rotation blah blah."

    What ? Don't look at me. *I* am not going do start that kinda thing !


    --LordPixie

    1. Re:Wow. by kendoka · · Score: 1

      Their problem is they can't give in to the dark side. It is the only way...

  155. mod parent up! by Anonymous Coward · · Score: 0

    Maybe not the most technical answer, but clear and informative...

  156. neat! by dep01 · · Score: 1

    news that appeals to 0.00000000000000000000000012% of the world's population. neat! :)

    --
    "hey, could you pass me a paper towel? er.. I mean... DEPLOY ABSORBTION PANEL!"
    1. Re:neat! by soybean · · Score: 1

      Hmm, I can't tell if you are being funny or dumb. If you are making the joke that only the user of that one compromised key cares, then that's actually kind of funny. If you are just saying that nobody cares about crypto, then it's not funny and you are sorely mistaken.

    2. Re:neat! by dep01 · · Score: 1

      I was actually saying it in jest, me being in that small demographic as well :)

      --
      "hey, could you pass me a paper towel? er.. I mean... DEPLOY ABSORBTION PANEL!"
    3. Re:neat! by whitegold · · Score: 1

      I think the point he was making was that the percentage of the population that even knows what md5 IS, let alone cares about a possible close collision, is miniscule.

      When you think about it, a near collision between an asteroid and the EARTH barely makes the paper. :D

      Not a criticism, by the way. This is a specialist site, for specialists. However, this particular bit of news is (quite rightly) particularly specialized, even for Slashdot. :)

  157. MD5 Collision *NEARLY* Found by michael+path · · Score: 3, Informative

    Ed Felten posted a follow-up on this article here.

    As it turns out, there was an error in their findings - and that the MD5 value created is NOT the same in this incident.

  158. Nice try... by Anonymous Coward · · Score: 0

    The Apple ][ did not support lower case characters, so your third equation contains an error ((26+26+10+1) should be (26+10+1)).

  159. URL for MD5 Collision by Bri3D · · Score: 2, Interesting

    This PDF explains the MD5 Collision: http://eprint.iacr.org/2004/199link

  160. The birthday paradox does not apply by Anonymous Coward · · Score: 0

    The birthday paradox is about how long you have to look to find a collision. Which, in the example that you offer, says how long it would take to find two passwords that collide. But neither of them is likely to be the one that you wanted to break, so that doesn't help you.

  161. Reminds me of soon to be classic quote by Anonymous Coward · · Score: 0


    First they hash you,
    then they match you,
    then they install you,
    and then you are in.

    f53f

  162. Thanks for the post... by wintermute42 · · Score: 1

    Thanks for posting and for the clear explaination.

    I'm guilty of fuzzy thinking here. I was thinking that these are iterative algorithms, similar to random number generators. And that a larger input stream would result in better distribution. But there is no reason to think this on reflection.

  163. Rivest said Shamir's hash func was 'OK'. True? by iamcf13 · · Score: 1

    The relevant bit from:

    Pure Crypto Project

    which was 'cited' from:

    http://diswww.mit.edu/bloom-picayune/crypto/13190

    -- begin quote --
    Adi Shamir once proposed the following hash function:

    Let n = p*q be the product of two large primes, such that
    factoring n is believed to be infeasible.

    Let g be an element of maximum order in Z_n^* (i.e. an
    element of order lambda(n) = lcm(p-1,q-1)).

    Assume that n and g are fixed and public; p and q are secret.

    Let x be an input to be hashed, interpreted as a
    non-negative integer. (Of arbitrary length; this may be
    considerably larger than n.)

    Define hash(x) = g^x (mod n).

    Then this hash function is provably collision-resistant, since
    the ability to find a collision means that you have an x and
    an x' such that

    hash(x) = hash(x')

    which implies that

    x - x' = k * lambda(n)

    for some k. That is a collision implies that you can find a
    multiple of lambda(n). Being able to find a multiple of lambda(n)
    means that you can factor n.

    I would suggest this meets the specs of your query above.

    Cheers,
    Ron Rivest

    Ronald L. Rivest
    Room 324, 200 Technology Square, Cambridge MA 02139
    Tel 617-253-5880, Fax 617-258-9738, Email
    -- end quote --

    My question is that does such a hash function live up to Shamir's and Rivest's claims? If so, such hash functions are a lot simpler to understand, use, and implement in software. Apart from the 'factoring n' bit, I can see no problems with this hash function as well but I am not a 'hardcore' mathematician like Rivest and Shamir are.

    PS: Please help me decode the following:

    0x0d0a (568518) 's signature line:

    US War on Terror victories: an old chess champion, a student volunteer forum moderator, a US-planted mole. Proud?

    old chess champion = Robert James 'Bobby' Fischer.

    So who are the other two?

    I cannot ask 0x0d0a by email, he/she won't give their email address out.

    Bryan Taylor
    iamcf13@hotpop.com
    SpamByte code: 7
    (see http://www.cf13.com/game-over-spammers.htm )
    http://www.cf13.com/press-release.htm
    All email containing unwanted content will be summarily deleted or reported as spam.

    1. Re:Rivest said Shamir's hash func was 'OK'. True? by 0x0d0a · · Score: 1

      My question is that does such a hash function live up to Shamir's and Rivest's claims?

      You'd be much better off asking a cryptography newsgroup/forum/mailing list than me -- I'm not a cryptographer. Use of prime factorization in hash generation in an earlier post of mine was an idea that I just pulled out of the air without no thought or references. It was not intended to be a serious suggestion -- I simply needed an example of a simple, obvious one-way operation that could be done using a processor.

      As for the .sig:

      Mole.

      Student forum moderator.

      I would have provided links, but for Slashdot's 160 character limitation.

      Obviously, as has been pointed out by many, the Yugoslavia tournament dates way back to before the War on Terror -- on the other hand, it is only the post-9/11 extreme nationalism in the United States that would allow a country to have extradited and prosecute an elderly man who has been on the run for many years for playing a *chess game*, especially a man who was once lauded as a pillar against the "evil" Soviet Union.

      The fact that the man is horribly disillusioned with the United States seems quite reasonable; he wanted to play chess, and was turned into a political tool, had his name illegally commercialized, was hunted by US agents, and had to live in exile due to playing a chess game. It seems quite reasonable to dislike a country that has done something like this to you.

  164. Re:Airplane quotes by KnarfO · · Score: 1

    But, have you ever been to a Turkish Bath? :-P

    --


    "Creativity is allowing ones self to make mistakes. Art is knowing which ones to keep" - Scott Adams
  165. Re:Airplane quotes by kernelfoobar · · Score: 1

    -What's our vector Victor
    -What?
    -Roger
    -What?
    -You have clearence Clarence
    -What?
    -Roger
    -What?
    -What Victor?
    -Our takeoff vector
    -Roger...
    -What Clarence?

    and so on....

    --
    Here we go again!
  166. Question about signed programs by Anonymous Coward · · Score: 0

    Maybe I don't understand this but would it be possible to defeat a signed program using this exploit? For instance in RSA 2048.

  167. True random numbers from commodity webcam by boffy_b · · Score: 1

    LavaRND uses a lens-capped webcam on high-gain to generate provably random numbers, /dev/random is only pseudo-random, and not suitable for mission-critical randomness, IE: One-time pads for important data.

    LavaRND is bullet-proof, weapons grade true random, for all the cost of a £20 web-cam.

    --
    Windows is only $500 if your time is worthless.
  168. Is this obvious? by MoogMan · · Score: 1

    Im just wondering if I can think really stupidly and say this:

    There are more possible character combinations (in fact, an infinite amount) in an arbitary-lengthed string than possible combinations in an md-5 string. Obviously, if this is not a one-to-one relationship, then there are going to be some (well, a lot of) collisions.

  169. Speaking for all of us by andfarm · · Score: 1
    I think I speak for all of us when I say:
    "Crap. I hope this can't be expanded to a full-on attack on MD5 or SHA1."

    (SHA1 and MD5 are used heavily in all sorts of systems for password verification and message integrity checks. "Breaking" them - which would involve the discovery of a way to easily create a message with a given hash or create two messages with the same hash and specific content - would have all sorts of nasty implications.)

    --

    TANSTAAFI: There Ain't No Such Thing As A Free iPod.

  170. Sum of sums by RomulusNR · · Score: 1
    On the bright side, the two files do not have the same MD5 hash.
    c40860f3e66f2f80609163af7d85b51b *file1.bin
    b8ff5359e09c1274435e488b089492df *file2.bin
    A collision that works for more than one hash system would really be worth worrying about.
    --
    Terrorists can attack freedom, but only Congress can destroy it.
  171. Here are the real MD5 collisions by Tom7 · · Score: 1

    Here are collisions for the real, off-the-shell MD5 algorithm.

    C:\tmp> sha1sum x1 x2
    a34473cf767c6108a5751a20971f1fdfba97690a x1
    4283dd2d70af1ad3c2d5fdc917330bf502035658 x2

    C:\tmp> md5sum x1 x2
    79054025255fb1a26e4bc422aef54eb4 x1
    79054025255fb1a26e4bc422aef54eb4 x2

    C:\tmp> hexdump x1
    0000000 31d1 02dd e6c5 c4ee 3d69 069a af98 5cf9
    0000010 ca2f 87b5 4612 ab7e 0440 3e58 fbb8 897f
    0000020 ad55 0634 f409 02b3 e483 8388 7125 5a41
    0000030 5108 e825 cdf7 9fc9 1dd9 f2bd 3780 5b3c
    0000040 82d8 313e 3456 5b8f 6dae d4ac c936 c619
    0000050 53dd b4e2 da87 fd03 3902 0663 48d2 a0cd
    0000060 9fe9 4233 570f e87e 54ce 70b6 a880 1e0d
    0000070 98c6 bc21 a8b6 9383 f996 2b65 f76f 702a

    C:\tmp> hexdump x2
    0000000 31d1 02dd e6c5 c4ee 3d69 069a af98 5cf9
    0000010 ca2f 07b5 4612 ab7e 0440 3e58 fbb8 897f
    0000020 ad55 0634 f409 02b3 e483 8388 f125 5a41
    0000030 5108 e825 cdf7 9fc9 1dd9 72bd 3780 5b3c
    0000040 82d8 313e 3456 5b8f 6dae d4ac c936 c619
    0000050 53dd 34e2 da87 fd03 3902 0663 48d2 a0cd
    0000060 9fe9 4233 570f e87e 54ce 70b6 2880 1e0d
    0000070 98c6 bc21 a8b6 9383 f996 ab65 f76f 702a

  172. -1, wrong by wirelessbuzzers · · Score: 1
    When used properly, One Time Pad is impossible to break.


    Not quite true - a one time pad cipher where the key is as long, or longer than the message is impossible to break.

    That would be using it improperly.

    The phone line between the Kremlin and the White house is enciphered this way.

    According to the Crypto Museum, during the cold war, there was a teletype (not a phone line) between the Kremlin and the White House, and it was enciphered, but not with a one-time pad.

    --
    I hereby place the above post in the public domain.
  173. Standards by elegie · · Score: 1

    Consider various standards that incorporate secure hash functions. Those standards might persist for a while even if a secure hash function is broken. It might be tempting to retain support for such standards for the sake of backwards compatibility. Someone might not realize that such a standard has become insecure. It is easy to not get around to updating software.

  174. This is why we should fear! by zoloto · · Score: 1

    pr0n bot... mmmm, instant access

  175. And she lost by Creedo · · Score: 1

    And she freaking lost tonight. I am looking forward to that one ass spending time in jail, however.

    --
    All that is necessary for the triumph of good is that evil men do nothing.
  176. Cyrillic by Krach42 · · Score: 1

    In Soviet Russia, ROT-16.5 encrypts YOU! ... Stupid Cyrillic Alphabet having an odd cardinal value. :P

    --

    I am unamerican, and proud of it!
    1. Re:Cyrillic by XnR'rn · · Score: 0

      33? ;)

    2. Re:Cyrillic by Krach42 · · Score: 1

      Yes, the Cyrillic alphabet has 33 characters. 31 if you don't count the E with diaeresis/umlaut, and the backwards N (pronounced I), with a breve over it (pronounced like y)

      I'd have not included these letters, if they'd have given an even number, but since they don't I thought, might as well *shrug*.

      --

      I am unamerican, and proud of it!
    3. Re:Cyrillic by XnR'rn · · Score: 0

      Well, you could throw out 'yo' () (one with the dots on top), since it is rarely used. You can't throw out "backwards N" () since it is normal and common sound/letter, as commonly used as i is in english. I would try to preserve the as well, since it is quite useful too. So there you go. Throw one letter out and you have 32 ones. Oh, I remember that old russian alphabet had many more characters. Up to at one point 51 iirc?

    4. Re:Cyrillic by Krach42 · · Score: 1

      Right, I was saying you could through out the yo, but I'm not talking about throwing out the "backwards N", I'm talking about the backwards N with the breve. The one that is equivalent to the 'y' in English.

      So the Russian language book I had indicated, the yo is almost always written in formal print as ye, and the y is almost always written as i.

      Seriously, who couldn't properly read russkii as russkiy? (to use fairly basic transliteration rules)

      --

      I am unamerican, and proud of it!
    5. Re:Cyrillic by XnR'rn · · Score: 0

      If you're going by phonetics, then backwards N is i, backwards N with thingy above it is j and e with dots is 'jo'.

      The only rarely written down letter in russian is the latter, if you go by the russian rules, not the cyrrilic transliteration into latin alphabet. :>

      Actually about half of the russian vowels are a combination of 'j' and some base vowel. Like '|-O' letter is basicly 'ju'... The reverse R letter is basicly 'ja'. The N with a breve is known as 'jot' (close), or eee-the short.
      I know. Im russian.

    6. Re:Cyrillic by Krach42 · · Score: 1

      Right, I studied a bit of Russian. Although, when you're transliterating to English, it's not j, it's y.

      And I know about the palatized vs. unpalatized vowels. a-ja, e-je, the thing that looks like bI-i, o-jo, and u-ju.

      I can actually read Cyrillic, I just can't understand what it's saying. Unless it's something simple, like "ty mat sobaka", or something like that.

      --

      I am unamerican, and proud of it!
    7. Re:Cyrillic by XnR'rn · · Score: 0

      By the way while bl-i form a pair bl they are not a lalatized/unpalatized pair.
      And yeah, when I said about j I also mentioned that it is for phonetic writing. I remember that english has a lot of things like ae and 0 (one for closed th) and stuff. We have j. :)
      As for transliterating and writing it like ruskii and other things that you mentioned several parents ago, it is probably an american oversimplification, and it is quite/somewhat (depending on an individual russian) annoying to us russians. ;)

    8. Re:Cyrillic by Krach42 · · Score: 1

      I wouldn't doubt that it's annoying. Transliteration almost never works well. A lot of the features of the Japenese writing systems (the kanas, not the kanji) just can't be expressed at all well decently with transliteration.

      It's also funny to see a beginning Japanese learner, who's learning it all through romaaji, correcting someone for writing something like "konnichi ha", or "senpai". These forms are actually more accurate transliterations, while "kon'nichi wa" and "sempai" more accurately express the English spelling.

      That's why I like to use the "native" writing format for every language individually. It solves so many problems of stuff just pissing the natives off.

      --

      I am unamerican, and proud of it!
  177. Colliding hashes but different file lengths? by robtheauditor · · Score: 1

    A question for the more attuned: What if (and i'm not saying it is true, but this should be checked into) it were the case that, where hash collisions do occur, that the original plaintext messages are necessarily of different lengths. That is, even though they result in the same hashes, they are different lengths. Couldn't a method taking advantage of that knowledge make it possible to identify the "true" original plaintext? Am I at least potentially right? Or should I just go back to reading my Archie comic book?

    1. Re:Colliding hashes but different file lengths? by Ed+Avis · · Score: 1

      What if (and i'm not saying it is true, but this should be checked into) it were the case that, where hash collisions do occur, that the original plaintext messages are necessarily of different lengths.

      Not possible.

      Suppose your hash function produces an output 100 bits long. There are then 2 ** 100 possible hashes. Now consider all files of length 200 bits. There are 2 ** 200 such files, so they can't all have a different hash value.

      --
      -- Ed Avis ed@membled.com
  178. a bad day for hash function primitives by thelittlestbuddy · · Score: 3, Informative

    Update from the CRYPTO rump session (I was in attendance):
    Collisions were found in MD4, MD5, RIPEMD, and HAVEL (and SHA-0).

    No collisions were found in SHA-1, but progress has been made in finding near collisions.

    The presenter didn't give many details about how the collisions were derived, but did give some timing results. The highlight of the evening was when the slide for MD4 came up, and in the timing results section there was text similar to: "4 to 24 iterations. Can be done by hand." Ouch.

    I think for MD5 it only took a couple of hours to find the collisions.

    PLUS, in the talk on near collisions of SHA-0, the presenters were able to find messages that collided through ~30 rounds and were decipherable as english sentences...

    Other talks seemed to indicate that SHA-1 *and* SHA-2 (256/512 bit) may be susceptible.

    All in all, it was not a good day for hash function primitives.

  179. Law of observation by tod_miller · · Score: 1

    Well it should be called Boyles Observation. I guess any crazy gas breaking it ain't gonna do time. Boyle studied the nature of the physical, measurable, unchanging nature of gases. It is not as if Boyle said, "Article 1: You shall behave as ideal gases, and let P1V1 = P2V2, otherwise I'll send the boys around". If he did he is Gayer than Gay Lussac ;-) *sorry had to be said*

    Moores law is just an idle, incidental observation that has no foundation in reality - only circumstancial observation. It is like throwing ten dead monkeys into the air, and then prediciting how the next ten monkeys will fall, then using that to predict the 10 pandas you are going to throw next year.

    No animals were harmed in the making of this post. Several small children were placed in pressurised heated gas chamber, each holding a barometer, just for empirical research.

    Boyle and Lussac are dudes, they rock.

    --
    #hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
    1. Re:Law of observation by Tim+Browse · · Score: 1

      "Newton's Observation of Gravity"

      It has a nice ring to it.

    2. Re:Law of observation by tod_miller · · Score: 1

      Of course, if you name the 'law' that is thought to exist governing things, after the person who described it, then it makes sense. In which case it adds more weight/mass to my argument - Moores 'law' doesn't govern the computing market, it is an observation of the computing market.

      If we just waited 10 years, computers wouldn't make themselves faster, following some law.

      Look, it is too silly to even discuss. Moores Law is -1 100% overrated.

      --
      #hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
  180. Re:This could be a problem. (OT) by Geoffreyerffoeg · · Score: 1

    It is, shall we say, not widely socially excepted.

    Unless you're being an annoying wordplayer and describing humans as a species of animals or talking about other species of animals themselves.

  181. No? by Pan+T.+Hose · · Score: 1

    Obtaining the original data is hardly the point of breaking the hash. You can't recreate the Illiad from 2048 bits for God's sake.

    Unless you have 2^2048 monkeys and-- Illiad? Oh, sorry, I thought you said Hamlet. You're right then.

    --
    Sincerely,
    Pan Tarhei Hosé, PhD.
    "Homo sum et cogito ergo odi profanum vulgus et libido."
  182. It wasn’t plagiarism by Anonymous Coward · · Score: 0

    That comment might've just happened to hash to the same Google hit, mightn't it?

  183. ok. ive seen the files by Anonymous Coward · · Score: 0

    chese chinese guys. ive seen the files they have created. there data in them is different. but the md5 key generated is the same......so how have then not cracked it?

  184. Re:It probably isn't a big deal... or is it? by baxissimo · · Score: 1

    True. The file sizes almost certainly won't match. Good point.

  185. multiple collisions by Anonymous Coward · · Score: 0
    This doesn't work, because (essentially) one can break the two hashes in serial instead of in parallel, and 2^80 + 2^64 is a lot smaller than the expected security figure of 2^80 * 2^64 that one would normally expect for an output consisting of 288 bits.

    To quote from A. Joux, "Multicollisions in Iterated Hash Functions", LNCS 3152 (presented at this very conference):

    given two hash functions F and G, it seems reasonable given a message M to form the large hash value F(M)||G(M).... Assume that F outputs an nF bit hash value and G an nG bit hash value. If F||G was a good hash function, the complexity of the best attack would be 2^((nF+nG)/2). We claim that there exists a much better attack which finds collisions on F||G with complexity on the order of nG*2^(nF/2) + 2^(nG/2) if nF <= nG.... <proof follows>
    1. Re:multiple collisions by TheLink · · Score: 1

      What if you hashed (include) the output of the first hash as well when doing the 2nd hash?

      --