database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 28212 게시물 읽기
No. 28212
password 암호화 방식이 문제입니다.
작성자
진성일
작성일
2009-05-15 01:58ⓒ
2009-05-15 02:02ⓜ
조회수
7,267

기존서버에 mysql 5.0.67 이 설치되어있습니다.

신서버에도 mysql 5.0.67 이 설치되어있는데, 사용자 및 관리자의 패스워드 오류가 발생합니다.


두 서버에서 update admin set adpw=password('1234'); 로 처리한 결과 아래와 같이 각기 다르게 출력됩니다.

구서버 446a12100c856ce9
신서버 *A4B6157319038724E3560894F7F932C8886EBFCF


위처럼 각기 다르게 기록이 됩니다.

아마 기존섭의 경우 mysql 버전은 v5.0.67 이나 패스워드를 구암호화 방식으로 사용하도록 설정이 되어 있어서 생긴 현상이 아닐까 추측해봅니다.

해결방법은 신서버에서 old_password 를 사용케하면 될 것 같은데...

my.cnf 설정을 건들지 않고..
기존서버에서의 pasword 함수부분을 신서버에 맞게 컨버팅하여... 신서버에 import 할 수는 없는건지 궁금합니다

이 글에 대한 댓글이 총 2건 있습니다.

http://www.redhat.com/archives/rhl-devel-list/2007-September/msg00351.html

허성욱(RedBaron)님이 2009-05-18 12:07에 작성한 댓글입니다.

일단 brute-force방식으로 뚫지 않는 이상, symmetric하지 않은 mysql password hashed 결과를 역으로 풀어내기는 어렵습니다.

유사 상황에서, 저는 다음과 같이 해결했습니다.

(1) 새로운 패스워드 해쉬 결과를 위해 password컬럼을 확장합니다.
(2) 사용자가 로그인을 시도할 경우, old_password로 hash해서 비교합니다.
(3) 2의 결과가 성공했을 경우, 새로운 password함수로 사용자 입력값을 해쉬해서 기존 값을 대체합니다.
(4) 2의 결과가 실패했을 경우, 새로운 password함수로 hash해서 비교합니다.

이렇게 한동안 운영하면, 기존 패스워드 해쉬값을 모두 새로운 해쉬값으로 바꿀 수 있습니다. 적당한 시기가 지난 후에, 위의 로직에서 2~3 부분을 제외해도 되겠지요.

박현우(lqez)님이 2009-05-25 14:09에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
28216auto_increment에서 갑자기 자동증가값이 max로 변하는 현상 [1]
김정운
2009-05-18
6438
28215현재 사용중인 DB의 스토리지 엔진을 보는 명령어가 있나요? [2]
유재훈
2009-05-18
6298
28214MY-SQL INSERT 시 에러.. 살려주세요 ㅠㅠ [3]
eyecandy
2009-05-16
6493
28212password 암호화 방식이 문제입니다. [2]
진성일
2009-05-15
7267
28211mysql query에 대한 질문..
박광기
2009-05-14
5960
28210급합니다 도와주세요. MySQL 구입 및 제품 상용화에 대해서 입니다. [7]
권우창
2009-05-14
10588
28209리눅스 mysql 마이그레이션 툴킷으로 윈도우에 마이그레이션 하면 데이터나 테이블이 안넘어옵니다.
유재훈
2009-05-12
6615
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.025초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다