정보관리기술/정보보안

RSA vs DSA

아이티신비 2024. 1. 28. 14:20

문제5) RSA(Rivest-Shamir Adleman)알고리즘과 DSA(Digital Signature Algorithm)를 비교하여 설명하시오.

 

답)

 

 

1. 서로 다른 두 키의 쌍을 이용한 비대칭키 암호화의 개요

가. 비대칭키 암호화의 개요

  • 개인키(비밀키)를 기반으로 공개키를 생성하고 공개키로 암호화한 데이터는 개인키로 복호화가 가능한 양방향 암호화 알고리즘

 

나. 비대칭키 암호화의 정의

인수분해
  • 소인수 분해를 할 대상의 숫자가 길어질수록 개인키를 찾기 어려운 성질을 이용한 암호화 알고리즘
이산대수
  • 디피헬만 키분배 방식을 이용하여 소수 P, 원근시 G와 개인키 X 를 이용하여 역으로 X 를 찾기 어려운 문제를 이용한 암호화 알고리즘
타원곡선
  • 타원곡선의 수학적 성질을 이용하여 임의값 G의 좌표, 개인키 X, 공개키 Q일 때 G와 Q를 통해 X를 구하기 어려운 문제를 이용한 암호화 알고리즘
  • 비대칭키 암호화에는 RSA, DSA가 가장 많이 사용, 최근 블록체인에서는 ECDSA 알고리즘 사용

 

2. RSA 알고리즘과 DSA 알고리즘 개념 및 특징 비교

가. RSA 와 DSA 의 개념 비교

RSA
(Rivest-Shamir-Adleman)
  • 미국 MIT 에서 개발한 공개키 암호화 알고리즘
  • 소인수 분해 기반 "공개키와 비밀키" 를 생성하고 MOD 연산을 통해 암호화/복호화 하는 알고리즘
DSA
(Digital Signature Algorithm)
  • NIST 에서 개발되고 미국정부에 공식적으로 승인된 전자서명 알고리즘
  • 이산대수 문제 기반 "공개키와 비밀키" 를 생성하고 개인키로 암호화 하고 공개키로 검증하는 알고리즘
  • RSA와 DSA는 소수를 사용한다는 점은 유사하지만 다양하고 분명한 차이점이 존재

 

나. RSA 와 DSA 의 특징 비교

알고리즘
RSA
(Rivest-Shamir-Adleman)
DSA
(Digital Signature Algorithm)
공통
두 소수 Q,P 크기가 클수록 안전함
암호화 원리
소인수 분해 기반
이산대수문제 DLP 기반
구현 난이도
쉬움
어려움
암호화 속도
느림
RSA 보다 빠름
서명 속도
느림
RSA 보다 빠름
검증 속도
빠름
RSA 보다 느림
주요 활용
전자문서 암복호화
전자서명
  • 서명에는 DSA 가 빠르고 검증에는 RSA가 빠르기 때문에 장점에 적합한 알고리즘 도입 필요

 

3. RSA 알고리즘과 DSA 알고리즘 절차 및 절차상세 비교

가. RSA 알고리즘 와 DSA 알고리즘 절차 비교

 
RSA
DSA
  • RSA 는 암호화를 DSA 는 서명을 통한 검증을 수행하는 차이점 존재

 

나. RSA 알고리즘 와 DSA 알고리즘 절차 상세 비교

 
구분
항목
설명
RSA
키생성
  1. 두 소수 p, q 를 준비
  2. p - 1, q - 1과 각각 서로소인 정수 e 를 준비
  3. ed를 (p-1)*(q-1)으로 나눈 나머지가 1이 되도록 하는 d를 탐색
  4. N=p*q를 계산한 후 N과 e를 공개(공개키), 탐색된 d는 숨김(개인키)
암호화
1.평문 m을 x = a^e(mod N)으로 암호화, (이때, m<N)(e공개키로 암호화)
복호화
  1. 받은 암호문 x를 a' = x^d(mod N)으로 복호화(d 개인키로 복호화)
DSA
키생성
  1. 소수 q를 선택
  2. p-1 mod q 가 0이 되도록 p 선택
  3. 1<g<p, g**q mod p =1 및 g = h**((p-1)/p) mod p 가 되도록 정수 g를 선택
  4. x(개인키)는 0<x<q 가 되도록 정수를 선택
  5. y(공개키)는 g**x mod p로 계산
서명
  1. {1,...,q-1} 사이의 랜덤한 수 k를 선택
  2. 평문 m을 해시함수를 통해 해시화 (r = (g**k mod p) mod q)
  3. 개인키(x) 결합하여 서명 생성(s = k-1(H(m) + xr)) mod q)
검증
  1. 서명정보를 수신
  2. 공개키(y)를 이용하여 서명 복호화
  3. 서명때와 동일한 해시함수를 이용하여 메시지 해시화
  4. 복호화한 해시값과 비교
  • 현재 RSA 와 DSA를 이용하는 암호화 및 서명방식이 가장 많음, 양자컴퓨터의 등장에 대비 필요

 

4. RSA 알고리즘과 DSA 알고리즘 암호화 적용 시, 고려사항

 
  • 공개키 기반의 알고리즘은 더이상 안전하지 않음
  • 충분히 큰 양자를 처리하는 컴퓨터가 등장하기 전에 미리 대비 필요

 


 

공감과 댓글은 아이티신비에게 큰 힘이 됩니다.

블로그 글이 유용하다면 블로그를 구독해주세요.♥

 

 

'정보관리기술 > 정보보안' 카테고리의 다른 글

블록 암호 모드  (0) 2024.01.30
정보보호 및 개인정보보호 인증제도  (2) 2024.01.28
접근 통제 모델  (3) 2024.01.28
식별(Identification)과 인증(Authentication)  (3) 2024.01.28
인젝션(Injection)  (3) 2024.01.28