Reputation
3,485
Top tag
Next privilege 3,500 Rep.
Protect questions
Badges
6 28
Newest
 Nice Answer
Impact
~74k people reached

May
18
comment Building a combined encryption scheme from two encryption schemes that's secure if at least on of them is secure
What directions have you tried? The hint in the question, plus @MaartenBodewes's answer is 98% of the solution.
May
15
comment Authenticate a short message with redundant encryption instead of using a MAC?
If you are validating tens of thousands of these per second, are you certain your assumption holds that sub-millisecond resolution is good enough to guarantee uniqueness?
May
15
comment Authenticate a short message with redundant encryption instead of using a MAC?
Yes, this would absolutely not work with a stream cipher, as flipping the same bit in both halves would result in the same plaintext output.
May
11
comment AES_GMAC implementation
To elaborate on @SOJPM's comment, it seems suspicious that you would have any need to implement AES-GCM as a person with a non-cryptographic background. If this is for a class, it's curious that there would be an expectation of implementing such an algorithm without having previously analyzed the construction. So it, frighteningly, looks like you might actually be trying to implement this for a real-world use.
May
4
awarded  Informed
May
1
comment Block cipher does not provide security by itself
Put succinctly by Bruce Schneier, cryptography is not magic dust you can sprinkle on your software to confer the property of "security".
May
1
comment PGP digital signature vs SHA256 HMAC Comparison
To be honest, regardless of which one you choose, it will likely be the strongest component of your security architecture. If it were considered feasible to recover the key or plaintext in either solution, it would be treated as a complete break of the system. The decision between symmetric/asymmetric crypto should be based upon the types of attack you want to defend against, not based on which is "stronger" by some benchmark.
May
1
comment Alice and Bob's crush
That approach does. Other similar approaches don't necessarily have to.
May
1
comment Alice and Bob's crush
I suspect, actually, you could achieve some uncertainty in the yes/no case if you tolerated a 50% chance that the protocol outputs "no" even in the event of a mutual crush. Consider the case where you included a random coin flip, and required that all three results be "yes". In the event that one party says "yes" and the other says "no", for the party who said yes, there's now only a 66% chance that the other party said no (instead of 100%, as in the original problem).
Apr
30
comment Why aren't zero-knowledge proofs used for authentication in practice?
How do you change a password later? What happens when the password requirements of a site conflict with the way you generate your passwords? Now you have to store information to regenerate the password correctly. And go through several time-consuming steps to actually log in. Or, you could just generate completely random throwaway passwords in a password manager and log in anywhere with essentially a single button press.
Apr
30
comment Why aren't zero-knowledge proofs used for authentication in practice?
Just use a password manager like LastPass, KeePass, or 1Password. You can synchronize the encrypted vault between laptops, phones, or whatever. Many have browser plugins that will automagically log you into websites at the push of a button.
Apr
30
comment Why aren't zero-knowledge proofs used for authentication in practice?
Don't reuse a password if you think there's a possibility any server that sees it might be compromised. Which boils down to, don't reuse a password.
Apr
28
comment Looking for encryption algorithm not subject to known-plaintext attack with IV reuse
Based on your clarification about disk writes, it sounds like you're trying to reinvent disk encryption. Why not use a preexisting mode purpose-built for this use-case, such as XTS?
Apr
28
awarded  Civic Duty
Apr
9
comment Salsa20-GCM composition secure?
Might as well use ChaCha20 these days over Salsa20.
Apr
8
comment Creating a random password based off of a prime number
I'm having trouble still understanding your use-case. Algorithms like AES require 128-bit or 256-bit byte buffers as keys. What cipher are you feeding this 512-bit integer into?
Apr
8
comment Creating a random password based off of a prime number
Generating cryptographically strong random numbers is not hard. And a base64-encoded 128-bit random symmetric key is only 44 characters long. What do you believe you gain by performing voodoo with prime numbers?
Apr
7
comment Why would an Initialization Vector be supplied externally?
Another simple likelihood is that there are many cases where you need to perform encryption with a specific IV that's determined by part of the protocol, and can't be random. So an encryption appliance would need to provide APIs to support these types of use.
Apr
7
comment What is the probability of breaking the AES algorithm?
You should be orders of magnitude more worried about security being compromised through a flaw in whatever software you're writing, than in it happening through AES being broken.
Apr
3
comment Solve a problem, thought it was hash length extension, hours later, am I wrong?
Yes, you need to include the padding. This is often not as big a hurdle as you might think. That said, just use an HMAC which is designed for this sort of thing.