분류 전체보기 160

[정보보안] 정보보안에서의 3가지 보안목표(기밀성, 무결성, 가용성)에 대하여

정보보안의 보안목표는 크게 3가지로 나뉜다. 기밀성(C),무결성(I), 가용성(A)이다. 1) 기밀성(Confidentiality) 기밀성이란 인가된 사람에게 정보의 접근 및 노출을 허용하는 것을 의미한다. 2) 무결성(Integrity) 무결성이란 정보를 부적절한 변경 혹은 파괴로부터 보호하는 것을 의미한다. 3) 가용성(Availability) 가용성은 정보에 대한 적절하고 신뢰성 있는 접근과 사용을 보증하는 것을 의미한다. 기밀성(Confidentiality)는 무결성(Integrity)과 가용성(Availablility)에 비해 소극적인 공격을 받는다. 그저 정보에 대한 접근에 중점을 둔다. 그러나 무결성과 가용성에서는 정보의 변경과 탈취 등의 적극적인 공격이 이루어진다.

Computer Science 2023.12.19

[정보보안] MDC / MAC의 차이점

MDC(modification detection code)는 메세지의 변경, 즉 무결성과 관련된 코드이다. 반면 MAC(message authentication code)는 메세지의 인증과 연관되어 있는 코드이다. MDC에서는 해당 메세지가 변경되지 않았다는 것을 보장하기 위하여 메세지와 MDC(메세지 다이제스트)를 함께 진행한다. 단방향 해시함수를 사용하여 Hash시 메세지와 키를 같이 hashing한다는 점이 특징이다. 반면 MAC에서는 대칭키 암호 기술을 사용하여 메세지에 대한 인증 코드를 생성한다. 주로 무결성 검증과 함께 메세지의 출처를 인증하는 데에 이용한다. Q1) MDC를 써서 메세지의 무결성을 보장하고자 할 때, 메세지는 보안되지 않은 채널로 보내도 되지만 MDC는 보안된 채널로 보내야 ..

Computer Science 2023.12.18

[정보보안] DES에서 쇄도효과(avalanche effect) 와 완비성(completeness)에 관하여

블록암호가 지녀야 할 2가지 성질로 쇄도효과(avalanche effect)와 완비성(completeness)가 있다. 쇄도효과는 평문에서 작은 변화가 암호문에서 상당한 변화를 야기함을 뜻한다. 완비성은 암호문의 각 비트는 평문의 많은 비트들에 의존할 필요가 있음을 의미한다. 이 관점에서 DES를 평가해보자면, 쇄도효과는 또한 DES의 취약점을 간과하게 만들었다. DES의 키 길이가 56비트로 제한되어 있는 점은, 시간이 지남에 따라 컴퓨팅 능력의 증가로 쉽게 해독될 수 있는 위험에 처하게 되는데 일조하였다. 완비성 측면에서 DES를 평가하자면, 56비트 키 길이는 현대의 컴퓨팅 능력에 의해 쉽게 깨질 수 있는 수준이 되었다. 이는 AES의 등장 배경이 되는 데에 기여하였으며, 실제로 DES는 현대 암호..

Computer Science 2023.12.17

[정보보안] P-box(Permutation Box) & S-box(Substitution Box)에 대한 비교

P-Box (Permutation box)와 S-Box (Substitution box)는 암호학에서 데이터를 암호화하는 데 사용되는 두 가지 주요 구성 요소이다. 이들은 특히 블록 암호에서 중요한 역할을 한다. 각각의 특징과 차이점을 중심으로 살펴보자. - P-box (Permutation Box) 기능: P-box의 주요 기능은 데이터 비트의 위치를 재배열하는 것이다. 이것은 데이터의 비트 패턴을 변경하지 않고 위치만 변경한다. 목적: P-box는 데이터에 대한 혼돈을 만들어 암호화 과정의 복잡성을 증가시킵니다. 이는 암호를 더 안전하게 만드는 데 도움이 됩니다. 작동 방식: 데이터 블록 내의 비트들이 재배열되어 새로운 패턴을 형성한다. 이 과정은 고정된 패턴이나 암호화 키에 의해 결정된 규칙에 따라..

Computer Science 2023.12.16

[정보보안] 암호학적 해시함수의 3가지 충족기준(프리이미지 저항성, 제 2 프리이미지 저항성, 충돌저항성)

