Tool to program, encode and decode AAEncode, an obfuscation that transforms JavaScript into Japanese-style emoticons/ASCII-art expressions (kaomoji)
AAEncode (o^_^o) - dCode
Tag(s) : Programming Language
dCode is free and its tools are a valuable help in games, maths, geocaching, puzzles and problems to solve every day!
A suggestion ? a feedback ? a bug ? an idea ? Write to dCode!
AAEncode is a JavaScript obfuscation technique that converts any JS code into a sequence of Japanese-style ASCII emoticon expressions : characters like (^ω^) ou ( ͡o╭╮ ͡o)
AAencode is a JavaScript code obfuscation process that uses characters and emoticons to hide a program's logic. It is designed to be unreadable for humans but perfectly functional for a JavaScript engine.
The transformation takes place in several key steps:
— Variable initialization: The code begins by defining variables with emoticon names like (o^_^o) and (°Θ°). These variables are not random; they are used to create an array from 0 to 15.
— A series of code is added to establish an environment containing essential strings and functions, including the equivalent of eval(), manipulating strings like false, true, and other JavaScript identifiers (in the style of JSFuck).
— Character encoding: Each character in the text string to be encoded is first converted to its numeric value (ASCII or Unicode). - Emoji substitution: These numeric values are then converted to octal or hexadecimal numbers. Each digit in these numbers (from 0 to F) is replaced with a corresponding emoji expression defined at the beginning of the program.
The hexadecimal digit correspondence table is:
| 0 | (c^_^o) |
|---|---|
| 1 | (°Θ°) |
| 2 | ((o^_^o)-(°Θ°)) |
| 3 | (o^_^o) |
| 4 | (°ー°) |
| 5 | ((°ー°)+(°Θ°)) |
| 6 | ((o^_^o)+(o^_^o)) |
| 7 | ((°ー°)+(o^_^o)) |
| 8 | ((°ー°)+(°ー°)) |
| 9 | ((°ー°)+(°ー°)+(°Θ°)) |
| A | (°Д°).°ω°ノ |
| B | (°Д°).°Θ°ノ |
| C | (°Д°)[' c'] |
| D | (°Д°).°ー°ノ |
| E | (°Д°).°Д°ノ |
| F | (°Д°)[°Θ°] |
Example: a (lower case, ASCII code 97 or 0x61 in hexadecimal) is coded ((o^_^o)+(o^_^o))+(°Θ°);
Next comes the interpretation process: when a browser executes the AAencode code, it reconstructs the original code and executes it.
AAEncode is mainly used for:
— Obfuscation: making code very hard to read for humans.
— Evasion: hiding recognizable JavaScript code by converting it into emoticon sequences, which might bypass naive filters.
obfuscation is not security; executing aaencoded code is risky if its origin is unknown.
Use the form on the dCode page above.
An AAEncode script contains almost exclusively kaomoji composed of non-ASCII characters unusual for JS and always begins with:
ω°ノ= /`m´)ノ ~┻━┻ //*´∇`*/ [_]; o=(°ー°) =_=3; c=(°Θ°) =(°ー°)-(°ー°);
and ends with (°Д°)[°o°])(°Θ°))(_);
For display reasons the symbol ゚ is replaced by ° on the FAQ of this page (but not in the JavaScript code)
AAEncode became popular in the early 2010s; the original web demo and analyses credit Yosuke Hasegawa / Japanese pages (utf-8.jp) as the original reference implementation (reused by dCode).
dCode retains ownership of the "AAEncode (o^_^o)" source code. Any algorithm for the "AAEncode (o^_^o)" algorithm, applet or snippet or script (converter, solver, encryption / decryption, encoding / decoding, ciphering / deciphering, breaker, translator), or any "AAEncode (o^_^o)" functions (calculate, convert, solve, decrypt / encrypt, decipher / cipher, decode / encode, translate) written in any informatic language (Python, Java, PHP, C#, Javascript, Matlab, etc.) or any database download or API access for "AAEncode (o^_^o)" or any other element are not public (except explicit open source licence). Same with the download for offline use on PC, mobile, tablet, iPhone or Android app.
Reminder: dCode is an educational and teaching resource, accessible online for free and for everyone.
The content of the page "AAEncode (o^_^o)" and its results may be freely copied and reused, including for commercial purposes, provided that dCode.fr is cited as the source (Creative Commons CC-BY free distribution license).
Exporting the results is free and can be done simply by clicking on the export icons ⤓ (.csv or .txt format) or ⧉ (copy and paste).
To cite dCode.fr on another website, use the link:
In a scientific article or book, the recommended bibliographic citation is: AAEncode (o^_^o) on dCode.fr [online website], retrieved on 2025-11-08,