Presentation is loading. Please wait.

Presentation is loading. Please wait.

Data Compression 데이터 압축:음성, 비디오, 팩시밀리 전송등과 같은 경우에 중요

Similar presentations


Presentation on theme: "Data Compression 데이터 압축:음성, 비디오, 팩시밀리 전송등과 같은 경우에 중요"— Presentation transcript:

1 Data Compression 데이터 압축:음성, 비디오, 팩시밀리 전송등과 같은 경우에 중요
예를 들어 NTSC 비디오 신호전송을 해야할 때 압축을 하지 않는다면 약 100Mbps 전송속도가 요구 하지만 데이터 압축으로 필요한 전송속도를 상당히 줄일 수 있다. [그림 5.25]

2 허프만(Huffman) 코드 허프만 코드는 가장 널리 쓰이는 압축 방법
문자가 나타나는 빈도수에 따라 그 크기를 다르게 하는 것: 빈도수 의존 코드(frequency dependent code) 모음과 'L', 'R', 'S', 'N', 'T' 등과 같이 자주 나타나는 문자들은 더 작은 비트를 할당 예제: 각각의 확률이 0.5, 0.3, 0.15, 0.05인 4개의 값 x1, ..., x4가 있다고 가정 만일 x1, ..., x4값 각각을 나타내기 위해 코드 값 00, 01, 10 11을 사용한다면 X값을 전송하기 위해 2비트가 필요 그러나 만일 x1을 나타내기 위해 0, x2를 나타내기 위해 10, x3을 나타내기 위해 110, x4를 나타내기 위해 111을 사용한다면, 평균 0.5 x x x x 3 = 1.7 비트가 필요 접두코드(prefix code)

3 허프만 알고리즘 단 하나의 노드만을 가지고 있는 이진 트리와 각 문자를 매핑
각 트리에 문자들의 빈도수를 할당: 트리의 가중치(weight) 두개의 가장 작은 가중치를 가지고 있는 트리를 찾아 하나의 트리로 합치고 새로운 루트 노드를 만들어 낸다.(이 새 트리의 가중치는 합쳐진 두 트리의 가중치의 합) 마지막으로 하나의 트리가 남을 때까지 이 과정을 반복 이 과정이 끝났을 때 원래 노드들의 각각은 마지막 이진 트리의 말단 노드(leaf)가 된다. 이진 트리에서 루트로부터 말단 노드에 이르는 유일한 길(path)이 있게 되고 이 길이 허프만 코드가 된다. 그것은 각 왼쪽 자식 포인터에 0을 할당하고 오른쪽 자식 포인터에 1을 할당해서 결정 [그림 5.26]

4 Run Length 인코딩 허프만 코드는 알려져 있는 문자의 빈도수를 알아야 함
허프만 코드는 알려져 있는 문자의 빈도수를 알아야 함 팩스는 종이의 밝은 부분과 어두운 부분에 해당하는 비트를 전송 -->직접적으로 문자를 전송하지 않음 Run Length Encoding 기법은 단순하지만 확실한 접근을 시도---> 0 또는 1이 계속해서 나타나는 비트 문자열을 분석해서 모든 비트를 보내는 대신에 다만 0과 1이 몇 번 나타나는 횟수를 전송 팩시밀리 신호를 부호화하고 압축하는데 사용되는 간단하면서도 효율적인 데이터 압축 알고리즘

5 팩시밀리 전송을 위해 페이지를 줄단위로 주사하고 각 줄을 따라 일정 간격의 점들에 의해 반사되는 빛의 밝기를 측정
흰점을 0으로 나타내고 검은점을 1로 나타낸다고 가정하자. 만일 팩시밀리가 1인치당 200줄을 스캔하고, 각 줄마다 1인치당 200개의 점들의 밝기를 측정한다면 8.5인치×11인치 크기의 페이지를 200x200x8.5x11=3.74x10**6개의 비트로 표현 이 비트들을 9600bps 모뎀으로 전송한다면 6.5분이 걸림

