Top all-time · #6056
Patricio Palladino
Personal blog · patriciopalladino.com/blogprogrammingweb
Patricio Palladino's personal blog at patriciopalladino.com covers programming and web. Since 2012, 13 different Hacker News readers have linked it 13 times, most often “Write any javascript code with just these characters: ()[]{}+”. No feed was found, so read it on the site itself.
Too few sampled comments (10) to say how often HN recommends it.?
Why HN links it
HN readers link Patricio Palladino's posts and his Hieroglyphy tool for writing JavaScript using only the characters ()[]{}+ and !. The main article explains how the non-alphanumeric technique works.
Summarised by Claude from a sample of 10 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Most-linked posts?
- Write any javascript code with just these characters: ()[]{}+8 people · 8 mentions · first linked 2012-08-10
- Convert any javascript into a sequence of ()[]{}+ characters5 people · 5 mentions · first linked 2012-08-10
What Hacker News says?
Looks cool, but I couldn't make it work. I went to http://patriciopalladino.com/files/hieroglyphy/ and put in a script "alert(1);". This provided me with a script of about 8300 characters. I created a web page to execute the script: <body onload=" [][(![]+[])[!+[] ... </body> Firebug reports: ReferenceError: Unescaee is not defined. Looks like it's having trouble picking up a "p".
Comment linking /files/hieroglyphy/
on “Write any javascript code with just these characters: ()[]{}+”Submitted Write any javascript code with just these characters: ()[]{}+ as a story · 289 points
HN discussionI made a little script to extract the original javascript from a script obfuscated with OP's tool ( http://patriciopalladino.com/files/hieroglyphy/ ). And because I felt it was appropriate, I created this extraction script in an obfuscated form! Use this to extract obfuscated scripts: http://pastebin.com/raw.php?i=Q9TB4wEF Just save your obfuscated script in a variable called "original" and then run my code. It'll r…
Comment linking /files/hieroglyphy/
on “Write any javascript code with just these characters: ()[]{}+”Submitted Brainfuck beware: JavaScript is after you (2012) as a story · 123 points
HN discussionhttp://patriciopalladino.com/blog/2012/08/09/non-alphanumeri...
Comment linking /blog/2012/08/09/non-alphanumeric-javascript.html
on “What is “:-!!” in C code?”Submitted Convert any javascript into a sequence of ()[]{}+ characters as a story · 5 points
HN discussionSo, I saw this and wanted to see if it could decode output of something I saw earlier: http://patriciopalladino.com/files/hieroglyphy/ I took the source of a sample pasted here and ran it through the heiroglyphy generator: var expect = function(val) { return "string" == typeof val; }; which output something along the lines of (truncated): [][(![]+[])[!+[]+!![]+!![]]+([]+{})[+!![]]+(!![]+[])[+!![]]+(!![]+[])[+[]]][([…
Comment linking /files/hieroglyphy/
on “New Statistical De-minifier and De-obfuscator for JavaScript”Here's an article [0] explaining more about how this works from the author of Hieroglyphy. [0] - http://patriciopalladino.com/blog/2012/08/09/non-alphanumeri...
Comment linking /blog/2012/08/09/non-alphanumeric-javascript.html
on “JSFuck – Write any JavaScript with 6 Characters: []()!+”Another way is to use the technique described at http://patriciopalladino.com/blog/2012/08/09/non-alphanumeri... It transforms javascript into a sequence of ()[]{}!+
Comment linking /blog/2012/08/09/non-alphanumeric-javascript.html
on “Stripe CTF Writeup”I found this article had more depth: http://patriciopalladino.com/blog/2012/08/09/non-alphanumeri...
Comment linking /blog/2012/08/09/non-alphanumeric-javascript.html
on “Executing non-alphanumeric JavaScript without parentheses”An encoder (obfuscator?) to create similar code (alphabet: "()[]{}+!") in JavaScript: http://patriciopalladino.com/files/hieroglyphy/
Comment linking /files/hieroglyphy/
on “Non-alphanumeric Backdoors”Know the details around bind, 'this', dot operator, 'new', call/apply, 'in', variable hoisting, the actual data types JS provides out of the box (Longs aren't one of them) and some assortment of new features/proposed features like classes, and you'll be ahead of lots of seniors. Personally I'd appreciate a good showing in knowledge of the standard library, where its gaps/gotchas are, levels of browser support... (e.…
Comment linking /blog/2012/08/09/non-alphanumeric-javascript.html
on “Ask HN: “Expert Level” JavaScript questions?”I hope nobody's using it in production, but the "JS without letters" thing would probably tickle a few edge cases in a parser: http://patriciopalladino.com/blog/2012/08/09/non-alphanumeri...
Comment linking /blog/2012/08/09/non-alphanumeric-javascript.html
on “Ask HN: What's the weirdest JavaScript source code you've seen?”