key stretching1 [Authentication] 인증 private한 api는 물론이고 public한 api역시 기본적인 인증을 요구한다. private api의 경우 접근 가능한 클라이언트를 제한해야함으로 당연히 인증 엔드포인트를 구현해야하지만, public의 경우 역시 접근 횟수 제한, 남용 방지, 통계등의 이유로 인증엔드포인트가 필요하다. 기본적으로 가입 시 사용자의 아이디를 그 대로 데이터베이스에 저장하지 않고 암호화 시켜서 저장한다. 이 때 주로 단방향 해시 함수를 사용하는데, 이렇게 암호화해서 저장하는데는 크게 두가지의 이유가 있다. 첫번째 실제 해커에게 데이터베이스가 해킹당할 경우 모든 사람의 개인정보 및 비밀번호가 유출되는데 사람들은 보통 여러 사이트의 비밀번호를 똑같은 것으로 설정해서 사용하기 때문에 더 큰 피해로 번질 가능성이 크다. 그렇.. 2021. 4. 13. 이전 1 다음