2012-03-13 4 views
3

PAR::Packer::Bleach으로 표백 된 Perl 파일을 어떻게 표백 해제합니까? 표백 알고리즘은 this Stack Overflow answer에 설명되어 있지만 표백/해제 문제를 해결할 수는 없습니다. 아무도이 짓을 한거야?이 perl 파일의 표백 방법?

편집 - 고정 : 사용 된 인쇄물로 인쇄되었습니다. 나를 괴롭혔던 문제는 무엇 이었습니까? 그것은 2 번 표백되었다! !! 표백 한 파일이 표백되었습니다. 그래서, 이중 unbleach 일했습니다!

+1

'print'로 디 블리 싱 스크립트에서'$ _ = eval; $ @ & &[email protected]; $ _ '을 대체하면 어떻게됩니까? 표백되지 않은 소스 코드는 다음과 같습니다 : $ _ ";'? – mob

+0

인쇄를 시도했습니다. 표백 된 파일 전체를 인쇄합니다 (공백 및 탭, 실제 표백되지 않은 코드 없음). – user1158667

답변

1

PAR :: Packer :: Bleach는 Acme :: Bleach와 유사한 알고리즘을 사용합니다.

여기에 discussion of Acme::Bleach이 도움이 될 수 있습니다.

한 포스터는 다음과 같이 말합니다. "기본적으로 Acme :: Bleach는 코드의 내용을 처음 실행시 공백과 탭의 비트 스트링으로 변환 한 다음 후속 실행시 비트 스트링의 압축을 풀고 코드를 실행합니다."

그렇습니다. 완전히 되돌릴 수 있어야합니다.

+0

나는 그것이있다라는 것을 알고있다. 이 게시물은 어떤 일이 발생 하는지를 매우 명확하게 보여줍니다. http://stackoverflow.com/questions/7556782/what-does-this-perl-line-from-a-bleached-file-do. 따라서 수행해야 할 작업은 파일을 바이너리로 변환 한 다음 8 개의 LSB를 가져와 다른 바이너리 바이트로 함께 추가하는 것입니다. 그리고이 바이트는 ASCII 문자입니다. 나는 비트 조작에 익숙하지 않아서 문제를 겪고있다. 그러나 나는 디 블럭킹을 위해 C에서 스크립트를 작업 중이다. – user1158667