6 Run Length Encoding 예 팩시밀리는 긴 0들의 열을 전송하는 대신에 두 1사이의 연속적인 0의 개수를 보낸다. 예를 들어 0a가 a개의 연속적인 0을 나타낸다고 표기하면, 1 0a 1 0b 1 0c 1 0d와 같은 스트링(string)은 A B C D와 같이 부호화된다. 여기서 A는 a의 이진수 표현이고, B는 b의, C는 c의, D는 d의 이진수 표현이다. 따라서 만일 a = 600(3인치 길이의 흰점에 해당)이면 A= 이 되고 따라서 600개의 0을 전송하는 대신에 단지 10비트만 전송하면 된다. 예: 교재 154~155 페이지 참조

7 상대적 인코딩(Relative Encoding)
비디오 전송에서 이미지들은 팩스의 어둡고 환한 이미지 전송과 텍스트 파일 전송에 비해 매우 복잡 전에 소개된 방법는 이미지 압축에 도움이 되지 않음 하나의 비디오 이미지는 거의 반복을 가지고 있지 않지만 여러 이미지들에 대해서는 많은 반복이 있음 상대적 인코딩은 각각의 프레임을 개별적인 단위로서 다루고 압축하려고 시도하지 않고 각 프레임이 전의 것보다 얼마나 다른지를 고려 정보를 압축하고 보내는 것은 프레임들간의 차이가 아주 작을 때 효과적이 된다.

8 상대적 인코딩의 원리 처음 프레임은 보내지고 수신기의 버퍼에 이것이 저장
송신기는 두 번째 프레임을 처음 것과 비교하고 그 차이를 인코드 그리고 그것을 프레임 포맷으로 보내게 된다 수신기는 그 프레임을 얻고 그 프레임이 가지고 있는 차이를 적용해서 송신기가 가졌던 두 번째 프레임을 만들어 냄 두 번째 프레임을 버퍼에 저장하고 계속해서 새로운 프레임에 대해서 위의 과정을 반복

9 Lempel-Ziv 인코딩 최근에 데이터를 압축하는 또하나의 방법 흔하게 되풀이되어지는 문자열을 찾아서 단지 한번만 저장
한번 저장된 동일한 단어나 문장은 원래의 것을 가리키는 포인터와 길이를 나타내는 값으로 대치 UNIX 압축 명령(compress 명령어)와 MS-DOS의 ARC 유틸리티에서 이 알고리즘이 사용 이 알고리즘을 사용하면 긴 파일을 거의 1/2길이로 압축

10 Lempel-Ziv 인코딩의 예 "the other one is the oldest”을 Lempel-Ziv 알고리즘으로 압축
the o[1,3]r[4,2]is[3,1][1,5]ld[3,1][16,1][1,1] [1,3]에서 1은 문장의 첫 번째 문자를 의미하며 3은 길이가 3임을 의미한다. 반복되는 문자열의 길이가 길수록 이 알고리즘의 효율은 증가 Lempel-Ziv 알고리즘의 실제구현은 위에서 설명한 원래의 알고리즘과 약간 다르다. 즉 실제로는 구현이 쉽도록 수정된 알고리즘을 사용하게 되는데 대신에 압축율이 조금 떨어진다.

11 1. 정보통신 보안 위협형태 2. 암호화 방식 3. 시스템 보안 4. 네트워크 보안

12 정보통신 보안 : 보안 위협 형태 가로채기(Interception)
통신선로를 도청하거나 패킷을 스니핑(sniffing)하여 송/수신자간의 데이터를 가로채서 권한이 없는 사람이 그 내용을 보는 것 두절(Interruption) 송신자의 데이터가 수신자에게 전달되지 못하도록 중간에서 하드웨어나 소프트웨어를 파괴하거나 통신선로를 단절시키거나 전송중인 패킷 변조

13 정보통신 보안 : 보안 위협 형태 변조(Modification) 송신자의 데이터를 중간에서 변조하여 다시 수신자에게 전송
이렇게 하여 수신자는 잘못된 정보를 갖게 되거나 악의적인 작업을 하는 코드를 내장한 파일 실행 위조(Fabrication) 악의가 있는 송신자가 마치 인증된 사람인 것처럼 가장하여 수신자에게 데이터 전송

14 Encryption(암호화) 일반적으로 컴퓨터 시스템에서 사용되는 정보 암호화는 특정한 키(key)값을 이용하여 평문(plain text)으로 된 정보를 암호문(cipher text)으로 바꾸는 작업

