DEVICE FOR DIGITALLY SIGNING ELECTRONIC DOCUMENTS
FIELD OF THE INVENTION
The present invention relates to an arrangement for signing electronic documents digitally. The present invention also relates to a use of an arrangement for signing electronic documents digitally. In particular, the invention relates to measures for assuring that a displayed electronic document is the very document that is signed digitally.
BACKGROUND OF THE INVENTION
Documents that previously were produced as paper documents are today often produced in the form of electronic documents. An electronic document is here intended to mean any collection of bits, such as an electronic text document, an electronic business transaction, an electronic message of some type or a file. In order to solve the problem that handwritten signatures are not applicable on electronic documents, the digital signature was invented in the 1970s. Digital signatures are produced using complicated mathematics, which guarantees that the signature is unforgeable and uncopyable. In order to sign a document digitally a person A to sign the document has to have a private key that is secret to any other person. When the person A is to sign the electronic document he/she performs a mathematical calculation using the document and the private key. The result of the calculation, is the digital signature that is appended to the document. The person A also has a public key that is publicly available. The public key allows anyone to verify that the digital signature really was produced by the person A. This is done by means of performing a different calculation
using the signed document and the public key. Since the person A alone knows his/her own private key the document must have been signed by him/her if the verification calculation checks out.
A handwritten signature on a document is generally used to indicate that the person who has signed the document agrees to the document or acknowledges that he/she has seen it. The handwritten signature has an important legal status and can serve as evidence in court.
In many countries, the digital signature is now legally binding, just as the handwritten signature. Many people claim that this is unfortunate since they claim that there are many security issues left to solve before digital signatures become nearly as safe as handwritten signatures.
The tool used to produce the digital signature is generally a computer. It is the computer that performs the calculation necessary for signing and it is the computer that presents the electronic document to be signed and possibly transmits the signed document. If the computer can not be trusted, neither can the electronic document and the digital signature.
The international patent application WO 98/52151 aims at improving security when sensitive information is transmitted over a communications network, such as the Internet. When the Internet is used for banking services, transaction messages that contain very sensitive information, such as credit card numbers, are transferred between computers or servers. Methods and equipment that allow a user control over the creation of the transaction message are shown in the application. The transaction message is created by means of using a smart card that is inserted in a reader of a computer, a mobile phone or a terminal in a shop. The smart card contains a private key and the transaction message is created either in the smart card or in the computer and then signed using the private key stored in the smart card. WO 98/52151 deals with the problem of
giving the user control over the contents of a transaction message by means of letting the user himself create the message preferably off-line.
A problem with digital signatures that the above mentioned international publication does not tackle is how to make sure that the user actually signs the document (or message) that he thinks he signs. There is not much use in controlling the contents of a transaction message if the computer holds a hidden message on which it performs the digital signing procedure instead of on the message that the user has created. This is possible since computers contain software that easily can be tampered with. Programs can be written that cause the computer to display one message and sign another. There are also programs that steal the user's private key and use it to sign documents without the user's knowledge. More detailed information regarding this can be found on the Internet page http://www.counterpane.eom/crypto-gram-0011.html#l (we refer to the information found on this page on March 3, 2001).
There is thus the problem that the digital signature does not provide a link between the signing person and the document to be signed in the way that a handwritten signature does. This can cause a person's signature to end up on an electronic document that the person has never seen.
The European patent application EP 1054364 A2 and the German patent application DE 19811720 Al aims at solving this problem by means of securing that what is displayed is what is signed.
The European patent application EP 1054364 A2 solves the problem by means of creating a close relationship between a trusted display device and a chip card belonging to the person to sign a document. The close relationship between the display device and the chip card is achieved since the chip card knows the public key of the display device and vice versa. The display device and chip card co-
operate in the signing procedure and communicate using encrypted messages that can be decrypted since the parts know each others public keys.
The German patent application DE 19811720 Al solves the problem by means of providing a secure module in which the private key is stored. The secure module is arranged between a display device and a computer by means of a passive connection component that guarantees that the display device and the secure module receive the same data.
SUMMARY OF THE INVENTION
The present invention tackles the same problem as the European patent application EP 1054364 A2 and the German patent application DE 19811720 Al mentioned above. However the present invention offers an alternative solution that is more flexible and in many aspects simpler than the previously known solutions.
An object of the present invention is thus to provide a device for signing electronic documents digitally such that it is guaranteed that the document that is displayed actually is the document that is signed.
The above mentioned object of the present invention is achieved by the inventive features that are stated in the accompanying claims.
The present invention solves the problem mentioned above by means of a device for signing electronic documents digitally that is tamperproof since it is a frozen environment. With a frozen environment is meant that the device includes a processor that operates according to instructions that, for instance, are stored in permanent memory, such as ROM (Read-only-memory) or implemented in hardware (or a combination of the two), and thus are impossible to change by means of normal reprogramming, i.e. the instructions are frozen.
The device further includes a display that is governed by the processor, means for creating a digital signature, an input device that allows a user to initiate signing of a displayed document and a communication interface for communicating with an external unit to send or receive electronic documents.
Since the display is governed by a processor that operates according to frozen instructions it is not possible to, for instance, infect the device with a virus that causes the signed document to differ from the document that is signed.
The present invention also relates to use of the device according to the present invention for signing electronic documents digitally.
An embodiment of the invention provides a device that includes a crypto engine, which is particularly suited for performing the calculations necessary in order to create the digital signature and/or for enabling the use of encrypted communication via the communication interface.
An advantage of the present invention is that it provides a more direct connection between the document to be signed and the digital signature. Since the present invention guarantees that the document that the user can see on the display is the same that he signs the present invention makes digital signatures more reliable, which is a necessity if digital signatures are to be recognised as legally binding.
Another advantage with the present invention is that it is flexible since the device that is used to create the digital signature is not locked to an individual computer or other type of unit. The device only needs to be able to communicate with an external unit to receive the document to be signed from an external unit but is otherwise able to operate independently of the external unit in the signing procedure. The device can be arranged to communicate with
any computer or server anywhere in the world, by means of standard communication methods.
Yet another advantage with the present invention is that it provides a simple solution. The device according to the present invention uses a very simple request-response cycle according to some known communications standard to communicate with external units such as a computer. It is thus easy for existing units to co-operate with the device according to the present invention in order to receive signed documents or to send documents to be signed.
A further advantage of the present invention is that it does not require encrypted communication for the sake of making the digital signature secure. Encrypted communication can be used in connection with the invention in order to ascertain that an unauthorised person can not see what is signed, but the encrypted communication is not necessary to guarantee that the signing is carried out correctly on the right document.
The invention will now be described with the aid of preferred embodiments and with reference to accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
Fig. 1 shows a block diagram over an embodiment of a device for digital signing according to the present invention.
Fig. 2 shows a simplified view of an embodiment of a device for digital signing according to the present invention.
Fig. 3 shows a simplified view of an alternative embodiment of a device for digital signing according to the present invention.
Fig. 4 shows a flow chart over a method of performing digital signing by means of a device for digital signing according to the present invention.
DETAILED DESCRIPTION OF SPECIFIC EMBODIMENTS
Fig. 1 shows a block diagram of an embodiment of a device 1 for digital signing according to the present invention. The device 1 is a hardware unit that includes a processor 2 that operates according to instructions that are frozen. That means that the instructions are stored such that they cannot be altered by means of normal reprogramming. "Normal reprogramming" is here intended to mean the kind of programming action that takes place without physically opening the device 1 and manipulating its components, i.e. piOgramming using electrical signals that are received and interpreted by the device. The device 1 can be turned into a frozen environment by means of storing the processor instructions in permanent memory such as ROM (Read Only Memory) or implement them in hardware. Alternatively the processor is implemented to work according to a combination of hardware implemented instructions and instructions stored in permanent memory. It is also possible to store the processor instructions in EPROM (Erasable and Programmable Read Only Memory). The EPROM only allows reprogramming by means of physical manipulation of the hardware of the memory, which would require taking the device 1 apart. The idea behind implementing the processor 2 in this way is to make the device 1 as tamper proof as possible. If the processor instructions are frozen it is impossible to change the function of the device 1 by means of simple reprogramming of software.
In the future, it may be possible to store the processor instructions in other ways than the examples mentioned above, which offer the same type of frozen environment as for instance ROM and EPROM.
The device 1 further includes a display 3 and an input device 4. The display 3 is for displaying the electronic document to be signed. The processor 2 governs what the display 3 displays. Since the processor 2 is working according to frozen instructions, a user of the device 1 will not have to worry about that the device may be infected with e.g. a virus that causes the device to display one document and sign another. The input device 4 is for allowing the user to initiate signing of a displayed document. The input device may further allow the user to scroll up and down a document, to choose which document to display etc. How the user initiates signing of a document may vary between different embodiments of the device 1. In its simplest form the input device comprises a signing button that the user presses to initiate signing of a document. However for security reasons it is preferable to initiate signing in a fashion that involves some kind of identity check of the user. The user may for instance initiate signing by means of entering a personal pin code on an alphanumeric keyboard of the input device 4 or by means of performing a biometric check, such as a check of the user's fingerprint on a fingerprint recognition sensor of the input device 4. The input device 4 will thus have to be equipped with means that suit the type of signing initiation and user identity check in use. The input device 4 may thus comprise e.g. a keyboard, a touch-screen and/or a biometric recognition sensor.
The device 1 also includes a communication interface 9. The communication interface 9 is used to communicate with external units such as a computer 10 via a communications link 11. The computer 10 can access the functionality of the device 1 through the communication interface, which may be defined by an API (Application Programming Interface). The communications link 11 may be a wireline connection established on a cable, or a wireless connection. The communication interface 9 may be arranged for communication according to well-known communications standards such as Bluetooth, USB, Ethernet,
IrDA, Wireless LAN, RS232 and Firewire. The device 1 needs to be able to communicate with external units, since it needs to receive an electronic document to be signed and to send the electronic document do a suitable receiver (such as the computer 10) after the document has been signed in the device 1. This is possible thanks to the communication interface 9.
The device 1 must also comprise means for creating a digital signature. Such means are known per se and will therefore not be explained in detail here. The means for creating a digital signature may for instance comprise a key and certificate storage 5 and a clock unit 6. In the storage 5 may the user's private key and certificate be stored. The clock unit may be used for providing the digital signature with a time stamp in a manner known to a person skilled in the art. The processor 2 is also adapted to perform the calculations that are necessary in order to create a digital signature. Such calculations may for instance comprise calculation of a hash value to represent the document to be signed. The processor 2 is further able to assemble the components of die digital signature and to append the signature with the electronic document to be signed.
The device 1 further includes a memory 7 for storing one or several documents to be signed. Even though the memory 7 can be arranged to store several documents, the device 1 is arranged to perform digital signing on one document at a time. If the memory is arranged to store several documents at a time the device 1 may be provided with an input device 4 that allows the user to choose which document to view among the documents stored in the memory 7.
The device 1 may optionally be arranged to include a so-called crypto engine 8. The crypto engine 8 is a processor or a hardware unit particularly adapted to perform encryption-related calculations. The crypto engine 8 is thus particularly
suited to relieve the processor 2 of the calculations that are necessary in order to create the digital signature.
The device 1 may optionally be arranged to use encryption when communicating with external units. If the device includes a crypto engine 8, the crypto engine 8 may be arranged to handle the encryption and decryption of communicated information. Otherwise the processor 2 handles the encryption and decryption involved. The device 1 may be implemented to store distinct sets of cryptographic keys used in connection with communication with different applications and for different purposes. The reason for using encrypted communication is not to make the signing procedure itself safer but to prevent other parties from "listening in" on what is signed. The signing procedure itself that takes place in the device 1 is thus just as safe irrespective of whether encrypted communication is used or not when communicating with other units.
The device 1 is essentially tamper proof since it constitutes a frozen environment. The only possibility to manipulate the device 1 is to manipulate its hardware, for instance by means of replacing circuits in the device 1 with other circuits. Such manipulation should be difficult since the device 1 is intended to, preferably be a small handheld personal belonging of the user, which hopefully is stored and handled in a manner such that it is unavailable to other people. In order to make manipulation even more difficult, it is advantageous to implement the device 1 with a sealed body. Thereby the user can suspect manipulation if he detects that the seal is broken.
Fig. 2 and Fig. 3 illustrate examples of physical appearance of the device 1.
The embodiment of the device 1 shown in Fig. 2 has a body 12, which on a front is provided with the display 3. The input device 4 is made up of keys 13
adjacent to the display 3 and a finger print reader 14. The keys 13 include arrow keys for scrolling up and down in the displayed document. The body 12 is also provided with a plug 15 for plugging in a cable to allow communication with another unit, such as a computer. The other components of the device 1 are hidden in the interior of the body 12.
The embodiment of the device 1 shown in Fig. 3 has a foldable body 16, provided with the display 3 on a front of a first part 16a. The input device 4 is made up of a keyboard 17 provided on a second part 16b of the body 16. Attached to the body 16 is an antenna 18 for wireless communication with other units. The other components of the device 1 are hidden in the interior of the body 15.
The embodiments of the device 1 shown in Fig. 2 and Fig. 3 are only two examples of what the device 1 may look like. The person skilled in the art will appreciate that many other designs of the physical appearance of the device 1 are possible.
Fig. 4 shows a flow chart of an example of how digital signing using the device 1 may be carried out. In a first step 21 an electronic document to be signed is downloaded from the computer 10 to the device 1, via the communication interface 9. The document may be in a well-defined format, e.g. XML or PDF. The downloading of the document may take place as a result of a request from the computer. In a next step 22, the document (or a legible representation of the document) is rendered by the processor 2 and presented on the display 3 for visual inspection by the user. After inspection, the user initiates the digital signing of the document by means of entering an authorisation command on the input device 4, step 23. The authorisation command may, as explained above, involve entering a PIN code on an alphanumeric keyboard or utilising a
biometric recognition sensor. The device then performs all the functions involved in creating the digital signature such as for instance calculating a hash value, time stamping, assembling the signature parts and appending the signature to the document, step 24. In a step 25 is the signed document returned to the computer via the communications interface 9.
If encryption is used in the communication with the computer the step 21 and the step 25 will involve decryption and encryption respectively.
The ability of the device to communicate with other units depends on how the communications interface is implemented. The device may be implemented with a communications interface that is suitable only for wireline communication with a computer to which it is directly connected or it may be implemented with mobile communication functionality that allows the device to communicate with a computer located on the other side of the world via a mobile communications network. The device may thus be implemented with a varying range of communication depending on which type of communications technology the communication interface is implemented for.
The device of the present invention is intended to be a personal belonging of the user, that the user can bring with him and use in connection with many different individual computers or other types of terminals from which the device may receive documents for signing. The device of the present invention is thus not tied to an individual unit, such as a computer, but can communicate with any other unit that uses or can interpret the type of communications standard that the communication interface 9 uses.
In an alternative embodiment the device 1 may be combined with a mobile phone or a PDA (Personal Digital Assistant). In that case, it is advantageous to
implement the components of the device, except for the display and the input device, as a single chip that is incorporated in the mobile phone or the PDA. The display and input device of the mobile phone or PDA is preferably used both for digital signing purposes and for supporting the particular mobile phone or PDA functionality. The display and the input device must each have a direct connection with the chip containing the signing functionality in order to maintain the high level of security regarding signing that is the aim of the invention. The combined signing device and mobile phone/PDA should also be provided with means for indicating to the user when the chip containing the signing functionality has assumed control over the display and the input device. Thus the user can be certain that when a document is to be signed, the "frozen" processor implemented in the chip, controls the display and input device, and guarantees that the same document is displayed and signed.