The Source for Java Technology Collaboration


I have an interesting security problem. I have a living document (that is, a document where the details of the document evolve over time - such as a specification). At a particular point someone may review and then digitally sign the document so that people can know that the document hasn't been tampered with; is official or so on.

Later someone else may alter bits of the document and then sign their revision (note: they sign the revision - including previous authors' changes - not just their change). More than one author can sign any particular revision. The changes (including previous changes) are kept as a logfile of edits to the original revision (perhaps using 'diff').

When any particular revision is signed, any previous revisions signed by that author are removed from the history. The log files are not permitted to exceed 64k in total. Any change that would cause the log files to exceed the 64k limit is blocked (the workaround is to get as many authors as possible to sign the current revision of the document, thus deleting most (or all, if every author signs,) of the hsitory.

Now, someone who views the document has to choose which authors they trust to retrieve a revision of the document they can trust.

If the document was in a database fronted by a application server, how could a webclient and an application server work together so that the application server knows which version of the document to give the client, without explicitly asking the user and without breaching security?

It sounds a little like CVS or Subversion (SVN), but I don't believe that either have a concept of trust where different peoples trust of the authors differ. My understanding is that both CVS and SVN have a simple trust model where if the CVS or SVN administrator trusts an author, then so should everyone.

Have you come across something similar elsewhere? Do you know (or can you work out) an algorithm that could be used to achieve this?

CJANMetaDiffDesignDocument

Please feel free to add your own comments below...

-- last updated by Michael Davey on 04 May 2004

Topic InterestingSecurityProblem . { Edit | Ref-By | Printable | Diffs r3 < r2 < r1 | More }
 XML java.net RSS

Revision r3 - 04 May 2004 - 12:17:26 - Main.md84419
Parents: CJAN