{"id":266,"date":"2012-11-22T21:48:42","date_gmt":"2012-11-22T21:48:42","guid":{"rendered":"http:\/\/exponentialdecay.co.uk\/blog\/?p=266"},"modified":"2023-07-10T18:18:55","modified_gmt":"2023-07-10T17:18:55","slug":"hacking-the-droid-signature-file-keep-it-simple-stupid","status":"publish","type":"post","link":"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/","title":{"rendered":"Hacking the DROID Signature File: Keep It Simple Stupid!"},"content":{"rendered":"<p>One of the nicest features introduced by the DROID 6.01 development team (Matt Palmer, Richard Flitcroft, Richard Brennan and Alok Dash) was a simplified signature file format. The format cuts out DROID <em>shift bytes<\/em> reducing the pre-processing required to output a signature file by any system that chooses to do so. It\u00a0is a feature that is yet to be adopted as it results in the generation of signature files that are only compatible with DROID 6.01 onward and would require a change to PRONOM stored procedures but you can see traces of it in DROID container signature files which appear in 6.01.<\/p>\n<p>Once again, using the <a title=\"exponentialdecay.co.uk: Genesis of a file format\" href=\"https:\/\/exponentialdecay.co.uk\/blog\/genesis-of-a-file-format\/\" target=\"_blank\" rel=\"noopener\">Eyeglass sample format<\/a> as our example format and making use of the\u00a0<a title=\"exponentialdecay.co.uk: Hacking the DROID Signature File for Characterization\" href=\"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-for-characterization\/\" target=\"_blank\" rel=\"noopener\">signature files<\/a>\u00a0created last week, we can demonstrate the difference this simplification makes like so:<\/p>\n<p>The contraction of the shift bytes using DROID 6.01 syntax can turn a byte sequence (within any particular signature) from this:<\/p>\n<pre>&lt;ByteSequence Reference=\"BOFoffset\"&gt;\r\n &lt;SubSequence MinFragLength=\"0\" Position=\"1\" ... &gt;\r\n &lt;Sequence&gt;BB0D0A657965676C6173731A0AAB&lt;\/Sequence&gt;\r\n &lt;DefaultShift&gt;15&lt;\/DefaultShift&gt;\r\n &lt;Shift Byte=\"BB\"&gt;14&lt;\/Shift&gt;\r\n &lt;Shift Byte=\"0D\"&gt;13&lt;\/Shift&gt;\r\n &lt;Shift Byte=\"0A\"&gt;2&lt;\/Shift&gt;\r\n &lt;Shift Byte=\"65\"&gt;9&lt;\/Shift&gt;\r\n &lt;Shift Byte=\"79\"&gt;10&lt;\/Shift&gt;\r\n &lt;Shift Byte=\"67\"&gt;8&lt;\/Shift&gt;\r\n &lt;Shift Byte=\"6C\"&gt;7&lt;\/Shift&gt;\r\n &lt;Shift Byte=\"61\"&gt;6&lt;\/Shift&gt;\r\n &lt;Shift Byte=\"73\"&gt;4&lt;\/Shift&gt;\r\n &lt;Shift Byte=\"1A\"&gt;3&lt;\/Shift&gt;\r\n &lt;Shift Byte=\"AB\"&gt;1&lt;\/Shift&gt;\r\n &lt;RightFragment MaxOffset=\"1\" MinOffset=\"1\" Position=\"1\"&gt;\r\n  [!00:01]\r\n &lt;\/RightFragment&gt;\r\n &lt;\/SubSequence&gt;\r\n&lt;\/ByteSequence&gt;<\/pre>\n<p>To this:<\/p>\n<pre>&lt;ByteSequence Reference=\"BOFoffset\"&gt;\r\n &lt;SubSequence MinFragLength=\"0\" Position=\"1\" ... &gt;\r\n &lt;Sequence&gt;BB0D0A657965676C6173731A0AAB{1}[!00:01]&lt;\/Sequence&gt;\r\n &lt;\/SubSequence&gt;\r\n&lt;\/ByteSequence&gt;<\/pre>\n<p>As you can see, the DROID regular expression syntax,\u00a0<em>&#8216;{1}[!00:01]&#8217;,<\/em> is now encoded in the primary &#8216;&lt;Sequence&gt;&#8217; tag and the shift bytes no longer exist.<\/p>\n<p>Converting all the signatures in the original signature file created <a title=\"GitHub: Original Eyeglass Signature File\" href=\"https:\/\/github.com\/ross-spencer\/eyeglass\/blob\/master\/eyeglass-signature-sample-files\/eyeglass-complete-signature-file.xml\" target=\"_blank\" rel=\"noopener\">last week<\/a> results in a new, more <a title=\"GitHub: Simplified Eyeglass Signature File\" href=\"https:\/\/github.com\/ross-spencer\/eyeglass\/blob\/master\/eyeglass-signature-sample-files\/eyeglass-complete-signature-file-DROID-6.0-only.xml\" target=\"_blank\" rel=\"noopener\">simplified signature file<\/a>. When we run the signature file across the Eyeglass sample files in DROID we get the same format identifications and characterizations. The difference in size between the two pretty-printed files is\u00a0<em>6410<\/em> vs. <em>3570<\/em> <em>bytes<\/em>. At almost half the size, using extremely basic signatures, the effect on the entire DROID signature file (currently at 1,339,853 bytes) will be even bigger.<\/p>\n<p>Having worked through the pre-processing algorithm to create the <a title=\"The National Archives: PRONOM Signature Development Utility\" href=\"http:\/\/test.linkeddatapronom.nationalarchives.gov.uk\/sigdev\/index.htm\" target=\"_blank\" rel=\"noopener\">PRONOM Signature Development Utility<\/a> (mirrored <a title=\"exponentialdecay.co.uk: PRONOM Signature Development Utility\" href=\"http:\/\/exponentialdecay.co.uk\/sd\/index.htm\" target=\"_blank\" rel=\"noopener\">here<\/a>), I can say that the amount of string manipulation required is phenomenal. It creates a barrier for anyone who wants to create a DROID signature file or who is attempting to interpret one or reuse it in their own identification engine.<\/p>\n<p>The simplified approach:<\/p>\n<ul>\n<li>Reduces string manipulation required in tools creating signature files.<\/li>\n<li>Makes signature files <em>more<\/em> hand codeable.<\/li>\n<li>Reduces complexity required to interpret and parse a DROID signature file.<\/li>\n<\/ul>\n<p>A DROID signature is just a bit of data that says something about how to identify a file format. PRONOM, in pre-processing this data, made a assumption about the implementation of any system that was going to consume it. It was the skill of the DROID 6.01 team to recognize this, and in doing so, separate out the architectures of both PRONOM and DROID and open up the potential for a greater number of systems to <em>create signature files<\/em> that DROID can use and also enable more tools to <em>consume the DROID signature file format<\/em>\u00a0as they choose.<\/p>\n<p>The former example is perhaps the biggest boon to the digital preservation community as systems like UDFR continue to appear that store DROID sequences such as these for PDF 1.3:<\/p>\n<ul>\n<li>PDF 1.3:\u00a0<a title=\"udfr.org: BOF Sequence\" href=\"http:\/\/udfr.org\/ontowiki\/view\/r\/u1r3039\" target=\"_blank\" rel=\"noopener\">Beginning of File Sequence<\/a><\/li>\n<li>PDF 1.3:\u00a0<a title=\"udfr.org: PDF 1.3 EOF Sequence\" href=\"http:\/\/udfr.org\/ontowiki\/view\/r\/u1r3040 \" target=\"_blank\" rel=\"noopener\">End of File Sequence<\/a><\/li>\n<\/ul>\n<p>As these systems begin to store a larger number of sequences that <em>don&#8217;t appear<\/em> in PRONOM, they begin to add value to the community and to the identification tools that are out there. It would be an achievable <em>hack<\/em> to take the UDFR\u00a0dataset\u00a0and begin to output signature files using this simplified format. Whether UDFR or someone else takes up that challenge it is hoped that as other format registries appear in the near future the creators aren&#8217;t put off by a seemingly complex signature file syntax and that they adopt a DROID 6.01+ syntax as <em>at least one<\/em> of their available data representations.<\/p>\n<p>&#8212;<\/p>\n<p><strong>Notes:\u00a0<\/strong>The pre-processing of DROID signatures is described in The National Archives&#8217;\u00a0<a title=\"The National Archives: Digital Preservation Technical Paper 1\" href=\"http:\/\/www.nationalarchives.gov.uk\/aboutapps\/fileformat\/pdf\/automatic_format_identification.pdf\">Digital Preservation Technical Paper 1: Appendix 2<\/a>.<\/p>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_266\" class=\"pvc_stats total_only  \" data-element-id=\"266\" style=\"\"><i class=\"pvc-stats-icon small\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/exponentialdecay.co.uk\/blog\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"excerpt":{"rendered":"<div class=\"entry-summary\">\nOne of the nicest features introduced by the DROID 6.01 development team (Matt Palmer, Richard Flitcroft, Richard Brennan and Alok&hellip;\n<\/div>\n<div class=\"link-more\"><a href=\"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &ldquo;Hacking the DROID Signature File: Keep It Simple Stupid!&rdquo;<\/span>&hellip;<\/a><\/div>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_266\" class=\"pvc_stats total_only  \" data-element-id=\"266\" style=\"\"><i class=\"pvc-stats-icon small\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/exponentialdecay.co.uk\/blog\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"author":1,"featured_media":384,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"activitypub_content_warning":"","activitypub_content_visibility":"","activitypub_max_image_attachments":3,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"","footnotes":""},"categories":[3],"tags":[15,17,33,16,36,37],"class_list":["post-266","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-digital-preservation","tag-droid","tag-file-formats","tag-magic-numbers","tag-pronom","tag-signatures","tag-udfr","entry"],"a3_pvc":{"activated":true,"total_views":6055,"today_views":0},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Hacking the DROID Signature File: Keep It Simple Stupid! - ross spencer :: exponentialdecay.digipres :: blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Hacking the DROID Signature File: Keep It Simple Stupid! - ross spencer :: exponentialdecay.digipres :: blog\" \/>\n<meta property=\"og:description\" content=\"One of the nicest features introduced by the DROID 6.01 development team (Matt Palmer, Richard Flitcroft, Richard Brennan and Alok&hellip; Continue reading &ldquo;Hacking the DROID Signature File: Keep It Simple Stupid!&rdquo;&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/\" \/>\n<meta property=\"og:site_name\" content=\"ross spencer :: exponentialdecay.digipres :: blog\" \/>\n<meta property=\"article:published_time\" content=\"2012-11-22T21:48:42+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-07-10T17:18:55+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/exponentialdecay.co.uk\/blog\/wp-content\/uploads\/2012\/11\/new-syntax-header.png\" \/>\n\t<meta property=\"og:image:width\" content=\"750\" \/>\n\t<meta property=\"og:image:height\" content=\"367\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Ross Spencer\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@beet_keeper\" \/>\n<meta name=\"twitter:site\" content=\"@beet_keeper\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ross Spencer\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/hacking-the-droid-signature-file-keep-it-simple-stupid\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/hacking-the-droid-signature-file-keep-it-simple-stupid\\\/\"},\"author\":{\"name\":\"Ross Spencer\",\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/#\\\/schema\\\/person\\\/4cae0a954400f42b9c1b70c699837716\"},\"headline\":\"Hacking the DROID Signature File: Keep It Simple Stupid!\",\"datePublished\":\"2012-11-22T21:48:42+00:00\",\"dateModified\":\"2023-07-10T17:18:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/hacking-the-droid-signature-file-keep-it-simple-stupid\\\/\"},\"wordCount\":610,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/#\\\/schema\\\/person\\\/4cae0a954400f42b9c1b70c699837716\"},\"image\":{\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/hacking-the-droid-signature-file-keep-it-simple-stupid\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/wp-content\\\/uploads\\\/2012\\\/11\\\/new-syntax-header.png\",\"keywords\":[\"DROID\",\"File Formats\",\"Magic Numbers\",\"PRONOM\",\"Signatures\",\"UDFR\"],\"articleSection\":[\"Digital Preservation\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/hacking-the-droid-signature-file-keep-it-simple-stupid\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/hacking-the-droid-signature-file-keep-it-simple-stupid\\\/\",\"url\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/hacking-the-droid-signature-file-keep-it-simple-stupid\\\/\",\"name\":\"Hacking the DROID Signature File: Keep It Simple Stupid! - ross spencer :: exponentialdecay.digipres :: blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/hacking-the-droid-signature-file-keep-it-simple-stupid\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/hacking-the-droid-signature-file-keep-it-simple-stupid\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/wp-content\\\/uploads\\\/2012\\\/11\\\/new-syntax-header.png\",\"datePublished\":\"2012-11-22T21:48:42+00:00\",\"dateModified\":\"2023-07-10T17:18:55+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/hacking-the-droid-signature-file-keep-it-simple-stupid\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/hacking-the-droid-signature-file-keep-it-simple-stupid\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/hacking-the-droid-signature-file-keep-it-simple-stupid\\\/#primaryimage\",\"url\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/wp-content\\\/uploads\\\/2012\\\/11\\\/new-syntax-header.png\",\"contentUrl\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/wp-content\\\/uploads\\\/2012\\\/11\\\/new-syntax-header.png\",\"width\":750,\"height\":367},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/hacking-the-droid-signature-file-keep-it-simple-stupid\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Hacking the DROID Signature File: Keep It Simple Stupid!\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/\",\"name\":\"ross spencer :: exponentialdecay.digipres :: blog\",\"description\":\"Digital preservation analyst, researcher, and software developer\",\"publisher\":{\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/#\\\/schema\\\/person\\\/4cae0a954400f42b9c1b70c699837716\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/#\\\/schema\\\/person\\\/4cae0a954400f42b9c1b70c699837716\",\"name\":\"Ross Spencer\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/avatar-scaled.png\",\"url\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/avatar-scaled.png\",\"contentUrl\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/avatar-scaled.png\",\"width\":2560,\"height\":2560,\"caption\":\"Ross Spencer\"},\"logo\":{\"@id\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/avatar-scaled.png\"},\"description\":\"Digital preservation domain expert and full-stack software developer.\",\"sameAs\":[\"http:\\\/\\\/www.exponentialdecay.co.uk\\\/blog\",\"https:\\\/\\\/www.instagram.com\\\/b33tk33p3r\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/ross-spencer-b6b9b758\\\/\",\"https:\\\/\\\/x.com\\\/beet_keeper\"],\"url\":\"https:\\\/\\\/exponentialdecay.co.uk\\\/blog\\\/author\\\/exponentialdecay\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Hacking the DROID Signature File: Keep It Simple Stupid! - ross spencer :: exponentialdecay.digipres :: blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/","og_locale":"en_US","og_type":"article","og_title":"Hacking the DROID Signature File: Keep It Simple Stupid! - ross spencer :: exponentialdecay.digipres :: blog","og_description":"One of the nicest features introduced by the DROID 6.01 development team (Matt Palmer, Richard Flitcroft, Richard Brennan and Alok&hellip; Continue reading &ldquo;Hacking the DROID Signature File: Keep It Simple Stupid!&rdquo;&hellip;","og_url":"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/","og_site_name":"ross spencer :: exponentialdecay.digipres :: blog","article_published_time":"2012-11-22T21:48:42+00:00","article_modified_time":"2023-07-10T17:18:55+00:00","og_image":[{"width":750,"height":367,"url":"https:\/\/exponentialdecay.co.uk\/blog\/wp-content\/uploads\/2012\/11\/new-syntax-header.png","type":"image\/png"}],"author":"Ross Spencer","twitter_card":"summary_large_image","twitter_creator":"@beet_keeper","twitter_site":"@beet_keeper","twitter_misc":{"Written by":"Ross Spencer","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/#article","isPartOf":{"@id":"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/"},"author":{"name":"Ross Spencer","@id":"https:\/\/exponentialdecay.co.uk\/blog\/#\/schema\/person\/4cae0a954400f42b9c1b70c699837716"},"headline":"Hacking the DROID Signature File: Keep It Simple Stupid!","datePublished":"2012-11-22T21:48:42+00:00","dateModified":"2023-07-10T17:18:55+00:00","mainEntityOfPage":{"@id":"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/"},"wordCount":610,"commentCount":2,"publisher":{"@id":"https:\/\/exponentialdecay.co.uk\/blog\/#\/schema\/person\/4cae0a954400f42b9c1b70c699837716"},"image":{"@id":"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/#primaryimage"},"thumbnailUrl":"https:\/\/exponentialdecay.co.uk\/blog\/wp-content\/uploads\/2012\/11\/new-syntax-header.png","keywords":["DROID","File Formats","Magic Numbers","PRONOM","Signatures","UDFR"],"articleSection":["Digital Preservation"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/","url":"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/","name":"Hacking the DROID Signature File: Keep It Simple Stupid! - ross spencer :: exponentialdecay.digipres :: blog","isPartOf":{"@id":"https:\/\/exponentialdecay.co.uk\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/#primaryimage"},"image":{"@id":"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/#primaryimage"},"thumbnailUrl":"https:\/\/exponentialdecay.co.uk\/blog\/wp-content\/uploads\/2012\/11\/new-syntax-header.png","datePublished":"2012-11-22T21:48:42+00:00","dateModified":"2023-07-10T17:18:55+00:00","breadcrumb":{"@id":"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/#primaryimage","url":"https:\/\/exponentialdecay.co.uk\/blog\/wp-content\/uploads\/2012\/11\/new-syntax-header.png","contentUrl":"https:\/\/exponentialdecay.co.uk\/blog\/wp-content\/uploads\/2012\/11\/new-syntax-header.png","width":750,"height":367},{"@type":"BreadcrumbList","@id":"https:\/\/exponentialdecay.co.uk\/blog\/hacking-the-droid-signature-file-keep-it-simple-stupid\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/exponentialdecay.co.uk\/blog\/"},{"@type":"ListItem","position":2,"name":"Hacking the DROID Signature File: Keep It Simple Stupid!"}]},{"@type":"WebSite","@id":"https:\/\/exponentialdecay.co.uk\/blog\/#website","url":"https:\/\/exponentialdecay.co.uk\/blog\/","name":"ross spencer :: exponentialdecay.digipres :: blog","description":"Digital preservation analyst, researcher, and software developer","publisher":{"@id":"https:\/\/exponentialdecay.co.uk\/blog\/#\/schema\/person\/4cae0a954400f42b9c1b70c699837716"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/exponentialdecay.co.uk\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/exponentialdecay.co.uk\/blog\/#\/schema\/person\/4cae0a954400f42b9c1b70c699837716","name":"Ross Spencer","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/exponentialdecay.co.uk\/blog\/wp-content\/uploads\/2025\/06\/avatar-scaled.png","url":"https:\/\/exponentialdecay.co.uk\/blog\/wp-content\/uploads\/2025\/06\/avatar-scaled.png","contentUrl":"https:\/\/exponentialdecay.co.uk\/blog\/wp-content\/uploads\/2025\/06\/avatar-scaled.png","width":2560,"height":2560,"caption":"Ross Spencer"},"logo":{"@id":"https:\/\/exponentialdecay.co.uk\/blog\/wp-content\/uploads\/2025\/06\/avatar-scaled.png"},"description":"Digital preservation domain expert and full-stack software developer.","sameAs":["http:\/\/www.exponentialdecay.co.uk\/blog","https:\/\/www.instagram.com\/b33tk33p3r\/","https:\/\/www.linkedin.com\/in\/ross-spencer-b6b9b758\/","https:\/\/x.com\/beet_keeper"],"url":"https:\/\/exponentialdecay.co.uk\/blog\/author\/exponentialdecay\/"}]}},"views":7161,"_links":{"self":[{"href":"https:\/\/exponentialdecay.co.uk\/blog\/wp-json\/wp\/v2\/posts\/266","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/exponentialdecay.co.uk\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/exponentialdecay.co.uk\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/exponentialdecay.co.uk\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/exponentialdecay.co.uk\/blog\/wp-json\/wp\/v2\/comments?post=266"}],"version-history":[{"count":48,"href":"https:\/\/exponentialdecay.co.uk\/blog\/wp-json\/wp\/v2\/posts\/266\/revisions"}],"predecessor-version":[{"id":1380,"href":"https:\/\/exponentialdecay.co.uk\/blog\/wp-json\/wp\/v2\/posts\/266\/revisions\/1380"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/exponentialdecay.co.uk\/blog\/wp-json\/wp\/v2\/media\/384"}],"wp:attachment":[{"href":"https:\/\/exponentialdecay.co.uk\/blog\/wp-json\/wp\/v2\/media?parent=266"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/exponentialdecay.co.uk\/blog\/wp-json\/wp\/v2\/categories?post=266"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/exponentialdecay.co.uk\/blog\/wp-json\/wp\/v2\/tags?post=266"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}