최근에 한 불법 만화 번역 업로드 사이트가 요상한 스크립트를 써서 이미지 핫링킹을 방지하고 있는 것을 발견했다. 이미지를 조각으로 나눈 뒤 클라이언트 단에서 다시 조합하는 방식이었다.
이게 그 스크립트이다. URL의 쿼리에서 볼 수 있듯이 이 글을 쓰고 있는 때의 버전은 0.1a5
. 처음 이 스크립트를 발견했을 때의 버전은 0.1a3
이었는데 계속해서 수정되고 있는 것 같다. 1_original.js
파일로 업로드해두었다.
대체 어떻게 돌아가는 거야 이거? Google Chrome에 내장된 beautifier를 이용해 코드를 보기 좋게 만들었다. 2_beautified.js
로 업로드해두었다.
음, 복잡하다.