일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 백준
- JPA
- 운영체제
- Data Structure
- spring webflux
- 네트워크
- design pattern
- mongoDB
- c언어
- 자바
- Heap
- Spring
- Java
- react
- MySQL
- redis
- Algorithm
- Galera Cluster
- 디자인 패턴
- 자료구조
- JavaScript
- C
- 알고리즘
- Kafka
- IT
- Proxy
- 컴퓨터구조
- OS
- MSA
- 파이썬
- Today
- Total
목록전체 글 (214)
시냅스
HMAC, Hash-based Message Authentication Code HMAC 은 메시지 인증 코드 (message authentication code) 를 생성하기 위한 알고리즘입니다. 송신자와 수신자만이 알고있는 secret key 값을 가지고 해싱하여 요청을 신뢰할 수 있는지 판단합니다. checksum 의 아이디어에서 기인합니다. checksum 송신자는 데이터를 송신하면서 데이터의 일부분 혹은 전체의 합 또는 XOR 등의 연산으로 데이터와 함께 전송 수신자는 데이터를 받아 checksum 을 다시 계산하여 송신측에서 보낸 값과 일치하는지 확인한다. 다만 checksum은 오류 검출에만 사용되며 데이터의 정확성을 보장하지는 않는다. 다음과 같이 동작합니다. 송신할 메시지와 공유 비밀키를..
CSRF Cross-Site Request Forgery 공격자의 요청이 사용자의 요청인 것처럼 속이는 공격 방식 사용자가 특정 사이트에 로그인한 상태로 악의적인 웹사이트에 방문하여 로그인한 특정 사이트에 악성 요청을 보내도록 유도 사용자가 인증한 세션에서 웹 애플리케이션이 정상적인 요청과 비정상적인 요청을 구분하지 못하는 점을 악용 쿠키와 같은 정보를 포함하고 있기 때문에 XSS와 비슷하지만 XSS는 세션이 없어도 가능하다. 예시 bank 라는 사이트에서는 타인에게 송금할 때 위와 같은 url을 사용한다. 공격자가 위와 같은 HTML을 사용자에게 전송한다. 위의 폼을 통해 공격자에게 1000000 원을 이체하게 된다. 이때 서버는 인증된 세션값을 올바른지, 올바른지 인식하지 못하므로 송금을 수행하게 된..
JNI C/C++ 등의 네이티브 언어로 작성된 코드와 상호작용할 수 있도록 하는 프로그래밍 인터페이스 JNI를 통해 네이티브 언어와 함수 호출 및 데이터 전달이 가능하게 한다. 메시지 및 자바 객체 하드웨어 제어를 쉽게할 수 있게 한다. DLL 을 사용한다. DLL은 라이브러리에 대한 linking 만 해 두었다가 특정 메모리영역을 할당 받아서 필요한 내용만 loading 한다. 또한 특정 메모리 영역은 프로세스 간에 공유가 가능하다. 바이트 코드와 네이티브 코드를 동일한 바이너리 파일에 혼합할 수 없기 때문에 독립적으로 컴파일 / 실행 (JVM / GCC(or else)) 하고 메시지를 주고 받는다. 사용할 함수를 native 키워드를 통해 선언하고 가져올 DLL 을 static block 에 선언한다..