본문 바로가기
about Security/암호

[현대암호기초] #

by saniii 2020. 11. 1.

# Random numbers 임의 번호

암호화 기반의 네트워크 보안 알고리즘에 대한 무작위 번호의 많은 사용:

공개키 알고리즘용 키 생성(: RSA)

대칭 스트림 암호용 스트림 키 생성

임시 세션 키로 사용하기 위한 대칭 키 생성(: TLS, Wi-Fi, 이메일 보안, IPSec)

재생을 방지하기 위한 인증 프로토콜의 키 배포 시나리오(: Kerberos)

 

# 난수순서에 대한 요구사항

무작위성

균일 분포: 1초와 0초의 발생 빈도가 거의 동일함 (한 문자에 치우치지 않는다.)

독립: 순서에 따라 이어지는 사람은 다른 사람으로부터 유추할 수 없다.

예측 불가능성

이전 값에서 미래 값을 예측할 수 없어야 함

많은 앱의 요구사항 : 통계적으로 무작위적이 아니라 예측불가

True random sequences 통계적으로 독립적임 예측불허 (사용불가)

임의로 보이는 숫자의 순서는 일부 알고리즘에 의해 생성된다.

 

# TRNG, PRNG, PRF

암호 앱은 결정론적 알고리즘 기법을 사용하여 "난수" 생성

진실로 무작위적인 것은 아니지만 ‘randomness’의 많은 기준을 통과할 수 있다.

이러한 숫자를 "의사난수 (pseudorandom)"라 한다.

"의사난수생성기(PRNGs)"로 생성

 

TRNG(True Random Number Generator : 진 난수 생성기)

실제적으로 랜덤한 소스를 입력으로 사용

- 키보드 입력 타이밍 패턴 및 마우스 움직임

- 디스크의 전기적 활동, 시스템 클럭의 순간 값

PRNG(Psedo Random Number Generator : 의사 난수 발생기)

고정값 seed를 입력받아 결정적 알고리즘을 사용하여 출력 비트열 생성)

제한이 없는 비트열 생성하는데 사용

- 알고리즘과 시드를 알고있는 공격자는 비트열 전체를 재생성 가능

PRF(Pseudo Random Function : 의사 난수 함수)

고정된 길이의 의사 난수 비트열을 생산하는데 사용 (: 대칭 암호화 키 및 비수) @ppt

 

암호 PRNG 알고리즘

특수 제작된 알고리즘: 가성 비트 스트림을 생성하기 위해 특수하고 단독으로 설계됨

기존 암호 알고리즘에 기반한 알고리즘 ex: 대칭 블록 암호, 비대칭 암호, 해시 함수 & MAC

 

# RC4 알고리즘

- 1987년 론 리베스트에 의해 설계된 스트림 암호 방식으로 현재 가장 널리 쓰이고 있다.

- 바이트 단위의 작용에 대하여 다양한 키 size를 같는 스트림 암호 방식

랜덤 치환 시용을 기반으로 한다.

암호기간 > 10100

8 ~ 16 기계 작동/출력 바이트

SSL/TLS, WEP, WPA에서 사용

 

 

 

댓글