본문 바로가기

Information Technology/Programming19

자바스크립트 언어적 특징과 난독화 1. 개요 JavaScript Garden은 자바스크립트 언어의 핵심적인 내용을 모아 놓은 웹 문서이다. 이 문서는 자바스크립트 언어 자체를 설명하지 않고, 이 언어를 익히고, 사용하는데 있어 자주 겪는 실수, 미묘한 버그, 성능 이슈, 나쁜 습관 등 자바스크립트 언어의 독특한 특징들을 설명하고 있다. 2. 난독화 관련 내용 JavaScript Garden 내용을 기반으로 자바스크립트 난독화에서 이해하기 어려웠던 언어의 특징들을 잘 설명하고 있어 공부하는데 많은 도움이 되었다. 2.1. 객체 > 객체와 프로퍼티 > 프로퍼티 접근 객체이름 다음에 점을 찍어(Dot Notation) 접근하거나 각괄호를 이용해(Square Bracket Notation, []) 접근할 수 있다. 두 방식 모두 거의 동일하게 .. 2015. 7. 30.
기록 - 웹 관련 오픈소스 & 웹 프레임워크 오픈소스 웹킷 - http://www.webkit.org/building/build.html구글 V8 자바스크립트 엔진 - https://code.google.com/p/v8/팬텀js within Headless Webkit - http://phantomjs.org/캐스퍼js - navigation scripting & testing utility - http://casperjs.org/슬리머js - A scriptable browser for Web developers - http://slimerjs.org/ 2014. 11. 23.
자바스크립트 02 - 꼭 *.js를 쓸 필요가 없다. 1. 개요 개발자들의 암묵적인 사항으로 자바스크립트 파일은 *.js확장자를 가지도록 하며, 실제로 운영체제도 *.js는 자바스크립트 파일로 인식하고 있다. 하지만 자바스크립트 엔진을 가지고 자바스크립트 언어 및 파일을 인지하고 인식하는 브라우저는 어떨까? 자바스크립트 언어의 특징 중 하나는 파일 확장자와 무관하게 동작한다는 점이다. 그림 1. 악성코드 유포지가 삽입된 경유지 그림 1에서 보는 것과 같이 script 태그로 자바스크립트를 선언한 후 ***/top.jpg를 리디렉션 하고 있다. 확장자만 보았을 땐 jpg 그림파일이어야 하지만 script로 인식하여 파일 안의 자바스크립트 코드를 실행하게 된다. 이러한 이유는 script 태그를 사용하면 자바스크립트 엔진이 운영되고 엔진은 확장자 확인 없이 파.. 2014. 1. 6.
자바스크립트 01 - Head First; JavaScript 를 읽으며 브라우저 내부에는 자바스크립트 엔진이라는 특수한 소프트웨어을 포함하고 있으며 이 엔진은 자바스크립트 코드를 인터프리터 형태로 실행할 수 있도록 해준다. 그래서 일반적인 언어는 컴파일러가 필요하지만, 자바스크립트 언어의 경우 브라우저가 직접 파싱하고 직접 해석하게 된다. 페이지가 로딩 후 자바스크립트 코드는 웹 브라우저와 함께 작동하기 때문에, 실시간으로 사용자의 이벤트에 응답하고, 페이지를 수정하기도 한다. 사용자와 대화하는 자바스크립트 언어의 특징으로 인해 좀더 빠르게 사용자와 소통하기 위해 자바스크립트 언어는 클라이언트에 임시 저장을 하게 된다. 그래서 클라이언트용 언어라고 알려져 있으며, 사용자는 쉽게 소스코드를 볼 수 있다. 자바스크립트 코드는 웹 페이지에 소스코드를 그대로 사용하지 않아도 되며,.. 2013. 12. 10.