15 고전적인 암호방식 고전적인 암호 방식 중 하나는 시져(Julius Caesar) 황제가 만든 것으로서 각 문자를 알파벳 순서상 세 자리 뒤의 문자로 대체하는 방법에 기초 예: 영어 문자 알파벳을 사용하여 이 방법에 의해서 대문자로 변환하면 평문 'Caesar'는 암호문 'FDHVDU'가 된다. 이 방법은 암호문을 세 자리 대신 k 자리만큼 문자를 이동시키는 것으로 일반화 이 방법은 k를 키로 한 순환이동 방법: 대체암호(substitution cipher) 치환암호(transposition cipher): 대체암호 방식과 함께 고전적인 암호 방식의 한 부류 평문의 심볼들을 재배치하는 방법이다.(순서를 재배열)

16 관용 암호 방식(conventional cryptosystem)
관용 암호 방식은 가장 널리 알려지고 또 일반적으로 사용되고 있는 암호 방식 컴퓨터 시스템과 통신망 등의 정보 암호화에 많이 이용 암호화 키와 복호화 키가 동일한 대칭 알고리즘을 사용 통신망에서 사용될 경우 일반적으로 세션키(session key) 또는 비밀키(secret key)로 불리우는 이 대칭키를 암호화 이전에 서로 분배(distribution)해야하는 부담

17 키분배는 비용 증대와 시간 지연이라는 단점을 가진다.
그러나 암호화 작업과 복호화 작업에서 계산량이 적고 빠르다는 장점으로 인하여 현재 가장 많이 사용 사용 예 미국 IBM에서 개발한 DES: 56비트의 키를 사용 IDEA(International Data Encryption Standard) 128비트의 비교적 큰 키를 사용 PGP(Pretty Good Privacy)에서 사용 일본 NTT에서 개발한 FEAL(fast data encryption algorithm) 등 특히 DES는 가장 일반적으로 사용되는 암호 방식으로서 UNIX의 패스워드 처리 및 자료 저장에 응용 [정의 5-1] 관용 암호 방식의 조건: 교재 159 페이지

18 공개키 암호 방식(public key cryptosystem)
관용 암호 방식의 가장 큰 문제점이었던 키분배 문제를 해결한 암호 방식 암호화 키와 복호화 키가 서로 다른 비대칭 알고리즘을 사용하고 암호화 키는 안전한 경로를 사용할 필요없이 공개해도 무방하다는 특징을 갖는다.

19 통신망에서 사용하기에는 관용 암호화 방식보다 더 적합하다고 판단되어짐
키분배에 따르는 부담이 크게 줄어 듬 통신망에서 사용하기에는 관용 암호화 방식보다 더 적합하다고 판단되어짐 암호화 및 복호화 작업에 필요한 계산량이 너무 크다는 치명적인 단점 효율적인 고속 하드웨어의 지원이 없이는 현실적으로 적용하기 어렵다. 대표적인 알고리즘은 최초의 공개키 방식으로 알려져 있는 RSA(Rivest, Shamir, Adleman) 알고리즘 [정의 5-2] 공개키 암호 방식의 조건: 교재 페이지 161

20 공개키 분배 방식(public key distribution cryptosystem)
공개키 분배 방식은 관용 암호 방식의 키분배 부담을 해결한 대칭 알고리즘 방식이다. 이 방식의 기본적인 아이디어는 관용 암호 방식의 암호화 및 복호화 작업의 계산량이 적다는 장점과 공개키 암호 방식의 키를 공개할 수 있다는 장점을 결합하는 것이다.

21 디지털 서명(digital signature)
디지털 서명은 일반적인 문서 서명의 개념을 컴퓨터에 도입한 것으로서, 하나의 전자적인 메세지가 유일한 것이며 또한 그 문서의 전송자가 누구라는 것을 추적하거나 증명할 수 있도록 하는 방법을 말한다. 디지털 서명은 메세지 송신자의 인증이 본래 손으로 쓰여진 서명과 같은 역할을 하는 것으로 생각한다. 디지털 서명은 전산화된 업무 및 회계 처리, 그리고 인터넷을 통한 전자 우편이나 정보의 전달에 주로 이용 보안 시스템의 중요성이 높아질수록 활용도가 매우 높아질 것으로 기대되는 기술 [정의 5-4] 디지털 서명의 조건

