[System] Default Login System
2024. 5. 3. 17:16ㆍ정보보안 및 해킹/웹 개발
식별
많은 데이터 중 특정 데이터를 찾아내는 것
unique, 즉 같은 컬럼의 다른 데이터와 중복되지 않는 유일한 값이어야 한다.
보통 PRIMARY KEY로 등록하여 사용
ex) ID
인증
로그인을 시도하는 사람이 정말로 그 유저인지 확인하는 작업
ex) password, OTP
식별값 : userid
인증값 : userpassword
Hash
일방향 함수. 한 쪽으로 값을 변경할 수 있지만 되돌릴 수 없다.
식별과 인증을 동시에
userid와 password를 하나의 쿼리문에서 검사, userpassword는 평문으로 비교
select * from member where id='$user_id' and pass='$user_pass'
식별과 인증을 따로
userid를 먼저 검사한 후 통과하면 userpassword 검사 , userpassword는 평문으로 비교
$sql = select * from member where id='$user_id';
$res = $sql.execute();
$db_pass = sql.res['pass'];
if(db_pass == $user_pass)
{
//로그인 성공
}
else
{
//로그인 실패
}
식별과 인증을 동시에 + Hash
userid와 userpassword를 하나의 쿼리문에서 검사하되, DB에는 userpassword를 해시로 변환한 값이 있고, 사용자가 입력한 userpassword의 값을 해시로 변환하여 그 두 개의 해시가 같은지를 비교
식별과 인증을 따로 + Hash
userid를 먼저 검사한 후 통과하면 userpassword를 검사하는데, DB에는 userpassword를 해시로 변환한 값이 있고, 사용자가 입력한 userpassword의 값을 해시로 변환하여 그 두 개의 해시가 같은지를 비교
'정보보안 및 해킹 > 웹 개발' 카테고리의 다른 글
[PHP] GET방식으로 parameter 전달 시 space(공백) 포함하기 (0) | 2024.05.11 |
---|---|
[DB] DB에 이미지를 저장하는 여러가지 방법 (0) | 2024.05.06 |
[CSS] 요소 수평 / 수직 정렬하기 (0) | 2024.04.23 |