티스토리 뷰
키를 이용한 암호화/복호화 함수입니다.
출처는 http://man.phpschool.com/이고
복잡한 소스를 약간 정리했습니다.
이정도면 실전에 응용해도 될정도로 충분히 안전하고 편리하다고 생각됩니다.
영문, 한글, 특수문자 테스트 결과도 좋았습니다.
<?
function bytexor($a,$b)
{
$c="";
for($i=0;$i<16;$i++)$c.=$a{$i}^$b{$i};
return $c;
}
function decrypt_md5($msg,$key)
{
$string="";
$buffer="";
$key2="";
while($msg)
{
$key2=pack("H*",md5($key.$key2.$buffer));
$buffer=bytexor(substr($msg,0,16),$key2);
$string.=$buffer;
$msg=substr($msg,16);
}
return($string);
}
function encrypt_md5($msg,$key)
{
$string="";
$buffer="";
$key2="";
while($msg)
{
$key2=pack("H*",md5($key.$key2.$buffer));
$buffer=substr($msg,0,16);
$string.=bytexor($buffer,$key2);
$msg=substr($msg,16);
}
return($string);
}
// 사용 예
$message = "다양한 원본 메시지 東西南北 ABC abc 123 ※ ↔ ";
$key = "아..이정도면 매우 복잡한 키--;";
$encrypted = encrypt_md5($message, $key);
$decrypted = decrypt_md5($encrypted, $key);
echo "Encrypted = $encrypted";
echo " <HR>";
echo "Decrypted = $decrypted";
?>
- Total
- Today
- Yesterday
- gmlduqrhdwn
- judyOh blog
- naplez.net [ SCJP 1.4 ]
- DB
- web
- 한글 Mozilla 포럼 [실전웹표준가이드]
- (블로그)웹표준연구소 [마루아라소프트]
- 웹 프로그램 및 디자인관련 강좌 사이트
- (블로그)검색엔진 최적화 | 검색엔진 마케팅
- DB 툴 [DB에 대한 정보]
- PHP( 객체 지향 언어로써의 PHP )
- w3c표준규격 번역
- 서버 주무르기
- 검색엔진 마스터
- apache-kr.org
- 한국 썬 개발자 네트워크
- 검색엔진 최적화 블로그
- 피라시스닷컴(SVN관련)
- 웹기반 DNS 서비스 DNSEver.com
- JEUS / Tmax / WebtoB
- 웹기반 무료 DNS서버
- JAVA 강좌
- 少年易老學難成, 一寸光陰不可輕. 未覺池塘春草夢, 階前梧…
- MyJavaServer ( JSP 무료 호스팅 )
- I GOT IT (IT`S CRADLE & INCUBA…
- Todayis(HS)
- oracleclub.com
- Prototype (JavaScript Framewor…
- JSPWiki (openframework.or.kr)
- 제갈장비(JAVA_BLOG)
- jakartaproject
- Oracle_download
- jQuery plugin
- Test
- 안드로이드 앱 개발
- 행복한 개발자입니다.
- Flex & etc
- Flex & Design
- (iBatis)참고
- FLEX참고 사이트
- 대용량파일에 대한 watchservice 참고
- win7 update pack
- sw기술자 경력관리
- Eclipse
- Ajax
- 뚜비
- 시퀀스생성
- 오라클
- CSS
- GD
- 다운로드
- Linux
- flex
- ASP
- 정보보호전문자격
- find
- derby
- 자동증가
- mysql
- apache
- iBatis
- php
- 비교문
- 구글
- 롤링
- mybatipse #egovframework3.8
- SEO
- DOM
- 머먹구사냐
- vi
- excel
- java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |