Rot8000
Interesting! I made a very similar tool earlier this year.
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.
https://incoherency.co.uk/mojibake/
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 “ື걅갿개갡걀等”.
It meticulously refrains from rotating emoji. Somehow this feels like failure.
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]
FYI: Here's a static JavaScript version I whipped-up ( as a lunch-time challenge ) that will reversable rotate everything except whitespace...
籝籱籮 籺籾籲籬籴 籫类籸粀籷 籯籸粁 米籾籶籹籼 籸籿籮类 簹粁籁簹簹簹 籭籸籰籼簷 http://rot8000.com/Index?%E7%B1%9D%E7%B1%B1%E7%B1%AE%20%E7%B...
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., https://docs.oracle.com/cd/E19199-01/817-4244-10/preface.htm...
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
Can someone explain what this is doing please?
Reminds me of the infamous 畂桳栠摩琠敨映捡獴.
Fun, but outputs unprintable or non-used characters and only functions on the BMP?
Reminds me of http://base91.sourceforge.net/.
We could go further, straight to Base8000!
Should also change spaces to zero-width spaces, which would then make it less obvious where the word breaks are.
籖粂 籶籸籽籱籮类 籪籽籮 粂籸籾类 籬籱籲粀籸粀籸粀籸粀粀
Noone is concerned by the fact this is sending your text using POST requests. The guy could not use DOM/JS.
In case the author sees this, some comments about Rotator.cs.
1. This algorithm will break if the number of valid characters in the BMP becomes odd.
EDIT: As user platforms pointed out, there is an unit test for this.
2. There is an overflow in line 39 because of the check i <= BMP_SIZE in line 37.
3. The web server at rot8000.com exposes at least some errors with stack traces, try rotating the string <script>.
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.
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.