# 1024bit = 1048576 posible combinations?

## 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?

##### Share on other sites

a discontinuity in the time-space continuium.

snakes on a plane.

hell, i dont know

##### 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.

##### 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

##### 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.

##### 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.

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

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

##### 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. ;)

##### 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

##### Share on other sites

I usually make a point of staying away from confusing math. Confusing meaning conversions

## Join the conversation

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

×   Pasted as rich text.   Paste as plain text instead

Only 75 emoji are allowed.

×   Your previous content has been restored.   Clear editor

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

×