thisgun

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

· 2018-10-12 (금) 17:21:50 · 16379 · 3

 아래 글은 사용환경 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 버전이상을 사용하시는 분들은 이 자료를 적용할 필요가 없습니다.

첨부파일

1명이 반응했습니다
|

댓글 3개

2018-12-05 (수) 09:47:35
자세한 설명 잘 봤습니다.
그러면 MySQL 8.0 환경에서 그누보드를 새로 설치하는 경우에는 별 문제가 없겠죠?
2020-02-01 (토) 22:07:08
감사합니다
이거때문에 고생이였는데 감사합니다 ㅜㅜ
댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 팁자료실

2,788건
+
제목 글쓴이 날짜 조회
18-10-23 조회 1.2만
18-10-22 조회 9,611
18-10-21 조회 6,423
18-10-21 조회 6,056
18-10-20 조회 5,966
18-10-18 조회 7,040
18-10-17 조회 7,689
18-10-15 조회 6,226
18-10-14 조회 1.2만
18-10-12 조회 1.6만
18-10-10 조회 6,466
18-10-10 조회 7,520
18-10-10 조회 5,026
18-10-08 조회 5,462
18-10-08 조회 1만
18-10-06 조회 8,361
18-10-04 조회 1.4만
18-10-03 조회 6,979
18-10-02 조회 6,766
18-10-02 조회 5,986
18-09-29 조회 5,463
18-09-28 조회 6,969
18-09-21 조회 1만
18-09-20 조회 8,866
18-09-17 조회 7,171
18-09-13 조회 7,353
18-09-12 조회 6,195
18-09-05 조회 8,767
18-09-05 조회 6,567
18-09-02 조회 9,469