views:

135

answers:

3

I have an unencrypted/unencoded string - "565040574". I also have the encrypted/encoded string for this string - "BSubW2AUWrSCL7dk9ucoiA==".

It looks like this string has been Base64ed after encryption, but I don't know which encryption algorithm has been used. If I convert "BSubW2AUWrSCL7dk9ucoiA==" string to bytes using Convert.FromBase64String("BSubW2AUWrSCL7dk9ucoiA=="), I get 16 bytes.

Is there anything using which I can know what type of encryption has been used to encrypt the "565040574" to "BSubW2AUWrSCL7dk9ucoiA=="?

+2  A: 

Looking at it, from the top of my head I would say AES and more specifically Rijndael.

EDIT:

Just to add, as I said in my comment, without the key you will never know what this is. I am taking it on a best guess scenario, also based on implementations that could be termed "more common", which could also be a complete oversight from me.

Remember that if you can ever outright say what algorithm a ciphertext is in, never, ever use that algorithm.

Kyle Rozendo
You've got good eyes ;)
Cloud
It would always be a guess. Can never tell without the key.
Kyle Rozendo
Nice comment on "don't use an algorithm that you can recognize just by looking at the ciphertext".
James Black
+3  A: 

No, there is nothing to tell you how it was encrypted. If you don't have the key to decrypt it then you will be out of luck anyway.

If the plan was to save this to a file or send it in email then it would be base-64 encoded, so that was a good guess.

You may be able to narrow down what it is not by looking at the fact that you have 7 bytes of padding perhaps, but whether it was IDEA or Blowfish or AES, there is no way to know.

James Black
I think I'll go with you, even if I guessed the algorithm, I won't have the key to decrypt the string!
Kirtan
+1  A: 

What can you tell from the data you have? Well, the most concrete bit of information you have is that 9 bytes of cleartext encrypts to 16 bytes of ciphertext. Since it is unlikely that a data compression algorithm is being used on such a small chunk of data, this means we can make an educated guess that:

  • It is encrypted with a block cipher, with a block size <= 128 bits.

  • The encryption mode is ECB, since there is no room for an IV.

caf