22 시스템 보안 개요 호스트 컴퓨터나 단말기에 대한 불법 침투, 부정 접속, 신분 위장, 자료 삭제 및 손실 등의 공격에 대한 방어 해킹, 바이러스와 같은 공격에 대해 보안 응용 서비스를 제공하며, 주로 운영체제 보안과 관련 시스템 보안에 대한 연구는 다른 분야에 비해 비교적 오래 전부터 시작되었으며, 다수의 보안도구가 잘 정비되어 있는 상태 시스템 보안 구분 서버 측 : Trusted OS, 침입탐지시스템(IDS : Intrusion Detection System), 저작권 보호기술, 프라이버시 보호기술, 보안 취약성 탐지기술 등 클라이언트 측 : 파일 암호화, 백신 기술 등 기존에는 서버 시스템 보안에 대한 연구가 많이 진행되어 왔으나, 최근에는 클라이언트 시스템 보안 분야에서도 많은 연구가 수행됨.

23 시스템 보안 : 컴퓨터 바이러스(Virus)와 웜(Worm)
감염형태 바이러스 실제 프로그램 위에 붙어있는 소프트웨어의 작은 일부임. 예) 스프레드쉬트 프로그램과 같은 프로그램에 붙을 수 있고 스프레드쉬트 프로그램이 실행될 때마다 바이러스 또한 실행됨. 스스로를 재생성하고 시스템을 파괴시킴. 이메일 바이러스 이메일 메시지로 이동하고 피해자의 이메일 주소록에 있는 수십 또는 수백 명의 사람들에게 자동적으로 자신을 보내어 복제함. 자신을 복제하기 위해 컴퓨터 네트워크나 취약한 보안을 이용하는 작은 소프트웨어의 일부 특정한 부분에 허술한 보안체계가 있는지를 파악하기 위해 다른 시스템과 네트워크 조사 취약한 보안을 뚫고 새로운 시스템에 자신을 복사하고 거기로부터 복제 트로이 목마(Trojan Horses) 간단한 컴퓨터 프로그램으로 게임과 같이 어떤 하나의 작업을 하도록 진행함. 실행할 때 하드디스크를 지울 수도 있는 위험을 야기 시키지만 자동적으로 복제하는 방법은 없음.

24 시스템 보안 : 방화벽(Firewall) 방화벽(Firewall)
내부 네트워크나 인터넷 서비스 업체와 같이 두 개의 네트워크 사이에 놓인 하드웨어나 소프트웨어로 구성 원하지 않는 사용자를 막거나 외부로부터 특정 수신자에게 가는 메시지를 허용하지 않음으로 해서 네트워크 보호 방화벽은 많은 형태가 있는데 대부분 라우터나 서버에 위치하는 소프트웨어일 수 있음. 내부자와 외부의 악의를 갖고 있는 사람들과의 통신 차단 예) 고용자와 경쟁업체의 이메일 교환 방지

25 시스템 보안 : 방화벽(Firewall) 방화벽 환경설정 IP 주소
어떤 IP 주소가 파일서버로부터 너무 많은 파일을 읽고 있다면 방화벽은 그 IP 주소로 오가는 통신 차단 도메인 이름 특정 도메인 이름을 가진 사이트에만 접근하도록 설정 가능 프로토콜(Protocol) 프로토콜은 두 장비간에 통신하기 위해 미리 정의된 통신규약 프로토콜들을 허용하거나 차단 포트(Port) 모든 서버는 숫자화된 포트를 사용하여 인터넷에 가용한 서비스 함. 웹 서버(HTTP)는 80번 포트를 사용하고 FTP 서버는 21번 포트 사용 예) 어떤 회사가 21번 포트를 막는다면 FTP 서비스가 되지 않음.

26 시스템 보안 : 침입탐지 시스템 침입탐지 시스템(IDS : Intrusion Detection System)
시스템이나 네트워크가 부적절하게 또는 인증절차 없이 사용되는지를 알아내는 것 시스템이나 네트워크로부터 정보를 수집하여 이러한 자원을 모니터링하게 되고 침입이 탐지될 때에 관리자에게 통보 방화벽 vs. 침입탐지 시스템 방화벽 : 모든 출입인의 신분을 체크하는 사무실 문에 해당하는 보안장치 침입탐지 시스템 : 어떤 사람이 어디에 있는지 무엇을 하는지 혹은 불법적인 행위를 하는지를 관리자에게 알려주는 센서(sensor)와 같은 역할

