본문 바로가기

교육/암호학

Day 50 (암호문 + 네트워크)

반응형

<목차>

1. Chiper0z

2. OSI Layer-7

3. Network Topology

4. 네트워크 통신 장비


1. Chiper0z

  Chiper0z는 AES암호화 알고리즘을 사용한 비밀키 암호 방식을 사용한다.

  암호화는 키와 문장을 넣고 바에서 Process - Encrypt하면 된다. 암호문은 파일을 저장하여 수신자에게 전송한다.

  Kleopatra와 같이 암호문을 복사하여 붙여넣게되면 암호문 자체를 텍스트로 인식하여 복호화도 불가능 하다.

  암호문과 키를 주고 파일을 열어 Dencrypt하면 복호화 가능. 키는 텍스트보다는 문장으로 전달하는 것이 좋다.

Chiper0z실행
Chiper0z 파일과 Chiper0z 프로그램 화면이다.
메시지와 키를 작성한다.
비밀키 확인도 가능하다.
Encrypt를 누르면 암호화가 진행된다.
암호화된 내용이 출력되며 파일로 저장한다.
파일을 불러온다.

 

 

 


 

2. OSI Layer-7

OSI Layer-7에서 일반적으로 네트워크는 네트워크 엣지부분(Application-Layer ~ Transport-Layer), 네트워크 코어부분(Network-Layer ~ Physical-Layer) 두가지로 분류하여 공부한다.

OSI Layer-7의 일반적인 공부 순서는 Physical-Layer에서 Application-Layer순으로 하며, 최근에는 Application-Layer에서 Physical-Layer순으로 공부한다. 사용자가 사용하는 관점에서부터 이해를 돕기 위함이다.

 

90'후반까지는 프로토콜이 다양했다. 하지만 20'초반부터는 프로토콜은 TCP/IP만 사용하기 때문에 OS Layer-7을 표현하는 그림에 변화가 생겼다.

Network-Layer ~ Application-Layer는 논리적인 네트워크 구조의 영역에 비중이 더 크기 때문에 운영체제에서 결정된다. 

Physical-Layer와 Datalink-Layer는 물리적인 네트워크 구조의 영역에 비중이 더 크기 때문에 장비를 생산하는 회사에 의해 결정된다.

유닉스나 리눅스 같은경우에는 프로토콜이 tcp/ip로고정되어 있다. 하지만 오라클은 프로토콜이 언제 바뀔지 모르니 고정 프로토콜을 사용하지 않는다. 실제로 오라클의 서버나 클라이언트의 네트워크 설정시 ip가 아닌 tnsname을 사용해서 통신한다.

 

네트워크 명 이더넷 FDDI PPP
네트워크 망 이름 패킷망
cf)서킷망 : TV, Radio등
통신 방식 LAN 케이블, WAN 케이블 시리얼포트
통신 1:N 통신 1:1 통신 원형 프로토콜에서 사용

케이블에 따른 통신방식에는 LAN과 WAN이 있다. LAN은 Local Area Network로 좁은 범위 네트워크를 의미한다. WAN은 Wide Area Network로서 LAN보다 큰 네트워크이다. 통신망 구축중 케이블 비용이 가장 많이 든다. 따라서 비용 절감의 이유로 무선 네트워크 사용 하고 싶어한다. 실제로 웹망에서는 기밀성 의미 없다. 보안이슈에서 Wifi와 이더넷에 관한 보안상 이슈가 생기는 이유는 이더넷은 네트워크에 참여 하려면 물리적으로 선으로 연결해야 하지만 Wifi는 발신되는 정보를 수신하여 받기만 하면되기 때문이다.

암호화 기법을 사용하는 위치는 기법에 따라서 사용되는 Layer가 다르다. 링크암호기법은 Datalink-Layer에서 사용한다. 단대단 암호기법은 Application-Layer에서 사용한다. 


3. Network Topology

네트워크 구별 방법에서 구별법이 다양하다. 하지만 교육에서는 데이터 전달 방식으로 구별한다.

 

