목록전체 글 (138)
공부하는 스누피
방화벽 (Firewall) - 조직 내부의 네트워크에서 전송되는 정보를 선별하여 수용/거부/수정하는 기능을 가진 침입 차단 시스템이다. - 전체 인터넷으로부터 기관의 내부 네트워크를 분리시킨 하드웨어와 소프트웨어의 조합이다. - 외부와 내부를 오가는 모든 트래픽은 방화벽을 거치고, 로컬 보안 정책에 정의된 대로 승인된 트래픽만이 통과된다. - IP주소와 포트 번호의 조합에 기초한 필터링 정책은 허가된 목록에 있는 호스트와의 연결을 허용한다. - TCP ACK 비트가 설정되어 있는지 아닌지 확인한다. => 모든 TCP 연결의 첫 번째 세그먼트는 ACK 비트가 0인 반면, 다른 모든 세그먼트들의 ACK 비트는 1이므로 ACK 비트가 0인 세그먼트만 걸러도 외부에서 오는 모든 연결을 허용하지 않게 한다. - ..
대칭키 암호화 (Symmetric Encryption) 대칭키 암호화에서는 키와 알고리즘을 하나씩만 사용해 암호화, 복호화를 수행한다. 해독이 어려운, 견고한 알고리즘이 필요하고, 누군가가 알고리즘을 알아도 키를 찾을 수 없게 해야 한다. 대칭키를 대상으로 한 공격에는 알고리즘을 파악 후 공격하는 방법이 있고, brute force로 모든 가능한 경우를 시도해보면서 공격하는 방법이 있다. 대표적인 암호로 카이사르 암호(caesar cipher)가 있는데, 평문의 각 철자를 알파벳 순서로 k번째 오는 철자로 대치해 암호화한다. 블록 암호화 (Block Encryption) 블록 암호화에서는 메시지가 k비트의 블록 단위로 암호화된다. 암호화 키는 재사용되는데, 블록마다 같은 암호화 키를 사용하기 때문이다. ..
현행 시스템 파악 절차 1) 구성/기능/인터페이스 파악 2) 아키텍처/소프트웨어 구성 파악 3) 하드웨어, 네트워크 구성 파악 소프트웨어 아키텍처 : 소프트웨어 구성요소와 그 특성/관계를 표현하는 시스템 구조 => 소프트웨어 설계 지침 소프트웨어 아키텍처 프레임워크 : 아키텍처 기술 표준 (구성요소) 아키텍처 명세서, stakeholder, 관심사, 관점, 뷰, 근거 소프트웨어 아키텍처 4+1 뷰 : 요구사항 시나리오를 4가지 관점에서 접근하는 방법. +1은 use case 뷰로 아키텍처 도출/설계를 담당한다. Use-case view: 아키텍처 도출/설계 담당 Logical view: 설계 모델 추상화, 기능적 요구사항. 클래스 다이어그램으로 표현. Process view: 런타임시 시스템의 task,..
가상 근거리 네트워크(virtual local area network, VLAN)를 지원하는 스위치를 사용하면 스위치를 계층 구조를 이용할때 발생하는 문제를 해결할 수 있다. 스위치 계층 구조를 사용하면 트래픽 격리 부족, 비효율적인 사용, 사용자 관리 어려움 등의 문제가 발생한다. VLAN을 지원하는 스위치는 하나의 물리적 인프라상에서 여러 개의 가상 네트워크들을 정의할 수 있게 한다. 포트 기반 VLAN에서는 네트워크 관리자가 스위치 포트(인터페이스)를 그룹으로 나눈다. 각 그룹은 하나의 VLAN을 구성하며, 한 VLAN의 포트들은 하나의 브로드캐스트 도메인을 형성한다. 즉, 한 포트로부터의 브로드캐스트 트래픽은 그 그룹의 다른 포트에만 도달할 수 있게 된다. VLAN을 격리한다면, 다른 그룹과의 트..
이더넷(Ethernet)은 LAN, WAN, MAN 환경에서의 통신 표준 중 하나이다. OSI 모델의 물리 계층에서 신호와 배선, 데이터 링크 계층에서 MAC 패킷과 프로토콜의 형식을 정의한다. 대부분 IEEE 802.3 규약으로 표준화되어 지금까지도 가장 널리 사용되고 있다. 모든 이더넷 기술은 네트워크 계층에게 비연결형 서비스를 제공해준다. 그래서 단순하고 저렴한 비용으로 구현이 가능하지만, 비신뢰적인 서비스를 제공해 오류 검사에 대한 결과를 송신자에게 알려주지 않는다. 만약 손실된 데이터그램이 있으면 라우터단에서 폐기되는데, 트랜스포트 계층에서 확인(ACK)과 재전송 작업을 수행한다. 버스 토폴로지와 허브 기반의 스타 토폴로지를 사용하던 때의 이더넷 표준은 브로드캐스트 링크여서 프레임 충돌이 발생할..
데이터 링크 계층(Data Link layer, DL layer)은 OSI 7계층의 2계층으로, 인접한 두 노드 사이의 통신을 담당한다. 이때 각 노드는 호스트, 라우터, 스위치, WIFI AC가 될 수 있다. 한 링크에서 전송 노드는 데이터그램(패킷)을 링크 계층 프레임으로 캡슐화해서 링크로 전송한다. DL 계층이 하는 일 5가지 1) Hop to Hop/Node to Node Delivery (노드 간 통신) DL의 기본 서비스는 단일 링크상으로 데이터그램을 이동시키는 것이지만, 세부 작동은 특정 링크 계층 프로토콜을 따른다. 2) Flow Control (흐름 제어) 각 링크마다 속도가 다르기 때문에 병목 현상을 해결하기 위한 흐름 제어 프로토콜을 사용한다. 트랜스포트 계층(TP)은 출발지-목적지 ..
네트워크 인터페이스 카드(NIC; Network Interface Card) - 컴퓨터와 컴퓨터 또는 컴퓨터와 네트워크를 연결하는 장치. - 정보를 전송할 수 있도록 정보 형태를 변경한다. - 이더넷 카드(LAN 카드)라고도 한다. 허브(Hub) - 가까운 거리의 호스트들을 연결하는 장치. - 각 회선을 통합적으로 관리하며, 리피터의 역할(신호 증폭)도 한다. - 종류 => 더미 허브: 연결만 함. Star 구조이고, LAN이 보유한 대역폭을 컴퓨터 수만큼 나누어 제공한다. => 스위칭 허브: 데이터 흐름을 제어하여 각 노드가 허브의 최대 대역폭을 사용할 수 있게 함. + 대역폭이란? 데이터를 주고 받을 수 있는 통신 링크의 용량이다. 쉽게 이야기하자면 대역폭을 100개의 자원이라고 하고 컴퓨터 수는 1..
velog.io/@rxjw95/ErrorSpring-boot%EC%97%90%EC%84%9C-Transactionaloption%EC%9D%B4-%EB%90%98%EC%A7%80-%EC%95%8A%EB%8A%94-%EA%B2%BD%EC%9A%B0 [Error]Spring boot에서 Transactional(option)이 되지 않는 경우 어이없는 문제를 찾아버렸다... velog.io Transactional 어노테이션을 사용하기 위해 어떤 패키지를 import했는지 다시 한번 체크해보자... javax면 readOnly를 사용할 수 없다....