10 ms·
Wouldn’t that be 256^256? That’s certainly a hell of a haystack
by LocalH 7y ago
Wouldn’t that be 256^256? That’s certainly a hell of a haystack
- deleted 7y ago[deleted]
- sho 7y agoIt would be 8^256. Less than you guessed but still a 232-digit number...
- LocalH 7y agoI don’t understand how it’s that low. 256 bytes, each with 256 possible values. 256^256.
- scaredginger 7y agoYou're right, the other person is wrong :)
- scaredginger 7y agoI'm sorry, are you saying here that a byte can only express 8 different values?
- sho 6y agoNope - it was late and I totally botched it. Rightfully downvoted.
- exikyut 7y agoUnreasonably impossible as of yet, yes. For handy reference: 8^8: 16,777,216 8^16: 281,474,976,710,656 8^32: 79,228,162,514,264,337,593,543,950,336 8^64: 6,277,101,735,386,680,763,835,789,423,207,666,416,102,355,444,464,034,512,896 8^128: ... 8^256: ? 8^512: hello from the other side of the quantum dimension 8^8 sounds interesting. 16 million reboots of a real {PC,C64,ST,Amiga,Mac,Z80,...} sounds like a collectively highly entertaining kind of hilarious. The issues only begin when you start wondering if any of the programs wedges the hardware into "interesting" states that are preserved across reboots - or at least the what if of that dimension of entropy... then the problem space becomes 8^8^8... [I decided to compute 8^8^8. The result is apparently 15 million digits long. (`echo 8^8^8 | bc -ql | wc` -> `222814 222814 15596963`)
- userbinator 7y agoUnless some crazy physics breakthrough happens, bruteforcing even 128 bits is physically impossible: https://pthree.org/2016/06/19/the-physics-of-brute-force/ https://pthree.org/2016/06/19/the-physics-of-brute-force/
- zokier 7y agoThats weird "reference". Why 8 as the base number? Nobody works with 3bit bytes. 8^8 == 2^24 == 2^(8 * 3) == 256^3, i.e. the combination space of three bytes. The smallest category in pouet for reference is 32b (or 256 bits), so 2^256 combinations to brute force. For comparison usually 128bit encryption is considered "safe" and infeasible to brute force. You might be able to constrain the search space to only valid IA32 instructions, but realistically I don't see it helping that much
- vidarh 7y agoYou could further constrain it to exclude a lot of instructions and instruction pairs that makes no sense given the context. E.g. any instruction pair where the second one makes the first one redundant, such as the second instruction clobbering the same register the first one modified. Or a "ret" in the first few instructions... It'd probably not constrain the search space nearly enough though. But even if it did and you'd somehow manage to even generate every combination, you'd still face the second problem of how to evaluate if they do something "interesting enough" to be worthwhile reviewing.
- exikyut 7y agoWoops. My original comment ran the numbers against the OP's "wouldn't that be 256^256?", but I got tripped up by the reply refuting that and saying it was 8^256 instead. For as-yet unknown reasons my brain has always had a hard time mapping between the real world and the mathematical vacuum, so it was honestly less stressful to risk trusting that comment than try and [figure out how to] figure it out on my own. So I just substituted calculations for 8^n. Here are the original numbers I supplied: 8^8: 167,77,216 16^16: 18,446,744,073,709,551,616 32^32: 1,461,501,637,330,902,918,203,684,832,716,283,019,655,932,542,976 Thanks. Hopefully I can figure out those mapping problems one day. I think neurological damage may be involved, or something - I had to resort to button-mashing on my calculator while trying to figure out how many vegetables I could buy for $X given that they were $Y/kg one day at the supermarket. I'm 29. </rant>
- thr0w__4w4y 7y agoYes that's correct. I think of it just slightly differently -- 256 bytes, 2048 bits -- so 2^2048 (same result as your 256^256). To give people (who don't spend time with these numbers all the time, I do b/c of cryptography): 2 ^ 256 is on the order of the /number of atoms in the entire universe/ -- every star, moon, comet, black hole, galaxy, etc. across the entire known universe) Now consider this: 2^512 -- take every single atom in the universe, and imagine that that atom //contains a universe of atoms//. Congratulations, you're only at 2 ^ 512. Imagine how large 2 ^ 2048 is!