Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Microsoft

Xbox Private Key Distributed Computing Project 579

aeiz writes "The Neo Project has added "The Xbox Public Key Challenge" to it's distributed computing client. The aim is to compute the 2048 bit private key that Microsoft uses to sign Xbox media. If it is a success, modchips wouldn't be necessary. Now many Xbox hacking and scene sites have started groups in order to compete with one another." gee, only 2048 bits? No problem *cough cough*.
This discussion has been archived. No new comments can be posted.

Xbox Private Key Distributed Computing Project

Comments Filter:
  • Well... (Score:3, Interesting)

    by silvaran ( 214334 ) on Sunday January 05, 2003 @01:48PM (#5020213)
    they can borrow my CPU power... an Athlon 1600... that should take care of... let's see... one trillionth of a bit?
  • But... (Score:5, Interesting)

    by Majestix ( 41486 ) on Sunday January 05, 2003 @01:48PM (#5020214)
    Ok this may be a stupid question, but doesn't this violate that DMCA thingy that everyone is all concerned about? Just a thought.

    -Majestix-
  • Re:Relating.. (Score:2, Interesting)

    by Jimmy_B ( 129296 ) <(jim) (at) (jimrandomh.org)> on Sunday January 05, 2003 @01:58PM (#5020279) Homepage
    I don't remember just how large the key was for the last RSA challenge, but it certainly wasn't more than a kilobyte. If we assume it was a kilobyte, the difference in processing power required is a factor of 2^2048/2^1024 = 2^1024 ~= 1.8x10^308. So unless they've reduced the effective key size by a lot, there probably isn't enough matter in the universe to make the computers that would be required to break that key.
  • by Sesse ( 5616 ) <sgunderson AT bigfoot DOT com> on Sunday January 05, 2003 @02:02PM (#5020311) Homepage

    The question is -- would one really need to crack that key to fool the Xbox? I mean, reading all the data on the disc would be way too slow, so it could only check a part of it. Would it be possible to re-use some already signed code from an existing game? What kind of code is signed, really? (All of it, just not the data?) And of course, how many buffer overflows are there in the signature verification code? =)

    /* Steinar */

  • Re:Gee... (Score:3, Interesting)

    by Dark Lord Seth ( 584963 ) on Sunday January 05, 2003 @02:03PM (#5020312) Journal
    1. Provided Microsoft uses a proper public key infrastructure, brute-forcing this thing could potentially take forever

    Hello, earth calling Salimma, do you copy? We're talking about Microsoft here. Either the public key is crackable within a few weeks or months or someone ought to leak this out to the media so MS shareholders can question MS why the products they use themselves are so secure, in contrary to the products they sell, because I have yet to see a Windows shipped with SSH 2 or similiar encryption based remote terminal capabilities. Let alone with an encryption which uses a 2048 bits key.

  • by Nad Maximus ( 234442 ) on Sunday January 05, 2003 @02:07PM (#5020336)
    Step 1: Aquire 2048-bit key by non-cracking means (hacking, leak from inside, etc)

    Step 2: Setup nearly hopeless, but technically legitimate project to crack the key.

    Step 3: By sheer luck, one of your members 'cracks' the key a few months later.

    So, if someone did aquire knowledge of the key by other means, they could cover their tracks by this subterfuge.

    -Nad
  • by pschmied ( 5648 ) on Sunday January 05, 2003 @02:09PM (#5020349) Homepage
    Not that I'm condoning illegal methods, but wouldn't it be easier to start an account to bribe an MS worker to give the code?

    Maybe you could hire a couple of ex-CIA sneaker types to just break through all the security on the Microsoft campus and steal the code.

    -end sarcasm-

    Really, this seems like a waste of resources. Unless someone gets really, fantastically lucky, the chances of breaking this key before the Play Station 5 is released [theonion.com] are about the same as getting hit by lightning 20 times on the way home from collecting your multiple Lotto winnings.


    -Peter

  • Re:Relating.. (Score:4, Interesting)

    by lrichardson ( 220639 ) on Sunday January 05, 2003 @02:10PM (#5020358) Homepage
    I'd like to point out that IBM's demo of the 7 q-bit machine last year involved factoring a number ... which seemed to me to be pretty explicit about one intended use.

    Given the demo was last year, give it another year or so, and they'll have the beast large and stable enough to do the breaking in no time flat.

    As an aside, an earlier q-bit demo had 25 ops in 9 nanoseconds ... which scales to about 25 billion hertz, kinda leaving most Athlons and PIVs in the dust. That's 8 orders of magnitude faster, which, by the way Moore's law is going, would still take several years to achieve with mainstream processors...

  • by agurkan ( 523320 ) on Sunday January 05, 2003 @02:11PM (#5020366) Homepage
    This is assuming the key has 2^2048 entropy. If that is so, it is hopeless, however if the entropy of the key is lower, which it is for many microsoft products, then it can be cracked in smaller amount of time. See Bruce Schreider's writings about this topic.
  • by Morgaine ( 4316 ) on Sunday January 05, 2003 @02:22PM (#5020444)
    Cracking keys is a very hands-off approach to improving your Xbox or any other device. You bought the hardware, it's yours, so enhance it to your heart's content by installing a hardware mod that makes it general purpose, or get it done for you by a supplier. Voiding the warranty is no issue if you value the extended specification.

    It's no different in concept to any other kind of DIY improvements that you carry out at home --- absolutely everything that you buy has patents, trademarks, or other legal constraints, but in no other industry do they see fit to limit what you can do with items that you have purchased, simply because they can. It's your equipment, do with it what you wish. (If you were merely leasing the hardware then it would cost much less and they might have a case, but here they're trying to have their cake and eat it too, take your money for an outright purchase and still lay claim to controlling your possessions. That's simply not right.)
  • Re:Gee... (Score:1, Interesting)

    by 8Complex ( 10701 ) on Sunday January 05, 2003 @02:28PM (#5020478)
    Yeah, just remember Sega. Dreamcast was a great machine, but as soon as people were releasing cracked games that can be written to disc and run without a boot disc or mod chip, I'm pretty sure their income went through the floor. Too bad, it was an excellent system.
  • Re:Relating.. (Score:5, Interesting)

    by interiot ( 50685 ) on Sunday January 05, 2003 @02:29PM (#5020481) Homepage
    Well, the 2048-bit key is an RSA key (see here [ph-freiburg.de]).

    RSA is currently providing monitary awards [rsasecurity.com] for groups who can crack a larger RSA key than has been cracked before. Here's a quote from the FAQ [rsasecurity.com] associated with that contest:

    • To date, the largest number of this type to be factored is 512 bits. It was factored in 1999 as part of the previous RSA Factoring Challenge, which this challenge replaces. See the announcement for information about this factorization. The 576-bit value is likely to be factored in the next year or so,
    • while RSA-2048 should stand for decades.
  • Re:Gee... (Score:2, Interesting)

    by MrWa ( 144753 ) on Sunday January 05, 2003 @02:35PM (#5020511) Homepage
    However, they're not going to be making money on the hardware any time in the near future. Therefore, people buying the X-box then not buying any games is pretty devestating.

    The reason it may help Microsoft is in quality and number of games created for the XBox. Which will then fuel more platform sales and games bought. People always say that game platforms wars are won or lost through the games, right? If the better games are created for the Xbox - and consquently, the XBox2 - then it will be more of a success in terms of platforms sold and games sold. Which then helps Microsoft.

  • Re:Relating.. (Score:2, Interesting)

    by KilerCris ( 637493 ) <KilerCris AT Mail DOT com> on Sunday January 05, 2003 @02:41PM (#5020548)
    By the time it's brute forced no one will care about it anymore. I think there's a better chance with getting it leaked by some disgruntled MS programmer.
  • by terminal.dk ( 102718 ) on Sunday January 05, 2003 @02:49PM (#5020586) Homepage
    Apart from the cracking project, this is how D2Mac sattelite TV was "cracked" by the people who produces pirate cards. Money + leaks.

    And it just uses simple DES 56-bit, with 16 keys, of which 4 is used only to encrypt key update messages, and the remaining 12 to scramble programs.
  • by KillerCow ( 213458 ) on Sunday January 05, 2003 @02:54PM (#5020606)
    > how do they test to see if the key they have is actually the right one?

    By finding the primes 'p' and 'q' such that
    p * q = n
    where 'n' is from the public key '(e,n)'.

    They will then be able to determine the private key '(d,e)' by solving the congruence
    e * d =(congruent) 1 (mod (p-1)*(q-1))

    The difficulty in breaking RSA is in finding the prime factors 'p' and 'q' from a very large 'n'.

    see:
    RSA encryption [wolfram.com]
    Prime Factorization [wolfram.com]
  • by bogie ( 31020 ) on Sunday January 05, 2003 @03:12PM (#5020693) Journal
    "Therefore, people buying the X-box then not buying any games is pretty devestating."

    Wealthy idiots who hate Microsoft? I'd venture the amount of people who 1) really want to run linux on Xbox and 2) Are never going to buy game for it, is on the order of .001 percent. Somehow I don't think MS will be hurt by the 10-20 people who buy Xbox's but never buy any games for them. Let's not be silly in estimating how many people would actually consider doing this, its just not realistic. Although I guess its possible Larry Ellison has a stack of them in his closet out of spite.
  • by Anonymous Coward on Sunday January 05, 2003 @04:14PM (#5020976)
    Solving this key is almost tantamount to a person winning the lottery. Although, the chances of winning are very slim, the odds that the lottery will eventually be won are very high.

    It appears to me that a key this large could best be solved with a non-iterative brute force approach, that is if your goal is short-term (needs to be solved before the XBox's successor (XBoxNext) hits the streets)...

    On second thought, maybe the lottery analogy is a bad one, because it may be similar to winning a thousand lotteries, anyone here know the right probability?

  • Re:Gee... (Score:2, Interesting)

    by Vaughn Anderson ( 581869 ) on Sunday January 05, 2003 @04:30PM (#5021035)
    wrong, every xbox sold is another number than can add to their tally. The more than can say they have sold, the better their system looks to game developers. Whether or not any of these xbox owners actually buy any games or just hack it is irrelevant.

    The more games and developers working on the xbox the better it will look in the market place. period.

    -v
  • by kasperd ( 592156 ) on Sunday January 05, 2003 @05:08PM (#5021223) Homepage Journal
    Ok so I havent passed the discrete matchs exam yet, but doesn't numbers that are divisible by 5 end in either 0 or 5 (thus beeing eliminated already)?

    Yes, that was also what was said.

    Why not numbers that end in 0,2,4,6,8 AND numbers where the total sum of the individual digits is divisible by 3?

    You can do almost that. In fact you wouldn't be looking on a decimal representation, but rather a binary representation. So computing the last digit of a decimal representation would take som computation time. Unless you are smart and keep the last digit in a seperate variable. Just adding one to a byte and starting from zero every time you reach ten would be a lot faster than computing the last digit every time.

    But in fact we can be even smarter than that. Why keep the last digit of a base 10 representation? It would be smarter to save the last digit of the number in a higher base, because there will be a larger fraction of digits that can be ruled out immediately. For example the case of divisibility by three would be trivial if we kept the last digit of a base 30 representation rather than base 10. I'd even go as far as base 210, which happens to be the product of the first four primes. Only 48 of the 210 possibilities would have to be tested. That has cut the number of cases down to 23%

    But we can be even smarter. Why even add only one each time, given the last digit we already know how many times we will have to add one before reaching the next candidate. So rather just keep an array telling us how much to add each time, then we don't even have to remember the last digit, but just an index in an array with 48 bytes.

    But why stop at base 210. Take another two primes and make the base 30030, only 5760 of those would have to be tested. So we would be down to 19% of the original search space. But here we notice that increasing the array by a factor 120 only saved us a few percent. And in fact each time we add another prime the size of the array grows faster and faster while the gain in reduction of search space gets smaller. So as soon as we hit the size of the L1 cache, we will probably gain no more. All in all we might have cut the search space by a factor four, maybe five or six, but no more.

    But for a problem of exponential complexity cutting the time usage by a constant factor doesn't really help. All our efforts to avoid candidates that are obviously not prime can be defeated by just using a key five bits larger. Those five bits would be enough to make the problem harder than before we used those tricks. And the price for those five bits in normal use of the key is close to nothing. In fact they already did add another five bits and then again some more.

    But we can be even smarter, first of all we obviously only have to verify divisors up to the square root of the number. Of course we'd already just do that, because we would be starting from zero and going upwards.

    But we can be even smarter, because trial and error is absolutely not the fastest way to factorize products of large primes. Other techniques like quadratic sieve would be a lot faster. And then all our smart ways to avoid obviously nonprimes is not usefull at all. The way to actually factorize is completely different.
  • Re:Relating.. (Score:3, Interesting)

    by Uller-RM ( 65231 ) on Sunday January 05, 2003 @11:34PM (#5023113) Homepage
    You can be sure that nobody at MSFT will actually have the private key. They'll have a black box there with the key in tamper-proof silicon. You get authorization to see the box, you put in a finished XBE with no signature, you get back out a signed executable, you're escorted from the room.

    At least, that's how I'd do it if I were in their position, since the key is the linchpin that's allowing MSFT to stay competitive by preventing unauthorized games or copying.
  • Re:Why brute force? (Score:3, Interesting)

    by demo9orgon ( 156675 ) on Monday January 06, 2003 @03:25AM (#5023947) Homepage
    Straight up, we need to leave the Von-Neuman crap serving webpages and go straight to using a DNA matricies and a highly paralleled quantum system to work through solution sets instead of pushing a brute-force asymmetric namespace around. If we can use simple DNA we can manipulate massive datasets in realtime. Ackerman has probably danced around such ideas (he's the "A" in RSA) and avoided them in to avoid showing up on spook-radar and being forced to live in another country.

    If the key to the survival of the Federal Govt. rested on cracking a paltry 2048bit encryption key the NSA/NCSA would have it done in time to recive a bonus and loads of poorly documented funding for more happy-fun projects after lunch the same day. Of course I'm probably being optimistic, but I deal the plausibility card based on the idea that if the government could not somehow deal with RSA algorithms, they would be outlawed. For a time they were, but that seems to have passed.

    And on a personal note, I would love to see the classification for the XBox go from "Game Console" to "Personal Computer" and see every single game they have for it pulled out of Blockbuster and every other rental location. Why you ask?
    Because there are laws in the United States for what qualifies as a product you can rent software for. Computers, like the kind used to submit this reply, are ineligible for software rentals. Due to the accessories, Secondary storage, and shared software libaries like DirectX, the Xbox should be considred a computer and maybe even an example of Palladium in action.

  • by Xilman ( 191715 ) on Monday January 06, 2003 @05:29AM (#5024181) Homepage Journal
    This is on the basis that the breaks of 56 bit DES and 512 bit RSA came at arround the same time and used roughly equivalent amounts of processing. In fact there is a slight discontinuity since only half of the RSA calculation could be farmed out. The farming stage results in a heck of a big matrix that you have to invert which was done on a CM5 I seem to recall.

    Close, but no cigar. Much more than half of the RSA-155 factorization was farmed out. The General Number Field Sieve algorithm falls naturally into several phases. The first phase, polynomial selection, was run over several weeks on a number of computers and used 100 MIPS-years. The sieving phase, which accounted for about 90% of the computation, was spread over close to three hundred machines and took 15 weeks. The sieving used about 8400 MIPS-years.

    The final three stages were not widely distributed, though the last was run on four different machines concurrently. I don't have details of the filtering stage but, based on personal experience, I suspect it was done on one or two machines and used less than a week of cpu time.

    The linear algebra was actually done on the Cray C916 (not a CM5) at SARA in Amsterdam. It took 224 cpu-hours and 2Gb of RAM. The last stage, extracting a square root in an algebraic number field, was run on four 300MHz SGI processors and each job ran for around 40 hours.

    Incidentally, the matrix stage doesn't require a single supercomputer. A parallelized version is being developed which runs nicely on a Beowulf-type cluster. I'll be starting the matrix for a 506-bit GNFS factorization on just such a cluster later this week.

    Paul

  • by Anonymous Coward on Monday January 06, 2003 @10:20AM (#5024958)
    Why not connect the XBox processor to a state monitor and slow the CPU down to single clock steps, then probe the state of the CPU registers and memory buffers after the public key is read from the DVD-ROM when the primes calculation is made in the CPU to compare the public key against the private key ?

Always try to do things in chronological order; it's less confusing that way.

Working...