How to decrypt a string with unknow encryption algorithm, help me? - encryption

How to decrypt a string with unknow encryption algorithm?
There is a string:
AgF8ZSL8gPMgnjRt/2MQYmvTdDRxP/z0Rdt0a/2kNGhRldJcvwmShr2HtVW5nrUO8ZMqQDJhL5rpSc6xzqS7uZ42 rr9Tt5XCGMUswTKWxOlOUQ==
and
gH7PoV9ADLnysp1cLW+GJA8NfXebOkIseAUJtxaIiTD+T7eGX VXYzWw+wfFpksRWrTtMo98lm/064Zv3ZggISVzrspZpV3faC+jW82Tg3ywnrZCHihy2lub30XjH 9kT3R47gufHCPkZrBVIcaA1Nmm4uDmJLzC0FfItid2jyMiOGiW illHVBZ7HhOjFOuBlvRJwtOit801BFeqMD5kdnuon4KufDVy8N Sww0hTIxXfJmDeF/3Ks/Guu1pmj0UXnbollE5UsqqqP1HIMwdDqY/FP
I don't know the encryption algorithm. How to decrypt it?
To analyze and solve this problem, what should I learn?

If you are able to have a look at the code, that would be the easiest way. I assume that is not possible so it will probably end up in educated guessing.
However, there is a large conversation about that topic here:
https://security.stackexchange.com/questions/3989/how-to-determine-what-type-of-encoding-encryption-has-been-used
First steps would probably be to find out if it is a hash or not and if it is salted. If you were able to hash/encrypt data and look at the results, try to hash/encrypt the same data twice. If the result differs, there is probably a salt used.
Hope that helps a little.

Related

Finding the kind of encryption used

