School
![[ Node.JS ] Express-Session과 암호화](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCvKQl%2FbtrCWQGiiZD%2FrnjbLLdHhiMcIF66uGvY3K%2Fimg.png)
[ Node.JS ] Express-Session과 암호화
Cooie는 사용자의 정보가 웹 서버를 통해 사용자의 컴퓨터에 직접 저장되는 정보의 단위를 말합니다. 예를 들어 사이트에 접속을 했는데 "아이디와 비밀번호를 저장하시겠습니까?라는 창이 뜨면 사용자의 아이디와 비밀번호를 쿠키로 저장한다는 뜻입니다. 쿠키는 브라우저에서 임의로 바꿀 수 있습니다. 만약 아이디와 패스워드 같은 중요한 정보가 쿠키로 저장했다면 보안에 큰 문제가 있을 겁니다. 이러한 문제점을 해결하기 위해서 나온것이 Session입니다. Session이란? 세션은 쿠키보다 더 안전하고 많은 데이터를 저장하는 저장 방식입니다. 쿠키의 경우 데이터를 사용자의 컴퓨터에 저장하기 때문에 비밀번호 같은 민감한 부분이라도 예외없이 그대로 드러납니다. 하지만 세션은 데이터를 서버에 저장하기 때문에 쿠키보다 안..

Java Programming - Thread notify-wait()
다시 자바의 동기화 초리 방법에 대해 간단히 다시 짚고 넘어가도록 하겠습니다. 동기화 처리 방법 synchronized 메서드 자체에 동기화 처리 public synchronized void add() { ~ } 여러개의 Thread들이 공유객체의 메소드를 사용할 떄 메소드에 synchronized가 붙어있을 경우 먼저 호출한 메소드가 객체의 사용권(Monitoring Lock)을 얻습니다. 메소드 앞에 synchronized를 붙혀서 실행해 보면, 메소드 하나가 모두 실행된 후에 다음 메소드가 실행됩니다. 해당 모니터링 락은 메소드 실행이 종료되거나, wait()와 같은 메소드를 만나기 전까지 유지됩니다. 다른 쓰레드들은 모니터링 락을 놓을때까지 대기합니다. 동기화 블럭 synchornized(thi..

Java Programming - Thread basic
멀티 프로세싱 하나의 응용프로그램이 여러 개의 프로세스를 생성하고, 각 프로세스가 하나의 작업을 처리하는 기법입니다. 각 프로세스는 독립된 메모리 영역을 보유하고 실행합니다. 프로세스들 사이의 변수를 공유할 순 없습니다. 프로세스 사이의 문맥 교환에 따른 과도한 오버헤드와 시간 소모의 문제점이 있습니다. ( 브라우저의 중복 실행 ) 멀티 스레딩 하나의 응용프로그램이 여러 개의 스레드를 생성하고, 각 스레드가 하나의 작업을 처리하는 기법입니다. 모든 스레드가 응용프로그램 내의 자원과 메모리를 공유하므로 통신 오버헤드가 크지 않고, 문맥 교환이 빠릅니다. 현재 대부분의 운영체제가 멀티스레딩을 기본으로 하고 있습니다. 이와 같이 웹 서버시스템에서 멀티 스레드를 사용할 수 있습니다. 자바 스레드와 JVM JVM..
![[ Basic Security ] - Ubuntu in Server](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbQrsPr%2FbtrCuUKc2VF%2FW1KN0d3ymroGZFZAke4NmK%2Fimg.png)
[ Basic Security ] - Ubuntu in Server
이 포스트는 다 이해 안하셔도 됩니다. 그냥 우리가 배운 리눅스 서버를 어떻게 활용하고 보안전문가, 해커, 개발자가 어떻게 바라보고 있는지에 대한 큰 그림만을 그리셔도 됩니다. 기본 설정 기본 EC2 로그인은 ssh로 설정되어 있습니다. 서버에 공개키를 두고 각 사용자마다의 개인의 개인키를 두어서 로그인을 하는 구조이죠 만약 로그인 체제를 password로 바꾸어서 로그인하고 싶다면 어떻게 할까요? 우선 아래의 명령어로 ubuntu라는 user의 password를 설정해 주도록 하겠습니다. $sudo passwd ubuntu 그 다음에 저희는 root유저의 passwd를 설정하고 root유저로 접속하고 싶으니까 아래의 명령어도 쳐줍니다. $sudo passwd root 그리고 아래의 명령어로 root계정..