CRYPT_ARCH_ZIP 수정자가 있는 CryptDecode - 사용 방법은 무엇입니까? - 페이지 8

 
Mikalas :
나는 시도했다 - 그것은 작동하지 않습니다 :(

내가 이해했듯이 CryptDecode 는 CRC32를 사용합니까? - 그렇다면 아카이브에서 직접 CRC32 해시를 가져와서 압축된 배열의 끝에 넣을 수 있습니다.

 struct ZIP_HEADER
{
  ...
   ushort last_mod_date;
   uint    crc_32;              // Берем это число и помещаем его в конец массива, который нужно распаковать
   uchar   ll_crc;
  ...
};
Z.Y. 이제 나는 해시가 선택적 속성이며 어떤 경우에는 0으로 채워질 수 있다는 것을 읽었습니다.
 

아니요, CRC32가 아니라 Adler32

(그들이 텍스트를 수정하고 그들이 수정하고 내가 수정했습니다 - 다시 읽기 )

내가 썼어, 그것은 작동하지 않는다 !!!!!

 
Mikalas :

아니요, CRC32가 아니라 Adler32

(그들은 텍스트를 수정하고 다시 읽었습니다)

내가 썼어, 그것은 작동하지 않는다 !!!!!

정확히:

미칼라스 :

... 및 ZIP 아카이브의 CRC32로 대체했습니다. 압축이 풀리지 않았습니다.

 
Mikalas :

고맙습니다.

ZIP은 내가 대체한 ZIP 아카이브의 4바이트 및 CRC32 없이는 압축을 풀 수 없습니다. 압축을 풀지 않습니다.(

Vasily, 우리의 아이디어는 작동하지 않습니다

물론 MQ의 사람들이 우리를 만나러 와서 플래그를 추가하지 않는 한

함수 CryptDecode ( CRYPT_ARCH_ZIP, 데이터, 키, 결과, NO_READ_CRC ) ;

또는 ZIP 파일에서 CRC32 가져오기 :

CryptDecode ( CRYPT_ARCH_ZIP, 데이터, 키, 결과, USE_CRC_FROM_ZIP ) ;

플래그를 추가할 필요가 없습니다. CRC 코드가 있는 경우 이를 수락하도록 CryptDecode를 변경하는 것으로 충분합니다. 존재하지 않고 코드 필드가 0으로 채워지면 CRC 코드가 사용되지 않습니다. 그게 전부입니다. 또한 모든 아카이브에 해시가 포함될 수 있는 것은 아닙니다.

때로는 LocalFileHeader 를 작성할 때 데이터를 계산하는 것이 불가능하고 crc32 , compressedSize uncompressedSize0이 작성 되고 generalPurposeBitFlag 의 세 번째 비트가 1로 설정되고 Data 설명자 유형 구조가 LocalFileHeader 뒤에 추가 됩니다 .

http://blog2k.ru/archives/3391

 
C-4 :

플래그를 추가할 필요가 없습니다. CRC 코드가 있는 경우 이를 수락하도록 CryptDecode를 변경하는 것으로 충분합니다. 존재하지 않고 코드 필드가 0으로 채워지면 CRC 코드가 사용되지 않습니다. 그게 전부입니다. 또한 모든 아카이브에 해시가 포함될 수 있는 것은 아닙니다.

MQ가 기능을 어떻게 구현했는지 몰라서 몇 가지 제안을 했습니다.

(플래그가 있으면 더 쉽게 할 수 있습니다)

 
친애하는 MQ! 답변 부탁드립니다. 해시 확인을 선택 사항으로 만들 수 있습니까?
 

아주 좋을 것입니다.

ZIP 아카이브에 있는 많은 수의 파일에 빠르게 액세스할 수 있습니다!

빠른 파일 액세스가 가능한 작은 데이터베이스가 좋습니다!

열린 ZIP - 오프셋으로 통신 및 "드라이브" 테이블을 만들었습니다.

 

... 그들은보고 생각합니다.

그들은 아마도 현지 장인들이 CRYPT_ARCH_ZIP 기능에 대한 예상치 못한 사용을 발견할 것이라고 예상하지 못했을 것입니다.

Mikalas :

아주 좋을 것입니다.
ZIP 아카이브에 있는 많은 수의 파일에 빠르게 액세스할 수 있습니다!
파일에 빠르게 액세스할 수 있는 작은 데이터베이스가 좋습니다!
열린 ZIP - 오프셋으로 서신 및 "드라이브" 테이블을 만들었습니다.

+100 아카이브 작업은 매우 필요합니다. 물론 MQ에 의한 컨텐츠 제어의 완전한 보존과 함께.

 
C-4 :

... 그들은 볼 생각합니다.

그들은 아마도 현지 장인들이 CRYPT_ARCH_ZIP 기능에 대한 예상치 못한 사용을 발견할 것이라고 예상하지 못했을 것입니다.

+100 아카이브 작업은 매우 필요합니다. 물론 MQ에 의한 컨텐츠 제어의 완전한 보존과 함께. 아카이브 내부에는 exe 및 실행 파일이 없어야 합니다.

바실리!

EXE가 있는지 없는지는 중요하지 않습니다!

나는 겉보기에 눈에 띄지 않는 파일에서 실행 파일을 "어셈블"할 수 있습니다.

바이트 추가 또는 변경

이를 위해 ZIP을 사용할 필요가 없습니다!

파일을 로드하고 저장할 수 있게 되자 마자 EXE를 만드십시오 - 신경 쓰지 마세요!

 
Mikalas :

바실리!

EXE가 있는지 없는지는 중요하지 않습니다!

나는 겉보기에 눈에 띄지 않는 파일에서 실행 파일을 "빌드"할 수 있습니다!

이를 위해 ZIP을 사용할 필요가 없습니다!

사실 맞아요. 임의의 바이트 모음과 다르지 않도록 실행 파일을 암호화할 수 있습니다.