12,368 reputation
11352
bio website vyznev.net
location Helsinki, Finland
age
visits member for 3 years, 3 months
seen 23 hours ago

I'm a PhD student in biomathematics, working on stochastic individual-based models of evolution in spatially structured populations. My other interests include cryptography, programming games and puzzles, photography and graphic design.

I started programming (in AmigaBASIC) when I was 10 years old. Nowadays, I'm most comfortable using Perl, C and JavaScript. I know Java and PHP too, but I can't really say I like them. I also know some Python, but not as much as I'd like.


CC-Zero Please consider any (original) code I post to Stack Overflow and other Stack Exchange sites to be released under CC-Zero unless stated otherwise. You may do whatever you want with it and don't have to credit me in any way, although of course that would be nice.


I'm the main author and maintainer of the Stack Overflow Unofficial Patch (SOUP), a user script for browsers with GreaseMonkey-compatible user script support (Firefox, Chrome, Opera, possibly Safari) that fixes or works around a number of outstanding issues with the Stack Exchange user interface.

I tend to answer a lot more questions than I ask. Some answers I'm rather proud of:


Aug
22
revised SHA256 Round Equivalence
formatting, copyedit
Aug
22
comment How resilient to attackers with extreme resources available is this encryption method?
I believe the reason why the answers you're getting are so all over the place is that you haven't defined the scenario fully. In particular, are you trying to implement a secure communication channel or secure file storage? If the latter, what exactly is the authentication part used for; who's authenticating what to whom, and for what purpose? What kind of resources do the legitimate users and/or servers have? Can your users securely store random encryption keys? Can they store random 256-bit keys at all, even insecurely?
Aug
22
revised Create a field in PBC
replace " with $ for MathJax, use backticks for C data types, misc. copyedits
Aug
22
answered Is it theoretically possible to construct a string that contain its own hash value?
Aug
22
comment Multiple parties must encrypt and get the same result
Are the hashes (and the 8 digits stored in plain) public information, or can you keep them hidden on your own servers and only allow on-line existence queries? That would significantly affect the options you'll have.
Aug
21
revised Strength of CBC with Ciphertext Stealing
added 1103 characters in body
Aug
21
reviewed Approve suggested edit on birthday-attack tag wiki
Aug
21
comment Strength of CBC with Ciphertext Stealing
@D.W.: Good point, I forgot to address that part of the question. That said, even plain CBC still leaks most of the length of the plaintext, it just rounds it up to the nearest cipher block size (i.e. typically 8 or 16 bytes). If you're in a situation where leaking the plaintext length matters, you should pad your messages yourself to a sufficiently long fixed length, rather than relying on the limited and incidental padding provided by CBC mode.
Aug
20
revised Strength of CBC with Ciphertext Stealing
added 738 characters in body
Aug
20
answered Strength of CBC with Ciphertext Stealing
Aug
19
reviewed Reject suggested edit on encoding tag wiki
Aug
19
reviewed Approve suggested edit on ciphertext-only-attack tag wiki excerpt
Aug
19
reviewed Approve suggested edit on hkdf tag wiki excerpt
Aug
19
reviewed Approve suggested edit on hkdf tag wiki
Aug
19
reviewed Approve suggested edit on shamir-secret-sharing tag wiki
Aug
19
reviewed Approve suggested edit on shamir-secret-sharing tag wiki excerpt
Aug
19
comment Am I insecurely implementing AES in Python?
+1 for "an insecure scheme looks just like a secure scheme".
Aug
19
revised Pseudo Random Generator (PRG) from Rabin function
edited tags
Aug
19
wiki created rabin-cryptosystem description
Aug
19
wiki created rabin-cryptosystem excerpt