자바 데이터 암호화: DES, 3DES, AES, RSA, MD5, SHA1
* 스트림 암호화 방식
: Clear text를 encode한 것을 1문자씩 변환
* 블럭 암호화 방식
: Clear text를 정해진 블럭으로 나눈후 해당 블럭을 암호화
* 대칭키 암호화 방식(old)
: 암호화 키와 복호화 키가 동일
* 비대칭키 암호화 방식(new)
: 암호화키는 공개키, 복호화키는 비밀키, 대칭 암호화에 비해 속도가 느림
주로 개인키를 교환하는 목적으로 많이 사용
A와 B가 Data를 주고 받는다고 할때 :
개인키로 암호화하면 공개키로만 풀 수 있다. 공개키로 암호화하면 개인키로만 풀 수 있다.
A와 B 각각이 공개키/개인키 한쌍씩을 가지고 있으면서
서로에게 공개키만 알려줌
A -> B Data 전송시 :
A는 B의 공개키로 Data를 암호화시켜서 B에게 전송
Data를 받은 B는 자신의 개인키로 Data를 복호화.
B는 A의 공개키로 return값을 암호화시켜서 A에게 전송
return값을 받은 A는 자신의 개인키로 return값을 복호화.
* 메시지 다이제스트
: 원문에 일방향 해쉬 함수를 적용, 일정 길이의 유일한 문자열로 변환하는 방식
복호화 불가능, 전자서명시 사용
- DES
블럭 암호화 방식, 대칭키 암호화 방식
텍스트를 64bit 단위로 나눠 56bit 키로 암호화하는 알고리즘
- 3DES
DES의 짧은 키를 보완한 방식(DES를 세번 적용)
- AES
블럭 암호화 방식, 대칭키 암호화 방식
텍스트를 128bit 단위로 블럭화
128bit, 182bit, 256bit의 키로 암호화
- RSA
블럭 암호화 방식, 비대칭키 암호화 방식
두 개의 큰 소수들의 곱과, 추가 연산을 통해 키 생성
가장 보편적으로 사용
- MD5
블럭 암호화 방식, 메시지 다이제스트
임의의 길이의 입력데이터를 128bit의 출력데이터로 변환
512비트 단위로 알고리즘 수행, 메시지 길이를 512bit 배수로 패딩
단, 원래의 메시지 길이 입력을 위한 64bit는 남겨둬야함
- SHA1
블럭 암호화 방식, 메시지 다이제스트
임의의 길이의 입력데이터를 160bit의 출력데이터로 변환
'컴퓨터공학 > Security' 카테고리의 다른 글
네트워크 보안 관련 (0) | 2017.03.23 |
---|---|
Linux 명령어와 시스템보안 (0) | 2017.03.03 |
암호화의 진화 (0) | 2017.02.17 |
인터넷 쿠키 (0) | 2017.02.17 |
정보보안관련 좋은 레퍼런스 사이트 (0) | 2016.03.03 |
악성코드를 이용한 해킹의 종류 및 대처법 (0) | 2016.02.15 |
Key Derivation Functions (PBKDF2) (1) | 2015.06.24 |
Time Stamp와 MD5 (0) | 2013.02.04 |
자바 AES 128비트 암호화 (0) | 2013.02.04 |
문자열을 SHA-512 방식으로 암호화(단방향 암호화 방식 : 예 로그인) (0) | 2013.02.04 |