사용자 이름은 보안 사용자 계정을 관리하는 웹 사이트 또는 서버에서 귀하를 식별합니다. 그러나이 사용자 이름이 무엇인지는 사용자의 재량과 계정이있는 시스템의 제약에 달려 있습니다. 더 중요한 것은 사용자 이름이 무엇이며 어떻게 저장되는지 이해하면 보안을 유지하는 것이 왜 중요한지 알 수 있습니다. 사용자 이름 관행. 일반적으로 암호 만 안전하게 유지하는 것에 대해 걱정하지만 사용자 이름 선택도 살펴볼 가치가 있습니다.
사용자 이름 및 이메일 주소
사용자 이름은 웹 서버에서 서버의 계정을 사용하여 사용자를 식별하는 데 사용하는 식별 문자열입니다. 사용자 이름의 작동 방식은 서버와 서버에서 사용되는 응용 프로그램 유형에 따라 다르지만 일반적으로 사용자 이름은 ASCII 코드로 구성됩니다. 일반적으로 사용자 이름은 로마 알파벳 문자, 숫자, 구두점, 기호 및 경우에 따라 다음과 같은 공백 문자를 나타내는 ASCII 코드로 구성됩니다. 공백 또는 탭 문자. 이 범위에서 이메일 주소는 사용자 이름 역할을 할 수 있지만 꼭 필요한 것은 아닙니다.
사용자 이름 저장소
서버에서 사용자 계정을 활성화하면 일반적으로 데이터베이스의 서버에 저장됩니다. 데이터베이스 내에서 사용자 이름은 인증 목적으로 생성 한 비밀번호와 함께 존재합니다. 예를 들어, 서버 데이터베이스 내에 사용자 이름과 해당 암호를 포함하는 테이블이있을 수 있습니다. 이메일 주소를 사용자 이름으로 사용하는 경우 서버는 로그인을 시도하고 해당 비밀번호를 찾을 때 데이터베이스에서 이메일 주소를 조회합니다. 그런 다음 암호를 입력하면 입력 한 내용이 데이터베이스에있는 내용과 일치하는 경우에만 서버에서 액세스를 허용합니다.
해싱
데이터베이스에 사용자 이름을 저장하는 데있어 한 가지 문제는 추가 조치없이 매우 안전하다는 것입니다. 데이터베이스에 침입 한 사람은 모든 사용자 이름과 암호 조합에 액세스 할 수 있습니다. 따라서 데이터베이스는 종종 암호 정보를 "해시"합니다. 즉, 계정을 만들 때 데이터베이스는 암호 문자열을 처리하고 다른 값을 생성하는 해시 함수를 통해 생성 된 암호를 실행합니다. 서버는이 해시 값을 데이터베이스에 암호로 저장합니다. 이 프로세스는 되돌릴 수 없습니다. 해커는 해시 값에서 암호를 알아낼 수 없습니다. 로그인하면 암호가 해시되고 데이터베이스의 해시 값과 비교되어 해커가 서버에서 읽을 수있는 일반 암호를 저장하지 않고 동일한 인증 결과를 제공합니다.
안전한 사용자 이름 관행
따라서 사용자 이름이 반드시 암호는 아니지만 암호 일 수 있습니다. 이메일과 같은 특정 서비스의 경우 이메일 주소가 사용자 이름 일 가능성이 높습니다. 그러나 모든 계정에 대해 이메일을 사용하는 것이 반드시 모범 사례는 아닙니다. 해커가 하나의 계정에 침입하여 비밀번호를 결정하면 이메일 주소를 찾아서 해당 비밀번호를 시도하거나 이메일 주소를 사용자 이름으로 사용하는 다른 계정을 시도 할 수 있습니다. 이를 방지하는 한 가지 가능한 방법은 여러 서비스에서 서로 다른 사용자 이름을 사용하고 암호 정보를 암호화하거나 해시하는 서비스 만 사용하는 것입니다.