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

mysql 5.7, mysql 8.0 이상 버전 password 대응하기 (PBKDF2)

 아래 글은 사용환경 mysql 5.7 , mysql 8.0 이상 버전을 사용하는 분들에게 해당됩니다.

mysql 5.7 이상부터는 

최초 설치시 password 설정은 영소문자+영대문자+숫자+특수문자 조합 8 이상 복잡성을 요구하는 설정으로 설치가 됩니다.

만약에 위의 요구조건을 충족하지 않거나 비밀번호 8자리 이하를 입력받았다면, 그누보드5에서는 패스워드 hash 값을 빈값으로 받게 됩니다. ( 로그인 불가 현상이 일어납니다. )

mysql 5.7에서 암호화 복잡성을 해제 하려면 아래 게시물을 참고하여 mysql 설정값을 변경해서 복잡성을 해제 할수 있습니다.

http://algo79.tistory.com/entry/mysql-57-%EC%9D%B4%EC%83%81-%EC%95%94%ED%98%B8-%EB%B3%B5%EC%9E%A1%EC%84%B1-%ED%95%B4%EC%A7%80%ED%95%98%EA%B8%B0

mysql 8.0 이상부터는 password 함수가 사라졌으므로, password 함수를 사용할수 없습니다.

password 함수를 사용할수 없으므로, 패스워드 hash 값을 빈값으로 받게 됩니다. ( 로그인 불가 현상이 일어납니다. )

위의 문제점을 보완하고자 PBKDF2 를 이용한 코드를 작성해 보았습니다.

PBKDF2 에 대한것은 PHPSCHOOL 의 곰탱이푸님이 올린 글의 자료를 사용했습니다.

https://www.phpschool.com/link/tipntech/78825

첨부파일은 그누보드 5.3.1.8 버전 기준으로 수정된 자료이며,

적용방법은 5.3.1.8 버전이면 그냥 덮어쓰기 하시면 됩니다.

다른 버전을 사용하고 계신분들은 아래 링크 코드를 참고하여 수정해 주세요.

https://github.com/gnuboard/gnuboard5/commit/76aabc8f810a58e43473ed3c682dc14b1beaa16e?diff=split

https://github.com/gnuboard/gnuboard5/commit/c8a9576d6320ff78306f0fa771553aa3c3d3b288

그누보드 5.4 버전 이상부터는 기본패스워드 저장방식이 PBKDF2 으로 변경 되었기 때문에, 5.4 버전이상을 사용하시는 분들은 이 자료를 적용할 필요가 없습니다.

첨부파일

|

댓글 3개

자세한 설명 잘 봤습니다.
그러면 MySQL 8.0 환경에서 그누보드를 새로 설치하는 경우에는 별 문제가 없겠죠?
이거때문에 고생이였는데 감사합니다 ㅜㅜ

댓글 작성

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

로그인하기

그누보드5 팁자료실

번호 제목 글쓴이 날짜 조회
공지 3년 전 조회 4,598
2741 3일 전 조회 120
2740 5일 전 조회 108
2739 1주 전 조회 210
2738 1주 전 조회 218
2737 1주 전 조회 181
2736 1주 전 조회 280
2735 3주 전 조회 284
2734 3주 전 조회 263
2733 1개월 전 조회 265
2732 1개월 전 조회 301
2731 1개월 전 조회 268
2730 1개월 전 조회 227
2729 1개월 전 조회 357
2728 1개월 전 조회 245
2727 1개월 전 조회 422
2726 1개월 전 조회 256
2725 1개월 전 조회 332
2724 1개월 전 조회 361
2723 1개월 전 조회 267
2722 1개월 전 조회 300
2721 1개월 전 조회 212
2720 2개월 전 조회 304
2719 2개월 전 조회 307
2718 2개월 전 조회 202
2717 2개월 전 조회 337
2716 2개월 전 조회 202
2715 2개월 전 조회 312
2714 2개월 전 조회 273
2713 2개월 전 조회 376
2712 2개월 전 조회 289
🐛 버그신고