묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
ip 주소를 md5 해서 익명 닉네임을 설정 하려고합니다.
2015.07.27 16:19
현재 닉네임 값에 value="{substr(md5(getenv('REMOTE_ADDR')),-5)}"
로 작성하여 사용하고 있는데, 정상 작동은 하지만 제가 표현하고 싶은 코드 값이 아니여서
이 value 값을
단순히 ip주소만을 이용해 md5 하고 싶습니다.
어떤 식으로 소스코드를 수정 해야할까요?
댓글 4
-
BJ람보
2015.07.27 16:29
-
모해
2015.07.27 18:17
네 ip주소를 md5로 변환하여 앞 5글자만 사용하고 싶은데 지금 사용하고 있는 소스코드는 제가 원하는 코드명으로 나오지 않네요 ㅠㅠ 유챗이랑 동일하게 만들고 싶었거든요..ㅜ
-
기진곰
2015.07.27 19:59
getenv('REMOTE_ADDR')를 사용하면 현재 방문자의 IP 주소를 암호화해서 출력하게 됩니다. 글쓴이의 IP 주소를 암호화해서 출력하려면 $document->ipaddress 또는 $comment->ipaddress를 사용해야죠.
단, 저렇게 한다고 정말로 익명성이 보장될 거라는 생각은 하지 않는 것이 좋습니다. md5는 상당히 약한 알고리듬이죠. 웬만한 컴퓨터로 1분이면 대한민국 IP 대역 전체의 md5 해쉬 목록을 생성할 수 있어요. 화면에 표시된 해쉬와 비교하면 글쓴이의 IP를 알 수 있죠. 마지막 몇 자리만 잘라내서 표시하더라도 10여개 내외의 후보로 압축할 수 있을 겁니다.
-
모해
2015.07.28 01:39
감사합니다 답변에서 힌트를 얻어 해결하였습니다! 감사합니다!
해당 코드를 사용하는 이유는,..
md5를 그냥 변환시 모두 24자인가..32자인가 그 문자로 바꾸기 때문입니다..
해당 문자는 그 전체적인 24~32자까지 만들어지는 코드를 5자로 줄여주는 역활을 해줍니다.