Visual Authentication of Digital Documents

In this project digital visual “watermarks” are examined as a method for ensuring document authentication. The approach complements digital signatures by ensuring they function properly in environments where input and output hardware cannot be unconditionally trusted. This is almost always the case with general purpose personal computers, which are susceptible to viruses and other hacker attacks and usually form the weakest link in every cryptographic chain.

It is assumed that digital signatures are produced and checked by a secure, trusted module (e.g. a smartcard). The task of the watermarking is to ensure that the document for which the module performs signing or checking is identical to the document the user sees on his display. In other words, the user must be sure that the document has not been manipulated on the way to the secure module. The task is not trivial, since the attacker can be assumed to monitor all communication and know both the document and possible response from the module. The module cannot simply return the document it received back to the user to check its integrity. An attacker could modify it on the way to the module and again undo the modifications when the module sends it back, so the user would not notice anything.

To prevent such tampering, the module embeds a watermark into the document it received from the user. The watermark is unknown to the attacker, but the user knows what to expect. The module sends such watermarked document back to the user for approval. If the user sees both that his document has not been changed and that the watermark is correct, he can be confident that no one has tampered with the document.

For the scheme to work, it is necessary that the user can recognize the watermark without computer help. On the other hand, the attacker, even knowing the document and the module’s response, must not be able to detect and thus forge it. For achieving this, two approaches are pursued:

  1. Document authentication using visual cryptography, and
  2. Document authentication using animated visual CAPTCHAs

Both approaches have advantages and drawbacks. The first can be made perfectly secure, but at the price of user friendliness. The second is easy to use, but it’s security depends on the capabilities of state-of-the-art pattern recognition algorithms. In both approaches, the document has to be transformed in an image.

 

Visual Cryptography

In the visual cryptography approach, the document, superimposed with the watermark, is “encrypted” by splitting it into two so-called shares. One of them is fixed in advance, known to the user and serves as the key, while the other one is the “cyphertext”. User’s key is printed on a transparency which he superimposes with the “cyphertext” he receives from the module. The result is an image containing both the watermark and the original document.

 

Cyphertext:

 

+ Key:

 

= Result:

Figure 1: An example of visual watermarking using visual cryptography (section).

 

 

Animated visual CAPTCHAs

Visual CAPTCHAs are generally images whose content is recognizable by humans, but not by computers (at least not with the current state-of-the-art pattern recognition algorithms). Simple CAPTCHAs are often used by various web-based services to grant access only to humans, but not to robots, spiders etc.

CAPTCHAs’ property of being hard to recognize by machines makes them useful as watermarks to combine with the document. Especially appealing are animated CAPTCHAs, which can be shown directly on the computer screen (no need for printing!) and are even harder to break by a machine.

 

Figure 2: An example of visual watermarking using visual CAPTCHAs (snapshot).

 

 

Contact Person