PDF as a Blockchain
A PDF file comprises a number of objects of different type. The most flexible of these is a Dictionary Type that allows for a set key value pairs to be collected together in a semantic manner. This data type can be extended with custom values so you can create your own dictionaries and dictionary entries. Conforming readers (i.e. those that correctly implement the PDF specification) will ignore these extensions that they don’t understand but specialist readers can use them. This technique provides the platform for embedding a Merkle Tree and therefore a blocking chain within a PDF. But why?
A PDF file also allows the embedding of arbitrary content as external streams or associated files. This content can be easily linked to the blockchain. This creates on chain storage. However, it is also easy to remove the associated file but leave references to it in the blockchain in the PDF that match the associated file creating off chain storage. When necessary the file can be added back in and the entire document presented for third party verification. This is the Portable Blockchain Format.