PHP 표준만 지켜주면 무슨 소스든 전부 간단히 만들어줍니다.
원래는 한줄로 나오는데, 차이 비교를 위해서 Beautify 해봤습니다.
왼쪽이 인코딩 전, 오른쪽이 인코딩 후 입니다.
외부에서 내부 변수를 직접 접근하지 않는다는 가정 하에 minify 됩니다.
문자열 같은경우도 간단히 base64 인코딩을 거치고, minify 될때도 문자열은 변화가 없습니다.
예전에 만들었던 암호화 기능까지 넣어서 테스트 해봤습니다.
PHP 소스만 걸러서 압축하고, 함께 암호화 합니다.
동영상처럼 인코딩 소스를 인코딩해서 소스로 사용해도.. 전혀 문제가 없습니다.
<?php echo "hello?";
인코딩 전 소스
<?php eval(base64_decode('JF9faGJtTXJXZUhpNyA9ICdQejQ4UDJOb1l5QjRjR2h2SUdJMmMzaGhiRjlUZUhCdlUzZ29JalpIVm5OaVJ6Z3ZJaWs3JzsgZXZhbChzdHJ0cihiYXNlNjRfZGVjb2RlKCRfX2hibU1yV2VIaTcpLCBiYXNlNjRfZGVjb2RlKCdaMnhZV21GeVpVNWtjR05UZW5oRU5uRnFOR2s9JyksIGJhc2U2NF9kZWNvZGUoJ2FUUnFjVFpFZUhwVFkzQmtUbVZ5WVZwWWJHYz0nKSkpOw==')); ?>
인코딩 후 소스
소스를 간단하게 한번만 꼬아둬서 직접 풀기는 쉬울겁니다
실제 사용할때는 다양한 방법으로 엄청 꼬아둬야 겠지요 ㅎㅎ
소스 중간에 html, js, css같은 다른 언어가 나와도 php 소스만 걸러내서 인코딩합니다
+) 겸사겸사 간단한 URL Shortener도 만들어 봤습니다.
https://s.hoto.dev
헛 한번만 꼬았을떄는 decoder 사이트에서 금방 풀리는군요!