암호화된 hwpx 파일 읽기에 대한 질문 입니다..

공개해 주신 hwpx 파일포맷을 바탕으로 암호화된 hwpx 파일을 읽어보려고 합니다.

질문에 앞서 제가 이해한 내용을 적어봅니다.
공개한 hwpx 파일 포맷 문서와 OASIS opendocument 1.2을 바탕으로 제가 추측한 복호화 순서입니다.

  1. StartKey을 생성
    a. 입력된 암호문자열에 UTF-8 바이트순열을 구함.
    b. a의 결과 바이트 순열을 SHA-256 방식으로 hash 코드를 구함
    c. b의 결과 얻어지는 32 bytes 코드를 StartKey로 지정함
  2. 암호화 키를 생성함
    a. 초기 암호로 StartKey(32bytes 바이트순열) 을 넣고,
    b. Manifest.xml에서 정보를 얻어서 salt, 반복횟수을 넣고
    c. PBKDF2(HMac, SHA1)을 통해 키 생성
    d. c의 결과 얻어지는 32 bytes 코드를 암호키로 지정함
  3. 암호키를 가지고 복호화
    a. 암호키(32bytes 바이트순열)을 넣고,
    b. Manifest.xml에서 정보를 얻어서 Init-Vector을 넣고
    c. AES_256/CBC/NOPadding으로 암호화된 내용을 복호화함
  4. Inflate 압축 해제
    a. 복호화 바이트 순열을 Inflate 압축해제함

이렇게 처리 했는데… 원하는 결과가 나오지 않아서 힌트를 얻기 위해 질문을 드립니다.

  1. 암호화된 HWPX은 한컴의 기술적인 요소(Private Key, 인증서 등등) 없이 읽을 수 있는지 ??
  2. 위에 추측한 순서나 내용이 맞는지 ??
  3. 제가 의심하는 부분은 StartKey을 구하는 부분인데…
    a. Manifest.xml에 “<odf:start-key-generation start-key-generation - name=“XML-Signature Syntax and Processing” key-size=“32”/>”
    이런 정보가 있는데. "xmldsig#sha256"이 알고리즘이 위에 제가 적은 내용과 동일한 것이지 ??

이상입니다.

안녕하세요. 한컴디벨로퍼입니다.

현재 담당자가 내용을 확인하고 있습니다. 조금만 기다려 주세요.

한컴디벨로퍼를 이용해 주셔서 감사합니다.

네…꼭 알고싶습니다. 부탁드립니다.

우선 오랜 시간이 걸리게 된 점 죄송합니다. 저희 디벨로퍼에서 검토한 결과, 답변을 드리기가 어려운 부분이 있었습니다. 번거로우시겠지만 문의하신 내용은 아래 '제품 문의’란을 통해 직접 문의해주시기 바랍니다. 문의분야는 아래와 같이 기입해주시면 되겠습니다. 아울러 해당 서비스는 고객님께 정확한 도움을 드리기 위해 한컴닷컴에 로그인 후 문의를 남기실 수 있는 점 참고 부탁 드립니다.
이용에 불편을 드려 죄송합니다.

아울러 담당하는 기술 문의가 아닌 그 외 문의는 '일반 문의’로 카테고리를 변경해드리고 있습니다. 이점 양해 부탁 드립니다.

한컴디벨로퍼를 이용해 주셔서 감사합니다.