>백엔드 개발 >PHP 튜토리얼 >PHP 사용자 정의 복합 MD5 암호화 기능

PHP 사용자 정의 복합 MD5 암호화 기능

高洛峰
高洛峰원래의
2016-11-29 15:22:351464검색

이 글에서는 먼저 복잡한 MD5 암호화 기능을 맞춤화하여 비밀번호를 암호화한 후, 시스템의 md5 암호화 프로그램으로 암호화하여 구현 방법을 소개하겠습니다.

md5 암호문은 제한되어 있지만, 하지만 그 숫자는 6.3340286662973277706162286946812e+49입니다. 이 숫자가 느껴지지 않으면 1억을 5승하고 수천만을 곱하면 충분할 것이라고 상상할 수 있습니다.

해본 적이 있습니까? 예전엔? 제가 초보 해커였을 땐 프로그램이 거의 없었는데... 대부분의 프로그램의 암호화 방식이 'md5'인데, 처음에는 이게 틀린 게 아닌 줄 알았어요. 결국 크랙되지는 않았지만 특성 문자열이 변경됨에 따라 순수 md5 암호화를 사용하는 컬렉션은 점점 더 위험해졌습니다.

프로그램을 직접 작성하고 특성 문자열을 추가한 다음 MD5를 추가하는 것이 일반적인 습관입니다. 완벽하다고 생각했지만 오늘 cmd5가 실제로 이 암호화 방법을 해독할 수 있다는 것을 발견했습니다. 물론 전제는 특성 문자열을 알아야 한다는 것입니다. 비록 제 것이 더 복잡하지만 예방 조치로 인해 암호화 기능은 여전히 ​​복잡합니다. >

php 사용자 정의 복합 MD5 암호화 함수의 코드는 다음과 같습니다.

function md123($sstr)

{

$md_asc=""; 🎜>

$mds=md5(“qwEqw”.$sstr.”2ddsdf”)

$mds=md5(“rtrTtyr”.$mds.”zcv34r”)

for($i=1;$i< strlen($mds);$i++){

$md_asc.=168/ord(substr($mds,$i,1))

}//오픈 소스 코드 phpfensi.com

return md5($md_asc);

}

이런 방식으로 임의 문자열을 통해 비밀번호 보안이 더욱 향상됩니다. ord를 전달하면 간단한 1이 문자로 변환됩니다.

1.73195876288662.94736842105261.66336633663373.1111

1111111113.23 076923076923.1698113207547 1.731958762

88661.683.42857142857142.94736842105261.681.681.6470

5882352943.11111111111111.663366336 63372.94736842

105263.42857142857141.66336633663373.1698 113207547

3.16981132075473.1111111111111.69696969696971.681.7

1428571428573.16981132075471.714285 71428573.294117

64705881.681.64705882352941.69696969696971.64 705882

352946ccc2eceada95b64bc7f55c07c2a6af6

이런 식으로 MD5 암호화를 하면 안전합니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.