<Project> ID/Password 통합 관리 시스템 정리

Google 아니고 Joogle·2022년 6월 14일
0

Project

목록 보기
1/1

📂Project 목적

  • 하나의 Master Key로 여러 개의 ID/Password를 관리
  • 고령의 사용자를 위해 사용자 친화적, 높은 보안성을 가진 Master Key 제작

📂사용한 언어 & Framework

  • Java
  • SWT : AWTSwing과 같이 desktop application을 만들기 위한 도구, 각각의 운영체제에 맞게 더 최적화되어 있어 성능 면에서 swing 보다 우수

📂구현

  • Mater Password 생성 : zxcvbn라이브러리를 통해 사용자가 안전한 MP를 생성할 수 있게 함
  • Master Password 암호화 : *SHA-256으로 암호
  • ID/ Password /URL 입력 : 입력된 ID/Password/URL은 CSV 파일로 저장되어 AES-256으로 암호화한 후 DB에 연결
  • *파싱을 통해 자동 로그인 기능 (각 사이트의 HTML 코드에서 ID/Password 입력에 필요한 부분을 받아와서 DB에 연결)

📂사용 기술

SHA-256, AES-256 참고

  • zxcvbn : 비밀 번호가 얼마나 안전한지 평가
  • SHA-256 : 대표적인 단방향 암호화 기법으로 입력값이 조금만 달라도 출력값이 완전 달라지기 때문에 출력값으로 입력값을 유추하는 것이 거의 불가능
  • AES-256 : 암호화, 복호화에 동일한 키를 사용하는 대칭키 알고리즘으로 높은 안정성과 빠른 속도를 가짐
  • 파싱 : 어떤 페이지 (문서, HTML등)에서 내가 원하는 데이터를 특정 패턴이나 순서로 추출해 가공하는 것을 의미

📂한계점 & 개선방향

  • Master Password를 복구할 수 없음 - 메일 서버를 통해 Master Password가 복구 가능하게 개선
  • 안전한 Master Password 생성을 위해 사용자가 Password를 복잡하게 설정했을 경우 사용자가 기억하기 힘듦 - OTP, 생체 인식등의 방법으로 로그인이 가능하게 개선
  • PC에 크롬익스텐션이 깔려있지 않을 경우 자동로그인 기능을 수행할 수 없음
profile
Backend 개발자 지망생

0개의 댓글