In case the author sees this, some comments about Rotator.cs.<p>1. This algorithm will break if the number of valid characters in the BMP becomes odd.<p>EDIT: As user platforms pointed out, there is an unit test for this.<p>2. There is an overflow in line 39 because of the check i <= BMP_SIZE in line 37.<p>3. The web server at rot8000.com exposes at least some errors with stack traces, try rotating the string <script>.<p>4. In line 42 you are performing a linear search for every character you transform, that is very inefficient, especially with characters at the end of the BMP. At least use a hash map or even better just use an array mapping the input code point directly to the output code point.<p>5. rot8000.com does at the very least allow rather long inputs which paired with the inefficiency of the linear search makes a DoS attack pretty easy. I tried a 10,000 word lorem ipsum, it was not rejected and the request took a minute to complete.
Interesting! I made a very similar tool earlier this year.<p>It comes with presets for various different areas of Unicode, and some example text, although the intended use case was very different, I looked at it from a steganography perspective rather than an honours-system obfuscation perspective.<p><a href="https://incoherency.co.uk/mojibake/" rel="nofollow">https://incoherency.co.uk/mojibake/</a><p>I initially thought it would be able to decode the rot8000 output without any modification but I think the utf-8 escaping that my tool expects (from its own output) gets confused by the output from rot8000.
This certainly is what I would call a “neat hack”. Out of curiosity I had to check what it rotates Japanese into. Turns out, mostly Korean: “日本語はどうかな?” becomes “ື걅갿개갡걀等”.
I was curious as to how one might implement this with a familiar language, and fetched up on this interesting python github script, specifically "rot32768"[0]<p>[0] <a href="https://gist.github.com/terrorbyte/7967039" rel="nofollow">https://gist.github.com/terrorbyte/7967039</a>
FYI: Here's a static JavaScript version I whipped-up ( as a lunch-time challenge ) that will reversable rotate everything except whitespace...<p><a href="https://github.com/jeffallen6767/rot0x8000" rel="nofollow">https://github.com/jeffallen6767/rot0x8000</a>
Reminds me 锟斤拷 due to Unicode replacement character misinterpretation problem. When placeholder 'U+FFFD' decoded using GBK it will displayed as these characters. Some of glitches can still be found online, e.g.,
<a href="https://docs.oracle.com/cd/E19199-01/817-4244-10/preface.html" rel="nofollow">https://docs.oracle.com/cd/E19199-01/817-4244-10/preface.htm...</a>
If you are just starting to get interested in cryptography, try and make a program that can break ciphers like this one or similar. Hint: Use frequency analysis on sample ciphertext and compare to known letter frequencies in english letter to match to plaintext. Then you can determine the offset and decrypt
Reminds me of <a href="http://base91.sourceforge.net/" rel="nofollow">http://base91.sourceforge.net/</a>.<p>We could go further, straight to Base8000!