downloadbrowseksydfius's Ksydfius Encryption

Download ksydfius5.zip, 25 kb (password: crackmes.de)
Browse contents of ksydfius5.zip

Read the readme :) that should be enough to get you started...

Difficulty: 4 - Needs special knowledge
Platform: Windows
Language: .NET

Published: 05. Oct, 2012
Downloads: 208

Rating

Waiting for at least 3 votes
(we have only 1).

Rate this crackme:

Send a message to ksydfius »

View profile of ksydfius »

Solutions

There are no solutions to this crackme yet. Have you solved it? Please write a tutorial and submit it here!

Submit your solution »

Discussion and comments

ksydfius
Author
20. Oct 2012
anybody working on this?
mausy131
20. Oct 2012
Well i don't know anything about encryption.
Still new to reverse engineering :)
redoC
08. May 2015
Has this one real solution?

Here is encryption in C-code:
////////////////////////////////////////////////////////
char* Encrypt (char *plaintext, char *key)
{
unsigned char bit_shift;
int i, index = 0;

for (i = 0; i < strlen(key); i++)
index += key[i];
index = index % 32;

for (i = 0; i < strlen(plaintext); i++)
{
plaintext[i] += key[index];
bit_shift = key[index] % 8;

if ((plaintext[i] % 2) == 0)
{
plaintext[i] = (BYTE(plaintext[i]) >> bit_shift) | (BYTE(plaintext[i]) << (8 - bit_shift)); // bit swap
index = BYTE(plaintext[i]) % 32;
}
else
{
plaintext[i] = (BYTE(plaintext[i]) << bit_shift) | (BYTE(plaintext[i]) >> (8 - bit_shift)); // bit swap
index = BYTE(plaintext[i]) % 32;
plaintext[i] += 1;
}
}
return plaintext;
}
////////////////////////////////////////////////////////

Crackme is bit confusing because this is more hash function than cipher. There's no straightforward decryption algo because even with known key there's ambiguity decision which bit swap to use.

Also if we look at algo, ciphertext should not contain any zero bytes!?

...anybody working on this?

You may leave your comment, thoughts and discuss this crackme with other reversers here.
Acting childish will not be tolerated.
HTML and such will be left as-is, so don't try.