
- 사용자는 기억하기 쉬운 비밀번호를 선호하지만, 보안성을 높이려면 복잡한 조합이 필수
- 직접 만들어도 실제로는 보안성이 낮은 경우가 많아 AI 추천 방식이 필요
- AI는 사용자 입력을 분석하는 게 아니라 난수 기반으로 누구도 예측할 수 없는 비밀번호를 자동 생성
- 추천 프로세스는 생성 규칙 설정 → 난수 생성 → 유효성 검증 → 암호화 저장 → 사용자 선택 순서로 흐름이 이어짐
생성 규칙 : 최소 12자 이상, 대소문자·숫자·특수문자 포함, 동일 문자 3개 이상 연속 사용 금지, 사전에 있는 단어 사용 금지 등 기본 규칙을 미리 설정
난수 생성 : Python의 secrets 라이브러리로 규칙에 맞는 난수를 생성. LSTM이나 GAN 같은 머신러닝 모델을 활용하면 취약한 패턴을 학습해서 더 안전한 난수를 만들 수 있음. 생성된 비밀번호 예시 : zQ7%j2P#tR9$kL5!
유효성 검증 : 생성된 난수가 설정한 규칙을 충족하는지 다시 한번 확인
암호화 저장 : 사용자가 선택한 비밀번호는 bcrypt로 해싱해서 저장. 이때 솔트(salt)라는 임의의 값을 추가해 동일한 비밀번호도 매번 다른 해시값이 생성되도록 함. 이렇게 하면 해커의 레인보우 테이블 공격을 방어할 수 있음