Open cyhbank opened 3 months ago
안녕하세요. hwpx 의 배포용 문서가 읽히지 않는 이유는 확장에서 구현하지 못했기 때문이며, 이유는 한컴에서 hwpx 배포용 문서의 파일구조에 대한 내용을 공개하지 않았기에 암호가 어느 영역에 저장되어 있는지, 어떤 형태로 암호화되어 있는지를 공개된 문서만으로는 알수 없기 때문입니다.
누군가 같이 이 과정을 함께 할 수도 있으니 자세한 내용을 적습니다.
찾아보니 ODT포맷의 암호화는 아래의 사양을 따르는 것 같습니다. https://docs.oasis-open.org/office/v1.2/cs01/OpenDocument-v1.2-cs01-part3.html 더 상세한 도움말은 아래에서 확인할 수 있었습니다. https://ringlord.com/dl/Decrypting%20ODF%20Files.odt
HWPX 배포용 문서가 ODT 암호화를 따른다면, HWPX 내 포함된 file개체에 대략 아래와 같은 순서대로 HWPX를 암호화 하는 것 같습니다.
한컴에서 '사용자입력 패스워드' 없이도 배포용문서도 열람을 할 수 있으니, 배포용문서 어딘가에 다음의 조합 중 하나로 AES256키 복원하는 정보를 전달하는 것 같습니다. 아니면 한컴만이 아는 트릭을 사용하는것이라고 생각할 수 밖에요.
마지막부분에서 진전할 수 없는 상태입니다. 아시는 분께서 이 글을 보시고 조언을 주시는 행운이 오기를 기다립니다.
hwpx로도 읽기 전용이 있는 모양이네요. 다른 hwp 오픈소스 코드 어디에도 구현되어 있지 않은 것으로 보입니다.
상식적으로 설계했다면 manifest.xml 안 어딘가에 정보를 넣었을 것 같지만, 문서 DRM 구현의 성격으로 볼 때 일부러 문서 다른 곳에 감췄을 수도 있겠습니다.
관심이 있는데 최소한의 내용만 들어있는 읽기전용 hwpx 파일 하나 만들어서 공유 가능하실까요?
@changwoo 최소 내용의 배포용 hwpx 파일 작성하여 첨부합니다. 배포용 암호는 1qa2ws3ed 9글자 입니다. 배포용 hwpx.zip
안녕하세요? 리브레오피스에서 배포용 문서인 hwp 파일을 읽을 수 있는데 배포문서 hwpx 파일은 읽지 못하고 있는데 이유가 뭘까요? 궁금해서 여쭤봅니다~