2,230 reputation
423
bio website touset.org
location San Francisco, CA
age 30
visits member for 1 year, 9 months
seen 2 hours ago

Cyclist. Rubyist.


Mar
12
comment Would a symmetric cipher with a keylength a big as the data length be information theoretically secure?
To be fair, though, at the point where you have a truly random (not simply from a seeded CSPRNG), why bother with the overhead of a symmetric cipher like AES instead of simply XOR?
Mar
12
comment How is a public key actually used to encrypt something?
The details of symmetric algorithms are much more complicated than something like RSA, where encryption is "simply" exponentiation. For instance, the ChaCha20 paper describes a function (in section 2) that gets repeatedly applied to the plaintext.
Mar
6
comment Is it overkill to run a key generated by OpenSSL through pbkdf2?
This isn't an answer to the original question, but unless you have specific need for CBC, it's probably a more prudent decision to use an authenticated mode like GCM, EAX, CCM, or CCFB to prevent malicious manipulation of ciphertexts.
Mar
5
comment Prime factors of non-random keys
This. You've apparently been given two keys $k_0$, $k_1$, and told that $k_0 = pq$ and $k_1 = pq'$ where $p$, $q$, and $q'$ are prime. Find $GCD(k_0, k_1) = p$.
Mar
4
comment Is script execution time a decent source of pseudorandom number generation?
@user3201068 There is absolutely no need to make as big a deal of this as you're making. /dev/urandom exists. Use it. Trying to collect your own entropy from multiple sources and combining it is a topic involving significant cryptographic research, zero of which you appear to be consulting. Leave this stuff to experts and do the simple thing: /dev/urandom.
Mar
4
comment Can I use asymmetric encryption for more powerful write-protection?
Say you sign the data, or encrypt it, or otherwise have some other protection mechanism. What's to stop the user from modifying the data in-memory once loaded and verified?
Mar
3
comment NTRU crypto from unseen.is; myth busting help
That's a great take on it; I'd wager that's likely not what they're doing, but it's interesting to consider an AES variant where key expansion is skipped and a random key of appropriate size is used instead.
Mar
3
comment NTRU crypto from unseen.is; myth busting help
Are there even any publicly-available and cryptanalyzed symmetric ciphers that can accept key sizes up to 4096 bits?
Feb
28
comment Designing a secure IM protocol
The problem isn't even well defined until you have a threat model.
Feb
27
comment Designing a secure IM protocol
One thing you also need to consider: what is your threat model? What kinds of threats are you protecting against? In the current incarnation, the server is all-powerful and must be trusted. If the server is compromised, an attacker can issue his own public key instead of any user's.
Feb
25
comment Strange Password Hashing
Your friend is not a cryptographer, and his algorithm has not been extensively analyzed by cryptographers. Algorithms like bcrypt and scrypt have received infinitely more theoretical and practical analysis than this one.
Feb
21
comment How secure is AES-256?
The comment by @user12107 is flat-out incorrect. AES does not have any known "weak key" problems like DES or RSA have.
Feb
20
comment Reason(s) for using a KDF for encryption keys
I should slightly clarify that running this key through a KDF won't meaningfully impact the security of your keys. My point in the last paragraph is that a KDF can only mathematically reduce or maintain constant entropy, but never increase it. Any non-pathological KDF is exceedingly unlikely to reduce the entropy of your keys by more than an infinitesimal amount.
Feb
14
comment Encrypting firmware with AES and no IV
This. Encryption is entirely orthogonal to authentication. If you are using AES-CBC to ensure your firmware hasn't been tampered with, you are using a very inappropriate tool for the job.
Feb
13
comment Can someone explain the ECB Penguin?
The first time I encountered the "ECB Penguin" was on Wikipedia. The article itself might be illuminating.
Feb
13
comment Encrypting or HMACing password digests
bcrypt should likely not be performed by the client before sending to the server. The simplest reason being that client-side performance of bcrypt will likely be dramatically less than server-side performance, reducing the number of bcrypt rounds by a significant margin. Encrypting the hashes versus HMACing (either before or after) do not seem to have the different security properties you assert — if an attacker recovers the key in either scenario, the attack devolves into simply cracking bcrypt.
Feb
11
comment Is this approach to generating a “random” number from a sha512 hash effective?
The output of a hash function is at best as random as the input. No hash function can "generate" a random number.
Feb
10
comment If attacker knows salt and hash, how is salt effective?
TLDR, salts increase the difficulty of cracking a database of passwords from $O(n)$ to $O(n * m)$ where $n$ is the number of password guesses and $m$ is the number of entries in the database.
Feb
4
comment Concerns about using a hash to determine if specific input data has already been encrypted
However, make sure you don't accidentally allow outsiders to query the PRF as an oracle.
Feb
4
comment Is MD5 second-preimage resistant when used only on FIXED length messages?
The source code for blake2b is short, freely available, and easily embedded in any project.