Java 응용 프로그램에서 JDK JCA API를 사용하여 암호화 된 zip을 만듭니다. 사용 된 알고리즘은 암호 기반 암호화 PBEWithMD5AndDES입니다. 우리가 직면 한 문제는 압축을 풀 때입니다. 간헐적으로 예외없이 압축을 풀지 못했습니다.Java - 암호화/암호 해독 오류
Caused by: `java.lang.IllegalArgumentException: MALFORMED;`
`java.util.zip.ZipCoder.toString(ZipCoder.java:58);`
`java.util.zip.ZipCoder.toStringUTF8(ZipCoder.java:117);`
`java.util.zip.ZipInputStream.readLOC(ZipInputStream.java:297);`
`java.util.zip.ZipInputStream.getNextEntry(ZipInputStream.java:121);`
대부분의 경우 ZipFile에서 해독 중에 ZipEntry 유틸리티 클래스가 실패합니다.
위의 문제에 대한 의견을 제공해주십시오.
우리가 사용하는 인코딩 용 문자 세트는 Charset.forName ("US-ASCII")입니다. 위의 스택 추적과 관련된 오류가 java.util.zip.ZipCoder.toStringUTF8 (ZipCoder.java:117)로 표시되므로이 문제에 기여합니까?
charset이 설정되지 않았습니다. 여기 우리가 어떻게 읽었 는가입니다.
그러나 이것은 설정되지 않은 경우에도 다른 암호화 된 zip에서 작동합니다. 모든 zip이 제대로 작동하는 것은 아닙니다.이 문제는 간헐적으로 발생합니다.
도움이 될 것입니다?
감사합니다.
문제는 분명히 제공 한 코드의 세부 사항을 중심으로 이루어집니다. 우리는이 종류의 질문에 대한 유용한 답을 얻기 위해 문제를 시연하는 [mcve]를 준비하고 발표 할 것을 기대합니다. 보너스로, MCVE를 준비하는 과정 자체가 당신을 하나의 해결책으로 이끌 수 있습니다. –