{"id":1097,"date":"2013-02-18T14:13:15","date_gmt":"2013-02-18T12:13:15","guid":{"rendered":"http:\/\/saisa.eu\/blogs\/Guidance\/?p=1097"},"modified":"2013-02-19T14:25:48","modified_gmt":"2013-02-19T12:25:48","slug":"protecting-your-work-by-timestamping-your-file-fingerprints","status":"publish","type":"post","link":"https:\/\/saisa.eu\/blogs\/Guidance\/?p=1097","title":{"rendered":"Protecting your work by timestamping your file fingerprints"},"content":{"rendered":"<p>Are you sharing or producing photos, images, music, videos, programs, documents or anything else and you are concerned on <strong>how to proof that your work is yours<\/strong>?<\/p>\n<p>First of all, you need to be able to show that you really possessed the file or files at a certain time. The typical way of doing that is to create a fingerprint (mathematical <a href=\"http:\/\/en.wikipedia.org\/wiki\/Message_digest\">hash<\/a> ) of your file, and get that fingerprint (hash) timestamped by a trusted third party.<\/p>\n<p>Fingerprint (hash) is unique and shows that only a file with certain contents (sequence of bits) can have produced this fingerprint value. And since you have no control over the third party&#8217;s time, nor over their <a href=\"http:\/\/en.wikipedia.org\/wiki\/Digital_signature\">signed<\/a> timestamp, then you have no ways to modify the timestamp after it has ben created for your file. Therefore you can show that you really had <strong>the certain file<\/strong> in your possession <strong>at certain time<\/strong>.<\/p>\n<p>It is possible to run your own timestamp server and provide signing service with timestamp to your organization, but that is another story. In this blog, the focus is photographers and musicians who wish to protect their own work.<\/p>\n<blockquote>\n<p>Wikipedia:<\/p>\n<p>According to the <a href=\"http:\/\/tools.ietf.org\/html\/rfc3161\">RFC 3161<\/a> standard, <a href=\"http:\/\/en.wikipedia.org\/wiki\/Trusted_timestamping\">Trusted timestamp<\/a> is a timestamp issued by a trusted third party (TTP) acting as a Time Stamping Authority (TSA). It is used to prove the existence of certain data before a certain point (e.g. contracts, research data, medical records,&#8230;) without the possibility that the owner can backdate the timestamps.<\/p>\n<\/blockquote>\n<p><strong>Free service example 1, protecting single vulnerable file &#8220;sparky2012.png&#8221;<\/strong><\/p>\n<p>Case: The photo, file &#8220;sparky2012.png&#8221;, is shared online (see below).<\/p>\n<blockquote>\n<p><img loading=\"lazy\" alt=\"sparky2012\" src=\"http:\/\/saisa.eu\/blogs\/Guidance\/wp-content\/uploads\/2013\/02\/sparky2012.png\" width=\"280\" height=\"451\" \/><\/p>\n<\/blockquote>\n<p>Step 1: Calculate hash<\/p>\n<p>The SHA-512 hash is calculated with FileVerifier++ tool (see earlier <a title=\"FileVerifier++ and Karen\u2019s Hasher, GUI Tools for fingerprinting your files with SHA-512\" href=\"http:\/\/saisa.eu\/blogs\/Guidance\/?p=1088\">blog<\/a> ). The result is shown below.<\/p>\n<div style=\"WIDTH: 650px; HEIGHT: 100px; OVERFLOW: auto\">\n<pre>\n; Created with FileVerifier++ v0.6.3.5830\n8af92ce071d76cb8ff8d3a6c4f1be537bc249261aafa215ee8dce1669e7f386d28efdcdf285263f11bc453c4049b9defc11f3045aacd0c59a87609a81a62ace2 *C:\\blog\\sparky2012.png\n<\/pre>\n<\/div>\n<p>Step 2: Ask for signed timestamp<\/p>\n<p>In this example, <a href=\"http:\/\/www.trustedtimestamping.com\">www.trustedtimestamping.com<\/a> is used as trusted third party. On their site, there is a form, where one can fill in 2 different hash values, a comment field, and a return address there to receive the signed timestamp (see below).<\/p>\n<p><a href=\"http:\/\/saisa.eu\/blogs\/Guidance\/wp-content\/uploads\/2013\/02\/trustedtimestamping.png\"><img loading=\"lazy\" alt=\"trustedtimestamping\" src=\"http:\/\/saisa.eu\/blogs\/Guidance\/wp-content\/uploads\/2013\/02\/trustedtimestamping-small.png\" width=\"550\" height=\"351\" \/><\/a><\/p>\n<p>In few minutes, the signed email is sent to your email box.<\/p>\n<p>Step 3: Archive the proofs<\/p>\n<p>Many online tools has limitations with signed emails. Therefore it is better to access those emails via a desktop client like <a href=\"http:\/\/www.mozilla.org\/en-US\/thunderbird\/\">Thunderbird<\/a>.<\/p>\n<p>Since the trustedtimestamping.com has certificate from COMODO, then one need to define COMODO as trusted Authority if one would like Thurderbird to show &#8220;sing verification ok&#8221; for the email. The COMODO certificate is available via web <a href=\"http:\/\/crt.comodoca.com\/COMODOClientAuthenticationandSecureEmailCA.crt\">link<\/a>. One can save this into a file, and then import into Thurderbird.<\/p>\n<p>If wished, one can import the COMODO certificate via following menu choises: Tools -&gt; Options -&gt; Advanced -&gt; Certificates -&gt; View Certificates -&gt; Authorities -&gt; Import<\/p>\n<p>After this &#8220;the envelope seal&#8221; looks fine in the email reading mode, see below.<\/p>\n<p><a href=\"http:\/\/saisa.eu\/blogs\/Guidance\/wp-content\/uploads\/2013\/02\/singed-hash-verified.png\"><img loading=\"lazy\" alt=\"singed-hash-verified\" src=\"http:\/\/saisa.eu\/blogs\/Guidance\/wp-content\/uploads\/2013\/02\/singed-hash-verified-small.png\" width=\"550\" height=\"274\" \/><\/a><\/p>\n<p>By clicking on the envelope, then more details are visible. ie. email is signed by &#8220;Trusted timestamping&#8221; and certificate that they are using originates from COMODO. The details also show that &#8220;message has not been altered&#8221;.<\/p>\n<p><img loading=\"lazy\" alt=\"singed-hash-message-is-signed\" src=\"http:\/\/saisa.eu\/blogs\/Guidance\/wp-content\/uploads\/2013\/02\/singed-hash-message-is-signed.png\" width=\"496\" height=\"313\" \/><\/p>\n<p>One can save the received signed email into a local file (*.eml).<\/p>\n<p>For the proof, one need to archive following files:<\/p>\n<ul>\n<li>sparky2012.png\n<ul>\n<li>containing the shared photo<\/li>\n<\/ul>\n<\/li>\n<li>sparky2012.SHA512\n<ul>\n<li>containing the hash of photo<\/li>\n<\/ul>\n<\/li>\n<li>sparky2012-timestamp.eml\n<ul>\n<li>containing the signed timestamp from trusted third party<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Notes:<\/p>\n<ul>\n<li>Only one free service is presented here. However, this method is more tedious than with the commercial counterparts. There are more free services available, but remember that when looking for free alternative, the solution quality, suitability and reliability might cause issues.<\/li>\n<li>For serious work, please evalute the commercial solutions in order to find the most suitable for you purposes. However, with free alternatives, one can achieve much better proof than &#8220;your word only&#8221;.<\/li>\n<\/ul>\n<p>Improvements<\/p>\n<ul>\n<li>Approach, &#8220;hash value sepated from timestamp process&#8221;, weakness\n<ul>\n<li>Weakness: someone could always claim that you have copied the hash value from somewhere else. And it is only later that you got the file itself. After all, SHA-512 could have been calculated by someone else.<\/li>\n<li>Mitigation: Include in the timestamp request something that is depending on the file content and that is something that only you know. You can encrypt the file with the password, or private key, that only you have access to, and then include the SHA-512 of that encrypted file as hash 2. <a href=\"http:\/\/portableapps.com\/apps\/utilities\/toucan\">Toucan<\/a> is one alternative for encrypting a single file (see <a title=\"Toucan, portable utility for synching directories, creating backups and encrypting files\" href=\"http:\/\/saisa.eu\/blogs\/Guidance\/?p=1090\">blog<\/a>). Naturally you need to include these additional part in your archive.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><strong>Free service example 2, protecting secure container<\/strong><\/p>\n<p>Instead of requesting timestamp for every singe file, it is more efficient and secure to timestamp a secure container. Here secure container means an archive which contains many files inside and are accessable only via password or private key. Examples are <a title=\"7-zip, Tool for packing and unpacking files and folders, also with encryption\" href=\"http:\/\/saisa.eu\/blogs\/Guidance\/?p=132\">password protected zip<\/a> file and a <a title=\"Truecrypt, Tool for accessing and keeping your files in secured storage\" href=\"http:\/\/saisa.eu\/blogs\/Guidance\/?p=155\">Truecrypt<\/a> container (*.tc).<\/p>\n<p>By timestamping the secure container, one is basically timestamping all the content of that container. For example all the photos inside. Naturally one need to archive the full container instead of single shared files.<\/p>\n<p><strong>Easier way, using commercial solution<\/strong><\/p>\n<p>It is a challende to choose the best solution for your case, since there are several tools available for creating timestamped fingerprints of your documents. In many cases they are focussed on Microsoft Office and Adobe PDF documents. And in some cases your own certificate can be used in the process providing even more proof that you were involved in this process. In some cases the payment is per timestamp operation, while in some solutions the payment is per year, or one time payment only. The possible combinations varies a lot depending on the details and type of documents that can be protected.<\/p>\n<p>Many of these do offer evaluation period. Some links to companies and solutions are:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.universign.eu\/en\/\">https:\/\/www.universign.eu\/en\/<\/a><\/li>\n<li><a href=\"http:\/\/www.aloaha.com\">http:\/\/www.aloaha.com<\/a><\/li>\n<li><a href=\"http:\/\/www.verisign.com\/\">http:\/\/www.verisign.com\/<\/a><\/li>\n<li><a href=\"http:\/\/www.ascertia.com\">http:\/\/www.ascertia.com<\/a><\/li>\n<li><a href=\"http:\/\/easytimestamping.com\">http:\/\/easytimestamping.com<\/a><\/li>\n<li><a href=\"http:\/\/www.ica.cz\/English\">http:\/\/www.ica.cz\/English<\/a><\/li>\n<li><a href=\"https:\/\/www.globalsign.com\">https:\/\/www.globalsign.com<\/a><\/li>\n<li><a href=\"http:\/\/www.comodo.com\">http:\/\/www.comodo.com<\/a><\/li>\n<li><a href=\"http:\/\/www.trustcenter.de\">http:\/\/www.trustcenter.de<\/a><\/li>\n<li><a href=\"http:\/\/www.surety.com\">http:\/\/www.surety.com<\/a><\/li>\n<li><a href=\"http:\/\/www.digistamp.com\">http:\/\/www.digistamp.com<\/a><\/li>\n<li><a href=\"http:\/\/www.cacert.org\/\">http:\/\/www.cacert.org\/<\/a><\/li>\n<li><a href=\"http:\/\/www.proofspace.com\/\">http:\/\/www.proofspace.com\/<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Are you sharing or producing photos, images, music, videos, programs, documents or anything else and you are concerned on how to proof that your work is yours? First of all, you need to be able to show that you really &hellip; <a href=\"https:\/\/saisa.eu\/blogs\/Guidance\/?p=1097\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[17,49,11,33,10,7],"tags":[],"_links":{"self":[{"href":"https:\/\/saisa.eu\/blogs\/Guidance\/index.php?rest_route=\/wp\/v2\/posts\/1097"}],"collection":[{"href":"https:\/\/saisa.eu\/blogs\/Guidance\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/saisa.eu\/blogs\/Guidance\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/saisa.eu\/blogs\/Guidance\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/saisa.eu\/blogs\/Guidance\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1097"}],"version-history":[{"count":2,"href":"https:\/\/saisa.eu\/blogs\/Guidance\/index.php?rest_route=\/wp\/v2\/posts\/1097\/revisions"}],"predecessor-version":[{"id":1100,"href":"https:\/\/saisa.eu\/blogs\/Guidance\/index.php?rest_route=\/wp\/v2\/posts\/1097\/revisions\/1100"}],"wp:attachment":[{"href":"https:\/\/saisa.eu\/blogs\/Guidance\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1097"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/saisa.eu\/blogs\/Guidance\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1097"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/saisa.eu\/blogs\/Guidance\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1097"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}