성장 일기/쌍용교육센터 / / 2023. 4. 16. 12:36

0414/DBMS 암호화

쌍용교육센터에서 공부한 내용을 정리하며 기록하는 글이고 주관적인 생각이 들어갈 수 있습니다.
잘못된 내용이나 피드백 및 생각 공유는 언제든 환영입니다.
댓글로 남겨주시면 확인 후 수정하겠습니다.
내용에 대한 소스 코드는 https://github.com/2jaehoon/sangyoungjsp에 올려두었습니다.

 

저장정보의 중요도

* DBMS 저장되는 정보가 일반문자열(plain text)인 경우

  - 단순 조회로 모든 정보가 확인 가능 => 정보 보호 안됨
  - 사이트의 관리자/관계자는 사용자의 모든 정보를 확인 할 수 있다.
  - 데이터 탈취 시 모든 정보를 손쉽게 확인 가능

  - 저장되는 정보의 중요도 따라 암호화 작업을 해야 한다. => 정보 보호 수행 ( 비용과 관련 )
  - 아무도 확인하지 못하도록 만들 때 => 일방향 해시(SHA)로  저장
     PASS, 주민등록번호
  - 관리자등급에 따라 데이터 확인이 가능해야 할 때 => 복호화가 가능한 암호화
      id, phone, name, email
  -일반문자열
      birth, tel_flag, email_flag, gender, zipcode, addr1, addr2

* DBMS 저장되는 정보가  암호문일 경우

  - 식별이 불가능

- test(일반 문자열)  =>  gdb21LQTclANtvYMkaskfjlsak==(암호화된 문자열)

  일반 문자열에서 암호화된 문자열로 가는 것
  일방향 해쉬  ( SHA ) 원래의 문자열을 알 수 없다.
  - test(일반 문자열)  <=> gdb21LQTclANtvYMkaskfjlsak==(암호화된 문자열)

    일반문자열에서 암호화로 갈수 있고, 복호화로 갈 수 있는 암호화 ( DEC, AES) 
    원래의 문자열로 돌아갈 수 있다. 

암호화

  - DBMS에 저장된 데이터를 보호하기위해 수행.
  - java.security package에서 관련 클래스를 제공.
  - SHA(Secure Hash Algorithm) 와 복호화가 가능한 암호화를 사용할 수 있다.
    SHA : 일방향 Hash : 복호화가 가능하지 않은 암호화   

    DES : 1970년개발, 대칭키, 잘 만들어진 암호화 알고리즘
  - java에서는 SHA algorithm으로  
    MD2, MD5, SHA-1, SHA-224, 256,384,512 를 지원한다. 
  - 민감한 개인정보를 처리할 때 사용
  - 일반문자열(plain text)이 암호화문자열(cipher text)로 변환되면 문자열의 길이가
    길어진다.(암호화 알고리즘에 따라 생성되는 길이가 달라진다.)
  - 생성되는 문자열은 모든 문자열에 대해 중복되지 않는 다른 문자열이 만들어진다.

MessageDigest md=MessageDigest.getInstance("사용할 알고리즘");
// 사용할 알고리즘 MD2, MD5, SHA-1, SHA-224, 256,384,512
// 일반 문자열( plain text)을 cipher text로 변환
md.update( 일반문자열.getBytes() ); // 암호화 encryption
// 암호화된 문자열을 사람이 사용하는 문자로 변경
// Base64 encoder 사용
Base64 b=new Base64();
new String( b.encode( md.digest() ));
// 자바에서 사용하는 문자열로 생성
// 사람이 알아볼 수 있는 문자열 변환
// 사람이 알아볼 수 없는 문자열(일반문자열에서 암호화된 문자열)

 

* 데이터에 따른 중요도

 

회원가입 흐름

 

 

'성장 일기 > 쌍용교육센터' 카테고리의 다른 글

0417/다운로드, 웹 동작 방식  (0) 2023.04.18
0415/FileUpload  (0) 2023.04.16
0413/DBCP, 로그인 흐름  (0) 2023.04.13
0412/forEach, import, VO 출력  (0) 2023.04.13
0411/JSTL, core  (0) 2023.04.13
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유