2026, 새로운 도약을 시작합니다.

g4 -> g5로 업글 중 회원 비밀번호 암호화 관련 질문입니다. 채택완료

10년전쯤 제작된 홈페이지 같은데요.

이번에 서버환경 및 그누보드도 다 업글레이드 하려고합니다.

현재 가장 문제가 이전에 가입하셨던분들 회원정보를 옮기는건데요.

g4에서 어떻게 암호화를 했는지 41바이트가 아니고 훨씬 긴 암호로 되어 있어서 암호화 방법을 찾고 있습니다.

455297284_1767310326.8993.png

enc_password() 이 함수는 아무리 찾아도 어디 있는지 모르겠고요

회원 가입하면

패스워드 암호화 된 길이가 아래와 같이  깁니다.

455297284_1767310439.4737.png

그누보드4 mysql 5.6 php5.4 사양이네요.

g4_sql_password() 함수는 mysql password() 함수를 쓰는걸로 나와 있는데

그 위에 보시면 sql_passoword() 안에 enc_password() 함수가 들어 있어요.

이 함수정의는 찾을 수가 없더라고요. 근데 g4_sql_password()이게 아니고 sql_passoword()  로 암호화 하는거 같은데

함수가 정의된 곳을 찾을 수가 없으니 답답합니다

도와주세요

신규버전에서 암호화 방식을 여러가지로 해도 저 길이가 나오지 않더라고요 81개 자리수 정도 되는거 같더라고요

답변 3개

채택된 답변
+20 포인트

우선 소스를 다운받으셔서 vscode 찾기에서 원하는 키워드를 넣으면 쉽게 찾으실 수 있을거에요

해당 함수를 참고 순차적으로 다음 부분을 해결을 하셔야 할듯합니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

답변에 감사합니다. 그렇게 하고 있는데 ㅠㅠ 찾기에서 함수 정의가 안나와요

댓글을 작성하려면 로그인이 필요합니다.

자체적으로 처리방식을 정해봤어요

우선 aws 서버환경을 구버전에서 신버전으로 다 업그레이드 하고

g4 -g5(최신)로 업그레이드 하고

db를 다 옮겨야 합니다.

회원정보 패스워드 저장방식이 여러가지이기도 하지만 시간이 12년정도 지났기 때문에 방식도 많이 바껴서 

회원정보 패스워드는 어차피 mysql8로 맞춰서 변경해줘야 합니다.

구버전의 패스워드가 길이의 차이가 있지만 앞부분만은 mysql password()함수를 쓴거 같긴하더라고요

그리고 그 뒤에 더 추가를 한건지 그부분을 찾을 수가 없는데

앞부분만으로 짤라서 비교해서 로그인 할 수 있게 하고 로그인 되면 현재 패스워드 저장방식으로 저장되게끔해야 될거 같습니다 

새로 가입하신분들은 새로운방식으로 패스워드가 저장되고요

서버이전 및 업그레이드에 따른 회원정보 패스워드에 대한 여러 글을 참조해서 한번 시도해 보겠습니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

bbs/login_check.php 에서 sql_password를 사용하는지 g4_sql_password를 사용하는지 부터 확인을 해보세요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

감사합니다

댓글을 작성하려면 로그인이 필요합니다.

이 게시판은 회원만 글쓰기가 가능합니다. 로그인해 주세요.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고