Do.log
로그인
Do.log
로그인
암호화(AES, SHA)
Dogin
·
2021년 1월 15일
팔로우
3
암호화
3
암호화
암호화는 평문을 암호문으로 바꾸는 과정을 의미한다.
1. 암호화 방식의 분류
1-1. 양방향 암호화
대칭키 암호화(비밀키 암호화)
암호화키와 복호화 키가 같은 암호화
빠른 암복호화하는 장점이 있지만, 비밀키가 외부에 노출되면 기밀성이 확보되지 않는 단점이 있다.
알고리즘의 종류에는 AES, DES, 3DES, SEED, ARIA 등이 있다.
비대칭키 암호화(공개키 암호화)
서로 다른 두 개의 키, 공개키와 개인키를 사용하여 암호화하고 복호화
공개키로 암호화하고 개인키로 해독
(개인키와 공개키의 위치를 바꿔 실행하면 전자서명이 된다.)
개인키를 가진 사람만이 공개키를 통해 암호화된 메세지 해독 가능
처리 속도는 느리나, 키 교환이 용이하다는 장점이 있다.
알고리즘의 종류에는 RSA, DSA 등이 있다.
스트림 기반과 블록 기반 암호화 알고리즘
스트림 기반 암호화는 비트 단위로 암호화 하는 방식
ex) LFST, MUX Generator
블록기반 암호화는 블록 단위로 암호화 하는 방식
ex) DES, AES, SEED
구분
대칭키
비대칭키
키관계
암호화키 = 복호화키
암호화키 ≠ 복호화키
암호화
비밀키
공개키(또는 개인키)
복호화
비밀키
개인키(또는 공개키)
키전송 여부
필요
불필요
키관리
복잡
단순
키갯수
N(N-1)/2
2N
인증
고속
저속
알고리즘
AES, DES, 3DES, SEED, ARIA
RSA, DSA
장점
구현 용이, 변형 가능
암호 해독이 어려움
단점
쉽게 해독 가능, 키 관리가 어렵다
해독 시간이 오래 걸림
1-2. 단방향 암호화
HASH함수
입력 데이터나 메시지를 고정된 길이의 값이나 키로 변환하는 것을 의미
비밀번호에 사용
암호문을 평문으로 되돌릴 수 없다.
입력한 비밀번호가 맞는지 확인하기 위해 복호화 과정을 거치지 않고, 입력한 비밀번호를 다시 암호화하여 저장된 비밀번호와 같은지 비교
알고리즘의 종류에는 SHA시리즈, MD5 등이 있다.
2. 알고리즘의 종류(AES, SHA)
2-1. AES(Advanced Encryption Standard)
고급 암호화 표준(Advanced Encryption Standard) 이라고 불리는 블록 암호 알고리즘
DES를 대체한 암호 알고리즘으로 대칭키 알고리즘이다.
블록 크기는 128비트이고, 키 길이에 따라 128, 192, 256비트로 분류
키 크기에 따라 10/12/14회 Round 수행
라운드키의 수 = N+1 개
참고 :
https://www.crocus.co.kr/1230
2-2. SHA(Secure Hash Algorithm )
미국 국가안보국(NSA)이 1993년에 처음으로 설계했으며 미국 국가 표준으로 지정
HASH 함수를 적용한 단방향 암호화 알고리즘으로 복호화가 불가능
최초 개발된 함수는 SHA-0로, SHA-0을 변형한 함수는 SHA-1로,
그 후에 발표된 SHA-224, SHA-256, SHA-384, SHA-512를 묶어 SHA-2 라고 한다.
SHA-1이 가장 많이 사용되고, TSL, SSL, IPSec, SSH에서 사용
SHA 는 MD5 보다는 느리지만 강화된 보안을 제공한다.
참고 :
https://jusungpark.tistory.com/34
참고사이트
https://www.pentasecurity.co.kr/encryption/
https://m.blog.naver.com/PostView.nhn?blogId=jvioonpe&logNo=220703730770&proxyReferer=https:%2F%2Fwww.google.com%2F
https://www.crocus.co.kr/1230
https://naleejang.tistory.com/218
https://brownbears.tistory.com/73
Dogin
지금 바로 Do!!
팔로우
이전 포스트
[Java]접근제어자(Access Modifier)
다음 포스트
MVC패턴
0개의 댓글
댓글 작성