Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
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
520
django loves gulp
nostalgia
0
160
The evolution of CSS - 2
nostalgia
1
110
The evolution of CSS
nostalgia
4
310
jQuery
nostalgia
4
440
Other Decks in Programming
See All in Programming
エンジニアインターン「Treasure」とHonoの2年、そして未来へ / Our Journey with Hono Two Years at Treasure and Beyond
carta_engineering
0
320
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
2
480
Go言語の特性を活かした公式MCP SDKの設計
hond0413
1
240
Introduce Hono CLI
yusukebe
6
2.7k
TFLintカスタムプラグインで始める Terraformコード品質管理
bells17
2
210
Claude Agent SDK を使ってみよう
hyshu
0
1.1k
Railsだからできる 例外業務に禍根を残さない 設定設計パターン
ei_ei_eiichi
0
940
Range on Rails ―「多重範囲型」という新たな選択肢が、複雑ロジックを劇的にシンプルにしたワケ
rizap_tech
0
6.7k
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
200
CSC509 Lecture 06
javiergs
PRO
0
260
非同期jobをtransaction内で 呼ぶなよ!絶対に呼ぶなよ!
alstrocrack
0
980
チームの境界をブチ抜いていけ
tokai235
0
180
Featured
See All Featured
Thoughts on Productivity
jonyablonski
70
4.9k
Mobile First: as difficult as doing things right
swwweet
225
10k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Practical Orchestrator
shlominoach
190
11k
KATA
mclloyd
PRO
32
15k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
RailsConf 2023
tenderlove
30
1.2k
Navigating Team Friction
lara
190
15k
How to train your dragon (web standard)
notwaldorf
97
6.3k
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
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