timestamp : Java Glossary

go to home page T words local find full screen, hide local find menu Google search web for more information on this topic jump to foot of page translate this page with Babelfish 2009-01-02 by Roedy Green ©1996-2009 Canadian Mind Products
index page for letter ⇒ punctuation 0-9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z (all)
The CurrCon Java Applet displays prices on this web page converted with today’s exchange rates into your local international currency, e.g. Euros, US dollars, Canadian dollars, British Pounds, Indian Rupees… CurrCon requires Java 1.1 or later, preferably 1.6.0_14. If you can’t see the prices, or if you just want to learn more about CurrCon, click here for help.
timestamping
In general, timestamping is just marking something with a date and time. You can do that easily in Java with java.lang.System.currentTimeMillis(). Such timestamps can easily be forged. If you wanted to timestamp a jar proving that its contents existed at such as such a time, you would create a digest of the jar (e.g. by signing it) then send the digest to a signing authority who would add a timestamp to it and digitally sign it with their private key and return it to you to prove the jar exsisted in that state at the timestamped time.

Java jarsigner.exe has a feature to make such a request right while signing to get an accurate timestamp. You use the -tsa url or -tsacert alias to to connect to a timestamp service.

You could do something similar with a backup CD to prove you had composed all those works by the backup date, which might come in handy later in a patent or copyright lawsuit.

You send the Certificate Authority a *.tsq file, mime type application/timestamp-query, and get back a *.tsr file application/timestamp-reply. The protocol could not be simpler. You send a file using standard HTTP. You get a file. The DER-base64 formats of the files are defined by RFC 3161 which is part of X.509. As usual the RFC is written in Greek. I suggest snooping on a timestamping conversation with a protocol sniffer to undersand better how it works. RFC 3161 covers timestamping signatures. RFC 5126 covers long term electronic signatures.

Currently, J2SE 5.0+ time stamping does not work with the Verisign time stamping authority. Jarsigner communicates with the time stamping authority through a time stamping protocol (RFC 3161) which Verisign currently does not support. Unfortunately, there is no timestamping for Sun Java code signing certificates. Therefore, you must re-sign your code after the expiration of the certificate.

Starfield has a jarsigner-compliant and RFC 3161-compliant free timestamp server. You can read about it at GoDaddy. You may need to install the Starfield root certificate first. It also works with acrobat.

Aloha also has a timestamp server Aloha free timestamp server. You will need to install the Aloaha root certificate first.

Timestamping Certificate Authorities
Authority Cost in
mindprod.com CurrCon international currency Applet needs Java 1.6 installed for it to display prices in any world currency.
mindprod.com CurrCon international currency Applet needs Java 1.6 installed for it to display prices in any world currency.
Unizeto Certum free to individuals and educational organisations. €0.06 EUR per stamp to companies.
Digistamp $0.50 USD per stamp.
Stamper PGP based email timestamping. Also used to prove that you sent an email.
Comodo For authenticode. free.
Sun’s JDK Technote Guide on Java timestamping : available:

CMP homejump to top
CMP logo
feedback Please email your feedback for publication, errors, omissions, broken/redirected link reports
and suggestions to improve this page to Roedy Green : feedback email
made with CSS
HTML Checked!
ICRA ratings logo
mindprod.com IP:[65.110.21.43]
Your face IP:[38.103.63.58]
You are visitor number 17,990.
You can get a fresh copy of this page from: or possibly from your local J: drive (Java virtual drive/mindprod.com website mirror)
http://mindprod.com/jgloss/timestamp.html J:\mindprod\jgloss\timestamp.html