|Publication number||US7890762 B2|
|Application number||US 11/026,559|
|Publication date||Feb 15, 2011|
|Filing date||Dec 30, 2004|
|Priority date||Dec 30, 2004|
|Also published as||US20060156006|
|Publication number||026559, 11026559, US 7890762 B2, US 7890762B2, US-B2-7890762, US7890762 B2, US7890762B2|
|Inventors||Josef Dietl, Theo Verlaan|
|Original Assignee||Sap Ag|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (24), Non-Patent Citations (2), Referenced by (1), Classifications (14), Legal Events (3)|
|External Links: USPTO, USPTO Assignment, Espacenet|
The present invention generally relates to digital data processing and more particularly to workflows involving signed documents.
It is a common goal for businesses to execute as many of business processes in a digital form as possible. In order to secure these processes, the use of digital signatures is a common practice. However, it is not always practical to use digital signatures. For example, external partners may not be able to produce documents with digital signatures in the required form. It can also be very difficult, especially in a large organization, to establish a certification infrastructure so that digital signatures can be used effectively everywhere within the organization.
The present invention provides methods and apparatus, including computer program products, that implement techniques for integrating normal paper signatures into computer-implemented workflows secured by digital signatures.
In one aspect, the invention provides methods and apparatus, including computer program products, for providing input to a workflow application. Source documents are received that can have respective original signatures but are not digitally signed. The source documents can be paper documents, or they can be scanned representations of paper documents. Proxy digital signatures are applied to digital representations of the source documents. The proxy digital signatures are differentiated in that they are annotated with metadata indicating the quality of the respective original signatures.
In particular implementations, one or more of the following features can be found. The digital representations of the source documents comprise text representations. The digital representations of the source documents comprise image representations. The non-digital source documents are digitized. The method metadata for a particular digital representation indicates whether or not the corresponding source document was a paper document having an original signature that was verified by a person applying the proxy digital signature to the corresponding source document. The metadata for a particular digital representation indicates whether or not the corresponding source document was a paper document having an original signature that was not verified by a person applying the proxy digital signature to the corresponding source document. The metadata for a particular digital representation indicates whether or not the corresponding source document was a paper document having no original signature. The signed digital representations of the source documents with proxy digital signatures and metadata are provided to a workflow application as input documents.
Details of one or more implementations of the invention are set forth in the accompanying drawings and in the description below. Further features, aspects, and advantages of the invention will become apparent from the description, the drawings, and the claims.
The workflow application 110 performs one or more business processes in a digital form taking signed digital documents 114 as input. The use of digital signatures on the documents provides security for the processes. However, and especially when a digital workflow is being introduced, not all potential participants may be able to produce documents with digital signatures, or to produce digital signatures that can be accepted by the workflow application 110.
The present invention solves this problem by introducing proxy digital signatures. These proxy signatures do not individually stand for either the authenticity or the integrity of the document content as such, but only for the correspondence of a digital representation of the document 118 to its source document 116 and to the presence of an actual signature on the source document 116.
The original source document 116 can be digitized (130) for handling by the system 100 in a number of ways. For example, documents can be entered by a typist or scanned by a scanner operator. Scanned documents can be processed into text form by an optical character reader (OCR) program or process, which can optionally involve a human operator to provide correction or confirmation of the resulting digital text. Optionally, the original source document can exist in, or be provided to, the system 100 in digital form, but without a digital signature sufficient for the security requirements of the workflow application 110.
For example, the original source document can be one or more records in a database and a printed paper document that was generated from those records. In one scenario based on this example, a salesman updates an order database with order information and prints an order document for a customer, the customer then signs the generated order document, and the salesman returns the signed order for processing. Assessing the actual signature (132), described below, then would include confirming that the signed paper order corresponds to the data from which it was generated.
In order to avoid confusion between proxy signatures and real digital signatures, i.e., signatures applied to the document by a person or system signing on his or its own behalf, the signature block of at least a proxy digital signature is annotated with suitable metadata to differentiate the kinds of digital signatures that will appear on documents entering the workflow application 110.
The kinds of digital signatures that are differentiated, and distinguished by metadata, can include the following kinds.
1. Original digital signatures. These are non proxy digital signatures. This kind can be assumed if no metadata is present.
2. Verified paper signature. In a freshly created digital representation, the signature of the paper original was verified by a person based on a signature sample.
3. Verified image signature. The signature in a digital image representation was verified based on a signature sample.
4. Unverified paper signature present. In a freshly created digital representation, the presence of a signature, but not the signature itself, was verified by a person.
5. Unverified image signature present. The presence of a signature in a digital image representation, but not the signature itself, was verified by a person.
6. Unsigned. The original was not signed. This can be assumed if no digital signature present.
Thus, to support a secure workflow, the proxy digital signature will cover both the document itself—generally in the form of a hash of the document—and the metadata describing the kind of proxy digital signature that has been applied.
Assessing the source document signature (132)—i.e., determining whether an original signature is present, and if so, whether it matches a sample signature—is done by a person who provides the information to a program running on the system 100. This person signs (134) the digital representation 118 of the document with a proxy digital signature that is annotated with metadata identifying the kind of signature and the nature of the verification that was done with respect to the original signature, if any, on the source document. In this way, a digital document with a differentiated proxy signature 120 is produced.
Digital documents with differentiated proxy signatures 120 can then be submitted as an input documents to the workflow application 110, just as digital documents 114 with real digital signatures are submitted. The workflow application 110 can then accept, reject, or give special handling to each document with a proxy signature based on the quality of the signature attached to it, as indicated by the proxy signature metadata.
Such signed documents can exist in a number of forms. For example, a digital document and its differentiated proxy signature can be stored as a record in a database with the signature being attached to the document and part of the same record. As another example, a database can have one column for documents and a parallel column for corresponding signatures. As a further example, a database can a first table for document contents and a second table for descriptive information with a key that links descriptive information to documents, and the digital signature can be stored as one item of information stored in the second table. As a final example, a unique identifier (e.g., a properly constructed Uniform Resource Locator (URL), Uniform Resource Name (URN), Uniform Resource Identifier (URI), or Internationalized Resource Identifier (IRI)) can be assigned to the document and the differentiated proxy signature can be attached to the document by including the unique identifier in the data covered by the proxy digital signature, so that the signature in effect points to the signed document.
The use of such proxy signatures can facilitate the roll-out of digital-signature based systems, allowing digital-signature based work processes to be established inside a company where only parts of the company are attached to the certification infrastructure (e.g., for geographically detached parts, separate departments, or staged roll-outs). The use of such proxy signatures can also facilitate cross-organization, digital-signature-based workflows where some of the partners involved are not (yet) part of the certificate authority network, as well as workflows involving individual customers who are not part of the certificate authority network. The use of such proxy signatures can also be used to increase reliability in CRM (customer relationship management) operations because the employees entering documents into the CRM system are firmly attached to their documents through the proxy digital signatures that they apply.
The invention and all of the functional operations described in this specification can be implemented in digital electronic circuitry, or in computer software, firmware, or hardware, including the structural means disclosed in this specification and structural equivalents thereof, or in combinations of them. The invention can be implemented as one or more computer program products, i.e., one or more computer programs tangibly embodied in an information carrier, e.g., in a machine-readable storage device or non-transitory information carrier, for execution by, or to control the operation of, data processing apparatus, e.g., a programmable processor, a computer, or multiple processors or computers. A computer program (also known as a program, software, software application, or code) can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file. A program can be stored in a portion of a file that holds other programs or data, in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub-programs, or portions of code). A computer program can be deployed to be executed on one computer or on multiple computers located at one site or distributed across multiple sites and interconnected, permanently or intermittently, by a communication network.
The processes and logic flows described in this specification, including the method steps of the invention, can be performed by one or more programmable processors executing one or more computer programs to perform functions of the invention by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus of the invention can be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit).
Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read-only memory or a random access memory or both. The essential elements of a computer are a processor for executing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto-optical disks, or optical disks. A computer can be embedded in another device, e.g., in a digital appliance, for example, a mobile telephone or a personal digital assistant, to name just a few. Information carriers suitable for embodying computer program instructions and data include all forms of non-volatile memory, including by way of example semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks. The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.
To provide for interaction with a user, the invention can be implemented on a computer having a display device, e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor, for displaying information to the user and a keyboard and a pointing device, e.g., a mouse or a trackball, by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, output provided to the user can be in any sensory form, e.g., visual, auditory, or tactile output; and input from the user can be received in any form, including acoustic, speech, or tactile input.
The invention can be implemented in a computing system that includes a back-end component (e.g., a data server), a middleware component (e.g., an application server), or a front-end component (e.g., a client computer having a graphical user interface or a web browser through which a user can interact with an implementation of the invention), or any combination of such back-end, middleware, and front-end components. The components of the system can be interconnected by any form or medium of digital data communication, e.g., a communication network. Examples of communication networks include a local area network (“LAN”) and a wide area network (“WAN”), e.g., the Internet.
The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
The invention has been described in terms of particular embodiments, but other embodiments can be implemented and are within the scope of the following claims.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US5001752 *||Oct 13, 1989||Mar 19, 1991||Fischer Addison M||Public/key date-time notary facility|
|US5734752 *||Sep 24, 1996||Mar 31, 1998||Xerox Corporation||Digital watermarking using stochastic screen patterns|
|US5850346 *||Dec 27, 1995||Dec 15, 1998||Mitsubishi Electric Information Technology Center America, Inc.||System for embedding hidden source information in three-dimensional computer model data|
|US6107913 *||May 12, 1998||Aug 22, 2000||Cyberscan Technology, Inc.||Scratchable conductive latex document scanner|
|US6209090 *||May 29, 1997||Mar 27, 2001||Sol Aisenberg||Method and apparatus for providing secure time stamps for documents and computer files|
|US6307955 *||Dec 18, 1998||Oct 23, 2001||Topaz Systems, Inc.||Electronic signature management system|
|US6398245 *||Dec 1, 1998||Jun 4, 2002||International Business Machines Corporation||Key management system for digital content player|
|US6785815 *||Jun 7, 2000||Aug 31, 2004||Intertrust Technologies Corp.||Methods and systems for encoding and protecting data using digital signature and watermarking techniques|
|US7197143 *||Jan 16, 2003||Mar 27, 2007||The Johns Hopkins University||Digital video authenticator|
|US20020029337 *||Jun 1, 2001||Mar 7, 2002||Certco, Llc.||Method for securely using digital signatures in a commercial cryptographic system|
|US20020053021 *||Apr 2, 2001||May 2, 2002||Rice Marion R.||Internet-based secure document signing network|
|US20020104004 *||Feb 1, 2001||Aug 1, 2002||Bruno Couillard||Method and apparatus for synchronizing real-time clocks of time stamping cryptographic modules|
|US20020138735 *||Feb 21, 2002||Sep 26, 2002||Felt Edward P.||System and method for message encryption and signing in a transaction processing system|
|US20030056104 *||Aug 30, 2002||Mar 20, 2003||Carr J. Scott||Digitally watermarking checks and other value documents|
|US20030131241 *||Oct 21, 2002||Jul 10, 2003||Gladney Henry M.||Trustworthy digital document interchange and preservation|
|US20040117726 *||Jun 18, 2002||Jun 17, 2004||Ryu Inada||Electronic document format control apparatus and method|
|US20040158717 *||Feb 10, 2003||Aug 12, 2004||Red Hat, Inc.||Electronic document active content assurance|
|US20050005126 *||Dec 30, 2003||Jan 6, 2005||Information And Communications University Educational Foundation||Method and apparatus for generating and verifying an ID_based proxy signature by using bilinear pairings|
|US20060004662 *||Jun 30, 2004||Jan 5, 2006||International Business Machines Corporation||Method and system for a PKI-based delegation process|
|US20060156005 *||Dec 10, 2003||Jul 13, 2006||Jean-Bernard Fischer||Method and device for making secure execution of a computer programme|
|US20060259783 *||Apr 27, 2006||Nov 16, 2006||William Work||Methods and Systems for Clinical Trial Data Management|
|US20060271787 *||May 31, 2005||Nov 30, 2006||Xerox Corporation||System and method for validating a hard-copy document against an electronic version|
|US20070033168 *||Aug 8, 2005||Feb 8, 2007||David Minogue||Agent rank|
|US20090287697 *||Jul 21, 2009||Nov 19, 2009||Google Inc.||Agent rank|
|1||*||"Security Analysis of some proxy signatures", Guilin Wang et al., 2003.|
|2||*||Security Analysis of Some Proxy Signatures, http://www.springerlink.com/content/rw6h7vkhrx3872ty/, Guilin Wang et al., May 12, 2004.|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US8954760||Jan 3, 2013||Feb 10, 2015||International Business Machines Corporation||Authentication of solution topology|
|U.S. Classification||713/176, 713/160, 713/180, 380/255, 713/168, 713/177|
|Cooperative Classification||H04L2209/76, H04L9/3247, G06F21/64, H04L63/123|
|European Classification||H04L9/32S, G06F21/64, H04L63/12A|
|Apr 22, 2005||AS||Assignment|
Owner name: SAP AKTIENGESELLSCHAFT, GERMANY
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DIETL, JOSEF;VERLAAN, THEO;REEL/FRAME:016143/0757;SIGNING DATES FROM 20050421 TO 20050422
Owner name: SAP AKTIENGESELLSCHAFT, GERMANY
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DIETL, JOSEF;VERLAAN, THEO;SIGNING DATES FROM 20050421 TO 20050422;REEL/FRAME:016143/0757
|Jul 28, 2014||FPAY||Fee payment|
Year of fee payment: 4
|Aug 26, 2014||AS||Assignment|
Owner name: SAP SE, GERMANY
Free format text: CHANGE OF NAME;ASSIGNOR:SAP AG;REEL/FRAME:033625/0334
Effective date: 20140707