you can prevent ddos attacks by crypting IPs to undecryptable codes (md5, etc) then attach a code to certain server
and refresh the codes at actual time so it will be impossible to decrypt for enough time. The goal is not to make undecryptable (sadly this is impossible) codes, but make them too hard and make it take too long to decrypt using brute-force or other decrypting methods.
Any (absolutely any) algorithm and encryption message that can be decoded at all (that is, not white noise, but a reversible block of data) can certainly be cracked by direct enumeration of all possible options (the so-called “brute-force attack”). Yes, this will most often take a crazy amount of time.
If you are not satisfied with brute-force, then you need either a decryption key or a vulnerability in the algorithm.
The absence of a key on the hacker’s side is mitigated by “recognizing and repeating” the steps to create your key (after all, YOU have it, which means that you can theoretically RE-create it by simply repeating the creation procedure itself), and vulnerabilities in algorithms are constantly being found.
By combining these two methods above, you can use brute force options not directly on what has already been encoded, but brute force all options when creating a key (that is, not break the entire array of encrypted data, but generate a bunch of keys - and try each one, the so-called “attack” on the key"). One of the options will match your key - and everything will be decoded. (edited)
5