일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- AI/GPT
- AI/ML
- 개발/네트워크
- 카카오테크캠퍼스
- 개발/환경
- 개발/CS/OS
- 개발/Tools/프레임워크/Spring
- ai
- 알고리즘
- 개발/언어/Java
- 개발/MySQL
- 카테캠
- 개발/Electron
- 대외활동/카카오테크캠퍼스
- 개발/OOP
- 개발/webrtc
- electron
- 개발/컴퓨터네트워크
- 개발/프레임워크&라이브러리
- 개발/CS/알고리즘
- 카카오 테크 캠퍼스
- ⌨️Developer
- 취업
- 개발/Java
- 개발/에러
- ⌨️Developer/보안
- 개발/Java/Spring
- 개발/언어론
- 개발
- 개발/보안
- Today
- Total
목록2023/06/10 (9)
봄수의 연구실
암호도구 IPsecv3와 IKEv3 프로토콜은 다양한 종류의 암호화 알고리즘에 의존합니다. 암호화 알고리즘과 매개변수로 구성된 권장 암호화 도구를 정의합니다 VPN-A 3DES와 HMAC에 의존 VPN-B AES에 의존 주로 3가지 유형의 대칭키 알고리즘 사용합니다 암호: 암호 블록 체인 모드 (CBC) 메시지 인증: VPN-A HMAC 및 출력의 96비트만 사용하는 SAH-1 사용 VPN-B 수정된 CMAC을 사용하여 출력의 96비트만 잘라서 사용합니다. 의사랜덤 함수 3 가지 대칭 암호 알고리즘 비밀번호 ESP에서 128비트 또는 256비트 AES 키를 사용하여 GCM 모드에서 인증된 암호화를 수행합니다. IKE 암호화: VPN 도구와 마찬가지로 CBC를 사용합니다. 메시지 인증 ESP: GMAC을 ..
IPsec 키 관리 IPsec 키 관리에는 비밀 키 결정과 비밀 키 배포가 있다. 두 응용 사이에 통신을 하려면 일반적으로 4개의 키를 요구합니다: 무결성을 위한 쌍, 비밀을 위한 쌍 IPsec 아키텍처에서 지원하는 키 관리: 수동 관리, 자동 관리 ISAKMP/Oakley : IPsec의 기본적인 자동 키 관리 프로토콜 구성요소 Oakley 키 결정 프로토콜: Diffie-hellman 알고리즘을 기반으로 추가적인 보안을 제공하는 프로토콜입니다. Oakley는 특정 형식을 강제하지 않습니다. 인터넷 보안 연관 및 키 관리 프로토콜 (ISAKMP): ISAKMP는 인터넷 키 관리를 위한 아키텍처를 지원합니다. 보안 속성 협상을 위한 구체적인 프로토콜 지원을 제공합니다. ISAKMP는 특정 키 교환 알고리..
SA : 보안 연관 묶기 SA(보안 연관)이란 그 위에 실어 보내는 트래픽에 보안 서비스를제공하는 송신자와 수신자 사이의 일방향 관계를 의미한다 양방향 보안 교신을 위한 대등 관계가 필요하면 2 개의 보안 연관을 사용한다 AH나 ESP를 사용(2개 동시 사용은 안됨)하기 위해 SA에 보안 서비스를 제공하기도 한다 동일한 트래픽 흐름에 대해 원하는 IPsec 서비스를 제공하기 위해 여러 SA를 결합할 수 있습니다. 연관 묶음 내 SA 종료는 양쪽 단말에서 수행 할 수 있습니다 연결 바인딩 방법 바인딩 방법은 이러한 SA가 보안 서비스를 제공하기 위해 결합되고 구성되는 방법을 나타냅니다. 전송 인접성 및 반복 터널링의 두 가지 주요 방법이 있습니다. 중첩 전송 터널링을 사용하지 않고 동일한 IP 패킷에 둘 ..
캡슐화 보안 페이로드(ESP) 캡슐화 보안 페이로드는 비밀성, 데이터 출처 인증., 비연결형 무결성, 재전송 방지 서비스, 트래픽 흐름의 비밀성을 제공하기 위해 사용된다. 제공되는 서비스의 집합은 SA 설정 시점에 선택된 옵션과 네트워크 위상에서 구현 위치에 따라 의존적이다 ESP는 GCM과 같은 인증 되는 암호화 알고리즘을 포함하여 다양한 암호화와 인증 알고리즘으로 동작한다 ESP 형식 ESP 패킷 최상위 형식 페이로드 데이터 서브 구조 암호화 및 인증 알고리즘 페이로드 데이터 그리고, 패딩 패드 길이, 다음 헤더 필드는 ESP 서비스에 의해 암호화 된다. 암호화 알고리즘이 초기화 벡터(IV)를 필요로 하면 데이터는 페이로드 데이터 필드의 시작 부분에 명시해서 전달된다. IV를 포함하면 암호문의 일부로..
Write Lock과 Read Lock 결국은 공유 자원에 대해서, 데이터를 읽고 쓸 때 트랜잭션(Transaction) 등에 락은 필연적입니다 또한, 공유 자원의 데이터 정합성을 지키기 위해서는 위와 같이 락으로 공유 자원에 순차적인 데이터 접근을 구현합니다 하지만, 잘못된 락은 시스템 성능을 저하시키니 조심해야 합니다다 개발자 입장에서 락을 통해 동시성을 제어할 때는 락의 범위를 최소하는 것이 중요합니다 Write Lock(배타 잠금) 쓰기 잠금은 잠금을 보유한 트랜잭션이 잠긴 데이터를 읽고 쓸 수 있도록 하는 일종의 잠금입니다. 쓰기 잠금이 유지되는 동안 다른 트랜잭션은 잠긴 데이터를 읽거나 쓸 수 없습니다. 이렇게 하면 데이터 일관성이 보장되지만 잠금 범위가 크면 대기 시간이 길어질 수 있습니다...
낙관적 Lock과 비관적 Lock 낙관적 잠금 낙관적 잠금은 충돌이 드물고 전체 트랜잭션 중에 리소스를 잠글 필요가 없다고 가정하는 전략입니다. 대신 트랜잭션이 커밋될 때 충돌을 확인합니다. 충돌이 감지되면(예: 다른 트랜잭션이 데이터를 수정함) 트랜잭션이 롤백되고 오류가 반환됩니다. 낙관적 잠금은 버전 번호를 사용하여 구현됩니다. 트랜잭션이 커밋되면 시스템은 데이터베이스의 현재 버전 번호가 읽은 버전 번호와 일치하는지 확인합니다. 일치하면 트랜잭션이 커밋되고 버전 번호가 증가합니다. 일치하지 않으면 충돌이 발생하고 트랜잭션이 롤백됩니다. 다음은 낙관적 잠금을 사용하는 방법의 예입니다. START TRANSACTION; SELECT version_number FROM table_name WHERE con..
동시성 제어 데이터베이스의 동시성 제어를 통해 여러 트랜잭션(Transaction)이 서로 간섭하지 않고 동시에 발생할 수 있습니다. 동시 실행에도 불구하고 트랜잭션의 일관성, 격리 및 내구성을 보장하게 하는 것이죠! 데이터베이스의 동시성 문제에 대한 일반적인 패턴 공유 리소스 조회 여러 트랜잭션이 공유 리소스를 읽고 있을 때 하나의 트랜잭션이 리소스를 수정하는 경우 제대로 관리하지 않으면 불일치가 발생할 수 있습니다. 공유 리소스 업데이트 여러 트랜잭션이 공유 리소스를 동시에 업데이트하려고 하면 충돌이 발생할 수 있습니다. 이를 종종 쓰기-쓰기 충돌이라고 합니다. 교착 상태 교착 상태는 두 개 이상의 트랜잭션이 서로 리소스를 해제하기를 무한정 기다릴 때 발생합니다. 이는 관리해야 하는 동시성 제어의 일..
트랜잭션 격리레벨 트랜잭션(Transaction) 격리 수준은 한 트랜잭션에서 변경한 내용을 다른 트랜잭션에 표시하는 방법과 시기를 결정합니다. SQL에는 네 가지 트랜잭션 격리 수준이 있습니다. READ UNCOMMITTED 가장 낮은 격리 수준입니다. 이 수준에서 트랜잭션은 아직 커밋되지 않은 다른 트랜잭션에서 쓰고 있는 데이터를 읽을 수 있습니다( 이로 인해 불일치가 발생할 수 있습니다. READ COMMITTED 이것은 많은 데이터베이스 시스템의 기본 수준입니다. 이 수준을 사용하는 트랜잭션은 트랜잭션이 시작되기 전에 커밋된 데이터만 볼 수 있습니다. 이는 더티 읽기를 방지하지만 여전히 반복 불가능한 읽기 및 팬텀 읽기로 이어질 수 있습니다. REPEATABLE READ 이 수준은 읽은 데이터가 ..
트랜잭션 트랜잭션은 하나 이상의 SQL 문을 포함하는 단일 논리적 작업 단위입니다. 트랜잭션은 데이터베이스 시스템에서 데이터 무결성과 일관성을 보장하는 데 사용됩니다. 동일한 데이터에 대한 여러 작업이 동시에 발생할 수 있는 다중 사용자 및 동시 데이터베이스 환경에서 매우 중요합니다. 예시로 아래의 SQL 문이 작동하는 것을 봅시다 홍길동이 김국밥에게 잔액을 +900을 줬지만 3번에서 실패가 발생했습니다 이 경우, 데이터의 정합성이 깨집니다. 위의 그림처럼, 홍길동은 900이 그대로 남았지만, 김국밥은 잔액이 900원이 더 생긴 상태로 쿼리가 종료 되었습니다 눈 먼 돈이 생겨버렸죠 이러한 문제 때문에 여러 SQL문을 마치 하나의 오퍼레이션으로 묶어야 하는 필요가 생겼습니다 ACID ACID로 참조되는 네..