I am trying to work out what kind of encryption and / or encoding is used on some data.
At first I thought it was some kind of AES CFB encryption but I can't seem to extract anything meaningful by decrypting that way.
Was wondering if anyone knows any way to find out?
Encrypted Data
EScRJxEnEScRJxEnEScRJ+UqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRTlKhUU5SoVFOUqFRQNKwsUhStHFBEslxTjLPsUfS6vFZUvExZnME8WOTF3FtkxnxYVMp8WKTKfFj0ynxY9Mp8WPTKfFj0ynxY9Mp8WPTKfFj0ynxY9Mp8WPTKfFj0ynxY9Mp8WPTKfFj0ynxY9Mp8WPTKfFj0ynxY9MoEWPTJjFj0yYxY9MkUWPTJFFj0yRRY9MkUWPTJFFj0yRRY9MkUWPTJFFj0yRRY9MkUWPTJFFj0yRRY9MkUWPTJFFj0yRRY9MkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFh8yRRYfMkUWHzJFFuMx4RXjMZEVpzHdFEMx8xKjMFEPFzBRCp8v6wY7L3ED/y5BAccuxgB0LrUAMS6pAOYtmwCtLZEAii2LAHgtiABRLYMAKS17ALEseQCPK28AcykPAc8nEwKPJj8D7yXLA3clLwQ7JVcEOyVhBDslYQQ7JXUETyV1BJ8lfwTvJYkEKyaJBGcmnQSPJp0EoyadBLcmkwTLJpMEyyaTBMsmkwTLJpMEyyaTBMsmkwTLJpMEyyaTBMsmkwTLJpMEyyaTBMsmkwTLJpMEwSYLBcEmDwa3JjsH3ybpCC8nlQyTJ6UQ4yfZEwsoqRYzKMUYRyiDGUco+xlHKDcaPShLGj0oSxo9KF8aPShVGlEoJxt5KEkcySgLHhkpJyBVKWchfSkbIpEpayKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMikSmTIm/WkyKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMikSmTIpEpkyKRKZMicympIPsoLx2XKB8ZMyjLDTMo8QWrKPUBECoeAHsrQQBnLYUAai/oACkydwKXNxcIaT19EJ9IlSADThEqlEz2McVLcDRfS3w1WkuHNYhLEzWrS7U0xktsNOdLETT1S+kz9UvpM/VL6TP1S+kz9UvpM/VL6TP1S+kz9UvpM/VL6TP1S+kz9UvpM/VL6TP1S+kz9UvpM/VL6TP1S+kz9UvpM/VL6TP1S+kz9UvpM/FL4TM/SR8yw0IVLWM03yG3JhMWYR3fDdUSpwVWEEwHMw8lCO0NLAn0DAQKDAzbCncLbQuVClYMvQlEDecIPw7BB7YPzQY7Ec0GOxHNBjsRzQY7Ec0GOxHNBjsRzQY7Ec0GOxHNBjsRzQY7Ec0GOxHNBjsRzQY7Ec0GOxHDBpURpQaPEqUGLxOHBqcTXwbtE18GARRfBvcTXwZHFHMGhxXDBkkX/wa1GScHIRwnB4cfJwexItcG8yYjBt8rlwWTMTMFITW7BL83mQRyOdUE4DnkBPw55wQBOucEATrnBAE65wQBOucEATrnBAE65wQBOucEATrnBAE65wQBOucEATrjBPk54wT5OeME+TnjBPk54wT5OeME+TnjBNs54wTbOeME2znjBNs54wTbOV8G1Tr5BwE8tRQ9Rq0cl0tZJAlOLizLTSgwDk3nM/ZLrTVLS1c2sUrtNstJATcXSac2HUgXNclGkTPjRbsx6UQJL59DiSyRQkEpUUHrJOk/Xx9tPqUVCzwDDZ85CQcFOIQC2jSXARUyNgG1MP8Azy/dADkvzADoLsQAvi7BAK8uvwCRLr8AQS7dAJMsGQEDKw8B4SkFAfsoBQGDKAUBRygFAUcoyQBHKMkARyirAEcoqwBHKKsAWyirAIMolwBVKdMAlSo3AVcswwFLLk8C2y/HAokxUwMFM8sDgTRhBIk2MwWROL8FhToPBpM7XQZtPI0Gtzy1BvM8PQe2PaAHPz7+B7w+MQj/Pj4IED9TCA0/UwgNP3sINT+rCu1A+w/BRGccv0vaLLNNDT1bRwxHfz2zS6I0Vk3lLt9NjCseTg8oH05LJhlOiyUSTuskA04MJANODCQDTgwkA04MJANODCQDTgwkA04MJANODCQDTgwkA04MJGNNdSJFTREiRU0RIkVNESJFTeMiAE4/KnBLUDXlRQ8/skCMRJ4+O0atPetGmT36RtY9z0YtPo9Gez5WRuA+CUYZP91Fjj+ARR1AC0WQQKlE60BZRHlB2kP9QV9Dl0LJQhxDQkK2Q6BBf0TAQJNFKz8fRtM8M0aLOa1E1zPrQtsvZUELLdU/bSr7PBcmDTrVIQ==
Seed
f206d6a4-b0f2-4352-ad72-7780da90f4e1

Finding key of weak crypto

i'm a novice and trying the security shepard project where you have to pass challenges. https://www.owasp.org/index.php/OWASP_Security_Shepherd
I did all of the challenges but one that i have a really a hard time with.
To complete this challenge you have to find the key to an encryption method.
They just give you an application that can decrypt encrypted text.
IAAAAEkQBhEVBwpDHAFJGhYHSBYEGgocAw== gives This crypto is not strong.
Unlike other challenges there is no information in the source code.
I don't understand how I'm supposed to proceed.
Thanks
Instead of trying to find the algo, just try to find the algos which are most unlikely to be possible. for a instant, this is not a classic mono-alphabetic or key-less transposition cipher. On the other hand compare input and output bit sizes. Narrow down your possibilities like that and it will helps you to decide which cryptanalysis method to be used.
This may be not the perfect approach, but sure it's a start.

