PHP는 세계 최고의 언어이지만 약한 유형의 언어로 인해 보안 문제도 있습니다. 예를 들어, CVE-2014-0166의 쿠키 위조는 PHP 해시 비교의 결함을 이용했습니다.
다음은 소스 코드 암호화 기술에 대한 소개입니다.
암호화 소프트웨어 (php_screw)
다운로드 주소: http://sourceforge.net/projects/php-screw/
설명: php 파일은 일반적으로 서버 측에 텍스트 형식으로 저장되므로 소스 코드를 다른 사람이 쉽게 읽을 수 있습니다. 이 기능을 수행하려면 소스 코드를 암호화해야 합니다
하나는 다음과 같습니다. : 암호화 프로그램, PHP 파일 암호화 실현
다른 하나는 암호화된 PHP 파일을 구문 분석하여 실행 결과를 얻는 것입니다. 전자의 구현은 비교적 간단하며 후자의 구현은 대부분입니다. php 모듈을 통해 형태로 구현됩니다.
php_screw
(나사)는 위의 기능을 수행할 수 있습니다. 최신 버전은 1.5이며 sourceforge에서 다운로드할 수 있습니다. php_screw
(螺丝钉)可以实现以上的功能.最新版本是1.5,可以在sourceforge上下载.
php_screw
php_screw
는 일본어로 개발된 PHP 암호화 프로그램입니다. .그러나 LINUXInstallation
설치 환경
시스템: centos 5.3소프트웨어: Apache 2.2.9PHP 5.2.10위의 모든 환경은 직접 다운로드, 구성 및 설치합니다. 구체적인 Apache+php+mysql 설치 방법은 온라인에서 검색해 보세요.설치 단계
1. tar tar -zxvf php_screw-1.5.tar.gz2로 압축을 푼 후 php_screw-1.5 디렉토리에 들어가 설치를 시작하세요cd php_screw-1.5 phpize
vi my_screw.h -- Please change the encryption SEED key (pm9screw_mycryptkey) into the values according to what you like. The encryption will be harder to break, if you add more values to the encryption SEED array. However, the size of the SEED is unrelated to the time of the decrypt processing. * If you can read and understand the source code, to modify an original encryption logic will be possible. But in general, this should not be necessary. OPTIONAL: Encrypted scripts get a stamp added to the beginning of the file. If you like, you may change this stamp defined by PM9SCREW and PM9SCREW_LEN in php_screw.h. PM9SCREW_LEN must be less than or equal to the size of PM9SCREW.
make
cp modules/php_screw.so /usr/lib/php5/extension/
extension=php_screw.so
/srv/apache/bin/apachectl restart
Use
1. 이제 암호화할 PHP 파일을 작성하세요.php 속도를 테스트하기 위해 다음 test.php 파일을 작성했습니다
코드 복사 코드는 다음과 같습니다.cd tools make
cp screw /usr/bin/
<? $a=0; $t=time(); for($i=0;$i<5000000;$i++) {$a=$a*$i;} $t1=time(); echo "<p>"; echo "It used:"; echo $t1-$t; echo "seconds"; ?>
PHP 비디오 튜토리얼
위 내용은 PHP 소스코드 암호화 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!