- bus형

다양한 프로토콜이 존재한다. 하지만 주로 이더넷을 사용한다. 버스 혹은 토큰은 한 네트워크에 하나만 존재해서 패킷은 1개씩만 전송이 가능하다. 데이터는 전송을 제어 할 수 있다. bus형 데이터 전달방식에서는 데이터를 분배하기만 한다.

과거에는 AUI케이블을 이용해서 망에 연결을 했으나 비용이 비싸 Thin케이블을 이용했다. 하지만 Thin케이블보다 허브를 사용하는 것이 더 저렴하기때문에 현재는 허브를 많이 사용한다. 하지만 데이터 손실이 일어나서 데이터의 효율이 떨어진다.

 

- ring형

안정성 높아 손실이 없지만 비싸기 때문에 많이 사용하지 않는다. FDDI방식의 장비의 통신 방식에서 주로 사용하는 데이터 전송 방식이다. 버스 혹은 토큰에 데이터 실어서 전송한다. 만약 토큰에 이미 데이터가 있으면 데이터 전송이 불가능 하다. ring형 데이터 전송방식을 얘기하면 토큰링이라는 단어가 자주 언급되는데 토큰링은 미국에서 사용하던 네트워크 방식 장비를 의미한다. 

 

- star형

방사형 네트워크로 단일경로로만 전달이 가능하다. 단일경로를 공유 할 수도 있고 하지 않을 수도 있다. 서킷망에서 주로 사용하며 대표적으로 전화국 간 통신에서 사용하는 ATM방식이 있다. 손실이 없이 통신이 가능하여 효율성 높지만 비싸서 자주 사용하지 않는다.

 

CSMA/CD통신 방식은 carrier sence / multiple access / collison detect의 줄임말이다.

carrier는 현재 네트워크에 패킷을 의미한다.

sence는  패킷의 유무를 확인한다.

multiple access는 동일한 세그먼트 내에 연결된 노드에 전부 패킷 송신방식이다. 다른 말로 풀이하면 데이터의 흐름 통제가 불가하다. 즉, 패킷의 방향성을 제어 할 수 없다는 것이다. 실제로는 제어가 가능하지만 제어를 안하는 이유는 장비를 이용해야 하기 때문에 비용이 많이 들기 때문이다.

collision detect는 패킷 충돌을 감지하는 것으로 통신중 충돌(collision)이 발생한 경우 해당 충돌이 사라질때까지 통신을 멈췄다가 다시 통신한다.

CSMA/CA통신 방식은 초창기 네트워크에 내용했던 통신방식으로 CSMA/CD통신 방식과는 다르게 collison avoidance(충돌 회피)하여 통신하기 전에 미리 패킷을 보낸다고 알리고 통신을 하는 방식이다.

 

통신 매체 구분은 MAC주소를 이용해 구분한다. MAC주소는 생산시 공장에서부터 부여한다. 일반적인 경우에는 MAC주소를 전용 프로그램을 이용해 변경이 가능하다. 마더보드에 부여된 주소는 변경이 불가능하다.

MAC주소는 16진수인 6바이트로 구성되어 있는데 6바이트중 앞의 3바이트는 벤더명이고, 뒤의 3바이트는 식별번호이다. 


4. 네트워크 통신 장비

 

<패킷 처리 기능 정리>

Filtering : MAC Table에 일치하지 않는 경로로의 전송을 막아주는 기능

Forwarding : MAC Table에 일치하는 경로로 전송해 주는 기능

Flooding : 모든 경로로 데이터를 전송해 주는 기능    
- MAC Table에 없는 MAC 주소를 받은 경우에 실행한다.
- Broadcast/Multicast 데이터를 받은 경우에 실행한다.
- MAC Table이 가득 찬 경우에 실행한다.

Aging : MAC Table을 관리하기 위한 기법
- 스위치 테이블을 구성할때 RAM에 저장이 된다. 저장 크기를 넘어서면 TTL/LRU알고리즘을 사용하여 한번 사용된 MAC주소가 일정 시간 사용되지 않으면 삭제한다.

 

