121 reputation
6
bio website
location Israel
age 35
visits member for 1 year, 10 months
seen Jun 1 at 6:16

Security specialist with a focus on cryptography (mainly the applicative side of things), cryptanalysis, software protection, software obfuscation, device security.


Sep
21
comment How to plot the distribution of a ciphertext?
If you're using python, I'd recommend using matplotlib's pcolor function to display a colored 2D matrix showing the values in the digraph (dibyte) histogram/distribution.
Sep
20
comment Design criteria for AES
Agreed. This is why I started with that definition but then later on moved to the Linear Property (LP) of the S-Box. Even if a function is not linear (in your definition too) it can still be "almost linear" (high LP value) and what would be bad.
Sep
17
comment Encryption scheme with equivalent keys?
The very existence of equivalent keys is not a secret in this envisioned scheme. It's deriving new additional keys or "merging" equivalent keys to produce new ones that should be difficult/impossible to an attacker. The problem to be solved, basically, and without dragging you all into too much detail, is within the realm of Conditional Access or DRM systems, where different users need to decrypt the same content (encrypted once for all of them), but using keys that are traceable back to them. As noted above, broadcast encryption schemes can handle this in some settings.
Sep
16
comment Encryption scheme with equivalent keys?
Thanks, but schemes based on broadcast encryption key distribution are another matter, and have their own practical considerations. I was still wondering if schemes/algorithms based "simply" on equivalent keys, as I defined, are possibles. Maybe the answer is negative.
Sep
15
comment Encryption scheme with equivalent keys?
Thanks - I'll have to think deeper about your answer, but for now, this is why I want requirement 5: if this were some scheme where equivalent keys were handed out, one to each user/customer, and these were leaked, then they could be traced. But if there's such an intermediate value, this kind of traitor tracing property is lost. In your example, if such a traitor leaked the 128 bits used as the AES key, it wouldn't be traceable to him.
Sep
14
comment How to decrypt AES in CBC
@Paulo, I edited my answer above with text from the comment that seemed to satisfy angelo. I hope that's better now.
Sep
11
comment How to decrypt AES in CBC
AES is too complex for you to do with pen and paper (well, it could in theory be done but really it's not for the faint of heart). Whoever gave you this task wasn't expecting you to do the AES block cipher itself using pen and paper.
Sep
11
comment How to decrypt AES in CBC
The title of your questions asks about decrypting AES using CBC mode operation. In which case you should be using AES, P_t = AES-128-DEC_k(C_t) XOR C_{t-1}. AES decryption is available in many crypto libraries, and even online here: link for example.
Sep
11
comment How to decrypt AES in CBC
If I understand you correctly, what you're doing is correct only if your "block cipher" is simple XOR, which in all likelihood it is not (unless the guys in Coursera gave you a somewhat esoteric assignment). More likely you should be using some "real" block cipher here. Furthermore, a ciphertext will usually not look "reasonable" no matter what. You know you have it right when you can decrypt it back to plaintext.
Sep
11
comment How to decrypt AES in CBC
CBC only says basically that C_t = ENC_k(C_{t-1} XOR P_t). ENC_k here is the encryption operation of the block cipher (whichever you choose, for example AES-128) with the key k. That's all. The details are a matter of the choice of the specific block cipher.