암호학적 해시함수는 3가지 기준을 충족해야 한다. 프리이미지 저항성: h(M)이 주어졌을 떄, 그것이 어떤 M으로부터 나왔는 지 찾기 어려워야 한다 제 2 프리이미지 저항성: M과 같은 hash값을 갖는 M'를 찾기 어려워야 한다 충돌 저항성: 같은 hash값을 갖는 메세지 쌍(M,M')를 찾기 어려워야 한다. >> 각각 M, M' (M,M')를 찾기 힘들도록 설계해야 한다는 의미이다.

Computer Science 2023.12.15

[정보보안] RSA Structure에 대하여(키 생성, 암호화, 복호화)

RSA는 비대칭키 암호화 시스템으로, 공개키와 개인키를 이용하여 암호화 및 복호화를 진행하는 알고리즘 시스템이다. RSA structure에서 공개키와 개인 키는 한 쌍을 이루는데, 공개키로 암호화 된 내용은 개인키로 해독되고, 개인키로 암호화된 내용은 공개키로 해독이 된다. key는 다음과 같은 과정을 통해 생성된다. 먼저 소수 p,q를 고른다. n= p * q 이고, q(n) = (p-1) * (q-1) 로 설정한다. e는 p-1과 q-1에게 서로소인 수를 설정하며, d = e^-1 mod q(n)이 된다. key 설정에서 n,e,d를 제외한 나머지 인수들은 사용하지 않는다. RSA structure에서 암호화는 x = a^e(modN)을 통해 이루어지고, 반대로 복호화 과정 a' = x^d (mod..

Computer Science 2023.12.14

[c] 구조체를 정의하고, 데이터들을 입력받아 결과값을 산출하기

구조체를 정의하고, 데이터들을 입력받아 결과값을 산출하는 예제이다. info구조체는 이름, 가격으로 설정하였고, 아이템 구조체에는 아이템과 시즌별 판매량을 산출하였다. 메인함수에서는 아이템의 이름, 가격, 시즌별 가격을 입력받아, for문을 통해 시즌별 가격을 모두 합하여 (4시즌의 합을 더하여) 일년의 수입을 측정하였다. 결과는 items.items.name과 연간 판매량으로 나누어 계산하였다.

Algorithm 2023.12.13

[c] 연산 구조체를 정의하고, 변수를 생성하여 구조체를 반환하기

구조체를 정의하고, 그 구조체 내에 덧셈 멤버를 추가하여 변수 내에서 불러오는 예제이다. calcType이라는 구조체를 정의하여 addition, subtraction, multiplication이라는 멤버를 추가하였다. clacType 구조체 내에서 calc_all이라는 변수를 설정하여, 구조체 내의 함수를 정의하였고, 결과를 반환시켰다. 메인함수에서는 결과값을 변수형식으로 입력받아, 덧셈, 뺄셈, 곱셈 연산을 수행하였다.

Algorithm 2023.12.12

[python] 백준 2822 : 점수 계산

https://www.acmicpc.net/problem/2822 2822번: 점수 계산 8개 줄에 걸쳐서 각 문제에 대한 참가자의 점수가 주어진다. 점수는 0보다 크거나 같고, 150보다 작거나 같다. 모든 문제에 대한 점수는 서로 다르다. 입력으로 주어지는 순서대로 1번 문제, 2번 문 www.acmicpc.net 백준 2822번 문제인 점수계산 문제이다. 8개의 입력값을 받아, 최대값 5개의 합을 출력하고 그들의 인덱스를 찾아 인덱스 번호를 공백없이 출력해야 한다. #백준 2822 점수 계산 scores = [] for i in range(8): score = int(input()) scores.append((score,i)) scores.sort(reverse=True, key=lambda x: ..

Algorithm 2023.12.11

[정보보안] AES(Advanced Encryption Standard)에 대하여

AES(Advanced Encryption Standard)는 2001년 미국 국립기술표준원에서 공표한 대칭키 암호 알고리즘이다. AES의 선정기준으로는 안전성, 비용, 구현 효율성이 있다. AES는 128비트 평문을 128비트 암호문으로 출력하는 알고리즘으로서, non-feistal 알고리즘에 속한다. 10,12,14라운드를 사용하며, 각 라운드는 128,192,256비트 키 크기를 가지고 있다.(마스터키 기준, 라운드 키는 모두 128비트로 일정하다) AES 암호화 과정은 다음과 같이 이루어진다.키 확장(Key Expansion): 사용자의 암호키를 받아 내부적으로 사용될 여러 라운드 키로 확장한다.초기 라운드(Initial Round): 평문에 첫 번째 라운드 키를 적용한다.반복 라운드(Repeat..

Computer Science 2023.12.10
반응형