Skip to content

DocFence 0.13.0

Choose a tag to compare

@SybilGambleyyu SybilGambleyyu released this 01 Aug 09:06

Word protection-state evidence

DocFence 0.13 inventories stored Word editing and write-protection state as private, aggregate evidence:

  • documentProtection element, explicit enforcement, formatting restriction, and edit-mode counts;
  • writeProtection, read-only recommendation, and password-material counts;
  • DFP039 to require a handoff with no stored Word protection state;
  • DFP040 to freeze an approved protection-state baseline.

Password hashes, salts, verifier values, provider and algorithm fields, all other attributes, Settings-part paths, and fingerprints are never emitted. A same-count verifier rewrite remains visible through a private digest. Recognized document Settings parts are discovered through the conventional path and Transitional or Strict relationships; duplicate or malformed recognized protection leaves fail closed.

This is not encryption or a security verdict. DocFence does not validate password construction or strength, recover or test passwords, bypass a restriction, determine effective Word enforcement, or decide whether stored protection is secure.

Validation

  • 35 tests, Ruff, and compileall
  • Python 3.11/3.13 CI
  • real Open XML SDK write-protection and document-protection package smokes
  • existing public signed-package regression smoke
  • source and wheel independently rebuilt byte-identically
  • installed-wheel profile smoke
  • SHA256SUMS release asset