[암호화란?]
암호화는 입력받은 TEXT데이터를 알아볼 수 없게 암호처럼 만드는 것을 이르는 말이야.
여기서 암호화된 데이터를 다시 알아볼 수 있게 바꾸는 것을 복호화라고 해.
[DB 암호화의 필요성]
- 개인정보보호법이 고객의 개인정보를 소홀히 관리할 경우 강력한 처벌을 주문
- 암호화하지 않은 평문의 고객정보가 DB 해킹으로 외부로 유출될 경우, 대규모 집단소송
- 경우에 따라 경영진의 형사처벌
개발자는 그저 개발을 할 뿐이지만, 회사 안에서 개발을 한다는 건, 제품을 만들어서 팔고,
그 제품을 사용하는 소비자가 있다는 뜻이겠지.
그러므로 개발하는 프로그램 또한 법률로부터 자유로울 수 없어.
법에 저촉되면 상당한 불이익, 혹은 제재등이 있을 수 있으니 개발을 할 때도 이 점을 유의할 필요가 있겠지.
DB암호화가 성능향상에 영향을 주는 건 아니지만, 이런 법률적인 문제를 예방할 수 있기 때문에 굉장히 중요한 부분이라고 생각해.
(물론 윤리적으로도 개인정보나 중요한 정보들이 외부로 유출되면 안되겠지!)
[암호화 방식]
암호화 방식은 암·복호화를 처리하는 물리적 위치에 따라 구분 할 수 있어.
1. API방식
데이터베이스 솔루션 외부의 어플리케이션에서 데이터의 암/복화화를 수행
2. Plug-in 방식
데이터베이스 서버에 제품을 설치->암/복호화 수행,
3. TDE방식
DBMS 암호화 기능을 이용하여 데이터 파일 저장시 암호화
파일에 저장된 내용을 메모리로 가져올 때 DBMS에 의해 복호화
4. 파일암호화 방식
데이터뿐만 아니라 비정형 데이터 암호화적용가능
5. 하드웨어방식
별도의 하드웨어 장비를 외부에 설치
[암호화 알고리즘 종류]
- 양방향 알고리즘: 복호화 가능(대칭키 암호화, 비대칭키 암호화)
- 단방향 알고리즘: 복호화 불가
양방향 알고리즘
2021/01/22 - [DATABASE] - [DATABASE] 대칭키와 비대칭키 암호 알고리즘(양방향 알고리즘)
단방향 알고리즘
2021/01/23 - [DATABASE] - [DATABASE] SHA 해시 함수(단방향 알고리즘)
참고
1. m.blog.naver.com/PostView.nhn?
2. blogId=futureds&logNo=90158653671&proxyReferer=https:%2F%2Fwww.google.com%2F
3. library.gabia.com/contents/infrahosting/9071/
그 외 다수 블로그 정독
'DATABASE' 카테고리의 다른 글
[DATABASE] SHA 해시 함수(단방향 알고리즘) (1) | 2021.01.23 |
---|---|
[DATABASE] 대칭키와 비대칭키 암호 알고리즘(양방향 알고리즘) (0) | 2021.01.22 |
[DATABASE]JDBC와 DBCP (0) | 2021.01.22 |
트랜잭션에 대한 MyISAM과 InnoDB의 차이 (0) | 2021.01.21 |
[DATABASE] 트랜잭션이란? (0) | 2021.01.21 |