원래 Visual Basic 6로 작성된 프로그램 (나중에 Java로 다시 작성)에서 생성 된 데이터 파일을 읽으려고합니다. 따라서 자신의 도구를 사용하여 처리 할 수 있습니다.RC4와 같은 난독 화를 어떻게 물리 칠 수 있습니까?
해당 프로그램은 미국 정부에서 만든 공개 소프트웨어입니다. 이를 금지하는 라이센스 계약은 없습니다. 프로그래머가 아마도 내년 버전에서 난독 화를 바꿀 것이기 때문에 프로그램의 이름이나 웹 사이트에 대한 링크를 말할 수는 없으며 리버스 엔지니어링 노력을 반복해야 할 것입니다.
기본 데이터 파일 형식은 텍스트 기반이며 난독 화는 하드 코딩 된 키가있는 일종의 스트림 암호입니다. XOR 데이터 파일을 함께 사용하여 일부 ASCII 데이터를 문자열 필드에 채우는 방법도 있지만 프로그램 내에서 전체 키 스트림을 포함시키지 않으려합니다.
.exe 파일을 통해 검색하면 RC4ini라는 서브 루틴 호출과 키 (나는 사용자 인터페이스의 아무 곳에 나 나타나지 않습니다)라고 여겨지는 문자열이 나타납니다. Planet Source Code에있는이 암호화 라이브러리의 소스 코드가 무엇인지 알았고, RC4의 작동 구현에 올바른 변경을가했습니다 (자바 스크립트에서는 주로 프로그래밍 언어이므로). 사용 해보았습니다.
파일의 모든 오프셋에서 암호화 된 데이터를 검색하려고 시도했지만 암호 해독에 성공하지 못했습니다. 왜 이런 일이 일어나는거야?
퍼블릭 도메인 인 경우 링크를 삽입하지 않으시겠습니까? –
@Igor Skochinsky : 매년 새로운 버전의 프로그램이 출시됩니다. 다음 릴리스는 2011 년 초에 시작될 예정이며 프로그램의 이름을 언급하면 (따라서 웹 검색에 표시됨) 프로그램을 다시 뒤집어 야합니다. – PleaseStand
자신의 알고리즘 구현을 보지 않고서도 실제 결과와 같은 결과를 얻지 못하는 이유에 대해 합리적인 답을 얻는 사람은 누구입니까? – caf