묻고답하기

비밀번호 해시 hash 저장 방법을 

md5에서 sha512로 바꾸려고 시도중입니다. 


서버 환경 : 

리눅스

nginx 1.4.6

PHP Version 5.5.9



php 파일을 만들어서 일단 테스트를 해 보았는데요. 

  1 <!DOCTYPE html>
  2 <meta charset="utf-8" />
  3 <?php
  4 function get_time() {
  5         list($usec, $sec) = explode(" ", microtime());
  6             return ((float)$usec + (float)$sec);
  7 }
  8
  9 $algos = array('md5','sha1','sha256','sha512','whirlpool','bcrypt','scrypt');
 10
 11
 12 echo "<textarea style='width:800px;height:500px'>";
 13 echo "알고리즘\t수행시간\t해시값\t\t\t\t\tfunction_exists()\n";
 14 foreach($algos as $algo) {
 15     $start = get_time();
 16     for($i=0;$i<1000;$i++)
 17         $hash_value = hash($algo, 'testhash!1');
 18     $end = get_time();
 19     $time = $end - $start;
 20
 21     echo $algo."\t";
 22     echo number_format($time,5)."\t";
 23     echo $hash_value."\t";
 24     echo "exist?=".function_exists($algo)."\n";
 25 }
 26 echo "</textarea>";

그 결과 

알고리즘	수행시간	해시값						function_exists()
md5	0.00086	705a6612fe474053e79d0494c9fa3965	exist?=1
sha1	0.00086	07c97cfbec2c25b6f1aba02f393b33f6765cf0e3	exist?=1
sha256	0.00146	9c64c70df3501b479b9631a0a6481b6c0d0427bd75c7a3133337105213bc2916	exist?=
sha512	0.00160	e8bd620b57c715891406bcd5c9bb744bdabcc91dd82e4366a3ee63415800bc5bc2d1ba076ac25e3b557e9bc6122e068ccdd17b9ac384a9155ed1992f2fc17c13	exist?=
whirlpool	0.00185	0d7903152df716e4f3345251d8fbe6aed2aaecdf441ee4719bcd59cb11c5a4a453ec915704dcc2ffd3fbbb5cef684bd6efdfd8ded9d6f137bcb8a0ffa9fcc428	exist?=
bcrypt	0.00446		exist?=
scrypt	0.00427		exist?=



sha512의 경우 

hash 값은 정상적으로 출력되고 있지만, 

function_exists() 결과값은 나오지 않습니다. 

오직 md5하고 sha1만 function_exists() 결과가 1로 나옵니다. 


그래서 

xe member.model.php 에서 

$isSha2 = ($this->useSha2 && function_exists('sha512'));

이런 식으로 쓰려고 했는데 
function_exists('sha512') 결과가 반환되지 않아서 이대로는 못쓰고, 
&& function_exists('sha512') 부분을 제거하고 써야할 것 같습니다.

당장은 문제가 없으니까 그렇게 써도 되겠지만, 
다른 홈페이지에 적용한다거나 할 때 문제가 될 수도 있겠다 싶어서 해결을 보고 가야할 듯 합니다. 

어떻게 해결을 해야 할까요?

글쓴이 제목 최종 글
XE 공지 글 쓰기,삭제 운영방식 변경 공지 [16] 2019.03.05 by 남기남
도도시 휴대폰 NFC 거래명세표 입력방법에 대한 문의  
강희원470 신디케이션 잘 연결되었는지 문의드려요.. [2] file 2015.01.31 by 강희원470
세상의모든계산기 function_exists 에서 sha256, sha512 등 hash 함수 확인이 안되네요. [3] 2015.01.31 by 세상의모든계산기
I-JEX 서브도메인으로 멀티도메인 모듈 사용이 가능할까요? [1] 2015.01.31 by 한꼬마
썰레발리오 사이트 운영 중간에 포인트-회원그룹연동을 설정할시에 [1] 2015.01.31 by 오델라가루
I-JEX KCB 본인인증 모듈 [1] 2015.01.31 by 키스투엑스이
파스테릉 조회수 삭제 방법 좀 알려주세요 [7] 2015.01.31 by 파스테릉
달빛한묶음 실수로 전체 권한을 766으로 변경 후 빈 페이지가 뜹니다. [2] 2015.01.31 by 달빛한묶음
로양 jw플레이어 동영상삽입 관련  
갤럭시s5 이거 뭔뜻인가요? [4] 2015.01.31 by 펭귄냠냠
추향1호 cafeXE에서 접속통계에서 오류가 발생합니다. [1] file 2015.01.31 by 추향1호
최일인 문의합니다. - 홈페이지로 사용중 [5] file 2015.01.31 by 물옆
bi_ 위젯 페이지에서 자바스크립트를 활용한.. [2] 2015.01.31 by bi_
XESTUDIO 레이아웃 수정해서 업로드해도 결과물 출력 안됨현상. [2] 2015.01.31 by XESTUDIO
스타111 설문조사질문이요~~  
컴박살 유튜브 동영상에서 카테고리(category) 값을 얻으려 하는데요.... [1] 2015.01.31 by 컴박살
피터팬007 카메론 플러그인 애드온-소셜 아이콘에서 이미지처럼 세로가 아니라 가로로 나오게 하려면 어떻게 해야 할까요? file  
피터팬007 doorweb 레이아웃을 사용하였으며, 메인 슬라이드 및 콘텐츠 위젯 질문입니다... file  
엔터RP 게시판만 나오게 하고 싶습니다. [2] file 2015.01.31 by 엔터RP
almhigh 회원가입을 누를시, 오류 file  
엔터RP 글씨가 깨집니다. [1] file 2015.01.31 by 엔터RP
스타111 도움 부탁드립니다. [2] 2015.01.31 by 스타111
hoss 게시판 정렬을 날짜 순이아닌 "제목 가나다" 순서대로 할려면? [3] 2015.01.31 by hoss
강희원470 도메인과 호스팅서버 연결로 url표시 되는 문제에 대해서.. [2] 2015.02.01 by 강희원470
애뜨림 사이트 접속이 되지 않습니다 (최대한 빨리 답변바랍니다..)  
세상의모든계산기 비번저장 해시방식 변경에 따른 부작용 - 회원탈퇴시 비번틀림 문의 [1] file 2015.02.01 by 세상의모든계산기
kkz 기간 지난 아이콘이 삭제되지 않습니다. (아이콘샵, 대표아이콘) [4] 2015.02.01 by 화재내니학교
강희원470 신디케이션 로봇룰 검증 url에 대해서요. file  
nado0124 포인트 랭킹 출력 위젯에서 그룹제외가 안됩니다. [6] 2015.02.01 by nado0124
xyxyxy 회원 전체에게서 포인트를 뺏으려먼 어떻게 하나요 ㅠ? [1] 2015.02.01 by 업글