3,913 reputation
1628
bio website
location Wellington, New Zealand
age
visits member for 2 years, 10 months
seen 2 hours ago

I am an undergraduate computer science and mathematics student in New Zealand. My fields of interest are computer graphics, in particular the physics of light transport, and to some extent cryptography, as well as programming and software development in general.


Jan
3
comment A proof-of-work random number generation system for Pokémon
@JoeZeng You require a trusted server to accomplish this, which'll check the result and broadcast to other players (or certify on request) that such and such user did successfully complete the work. Or you could use a p2p network, Bitcoin style, but this gets rather unreasonable for a Pokemon game at this point, no?
Jan
3
comment Do known-plaintext attacks exist for public key encryption?
Some improper terminology here, padding is not blinding. Blinding is used to prevent a third party gaining information about some data, optionally allowing him to blindly operate on it, which has little to do with semantic security. Great answer otherwise.
Jan
3
revised Calculating RSA private exponent when given public exponent and the modulus factors using extended euclid
added 1 characters in body
Jan
3
answered Calculating RSA private exponent when given public exponent and the modulus factors using extended euclid
Jan
3
comment Needing to encrypt plain sight information
@Andrew Also, dchest didn't say "encrypt the data", he said "encrypt the key" - there is a big difference, the data is still only encrypted once ;)
Jan
3
comment Needing to encrypt plain sight information
But the problem doesn't make sense if the resulting decrypted page is the same for all users, just give them all the same key. Unless the keys are used somewhere else, it does not make any difference.
Jan
2
reviewed Reviewed Hill cipher, unknown letter value
Dec
31
comment Time Capsule cryptography?
Point 2 is not a very convincing argument, to be honest. Just because the probability is not zero doesn't mean it's going to happen. Also, speed limit is more like 9GHz, at least to public knowledge.
Dec
27
comment Future-Proof Versioning and Validation
@andrewcooke For that part, you can use a HMAC akin to what I described in my answer to be able to detect when the version number is changed by anyone other than the legimitate owner of the file.
Dec
27
comment Future-Proof Versioning and Validation
@andrewcooke Well, if the old algorithms are broken beyond repair, not much you can do about it, beyond asking your users to migrate their files to newer versions. Algorithms don't live forever. What attacks are you thinking about?
Dec
27
answered Future-Proof Versioning and Validation
Dec
27
comment Time Capsule cryptography?
@IanBoyd The puzzle can be efficiently created. It's solving it that's difficult.
Dec
25
comment Can a nested block cipher avoid the meet in the middle attack by using a secret initialization vector for the inner encryption?
The IV is meant to be public.
Dec
23
awarded  Talkative
Dec
21
awarded  Nice Answer
Dec
21
comment True 128bit secured password length?
16 character password $\neq$ 128 bits of entropy. To fix it, either add more characters to your password, or use a slow KDF (key derivation function) to add some more bits of security to your key in the form of computational cost, see PBKDF2, bcrypt, scrypt, ... you can probably get an extra 24 bits at most before this becomes inconvenient to the user.
Dec
21
comment Why is asymmetric cryptography bad for huge data?
No, the ratio is fine, but I was just noting that the speeds you quoted are generally only obtained when you hardcode everything in a very tight loop, with zero function calls or parameters, in assembly. In any realistic application this is simply not logistically viable - you need the code to be modular and flexible so that it can be reused easily. OpenSSL uses a decently optimized AES-NI implementation and AES-128-CBC runs at 720MB/s per core on my overclocked i5 (openssl speed -evp aes-128-cbc).
Dec
21
comment Why is it important that phi(n) is kept a secret, in RSA?
@PaŭloEbermann That is true, and the reason this answer is meant to be complimentary to CodesInChaos's one (expanding on his second point). That said, $n$ might be used in multiple cryptographic primitives (not just RSA) in any given protocol, so assuming you know $\varphi{(n)}$ (which in itself is rather contrived) you will want to get $p$ and $q$ to help attack those parts of the protocol as well, depending on what your goals as an attacker are.
Dec
20
comment Is there a field guide to ECC for the IT Security layman?
Perhaps more importantly, it also helps you identify and steer clear of snake oil..
Dec
20
comment Is there a field guide to ECC for the IT Security layman?
This applies to high-level protocols, of course - implementing your own cipher is almost always a terrible idea because that actually requires years of training and analysis, whereas by just putting together cryptographic constructions you are using existing primitives which are assumed to have specific properties, which you can use to prove your construction is secure assuming the underlying primitives are (which is more reasonable).