- 리피터(Repeater(HUB))

리피터(허브)를 사용하게 되면 네트워크를 분리하여 포트 하나에 연결시키기 때문에 물리적으로 동일한 네트워크가 된다. 그래서 마치 하나의 네트워크처럼 보이기 때문에 네트워크에서 사용하는 대역폭 감소하게 된다. 대역폭이 감소하게 되면 네트워크 속도가 저하되기 때문에 현재는 없어진 장비이다.

네트워크의 양 끝에는 터미네이트라는 것이 붙어있다. 터미네이트는 55옴 저항으로 패킷이 자연 손실되게 한다.

 

- 브릿지(Bridge)

#1 #2
A① C③
B② D③

 

브릿지는 장치이기 때문에 OS도 내장되어있다. 브릿지의 메모리 영역에는 브릿지 테이블이 존재하는데 브릿지의 포트에 할당된 주소가 논리적으로 구분되어있다. 패킷에는 송신장치의 식별정보와 수신장비의 식별정보가 포함되어있고, 이더넷에서 송수신하는 패킷을 프레임이라고 한다.

만약 A와 B가 통신을 한다고 하자.

A에 패킷을 송신하는데 브릿지에서는 목적지 주소 브릿지 테이블을 검색한다. 일치하는 장치가 없을 경우 Flooding하여 다른 네트워크로 무조건 보낸다.

그리고 브릿지 테이블에 A는 1번 포트에 연결된 네트워크에 있다는 것을 기록한다.

B에서 응답을 보내게 되면 A는 1번 포트에 연결된 네트워크에 있는 것을 알기 때문에 브릿지는 Forwarding하여 A에게 패킷을 송신하고 Filtering하여 패킷을 버린다.

그리고 B도 1번 포트에 연결된 네트워크에 있다는 것을 기록한다.

이런식으로 시간이 지나면 브릿지 테이블에 각 포트에 연결된 네트워크에 어떤 장치들이 있는지 전부 저장된다.

브릿지의 장점은 리피터는 A와 B가 통신시 C와 D가 다른 네트워크 임에도 통신이 불가능 하지만 브릿지는 가능하다는 것이다.

MAC주소중 FF:FF:FF:FF:FF:FF는 브로드케스트 주소로서 목적지 없으니까 모든 네트워크에 전부다 보내는것을 의미한다. 모든 네트워크를 목적이로 하는 것이 아니기 때문에 수신처리에 대한 방식은 프로토콜에 따라 달라진다.

 

- 스위치(Switch)

#1 #2 #3 #4 #5 ...
A B C D E ...

스위치는 스위치 테이블을 메모리 영역에 저장한다. A와 B가 통신을 하기 위해 패킷을 송신한다. 스위치에서는 스위치 테이블을 참조하여 B가 연결된 포트를 찾는다. 일치하는 포트가 없을 경우 Flooding한다.

그리고 스위치 테이블에 A는 1번 포트에 연결된 네트워크에 있다는 것을 기록한다.

B가 패킷을 수신한 후 A로 응답을 보낸다. A는 1번 포트에 연결된 네트워크에 있는 것을 스위치는 알기 때문에  Forwarding하여 A에게 패킷을 송신하고 Filtering하여 패킷을 버린다.

그리고 B도 1번 포트에 연결된 네트워크에 있다는 것을 기록한다.

이런식으로 시간이 지나면 스위치 테이블에 각 포트에 연결된 네트워크에 어떤 장치들이 있는지 전부 저장된다.

반응형

'교육 > 암호학' 카테고리의 다른 글

Day 49 (암호학)  (0) 2020.01.29
Day 48 (암호학)  (0) 2020.01.28
Day 46 (암호학_인증서)  (0) 2020.01.22
Day 46 (암호학_Kerboros)  (0) 2020.01.22
Day 45 (암호학)  (0) 2020.01.21