2010-06-02 5 views
2

내장 된 암호화 기능을 찾고 영리한 프로그래머로부터 문자열을 숨기지 않고 조금 혼란스럽게 만듭니다. str_rot13base64_encode과 같은 기능을 찾고 있지만 찾을 수없는 것 같습니다. 확실히 더있다?PHP "암호화"기능이란 무엇입니까?

+0

몇 개가 필요합니까? 나는 전형적으로 base64를 사용하여 어깨 너머로 보는 누군가가'password = base64_decode ('bXkgcGFzc3dvcmQ ='); ' –

+0

@Johannes와 같이 읽을 수 없다. 그래서 암호를 큰 따옴표로 묶는다.) – Rob

+0

@Johannes : Rot-13은 인코딩입니다. 암호화에는 키가 필요합니다. –

답변

1

실제 암호화의 경우 mcrypt가 해결책입니다. 난독 화를 위해 세 번째 기능은 uuencode입니다. 다음은 디코딩을위한 코드입니다. 인코딩은 순서를 뒤집는 것을 포함합니다.

$text = str_rot13($text); 
$text = base64_decode($text); 
$text = convert_uudecode($text); 

base64_encode와 convert_uudecode는 모두 데이터 크기를 늘립니다.

3

mcrypt 제품군을 살펴볼 수 있습니다. 다양한 알고리즘을 사용하여 암호화하고 해독 할 수 있습니다.

-3

암호화 알고리즘이 아닌 난독 화 알고리즘을 찾고 계십니까?

Base 64와 mcrypt는 디코딩을 신속하게 인코딩하는 것이 가장 쉽습니다. 난독 화를 찾으려는 경우이를 사용하십시오.

Base 64 및 Rot 13은 쉽게 인코딩 및 디코딩 할 수 있으므로 암호화되지 않습니다.

Encrytpion 기능은 md5, sha1 및 crypt와 유사합니다. MD5는 "깨진"것으로 간주되므로 sha1을 사용하여 암호화하거나 해시 할 때 MD5에 소금을 뿌려야합니다. 당신은 단지 작은 조금 당황해야하는 경우 http://ca3.php.net/sha1

http://ca3.php.net/manual/en/function.crypt.php

+0

여기에 언급 된 has 함수 (md5, sha1)는 단방향입니다. 일단 인코딩되면 디코딩 할 수 없습니다. – eykanal

+6

오신 것을 환영합니다 ** 암호화! = 해싱! = 인코딩 ** ... 나열된 기능 (MD5, SHA1 및 크립트)은 해싱/다이제스트 기능이며 암호화 기능은 아닙니다. 암호화는 원래 입력이 일부 키를 사용하여 암호화 된 메시지에서 결정적으로 해독 될 수 있음을 의미합니다. 인코딩은 단순히 하나의 메시지 형식에서 다른 메시지 형식으로 변환하는 것입니다. –

1

http://ca2.php.net/md5strtr() 기능을보십시오. 문자열에있는 문자를 스왑 아웃하기 위해 존재합니다. 일부 텍스트를 번역 가능하게 만들기에는 적합하지만 읽을 수는 없습니다.

빠른 예 :

<?php 
$mytext="obfuscate me"; 
$obfuscated = strtr($mytext,"aeiourstlne","rstlneaeiou"); 
echo $obfuscated; /* Output is lbfnacreu mu */ 
?> 

일부 추가 읽기 here.

관련 문제