20,776 reputation
32575
bio website
location
age
visits member for 3 years, 4 months
seen Dec 16 at 17:04

May
22
comment Cryptographic pseudo-random generation of address subsets
Is there something wrong with storing $X$ addresses on each device? It looks like $X$ is quite small, so this should be a very reasonable solution (with excellent security, and simple to implement), unless your devices have extremely limited storage.
May
22
comment Can you determine an unknown value when it is combined with a known value and you are given the resulting hash?
How much entropy does the hidden string have? What have you tried? Are you familiar with the random oracle model? Have you tried figuring out what answer you'd get in the random oracle model? For that matter, what have you tried? Please edit the question to show your work.
May
14
comment Cryptographically secure keyed rolling hash function
@cyril42e, I don't know. That sounds a bit dangerous to me, because the collision probability of the rolling hash is too high. (It'd be nice if the collision probability were negligibly small, e.g., $\Pr_k[R_k(x)=R_k(y)]$ to be very small (say, at most $1/2^{80}$) for all $x,y$ where $x\ne y$, but that's not attainable with a 16-bit or 32-bit rolling hash.) As a result, your scheme might leak significant unwanted information about the message, even if it is a secure PRF. (I don't know if it is a secure PRF; I'm not sure I understood the proposal exactly.)
May
13
comment Hash collision resistance of $\mathcal H^\prime(m) = \mathcal H(\mathcal H(m)|m)$
@jthill, you're right. I don't have a working attack with Joux multicollisions. I'm still skeptical. Without a proof, I don't know how we could be confident that this construction adds any security (Joux multicollisions are an example of something that showed simple intuitions regarding techniques for strengthening hashes can be very wrong). I'm not at all confident that this construction cannot be attacked -- maybe it does have nice security properties, but I think we'd need a proof before we could trust that it does.
May
12
comment Finding the LFSR and connection polynomial for binary sequence.
Cross-posted on Math.SE. Please don't cross-post. That fragments answers and violates site rules.
May
12
comment Are hash functions chaotic?
Again, I suggest you edit your question to try to provide a precise technical definition. You might start by quantifying what "small" means in this context, and what you mean by a "difference", and what you mean by "initial conditions", in this specific context. If you can't do that.... you might want to re-think your "not a buzzword" stance. This site is best used for well-posed technical questions, not for open-ended or subjective discussions, so it's important to spend a lot of thought into how to frame a precise technical question.
May
12
comment Are hash functions chaotic?
"chaos", "deterministic chaos" - that's not a useful concept in crypto (they're buzzwords). Anyway, you haven't defined those terms. I suggest you edit your question to provide a precise technical definition of what you mean by chaos, and what the motivation/context for the question is, and what problem you're actually trying to solve.
May
12
comment Cryptographically secure keyed rolling hash function
You got 50 or 56 MB/s, and your goal was about 60 MB/s: sounds like you're basically done. Intel processors are widely deployed on servers, and modern Intel processors do support AES-NI. If in your application domain the processors typically don't support AES-NI, then you might want to measure what processors are used by your users (hint: make sure to measure), then do some research on other efficient block ciphers/PRFs (there are other candidates). SipHash is probably fine, if it meets your performance requirements, but I haven't studied it in detail. 128-bit keys are plenty.
May
10
comment Cryptographically secure keyed rolling hash function
Thanks, @RickyDemer, I've edited my answer accordingly. Universality is all that matters (all that matters is the probability that two inputs yield the same output.) I agree with both of your comments -- thank you for them.
May
10
comment Cryptographically secure keyed rolling hash function
Sorry, I'm still not clear on how Tarsnap works. When is the substitution done? Is it applied to the input data, or to the output? If it substitutes from bytes to 32-bit values, does it expand the size of the input by 4x before hashing (or expand the size of the output by 4x after hashing)?
May
10
comment Cryptographically secure keyed rolling hash function
@cyril42e, have you benchmarked it? The AES-NI instructions are surprisingly fast. So you might want to implement, benchmark, and see if it meets your performance requirements. If it doesn't, I suggest editing your question to describe your performance requirements and how close this scheme gets and what you tried, to improve performance. Selecting the fastest block cipher for your platform is beyond the scope of this question, but you can find lots of other questions here that talk about that, or you can ask a new question.
May
9
comment Cryptographically secure keyed rolling hash function
Thanks for the update. I'm still not clear on how Attic and Tarsnap work. Is the substitution applied to the input data, or to the output of the Rabin-Karp/cyclic hash? I don't know what you mean by "HMAC of indexes". Would you like to try expressing it in mathematics?
May
9
comment On modeling a random oracle hash function which maps $\mathbb{G}_1 \rightarrow \mathbb{G}_2$
What do you mean by "model a random oracle hash function"? Also, do you require it to be a group homomorphism?
May
9
comment Cryptographically secure keyed rolling hash function
Also, if you want us to comment on the security of Tarsnap or Attic, please define more precisely what you mean by "random secret substitution".
Apr
29
comment Pseudocode for constant time modular exponentiation
You might have missed the "constant time" in the title (and also mentioned once more in the question). I don't blame you, because that wasn't emphasized in the question as it might have been, and the question didn't mention what prior research he'd done (a shortcoming of the question). But I don't think Alex Gaynor was looking for a generic description of the RSA algorithm; I think he was looking for a description of how to make a constant-time implementation of RSA. That said, I agree that the question could have been clearer.
Apr
29
comment Pseudocode for constant time modular exponentiation
@figlesquidge, I beg to differ. It does answer the question (just not in way the author had expected). This is an XY problem: the author wants a constant-time RSA implementation (that's the X) and thinks the right approach is to implement it himself even though he doesn't understand the math (Y). I'm telling him that Y is not the answer to X; that the right answer is Z (use well-vetted code, or hire a cryptographer). P.S. "Don't do it" is a perfectly acceptable answer if you explain why: meta.stackexchange.com/q/8891/160917
Apr
29
comment Pseudocode for constant time modular exponentiation
@CodesInChaos, The fact that GnuPG failed does not mean that it is a good idea for a beginner who lacks a strong math background to try to implement RSA on their own. If the OP cannot understand mathematical descriptions of solutions to the problem, the OP probably shouldn't be trying to implement this himself (maybe he needs to hire a qualified cryptographer). Would you hire a random person off the street to design a bridge, if they told you they couldn't understand some of the core elements of bridge engineering (finite elements, differential equations, structural modeling)?
Apr
28
comment Simplified Key Wrapping to Achieve Only Confidentiality?
Ignoring authenticity/integrity is a really bad idea. It has led to successful attacks on confidentiality in the past. I strongly recommend against this sort of thing; use authenticated encryption or an authenticated key wrap algorithm that does provide integrity + authenticity.
Apr
26
comment Tiger Tree Hash vs generic Merkle Tree
Would you care to edit your question to define TTH? Maybe spell out the acronym, give a link, etc.? Also, I encourage you to describe what research you've already done to try to answer the question on your own.
Apr
26
comment Timestamping using a hashed linked list and public known events
@jliendo, I've edited my answer accordingly. The bottom line remains the same.