Codebreaking Thread

Solve problems, post new ciphers in thread, etc

Today’s Crypto University Challenges are:

G1 Undergrad at CU
Just something hopefully easy to get started. Crack the cipher. (Note: the spaces are just grouping, the underscores are the real spaces.)

WOTHL EMOEU LE__B C_TC!

G2 Master's Program
To get a Master's Degree or Ph.D at CU you must analyze this encryption program I just made.

The python code can be found here:

pastebin.com/VdgwPdwY

Let me explain how the encryption program works.

You choose a key, which can be any number really. The ith letter is encrypted like this:
[eqn]cipher_i = [ message_i + (key*(i+1)\mod 95 ) ] \mod 95 [/eqn]
Which produces a random (based on the key) value between 0 and 94, add 32 to get an ASCII character.

You can use the program by typing these commands:

encrypt(42046,"I'm pregnant")

Output: "8WBkFqL,W={


G2: Tell me which values would not be effective as keys.

G3 PhD Program
(I do not know the answers to these questions, nobody does, that is why it is PhD level )

Either find a way to crack this cipher
80pnt{n?AZY?ygA*fb0}mG&hK@y[Y

OR you can also find some kind of attack or vulnerability with the system. Let me know if chosen plaintext or any other information can help you crack the cipher.

Sincerely yours,
1-}Z?{

Other urls found in this thread:

cs.mtu.edu/~shene/NSF-4/Tutorial/VIG/Vig-Frequency-Analysis.html
pastebin.com/g2XLy5rG
youtube.com/watch?v=2aHkqB2-46k&list=PL2jrku-ebl3H50FiEPr4erSJiJHURM9BX
twitter.com/NSFWRedditGif

>G1
Anagram of
>Welcome to the Club

>G3
key=67+95*n
message=The Beta Uprising is upon us.

>Sincerely yours,
Merkle

OK you get an honorary PhD in Cryptanalysis for your contribution.

Tell me how the fug you did it

bruteforce
key has range of 0-95

for key in range(0, 95):
print(key, decrypt(key, "80pnt{n?AZY?ygA*fb0}mG&hK@y[Y"))

Extra points if you can figure out the best way to fix it

Cryptography club? Is there another platform this club uses for communication?

>crypto club
>not communicating exclusively through hex encoded ASN1

Just email and discord if you count that. You can email me if you want [email protected]

you can use frequency analysis to estimate the keyword length...

cs.mtu.edu/~shene/NSF-4/Tutorial/VIG/Vig-Frequency-Analysis.html

Ok I fixed that problem, the keyspace is now (much) larger than 95.

Here is the python code:

pastebin.com/g2XLy5rG

How else is it vulnerable? Given a known plaintext, I'm pretty sure it would be infeasible to compute the key. But length extension attacks are still possible with how this is set up. Maybe the program should apply a transposition function also?

Here is a super secret message if you feel like cracking it:

8)[email protected]%,M

Sincerely,

8-,,Is

Can you encrypt this string with the same key?

~~~~~~~~~~~~~~~~~~~~~~~~~~~

thnx

>not doing any of this by hand
fucking plebians

Actual cryptographer here.

>G1

Anagram.

>G2/G3

Your system is highly, highly vulnerable.

>Not IND-CPA secure
The pitfalls here are self-explanatory.

>Key recovery attack vulnerability for known plaintexts
If I can choose a single block of the message to be encrypted, and if I choose that block to be zero, I can recover the key immediately using simple field operations upon receiving the ciphertext.

Please don't try to use this in an application environment.

>t. person with real graduate degree in cryptography

Ok cool thanks for posting.

>I can recover the key immediately using simple field operations
Can you explain this more, and how you would specifically do it to this program ?

Can you walk me through any kind of other method to crack these ciphers?

>Please don't try to use this in an application environment.
Cryptography Club is just for fun, we post challenges for each other to crack.

this only expands the key to 95*95

through bruteforce the message is
May 23rd, 2017

the name is still merkle

Amazing!

>this only expands the key to 95*95

I really want to know how you got that?? Thank you.

the addition of sKey is basically a caesar cipher so it shifts each letter by some amount

so you have the original key with length 95 and the shift which is 95 because of the mod 95

you can then bruteforce by decrypting using all 95 keys (0-95) then shift the decrypted message by 0-95 until you find something that looks like message or use frequency analysis

Starting at a PhD program in math this fall and cryptography is my main research interest. Can you recommend any readings, textbooks, or research papers? Any general advice?

Crazy shit man, crazy.

My biggest suggestion is to not skimp on your knowledge of theoretical computer science. Most of the math-crypto specialists I know develop almost entirely out of an appreciation of the aesthetics behind constructing a primitive in a specific manner, often at the cost of their understanding of how to develop primitives which serve real-world purposes and offer real-world security.

I would also suggest picking up some of the more practical aspects (and vulnerabilities) of cryptography, especially those related to implementation. It won't be your primary interest as a cryptographer, but an entire sub-section of the field is devoted to developing methods to address such vulnerabilities.

how do i get started with cryptography? any books?

good personal projects to start with?

bump

Step 1: Understand what cryptography is enough to be able to summarize the most common goals.
Step 2: Pick any of the fundamental goals (e.g. symmetric-key encryption, collision-resistant hashing, ...).
Step 3: Study that goal in detail until you understand the terminology and the precise formal statement of said goal.
Step 4: Choose an industrial-strength construction for said goal and understand it.
Step 5: Go to step 2

>good personal projects to start with?

Go to r/codes and r/ARG, try to solve the codes there. Create your own codes for people to solve. Also try to make your own encryption or hash algorithm.

This lecture series is pretty cool:

youtube.com/watch?v=2aHkqB2-46k&list=PL2jrku-ebl3H50FiEPr4erSJiJHURM9BX