IT 그리고 정보보안/Knowledge base 227

공개키의 분배 (Public-Key Distribution)

이번엔 공개키의 분배에 대해 알아보자. 공개키 같은 경우는 다른 나쁜놈이 송신자로 속여서 공개키를 전송하면 문제가 생긴다. 이말인 즉슨, 공개키 분배에 문제점이 생긴다 이말이다. 그래서 키 분배 방법이 여러가지 존재한다. 1. Public announcement (공개키 공개 발표) 2. Public available directory (공개적으로 사용 가능한 디렉토리를 이용한 분배) 3. Public-key authority (공개키 기관) 4. Public-key certificates (공개키 인증서) 5. Diffie-Hellman Key Distribution (Diffie-Hellman 키 분배) 하나씩 알아봅시다. 1.Public-key announcement (공개키 공개 발표) 자신의 공..

RSA (Rivest, Shamir, and Adleman) 알고리즘

RSA(Rivest, Shamir, and Adleman) 알고리즘에 대해 알아봅시다. 이름에서 풍겨져 오다 시피, Rivest, Shamir, and Adleman 3명이서 뚝딱뚝딱 만들었다. (1978) 공개키 암호 알고리즘 중 하나로, 역시나 암호, 디지털 서명 모두 사용가능하다. RSA에서는 평문, 암호, 키 모두 숫자이다. 가장 쉽게 설명하자면 이렇다. 평문을 나타내는 숫자에 E를 제곱하여 N 모듈러 연산한다. 그렇다면 여기서 키 쌍은 E와 N은 무슨 역할을 할까요. E와 N이 뭔지만 알면 암호문이 짠하고 나타난다. 그럼 (N,E)은 당연히 공개키겠지? 그르타 공개키가 맞다. 그리고 반대로 D와 N만 알면 복호화가 가능하다. 그럼 개인키는 (N,D)가 될 것이다. N은 엄청나게 큰 숫자중 소수(..

공개키 암호 (Public-Key Cryptography)

비대칭 암호라고도 불림. 기존에 우리가 계속 공부해오던건 대칭키 암호였다. 이놈은 문제점이 좀 있었지. 일단 첫번째, 키 분배가 굉장히 까다로웠다. 두번째, 너무 많은 키를 요구한다. 그런 이유로 공개키 암호화 라는 녀석이 등장한다. 그렇다고 대칭키를 안쓰는건 아니다. 공개키 암호화는 공개키, 비밀키 두가지를 한쌍으로 동시에 사용한다. RSA라는 친구가 특히 많이 사용된다. ( 요건 나중에 설명함) 일반적으로 공개키 알고리즘은 대칭키 알고리즘보다 속도가 좀 느리다. 공개키 암호화는 2가지 기능을 제공하는데, 암호/복호화와 디지털 서명이다. 1. 암호화/복호화 * 송신자는 수신자의 공개키를 이용하여 메세지를 암호화 한다. * 수신자는 송신자의 비밀키를 이용하여 메세지를 복호화 한다. 2. 디지털 서명 * ..

블록 암호 운영 모드 (Cipher Block Modes of Operation)

이번에는 블록암호의 운용 방식에 대해 알아보자. 하나의 키 하에 블록 암호를 반복적으로 안전하게 이용하게하는 절차를 말한다. 여러가지 방식들이 있다. 1. ECB (Electronic Code Book) 한국말로 번역하면 전자 코드북이다. 가장 간단한 구조를 가진 운용 방식이다. 평문을 여러 블록으로 나누어 각각 암호화는 방식을 말한다. Ci = Ek(Pi), Pi = Dk(Ci) 같은 암호화 키를 사용하기 때문에, 만약 여러 블록이 같은 값을 가지면 암호화한 값도 같다. 그래서 반복 공격에 취약하다. (Subject to block replay) 2. CBC (Cipher Block Chaining) 암호 블록 체인 방식이다. 각 블록이 암호화 되기 전에 이전 블록의 암호화 값과 XOR 연산을 하는 것..

AES 알고리즘 (Advanced Encryption Standard)

AES (Advanced Encryption Standard)에 대해 알아봅시다. 한글로 해석하면 고급 암호화 표준 이라는 말이다. 미국 표준 기술 연구소 NIST 에서 2001년 11월에 고안한 알고리즘이다. 미국 정부가 체택한 이후로 인기를 얻어서 많이 사용하고 있다. 효율성, 유연성, 보안을 위해 고안된 알고리즘이다. Rijndael 알고리즘을 기반으로 만들어졌다. (개발자인 존 데이먼(Joan Daemen)과 빈센트 라이먼(Vincent Rijmen)의 이름을 따서 지은 것) 메모리 요구사항이 낮고, 블록 사이즈도 지맘대로(128, 192, 256 비트), 라운드도 지맘대로 정할 수 있다. 기본 구조는 위 그림과 같다. 아래 기본 틀 설명을 보시라. - Block size : 4*Nb - Key ..

대칭키 암호 알고리즘 (Symmetric key Cipher)

이번엔 대칭암호에 대해 알아보겠슴다. Symmetric은 대칭의 대칭되는 뭐 그런 뜻이다. 대칭이라 하니 뭔가 같다? 라는 느낌이 든다. 맞음 대칭키 암호 알고리즘이란, 암호화할 때 키와 복호화할 때 키가 같은 암호 알고리즘이다. 암호화, 복호화 키가 다른 알고리즘은 공개키 암호 알고리즘이라고 하는데.. 그건 나중에 설명드림. 그냥 말로만 들어선 대칭키가 공개키보다 훨씬 위험한 것 같다. 위험하긴 하다. 하지만 공개키보다 훨씬 속도가 빠르기 때문에 실제 통신에서도 대칭키 암호 알고리즘을 사용하고 통신 자체를 암호화 하는 형식으로 많이 사용된다. 대칭키에는 암호화를 하는 단위에 따라 두가지 암호 종류가 있다. 1. Block cipher (블록 암호) 말그대로 일정한 크기의 (n bit) 블록 단위로 쪼개..

암호학에서의 치환 그리고 전위

먼저, 고전적인 암호화 방식인 치환 암호에 대해 알아보자. 말그대로 평문 문자를 각각 대응하는 값으로 치환하는 간단한 알고리즘이다. 여기서 k번 만큼 밀어내어 문자를 대응시키는데 요걸 Shift cipher(시프트 암호) 라고 한다. 그리고 만약 k가 3이라면 그게 Caesar cipher(시저 암호) 이다. 간단하죠? 만약 시저암호화를 시킨다면, 이렇게 되겠죠? 그림 출처 : http://ko.wikipedia.org/wiki/ W를 3칸 뒤로 밀어뿌면 Z이고, A를 3칸 밀어뿌면 D가 나오니 대칭이 딱 맞군. 이런식으로 알파벳을 대응시켜 치환하는 것을 통틀어 치환암호라고 한다. 뭐 대표적으로 위와 같은 그림처럼 대응 시켜 치환한다. 다음은 Permutation/Transposition 에 대해 알아보..

다중문자 암호 - 비제네르 암호(Vigenere ciphers)

이번엔 다중 문자 암호, Polyalphabetic ciphers 에 대해서 알아보자. 문자 하나를 치환하는 것을 monoalphabetic substitutions 단일 문자 치환인데.. 이건 너무 간단해서 딱봐도 잘 풀린다. 좀더 복잡한 암호 치환을 하려면 다중문자 Polyalphabetic substitutions 다중 문자 치환을 쓰는게 좋다. 대표적으로 Vigenere ciphers(비제네르 암호) 라는 것이 있다. 쉽게 설명을 하자면, 키 값이 있고 대칭되는 행렬을 구성해서 키값과 평문을 대응시켜 암호문을 만드는 것이다. 일단 비제네르 암호 행렬은 아래와 같다. 이렇게 생겨 먹었따. 그냥 뭐없다. 한칸씩 밀어서 구성해놓은 것. 자 이제 예를 들어 보자. 키 값이 deceptive 라고 치고 암..

암호학(Cryptography) 개요

암호학에 대해 알아보겠음. 암호학, 암호화란? 음.. 정의를 내리자면, 정보를 보호하는데 가장 널리 사용되는 방법이다. 이거 외에 할말이 없다. 관련된 용어가 몇가지 있다. 뭐 보면 당연한 것들. * Ciphers (암호) : 수학적인 함수를 이용하여 암호화 또는 복호화되는 메세지를 의미한다. * Encryption (암호화) : 메세지의 내용을 숨기거나 위장하는 일련의 과정을 말한다. * Decrpytion (복호화) : 암호화된 메세지를 평문으로 돌리는 과정을 말한다. 그림으로 잠깐 보자면 이렇게 나오겠지. 기본 용어들은 이러하고.. 기본적으로 암호에 대한 몇가지 사항을 알아보자. 1. 보안을 위해서 제한된 암호화 알고리즘은 좋지 않다. - 사용자가 속해 있던 그룹을 떠나면 알고리즘을 반드시 변경해야..

블루투스 (Bluetooth) 기본 개념

1. 등장 배경 - 복잡한 유선 케이블을 생략하고 무선을 도입하고자 하는 목적에서 개발이 시작되어 그 결과 Bluetooth가 나왔다. 저렴한 가격대(칩 가격)와 전력면에서도 고효율이라 현재까지 꾸준하게 쓰이고 있다. 2. 기본 개념 - 다양한 디바이스 간의 무선 통신 기술로, 10m 이내에서 저가, 저전력으로 1:1 혹은 1:다수 통신을 지원하는 기술. 2.4GHZ 대역의 ISM(Unlicensed Industrial Science Medical) Band를 이용하여 1Mbps 정도 되는 전송속도로 무선 통신을 가능하게 해준다. 2-1. Bluetooth의 기본 계층 (프로토콜 스택) HCI를 기준으로 HCI Top 위로 Host 부분, HCI Bottom 아래로 Host controller (Blue..

반응형