Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
orrfuscation
Search
Mattia Larentis
May 08, 2013
Programming
0
140
orrfuscation
A lightning talk about "obfuscation" in javascript. Never trust sheep.
Mattia Larentis
May 08, 2013
Tweet
Share
More Decks by Mattia Larentis
See All by Mattia Larentis
Going isomorphic with Django and React
nostalgia
0
530
django loves gulp
nostalgia
0
170
The evolution of CSS - 2
nostalgia
1
120
The evolution of CSS
nostalgia
4
310
jQuery
nostalgia
4
440
Other Decks in Programming
See All in Programming
connect-python: convenient protobuf RPC for Python
anuraaga
0
370
dnx で実行できるコマンド、作ってみました
tomohisa
0
140
FluorTracer / RayTracingCamp11
kugimasa
0
200
ZOZOにおけるAI活用の現在 ~モバイルアプリ開発でのAI活用状況と事例~
zozotech
PRO
8
5.1k
愛される翻訳の秘訣
kishikawakatsumi
1
270
非同期処理の迷宮を抜ける: 初学者がつまづく構造的な原因
pd1xx
1
660
開発に寄りそう自動テストの実現
goyoki
1
680
ハイパーメディア駆動アプリケーションとIslandアーキテクチャ: htmxによるWebアプリケーション開発と動的UIの局所的適用
nowaki28
0
360
Developing static sites with Ruby
okuramasafumi
0
190
モダンJSフレームワークのビルドプロセス 〜なぜReactは503行、Svelteは12行なのか〜
fuuki12
0
210
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
160
20 years of Symfony, what's next?
fabpot
2
320
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
69k
Practical Orchestrator
shlominoach
190
11k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
The Pragmatic Product Professional
lauravandoore
37
7.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
970
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Scaling GitHub
holman
464
140k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
It's Worth the Effort
3n
187
29k
Transcript
orrfuscation
April 18 at 9:03pm
([]+{})[!0<<-~(1<<1)]+ ([]+!-[])[1<<1-1]+([]+!- [])[1<<1-1]+unescape((/ %/+[[]+1/!1])[1]+(/1/ [1]+[])[1%1]+(+!1)+(+! 1)+(/<</[1]+[])[1<<- ~(1^1)<<!0]+([]+!!-[]) [~~(1^1)+!0])
brainfuck?
linguaggio “nomale”?
javascript!
([]+{})[!0<<-~(1<<1)]+ ([]+!-[])[1<<1-1]+([]+!- [])[1<<1-1]+unescape((/ %/+[[]+1/!1])[1]+(/1/ [1]+[])[1%1]+(+!1)+(+! 1)+(/<</[1]+[])[1<<- ~(1^1)<<!0]+([]+!!-[]) [~~(1^1)+!0])
Orrú
([]+{})[!0<<-~(1<<1)]
[]+{} “[object Object]”
“[object Object]”[!0<<-~(1<<1)]
!0 1
(1<<1) 2
~2 -3
1<<3 8
“[object Object]”[8] “O”
([]+!-[])[1<<1-1]
-[] 0
[]+!-[] “true”
“true”[1<<1-1]
1<<1 2
“true”[1] “r”
unescape((/%/+[[]+1/!1]) [1]+(/1/[1]+[])[1%1]+(+! 1)+(+!1)+(/<</[1]+[]) [1<<-~(1^1)<<!0]+([]+!!- [])[~~(1^1)+!0]) “ú”
“O” + “r” + “r” + “ú”
None