Java 샌드박스 보안 환경 이해하기¶
Sandbox : 샌드박스(sandbox)란 외부로부터 들어온 프로그램이 보호된 영역에서 동작해 시스템이 부정하게 조작되는 것을 막는 보안 형태이다
자바의 샌드박스¶
- 자바(Java)가 지원하는 기본 보안 소프트웨어로, 1996년 1월 발표된 JDK(Java development kit:자바개발도구)1.0부터 제공되고 있다. 외부에서 받은 프로그램을 JVM(Java Virtual Machine)이라는 보호된 영역 안에 가둔 뒤 작동시키는 방법으로 프로그램의 폭주나 악성 바이러스의 침투를 막는다.
- 자바가 제공하는 샌드박스는 네트워크를 통해 전송받은 애플릿의 시스템 자원에 대한 접근을 제한한다. 샌드박스에서 접근을 허용한 애플릿은 작업이 가능하지만 그렇지 않은 경우는 로컬파일을 읽거나 바꿀 수 없게 하는 방법으로 시스템의 피해를 방지한다.
- 샌드박스는 클래스 로더(class loader), 바이트코드 검사기(bytecode verifier), 보안관리자(security manager)의 콤포넌트로 구성된다. 각 콤포넌트는 시스템의 신뢰성을 유지하는 역할을 한다.
currentTimeMillis() => 1970년 1월 1일 0시 0분 0초부터 현재까지 경과된 시간을 밀리초로 리턴한다.