본문 바로가기

전체 글669

이산수학 - 집합, 집합 연산, 합집합, 교집합, 차집합, 대칭차집합, 대수 법칙 1. 기본사항  집합론에서 집합과 원소는 무정의용어이다. 무정의용어란 정의 없이 사용하는 용어를 가리키며, 직관적으로 이해할 수 있고 지금까지 알려진 다른 용어로 정의하기 힘든 대상을 표현하기 위해 사용된다.  S가 집합이라고 할 때, a를 S의 원소이고, b가 S의 원소가 아니라면 다음과 같이 표기한다.  a ∈ S, b ∉ S 다음의 항목들이 집합인지 아닌지 판별해보자.  1) { a, b, c} 2) a 3) {{a}, b} 4) { a, b, a, c}  2)는 집합 표시가 없으므로 집합이 아니다. 4는 원소 a가 중복되므로 집합이 아니다.  집합을 서술하기 위해서는 원소나열법과 조건제시법을 사용한다.  1) 원소나열법: S = {1, 2, 3}2) 조건나열법: S = {x | 0 ≤ x  집합의.. 2024. 5. 13.
이산수학 - 증명, 직접증명법, 수학적 귀납법, 간접증명법, 다양한 증명방법 기본사항  일반적으로 타당성을 입증하는 데는 증명이 사용된다. 증명은 주로 "P이면 Q이다"라는 형식을 따르게 되는데, 전제가 참일 때 결론이 참임을 논리적으로 보일 수 있다면 많은 사람이 Q가 타당하다고 받아들이게 될 것이다.  그렇다면 P가 참임은 어떻게 증명해야 할까? 수학적으로 참으로 알려진 많은 사실이 P가 될 수 있겠지만, 이들 역시 다른 전제의 동무을 받아 증명되어야 이용할 수 있을 것이다. 이렇게 계속 거슬러 올라가게 되면 더 이상 증명할 수 없는 사실을 만나게 되는데 이들을 공리라 한다.  공리 어떤 다른 명제들을 증명하기 위해 전제로 사용되는 가장 기본적인 가정으로, 별도의 증명없이 참으로 이용되는 명제를 공리라고 한다.   예시 1) 두 점이 주어졌을 때, 두 점을 통과하는 직선을 그.. 2024. 5. 13.
대칭키 공개키 관리, 디피-헬먼 키 교환 프로토콜, 공개키 기반 구조 PKI 0. 문제대칭키 암호에서 비밀키는 송수신자가 서로 나누어 가지기 어렵다는 문제가 있다. 그래서 공개키 암호를 이용해 비밀키를 암호화해서 분배할 수도 있지만, 공개키 암호 역시 공개키를 분배할 때 실제로는 다양한 위협요소가 존재한다.1. 대칭키 암호의 키 관리앨리스(Alice)와 밥(Bob)이 있다고 가정하자. 대칭키를 사용하는 암호 시스템에서 앨리스가 밥에게 메시지를 보내고 싶다면, 앨리스는 밥과 비밀키를 공유해야 한다. 두 사람이 직접 만난다면 제3자 모르게 비밀키를 정할 수 있을 것이다. 하지만 그렇지 않다면? 비밀키를 어떻게 공유할 것인가가 문제가 된다. 우리는 공개키 암호로 비밀키를 암호화하면 안전한 키 공윺가 가능하다는 것을 이미 알고 있다. 하지만 공개키 암호를 안전하게 사용하는 것도 간단하지.. 2024. 5. 6.
공개키 암호: 개념, 소인수분해 문제, 이산대수 문제, 타원곡선 문제, RSA, ElGamal 알고리즘 1. 공개기 암호의 개념공개키 암호는 암호화와 복호화에 두 개의 서로 다른 공개키와 개인키를 사용하는 암호 방식이다.C = Ek(P)P = Dk(C) 이때 E는 암호화 함수, D는 복호화 함수를 의미한다. 공개키와 개인키는 언제나 한쌍으로 존재한다. 공개키는 누구나 이용할 수 있도록 공개하고 개인키는 자신만 이용하도록 공개하지 않는다. 만약 A가 B에게 보낼 메시지를 암호화하려면 B의 공개키를 이용하는 것이고, 이 암호문을 받은 B는 자신의 개인키를 이용하여 복호화한다. 공개키 암호는 비대칭키라고도 한다.2. 기반 문제어떻게 키를 공개했는데도 암호화 메커니즘이 동작하는지 의문이 들 수 있다. 핵심은 공개키 암호 알고리즘이 수학적으로 어려운 문제들에 기반을 두고 있다는 것이다. 어려운 문제라는 것은 무.. 2024. 5. 6.
대칭키 암호: 개념, 블록 암호, 파이스텔, SPN, 스트림 암호, DES, AES 1. 대칭키 암호의 개념암호화와 복호화에 하나의 같은 비밀키를 사용하는 암호 방식C = Ek(P)P = Dk(P)이때 E는 암호화 함수, D는 복호화 함수를 의미한다.다양한 이름으로 불린다: 대칭키 암호, 비밀키 암호, 단일키 암호, 관용 암호대칭키 암호는 블록암호화 스트림 암호로 나눌 수 있다.먼저 블록 암호부터 살펴보자.2. 블록 암호개념평분을 고정된 크기의 블록으로 나누어 각 블록마다 암호화 과정을 수행하여 블록 단위로 암호문을 얻는 대칭키 암호 방식예를 들어 다음과 같이 하나의 평문을 4개의 블록으로 나눈뒤, 각 블록을 대칭키 암호 방식으로 각각 암호화한다.여기서는 하나의 키를 이용하여 모든 블록을 암호화한다. 암호화된 각 블록을 다시 연결하면 원래 평문에 대한 암호문이 완성된다.블록 암호 알고리.. 2024. 5. 6.