10,292 reputation
12452
bio website github.com/CodesInChaos
location Frankfurt, Germany
age
visits member for 3 years, 5 months
seen 44 mins ago

Jul
24
comment Why must we hash lot of times in rainbow tables?
@Abdelou With some tricks you can compare the end of the chain with the hash you want to break so you know if the target hash can be a part of that chain. If it is, you recompute that chain from the beginning checking after each step.
Jul
24
comment Why must we hash lot of times in rainbow tables?
@StephenTouset This question is about hash chains in rainbow tables, a concept that isn't related to making a hash slow.
Jul
23
comment SIMON implementation, decryption issues
You wrote 196 in an error message where it should have been 192
Jul
23
comment Is there any weak message for an ECDSA signature?
@PaŭloEbermann DSA is very fast if you don't consider the (per-signature) pre-computation cost. You only need one multiplication and one addition after you learn the message.
Jul
23
reviewed Approve Is there any weak message for an ECDSA signature?
Jul
22
comment How can I accomplish Key Derivation in JavaScript?
since salts don't need to be secret or unpredictable, only unique generating them shouldn't be a big issue. Apart from the fundamental javascript crypto problems(sending evil code etc.) the biggest practical issue is getting decent performance out of the js implementation.
Jul
22
comment Parallel-resistant proof-of-work scheme?
In practice on big problem is that once there are multiple task you can work on at the same time you can parallelize again. I found that most things I want to protect with proof-of-work allow many parallel jobs, even when a job is sequential by itself.
Jul
21
answered Does it make sense to block RSA keys under 1024 bits?
Jul
21
awarded  Yearling
Jul
21
comment why hash(hash(str)) is bad?
If you're talking about password hashing then it's bad because it doesn't have a salt (which needs to different for each user) and it's bad because it's fast. Rainbow tables are largely irrelevant, what's the real threat are GPUs. Without salt all hashes in a database can be attacked at once, with salt they need to be attacked individually.
Jul
20
comment Is generating public key inevitably slow in classic Diffie-Hellman if the private key is large?
I think you can still choose a small value for x (say 256 bits) without losing much security even with a 3000 bit q. A large q is mainly problematic for DSA, not DH.
Jul
20
comment Can you explain what the AES paper means by “sharing active S-boxes”?
@e-sushi I don't think this is a reference request. It's asking for for clarification of certain concepts used in a notable paper. It's limited in scope and doesn't lead to link-only answers. So I consider it on topic.
Jul
20
comment How difficult is it to find the “pre-image” of a block cipher?
@samoz If $M_2$ isn't fixed then Thomas' suggestion works for every key.
Jul
20
comment Is HMAC-MD5 considered secure?
Collisions are irrelevant in typical MAC usage scenarios.
Jul
20
revised Quadratic residuosity problem reduction to integer factorization
added 63 characters in body
Jul
19
comment Generating a secure random number in javascript
Using strong crypto in the RNG is the easy part. The real problem is entropy gathering. Which sources to use, and how to estimate the entropy. One really common issue is allowing consumers to read from the PRNG before enough initial entropy has been gathered.
Jul
19
comment Jumblar: Using map locations as passwords
The entropy contained in a single location is pretty low, so the generated password might be weak.
Jul
18
revised What is meant by $\tilde\Omega(\lambda^4)$?
deleted 191 characters in body; edited tags; edited title; edited tags
Jul
17
comment AES 256 Encryption - Is it really easy to decrypt if you have the key?
@bhs Then get out a time machine and travel back a few centuries. It is a core principle of modern crypto that it must be secure if the attacker knows everything about the scheme, except the key.
Jul
17
comment How can scrypt be improved to counter GPU mining
One can simply adjust the memory use parameter of scrypt. Litecoin chose a really small amount of memory. It's also possible to design a new scheme that doesn't allow certain time-memory trade-offs the GPU implementation takes advantage of.