27 시스템 보안 : 침입탐지 시스템 호스트 기반과 네트워크 기반 접근 호스트기반 침입탐지 시스템(Host-based IDS)
침입탐지 기능이 호스트에 설치됨. 시스템에 변경된 것이 무엇인지, 중요한 파일이 수정되지 않았는지 체크 파일의 해쉬를 포함하며 중요한 시스템 파일 속성 기록 정기적으로 저장된 속성과 현재 파일의 상태를 비교하고 모든 의심스러운 변화 기록 호스트를 출입하는 모든 패킷을 모니터하고 필수적으로 개인방화벽 기능 동반 의심스러운 패킷 수신시 경보 발생 예) 1992년, Eugene Spafford와 Gene Kim에 의해 작성된 프로그램인 트립와이어(TripWire) 네트워크 기반 침입탐지 시스템(Network-based IDS) 네트워크 세그먼트(segment) 위의 모든 패킷 조사 공격신호 수색 이러한 신호들은 실제 패킷의 내용이나 알려진 공격패턴과 비교하여 체크될 수 있음. 예) 시스템파일들을 수정하려는 시도 조사

28 네트워크 보안 개요 회사들은 민감한 작업이 필요한 어플리케이션들을 인터넷 부분으로 계속 이동시키고 있으며 공급자나 고객, 파트너, 이동 근무자들에게 그들의 네트워크를 개방하고 있음. 네트워크가 더 우수한 성능을 가질수록 회사입장에서 직면하는 보안위험은 더욱 커짐. 회사 랜을 경유하는 트래픽의 80% 이상이 외부로부터 유입된 것으로 추정 네트워크에 대한 공격 형태도 더욱 치밀 인터넷이 지원하고 있지 않는 신뢰성과 프라이버시(privacy)에 대한 기대가 커짐. 오늘날 보안은 프로토콜 트래픽의 특정 타입에 대한 허용여부를 결정하기 위해 적절한 장소에 네트워크 장비를 배치하는 수준의 매우 표면적인 레벨에서 언급 네트워크 보안의 취약점을 통해 전송선로를 모니터링하여 가로챌 수도 있고 핵커에 의해 점유되거나 서비스를 혼란시켜 네트워크의 제기능을 못하게 할 수도 있음.

29 네트워크 보안 개요 (계속) 현재까지 시스템 보안은 나름대로 보안에 대응하고 해결책을 준비한 반면에 상대적으로 네트워크 보안은 뒤쳐진 상태

30 네트워크 보안 : TCP/IP 보안의 취약점 TCP "SYN" 공격 정상적인 TCP 통신
SYN 신호를 보내면 상대방이 그에 대해 ACK 신호로 반응하여 통신가능상태인지 확인 상대방 호스트는 ACK 신호를 발생시키게 되므로 그에 따른 자원 사용 이러한 과정을 이용하여 공격자는 지속적이면서 방대한 양의 SYN 신호를 상대방 호스트에 보내게 되어 본래의 기능을 수행하지 못하도록 시스템을 과부하 상태로 만듦.

31 네트워크 보안 : TCP/IP 보안의 취약점 스니핑(Sniffing)
로컬 네트워크 사이의 통신을 감시하며 텔넷, POP, WWW 등의 사용자 ID와 패스워드만 추출저장 획득한 패스워드를 이용하여 다른 시스템에 침입 기타 유용한 정보 획득 공개용 스니퍼(sniffer) 종류 : esniff, solsniff, linsniff, sniffit, tcpdump, snoop, WWW sniff 등

32 네트워크 보안 : TCP/IP 보안의 취약점 IP Spoofing
공격자는 상대방의 시스템을 공격한 후 역으로 추적 당할 수 있는 소지를 막기 위해 자신의 신분을 위장 자신의 IP 주소를 상대방이 신뢰하는 다른 제3의 호스트 IP 주소로 위장 공격자는 제3의 호스트를 서비스거부(DoS : Denial of Service) 공격을 하여 시스템을 마비시킴으로써 상대방과 제3의 호스트와의 통신을 방해

33 네트워크 보안 : TCP/IP 보안의 취약점 TCP/IP에서 보안 계층
보안이 구현되는 위치에 따라 네트워크 계층, 전송 계층, 응용 계층으로 구분


Download ppt "Data Compression 데이터 압축:음성, 비디오, 팩시밀리 전송등과 같은 경우에 중요"

Similar presentations


Ads by Google