Cracking a sha256 hash and i know how it will be like

I have a sha256 hash and i know that it consists on numbers and small characters and the length is 64 so is there any way to crack it?
SHA256 is a one-way hash, rather than an encryption. As such, you can't decrypt it. You can, however, bruteforce it.
MD5Decrypt has already covered more than 3 billion possible SHA256 strings, so there's a good chance you can find it here. Otherwise, you'll just need to try every possible combination there is, using what you already know.
Hope this helps! :)

Do hashes resemble a format language when decrypting

I am fairly new to cryptography, but I have come across this :
ea706916-4d0a-460d-9778-4d1a7195b229
which looks like a familiar format. It's original value is tjotol.
Would anyone know what format the above code is in? I know that if it has hashes it can be a giveaway. Base64? HTML? Something else?
It does not look like Base64, it may be MD5 with dashes in-between. However, remember that a hash is a one-way function (ie. it's not reversible), while a cryptographic function is two-way (you can encrypt and decrypt it). Hence, it's not correct to speak about "hash decrypting". I don't know what you mean by "format language", would you care to elaborate on that?
A quick google search took me to this article that seems to be well written an covering many issues regarding your concern related to hashes being a "giveaway".
Note: Base64 is hardly an encryption algorithm, it is indeed just an encoding/representation format.
This have the format of a Globally unique identifier (GUID). Take a look here: Globally unique identifier

How to prove inconstructable cryptographic scheme?

I realize this question might not be that programming related, and that it by many will sound like a silly question due to the intuitive logical fault of this idéa.
My question is: is it provable impossible to construct a cryptographic scheme (implementable with a turing-complete programming language) where the encrypted data can be decrypted, without exposing a decryption key to the decrypting party?
Of course, I can see the intuitive logical fault to such a scheme, but as so often with formal logic and math, a formal proof have to be constructed before assuming such a statement. Is such a proof present, or can it easely be constructed?
Thank you for advice on this one!
Edit: Thank you all for valuable input to this discussion!
YES!!! This already exists and are called zero knowledge protocols and zero knowledge proofs.
See http://en.wikipedia.org/wiki/Zero-knowledge_proof
However, you have to have a quite a good background in mathematics and crypto to understand the way it works and why it works.
One example of a zero knowledge protocol is Schnorr's ZK protocol
No; but I'm not sure you're asking what you want to be asking.
Obviously any person who is decrypting something (i.e. using a decryption key) must, obviously, have the key, otherwise they aren't decrypting it.
Are you asking about RSA, which has different keys for decrypting and encrypting? Or are you asking about a system where you may get a different (valid) result, based on the key you use?
If by "decrypted" you just mean arrive at the clear text in some way, then it is certainly possible to create such a cryptographic scheme. In fact it already exists:
Take an asymmetric encryption scheme, eg: RSA where you have the public key but not the private key. Now we get a message that's been encrypted with the public key (and therefore needs the private key to decrypt it). We can get the original message by "brute force" (yes, this'll take an enormously long time given a reasonable key/block size) going through all possible candidates and encrypting them ourselves until we get the same encrypted text. Once we get the same encrypted text we know what the decrypted text would be without ever having discovered the private key.
Yes.
Proof: Encryption can be considered as a black box, so you get an input and an output and you have no idea how the black box transforms the input to get the output.
To reverse engineer the black box, you "simply" need to enumerate all possible Turing machines until one of them does produce the same result as the one you seek.
The same applies when you want to reverse the encryption.
Granted, this will take much more time than the universe will probably live, but it's not impossible that the algorithm will find a match before time runs out.
In practice, the question is how to efficiently find the key that will decode the output. This is a much smaller problem (since you already know the algorithm).
It's called encoding.
But everyone with the encoding algorithm can "decrypt" the message. This is the only way of keyless encryption.

Resources