Jump to content

1024bit = 1048576 posible combinations?


Sparda

Recommended Posts

Well, yes it dose, but thats not the main problem I have, I just needed a ecent sumary topic name ;)

What I don't understand is the relationship between the key length and theoretical time to calculate all posible keys for a set key length. Can any one enlighten me?

Link to comment
Share on other sites

I think the reason I'm confused about this is becasue it stand to reason that computers are, well... fast. Since you know the key length (1024bits) and each bit can either be a 1 or a 0 (duh) and since 1024^2=1048576, would it not be posible to pre-computer (time-space trade off baby) every feasable key for a given length? Perhaps I'm missing understanding of how DSA/RSA works, and hence can not comprihend why it takes so long to generate all phesable keys for a given length and algorythem.

Link to comment
Share on other sites

Take a look at this (yes, my) post from the Operation Project X mailing list:

http://sourceforge.net/mailarchive/message...?msg_id=8869858

The goal of the OPX project was to brute-force the 2048-bit key that Microsoft uses to sign its official XBox games (when you put in a game, if the keys don't check out, it refuses to play the game). That post clearly reflects the problem you're facing with such huge keys.

Feel free to take the square root of one of your own 1024-bit keys to get some figures that might be more meaningfull to you.

Link to comment
Share on other sites

your maths is wrong, it's 2 to the power of key length.

so 2^1024 actually = 1.797693134862315907729305190789e+308

same way to work out the range of values a variable can hold, such as a byte can hold 2^8 = 256

Yeah that sounds more accurate.

I'm not in a reading mood, but maybe these can help you.

http://en.wikipedia.org/wiki/Key_size

http://www.grc.com/SecurityNow.htm - Episodes 30-36

Link to comment
Share on other sites

your maths is wrong, it's 2 to the power of key length.

so 2^1024 actually = 1.797693134862315907729305190789e+308

same way to work out the range of values a variable can hold, such as a byte can hold 2^8 = 256

That would explain it ^^

Just to calrifie your comment about the example of the byte. 2^8 = 256 is correct, however, a byte cannot hold the value of 256. Computers count from 0 so the largest value a byte can hold is 255. ;)

Link to comment
Share on other sites

your maths is wrong, it's 2 to the power of key length.

so 2^1024 actually = 1.797693134862315907729305190789e+308

same way to work out the range of values a variable can hold, such as a byte can hold 2^8 = 256

That would explain it ^^

Just to calrifie your comment about the example of the byte. 2^8 = 256 is correct, however, a byte cannot hold the value of 256. Computers count from 0 so the largest value a byte can hold is 255. ;)

to clarify, i did say "range of values", while you are correct in saying it can't hold 256, it can hold 256 different combinations, 0 through 255 (assuming it's unsigned).

**edit** i just re-read this and it sounded incredibly rude. please don't take it that way :/ i was just clarifying what i meant

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...