CA2194475A1 - Method for securely using digital signatures in a commercial cryptographic system - Google Patents
Method for securely using digital signatures in a commercial cryptographic systemInfo
- Publication number
- CA2194475A1 CA2194475A1 CA002194475A CA2194475A CA2194475A1 CA 2194475 A1 CA2194475 A1 CA 2194475A1 CA 002194475 A CA002194475 A CA 002194475A CA 2194475 A CA2194475 A CA 2194475A CA 2194475 A1 CA2194475 A1 CA 2194475A1
- Authority
- CA
- Canada
- Prior art keywords
- user
- public key
- transaction
- digital
- recipient
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3821—Electronic credentials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4015—Transaction verification using location information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/409—Device specific authentication in transaction processing
- G06Q20/4097—Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
- G06Q20/40975—Device specific authentication in transaction processing using mutual authentication between devices and transaction partners using encryption therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Abstract
A system for securely using digital signatures in a commercial cryptographic system that allows industry-wide security policy and authorization information to be encoded into the signatures and certificates by employing attribute certificates to enforce policy and authorization requirements. Verification of policy and authorization requirements is enforced in the system by restricting acess to public keys to users who have digitally signed and agreed to follow rules of the system. These rules can also ensure that payment is made for public and private key usage. Additionally, users can impose their own rules and policy requirements on transactions in the system.
Description
~ W096/02993 2 1 9 ~ 4 7 5 P~ /6 METHOD FOR SECURELY USING DIGITAL SIGNATURES
IN A C~MMT~TAT CKY~ ~APHIC SYSTEM
R~ K( )U..~ OF T~ INVENTION
This invention relates to digital signatures.
More particularly, this invention relates to the use of digital siy--atuLe3 and certificates for digital signatures in a commercial cryptographic system for enforcing security policies and authorization requirements in a manner that reduces risks to the use~s.
Public-key cryptography is a modern computer security technology that can 5upport the creation of paperless electronic ds t systems, providing that the user's digital signature on an electronic dc_ ~, that i8, the user's electronic authentication and verification of the electronic d~ L, can be given suf~icient practical and legal meaning. Such paperless electronic ~c ~ systems, or "~d_ archite_LuL_ ," will ar - not only trading paL~ L~ operating under ~tandard bilateral c~,.L.__~
but also global multilateral systems in which any entity can, in theory, co~ v..d with any other entity in ~ legally provable manner, A - i nq that proper security controls are obs~L~_d ~--vugl-~u~.
These systems will have : commercial significance because, in many cases, cost reduc~i~n~ on the order o~ 10-to-1 can be realized over current paper .~..s cLion ~-~celu-.G. This i ~.. L is surficiently dramatic such that many organizations would, for e i~ and competitive reasons, be W096l02993 .~ /6 ~
21 944~5 compelled to use them once their practicality had been LL c~ted .
No one disputes that paper is a bothersome anachronism in the electronic world or that verifying pen-and-ink signatures is costly and error-prone. At least with paper, however, the signer retains the basic "contextual controls" Or d~ t preparation and physical delivery. On a digitally signed electronic ~ t, on the other hand, a signer controls only the encoded signature. All time, place and manner controls are absent, and nothing distin~ich~c a valid user signature from one fraudulently ~-uduued by another user who soDehow obtained the first user's smart card and PIN. It would not take too many multi-million or multi-billion dollar losses to erase all the savings produced by this "newfangled" office-automation techn~logy. Therefore, digital signatures will see early use only in c: _ ~ "electronic coin purse"
applications, where ~A~ODuL~ is low, and in wholesale fin-nriAl transfers, as to which e~LL~ -ly tight security ~O~C-1UL-3 are already the norm. However, these uses will have little general commercial impact.
Thus far, major cuL~uL~tions and banks have ~--11n~ to invest in these technologies due to lack Or w~ll-defined risk models and auditing standards and due to unc~rtainties regarding legal and liability issues.
Serious i..~__i to commercialize digital si~ Lu,~s will occur only after leading national auditing and legal experts have ruled that these systems contain adeguate security controls to warrant reliance in mainstream intra- and inter-_u-~ul~te bl~innCC
trAn---tionC~ typically in the $10,000 to $10 million range. In order for this goal to be achieved, security controls must be formulated to reduce the ri~kc Or WO 96/02993 r~ lfi 1~ 2194475 participants in digital signature d~_ ~ systems to the absolute lowest level tPrhnic~lly achievable.
There are two types of cryptographic systems in which digital signature5 have been used: symmetric and asymmetric cryptographic systems. FIGURES l(a~ and l(b) illustrate the use Or symmetric and nOy LL ic algorithms for encryption. In Oy LLic (conventional) cryptography, as shown in FIGURE l(a), the sender and recipient of a _ ication share a secret key 11.
This key is used by the sender, the originator of a iC~tion, to encrypt the message 12 and by the recipient of the communication to decrypt the message 13. It may also be used by the recipient to authenticate a message by having the sender use the secret key to compute some function such as a Message Authentication Code (MAC) based upon the message; the recipient thus can be assured of the identity of the originator, because only the sender and the reclpiPnt know the secret key used to compute the MAC. DES is an example o~ a Oy ic ~y~LO~L~phic system.
In aOy ic (public key) cryptogrAphy, shown in FIGURE l(b), different keys are used to encrypt and decrypt a meOssage. Each user i8 associated with a pair of keyO. One Rey 15 (the public key) is publicly known and i~ used to encrypt ~ 17 destined for that u8er, and the other key 1~ (the private key) is known only to that user and is used to decrypt 1- in7 r~ 18. Since the public key need not be kept secret, it is no longer ~~~~~ ~ y to secretly convey a shared encryption Rey between irating partie~
prior to exchanging confidPntiAl traffic or authenticating ~~- 57, ~ . RSA is the most well-known asymmetric algorithm.
W096/0~993 2 1 9 ~ 4 7 ~ P~ l.vl6 A digital signature, however, i5 a block of data ~ a~d to a message data unit, and allows the recipient to prove the origin of the message data unit and to protect it against forgery. Some asymmetric algorithms (for example, RSA) can also provide auth~ntiration and non-repudiation through use of digital si~--a-u-es. In order to sign data, the sender sncrypts the data under hi5 own private key. In order to validate the data, the recipient de~ Ls it with the sender's public key. If the message i5 curc~fully decrypted using the sender's public key, the message must originally have been encrypted by the sender, because the sender is the only entity that knows the ~ULL- ~ -lin~ private key. Using this method of signing d~ Ls, the encrypted message i8 bound to the signature, because the re~1pi~nt cannot read the message without decrypting the signature data block.
The siul-aLu,, ~ -y~-ed message can then be encrypted to the recipient using the recipient's public key, as usual.
Digital 8i~llaLUL~S may also be formed using asymmetric encryption algorithms as described below and as illustrated in FIGURE 2. To sign a mesfiage, the me~sage 20 is first digested (hashed) into a single bloe~ 22 using a one-way hash function 21. A one-way hA~h function has the PLUY_LLY that, given the digest, it i~ _ Lionally infeasible to ~u~L~u~L any message that hashes to that value or to find two --97, - that hash to the same digest. The digest 22 is then encrypted with the user's private key 23, and the result 24 is ~nY ~d to the encrypted or u..~ yLed message as its signature 25. The recipient uses the sender's public key 26 to decrypt the signature 25 into the hash digest 22. The I~ ipiPrt ~ W096/02993 2 1 9 4 ~ 7 5 rc~ ~Ds~/6 al~o digests (hashes) the message 20, which has been received either unencrypted or encrypted and then decrypted by the recipient, into a block 27 using the sane one-way hash function 21 used by the sender. The recipient then verifies 28 the sender's signature by rh~r~ing that the decrypted hash digest 22 is the same as the hashed message digest 27.
Separating the signature from the message in this way, that is, not requiring the 5ender and recipient to encrypt and decrypt the entire message in order to verify the signature, greatly reduces the amount of data to be encrypted. This is important because public key algorithms are generally subst~ntiAlly slower than conv~nt1-n-l algorithms, and proce-s;ng the entire message in order to verify a signature would require a significant amount of time. The signature process also ill~L~dU''e8 L ~ r- y into the message, which, because the message must hash to the ~p~cif;e~ digest, allows the r~cipi~n~ to detect unauthorized changes to the message.
A digital signature provides the security service~
Or (a) integrity, because any modification of the data being signed will result in a different digest and thus a different signature; (b) origin authentication, becau-e only the holder of the private key C~L~, ';nJ' to the public key used for validation of the signature could have signed the message; and (c) r.~n ra~diation, as irrevocable proof to a third party that only the signer, and not the recipient or its employees, could have created the signature. A
symmetric secret key authenticator, for example the Xg.g ~AC, does not provide these services, since either of the two parties can create the authenticator using their shared key.
W096/02993 P~l/u~ l ,6 ~
21 ~4~75 v Several of the ~ ni~ ~icn-lc~Pd herein as6ume the ability to attach multiple signatures or cosignatures to a ~- ~. A useful format for this purpose, as i8 well known in the art, i5 defined in "PKCS ~7: Cryptographic ~essage Syntax," RSA Data Security, Inc., 1993, which is hereby incv~.ated by reference. Each signature structure on a do t will contain an indication of the certificate needed to validate the signature along with a bit string containing the actual signature. Additionally, other information relevant to the particular signer may be in~ A~ in an individual signature computation. This per-signer information may be included in the signature computation as "signature attributes."
In order for one user to identify another user for ~L - ic~ion of a message in a way that ensures the second user'~ pos~6ion of a private key, the fir~t user must be able to obtain the other user's public key from a trusted source. A~ i8 well-known in the art, a f ~_ ~ for the use of public key certificates was dsfined in "X.509: The Directory: Authentication F~ CCITT, April, 1993 ("X.509n), which i5 hereby in~ ~uLated by reference. These basic public key certificates bind a user's name to a public key and ar~ ~igned by a trusted issuer called a certiricatiOn Authority (CA). Besides cnntA;ning the user's name and public key, the certificate also contains the issuing CA's name, a serial number and a validity period.
Although X.509 doeD not imposQ any particular ~LLU~LULe on the CAs, many i 1- L~tions find it r~on~hle to impose a hierarchical D-Lu~LuL~ in which each CA (in general) certifies only entities that are subordinate to it. ~ence, we can C~ LU~ A hierarchy of C~s, as ~hown in FIGURE 3, in which the higher level ~ W096/02993 2 1 ~ 4 4 7 5 P~ll. Sh ~/6 CAs 31 (perhaps banks) sign the certificates 34 of the CAs 32 beneath them (for example, ni~), and the lowest level of CAs 32 sign user 33 certiricates 35.
At the top of thi5 hierarchy (not shown) are a relatively few other root CAs, perhaps one per country, that may "cross-certify" each other's public keys (root keys) .
Various security architectures define ~ n i I
to cùl-aLLu~- a certification path through the hierarchy to obtain a given user's certificate and all CA
certificates n~c~ss~ry to validate it. These architectures share the common characteristic that a user need trust only one other public key in order to obtain and validate any other certificate. The trusted key may be that of the top-level CA (in a centralized trust model) or of the local CA that issued the user's certificate (in a de~en~Lalised model).
Certificates also contain an expiration date. If it is ne~s-~y to cancel a certificate prior to its expiration date, such as if the name association becomes invalid or the CULL ,~r~0~1;ng private key is 108t or _ . i f ~, the certificate may be added to the CA's certificate revocation list (CRL) or "hot li~t.~ mi~ list is signed by the CA and widely di~tributed, possibly as part of the CA's directory entry. The certificate remains on the CRL until the certificate's expiration date.
Often certain information concerning an entity or CA need6 to be made available in a trusted manner. In a secure X.500 Directory, this information would be retrieved via standard Directory operations and the result would be signed by the Directory. In the absence of such a secure ~.500 implementation, this information is placed in an attribute certlficate, W096/02993 ~ 6 o 21 9447~
which is signed by a CA in the same manner as the public key certificate. Attribute certificates would be created on presentation of the proper credentials by the user. For example, the user would present his public key certificate and prove he pOqE~ the uuLL~ u~ nJ private key, as one form of identification. Attribute certificates are linked to the user's basic public key certificate by referencing the basic certificate's serial number and are revoked by an identical parallel CRL -- -n~r~. Attribute certificates are dic~ cFo~ further in "X9.30 Part 3:
Certificate M~nA~ L for DSA," ANSI X9Fl, June, 1994, and U.S. Patents Nos. 4,868,877, S,005,200 and 5,214,702, which are all well-known in the art and are all hereby inuuLuuL~ted by reference.
An attribute certificate is a ~LLU~LULe separate from a public key certificate because proper separation of duties may often re~uire that the CA that issues the attribute certificate be different than the CA that issues the public key certificate. A central CA might rarely of itself posse5s the required securlty or authority to "sign for" all of a user's authorizations.
Having s_~aLaL~ CAs ~ L-te various types of attribute c-rtificates distributes risks more appropriately. In addition, the defined attributes may not be re~uired for all domains, neL~-LkD or applications. The need for these attributes and for additional domain-specific attributes is deto~minDd by each domain.
The user's basic public key certificate remains X.509 compatlble, allowing its use with other applications and allowing use of commercial ~Lu~uuLD
for certificate generation.
Tt is desirable to be able to uun~LLuuL a trusted organization that utilizes digital signature and ~ W096/02993 2i 94475 r l" /6 certificate ~ ni~ to enforce a security policy defined by rules within this organizational structure.
It is also desirable to use digital signature and certificate -h~nil to encode industry-wide security policy and authorization information into the signatures and certificates in order to permit the verifier of a signature to decide whether to accept the signature or certificate as valid, thus ac~ ting and easing electronic ce business transactions.
It is further desirable to reduce the risks associated with digital signature systems, particularly with end-user smart cards, by b~ i ng on this use Or public key certificates and attribute certificates.
It is further desirable to prevent the use of such a digital signature 5ystem by any party that might purport to "accept" a transaction in c~ La~6..~ion of the applicable authorization certiricates when that party had not signed the applicable "system rules~
~ . ~ pertaining to that system of _ icating signer authorization.
STTMMARY OF I~T~ INV~UTION
These and other objects Or the invention are ~" li~h~d in accordanc¢ with the principles of the i.... 1 ~n by providing a system for securely using dig$tal Si~--a-u~-3 in a commercial cryptographic system that. allows industry-wide security policy and authorization information to be encoded into the si~..aLu~ and certificates by employing attribute certificates to enforce policy and authorization requirements. In addition to value limits, cosignature requirements and d- ~ type restrictions that can oe placed on transactions, an organization can enforce with respect to any transaction gaa~L~pl,ical and W096l02993 P~ C~v~6 21 ~4475 temporal controls, age-of-signature limitations, pre-ay~Lvv~d counterparty limitations and confirm-to reguirements by using attribute certificates for the tran~acting u~er. Restrictions on distribution of certificates can be set using attribute certificates.
Certificates can be used also to ensure key confinement and non-decryption reguirements of smartcards in this system.
R~T~ DESCRIPTION OF THE DR~WINGS
The above and other objects and advantages of the invention will be apparent upon concidoration of the following iot~i led description, taken in conjunction with the a~ nying drawings, in which the reference characters refer to like parts th~uu~llu~L and in which:
FIGURES l(a) and l(b) show the prior art use of symmetric and asymmetric algorithms for encry-ption;
FIGURE 2 is a flow chart illustrating the prior Art process of a digital signature using an a~y ic encryption algorithm;
FIGURE 3 ~hows a hierarchy Or signature certification authorities;
FIGURE 4 shows a directory information tree (DIT);
FIGURE 5 shows an example of an authorization c~rtificate;
FIGURE 6 is a flow chart illustrating the prior art process of verifier enfo1~ ' of a transaction y value restriction;
FIGUR~ 7 is a flow chart illustrating the prior art process of verifier enfu~-_ of a tr~~ "-ti n~
cosignature reguirement;
FIGURE 8 i_ a flow chart illustrating the procass of verifier enfuL, L of a trAr~~ nn l. L-type restriction;
~ W096~2993 A ~ i / ~ ~ v 16 ~ 21 94475 FIGURE 9 is a flow chart illustrating the process of verifier enfor ~ of a transaction geographical and temporal control;
FIGURE 10 iB a flow chart illustrating the process of verifier enfoL. ~ of a maximum age of sender's signature restriction;
FIGURE 11 is a flow chart illustrating the process of verifier and sponsor enfo~o ~~ of a pre-a~Lo~cd counterparty restriction;
FIGURE 12 is a flow chart illustrating the process of verifier enfo~- ~ ~ of a transaction "confirm-ton reguirement;
FIGURE 13 i6 a flow chart illustrating the process of a device's certification of key confinement and non-decryption;
FIGURE 14 is a flow chart illustrating the processof keeping public keys secret and enforcing signing of system rules; and FIGURF 15 i8 a flow chart illustrating the process of verifying user rules of a transaction.
nT~ATTT~n D~ T~LlON QF T~ l~v~
The following general prinrir~q and rhil~a~rhi~c are reflected in the signature verification model defined in this invention. First, CA and user certificates can contain attributes that ' ~ the conditions and assumptions under which they were created. Verifiers may simply reject all certificates and tr~nq~ct;~n~ that do not meet their minimum standards.
Also, attribute certificates may be signed by a UDer~8 1~D~ 5J n to signify that the sponsor's signature will be honored for official b~q;n~qq if the tra~ n meets the requirements stated or implied by WO 96/02993 1 ~,1 /L.................................. _. ,V /6 ~
the attributes. Although typically the user's sponsor will be the user's employer, the model can be extended to include the user's bank, credit card issuer, voting bureau, video rental store, public library or any other entity that might accept the user's signature. This sponsor (authorization) certificate is thus the electronic equivalent of an "affidavit of legal mark,"
as ufied in the context of a traditional signature stamp. See Robert Jueneman, "Limiting the Liability of CAs and Individuals Regarding the Use of Digital Signatures," presented to the ABA Section of Science and Technology Certification Authority Work Group, July 2, 1993.
FUrth~ e, industries may develop "industry policy" statements that establish minimum requirements for signature verification. All particir~nt~ would sign these multilateral &gL~ ~ in order to ensure that all ~uul.LeL~aLLies would be bound by the encoded restrictions. Normally, sponsor certificate6 should be reguired in all cases, and digital signatures would be deemed otherwise null and void in their absence.
Industry-wide pol;ci~c would also define (1) relevant d~ L types and classes, (2) signer roles and titles, and (3) coded symbols for in~uL~uLating by Ler..~ standard uul.LL~_Lual terms and conditions.
IIOLe~._L~ there must be strict a~leLenCe to the principle that all restrictions can be enfoL~ed in an entirely automated manner (that is, verification "on siqht~), without reference to paper a~ or human int~L~L~LaLion, ~ Li--- also termed "fully - ;n~hl~ straight-through pro~ inq." In complex and/or high-volume envL, La, this is required in order to give these security controls credibility in the eyes of audit and legal experts. Reference to -~ W096/02993 2 1 9 4 4 7 5 r~l" /6 trusted third parties should also be minimized to reduce verification latency times.
While these restrictions seem complex, they merely reflect ordinary business procedures made explicit for S ~u~yoses of machine verification. Formerly, such controls were enforced inside the sponsor's computer systems before sending out the transaction. However, with the advent of multilateral distributed transactions, the verifying user is typically off-line from the sender's sponsor's system, and so the verifier must enforce the sponsor's authorization model, as reflected in the attribute certificates. Once this methodology is specified, office software vendors will develop menu-driven systems to create and manage user attributes, and the cost to user organizations will be relatively low.
Or~Ani 7~ti~nAl SLr U~ l "' e in Cer~ificates The certificates themselves may reflect the 20 SLL~LU ~ Of a sponsor organization. ~ecause many authorization decisions are based on the user's position in an organization, the organizational ~L~Lu-- and the user's position therein may be ,~ 'fied as part of a user's name. Names in certificates are specified in terms Or the X.500 Diroctory model, as follo~s.
The X.500 Directory ~L~u~Lu~ is hierarchical; the resulting distributed database comprises the Directory Information Tree (DIT~, as shown in FIGURE 4. Each entLy 41 is of a specific object class and consists of a set of properties called attributes 42. An attribute 42 consists of a type 43 and one or more values 44.
Thus, in an entry of class organization, one attribute is the organizationName; in an entry of class W096/02993 Y~ 6 ~h~
21 9447~ v organizationalPers0n, attributes might include title and tel. l~h~u~n~ ~ .
Each entry also has one or more special attribute values used to UUI~D ~L U~ ' ~ the object's name; this S attribute value is the relative distinguished name (RDN) o~ the entry. An object's distinguished name lDN) 45, which is created by concatenating the relative dlstinguished name5 46 of all entries from the DIT root to the entry, uniquely identiries the object in the global DIT.
Several of the attributes defined in X.500 may be usefully in~ iD~ in the user's attribute certificate.
For example, the object class can be used to distin~-i~h between entities (for example users and roles) whose distinguished names are of the same ~orm.
Also, the title may be used in making authorization rl ~Dr i c i C~n ~: .
In addition to the use of the DIT to group entities along organizational lines, X.500 define8 several object classes that can be used to oullOLL~L
arbitrary groups of entities. These object classes include the organizational role, whose "role o ~
attribute lists the name5 of the users who occupy the role, and ths group 0r names, whose " ~ attribute li-ts the names of group members. To convey this infor ation in a trusted way, one could define role and group certificates that convey the names of the role 1 a or group members, respectively, and that are signed by a CA, thus ~n-hl ing use 0r this feature outside the context of an X.500 directory system.
Group and role certificates may be used in cv,,Ju..~Lion with a cosignature - -nl ~~ to ~impli~y the ~u-.OLLu~-ion of cosignature reguirements. For example, a transaction might require the si~..aLu..- of ~ W096/02993 P~~ .l6 -- 21,q4475 three oC~u~lL5 of the "purchasing agent" role. A ufier may also indicate the role in which he i8 acting by inrluSing the role in the signature computation as a tper-signer~ signature attribute. The asserted role may then be matched against a role certificate (or the user's attribute certificate) during verification.
Policy Information i n Certiricates It is another P~ho~ of this invention to encode information regarding a CA's security policy into the attribute certificates of the CA and its subscribers, so that the verifier of a signature can use the information in ~etDrmining whether to accept a signature afi valid. In general, the CA's certificate will convey the rules that a CA uses when making certification ~oci~i~n~ while the user's certificate will convey the information used by the CA when applying these rules.
Attributes in CA certificates can indicate security policy and aDDuLGncc information for a particular CA. This policy information can also be inherited by subordinate CAs, allowing easy C~ LL U~ Lion of security domains sharing a common policy. Policy attributes in a CA's certificate might, among others, include:
(1) Liability Limitations: the extent to which a CA i~ liable in the event of various problems (for example, CA key ~ i~e, defective binding); this might be no liability, full liability or a ~pPcific -~ amount.
t2) Trust Specification: a description of which users and CAfi a given CA can certify, ex~.c3~cd relative to the CA itself (for example, "all WO96~v2s93 F~~ 6 21 94~75 subordinates"), or to the DIT in general (for example, "the subtree below Organization ABC"), or to others.
IN A C~MMT~TAT CKY~ ~APHIC SYSTEM
R~ K( )U..~ OF T~ INVENTION
This invention relates to digital signatures.
More particularly, this invention relates to the use of digital siy--atuLe3 and certificates for digital signatures in a commercial cryptographic system for enforcing security policies and authorization requirements in a manner that reduces risks to the use~s.
Public-key cryptography is a modern computer security technology that can 5upport the creation of paperless electronic ds t systems, providing that the user's digital signature on an electronic dc_ ~, that i8, the user's electronic authentication and verification of the electronic d~ L, can be given suf~icient practical and legal meaning. Such paperless electronic ~c ~ systems, or "~d_ archite_LuL_ ," will ar - not only trading paL~ L~ operating under ~tandard bilateral c~,.L.__~
but also global multilateral systems in which any entity can, in theory, co~ v..d with any other entity in ~ legally provable manner, A - i nq that proper security controls are obs~L~_d ~--vugl-~u~.
These systems will have : commercial significance because, in many cases, cost reduc~i~n~ on the order o~ 10-to-1 can be realized over current paper .~..s cLion ~-~celu-.G. This i ~.. L is surficiently dramatic such that many organizations would, for e i~ and competitive reasons, be W096l02993 .~ /6 ~
21 944~5 compelled to use them once their practicality had been LL c~ted .
No one disputes that paper is a bothersome anachronism in the electronic world or that verifying pen-and-ink signatures is costly and error-prone. At least with paper, however, the signer retains the basic "contextual controls" Or d~ t preparation and physical delivery. On a digitally signed electronic ~ t, on the other hand, a signer controls only the encoded signature. All time, place and manner controls are absent, and nothing distin~ich~c a valid user signature from one fraudulently ~-uduued by another user who soDehow obtained the first user's smart card and PIN. It would not take too many multi-million or multi-billion dollar losses to erase all the savings produced by this "newfangled" office-automation techn~logy. Therefore, digital signatures will see early use only in c: _ ~ "electronic coin purse"
applications, where ~A~ODuL~ is low, and in wholesale fin-nriAl transfers, as to which e~LL~ -ly tight security ~O~C-1UL-3 are already the norm. However, these uses will have little general commercial impact.
Thus far, major cuL~uL~tions and banks have ~--11n~ to invest in these technologies due to lack Or w~ll-defined risk models and auditing standards and due to unc~rtainties regarding legal and liability issues.
Serious i..~__i to commercialize digital si~ Lu,~s will occur only after leading national auditing and legal experts have ruled that these systems contain adeguate security controls to warrant reliance in mainstream intra- and inter-_u-~ul~te bl~innCC
trAn---tionC~ typically in the $10,000 to $10 million range. In order for this goal to be achieved, security controls must be formulated to reduce the ri~kc Or WO 96/02993 r~ lfi 1~ 2194475 participants in digital signature d~_ ~ systems to the absolute lowest level tPrhnic~lly achievable.
There are two types of cryptographic systems in which digital signature5 have been used: symmetric and asymmetric cryptographic systems. FIGURES l(a~ and l(b) illustrate the use Or symmetric and nOy LL ic algorithms for encryption. In Oy LLic (conventional) cryptography, as shown in FIGURE l(a), the sender and recipient of a _ ication share a secret key 11.
This key is used by the sender, the originator of a iC~tion, to encrypt the message 12 and by the recipient of the communication to decrypt the message 13. It may also be used by the recipient to authenticate a message by having the sender use the secret key to compute some function such as a Message Authentication Code (MAC) based upon the message; the recipient thus can be assured of the identity of the originator, because only the sender and the reclpiPnt know the secret key used to compute the MAC. DES is an example o~ a Oy ic ~y~LO~L~phic system.
In aOy ic (public key) cryptogrAphy, shown in FIGURE l(b), different keys are used to encrypt and decrypt a meOssage. Each user i8 associated with a pair of keyO. One Rey 15 (the public key) is publicly known and i~ used to encrypt ~ 17 destined for that u8er, and the other key 1~ (the private key) is known only to that user and is used to decrypt 1- in7 r~ 18. Since the public key need not be kept secret, it is no longer ~~~~~ ~ y to secretly convey a shared encryption Rey between irating partie~
prior to exchanging confidPntiAl traffic or authenticating ~~- 57, ~ . RSA is the most well-known asymmetric algorithm.
W096/0~993 2 1 9 ~ 4 7 ~ P~ l.vl6 A digital signature, however, i5 a block of data ~ a~d to a message data unit, and allows the recipient to prove the origin of the message data unit and to protect it against forgery. Some asymmetric algorithms (for example, RSA) can also provide auth~ntiration and non-repudiation through use of digital si~--a-u-es. In order to sign data, the sender sncrypts the data under hi5 own private key. In order to validate the data, the recipient de~ Ls it with the sender's public key. If the message i5 curc~fully decrypted using the sender's public key, the message must originally have been encrypted by the sender, because the sender is the only entity that knows the ~ULL- ~ -lin~ private key. Using this method of signing d~ Ls, the encrypted message i8 bound to the signature, because the re~1pi~nt cannot read the message without decrypting the signature data block.
The siul-aLu,, ~ -y~-ed message can then be encrypted to the recipient using the recipient's public key, as usual.
Digital 8i~llaLUL~S may also be formed using asymmetric encryption algorithms as described below and as illustrated in FIGURE 2. To sign a mesfiage, the me~sage 20 is first digested (hashed) into a single bloe~ 22 using a one-way hash function 21. A one-way hA~h function has the PLUY_LLY that, given the digest, it i~ _ Lionally infeasible to ~u~L~u~L any message that hashes to that value or to find two --97, - that hash to the same digest. The digest 22 is then encrypted with the user's private key 23, and the result 24 is ~nY ~d to the encrypted or u..~ yLed message as its signature 25. The recipient uses the sender's public key 26 to decrypt the signature 25 into the hash digest 22. The I~ ipiPrt ~ W096/02993 2 1 9 4 ~ 7 5 rc~ ~Ds~/6 al~o digests (hashes) the message 20, which has been received either unencrypted or encrypted and then decrypted by the recipient, into a block 27 using the sane one-way hash function 21 used by the sender. The recipient then verifies 28 the sender's signature by rh~r~ing that the decrypted hash digest 22 is the same as the hashed message digest 27.
Separating the signature from the message in this way, that is, not requiring the 5ender and recipient to encrypt and decrypt the entire message in order to verify the signature, greatly reduces the amount of data to be encrypted. This is important because public key algorithms are generally subst~ntiAlly slower than conv~nt1-n-l algorithms, and proce-s;ng the entire message in order to verify a signature would require a significant amount of time. The signature process also ill~L~dU''e8 L ~ r- y into the message, which, because the message must hash to the ~p~cif;e~ digest, allows the r~cipi~n~ to detect unauthorized changes to the message.
A digital signature provides the security service~
Or (a) integrity, because any modification of the data being signed will result in a different digest and thus a different signature; (b) origin authentication, becau-e only the holder of the private key C~L~, ';nJ' to the public key used for validation of the signature could have signed the message; and (c) r.~n ra~diation, as irrevocable proof to a third party that only the signer, and not the recipient or its employees, could have created the signature. A
symmetric secret key authenticator, for example the Xg.g ~AC, does not provide these services, since either of the two parties can create the authenticator using their shared key.
W096/02993 P~l/u~ l ,6 ~
21 ~4~75 v Several of the ~ ni~ ~icn-lc~Pd herein as6ume the ability to attach multiple signatures or cosignatures to a ~- ~. A useful format for this purpose, as i8 well known in the art, i5 defined in "PKCS ~7: Cryptographic ~essage Syntax," RSA Data Security, Inc., 1993, which is hereby incv~.ated by reference. Each signature structure on a do t will contain an indication of the certificate needed to validate the signature along with a bit string containing the actual signature. Additionally, other information relevant to the particular signer may be in~ A~ in an individual signature computation. This per-signer information may be included in the signature computation as "signature attributes."
In order for one user to identify another user for ~L - ic~ion of a message in a way that ensures the second user'~ pos~6ion of a private key, the fir~t user must be able to obtain the other user's public key from a trusted source. A~ i8 well-known in the art, a f ~_ ~ for the use of public key certificates was dsfined in "X.509: The Directory: Authentication F~ CCITT, April, 1993 ("X.509n), which i5 hereby in~ ~uLated by reference. These basic public key certificates bind a user's name to a public key and ar~ ~igned by a trusted issuer called a certiricatiOn Authority (CA). Besides cnntA;ning the user's name and public key, the certificate also contains the issuing CA's name, a serial number and a validity period.
Although X.509 doeD not imposQ any particular ~LLU~LULe on the CAs, many i 1- L~tions find it r~on~hle to impose a hierarchical D-Lu~LuL~ in which each CA (in general) certifies only entities that are subordinate to it. ~ence, we can C~ LU~ A hierarchy of C~s, as ~hown in FIGURE 3, in which the higher level ~ W096/02993 2 1 ~ 4 4 7 5 P~ll. Sh ~/6 CAs 31 (perhaps banks) sign the certificates 34 of the CAs 32 beneath them (for example, ni~), and the lowest level of CAs 32 sign user 33 certiricates 35.
At the top of thi5 hierarchy (not shown) are a relatively few other root CAs, perhaps one per country, that may "cross-certify" each other's public keys (root keys) .
Various security architectures define ~ n i I
to cùl-aLLu~- a certification path through the hierarchy to obtain a given user's certificate and all CA
certificates n~c~ss~ry to validate it. These architectures share the common characteristic that a user need trust only one other public key in order to obtain and validate any other certificate. The trusted key may be that of the top-level CA (in a centralized trust model) or of the local CA that issued the user's certificate (in a de~en~Lalised model).
Certificates also contain an expiration date. If it is ne~s-~y to cancel a certificate prior to its expiration date, such as if the name association becomes invalid or the CULL ,~r~0~1;ng private key is 108t or _ . i f ~, the certificate may be added to the CA's certificate revocation list (CRL) or "hot li~t.~ mi~ list is signed by the CA and widely di~tributed, possibly as part of the CA's directory entry. The certificate remains on the CRL until the certificate's expiration date.
Often certain information concerning an entity or CA need6 to be made available in a trusted manner. In a secure X.500 Directory, this information would be retrieved via standard Directory operations and the result would be signed by the Directory. In the absence of such a secure ~.500 implementation, this information is placed in an attribute certlficate, W096/02993 ~ 6 o 21 9447~
which is signed by a CA in the same manner as the public key certificate. Attribute certificates would be created on presentation of the proper credentials by the user. For example, the user would present his public key certificate and prove he pOqE~ the uuLL~ u~ nJ private key, as one form of identification. Attribute certificates are linked to the user's basic public key certificate by referencing the basic certificate's serial number and are revoked by an identical parallel CRL -- -n~r~. Attribute certificates are dic~ cFo~ further in "X9.30 Part 3:
Certificate M~nA~ L for DSA," ANSI X9Fl, June, 1994, and U.S. Patents Nos. 4,868,877, S,005,200 and 5,214,702, which are all well-known in the art and are all hereby inuuLuuL~ted by reference.
An attribute certificate is a ~LLU~LULe separate from a public key certificate because proper separation of duties may often re~uire that the CA that issues the attribute certificate be different than the CA that issues the public key certificate. A central CA might rarely of itself posse5s the required securlty or authority to "sign for" all of a user's authorizations.
Having s_~aLaL~ CAs ~ L-te various types of attribute c-rtificates distributes risks more appropriately. In addition, the defined attributes may not be re~uired for all domains, neL~-LkD or applications. The need for these attributes and for additional domain-specific attributes is deto~minDd by each domain.
The user's basic public key certificate remains X.509 compatlble, allowing its use with other applications and allowing use of commercial ~Lu~uuLD
for certificate generation.
Tt is desirable to be able to uun~LLuuL a trusted organization that utilizes digital signature and ~ W096/02993 2i 94475 r l" /6 certificate ~ ni~ to enforce a security policy defined by rules within this organizational structure.
It is also desirable to use digital signature and certificate -h~nil to encode industry-wide security policy and authorization information into the signatures and certificates in order to permit the verifier of a signature to decide whether to accept the signature or certificate as valid, thus ac~ ting and easing electronic ce business transactions.
It is further desirable to reduce the risks associated with digital signature systems, particularly with end-user smart cards, by b~ i ng on this use Or public key certificates and attribute certificates.
It is further desirable to prevent the use of such a digital signature 5ystem by any party that might purport to "accept" a transaction in c~ La~6..~ion of the applicable authorization certiricates when that party had not signed the applicable "system rules~
~ . ~ pertaining to that system of _ icating signer authorization.
STTMMARY OF I~T~ INV~UTION
These and other objects Or the invention are ~" li~h~d in accordanc¢ with the principles of the i.... 1 ~n by providing a system for securely using dig$tal Si~--a-u~-3 in a commercial cryptographic system that. allows industry-wide security policy and authorization information to be encoded into the si~..aLu~ and certificates by employing attribute certificates to enforce policy and authorization requirements. In addition to value limits, cosignature requirements and d- ~ type restrictions that can oe placed on transactions, an organization can enforce with respect to any transaction gaa~L~pl,ical and W096l02993 P~ C~v~6 21 ~4475 temporal controls, age-of-signature limitations, pre-ay~Lvv~d counterparty limitations and confirm-to reguirements by using attribute certificates for the tran~acting u~er. Restrictions on distribution of certificates can be set using attribute certificates.
Certificates can be used also to ensure key confinement and non-decryption reguirements of smartcards in this system.
R~T~ DESCRIPTION OF THE DR~WINGS
The above and other objects and advantages of the invention will be apparent upon concidoration of the following iot~i led description, taken in conjunction with the a~ nying drawings, in which the reference characters refer to like parts th~uu~llu~L and in which:
FIGURES l(a) and l(b) show the prior art use of symmetric and asymmetric algorithms for encry-ption;
FIGURE 2 is a flow chart illustrating the prior Art process of a digital signature using an a~y ic encryption algorithm;
FIGURE 3 ~hows a hierarchy Or signature certification authorities;
FIGURE 4 shows a directory information tree (DIT);
FIGURE 5 shows an example of an authorization c~rtificate;
FIGURE 6 is a flow chart illustrating the prior art process of verifier enfo1~ ' of a transaction y value restriction;
FIGUR~ 7 is a flow chart illustrating the prior art process of verifier enfu~-_ of a tr~~ "-ti n~
cosignature reguirement;
FIGURE 8 i_ a flow chart illustrating the procass of verifier enfuL, L of a trAr~~ nn l. L-type restriction;
~ W096~2993 A ~ i / ~ ~ v 16 ~ 21 94475 FIGURE 9 is a flow chart illustrating the process of verifier enfor ~ of a transaction geographical and temporal control;
FIGURE 10 iB a flow chart illustrating the process of verifier enfoL. ~ of a maximum age of sender's signature restriction;
FIGURE 11 is a flow chart illustrating the process of verifier and sponsor enfo~o ~~ of a pre-a~Lo~cd counterparty restriction;
FIGURE 12 is a flow chart illustrating the process of verifier enfo~- ~ ~ of a transaction "confirm-ton reguirement;
FIGURE 13 i6 a flow chart illustrating the process of a device's certification of key confinement and non-decryption;
FIGURE 14 is a flow chart illustrating the processof keeping public keys secret and enforcing signing of system rules; and FIGURF 15 i8 a flow chart illustrating the process of verifying user rules of a transaction.
nT~ATTT~n D~ T~LlON QF T~ l~v~
The following general prinrir~q and rhil~a~rhi~c are reflected in the signature verification model defined in this invention. First, CA and user certificates can contain attributes that ' ~ the conditions and assumptions under which they were created. Verifiers may simply reject all certificates and tr~nq~ct;~n~ that do not meet their minimum standards.
Also, attribute certificates may be signed by a UDer~8 1~D~ 5J n to signify that the sponsor's signature will be honored for official b~q;n~qq if the tra~ n meets the requirements stated or implied by WO 96/02993 1 ~,1 /L.................................. _. ,V /6 ~
the attributes. Although typically the user's sponsor will be the user's employer, the model can be extended to include the user's bank, credit card issuer, voting bureau, video rental store, public library or any other entity that might accept the user's signature. This sponsor (authorization) certificate is thus the electronic equivalent of an "affidavit of legal mark,"
as ufied in the context of a traditional signature stamp. See Robert Jueneman, "Limiting the Liability of CAs and Individuals Regarding the Use of Digital Signatures," presented to the ABA Section of Science and Technology Certification Authority Work Group, July 2, 1993.
FUrth~ e, industries may develop "industry policy" statements that establish minimum requirements for signature verification. All particir~nt~ would sign these multilateral &gL~ ~ in order to ensure that all ~uul.LeL~aLLies would be bound by the encoded restrictions. Normally, sponsor certificate6 should be reguired in all cases, and digital signatures would be deemed otherwise null and void in their absence.
Industry-wide pol;ci~c would also define (1) relevant d~ L types and classes, (2) signer roles and titles, and (3) coded symbols for in~uL~uLating by Ler..~ standard uul.LL~_Lual terms and conditions.
IIOLe~._L~ there must be strict a~leLenCe to the principle that all restrictions can be enfoL~ed in an entirely automated manner (that is, verification "on siqht~), without reference to paper a~ or human int~L~L~LaLion, ~ Li--- also termed "fully - ;n~hl~ straight-through pro~ inq." In complex and/or high-volume envL, La, this is required in order to give these security controls credibility in the eyes of audit and legal experts. Reference to -~ W096/02993 2 1 9 4 4 7 5 r~l" /6 trusted third parties should also be minimized to reduce verification latency times.
While these restrictions seem complex, they merely reflect ordinary business procedures made explicit for S ~u~yoses of machine verification. Formerly, such controls were enforced inside the sponsor's computer systems before sending out the transaction. However, with the advent of multilateral distributed transactions, the verifying user is typically off-line from the sender's sponsor's system, and so the verifier must enforce the sponsor's authorization model, as reflected in the attribute certificates. Once this methodology is specified, office software vendors will develop menu-driven systems to create and manage user attributes, and the cost to user organizations will be relatively low.
Or~Ani 7~ti~nAl SLr U~ l "' e in Cer~ificates The certificates themselves may reflect the 20 SLL~LU ~ Of a sponsor organization. ~ecause many authorization decisions are based on the user's position in an organization, the organizational ~L~Lu-- and the user's position therein may be ,~ 'fied as part of a user's name. Names in certificates are specified in terms Or the X.500 Diroctory model, as follo~s.
The X.500 Directory ~L~u~Lu~ is hierarchical; the resulting distributed database comprises the Directory Information Tree (DIT~, as shown in FIGURE 4. Each entLy 41 is of a specific object class and consists of a set of properties called attributes 42. An attribute 42 consists of a type 43 and one or more values 44.
Thus, in an entry of class organization, one attribute is the organizationName; in an entry of class W096/02993 Y~ 6 ~h~
21 9447~ v organizationalPers0n, attributes might include title and tel. l~h~u~n~ ~ .
Each entry also has one or more special attribute values used to UUI~D ~L U~ ' ~ the object's name; this S attribute value is the relative distinguished name (RDN) o~ the entry. An object's distinguished name lDN) 45, which is created by concatenating the relative dlstinguished name5 46 of all entries from the DIT root to the entry, uniquely identiries the object in the global DIT.
Several of the attributes defined in X.500 may be usefully in~ iD~ in the user's attribute certificate.
For example, the object class can be used to distin~-i~h between entities (for example users and roles) whose distinguished names are of the same ~orm.
Also, the title may be used in making authorization rl ~Dr i c i C~n ~: .
In addition to the use of the DIT to group entities along organizational lines, X.500 define8 several object classes that can be used to oullOLL~L
arbitrary groups of entities. These object classes include the organizational role, whose "role o ~
attribute lists the name5 of the users who occupy the role, and ths group 0r names, whose " ~ attribute li-ts the names of group members. To convey this infor ation in a trusted way, one could define role and group certificates that convey the names of the role 1 a or group members, respectively, and that are signed by a CA, thus ~n-hl ing use 0r this feature outside the context of an X.500 directory system.
Group and role certificates may be used in cv,,Ju..~Lion with a cosignature - -nl ~~ to ~impli~y the ~u-.OLLu~-ion of cosignature reguirements. For example, a transaction might require the si~..aLu..- of ~ W096/02993 P~~ .l6 -- 21,q4475 three oC~u~lL5 of the "purchasing agent" role. A ufier may also indicate the role in which he i8 acting by inrluSing the role in the signature computation as a tper-signer~ signature attribute. The asserted role may then be matched against a role certificate (or the user's attribute certificate) during verification.
Policy Information i n Certiricates It is another P~ho~ of this invention to encode information regarding a CA's security policy into the attribute certificates of the CA and its subscribers, so that the verifier of a signature can use the information in ~etDrmining whether to accept a signature afi valid. In general, the CA's certificate will convey the rules that a CA uses when making certification ~oci~i~n~ while the user's certificate will convey the information used by the CA when applying these rules.
Attributes in CA certificates can indicate security policy and aDDuLGncc information for a particular CA. This policy information can also be inherited by subordinate CAs, allowing easy C~ LL U~ Lion of security domains sharing a common policy. Policy attributes in a CA's certificate might, among others, include:
(1) Liability Limitations: the extent to which a CA i~ liable in the event of various problems (for example, CA key ~ i~e, defective binding); this might be no liability, full liability or a ~pPcific -~ amount.
t2) Trust Specification: a description of which users and CAfi a given CA can certify, ex~.c3~cd relative to the CA itself (for example, "all WO96~v2s93 F~~ 6 21 94~75 subordinates"), or to the DIT in general (for example, "the subtree below Organization ABC"), or to others.
(3) Required Attributes: a list of those attributes in the user's attribute certiflcates that must be verified against a transaction and/or its context in order for the transaction to be c~n~i~A~red authorized. These attributes would be found in the certificate(s) of the sponsor and allow a single authorization certificate to con~ain authorization attributes for use with multiple applications. Some suggested user authorization attributes are defined later.
(4) ~ hl~ Name Forms: a specification of the ~1l, hl~ name forms that the CA may certify. This information is held as (a) a set of name ~inAin7~, which defines the attributes that may be used to name entries of a given object class (that is, the ~11 hle RDN formats rOr entries of that class), and (b) a set of ~L,~ LULC rules, which defines which object classes may be adjacent (that is superior or subordinate) to each other in the DIT, that is, the order in which object classes may be chained together to form a complete DN. This policy attribute may be used to restrict the type of entities that may sign L, Lions. For example, for wire transfer applications, it might be desirable to restrict siq~-t~lre cAr~hility to the organization itself, rather than to users within the organization, since this is similar to the current mode of operation using DES
MACs.
MACs.
(5) Cross-Certificates: it may be desirable from an erficiency point Or view to allow certi~ying entities and as organizations to cross-certify each other in order to constrain the length of certification ~ W096l02993 1~ 6 21 9'4475 paths. On the other hand, it is not desirable to allow certification paths to contain arbitrary number~ of cross certificates, as it i5 difficult to determine the level of trust in the entity at the other end. Nany certification architectures re5trict certification paths to contain only one cross-certificate. To A -'-te a wider range of policies, an attribute may be added to the attribute certificate associated with the ~LOSS ceLLificate indicating that the cross-certifier explicitly allows the use ofcross-certifiCate5 i55ued by the CA being cro5s-certified.
Attributes in a user's or entity's attribute certificate may represent the information verified by the CA when creating ~he certificate for the entity.
Policy attribute5 in a user's certificate might, among others, include:
(1) Binding Information: the criteria used to bind the public key to the identity of the entity being certified. This ;n~ '3e (a) the method of delivery, auch as being presented in person, by authorized agent, by mail or by another method; (b) the method of ;S~nt1fication, such as by La - -hle - ~u ial ~ a~ verified by trusted third party, dual 25 con~rol, finqerprint check, full ba~h~Luud inv~stigation or another method; (c) the identification presented to the CA; and (d) the subject's entity type, that is, individual, cu~uL~tion, device or other.
(2) Trusted Third Parties: the names of any trusted third parties or agenta involved in the binding process.
(3) Roles: it may be useful for authorization ~UL~05~S to indicate which roles (both internal and W096/02993 ~ v,6 ~
external to the organization) a user may exercise.
This i_ in contrast to a role certificate, which would be issued to the role and contain the names of all oc~O ~ya--t~. .
(4) Relative Identity: a CA may wish to certi~y only a portion of the DN of an individual. In particular, the CA might ~ic~l~im liability for CULL~ Lness of an individual'5 personal name, since, under legal Agency principles, the individual's signature is binding on their organizational sponsor in any event. rnnci~r the name:
C~US; O-Bankers Trust; OU=Global Electronic C ~; CN~Frank Sudia; TI~VP
The CA might certify only the validity of the organization, organizational unit and title portions of the individual's dis~inT~ichod name, all of which are easy to verlfy, while the personal name would only be "ro~cnnAhly believed accurate." In view of the relative ease of obtaining false identity papers, this 20 avoid_ the need for prohibitively expensive ba~y~ud investigations. Such an identification can be relied on in an ordinary co_mercial setting but not in a proc~e~inq concerning a will or inheritance, for exampl-.
l5) Absolute Identity: we define relative identity as the user's identity "relative" to his organizational sponsor. Put another way, we certify all ~1- of the user's n~--ci- card identity, n except his personal name. As a special case, some CAs might undertake to certify the absolute identity of a~l~cto~ users, say the children of wealthy clients, diplomats or national security operatives, almost certainly bolstered with biometric techniques. This would be rare and is presented here only for ~ W096l02993 P~ 6 completeness in order to round out the "relative identity" concept.
AuthQrization TnfQrr~tion in Certificates Attributes may convey restrictions that control the conditions under which a signature i8 valid.
~ithout such restrictions, the ris~c of forgery would be considered excessive, since an electronic signature can be affixed to almost any digital ~ L by anyone poceeSsing the user's smart card and personal identification number (PIN~. In the electronic environment, the normal contextual controls of do.
creation and physical delivery are either weak or nonexistent.
Even authentic users are hardly ~,a~; _ Lhy to undertake free-form offline commitments, and organizations will thus welcome the ~p~hi1ity to positively restrict the scope of express signature authorization. Such authorization attributes might, in addition to standard X.500 attributes, include Transaction Limits, Cosignature Requirements, Dc Types, fiubject matter restrictions, Authorized Signatories, Geographical and Temporal Controls, Age of Signature, Pre-a~ l Counterparties, Delegation Controls, and Confirm-To Requirement. These attributes can be encoded in one or more authorization certiricates signed by the signer's organizational sponsor or by an external CA acting on behalf of the organization. An example of an authorization certificate and an associated Lr~ns~cLion is shown in EIGURE 5.
When a recipient user (verifier) receives a t, .ction 51 from a sending user, the recipient first uses the sender's basic key certificate 55 to verify W096/02993 rc~ 6 A~
21 94~75 '~
the sender's signature 52 on the transaction Sl. As will be described in greater detail below, the recipient also uses the sender's authorization certificate 56, signed by the sender's fiponsor 59, to verify the cosignatures 53 and ti~- t _ notarization 54 A~ n~r~ to the LL~ cLion 51 and to verify that the attribute values 57 of the trAncaotinn 51 fall within the authorized attribute values 58 as specified in the authorization certificate 56.
The user may be subject to transaction limits that control the value of transactions or other ~c- --Ls that the user may initiate. The user's signature will be valid only on transactions originated either up to a certain monetary limit or between two monetary value boundaries. Accordingly, as shown in FIGURF 6, the aending user sends a trAncac~ion 601 signed 603 by the sender (actually by the user's smart card 600 containing his private key) and appends thereto an authorization certificate 604. The verifier uses the authorization certificate 604 to verify 607 the user's signature 603 and to verify that the ~ t 1~n - ~ value 602 falls within the trAn~Actinn limit attribute value 605 in the authorization certificate 604. The verifier also verifiefi 609 the sponsor signature 606 on the authorization certificate 604 using the ~ponsor's public key 610. If any of tho-9e Cj~ 8 and attribute values does not verify, the trAn-a~ti~n i~ rejected 611. If verification is complete, the transaction is accepted 612.
With regnrd to cosignature requirements, additional si~..atuL~s may be required in order for a given signAture to be cnnci~ ed valid. Quorum and weighting -- sni - can be used to vvl.~LLuvL fairly elaborate checkfi and bAlAnc~ for explicitly governing ~ W096/02993 P~ ,6 ~, 21 9~475 the level of trust in each user. The particular sequence or order of required signatures may also be specified. Referring to FIGURE 7, sending user A sends a trAn~acti~n 702 signed 703 by his own smartcard 700 and, if user B's cosignature is required on the transaction 702, signed 704 by the smartcard of user B
701. Sending user A also appends his own authorization cert.ificate 705 to the transaction 702. The verifier uses the authorization certificate 705 to verify 711 user A's signature 703, and uses the sponsor's public key 713 to verify 712 the sponsor's signature 707 on the authorization certificate 705; if either signature does not verify, the transaction is rejected 720. If a cosignature value 706 is required 714 by the authorization certificate 705, the recipient enforces the requirement by verifying 715 cnCignDr user B's signature 704 on the ~-~n~a~Li~n 702, and then checks cosignDr user B's public lcey certificate 708 by verifying 716 the signature 709 of the certificate issuer, using the issuer's public key 717. If the signature of either user ~ or his certificate's issuer does not verify, the trAn~-sLion is rejected 722.
The uae of cosignatures allows an organization to effectively define checks and hAlAnr~, and to explicitly specify the level of trust in a user. The U8- of cosi~..atuL~s also greatly reduces the risks that result from inadvertent , ice of a private key due to theft, misuse or mispla ~ of a ~aLLc~Ld or PIN.
In particular, it is believed that the ability to require cosignatures, value limits and related controls will enable organizations to carefully manage and fine-tune all signature authorizations, thereby giving them all the tools needed to manage and limit their risks.
Use of cosignatures further allows distribution of the WO96102993 I._11L~_.___/6 21 94475 ~
authorization function over multiple locations and hardware platforms, with the resultant minim; z-tion Or risks that might result from access control failures on one of those platforms. See U.S. Patents Nos.
4,868,877, 5,005,200 and 5,214,702.
Authorization signatures, which must meet the restrictions 5pecified in the signer's certificate, can also be distin~iQh~ from other cosignatures by ;nr~ nq the signature purpose as a signature attribute and by requiring that an indication of the signature purpose be included in the data being signed.
This signatuL~ ~uL~ose attribute might require the values of: (a) an authorization signature appropriate to the dc ~, tb) an authorization cosignature appropriate to the dc L, where the cosigner' 5 certificate has sufficient authority to authorize the ' t, and (c) a witness cnaiqnAt~re, where the rosiqn~r's certificate does not by itself have sufficient authority to authorize the ~~ t.
Signature purpose Dnro~in7a ~;ac~c~ed in draft ANSI
~L~r.dald X12.58 Version 2 (~pr~n~iY) issued by the Data Interchange SLanla~ds Association (DISA), which is well-known in the art and is hereby inc~L~L~ted by ref-rRnce .
The user can also be restricted to signing only particular dc L types, such as ordinary C~LL~ , '~ e, purchase orders, specified FDI
LL ~ ;On types, b~Q;n aQ ~IlLL~L~, speciried finAnriAl i~ Ls, etc., as defined by industry-wide policies. It ~ay also be desirable for efficiency to exclude certain large classes of LL ~~ Lions and d- . Referring to FIGURE 8, the recipient enforces the dc --~-type restriction in the ~ender~8 trAn~Arl ;~n 801 by first verifying 807 the ~ W096/02993 21 94475 . ~ l vl6 sender's signature 803 on the transaction and by then verifying 808 the ~oc - t type attribute value 802 within the transaction 801 to enforce the do t type restriction 805 within the sender's authorization certificate 804. The recipient then verifies the authorization certificate 804 by using the sponsor's public key 811 to verify 809 the sponsor's signature 806. If either a signature or the attribute restriction doe5 not verify, the transaction i8 rejected 810.
It is also de5irable to add po5itive or negative restrictions pertaining to transaction subject matter or context clas6. For example, to restrict an agent to signing purchase orders for some class of goods (such as, for example, office supplies), or to deny authority as, for example, in the case of denying an agent the ability to purchase pvL..v~Laphic materials. Subject matter restrictions are ~nfuL~ed by the transaction rec;ri~nt in the same manner as dr ~ type restrictions, and may be implicit in many d t typos, yet requiring separate specification for the more generic dc t types.
An organization can indicate that there are ~~ 'f~c authorized signatories, that i8, that only , 'fic individuals can Hsign for" the organization, si~il~r to a ~tal-da d "cv~uLate 1 -clut;n~" to this effnct. This might 1~ the lc L-type concept, as an additional control on signing of nC~,~VLate" 1- t-type~. This restriction can be ~ d by specifying that a cosignature i8 recuired in which the cosigner~s title (in its disti~ h~d name) must be egual to one on a specified list contained in a authorization certificate. This is W096~v2993 I~ l/U~ 6 21 94475 v in lieu of naming a list of one or more required cosigners.
Geographical and temporal controls include locations and time periods from which transactions are considered valid. Use of a local trusted "timestamp notary" is assumed. Such a notary would append a trusted timestamp to the originator's signature on a dc L and would then sign the result. Thus, time-of-day and day-of-week restrictions would normally roin~iSo with the work-week of the user's locale.
Also, location information would be associated with the notary 80 as to restrict access to a specific network segment, typically the user's Acciqn~d work area. The "granularity" of location controls would depend on the network architecture. The signer or the signer's computer system must attach a certiried ~ from a ~pecified local server to the transaction, or else the verifier cannot accept the transaction and the signer's sponsor will not be bound by it. As shown in FIGURE 9, the sending user attaches to the LL~r.aa~Llon 901 an authorization certificate 902, as usual, an authorized ti- L 903 and a time server certificate 904. The recipient verifies 92~ the sender's signature 905 on the transaction 901 and verifies 922 the spon or's signature 908 on the authorization certificate 902. The recipient then (1) verifies 923 that the t1 t trAncac~ion text hash 909 matches the result of the text of the LL-nC~ n 901 hashed with a known hash function, ~2) verifies 924 that the time and date 910 on the transaction ti-- i 903 fall within the authorized time and date 906 attribute valu-s as specified in the authorization certificate 902, (3) verifies 925 the time server signature 911 on the li ; 903, and (4) verifies 926 the sponsor's ~ W096/02993 ~ /6 sigllature 912 on the time server certificate. If all these conditions are satisfied, the transaction is accepted 931; if not, the transaction is rejected 930.
Furthermore, a document may not be valid unless the signature is verified within some specified time period. For high-value transactions this age-of-signature attribute period would be quite short, while for more normal transactions, esreciAlly those sent via store-and-forward systems such as X.400, a longer interval (such as two days) would be appropriate.
FIGURE 10 shows enf OL ~ L by a recipient of the age-of-signature attribute value. The time of verification would be provided using a receipt 103 signed by a trusted timestamp service 104 containing, at a minimum, the recipient's name and the signature from the original tr~nC~I ion. The verifier must submit a timestamped copy of the original signature that is dated promptly after the time and date Or the original transaction, or else the sponsor will reject it. As shown in FIGURE 10, the recipient (verifier) verifies 121 the sender's signature 107 on the trAn~A~ti~n 101 and verifics the sponsor~s signature 115 on the authorization certificate 102. The recipient then v~if~e~ 122 that the difference between the date 105 and time 106 on the transaction 101 and the date 111 and time 112 on the t i-- ~ 103 is within the age-of-signature attribute restriction 108 in the authorization certificate 102. The rec;~iPnt also verifies 123 that the hash 110 of the tr~n~A~t;~n 101 within the trusted ~;-~ L 103 matches the text of the trAn~acti~n 101. If all these conditions are satisfied, the LL~I13a_LiOn is accepted 130; if not, the L- -t;~n is rejected 131.
W096/02993 r~ 6 ~
21 94~75 v A similar concept is that of a minimum age of a signature. In this case the signature would not be valid until some minimum time after it had been signed.
This allows for a smartcard to be reported lost and for a revocation notice to be broadcast to the recipient.
The control attribute can specify a maximum and/or minimum age for the signature . . .
A "pre-~yyL~._d counterparties" attribute value restricts an entity to dealing only with some specified set Or known L.u~ Llry partners. This is a common reguirement in dial-up home banking systems, which typically reguire that all authorized payees be specified in advance. Another way of stating this is that "free-form transfers" are forbidden. SY~I8GL~
realize that, in case of an error, they stand a better chance of ~ c~-rully reversing the error when dealing with a large, solvent and creditworthy party than when dealing with a small, unknown and unauthorized one.
Separate certificates can be issued for each ~u~L~LyaLLy in order to prevent a competitor from nht~;ning the user's customer list (other than himself) in a single certi~icate. The a~L~._d ~uu~L~Lyd~Ly can be coded either as a common name, a dist;n~i~h~A name, a certificate number, or the hash value of either the Ai~tin~li~h~d name or the counterparty's public key.
In order to claim the benefit of the L.~n~--Linn, the v-rifier must submit a certificate that matches the encoded counterparty value.
FIGURE 11 shows verification by the user's sponsor of the user's transaction after receipt by a rqcipi~t.
The recipient (c~u--L~ry~LLy) verifies 1110 the user'~
signature 1103 on the L,u--_ cLion 1101 and verifies 1111 the sponsor's signature 1105 on the user authorization certificate 1102. If either of these ~ W096/02993 2 ~ 9 4 ~ 7 5 , signatures does not verify, the transaction 1101 is rejected 1112. If the signatures verify and the transaction is accepted 1113 by the recipient, the recipient endorses the transaction 1101 by issuing his S verified transaction 1114 counter-signing 1116 the text 1106 of the original user transaction 1101 and the sending user's signature 1103, with the recipient's certificate 1115 attached. In enforcing the pre-~ru~_d counterparty restriction in the sending user's authorization certi~icate 1102, the sending user's sponsor veriries 1121 the sending user's signature 1103, as inrlllA~d in the recipient's veri~ied LLal.a~Liûn 1114, and verifies 1122 the recipient's signature 1116 thereon. If these signatures are verified, the sponsor next verifies 1123 the counterparty public key hash value by hashing the recipient's public key 1117 and ~h~inq the result against one of the authorized counterparty public key hash values 1104 as specified in the user's authorization certificate 1102 (the reciri~nt's public key 1117 that the sponsor hashes for verification is itself verified 1124 when the sponsor verifies the recipient's certificate). If these conditions are met, the Lr~ i~n is accepted 1125.
me attribute values o~ delegation controls can limit the types and value ranges o~ authorizations that a CA may specify when issuing an attribute certificate.
They can also serve to limit the scope and depth to which a user may delegate his signing authority to others. For example, a root CA might limit an organizational CA to issuing authorizations only to allow its end users to sign dc t S whose ds L
types fall into a range of ~c ts related to state tax administration. Or a CA might grant some authority w096/02993 rc~ ,,6 to a user with the provision that it can be delegated only to another person with the rank of assistant treasurer or higher, for a time not to exceed thirty days, and without the right to further sllhdPlegAte.
Another authorization attribute, called a "confirm-to requirement~ value, prevents the signature from being valid unless the verifier sends a copy of the verified trAnRAr~ion to a third party, typically the user's organizational sponsor or work supervisor, at a specified mail or network address, and either (a) receives an accept/reject message, or (b) a specified time elapses. This re~uirement is similar to a cosignature but occurs after the trAnR~ctinn is sent rather than before. Such after-the-fact confirmation could be acceptable in lower risk situations in which few transactions would be rejected and in which nhtAining the cosignature of the third party in advance may be unduly bUL;~_ . Or it might be preferred in high-value cAAses where positive on-line nhPn~ing is ' -'. In that case, the flow pattern reverts back to an on-line rather than an off-line system. As shown in FIGURE 12, the recipient first, as usual, verifies 1211 the sender's signature 1203 on the ~ I in~
1201 and verifies 1212 the sponsor's signature 1205 on the u~er authorization certificate 1202; if either of th ~ ,e8 does not verify the trA -1;on 1201 is rejected 1213. If ths si~..aLuL~s are verified, the reAiriPnt sends 1214 a confirmation message consisting of the original L. -Lion 1201 (the L. inn text 1202 and the sending user's signature 1203) to the user's sponsor 1215, as specified 1204 in the sender's authorization certificate 1202. The recipient should receive from the sponsor 1215 the same message in return as confirmation 1216, but signed 1205 by the ~ W09~02993 2 I q 4 4 7 5 r~ . l6 sponsor. The recipient then verifies 1217 the sponsor's signature 1220 and the confirmation message 1216, and accepts 1219 the transaction 1201.
In order to create complex combinations of restrictions, a filter expression, which is a Boolean or logical expression involving one or more attributes, can allow ~onDLLuvLion of restrictions involving multiple attributes. The attribute assertions are linked with the usual Boolean ~n~nPctives "and", "or"
and "not". For example, the sponsor might restrict a user to submitting transaction with a type equal to "purchase order" ~n~ a value less than $100,000.
Assertionfi may involve either a single attribute value (equality, less than, greater than, etc.), multiple values of an attribute (subset, DUy_LD~t, etc.), or the p~eF or absence of an attribute in the dc Of course it will be appreciated that any or any of the described restrictions, as well as others, can be in effect at the same time for the same dc ~ ~ or trAnsaction. These reDtrictions have been di~ e~l and illustrated -!~ ately for clarity.
The use of authorization attributes allows a f -ipi~nt to verify authorization as well as iration. In such a scenario, the sponsor c~rtificatQs, an~l.o-ad by the D~VIIDV ing organization~s certiiicate, would be interpreted as authorizing "on sight~ the Ll~n ~ n to which they are applied, ~- ;nq all specified restrictions are met.
A set of basic pol1ciP~ must be defined for use 30 Ll~v~l.ouL the fln~n~i~l services industry and other industries in order to provide a well-defined, predictable level of service for the verification process. These policies would be agreed to on a multilateral ba5is by every participating firm and WO 96102993 1~ , /b could stipulate that certain of the restrictions and authorizations ~;~r~c~ed in this section would always be deemed to be in effect unless expressly provided otherwise. One of the more important elements of these industry a~L. c would be the definition and coding of dc t types. This must be done on a per-industry basis, since the rules will obviously be much different, f or instance, for customs inspectors, aircraft inspector5, auditor5, tax officials, etc.
Certain authorization attributes may pertain to the specific content of the ~n . L itself. This can pose problems for automated machine verification, because the verifier's computer may not always be able to determine the value5 of such attributes for a given d- L or transaction. Examples include -y transaction limits, dn. types, and security or confiA~ntiA11ty labels. Therefore, it is desirable to provide a ~LandaLd data block, preferably at the start of the l: L or the LL~n-~ l1nn, clearly ~roAin7 the attribute, for example the stated monetary LL_ -Lion value, ~._ type or security sensitivity label. This ~c tag will be ~P~ A
by the signer's computer for the convenience of the verifier and as an aid to the verification process.
How v r, in the event of a cnnflict between the tag and th- actual content of the d~ L, the ] A , -- ~ of the ~c would be controlling. In the case of ~LL~LuLed transactions, such as EDI tran---L;o~, in which the ~ L types and monetary values are already completely machine readable, dc~ L tags would not be needed.
As a pOc~; hl e convenience in proce~inq simple authorizations, ~peciAlly where a given user sign~
many similar transactions, it may often be helpful to WO 96/02993 ~ 1 q ~ 4 7 5 ~ 16 copy the user's public key out of his baOic - authentication certificate and include it as another attribute in an authorization certificate. This permits the authorization certificate to serve both purposes (authentication and authorization) and allows the sender to omit the basic authentication certificate from each transaction. In addition, where a device is being relied upon to fulfill a given condition, it may likewise be advantageous to copy the user's device public key into the authentication or authorization certificate as well, further eliminating the need to send the device certificate with each transaction.
Th 1 rd P~rtY Tnt~ract i onll:
Additional, useful features of digital si~lla~ures~
beyond those that can be provided using attribute certificates, involve interaction between a signer and third parties of various types.
One such use for digital si~llaLuL~s is electronic notarization. As ~;CC~9~1 above, there will be a need to cosign dc ~ using a third party that is trusted to provide an accurate 1i i and/or location information. Simply relying upon signature originators to provide this information in an accurate fashion leavQs si~laLuL_3 wlnerable to fraud based on, for example, pre- or post-dating of A:_ ta. An electronic ~nvL~Ly~ would be trusted by virtue of its CA's pol i~iDC to provide this information correctly.
The multiple signature ~r~hilities already assumed can 3 0 be oYr~nAAd to provide a EL _L k for this ~ervice.
For notarization ~UL~ es, ti-- ; - and location information will be in~l--ADd as signature attributes.
Individual signature oLLuv-u ~O may either be dDt~hDA
WO 96/02993 . ~,111 5 ,~ /6 and stored or, if desired, ~u~v~yed separately from the Multiple siy..aLuLds or joint signatures on the d~ ~ itself can also be distinguished from "countersiy--aLuLas," which are signatures on the slgnature ~LLu~LuLe in which they are found and not on the d~ L itself. A countersignature thus provides proof of the order in which siy-~aLuLes were applied.
Because a countersignature is itself a signature ~LLuuLuL~, it may itself contain countersiy..atuLes;
this allows ~u..~LLuuLion of arbitrarily long chains of countersignatures. Electronic notarization would then consist of countersigning the originator's signature and including a ti-- ; within the information being signed. For very high-risk applications it may also be desirable to reguire multiple siy~laLuLas on each certificate by one or more CAs, with the siu~a~uL~
being peLrl -I in ~nA~r~n~nt cryptographic facilities and with different private keys.
Various levels of service can be defined for electronic notaries based on the level of data verification performed prior to signing (ranging from mere existence of the ~c L, in which case notarization may be o letely automatic, to human verification of ~ L content) and based on data retention and audit oAr~hilities.
Another use for digital siyll~LuLes is for delegation or "power of attorney" certificates.
Because users are often tempted to entrust their devices or smartcards to others, for example, secretaries or co ~ Jl k~ when the users go on vacation, the freguent situation, in which one user obtains another user's smartcard and PIN, exposes the smartcard to possible misuse. The system therefore ~ W096/02993 2 1 9 4 4 7 ~ J76 facllitates the iAs~nre of power of attorney certificates that allow a delegate to associate the signature of his own smartcard with the authority of the delegating user. The power of attorney certificate would include at a minimum the name of the delegator, identification of the delegate's public key certificate and a short validity period, and would be signed by the delegator. Another poA~ihjlity is for the delegate to create a new key pair exclusively for use with the delegator's fiignature, with the new public key in~ d in the power of attorney certificate. This would eliminate any potential confusion between use of the delegate's private key on behalf of the delegator and on his own behalf.
The problem of handing over smart cards can be greatly reduced by providLng a workable alternative that preserves the principle of individual accountability. Wide i 1- Lion of this feature will make practical the di ~ of smartcard loans, a highly defiirable goal.
The use of delegation certificates d i r ~ ~ 1 above implies that the user is acting as a CA. In some cases, particularly those in which the transaction cro-~es organizationsl boundaries, there may be concern that the level of controls and auditing available with the individual user's ~L~Lu~ hic device (for exa~ple, a smart card) i~ not sufficient. In such cases, delegation certificates could be issued by a CA
upon request of the delegator as normal authorization certificates. Thifi also allows the delegation certificates to be revoked using the ~LAUdaLd CRL
'-ni~. Users' certificates might then indicate a list of poAsihle delegates, and the delegation W096/02993 1~~ ,o ~
21 ~4475 ~
certificate itself would contain an attribute naming the delegator.
In exercising the power of attorney, a user may indicate that he is signing for another user by ~n~ln~ing in the dc_ t or transaction a ~signing-for" signature attribute, that is, the name of the user being signed for. There must be ~ valid delegation certificate authorizing the signer to act for the user being signed for. Delegation is also useful in connection with a cryptographic module in a user's personal computer. Hashing and signing a ~ L should ideally be a unitary operation in order to prevent substitution of a false hash via software hacking. However, the typical s~artcard lacks the computing power to hash a very long A- t. One solution is to let the smartcard delegate this function to the cryptographic module using a very short-lived delegation certificate valid for only a few minutes.
This certificate is signed by the user's smart card and indicates that the user of the smart card has allowed the delegation. See, for example: Gasser, M., A.
Gol~t~in, C. Kaufman and B. Lampson, "The Digital Distributed System Security Architecture," Procee~ing~
of the 12th National C ~r Security Con~erence, 1989; Gasser, M. and E. M~n ~L, "An Architecture for PL ~ jr~l Delegation in a Distributed System,"
PLI ~~~'1ng~ of the 1990 IEEE Sy ~ on Security and Privacy.
Non-~lhlic ~lhli~ Kev A more basic problem, however, is ensuring that all po~cihle recipients will actually employ the certificate- and attribute-verification methods described above. Although these methods allow . ~
~ W096/02993 2 1 94475 ~ /6 sponsoring organizations to protect themselves, their users and those with whom they transact from liability based upon falsified transactions by allowing them to verify the identity and qualifications of those with whom they LL~naacL and the characteristics of the transactions prior to transacting, there is no guarantee that all recipients will actually 80 verify.
If a recipient acts upon a transaction without flrst verifying the attributes of both the sender and the transaction, and if the sender is later found to have sent a fraudulent or unauthorized transaction, the recipient could then claim liability from the sender or its sponsor by cl~;ming that the recipient was unaware of any require~ent for authorization verification of the user'5 basic signature. One way to ensure that ~UI~UL~ and other entities are protected from liability in such a situation is to require that the signer include the hash value of each of his identity and authority certificates AS attributes within hiB
signature. This can prevent a verifier from cl~i that he was unaware of such certificates and of the restrictions they impo~e. However, the signer might (intAntinnAlly or unintentionally) omit to do this.
Another more emphatic way to ensure verifier liAnre i~ to prevent the root key, the public key of the ulti~ate authority, that is, the highest-level certifying authority, which key would-be verifiers will need in order to verify any part of a LL ' ;nn, from being distributed to a user (or to the user's device or smartcard) unless the user contracts with the ~y~LO~L~yhic system and agrees to verify all parties and all trAn~tinn~ in ~O~uLl~nce with the preestAhli~h~d rules. In this way, the users are not te~hniCAlly forced to verify all parts of their W096/02993 P~llu~ v/6 ~
~1 94475 transactions. However, not verifying their trAnCA~tionQ in full would violate the C~ILL~_L between the users and the cryptographic system and would thereby absolve all other parties to the cryptographic system, for example a gponsor whose employee acted without authority, from liability. The non-verifying recipient would then bear all the ri5ks of such an unverified transaction himself. FULLII_L e, because the root key of the system authority is considered a trade secret, no one who has not signed the system rules ~ ~ L may possess a copy of it, and no one could claim to have verified any part of the transaction. This would make it far more difficult for the "outside" verifier to claim that he had incurred a 15 1058 by "L~s~ bly relylng" on the LL Lion, even if it was in fact valid. This art of keeping the system root key as a trade secret lends particular force and effectiveness to all the restriction and authorization methods described herein. It i8 belleved that the possibility of incurring the potentially-large liability for valuable LLa~n~A~- I ionC will p_L~uade users to employ the methods of attribute verification of thls invention.
Re~t~ictions on Certificate Distrih~tion U~ers and orgAnizations must be able to restrict the distribution of all types of certificates for a number of reasons. First, the certlficate3 o~ten contain confld~ti~l b~lQin~~Q information that the user or organization prefers not be shared with others and that is nevertheles5 being shared with the verifier through the certificnte, albeit only for the limited purpose of signature verification. Also, users' basic privacy rights may be violated if their public keys and ~ W096/02993 2 ~ ~4475 r ~ 6 network aldLe6ses are published. For example, they may - be flooded with unsolicited bu6iness proposals and advert~. Ls once their public keys are di~s~in~ted.
Furthermore, the organization may have a general policy S against giving out User identification numbers and public keys, because they may be used as starting points for various types of security attacks.
This functionality may be implemented as an attribute in user's certificate. If the "distribution-restriction" attribute is TRUE, the user/issuer grantspermission to use the certificate (which could be an authority or a public key certificate) only for signature verification; di5tribution or further publication is prohibited. Other ways to specify this restriction might include placing the attribute in the organization's certificate, puhlichinq the restriction as part of the industry-specific policy, or tin a true X.500 impl~ tion) using the X.SOO access control list -ni r~ to restrict access to the certificate.
Although some existing general legal basis for enforcing this restriction might be found under copyright law, that i8, if the certificate is declared as an ~lnr~hli~h~d work for which a license is granted only to the named verifier, a firmer legal basis will ~till be dosirable.
S--r~rd Re~i There are some additional reguirements on ~L L~a~d5 when used with commercial digital signature systems.
The first requirement is private key confinement and self-certification. That is, the user's private signature key must never be allowed to leave the smart card. only in this way can it be assured that theft of W096/02993 - r~ 6 ~1~
21 9~475 ~.
the key cannot be accomplished through purely electronic means without leaving any evidence. This principle of private key confinement is vital to the concept of non-repudiation.
Thus, as illustrated in FIGURE 13, when providing a public key 1303 to be certified, the card 1301 must attest that the card 1301 is t ~.uof and pOFC~cceF
a key confining design. Proof can be provided via a "device certificate" 1302 stating that the card originates from the specific manufacturer or product line. The public key 1308 of the device 1301 must then be certified by the manufacturer or by a CA designated by the manufacturer. One likely a~Lu~_l, to creating this device certificate would be to generate the device key pair during fabrication of the smartcard so that the CULL~ ;nq device certificate 1302 could also be in~ A~ on the card. The device certificate 1302 certifies the propertiss 1304 of the card, and the card generates a key pair 1303,1309 which is to be used by the user of the card and which the user can have certified as his own by any appropriate desired CA.
Then, when submitting a newly generated public key 1303 for certi~ication, the device private signature key 130S would be used to countorsign 1306 the certificate reguc~t data 1307, which is already signed by the newly ~ Led user private key 1309.
Also, in a case in which the ~u~. ~ requires that all decryption keys be e~ ', the card should be able to certify that it is ;n~ApAhle of decryption.
This ~signature only" certirication can bo i through the same -nil described above, thus allowing the user's signature key to remain exempt rrOm escrow requirements. Because it is doubtful whether an ~- . ' key retains any value for non-ropudiation ~ W096/02993 2~194~75 ~l6 services, this certification is vital in order to prevent the signature key's disclosure through possible mi ~h~n~l i ng during an escrow process.
Smartcards should also be required to guard against unauthorized use of personal identification numbers [PINs). Normally, a smartcard is protected against unauthorized use by a PIN, the equivalent of a pA _ld. Typically, a PIN is rh~nqe~hl e only by the user and must be a specified lenqth, but typically nothing prevents the user from setting the PIN to a trivial number, for example all 1~5 or 121212.
Smartcard vendors should be requested to implement PIN-change routines that insure non-trivial PINs without repeating digits or obvious patterns. Naking the PIN
relatively long tat least 6 digits) and non-trivial reduces the chance that the card can be operated by someone finding or stealing it. Support for a 6-digit PIN requirement can be found in ~X9.26: Fin~nr;
Institution Sign-On Authentication for Wholesale FinAn~;Al Transactions", ANSI, 1990, which is well-known in the art and is hereby incoL~uLaLed by reference and which sets forth the "one-in-a-million"
standard that states that a log-in ~n; ~ may be cnn~id~red sQCUre if, among other things, an attacker ha~ no more than a one-in-a-million chance of gU~ccinq the correct pA ,,~Ld and if the system takes evasive action to prevent repeated , - ; nq. Fur~ h~ e, smartcards should be required to take "evasive action~, for example, ch~lt~;n7 down for a period of time or even erasing private keys, if too many inc~-Le_L PINs are entered by an unauthorized user.
It could also be made ~ requirement that smartcard manufa_LuL~I6 use bi~ Lrics as more secure methods of identification. Extensive work is currently being done W096/02993 r~ 6 in the areas of voiceprint and fingerprint identification, as a supplement to PINs. However, while the rates of false positive and negative still must be reduced, the main problem lies in securing the biometric input device and its data channel 80 that they are immune to capture and replay of the biometric data. This is not a problem when the biometric device is . '-''~d in a concrete wall, for example in an AT~
or door nccess system, but it remains a serious problem in typical commercial office settings. Ideally, the card and biometric input device will each be t ~L oof cryptographic modules that can certify themselves and establish secure ~h~nn~l ~ with each other.
Smartcards should also be able to maintain an Haudit trail,H or an internal log of recent actions, containing at a minimum, a timestamp, transaction amount, type code and message digest. This information can be _6sed into 40 or so bytes so that a 400-record circular log would consume sround 16K bytes.
This log would be ~plc~-' and checked only on receipt of a signed request from the card issuer over a secure channel. Al30, the card would not delete the old log until it received a signed confirmation from the issuer stating that the l~ploA~D~ log had been received intact.
Thia control r- '~ni~ will deter forgery, reduce the damage that can be caused by a forger, and allow nnAIlthnrized or guestioned trAn~A~t;on~ to be investigated more quickly and easily. Since most or all transactions occur off-line from the issuer, the card is the best witnes6 of its own actions.
W096~2993 r~ ~,6 21 ~4475 Controlling Access to the Pl~hliC Kev of the Root tifyin~ Authoritv ~n~ Csst R~CU~LY
A~ shown in FIGURE 3, in a particular cryptographic system, there may be a hierarchy of certifying authorities (31-33) issuing certificates 34, 35. In a larger system the number of certifying authorities and the depth of the hierarchy would be much greater. In the structure shown in FIGURE 3 the certifying authority A (31) is the root certifying authority, with all other certifying authorities being below it. As noted in the description of FIGURE 3, the public key of certifying authority A is well known. In a system where certifying authority A accepts liability for any tr~ncac~ion~ in the system based on information in certificateS issued by A, it would be useful and desirable for certifying authority A (the root certifying authority) to control access to its public key. By doing so, certifying authority A could enforce rules on the system which would ensure the well-being of the ~LLU~-UL~ of the system. Various methods for controlling access to the public key of a certifying authority are now described.
With reference to FIGURE 14, in a cryptographic sy~tom, a certifying authority (CA) 1402 issues user identity certificates 1404 to users (for example, user 1438) of the cryptographic system. Certifying authority 1402 has a private key 1406 and a public key 1408. me private key 1406 is used to digitally sign the certificates 1404 with certifying authority's digital signature 1410. Certirying authority 1402 may be any certifying authority in a hierarchy of certi~ying authorities, such as, for example, that shown in FIGURE 3.
Certifying authority 1402 determines information about users of the system, and, based on that W096l02993 ~ 5 ,6 ~
2t 94475 information, issues the certificates 1404 to thosQ
users. A certificate 1404 issued by certifying authority 1402 to a u6er 1438 contains user information 1410 including the user's public key 1412 and certifying authority's policy information 1414 regarding that user. In order for the information contained in the certi~icates 1404 to be verified by other users of the system, these other users must have access to the public Xey 1408 of the certifying authority 1402.
Effectively, certificates 1404 issued by certifying authorities are used by users of the system to identify themselves to other users of the system so as to facilitate transactions within the sy6tem. A
r~c;rient (a system user~ receiving a tr~n~a~ti~n 1440 from another system user 1438, where the ~ r -Lion is ~ nied by a certificate 1404 issued by certifying authority 1402 can rely on Lnformation in the certificate 1404, essentially becaus~ the certifying authority 1402 which issued the certificate 1404 vouches for the information in the certificate and accepts liability for certain trAn~rt;~n~ which rely on information in the certificate. If the certificate 1404 in~ A~ policy information 1414 of the certifying authority, this liability is only accepted by the c~rtliying authority 1402 if the recipient hnd a valid copy of the certifying authority's public key 1406 and if the recipient followed the policy 1414 described in the certificate 1404.
Thus, for example, suppose that after verifying to its sat~f~rt~on the identity of user A (1438), certifying authority 1402 issued a certificat~ 1404 to user A (1438). The certificate inrlnt3~ the public key 1416 of user A (1438), a policy 1414 of certifying ~ W096/02993 1~ 6 21 9~475 .~
authority 1402 with respect to user A and i8 digitally signed by certifying authority 1402. Suppose, for example, that the policy 1414 in the certificate specified that user A can only enter into transactions on weekdays from nine in the morning to five in the afternoon. A recipient 1424 of a transaction 1440 by user A 1438 and the certificate 1404, can perform the transaction with the knowledge that certifying authority 1402 would accept liability for the transaction if (a) the recipient verified the policy 1414 for the transaction, that is, if the recipient verifies that the transaction is taking place within the allowed time bounds, and (b~ the recipient had a valid copy of the public key 1408 of the certifying authority 1402. In other words, if the recipient does not check the transaction with respect to the policy then the LLan~L_Lion is invalid. Further, even if a recipient checks the tr~n~ n from user A and the LL_ ~~ Lion i5 allowed by the policy of the certifying authority with respect to user A (as specified in the certiflcate), the certifying authority 1402 is not liable for the tr~r~~ if the recipient was not in p~sr- inn of a valid copy of the certifying authority' 8 public key 1408.
The ~L~Lo~L~I.ic system also in~ various ~ ~ 1418 who also issue certificates to users.
The~e , -~ -issued certificates are also known as authorization certificates 1420. These certificates 1420 function, inter alia, to specify the rule~ or policies 1422 of the sponsor issuing them. These authorization certificates 1420 can be separate and different from the identity certificates 1404 issued by the certifying authorities (even though the identity certificates may contain policy reguirements of the W096/02993 .~l/- ,v,6 2 ~ 94475 certifying authorities). A user may have only one identity certificate 1404 issued by a certifying authority 1402. However, a user may have numerous authorization certificates 1420 issued by one or more a~ul~S~. D 1418.
When a recipient receives a transaction from another user of the system, the recipient should also verify all sponsor policies included in authorization certificates inrlll~ed with the transaction from that user. Thus, in this cryptographic system, users are reguired to enforce the rules (policies) of the certifying authorities and D~l.SUrS in the system.
As noted above, in order for the information contained in the various certificates to be verii'ied by users of the system, these users must have accesD to the public key 1408 of the certifying authority 1402 or sponsor 1418 that issued the various certificates. In order to enforce the rules of each certifying authority and sponsor in the system it is ne~-C ~y to limit the access to the public key 1408 of some of the certifying authorities. In particular, it is "~ y to limit acces~ to the public key of the topmost (root~
certifying authority 1402.
Accordingly, the root certifying authority 1402 ke ps its public key a trade secret, and in order to obtain the public key of the root certifying authority 1402, a user (potential recipient) 1424 wishing to undertake trAnaa~ti~n in the system must obtain the certifying authority rules 1426 is~ued by the root certifying authority. r -;pi~nt 1424 must hash thoae rules to form hashed rules 1428 which it must then digitally sign to produce a signed copy of the hashnd rules 1430. This digitally signed copy of the hashed rules must be IeLuL..sd to the root certifying authority ~ W096/02993 r~ 6 ~ 21 94475 1402. /3y these actions, the recipient 1424 agrees to abide by the rule5 of the certifying authority 1402 which it has just signed. The root certifying authority 1402 may also require that the recipient 1424 ~15O obtain, sign and return rules from other certifying authorities in the system as well as from ~..svr~ in the system. For example, recipient 1424 may al60 be required to obtain sponsor rules 1432 from sponsor 1418 and return a signed copy of these rules 1434 to the sponsor 1418.
Once the root certifying authority 1402 is satisfied that it ha5 received a valid copy of the system rules signed by the recipient 1424, the root certifying authority issues its public key 1408 to the 15 recipient 1424.
The root certifying authority public key 1424 may be issued to a recipient in a number of ways. In preferred ~ the recipient is provided with a secure device 1436, for example, a ~LLV~Ld. In one 20 preferred ~ the certifying authority public key 1408 is immediately available in the secure device, so that once the rDciri~nt 1424 obtains the device, he has the root certifying authority public key 1408. In another preferred . ';- , the certifying authority 25 publlc key 1408 i6 in the device 1436 in A ~i r'hle~
form, and the root certifying authority 1402 enables the key 1408 in the device upon receipt and verification of the signed rules 1430.
In some cases it i5 useful for the root certifying 30 authority public key 1406 in device 1436 to expire or to become in~cre~6ible after a certain time period. In these cases, in order for the root certifying authority to reactivate the key 1406, the recipient 1424 must again obtain, sign and return the rules of the root WO96/02993 rc~,~ 16 21 q4475 certifying authority 1402. These rules may be different from the rules previously signed.
Different certifying authorities, including the root, may also reguire that other conditions be met by potential recipients before they are given access to the public keys of those certifying authorities.
However, in~ A~d in the sy5tem rules is an &yL~ t by anyone 5igning the rule5 to keep them a secret.
Cost ~_u~_~Y
The rules can also include a~ to pay for use of the system. Thus, when a user obtains a valid key ~by agreeing to follow the rules of the root CA of the system), the5e rule5 can enforce a~L~ L to comply with the payment scheme of the system.
A cryptographic system can link the operation of the system with associated payment by users of the system for the tran5action5 they perform and accept.
The payment for a tr~n~actinn is made, for example, in the form of a pre-paid account, an a~-. to be billed, or a cnnt~ aneuus payment of digital cash to various parties in the system. For example, a particular operations such as digitally signing a LL -t i nn may cost a user a certain amount to be paid 2S to th~ certifying authority which issued the certlficate which guarantees that user's identity.
Some digital payment fllnnti nn~ can be built into the devices cnntAining the public keys. Since user'~
private keys are typically kept in secure devices (for example, smartcards), the secure devices can be used to r-in~ Ain a current digital balance for each user. This digital balance can be a debit or a credit amount.
Every time a user digitally signs a trAn~nct i on using his secure device, a certain amount is deducted from W096/02993 r~ 6 ~ 21 94475 that user's digital balance. If the secure device is a debit device, then when the user's digital balance reaches zero the device would become disabled and no longer able to sign for the user. The user would then have to obtain further digital credit from a certifying authority or some other sponsor in the sDystem. If, on the other hand, the secUre device is a credit device, then the user might be required to perform a payment transaction to the certifying authority at certain regular intervals, for example, daily, weekly or monthly. Since the digital credit amount is available from the secure device, the certifying authority could be Assured that the transaction is for the correct amount. A user who does not perform the required payment LL~na~Lion would be listed in a CRL as being sn~p~n~d or revoked and would no longer be able to perform transactions in the system.
Digital payment on a per transaction basis is also achieved using a confirm-to transaction. The user's authorization certificate would list the confirm-to address of the payee. once the tr~ncacti~ occurs the payee is notified and can deduct payment from the uDer's account.
Price Inforr~tion Since a user has agreed to pay fees and royalties a~sociated with the system, the user can alDo be provided with flexible pricing and billing information.
U~ c_ific pricing policies can be i l~ Lud using certificates. Certificates issued by D~vn~~.D
and certifying authorities can include payment and pricing policies for particular users. For example, a certificate might include a list of prices for certain LL ~:Lions (in~ ing, for example, signing using a w096/02993 2 1 9 4 4 7 5 P~ o o particular private key, verifying using a particular public key, or ~hD~ing the revocation status of a particular certificate), a discount rate for particular users, a discount rate for transactions with certain recipients, and rates for bulk transactions. Some of the billing is performed by the secure devices of the users whereas other hjllAhle events can arise from actions performed by recipients of tr~n~ot;on~.
In order to implement certaLn pricing policies, a certificate may contain various digital fields. For some policies, these fields include a revocation service address, a revocation service fee, and a transaction confirmation fee. The revocation service address is similar to the confirm-to address, but is used only to confirm the validity of the certificates.
That is, the revocation service screens for attempted trAn~n~ion~ based on certificates that have been withdrawn. The Revocation service Fee is the fee charged for this service.
Examples of these fields are:
(a) Private Key_Signing_Fee s $0.50 (b) Public_Xey Verify_Fee = $0.50 (c) Revocation_Service_Address =
1 e ~ _I.e_~@btec.com ~d) Revocation_Service_Fee ~ 50.50 (e) Confirm_Service_Fee = $0.50 All fees can be stated as flat fees or a~ a fee per some amount of base L.~r.~:a~l ion amount. For example, a fee can be specified as "$0.50~ or as "$0.50 per $1,000 of base LL~rnacLion amount".
Given the above examples, a recipient receiving a LL ~~ Lion could send the associated certLficates to the revocation service address and would be billed at the rate specified by the service fee.
~ W096/02993 2 1 9 4 4 7 5 P~ 6 In order to charge for a confirm-to tran6action, a certificate can also contain a transaction confirmation fee, for example, Transaction_Confirmation Fee =
tS0-50 per $1000 transaction amount) In this case each confirmed transaction would cost the recipient the appropriate fee.
In some instances a recipient may receive a transaction that is too expensive and which it would therefore reject. Accordingly, a digital field indicating p~ inn to bill the sender, the field being signed by the sender, is also inr,lllA~A. This field could include the sender's account number and other information inrl~lAing a maximum acceptable billing rate etc. This "bill-5ender" field would appear as an attribute in the sender's signature block.
Intellectn~l PLO~LLY L1rrnR;n~
The rules may also include agL. to pay for all int~ll~ct~l pL~ -y u5ed by a user. For example, a ~ystem may offer a user patented tr~nQ~rtinnQ, _ervices or algorithms, copyrighted materials, and the like. In order to a user to obtain a public key that would enable access to this intellectual p~y_LLy~ the user must sign the user rules agreeing to pay for use of the ~L ~L LY .
For example, in one ~ , the secure device contains many un-activated services (for which payment is reguired). Each use of one of these services requires payment in the foro, for example, of digital cash, either by an internal transaction in the device W096/02993 P~ v,6 or by some transaction with another user of the system.
In order to obtain the device, the user must digitally sign a set of rules (using a private key in the device and unique to the device and therefore the user). By S signing these rules, the user agrees to make the paymentc as reguired.
Sinnr~r T ~ ~ Policies A~ Rlll es A user of a cryptographic system may have an identification certificate tissued by a CA) and one or more authorization certificates (issued by CAs or ~y~ L~ of that user). Each of these certificates has pol1ci~ of the issuing party, and a recipient of a transaction including any of these certificates iB
~Ypect~ to verify that the transaction obeys all the rules specified in the certificates. It may be the case, however, that for a particular trAn~AVcti nn~ a user wishes to have more restrictive rules applied than are allowed by the certificates. For example, a user may be allowed to approve all tr~n~acti onc of $1 million or le~s, but may wish to approve a certain ~L -~ion only if its value is less than $1,000.
Alternatively, a user may be allowed to approve certain LL ~ ;~n~ alone, but for a ~pec;fic trAn-v i~n the u~~ may wish to require one or more co-signers. In support oS this feature, the ~lyyLc~L~phic system of the present invention provides users with the ability to add user rules, attributes and restrictions to trAn-VA,c~irnc.
The user rules cannot permit t~ - L;~nQ to be ~y,~._d that would not otherwise be allowed.
Therefore a recipient must alway~ apply the most restrictive rules to every transaction. For example, if a user's certificate allows transactions up to ~ w096/02993 2 1 9 4 4 7 5 r~ C /6 51,000 and the user rules specified transaction values of up to $1 million, clearly the Sl,oOo limit should apply. This can be achieved, for example, by the recipient applying all of the certificate rules first and then, if the transaction i5 still valid, applying all of the user rules. Applying the user rules first and then the certificate rules will also produce a correct result. ~owever, since boolean combinations of rules and restrictions are supported, interleaving the user and certificate rules may produce an inc~LL~L
result if not carefully performed.
FIGURE 15 shows verification of a user trAn~ n which includes user-supplied rules. A user LL~I-f ~ cLion 1502 ;n~ln~o~ transaction text 1506 describing the transaction to be performed by a recipient. The user appends to the transaction text 1506 a set of user-supplied rules 1504 which the user wants verified by any recipient of the transaction 150Z. Then the user digitally signs the combination of the LL .cti~n text 1506 and the rules 1504 to form the transaction 1502, forming a user signature 1510 which is -~p n~l~d to the transaction.
The transaction 1506 is then sent, along with any required sponsor and/or CA certificates, for example, with CA certificate 1508 and sponsor certificate 1509, to a recipient who must then verify the transaction.
To do this, the recipient verifies 1512 the user'a signature 1510 using the user's public key 1514 from the CA certificate 1508. If the user's signature is accepted, verification c~ntir 35, otherwise the transaction is rejected 1514. If verification continues, the recipient verifies 1516 the CA's signature 1518 using the CA's public key 1520. If the CA's ~ignature is accepted, verification continues 1522 W096/02993 ~ v16 with the rh~r~ing of the rules in all certificates and those supplied by the user, inrln~ing sponsor certificate 1509. Otherwise, the transaction is rejected 1514. If verification continues, the recipient verifies 1522 the trAncactinn against the rules in the CA certificate 1508, sponsor certificate 1509 (and in any other certificates associated with this transaction). If any of these rules are not satisfied the trAnaartion is rejected 1514, otherwise verification of the transaction continues with the verification of the transaction with respect to the user-supplied rules 1504. Only if the transaction satisfies the user provided rules 1504 is it accepted 1526, otherwise it is rejected 1514.
The us~ ~lied rules 1504 can be any combinations of the rules known to the system, inr~ ing, but not limited to co-signature reguirements, temporal limits, trAnaactinn amount limits, confirm-to requirements and the like.
In some envi~ users may create sets of rules or default rules for themselves for use with particular types of users or tr~nalc~inne. These sets of rules or defaults may be automatically attached to all trA- ~tnna from those types of users or L- ;~na. For example, a user who is b_n]c manager may ' ine (from experience) that for all LL ~1 nna by new tellers that she countersigns, she is going to apply more restrictive rules than the bank requires. She would then store these rules in her system as a default for those kinds of trAna~rti that she signs or cvu..~r~igns.
One skilled in the art will appreciate that the present invention is typically practiced using electronic devices such as digital electronic computers ~ W096/02993 2194475 r~ vl6 and the like, and that the certificates, transactions, ~ r~ s, signatures and the like are digital electronic signals generated by the electronic devices ~ and transmitted between the electronic devices.
Thus, a method for securely using digital signatures in a commercial cryptographic system is provided. One skilled in the art will appreciate that the present invention can be practiced by other than the deficribed - '~ ';~~ Ls, which are presented for y~,yoses of illustration and not limitation, and the present invention is limited only by the claims that follow.
Attributes in a user's or entity's attribute certificate may represent the information verified by the CA when creating ~he certificate for the entity.
Policy attribute5 in a user's certificate might, among others, include:
(1) Binding Information: the criteria used to bind the public key to the identity of the entity being certified. This ;n~ '3e (a) the method of delivery, auch as being presented in person, by authorized agent, by mail or by another method; (b) the method of ;S~nt1fication, such as by La - -hle - ~u ial ~ a~ verified by trusted third party, dual 25 con~rol, finqerprint check, full ba~h~Luud inv~stigation or another method; (c) the identification presented to the CA; and (d) the subject's entity type, that is, individual, cu~uL~tion, device or other.
(2) Trusted Third Parties: the names of any trusted third parties or agenta involved in the binding process.
(3) Roles: it may be useful for authorization ~UL~05~S to indicate which roles (both internal and W096/02993 ~ v,6 ~
external to the organization) a user may exercise.
This i_ in contrast to a role certificate, which would be issued to the role and contain the names of all oc~O ~ya--t~. .
(4) Relative Identity: a CA may wish to certi~y only a portion of the DN of an individual. In particular, the CA might ~ic~l~im liability for CULL~ Lness of an individual'5 personal name, since, under legal Agency principles, the individual's signature is binding on their organizational sponsor in any event. rnnci~r the name:
C~US; O-Bankers Trust; OU=Global Electronic C ~; CN~Frank Sudia; TI~VP
The CA might certify only the validity of the organization, organizational unit and title portions of the individual's dis~inT~ichod name, all of which are easy to verlfy, while the personal name would only be "ro~cnnAhly believed accurate." In view of the relative ease of obtaining false identity papers, this 20 avoid_ the need for prohibitively expensive ba~y~ud investigations. Such an identification can be relied on in an ordinary co_mercial setting but not in a proc~e~inq concerning a will or inheritance, for exampl-.
l5) Absolute Identity: we define relative identity as the user's identity "relative" to his organizational sponsor. Put another way, we certify all ~1- of the user's n~--ci- card identity, n except his personal name. As a special case, some CAs might undertake to certify the absolute identity of a~l~cto~ users, say the children of wealthy clients, diplomats or national security operatives, almost certainly bolstered with biometric techniques. This would be rare and is presented here only for ~ W096l02993 P~ 6 completeness in order to round out the "relative identity" concept.
AuthQrization TnfQrr~tion in Certificates Attributes may convey restrictions that control the conditions under which a signature i8 valid.
~ithout such restrictions, the ris~c of forgery would be considered excessive, since an electronic signature can be affixed to almost any digital ~ L by anyone poceeSsing the user's smart card and personal identification number (PIN~. In the electronic environment, the normal contextual controls of do.
creation and physical delivery are either weak or nonexistent.
Even authentic users are hardly ~,a~; _ Lhy to undertake free-form offline commitments, and organizations will thus welcome the ~p~hi1ity to positively restrict the scope of express signature authorization. Such authorization attributes might, in addition to standard X.500 attributes, include Transaction Limits, Cosignature Requirements, Dc Types, fiubject matter restrictions, Authorized Signatories, Geographical and Temporal Controls, Age of Signature, Pre-a~ l Counterparties, Delegation Controls, and Confirm-To Requirement. These attributes can be encoded in one or more authorization certiricates signed by the signer's organizational sponsor or by an external CA acting on behalf of the organization. An example of an authorization certificate and an associated Lr~ns~cLion is shown in EIGURE 5.
When a recipient user (verifier) receives a t, .ction 51 from a sending user, the recipient first uses the sender's basic key certificate 55 to verify W096/02993 rc~ 6 A~
21 94~75 '~
the sender's signature 52 on the transaction Sl. As will be described in greater detail below, the recipient also uses the sender's authorization certificate 56, signed by the sender's fiponsor 59, to verify the cosignatures 53 and ti~- t _ notarization 54 A~ n~r~ to the LL~ cLion 51 and to verify that the attribute values 57 of the trAncaotinn 51 fall within the authorized attribute values 58 as specified in the authorization certificate 56.
The user may be subject to transaction limits that control the value of transactions or other ~c- --Ls that the user may initiate. The user's signature will be valid only on transactions originated either up to a certain monetary limit or between two monetary value boundaries. Accordingly, as shown in FIGURF 6, the aending user sends a trAncac~ion 601 signed 603 by the sender (actually by the user's smart card 600 containing his private key) and appends thereto an authorization certificate 604. The verifier uses the authorization certificate 604 to verify 607 the user's signature 603 and to verify that the ~ t 1~n - ~ value 602 falls within the trAn~Actinn limit attribute value 605 in the authorization certificate 604. The verifier also verifiefi 609 the sponsor signature 606 on the authorization certificate 604 using the ~ponsor's public key 610. If any of tho-9e Cj~ 8 and attribute values does not verify, the trAn-a~ti~n i~ rejected 611. If verification is complete, the transaction is accepted 612.
With regnrd to cosignature requirements, additional si~..atuL~s may be required in order for a given signAture to be cnnci~ ed valid. Quorum and weighting -- sni - can be used to vvl.~LLuvL fairly elaborate checkfi and bAlAnc~ for explicitly governing ~ W096/02993 P~ ,6 ~, 21 9~475 the level of trust in each user. The particular sequence or order of required signatures may also be specified. Referring to FIGURE 7, sending user A sends a trAn~acti~n 702 signed 703 by his own smartcard 700 and, if user B's cosignature is required on the transaction 702, signed 704 by the smartcard of user B
701. Sending user A also appends his own authorization cert.ificate 705 to the transaction 702. The verifier uses the authorization certificate 705 to verify 711 user A's signature 703, and uses the sponsor's public key 713 to verify 712 the sponsor's signature 707 on the authorization certificate 705; if either signature does not verify, the transaction is rejected 720. If a cosignature value 706 is required 714 by the authorization certificate 705, the recipient enforces the requirement by verifying 715 cnCignDr user B's signature 704 on the ~-~n~a~Li~n 702, and then checks cosignDr user B's public lcey certificate 708 by verifying 716 the signature 709 of the certificate issuer, using the issuer's public key 717. If the signature of either user ~ or his certificate's issuer does not verify, the trAn~-sLion is rejected 722.
The uae of cosignatures allows an organization to effectively define checks and hAlAnr~, and to explicitly specify the level of trust in a user. The U8- of cosi~..atuL~s also greatly reduces the risks that result from inadvertent , ice of a private key due to theft, misuse or mispla ~ of a ~aLLc~Ld or PIN.
In particular, it is believed that the ability to require cosignatures, value limits and related controls will enable organizations to carefully manage and fine-tune all signature authorizations, thereby giving them all the tools needed to manage and limit their risks.
Use of cosignatures further allows distribution of the WO96102993 I._11L~_.___/6 21 94475 ~
authorization function over multiple locations and hardware platforms, with the resultant minim; z-tion Or risks that might result from access control failures on one of those platforms. See U.S. Patents Nos.
4,868,877, 5,005,200 and 5,214,702.
Authorization signatures, which must meet the restrictions 5pecified in the signer's certificate, can also be distin~iQh~ from other cosignatures by ;nr~ nq the signature purpose as a signature attribute and by requiring that an indication of the signature purpose be included in the data being signed.
This signatuL~ ~uL~ose attribute might require the values of: (a) an authorization signature appropriate to the dc ~, tb) an authorization cosignature appropriate to the dc L, where the cosigner' 5 certificate has sufficient authority to authorize the ' t, and (c) a witness cnaiqnAt~re, where the rosiqn~r's certificate does not by itself have sufficient authority to authorize the ~~ t.
Signature purpose Dnro~in7a ~;ac~c~ed in draft ANSI
~L~r.dald X12.58 Version 2 (~pr~n~iY) issued by the Data Interchange SLanla~ds Association (DISA), which is well-known in the art and is hereby inc~L~L~ted by ref-rRnce .
The user can also be restricted to signing only particular dc L types, such as ordinary C~LL~ , '~ e, purchase orders, specified FDI
LL ~ ;On types, b~Q;n aQ ~IlLL~L~, speciried finAnriAl i~ Ls, etc., as defined by industry-wide policies. It ~ay also be desirable for efficiency to exclude certain large classes of LL ~~ Lions and d- . Referring to FIGURE 8, the recipient enforces the dc --~-type restriction in the ~ender~8 trAn~Arl ;~n 801 by first verifying 807 the ~ W096/02993 21 94475 . ~ l vl6 sender's signature 803 on the transaction and by then verifying 808 the ~oc - t type attribute value 802 within the transaction 801 to enforce the do t type restriction 805 within the sender's authorization certificate 804. The recipient then verifies the authorization certificate 804 by using the sponsor's public key 811 to verify 809 the sponsor's signature 806. If either a signature or the attribute restriction doe5 not verify, the transaction i8 rejected 810.
It is also de5irable to add po5itive or negative restrictions pertaining to transaction subject matter or context clas6. For example, to restrict an agent to signing purchase orders for some class of goods (such as, for example, office supplies), or to deny authority as, for example, in the case of denying an agent the ability to purchase pvL..v~Laphic materials. Subject matter restrictions are ~nfuL~ed by the transaction rec;ri~nt in the same manner as dr ~ type restrictions, and may be implicit in many d t typos, yet requiring separate specification for the more generic dc t types.
An organization can indicate that there are ~~ 'f~c authorized signatories, that i8, that only , 'fic individuals can Hsign for" the organization, si~il~r to a ~tal-da d "cv~uLate 1 -clut;n~" to this effnct. This might 1~ the lc L-type concept, as an additional control on signing of nC~,~VLate" 1- t-type~. This restriction can be ~ d by specifying that a cosignature i8 recuired in which the cosigner~s title (in its disti~ h~d name) must be egual to one on a specified list contained in a authorization certificate. This is W096~v2993 I~ l/U~ 6 21 94475 v in lieu of naming a list of one or more required cosigners.
Geographical and temporal controls include locations and time periods from which transactions are considered valid. Use of a local trusted "timestamp notary" is assumed. Such a notary would append a trusted timestamp to the originator's signature on a dc L and would then sign the result. Thus, time-of-day and day-of-week restrictions would normally roin~iSo with the work-week of the user's locale.
Also, location information would be associated with the notary 80 as to restrict access to a specific network segment, typically the user's Acciqn~d work area. The "granularity" of location controls would depend on the network architecture. The signer or the signer's computer system must attach a certiried ~ from a ~pecified local server to the transaction, or else the verifier cannot accept the transaction and the signer's sponsor will not be bound by it. As shown in FIGURE 9, the sending user attaches to the LL~r.aa~Llon 901 an authorization certificate 902, as usual, an authorized ti- L 903 and a time server certificate 904. The recipient verifies 92~ the sender's signature 905 on the transaction 901 and verifies 922 the spon or's signature 908 on the authorization certificate 902. The recipient then (1) verifies 923 that the t1 t trAncac~ion text hash 909 matches the result of the text of the LL-nC~ n 901 hashed with a known hash function, ~2) verifies 924 that the time and date 910 on the transaction ti-- i 903 fall within the authorized time and date 906 attribute valu-s as specified in the authorization certificate 902, (3) verifies 925 the time server signature 911 on the li ; 903, and (4) verifies 926 the sponsor's ~ W096/02993 ~ /6 sigllature 912 on the time server certificate. If all these conditions are satisfied, the transaction is accepted 931; if not, the transaction is rejected 930.
Furthermore, a document may not be valid unless the signature is verified within some specified time period. For high-value transactions this age-of-signature attribute period would be quite short, while for more normal transactions, esreciAlly those sent via store-and-forward systems such as X.400, a longer interval (such as two days) would be appropriate.
FIGURE 10 shows enf OL ~ L by a recipient of the age-of-signature attribute value. The time of verification would be provided using a receipt 103 signed by a trusted timestamp service 104 containing, at a minimum, the recipient's name and the signature from the original tr~nC~I ion. The verifier must submit a timestamped copy of the original signature that is dated promptly after the time and date Or the original transaction, or else the sponsor will reject it. As shown in FIGURE 10, the recipient (verifier) verifies 121 the sender's signature 107 on the trAn~A~ti~n 101 and verifics the sponsor~s signature 115 on the authorization certificate 102. The recipient then v~if~e~ 122 that the difference between the date 105 and time 106 on the transaction 101 and the date 111 and time 112 on the t i-- ~ 103 is within the age-of-signature attribute restriction 108 in the authorization certificate 102. The rec;~iPnt also verifies 123 that the hash 110 of the tr~n~A~t;~n 101 within the trusted ~;-~ L 103 matches the text of the trAn~acti~n 101. If all these conditions are satisfied, the LL~I13a_LiOn is accepted 130; if not, the L- -t;~n is rejected 131.
W096/02993 r~ 6 ~
21 94~75 v A similar concept is that of a minimum age of a signature. In this case the signature would not be valid until some minimum time after it had been signed.
This allows for a smartcard to be reported lost and for a revocation notice to be broadcast to the recipient.
The control attribute can specify a maximum and/or minimum age for the signature . . .
A "pre-~yyL~._d counterparties" attribute value restricts an entity to dealing only with some specified set Or known L.u~ Llry partners. This is a common reguirement in dial-up home banking systems, which typically reguire that all authorized payees be specified in advance. Another way of stating this is that "free-form transfers" are forbidden. SY~I8GL~
realize that, in case of an error, they stand a better chance of ~ c~-rully reversing the error when dealing with a large, solvent and creditworthy party than when dealing with a small, unknown and unauthorized one.
Separate certificates can be issued for each ~u~L~LyaLLy in order to prevent a competitor from nht~;ning the user's customer list (other than himself) in a single certi~icate. The a~L~._d ~uu~L~Lyd~Ly can be coded either as a common name, a dist;n~i~h~A name, a certificate number, or the hash value of either the Ai~tin~li~h~d name or the counterparty's public key.
In order to claim the benefit of the L.~n~--Linn, the v-rifier must submit a certificate that matches the encoded counterparty value.
FIGURE 11 shows verification by the user's sponsor of the user's transaction after receipt by a rqcipi~t.
The recipient (c~u--L~ry~LLy) verifies 1110 the user'~
signature 1103 on the L,u--_ cLion 1101 and verifies 1111 the sponsor's signature 1105 on the user authorization certificate 1102. If either of these ~ W096/02993 2 ~ 9 4 ~ 7 5 , signatures does not verify, the transaction 1101 is rejected 1112. If the signatures verify and the transaction is accepted 1113 by the recipient, the recipient endorses the transaction 1101 by issuing his S verified transaction 1114 counter-signing 1116 the text 1106 of the original user transaction 1101 and the sending user's signature 1103, with the recipient's certificate 1115 attached. In enforcing the pre-~ru~_d counterparty restriction in the sending user's authorization certi~icate 1102, the sending user's sponsor veriries 1121 the sending user's signature 1103, as inrlllA~d in the recipient's veri~ied LLal.a~Liûn 1114, and verifies 1122 the recipient's signature 1116 thereon. If these signatures are verified, the sponsor next verifies 1123 the counterparty public key hash value by hashing the recipient's public key 1117 and ~h~inq the result against one of the authorized counterparty public key hash values 1104 as specified in the user's authorization certificate 1102 (the reciri~nt's public key 1117 that the sponsor hashes for verification is itself verified 1124 when the sponsor verifies the recipient's certificate). If these conditions are met, the Lr~ i~n is accepted 1125.
me attribute values o~ delegation controls can limit the types and value ranges o~ authorizations that a CA may specify when issuing an attribute certificate.
They can also serve to limit the scope and depth to which a user may delegate his signing authority to others. For example, a root CA might limit an organizational CA to issuing authorizations only to allow its end users to sign dc t S whose ds L
types fall into a range of ~c ts related to state tax administration. Or a CA might grant some authority w096/02993 rc~ ,,6 to a user with the provision that it can be delegated only to another person with the rank of assistant treasurer or higher, for a time not to exceed thirty days, and without the right to further sllhdPlegAte.
Another authorization attribute, called a "confirm-to requirement~ value, prevents the signature from being valid unless the verifier sends a copy of the verified trAnRAr~ion to a third party, typically the user's organizational sponsor or work supervisor, at a specified mail or network address, and either (a) receives an accept/reject message, or (b) a specified time elapses. This re~uirement is similar to a cosignature but occurs after the trAnR~ctinn is sent rather than before. Such after-the-fact confirmation could be acceptable in lower risk situations in which few transactions would be rejected and in which nhtAining the cosignature of the third party in advance may be unduly bUL;~_ . Or it might be preferred in high-value cAAses where positive on-line nhPn~ing is ' -'. In that case, the flow pattern reverts back to an on-line rather than an off-line system. As shown in FIGURE 12, the recipient first, as usual, verifies 1211 the sender's signature 1203 on the ~ I in~
1201 and verifies 1212 the sponsor's signature 1205 on the u~er authorization certificate 1202; if either of th ~ ,e8 does not verify the trA -1;on 1201 is rejected 1213. If ths si~..aLuL~s are verified, the reAiriPnt sends 1214 a confirmation message consisting of the original L. -Lion 1201 (the L. inn text 1202 and the sending user's signature 1203) to the user's sponsor 1215, as specified 1204 in the sender's authorization certificate 1202. The recipient should receive from the sponsor 1215 the same message in return as confirmation 1216, but signed 1205 by the ~ W09~02993 2 I q 4 4 7 5 r~ . l6 sponsor. The recipient then verifies 1217 the sponsor's signature 1220 and the confirmation message 1216, and accepts 1219 the transaction 1201.
In order to create complex combinations of restrictions, a filter expression, which is a Boolean or logical expression involving one or more attributes, can allow ~onDLLuvLion of restrictions involving multiple attributes. The attribute assertions are linked with the usual Boolean ~n~nPctives "and", "or"
and "not". For example, the sponsor might restrict a user to submitting transaction with a type equal to "purchase order" ~n~ a value less than $100,000.
Assertionfi may involve either a single attribute value (equality, less than, greater than, etc.), multiple values of an attribute (subset, DUy_LD~t, etc.), or the p~eF or absence of an attribute in the dc Of course it will be appreciated that any or any of the described restrictions, as well as others, can be in effect at the same time for the same dc ~ ~ or trAnsaction. These reDtrictions have been di~ e~l and illustrated -!~ ately for clarity.
The use of authorization attributes allows a f -ipi~nt to verify authorization as well as iration. In such a scenario, the sponsor c~rtificatQs, an~l.o-ad by the D~VIIDV ing organization~s certiiicate, would be interpreted as authorizing "on sight~ the Ll~n ~ n to which they are applied, ~- ;nq all specified restrictions are met.
A set of basic pol1ciP~ must be defined for use 30 Ll~v~l.ouL the fln~n~i~l services industry and other industries in order to provide a well-defined, predictable level of service for the verification process. These policies would be agreed to on a multilateral ba5is by every participating firm and WO 96102993 1~ , /b could stipulate that certain of the restrictions and authorizations ~;~r~c~ed in this section would always be deemed to be in effect unless expressly provided otherwise. One of the more important elements of these industry a~L. c would be the definition and coding of dc t types. This must be done on a per-industry basis, since the rules will obviously be much different, f or instance, for customs inspectors, aircraft inspector5, auditor5, tax officials, etc.
Certain authorization attributes may pertain to the specific content of the ~n . L itself. This can pose problems for automated machine verification, because the verifier's computer may not always be able to determine the value5 of such attributes for a given d- L or transaction. Examples include -y transaction limits, dn. types, and security or confiA~ntiA11ty labels. Therefore, it is desirable to provide a ~LandaLd data block, preferably at the start of the l: L or the LL~n-~ l1nn, clearly ~roAin7 the attribute, for example the stated monetary LL_ -Lion value, ~._ type or security sensitivity label. This ~c tag will be ~P~ A
by the signer's computer for the convenience of the verifier and as an aid to the verification process.
How v r, in the event of a cnnflict between the tag and th- actual content of the d~ L, the ] A , -- ~ of the ~c would be controlling. In the case of ~LL~LuLed transactions, such as EDI tran---L;o~, in which the ~ L types and monetary values are already completely machine readable, dc~ L tags would not be needed.
As a pOc~; hl e convenience in proce~inq simple authorizations, ~peciAlly where a given user sign~
many similar transactions, it may often be helpful to WO 96/02993 ~ 1 q ~ 4 7 5 ~ 16 copy the user's public key out of his baOic - authentication certificate and include it as another attribute in an authorization certificate. This permits the authorization certificate to serve both purposes (authentication and authorization) and allows the sender to omit the basic authentication certificate from each transaction. In addition, where a device is being relied upon to fulfill a given condition, it may likewise be advantageous to copy the user's device public key into the authentication or authorization certificate as well, further eliminating the need to send the device certificate with each transaction.
Th 1 rd P~rtY Tnt~ract i onll:
Additional, useful features of digital si~lla~ures~
beyond those that can be provided using attribute certificates, involve interaction between a signer and third parties of various types.
One such use for digital si~llaLuL~s is electronic notarization. As ~;CC~9~1 above, there will be a need to cosign dc ~ using a third party that is trusted to provide an accurate 1i i and/or location information. Simply relying upon signature originators to provide this information in an accurate fashion leavQs si~laLuL_3 wlnerable to fraud based on, for example, pre- or post-dating of A:_ ta. An electronic ~nvL~Ly~ would be trusted by virtue of its CA's pol i~iDC to provide this information correctly.
The multiple signature ~r~hilities already assumed can 3 0 be oYr~nAAd to provide a EL _L k for this ~ervice.
For notarization ~UL~ es, ti-- ; - and location information will be in~l--ADd as signature attributes.
Individual signature oLLuv-u ~O may either be dDt~hDA
WO 96/02993 . ~,111 5 ,~ /6 and stored or, if desired, ~u~v~yed separately from the Multiple siy..aLuLds or joint signatures on the d~ ~ itself can also be distinguished from "countersiy--aLuLas," which are signatures on the slgnature ~LLu~LuLe in which they are found and not on the d~ L itself. A countersignature thus provides proof of the order in which siy-~aLuLes were applied.
Because a countersignature is itself a signature ~LLuuLuL~, it may itself contain countersiy..atuLes;
this allows ~u..~LLuuLion of arbitrarily long chains of countersignatures. Electronic notarization would then consist of countersigning the originator's signature and including a ti-- ; within the information being signed. For very high-risk applications it may also be desirable to reguire multiple siy~laLuLas on each certificate by one or more CAs, with the siu~a~uL~
being peLrl -I in ~nA~r~n~nt cryptographic facilities and with different private keys.
Various levels of service can be defined for electronic notaries based on the level of data verification performed prior to signing (ranging from mere existence of the ~c L, in which case notarization may be o letely automatic, to human verification of ~ L content) and based on data retention and audit oAr~hilities.
Another use for digital siyll~LuLes is for delegation or "power of attorney" certificates.
Because users are often tempted to entrust their devices or smartcards to others, for example, secretaries or co ~ Jl k~ when the users go on vacation, the freguent situation, in which one user obtains another user's smartcard and PIN, exposes the smartcard to possible misuse. The system therefore ~ W096/02993 2 1 9 4 4 7 ~ J76 facllitates the iAs~nre of power of attorney certificates that allow a delegate to associate the signature of his own smartcard with the authority of the delegating user. The power of attorney certificate would include at a minimum the name of the delegator, identification of the delegate's public key certificate and a short validity period, and would be signed by the delegator. Another poA~ihjlity is for the delegate to create a new key pair exclusively for use with the delegator's fiignature, with the new public key in~ d in the power of attorney certificate. This would eliminate any potential confusion between use of the delegate's private key on behalf of the delegator and on his own behalf.
The problem of handing over smart cards can be greatly reduced by providLng a workable alternative that preserves the principle of individual accountability. Wide i 1- Lion of this feature will make practical the di ~ of smartcard loans, a highly defiirable goal.
The use of delegation certificates d i r ~ ~ 1 above implies that the user is acting as a CA. In some cases, particularly those in which the transaction cro-~es organizationsl boundaries, there may be concern that the level of controls and auditing available with the individual user's ~L~Lu~ hic device (for exa~ple, a smart card) i~ not sufficient. In such cases, delegation certificates could be issued by a CA
upon request of the delegator as normal authorization certificates. Thifi also allows the delegation certificates to be revoked using the ~LAUdaLd CRL
'-ni~. Users' certificates might then indicate a list of poAsihle delegates, and the delegation W096/02993 1~~ ,o ~
21 ~4475 ~
certificate itself would contain an attribute naming the delegator.
In exercising the power of attorney, a user may indicate that he is signing for another user by ~n~ln~ing in the dc_ t or transaction a ~signing-for" signature attribute, that is, the name of the user being signed for. There must be ~ valid delegation certificate authorizing the signer to act for the user being signed for. Delegation is also useful in connection with a cryptographic module in a user's personal computer. Hashing and signing a ~ L should ideally be a unitary operation in order to prevent substitution of a false hash via software hacking. However, the typical s~artcard lacks the computing power to hash a very long A- t. One solution is to let the smartcard delegate this function to the cryptographic module using a very short-lived delegation certificate valid for only a few minutes.
This certificate is signed by the user's smart card and indicates that the user of the smart card has allowed the delegation. See, for example: Gasser, M., A.
Gol~t~in, C. Kaufman and B. Lampson, "The Digital Distributed System Security Architecture," Procee~ing~
of the 12th National C ~r Security Con~erence, 1989; Gasser, M. and E. M~n ~L, "An Architecture for PL ~ jr~l Delegation in a Distributed System,"
PLI ~~~'1ng~ of the 1990 IEEE Sy ~ on Security and Privacy.
Non-~lhlic ~lhli~ Kev A more basic problem, however, is ensuring that all po~cihle recipients will actually employ the certificate- and attribute-verification methods described above. Although these methods allow . ~
~ W096/02993 2 1 94475 ~ /6 sponsoring organizations to protect themselves, their users and those with whom they transact from liability based upon falsified transactions by allowing them to verify the identity and qualifications of those with whom they LL~naacL and the characteristics of the transactions prior to transacting, there is no guarantee that all recipients will actually 80 verify.
If a recipient acts upon a transaction without flrst verifying the attributes of both the sender and the transaction, and if the sender is later found to have sent a fraudulent or unauthorized transaction, the recipient could then claim liability from the sender or its sponsor by cl~;ming that the recipient was unaware of any require~ent for authorization verification of the user'5 basic signature. One way to ensure that ~UI~UL~ and other entities are protected from liability in such a situation is to require that the signer include the hash value of each of his identity and authority certificates AS attributes within hiB
signature. This can prevent a verifier from cl~i that he was unaware of such certificates and of the restrictions they impo~e. However, the signer might (intAntinnAlly or unintentionally) omit to do this.
Another more emphatic way to ensure verifier liAnre i~ to prevent the root key, the public key of the ulti~ate authority, that is, the highest-level certifying authority, which key would-be verifiers will need in order to verify any part of a LL ' ;nn, from being distributed to a user (or to the user's device or smartcard) unless the user contracts with the ~y~LO~L~yhic system and agrees to verify all parties and all trAn~tinn~ in ~O~uLl~nce with the preestAhli~h~d rules. In this way, the users are not te~hniCAlly forced to verify all parts of their W096/02993 P~llu~ v/6 ~
~1 94475 transactions. However, not verifying their trAnCA~tionQ in full would violate the C~ILL~_L between the users and the cryptographic system and would thereby absolve all other parties to the cryptographic system, for example a gponsor whose employee acted without authority, from liability. The non-verifying recipient would then bear all the ri5ks of such an unverified transaction himself. FULLII_L e, because the root key of the system authority is considered a trade secret, no one who has not signed the system rules ~ ~ L may possess a copy of it, and no one could claim to have verified any part of the transaction. This would make it far more difficult for the "outside" verifier to claim that he had incurred a 15 1058 by "L~s~ bly relylng" on the LL Lion, even if it was in fact valid. This art of keeping the system root key as a trade secret lends particular force and effectiveness to all the restriction and authorization methods described herein. It i8 belleved that the possibility of incurring the potentially-large liability for valuable LLa~n~A~- I ionC will p_L~uade users to employ the methods of attribute verification of thls invention.
Re~t~ictions on Certificate Distrih~tion U~ers and orgAnizations must be able to restrict the distribution of all types of certificates for a number of reasons. First, the certlficate3 o~ten contain confld~ti~l b~lQin~~Q information that the user or organization prefers not be shared with others and that is nevertheles5 being shared with the verifier through the certificnte, albeit only for the limited purpose of signature verification. Also, users' basic privacy rights may be violated if their public keys and ~ W096/02993 2 ~ ~4475 r ~ 6 network aldLe6ses are published. For example, they may - be flooded with unsolicited bu6iness proposals and advert~. Ls once their public keys are di~s~in~ted.
Furthermore, the organization may have a general policy S against giving out User identification numbers and public keys, because they may be used as starting points for various types of security attacks.
This functionality may be implemented as an attribute in user's certificate. If the "distribution-restriction" attribute is TRUE, the user/issuer grantspermission to use the certificate (which could be an authority or a public key certificate) only for signature verification; di5tribution or further publication is prohibited. Other ways to specify this restriction might include placing the attribute in the organization's certificate, puhlichinq the restriction as part of the industry-specific policy, or tin a true X.500 impl~ tion) using the X.SOO access control list -ni r~ to restrict access to the certificate.
Although some existing general legal basis for enforcing this restriction might be found under copyright law, that i8, if the certificate is declared as an ~lnr~hli~h~d work for which a license is granted only to the named verifier, a firmer legal basis will ~till be dosirable.
S--r~rd Re~i There are some additional reguirements on ~L L~a~d5 when used with commercial digital signature systems.
The first requirement is private key confinement and self-certification. That is, the user's private signature key must never be allowed to leave the smart card. only in this way can it be assured that theft of W096/02993 - r~ 6 ~1~
21 9~475 ~.
the key cannot be accomplished through purely electronic means without leaving any evidence. This principle of private key confinement is vital to the concept of non-repudiation.
Thus, as illustrated in FIGURE 13, when providing a public key 1303 to be certified, the card 1301 must attest that the card 1301 is t ~.uof and pOFC~cceF
a key confining design. Proof can be provided via a "device certificate" 1302 stating that the card originates from the specific manufacturer or product line. The public key 1308 of the device 1301 must then be certified by the manufacturer or by a CA designated by the manufacturer. One likely a~Lu~_l, to creating this device certificate would be to generate the device key pair during fabrication of the smartcard so that the CULL~ ;nq device certificate 1302 could also be in~ A~ on the card. The device certificate 1302 certifies the propertiss 1304 of the card, and the card generates a key pair 1303,1309 which is to be used by the user of the card and which the user can have certified as his own by any appropriate desired CA.
Then, when submitting a newly generated public key 1303 for certi~ication, the device private signature key 130S would be used to countorsign 1306 the certificate reguc~t data 1307, which is already signed by the newly ~ Led user private key 1309.
Also, in a case in which the ~u~. ~ requires that all decryption keys be e~ ', the card should be able to certify that it is ;n~ApAhle of decryption.
This ~signature only" certirication can bo i through the same -nil described above, thus allowing the user's signature key to remain exempt rrOm escrow requirements. Because it is doubtful whether an ~- . ' key retains any value for non-ropudiation ~ W096/02993 2~194~75 ~l6 services, this certification is vital in order to prevent the signature key's disclosure through possible mi ~h~n~l i ng during an escrow process.
Smartcards should also be required to guard against unauthorized use of personal identification numbers [PINs). Normally, a smartcard is protected against unauthorized use by a PIN, the equivalent of a pA _ld. Typically, a PIN is rh~nqe~hl e only by the user and must be a specified lenqth, but typically nothing prevents the user from setting the PIN to a trivial number, for example all 1~5 or 121212.
Smartcard vendors should be requested to implement PIN-change routines that insure non-trivial PINs without repeating digits or obvious patterns. Naking the PIN
relatively long tat least 6 digits) and non-trivial reduces the chance that the card can be operated by someone finding or stealing it. Support for a 6-digit PIN requirement can be found in ~X9.26: Fin~nr;
Institution Sign-On Authentication for Wholesale FinAn~;Al Transactions", ANSI, 1990, which is well-known in the art and is hereby incoL~uLaLed by reference and which sets forth the "one-in-a-million"
standard that states that a log-in ~n; ~ may be cnn~id~red sQCUre if, among other things, an attacker ha~ no more than a one-in-a-million chance of gU~ccinq the correct pA ,,~Ld and if the system takes evasive action to prevent repeated , - ; nq. Fur~ h~ e, smartcards should be required to take "evasive action~, for example, ch~lt~;n7 down for a period of time or even erasing private keys, if too many inc~-Le_L PINs are entered by an unauthorized user.
It could also be made ~ requirement that smartcard manufa_LuL~I6 use bi~ Lrics as more secure methods of identification. Extensive work is currently being done W096/02993 r~ 6 in the areas of voiceprint and fingerprint identification, as a supplement to PINs. However, while the rates of false positive and negative still must be reduced, the main problem lies in securing the biometric input device and its data channel 80 that they are immune to capture and replay of the biometric data. This is not a problem when the biometric device is . '-''~d in a concrete wall, for example in an AT~
or door nccess system, but it remains a serious problem in typical commercial office settings. Ideally, the card and biometric input device will each be t ~L oof cryptographic modules that can certify themselves and establish secure ~h~nn~l ~ with each other.
Smartcards should also be able to maintain an Haudit trail,H or an internal log of recent actions, containing at a minimum, a timestamp, transaction amount, type code and message digest. This information can be _6sed into 40 or so bytes so that a 400-record circular log would consume sround 16K bytes.
This log would be ~plc~-' and checked only on receipt of a signed request from the card issuer over a secure channel. Al30, the card would not delete the old log until it received a signed confirmation from the issuer stating that the l~ploA~D~ log had been received intact.
Thia control r- '~ni~ will deter forgery, reduce the damage that can be caused by a forger, and allow nnAIlthnrized or guestioned trAn~A~t;on~ to be investigated more quickly and easily. Since most or all transactions occur off-line from the issuer, the card is the best witnes6 of its own actions.
W096~2993 r~ ~,6 21 ~4475 Controlling Access to the Pl~hliC Kev of the Root tifyin~ Authoritv ~n~ Csst R~CU~LY
A~ shown in FIGURE 3, in a particular cryptographic system, there may be a hierarchy of certifying authorities (31-33) issuing certificates 34, 35. In a larger system the number of certifying authorities and the depth of the hierarchy would be much greater. In the structure shown in FIGURE 3 the certifying authority A (31) is the root certifying authority, with all other certifying authorities being below it. As noted in the description of FIGURE 3, the public key of certifying authority A is well known. In a system where certifying authority A accepts liability for any tr~ncac~ion~ in the system based on information in certificateS issued by A, it would be useful and desirable for certifying authority A (the root certifying authority) to control access to its public key. By doing so, certifying authority A could enforce rules on the system which would ensure the well-being of the ~LLU~-UL~ of the system. Various methods for controlling access to the public key of a certifying authority are now described.
With reference to FIGURE 14, in a cryptographic sy~tom, a certifying authority (CA) 1402 issues user identity certificates 1404 to users (for example, user 1438) of the cryptographic system. Certifying authority 1402 has a private key 1406 and a public key 1408. me private key 1406 is used to digitally sign the certificates 1404 with certifying authority's digital signature 1410. Certirying authority 1402 may be any certifying authority in a hierarchy of certi~ying authorities, such as, for example, that shown in FIGURE 3.
Certifying authority 1402 determines information about users of the system, and, based on that W096l02993 ~ 5 ,6 ~
2t 94475 information, issues the certificates 1404 to thosQ
users. A certificate 1404 issued by certifying authority 1402 to a u6er 1438 contains user information 1410 including the user's public key 1412 and certifying authority's policy information 1414 regarding that user. In order for the information contained in the certi~icates 1404 to be verified by other users of the system, these other users must have access to the public Xey 1408 of the certifying authority 1402.
Effectively, certificates 1404 issued by certifying authorities are used by users of the system to identify themselves to other users of the system so as to facilitate transactions within the sy6tem. A
r~c;rient (a system user~ receiving a tr~n~a~ti~n 1440 from another system user 1438, where the ~ r -Lion is ~ nied by a certificate 1404 issued by certifying authority 1402 can rely on Lnformation in the certificate 1404, essentially becaus~ the certifying authority 1402 which issued the certificate 1404 vouches for the information in the certificate and accepts liability for certain trAn~rt;~n~ which rely on information in the certificate. If the certificate 1404 in~ A~ policy information 1414 of the certifying authority, this liability is only accepted by the c~rtliying authority 1402 if the recipient hnd a valid copy of the certifying authority's public key 1406 and if the recipient followed the policy 1414 described in the certificate 1404.
Thus, for example, suppose that after verifying to its sat~f~rt~on the identity of user A (1438), certifying authority 1402 issued a certificat~ 1404 to user A (1438). The certificate inrlnt3~ the public key 1416 of user A (1438), a policy 1414 of certifying ~ W096/02993 1~ 6 21 9~475 .~
authority 1402 with respect to user A and i8 digitally signed by certifying authority 1402. Suppose, for example, that the policy 1414 in the certificate specified that user A can only enter into transactions on weekdays from nine in the morning to five in the afternoon. A recipient 1424 of a transaction 1440 by user A 1438 and the certificate 1404, can perform the transaction with the knowledge that certifying authority 1402 would accept liability for the transaction if (a) the recipient verified the policy 1414 for the transaction, that is, if the recipient verifies that the transaction is taking place within the allowed time bounds, and (b~ the recipient had a valid copy of the public key 1408 of the certifying authority 1402. In other words, if the recipient does not check the transaction with respect to the policy then the LLan~L_Lion is invalid. Further, even if a recipient checks the tr~n~ n from user A and the LL_ ~~ Lion i5 allowed by the policy of the certifying authority with respect to user A (as specified in the certiflcate), the certifying authority 1402 is not liable for the tr~r~~ if the recipient was not in p~sr- inn of a valid copy of the certifying authority' 8 public key 1408.
The ~L~Lo~L~I.ic system also in~ various ~ ~ 1418 who also issue certificates to users.
The~e , -~ -issued certificates are also known as authorization certificates 1420. These certificates 1420 function, inter alia, to specify the rule~ or policies 1422 of the sponsor issuing them. These authorization certificates 1420 can be separate and different from the identity certificates 1404 issued by the certifying authorities (even though the identity certificates may contain policy reguirements of the W096/02993 .~l/- ,v,6 2 ~ 94475 certifying authorities). A user may have only one identity certificate 1404 issued by a certifying authority 1402. However, a user may have numerous authorization certificates 1420 issued by one or more a~ul~S~. D 1418.
When a recipient receives a transaction from another user of the system, the recipient should also verify all sponsor policies included in authorization certificates inrlll~ed with the transaction from that user. Thus, in this cryptographic system, users are reguired to enforce the rules (policies) of the certifying authorities and D~l.SUrS in the system.
As noted above, in order for the information contained in the various certificates to be verii'ied by users of the system, these users must have accesD to the public key 1408 of the certifying authority 1402 or sponsor 1418 that issued the various certificates. In order to enforce the rules of each certifying authority and sponsor in the system it is ne~-C ~y to limit the access to the public key 1408 of some of the certifying authorities. In particular, it is "~ y to limit acces~ to the public key of the topmost (root~
certifying authority 1402.
Accordingly, the root certifying authority 1402 ke ps its public key a trade secret, and in order to obtain the public key of the root certifying authority 1402, a user (potential recipient) 1424 wishing to undertake trAnaa~ti~n in the system must obtain the certifying authority rules 1426 is~ued by the root certifying authority. r -;pi~nt 1424 must hash thoae rules to form hashed rules 1428 which it must then digitally sign to produce a signed copy of the hashnd rules 1430. This digitally signed copy of the hashed rules must be IeLuL..sd to the root certifying authority ~ W096/02993 r~ 6 ~ 21 94475 1402. /3y these actions, the recipient 1424 agrees to abide by the rule5 of the certifying authority 1402 which it has just signed. The root certifying authority 1402 may also require that the recipient 1424 ~15O obtain, sign and return rules from other certifying authorities in the system as well as from ~..svr~ in the system. For example, recipient 1424 may al60 be required to obtain sponsor rules 1432 from sponsor 1418 and return a signed copy of these rules 1434 to the sponsor 1418.
Once the root certifying authority 1402 is satisfied that it ha5 received a valid copy of the system rules signed by the recipient 1424, the root certifying authority issues its public key 1408 to the 15 recipient 1424.
The root certifying authority public key 1424 may be issued to a recipient in a number of ways. In preferred ~ the recipient is provided with a secure device 1436, for example, a ~LLV~Ld. In one 20 preferred ~ the certifying authority public key 1408 is immediately available in the secure device, so that once the rDciri~nt 1424 obtains the device, he has the root certifying authority public key 1408. In another preferred . ';- , the certifying authority 25 publlc key 1408 i6 in the device 1436 in A ~i r'hle~
form, and the root certifying authority 1402 enables the key 1408 in the device upon receipt and verification of the signed rules 1430.
In some cases it i5 useful for the root certifying 30 authority public key 1406 in device 1436 to expire or to become in~cre~6ible after a certain time period. In these cases, in order for the root certifying authority to reactivate the key 1406, the recipient 1424 must again obtain, sign and return the rules of the root WO96/02993 rc~,~ 16 21 q4475 certifying authority 1402. These rules may be different from the rules previously signed.
Different certifying authorities, including the root, may also reguire that other conditions be met by potential recipients before they are given access to the public keys of those certifying authorities.
However, in~ A~d in the sy5tem rules is an &yL~ t by anyone 5igning the rule5 to keep them a secret.
Cost ~_u~_~Y
The rules can also include a~ to pay for use of the system. Thus, when a user obtains a valid key ~by agreeing to follow the rules of the root CA of the system), the5e rule5 can enforce a~L~ L to comply with the payment scheme of the system.
A cryptographic system can link the operation of the system with associated payment by users of the system for the tran5action5 they perform and accept.
The payment for a tr~n~actinn is made, for example, in the form of a pre-paid account, an a~-. to be billed, or a cnnt~ aneuus payment of digital cash to various parties in the system. For example, a particular operations such as digitally signing a LL -t i nn may cost a user a certain amount to be paid 2S to th~ certifying authority which issued the certlficate which guarantees that user's identity.
Some digital payment fllnnti nn~ can be built into the devices cnntAining the public keys. Since user'~
private keys are typically kept in secure devices (for example, smartcards), the secure devices can be used to r-in~ Ain a current digital balance for each user. This digital balance can be a debit or a credit amount.
Every time a user digitally signs a trAn~nct i on using his secure device, a certain amount is deducted from W096/02993 r~ 6 ~ 21 94475 that user's digital balance. If the secure device is a debit device, then when the user's digital balance reaches zero the device would become disabled and no longer able to sign for the user. The user would then have to obtain further digital credit from a certifying authority or some other sponsor in the sDystem. If, on the other hand, the secUre device is a credit device, then the user might be required to perform a payment transaction to the certifying authority at certain regular intervals, for example, daily, weekly or monthly. Since the digital credit amount is available from the secure device, the certifying authority could be Assured that the transaction is for the correct amount. A user who does not perform the required payment LL~na~Lion would be listed in a CRL as being sn~p~n~d or revoked and would no longer be able to perform transactions in the system.
Digital payment on a per transaction basis is also achieved using a confirm-to transaction. The user's authorization certificate would list the confirm-to address of the payee. once the tr~ncacti~ occurs the payee is notified and can deduct payment from the uDer's account.
Price Inforr~tion Since a user has agreed to pay fees and royalties a~sociated with the system, the user can alDo be provided with flexible pricing and billing information.
U~ c_ific pricing policies can be i l~ Lud using certificates. Certificates issued by D~vn~~.D
and certifying authorities can include payment and pricing policies for particular users. For example, a certificate might include a list of prices for certain LL ~:Lions (in~ ing, for example, signing using a w096/02993 2 1 9 4 4 7 5 P~ o o particular private key, verifying using a particular public key, or ~hD~ing the revocation status of a particular certificate), a discount rate for particular users, a discount rate for transactions with certain recipients, and rates for bulk transactions. Some of the billing is performed by the secure devices of the users whereas other hjllAhle events can arise from actions performed by recipients of tr~n~ot;on~.
In order to implement certaLn pricing policies, a certificate may contain various digital fields. For some policies, these fields include a revocation service address, a revocation service fee, and a transaction confirmation fee. The revocation service address is similar to the confirm-to address, but is used only to confirm the validity of the certificates.
That is, the revocation service screens for attempted trAn~n~ion~ based on certificates that have been withdrawn. The Revocation service Fee is the fee charged for this service.
Examples of these fields are:
(a) Private Key_Signing_Fee s $0.50 (b) Public_Xey Verify_Fee = $0.50 (c) Revocation_Service_Address =
1 e ~ _I.e_~@btec.com ~d) Revocation_Service_Fee ~ 50.50 (e) Confirm_Service_Fee = $0.50 All fees can be stated as flat fees or a~ a fee per some amount of base L.~r.~:a~l ion amount. For example, a fee can be specified as "$0.50~ or as "$0.50 per $1,000 of base LL~rnacLion amount".
Given the above examples, a recipient receiving a LL ~~ Lion could send the associated certLficates to the revocation service address and would be billed at the rate specified by the service fee.
~ W096/02993 2 1 9 4 4 7 5 P~ 6 In order to charge for a confirm-to tran6action, a certificate can also contain a transaction confirmation fee, for example, Transaction_Confirmation Fee =
tS0-50 per $1000 transaction amount) In this case each confirmed transaction would cost the recipient the appropriate fee.
In some instances a recipient may receive a transaction that is too expensive and which it would therefore reject. Accordingly, a digital field indicating p~ inn to bill the sender, the field being signed by the sender, is also inr,lllA~A. This field could include the sender's account number and other information inrl~lAing a maximum acceptable billing rate etc. This "bill-5ender" field would appear as an attribute in the sender's signature block.
Intellectn~l PLO~LLY L1rrnR;n~
The rules may also include agL. to pay for all int~ll~ct~l pL~ -y u5ed by a user. For example, a ~ystem may offer a user patented tr~nQ~rtinnQ, _ervices or algorithms, copyrighted materials, and the like. In order to a user to obtain a public key that would enable access to this intellectual p~y_LLy~ the user must sign the user rules agreeing to pay for use of the ~L ~L LY .
For example, in one ~ , the secure device contains many un-activated services (for which payment is reguired). Each use of one of these services requires payment in the foro, for example, of digital cash, either by an internal transaction in the device W096/02993 P~ v,6 or by some transaction with another user of the system.
In order to obtain the device, the user must digitally sign a set of rules (using a private key in the device and unique to the device and therefore the user). By S signing these rules, the user agrees to make the paymentc as reguired.
Sinnr~r T ~ ~ Policies A~ Rlll es A user of a cryptographic system may have an identification certificate tissued by a CA) and one or more authorization certificates (issued by CAs or ~y~ L~ of that user). Each of these certificates has pol1ci~ of the issuing party, and a recipient of a transaction including any of these certificates iB
~Ypect~ to verify that the transaction obeys all the rules specified in the certificates. It may be the case, however, that for a particular trAn~AVcti nn~ a user wishes to have more restrictive rules applied than are allowed by the certificates. For example, a user may be allowed to approve all tr~n~acti onc of $1 million or le~s, but may wish to approve a certain ~L -~ion only if its value is less than $1,000.
Alternatively, a user may be allowed to approve certain LL ~ ;~n~ alone, but for a ~pec;fic trAn-v i~n the u~~ may wish to require one or more co-signers. In support oS this feature, the ~lyyLc~L~phic system of the present invention provides users with the ability to add user rules, attributes and restrictions to trAn-VA,c~irnc.
The user rules cannot permit t~ - L;~nQ to be ~y,~._d that would not otherwise be allowed.
Therefore a recipient must alway~ apply the most restrictive rules to every transaction. For example, if a user's certificate allows transactions up to ~ w096/02993 2 1 9 4 4 7 5 r~ C /6 51,000 and the user rules specified transaction values of up to $1 million, clearly the Sl,oOo limit should apply. This can be achieved, for example, by the recipient applying all of the certificate rules first and then, if the transaction i5 still valid, applying all of the user rules. Applying the user rules first and then the certificate rules will also produce a correct result. ~owever, since boolean combinations of rules and restrictions are supported, interleaving the user and certificate rules may produce an inc~LL~L
result if not carefully performed.
FIGURE 15 shows verification of a user trAn~ n which includes user-supplied rules. A user LL~I-f ~ cLion 1502 ;n~ln~o~ transaction text 1506 describing the transaction to be performed by a recipient. The user appends to the transaction text 1506 a set of user-supplied rules 1504 which the user wants verified by any recipient of the transaction 150Z. Then the user digitally signs the combination of the LL .cti~n text 1506 and the rules 1504 to form the transaction 1502, forming a user signature 1510 which is -~p n~l~d to the transaction.
The transaction 1506 is then sent, along with any required sponsor and/or CA certificates, for example, with CA certificate 1508 and sponsor certificate 1509, to a recipient who must then verify the transaction.
To do this, the recipient verifies 1512 the user'a signature 1510 using the user's public key 1514 from the CA certificate 1508. If the user's signature is accepted, verification c~ntir 35, otherwise the transaction is rejected 1514. If verification continues, the recipient verifies 1516 the CA's signature 1518 using the CA's public key 1520. If the CA's ~ignature is accepted, verification continues 1522 W096/02993 ~ v16 with the rh~r~ing of the rules in all certificates and those supplied by the user, inrln~ing sponsor certificate 1509. Otherwise, the transaction is rejected 1514. If verification continues, the recipient verifies 1522 the trAncactinn against the rules in the CA certificate 1508, sponsor certificate 1509 (and in any other certificates associated with this transaction). If any of these rules are not satisfied the trAnaartion is rejected 1514, otherwise verification of the transaction continues with the verification of the transaction with respect to the user-supplied rules 1504. Only if the transaction satisfies the user provided rules 1504 is it accepted 1526, otherwise it is rejected 1514.
The us~ ~lied rules 1504 can be any combinations of the rules known to the system, inr~ ing, but not limited to co-signature reguirements, temporal limits, trAnaactinn amount limits, confirm-to requirements and the like.
In some envi~ users may create sets of rules or default rules for themselves for use with particular types of users or tr~nalc~inne. These sets of rules or defaults may be automatically attached to all trA- ~tnna from those types of users or L- ;~na. For example, a user who is b_n]c manager may ' ine (from experience) that for all LL ~1 nna by new tellers that she countersigns, she is going to apply more restrictive rules than the bank requires. She would then store these rules in her system as a default for those kinds of trAna~rti that she signs or cvu..~r~igns.
One skilled in the art will appreciate that the present invention is typically practiced using electronic devices such as digital electronic computers ~ W096/02993 2194475 r~ vl6 and the like, and that the certificates, transactions, ~ r~ s, signatures and the like are digital electronic signals generated by the electronic devices ~ and transmitted between the electronic devices.
Thus, a method for securely using digital signatures in a commercial cryptographic system is provided. One skilled in the art will appreciate that the present invention can be practiced by other than the deficribed - '~ ';~~ Ls, which are presented for y~,yoses of illustration and not limitation, and the present invention is limited only by the claims that follow.
Claims (17)
1. In a cryptographic system wherein a certifying authority issues digital certificates identifying users of said system, said digital certificates being digitally signed with a private key of said certifying authority to form a digital signature and requiring a public key of said certifying authority in order to verify said digital signature, and wherein a user transaction in said cryptographic system requires verification by a recipient of said user transaction, said verification based on information in said digital certificates and requiring said public key, a method of controlling access to said public key comprising the steps of:
denying access to said public key;
providing said recipient with at least one message containing rules of said system, said rules including maintaining secrecy of said public key;
by said recipient, digitally signing said at least one document, by which said recipient agrees to said rules; and in response to said digital signing, permitting said recipient to utilize said public key.
denying access to said public key;
providing said recipient with at least one message containing rules of said system, said rules including maintaining secrecy of said public key;
by said recipient, digitally signing said at least one document, by which said recipient agrees to said rules; and in response to said digital signing, permitting said recipient to utilize said public key.
2. A method as in claim 1 wherein said step of providing includes the step of providing said recipient with a secure device containing said public key, wherein said public key cannot be obtained from said secure device.
3. A method of enforcing a security policy in a cryptographic system, said policy requiring controlling access to a public key, said method comprising the steps of:
denying access to said public key;
providing a recipient with a message containing rules of said cryptographic system, said rules including maintaining secrecy of said public key;
by said recipient, digitally signing said document, by which said recipient agrees to said rules;
in response to said digitally signing, permitting said recipient to utilize public key.
denying access to said public key;
providing a recipient with a message containing rules of said cryptographic system, said rules including maintaining secrecy of said public key;
by said recipient, digitally signing said document, by which said recipient agrees to said rules;
in response to said digitally signing, permitting said recipient to utilize public key.
4. A method of enforcing a security policy in a cryptographic system, said policy requiring controlling access to a public key, said method comprising the steps of:
providing a recipient with a document containing rules of said system and with a secure device containing an inactive form of said public key, wherein said public key cannot be obtained from said device;
by said recipient, digitally signing said document;
in response to said digital signing, activating said public key in said secure device.
providing a recipient with a document containing rules of said system and with a secure device containing an inactive form of said public key, wherein said public key cannot be obtained from said device;
by said recipient, digitally signing said document;
in response to said digital signing, activating said public key in said secure device.
5. A method of enforcing a security policy in a crytographic system, said policy requiring controlling access to a public key of a certifying authority, said method comprising the steps of:
by said certifying authority, providing a user with a message containing rules of said system and with a secure device containing an inactive form of said public key, wherein said public key cannot be obtained from said device;
by said user, indicating an intent to follow said rules, said indicating including the steps of:
hashing said message to obtain a hashed document;
digitally signing said hashed document to form a digital agreement; and returning said digital agreement to said certifying authority;
in response to said indicating by said user, by said certifying authority, activating said public key in said secure device.
by said certifying authority, providing a user with a message containing rules of said system and with a secure device containing an inactive form of said public key, wherein said public key cannot be obtained from said device;
by said user, indicating an intent to follow said rules, said indicating including the steps of:
hashing said message to obtain a hashed document;
digitally signing said hashed document to form a digital agreement; and returning said digital agreement to said certifying authority;
in response to said indicating by said user, by said certifying authority, activating said public key in said secure device.
6. A method as in any one of claims 1-5 wherein each user of the system has a private key, and wherein said rules include at least one of rules requiring payment to a third party upon:
each use of said public key;
each use of a user's private key;
each certification of a certificate's status; and each confirm-to transaction by a user.
each use of said public key;
each use of a user's private key;
each certification of a certificate's status; and each confirm-to transaction by a user.
7. A method as in any one of claims 1-5 wherein said rules include rules to pay for use by said recipient of intellectual property used in creating or operating the system.
8. A method as in claim 1 wherein said user transaction is invalid until said step of digital signing is performed.
9. A method as in claim 1 further comprising the steps of:
in response to said signing by said recipient, said certifying authority accepting a transaction from said recipient, said transaction based on said user transaction.
in response to said signing by said recipient, said certifying authority accepting a transaction from said recipient, said transaction based on said user transaction.
10. In a cryptographic system wherein a certifying authority issues digital certificates identifying users of said system, said digital certificates being digitally signed with a private key of said certifying authority to form a digital signature and requiring a public key of said certifying authority in order to verify said digital signature, and wherein a user transaction in said cryptographic system requires verification by a recipient of said user transaction, said verification based on information in said digital certificates and requiring said public key, a method of controlling access to said public key comprising the steps of:
providing said recipient with a secure device containing an inactive form of said public key, wherein said public key cannot be obtained from said secure device;
in response to a predetermined transaction with said secure device, activating said inactive public key is said secure device, said predetermined transaction including information from the secure device identifying operational capabilities of the secure device and uniquely identifying said secure device and further including information uniquely binding said recipient to said predetermined transaction.
providing said recipient with a secure device containing an inactive form of said public key, wherein said public key cannot be obtained from said secure device;
in response to a predetermined transaction with said secure device, activating said inactive public key is said secure device, said predetermined transaction including information from the secure device identifying operational capabilities of the secure device and uniquely identifying said secure device and further including information uniquely binding said recipient to said predetermined transaction.
11. In a cryptographic system wherein a certifying authority issues digital certificates identifying users of said system, said digital certificates being digitally signed with a private key of said certifying authority to form a digital signature and requiring a public key of said certifying authority in order to verify said digital signature, and wherein a user transaction in said cryptographic system requires verification by a recipient of said user transaction, said verification based on information in said digital certificates and requiring said public key, a method of controlling access to said public key comprising the steps of:
providing said recipient with a secure device;
in response to a predetermined transaction with said secure device, transferring said public key to said secure device, said predetermined transaction including information from the secure device identifying operational capabilities of the secure device and uniquely identifying said secure device and further including information uniquely binding said recipient to said predetermined transaction, wherein said public key cannot be obtained from said secure device.
providing said recipient with a secure device;
in response to a predetermined transaction with said secure device, transferring said public key to said secure device, said predetermined transaction including information from the secure device identifying operational capabilities of the secure device and uniquely identifying said secure device and further including information uniquely binding said recipient to said predetermined transaction, wherein said public key cannot be obtained from said secure device.
12. A method as in one of claims 10 and 11 wherein said public key in said secure device becomes inactive after a predetermined time period, said method further comprising the steps of:
after said public key in said device becomes inactive, in response to another predetermined transaction with said secure device, activating said inactive public key is said secure device, said other predetermined transaction including information from the secure device identifying operational capabilities of the secure device and further including information uniquely binding said recipient to said other predetermined transaction.
after said public key in said device becomes inactive, in response to another predetermined transaction with said secure device, activating said inactive public key is said secure device, said other predetermined transaction including information from the secure device identifying operational capabilities of the secure device and further including information uniquely binding said recipient to said other predetermined transaction.
13. A method of enforcing a policy in a cryptographic communication system comprising the steps of:
forming a digital message by a user;
combining with said message at least one user rule;
forming a digital user signature based on said digital message, said at least one user rule and a private key of said user;
combining said digital message, said at least one user rule and said digital user signature to form a digital user transaction; and combining with said digital user transaction a digital identifying certificate issued by a certifying authority, said identifying certificate having a plurality of digital fields, at least one of said fields identifying said user, wherein said at least one user rule specifying conditions under which said digital message transaction is valid.
forming a digital message by a user;
combining with said message at least one user rule;
forming a digital user signature based on said digital message, said at least one user rule and a private key of said user;
combining said digital message, said at least one user rule and said digital user signature to form a digital user transaction; and combining with said digital user transaction a digital identifying certificate issued by a certifying authority, said identifying certificate having a plurality of digital fields, at least one of said fields identifying said user, wherein said at least one user rule specifying conditions under which said digital message transaction is valid.
14. A method as in claim 13, further comprising the step of:
combining with said digital transaction a digital authorizing certificate, separate from said identifying certificate and issued by a sponsor of said user for authorizing transactions by said user.
combining with said digital transaction a digital authorizing certificate, separate from said identifying certificate and issued by a sponsor of said user for authorizing transactions by said user.
15. A method of enforcing a policy in a cryptographic communication system comprising the steps of:
receiving a digital user transaction including a digital message, at least one user rule specifying conditions under which said transaction is valid and a digital user signature based on said digital message, said at least one user rule and on a private key of a user;
receiving a digital identifying certificate issued by a certifying authority and having a plurality of digital fields, at least one of said fields identifying said user;
verifying said transaction based on information in said certificate and in said at least one user rule;
and accepting said transaction based on said outcome of said verifying.
receiving a digital user transaction including a digital message, at least one user rule specifying conditions under which said transaction is valid and a digital user signature based on said digital message, said at least one user rule and on a private key of a user;
receiving a digital identifying certificate issued by a certifying authority and having a plurality of digital fields, at least one of said fields identifying said user;
verifying said transaction based on information in said certificate and in said at least one user rule;
and accepting said transaction based on said outcome of said verifying.
16. A method as in claim 15, further comprising the step of:
receiving a digital authorizing certificate, separate from said identifying certificate and issued by a sponsor of said user and authorizing transactions by said user; and wherein said step of verifying includes step of:
verifying said transaction based on information in said authorizing certificate.
receiving a digital authorizing certificate, separate from said identifying certificate and issued by a sponsor of said user and authorizing transactions by said user; and wherein said step of verifying includes step of:
verifying said transaction based on information in said authorizing certificate.
17. A method as in any one of claims 13-16 wherein said at least one user rule includes at least one of:
(a) allowed document types of said transaction;
(b) allowed locations at which transactions can be formed;
(c) allowed times at which transactions may be formed;
(d) a time period within which said signature is valid;
(e) a monetary limit for said transaction; and (f) co-signer requirements for said transaction.
(a) allowed document types of said transaction;
(b) allowed locations at which transactions can be formed;
(c) allowed times at which transactions may be formed;
(d) a time period within which said signature is valid;
(e) a monetary limit for said transaction; and (f) co-signer requirements for said transaction.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US27743894A | 1994-07-19 | 1994-07-19 | |
US08/277,438 | 1994-07-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
CA2194475A1 true CA2194475A1 (en) | 1996-02-01 |
Family
ID=23060862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002194475A Abandoned CA2194475A1 (en) | 1994-07-19 | 1995-07-19 | Method for securely using digital signatures in a commercial cryptographic system |
Country Status (12)
Country | Link |
---|---|
US (1) | US5659616A (en) |
EP (1) | EP0771499B1 (en) |
JP (1) | JPH10504150A (en) |
AT (1) | ATE305682T1 (en) |
AU (1) | AU698454B2 (en) |
CA (1) | CA2194475A1 (en) |
CZ (1) | CZ11597A3 (en) |
DE (1) | DE69534490T2 (en) |
NO (1) | NO970084L (en) |
RU (1) | RU2144269C1 (en) |
TR (1) | TR199600585A2 (en) |
WO (1) | WO1996002993A2 (en) |
Families Citing this family (389)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10361802B1 (en) | 1999-02-01 | 2019-07-23 | Blanding Hovenweep, Llc | Adaptive pattern recognition based control system and method |
US7904722B2 (en) * | 1994-07-19 | 2011-03-08 | Certco, Llc | Method for securely using digital signatures in a commercial cryptographic system |
CA2138302C (en) * | 1994-12-15 | 1999-05-25 | Michael S. Fortinsky | Provision of secure access to external resources from a distributed computing environment |
WO1996027155A2 (en) * | 1995-02-13 | 1996-09-06 | Electronic Publishing Resources, Inc. | Systems and methods for secure transaction management and electronic rights protection |
US7133846B1 (en) * | 1995-02-13 | 2006-11-07 | Intertrust Technologies Corp. | Digital certificate support system, methods and techniques for secure electronic commerce transaction and rights management |
US6658568B1 (en) * | 1995-02-13 | 2003-12-02 | Intertrust Technologies Corporation | Trusted infrastructure support system, methods and techniques for secure electronic commerce transaction and rights management |
CA2179971C (en) * | 1995-06-30 | 2001-10-30 | Takahisa Yamamoto | An adaptable communication apparatus and an adaptable communication system |
US7337315B2 (en) * | 1995-10-02 | 2008-02-26 | Corestreet, Ltd. | Efficient certificate revocation |
US5666416A (en) * | 1995-10-24 | 1997-09-09 | Micali; Silvio | Certificate revocation system |
US6097811A (en) * | 1995-11-02 | 2000-08-01 | Micali; Silvio | Tree-based certificate revocation system |
US8015597B2 (en) | 1995-10-02 | 2011-09-06 | Corestreet, Ltd. | Disseminating additional data used for controlling access |
US7600129B2 (en) | 1995-10-02 | 2009-10-06 | Corestreet, Ltd. | Controlling access using additional data |
US6487658B1 (en) | 1995-10-02 | 2002-11-26 | Corestreet Security, Ltd. | Efficient certificate revocation |
US7353396B2 (en) * | 1995-10-02 | 2008-04-01 | Corestreet, Ltd. | Physical access control |
US8732457B2 (en) * | 1995-10-02 | 2014-05-20 | Assa Abloy Ab | Scalable certificate validation and simplified PKI management |
US7822989B2 (en) * | 1995-10-02 | 2010-10-26 | Corestreet, Ltd. | Controlling access to an area |
US6766450B2 (en) | 1995-10-24 | 2004-07-20 | Corestreet, Ltd. | Certificate revocation system |
US7716486B2 (en) | 1995-10-02 | 2010-05-11 | Corestreet, Ltd. | Controlling group access to doors |
US5787175A (en) * | 1995-10-23 | 1998-07-28 | Novell, Inc. | Method and apparatus for collaborative document control |
US8261319B2 (en) | 1995-10-24 | 2012-09-04 | Corestreet, Ltd. | Logging access attempts to an area |
US6301659B1 (en) | 1995-11-02 | 2001-10-09 | Silvio Micali | Tree-based certificate revocation system |
US5774552A (en) * | 1995-12-13 | 1998-06-30 | Ncr Corporation | Method and apparatus for retrieving X.509 certificates from an X.500 directory |
US5774870A (en) * | 1995-12-14 | 1998-06-30 | Netcentives, Inc. | Fully integrated, on-line interactive frequency and award redemption program |
JPH09223085A (en) * | 1996-02-19 | 1997-08-26 | Fuji Xerox Co Ltd | Electronic document approval device and system therefor |
JPH09284272A (en) * | 1996-04-19 | 1997-10-31 | Canon Inc | Ciphering system, signature system, key common share system, identity proving system and device for the systems |
US6945457B1 (en) | 1996-05-10 | 2005-09-20 | Transaction Holdings Ltd. L.L.C. | Automated transaction machine |
US6901509B1 (en) | 1996-05-14 | 2005-05-31 | Tumbleweed Communications Corp. | Apparatus and method for demonstrating and confirming the status of a digital certificates and other data |
US5903651A (en) | 1996-05-14 | 1999-05-11 | Valicert, Inc. | Apparatus and method for demonstrating and confirming the status of a digital certificates and other data |
CN1214352C (en) * | 1996-09-04 | 2005-08-10 | 英特托拉斯技术公司 | Trusted infrastructure support system, method and techniques for secure electronic commerce, electronic transactions, commerce process control and automation distributted computing and rights manageme |
US6055637A (en) * | 1996-09-27 | 2000-04-25 | Electronic Data Systems Corporation | System and method for accessing enterprise-wide resources by presenting to the resource a temporary credential |
US6470448B1 (en) * | 1996-10-30 | 2002-10-22 | Fujitsu Limited | Apparatus and method for proving transaction between users in network environment |
US6192131B1 (en) | 1996-11-15 | 2001-02-20 | Securities Industry Automation Corporation | Enabling business transactions in computer networks |
US6212634B1 (en) * | 1996-11-15 | 2001-04-03 | Open Market, Inc. | Certifying authorization in computer networks |
DE19702049C1 (en) * | 1997-01-22 | 1998-05-14 | Ibm | Chipcard cryptographic key certification method |
US5982898A (en) * | 1997-03-07 | 1999-11-09 | At&T Corp. | Certification process |
US6275941B1 (en) * | 1997-03-28 | 2001-08-14 | Hiatchi, Ltd. | Security management method for network system |
US6477513B1 (en) * | 1997-04-03 | 2002-11-05 | Walker Digital, Llc | Method and apparatus for executing cryptographically-enabled letters of credit |
CA2287857C (en) * | 1997-05-09 | 2008-07-29 | Gte Cybertrust Solutions Incorporated | Biometric certificates |
US7631188B2 (en) * | 1997-05-16 | 2009-12-08 | Tvworks, Llc | Hierarchical open security information delegation and acquisition |
JPH10327147A (en) * | 1997-05-21 | 1998-12-08 | Hitachi Ltd | Electronic authenticating and notarizing method and its system |
US6335972B1 (en) | 1997-05-23 | 2002-01-01 | International Business Machines Corporation | Framework-based cryptographic key recovery system |
US7290288B2 (en) | 1997-06-11 | 2007-10-30 | Prism Technologies, L.L.C. | Method and system for controlling access, by an authentication server, to protected computer resources provided via an internet protocol network |
US6018724A (en) * | 1997-06-30 | 2000-01-25 | Sun Micorsystems, Inc. | Method and apparatus for authenticating on-line transaction data |
US6339824B1 (en) * | 1997-06-30 | 2002-01-15 | International Business Machines Corporation | Method and apparatus for providing public key security control for a cryptographic processor |
IL121550A (en) * | 1997-08-14 | 2003-07-31 | Diversinet Corp | System and method for handling permits |
US8024269B1 (en) | 1997-08-27 | 2011-09-20 | Datatreasury Corporation | Remote image capture with centralized processing and storage |
US6061734A (en) * | 1997-09-24 | 2000-05-09 | At&T Corp | System and method for determining if a message identifier could be equivalent to one of a set of predetermined indentifiers |
US6125349A (en) * | 1997-10-01 | 2000-09-26 | At&T Corp. | Method and apparatus using digital credentials and other electronic certificates for electronic transactions |
US6058484A (en) * | 1997-10-09 | 2000-05-02 | International Business Machines Corporation | Systems, methods and computer program products for selection of date limited information |
US6052784A (en) * | 1997-10-14 | 2000-04-18 | Intel Corporation | Network discovery system and method |
KR100241350B1 (en) * | 1997-10-27 | 2000-02-01 | 정선종 | Electronic certificate paper generation method |
US6208986B1 (en) | 1997-12-15 | 2001-03-27 | International Business Machines Corporation | Web interface and method for accessing and displaying directory information |
US6192362B1 (en) * | 1997-12-15 | 2001-02-20 | International Business Machines Corporation | System and method for creating a search form for accessing directory information |
US6195666B1 (en) | 1997-12-15 | 2001-02-27 | International Business Machines Corporation | Web interface and method for displaying directory information |
US6260039B1 (en) * | 1997-12-15 | 2001-07-10 | International Business Machines Corporation | Web interface and method for accessing directory information |
US6453416B1 (en) * | 1997-12-19 | 2002-09-17 | Koninklijke Philips Electronics N.V. | Secure proxy signing device and method of use |
US6170058B1 (en) | 1997-12-23 | 2001-01-02 | Arcot Systems, Inc. | Method and apparatus for cryptographically camouflaged cryptographic key storage, certification and use |
US7454782B2 (en) | 1997-12-23 | 2008-11-18 | Arcot Systems, Inc. | Method and system for camouflaging access-controlled data |
US7328350B2 (en) | 2001-03-29 | 2008-02-05 | Arcot Systems, Inc. | Method and apparatus for secure cryptographic key generation, certification and use |
US6601172B1 (en) * | 1997-12-31 | 2003-07-29 | Philips Electronics North America Corp. | Transmitting revisions with digital signatures |
WO1999037054A1 (en) * | 1998-01-16 | 1999-07-22 | Kent Ridge Digital Labs | A method of data storage and apparatus therefor |
CA2228687A1 (en) * | 1998-02-04 | 1999-08-04 | Brett Howard | Secured virtual private networks |
US6233577B1 (en) | 1998-02-17 | 2001-05-15 | Phone.Com, Inc. | Centralized certificate management system for two-way interactive communication devices in data networks |
FI980591A (en) * | 1998-03-17 | 2000-01-03 | Sonera Oy | Procedure and system for reliable and secure identification of a contracting party |
DE69832535D1 (en) | 1998-03-18 | 2005-12-29 | Kent Ridge Digital Labs Singap | PROCESS FOR THE EXCHANGE OF DIGITAL DATA |
US20010044901A1 (en) * | 1998-03-24 | 2001-11-22 | Symantec Corporation | Bubble-protected system for automatic decryption of file data on a per-use basis and automatic re-encryption |
US6314517B1 (en) * | 1998-04-02 | 2001-11-06 | Entrust Technologies Limited | Method and system for notarizing digital signature data in a system employing cryptography based security |
US6848050B1 (en) | 1998-04-16 | 2005-01-25 | Citicorp Development Center, Inc. | System and method for alternative encryption techniques |
US7039805B1 (en) * | 1998-05-20 | 2006-05-02 | Messing John H | Electronic signature method |
US6321339B1 (en) | 1998-05-21 | 2001-11-20 | Equifax Inc. | System and method for authentication of network users and issuing a digital certificate |
WO1999060483A1 (en) | 1998-05-21 | 1999-11-25 | Equifax Inc. | System and method for authentication of network users |
US6282658B2 (en) | 1998-05-21 | 2001-08-28 | Equifax, Inc. | System and method for authentication of network users with preprocessing |
US6718470B1 (en) * | 1998-06-05 | 2004-04-06 | Entrust Technologies Limited | System and method for granting security privilege in a communication system |
US6286015B1 (en) * | 1998-09-08 | 2001-09-04 | Oracle Corporation | Opaque types |
RU2153191C2 (en) | 1998-09-29 | 2000-07-20 | Закрытое акционерное общество "Алкорсофт" | Method for blind production of digital rsa signature and device which implements said method |
US6119108A (en) * | 1998-10-01 | 2000-09-12 | Aires Systems Corporation | Secure electronic publishing system |
US6370250B1 (en) | 1998-10-29 | 2002-04-09 | International Business Machines Corporation | Method of authentication and storage of private keys in a public key cryptography system (PKCS) |
US6820202B1 (en) * | 1998-11-09 | 2004-11-16 | First Data Corporation | Account authority digital signature (AADS) system |
US7047416B2 (en) * | 1998-11-09 | 2006-05-16 | First Data Corporation | Account-based digital signature (ABDS) system |
US7080409B2 (en) * | 1998-11-10 | 2006-07-18 | Dan Eigeles | Method for deployment of a workable public key infrastructure |
RU2157001C2 (en) | 1998-11-25 | 2000-09-27 | Закрытое акционерное общество "Алкорсофт" | Method for conducting transactions |
US6173269B1 (en) | 1998-12-16 | 2001-01-09 | Zowi.Com, Inc | Method and apparatus for executing electronic commercial transactions with minors |
US6530022B1 (en) * | 1998-12-17 | 2003-03-04 | International Business Machines Corporation | Permission-based scanning of a web site |
US6330588B1 (en) * | 1998-12-21 | 2001-12-11 | Philips Electronics North America Corporation | Verification of software agents and agent activities |
US7209889B1 (en) * | 1998-12-24 | 2007-04-24 | Henry Whitfield | Secure system for the issuance, acquisition, and redemption of certificates in a transaction network |
US6587945B1 (en) * | 1998-12-28 | 2003-07-01 | Koninklijke Philips Electronics N.V. | Transmitting reviews with digital signatures |
DE19961151A1 (en) | 1999-01-29 | 2000-08-03 | Ibm | Preparation and vintages of a new type of certificate for the certification of keys on chip cards |
AU2878700A (en) * | 1999-02-12 | 2000-08-29 | Allen Freudenstein | System and method for providing certification-related and other services |
EP1203332A4 (en) * | 1999-02-12 | 2002-09-25 | Mack Hicks | System and method for providing certification-related and other services |
US6601171B1 (en) * | 1999-02-18 | 2003-07-29 | Novell, Inc. | Deputization in a distributed computing system |
US20020026321A1 (en) * | 1999-02-26 | 2002-02-28 | Sadeg M. Faris | Internet-based system and method for fairly and securely enabling timed-constrained competition using globally time-sychronized client subsystems and information servers having microsecond client-event resolution |
EP1159799B1 (en) | 1999-02-26 | 2006-07-26 | Bitwise Designs, Inc. | Digital file management and imaging system and method including secure file marking |
EP1163566A1 (en) * | 1999-03-08 | 2001-12-19 | Spyrus, Inc. | Method and system for enforcing access to a computing resource using a licensing certificate |
US7305562B1 (en) | 1999-03-09 | 2007-12-04 | Citibank, N.A. | System, method and computer program product for an authentication management infrastructure |
US6256737B1 (en) | 1999-03-09 | 2001-07-03 | Bionetrix Systems Corporation | System, method and computer program product for allowing access to enterprise resources using biometric devices |
EP1037427A1 (en) * | 1999-03-17 | 2000-09-20 | Ascom Systec AG | Multiple security protocol facility in messaging systems |
CA2266141A1 (en) * | 1999-03-18 | 2000-09-18 | Rdm Corporation | Method for controlling the application of digital signatures to electronic documents based on electronically represented business signing rules |
US6463534B1 (en) * | 1999-03-26 | 2002-10-08 | Motorola, Inc. | Secure wireless electronic-commerce system with wireless network domain |
US6775782B1 (en) * | 1999-03-31 | 2004-08-10 | International Business Machines Corporation | System and method for suspending and resuming digital certificates in a certificate-based user authentication application system |
AU4078700A (en) * | 1999-04-13 | 2000-11-14 | Ilumin Corporation | System and method for document-driven processing of digitally-signed electronic documents |
US6671805B1 (en) * | 1999-06-17 | 2003-12-30 | Ilumin Corporation | System and method for document-driven processing of digitally-signed electronic documents |
US7711152B1 (en) * | 1999-04-30 | 2010-05-04 | Davida George I | System and method for authenticated and privacy preserving biometric identification systems |
US8325994B2 (en) | 1999-04-30 | 2012-12-04 | Davida George I | System and method for authenticated and privacy preserving biometric identification systems |
EP1056014A1 (en) * | 1999-05-28 | 2000-11-29 | Hewlett-Packard Company | System for providing a trustworthy user interface |
US20020023057A1 (en) * | 1999-06-01 | 2002-02-21 | Goodwin Johnathan David | Web-enabled value bearing item printing |
US7149726B1 (en) | 1999-06-01 | 2006-12-12 | Stamps.Com | Online value bearing item printing |
AU3712300A (en) | 1999-06-11 | 2001-01-02 | Liberate Technologies | Hierarchical open security information delegation and acquisition |
IL147164A0 (en) * | 1999-06-18 | 2002-08-14 | Echarge Corp | Method and apparatus for ordering goods, services and content over an internetwork using a virtual payment account |
DE69938498T2 (en) | 1999-06-28 | 2009-07-09 | Alcatel Lucent | A method for producing authorizations, certification authority, terminal, service provider and certificate for implementing such a method |
US6816965B1 (en) | 1999-07-16 | 2004-11-09 | Spyrus, Inc. | Method and system for a policy enforcing module |
US6484259B1 (en) * | 1999-07-23 | 2002-11-19 | Microsoft Corporation | Methods and arrangements for mapping widely disparate portable tokens to a static machine concentric cryptographic environment |
WO2001011843A1 (en) * | 1999-08-06 | 2001-02-15 | Sudia Frank W | Blocked tree authorization and status systems |
EP1076279A1 (en) * | 1999-08-13 | 2001-02-14 | Hewlett-Packard Company | Computer platforms and their methods of operation |
EP1077436A3 (en) * | 1999-08-19 | 2005-06-22 | Citicorp Development Center, Inc. | System and method for performing an on-line transaction using a single-use payment instrument |
US7424616B1 (en) | 1999-09-10 | 2008-09-09 | Identrus | System and method for facilitating access by sellers to certificate-related and other services |
US20020029200A1 (en) | 1999-09-10 | 2002-03-07 | Charles Dulin | System and method for providing certificate validation and other services |
EP1218860A2 (en) * | 1999-09-20 | 2002-07-03 | Ethentica, Inc. | Cryptographic server with provisions for interoperability between cryptographic systems |
WO2001024082A1 (en) | 1999-09-24 | 2001-04-05 | Mary Mckenney | System and method for providing payment services in electronic commerce |
US7216110B1 (en) | 1999-10-18 | 2007-05-08 | Stamps.Com | Cryptographic module for secure processing of value-bearing items |
AU1570901A (en) | 1999-10-18 | 2001-04-30 | Stamps.Com | Cryptographic module for secure processing of value-bearing items |
EP1224630A1 (en) | 1999-10-18 | 2002-07-24 | Stamps.Com | Method and apparatus for on-line value-bearing item system |
US7233929B1 (en) | 1999-10-18 | 2007-06-19 | Stamps.Com | Postal system intranet and commerce processing for on-line value bearing system |
US7240037B1 (en) | 1999-10-18 | 2007-07-03 | Stamps.Com | Method and apparatus for digitally signing an advertisement area next to a value-bearing item |
US6868406B1 (en) * | 1999-10-18 | 2005-03-15 | Stamps.Com | Auditing method and system for an on-line value-bearing item printing system |
US7236956B1 (en) | 1999-10-18 | 2007-06-26 | Stamps.Com | Role assignments in a cryptographic module for secure processing of value-bearing items |
EP1094424A3 (en) * | 1999-10-22 | 2004-06-16 | Hitachi, Ltd. | Digital signing method |
WO2001031841A1 (en) | 1999-10-27 | 2001-05-03 | Visa International Service Association | Method and apparatus for leveraging an existing cryptographic infrastructure |
US7321864B1 (en) * | 1999-11-04 | 2008-01-22 | Jpmorgan Chase Bank, N.A. | System and method for providing funding approval associated with a project based on a document collection |
US7143144B2 (en) * | 1999-11-30 | 2006-11-28 | Ricoh Company, Ltd. | System, method and computer readable medium for certifying release of electronic information on an internet |
US6505193B1 (en) * | 1999-12-01 | 2003-01-07 | Iridian Technologies, Inc. | System and method of fast biometric database searching using digital certificates |
US6671804B1 (en) | 1999-12-01 | 2003-12-30 | Bbnt Solutions Llc | Method and apparatus for supporting authorities in a public key infrastructure |
GB2357227B (en) * | 1999-12-08 | 2003-12-17 | Hewlett Packard Co | Security protocol |
GB2357226B (en) | 1999-12-08 | 2003-07-16 | Hewlett Packard Co | Security protocol |
GB2357225B (en) | 1999-12-08 | 2003-07-16 | Hewlett Packard Co | Electronic certificate |
GB2357229B (en) | 1999-12-08 | 2004-03-17 | Hewlett Packard Co | Security protocol |
GB2357228B (en) | 1999-12-08 | 2003-07-09 | Hewlett Packard Co | Method and apparatus for discovering a trust chain imparting a required attribute to a subject |
AU782518B2 (en) * | 2000-01-07 | 2005-08-04 | International Business Machines Corporation | A method for inter-enterprise role-based authorization |
GB2359156B (en) * | 2000-02-14 | 2004-10-13 | Reuters Ltd | Methods of computer programs for and apparatus for providing and accessing digital content |
WO2001061652A2 (en) * | 2000-02-16 | 2001-08-23 | Stamps.Com | Secure on-line ticketing |
US20060155731A1 (en) * | 2000-03-09 | 2006-07-13 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US20060143714A1 (en) * | 2000-03-09 | 2006-06-29 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US20050015608A1 (en) | 2003-07-16 | 2005-01-20 | Pkware, Inc. | Method for strongly encrypting .ZIP files |
US20060143252A1 (en) * | 2000-03-09 | 2006-06-29 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US20060143250A1 (en) * | 2000-03-09 | 2006-06-29 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US8959582B2 (en) | 2000-03-09 | 2015-02-17 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US20060155788A1 (en) * | 2000-03-09 | 2006-07-13 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US8230482B2 (en) * | 2000-03-09 | 2012-07-24 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US7844579B2 (en) | 2000-03-09 | 2010-11-30 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US6879988B2 (en) * | 2000-03-09 | 2005-04-12 | Pkware | System and method for manipulating and managing computer archive files |
US20060173848A1 (en) * | 2000-03-09 | 2006-08-03 | Pkware, Inc. | System and method for manipulating and managing computer archive files |
US7441263B1 (en) | 2000-03-23 | 2008-10-21 | Citibank, N.A. | System, method and computer program product for providing unified authentication services for online applications |
US6871276B1 (en) * | 2000-04-05 | 2005-03-22 | Microsoft Corporation | Controlled-content recoverable blinded certificates |
US7086085B1 (en) | 2000-04-11 | 2006-08-01 | Bruce E Brown | Variable trust levels for authentication |
US6965881B1 (en) * | 2000-04-24 | 2005-11-15 | Intel Corporation | Digital credential usage reporting |
US7047404B1 (en) * | 2000-05-16 | 2006-05-16 | Surety Llc | Method and apparatus for self-authenticating digital records |
US7028180B1 (en) * | 2000-06-09 | 2006-04-11 | Northrop Grumman Corporation | System and method for usage of a role certificate in encryption and as a seal, digital stamp, and signature |
EP1164745A3 (en) * | 2000-06-09 | 2005-03-30 | Northrop Grumman Corporation | System and method for usage of a role certificate in encryption, and as a seal, digital stamp, and a signature |
WO2001097445A1 (en) * | 2000-06-14 | 2001-12-20 | Smarttrust Systems Oy | Interpretation of the identity of an entity |
US7395246B2 (en) * | 2000-06-30 | 2008-07-01 | Intel Corporation | Delegating digital credentials |
US20040260657A1 (en) * | 2000-07-18 | 2004-12-23 | John Cockerham | System and method for user-controlled on-line transactions |
US6934848B1 (en) * | 2000-07-19 | 2005-08-23 | International Business Machines Corporation | Technique for handling subsequent user identification and password requests within a certificate-based host session |
US6976164B1 (en) * | 2000-07-19 | 2005-12-13 | International Business Machines Corporation | Technique for handling subsequent user identification and password requests with identity change within a certificate-based host session |
US7558965B2 (en) * | 2000-08-04 | 2009-07-07 | First Data Corporation | Entity authentication in electronic communications by providing verification status of device |
US6789189B2 (en) * | 2000-08-04 | 2004-09-07 | First Data Corporation | Managing account database in ABDS system |
US7096354B2 (en) * | 2000-08-04 | 2006-08-22 | First Data Corporation | Central key authority database in an ABDS system |
US6978369B2 (en) * | 2000-08-04 | 2005-12-20 | First Data Corporation | Person-centric account-based digital signature system |
US6983368B2 (en) * | 2000-08-04 | 2006-01-03 | First Data Corporation | Linking public key of device to information during manufacture |
CA2417770C (en) * | 2000-08-04 | 2011-10-25 | First Data Corporation | Trusted authentication digital signature (tads) system |
US7082533B2 (en) * | 2000-08-04 | 2006-07-25 | First Data Corporation | Gauging risk in electronic communications regarding accounts in ABDS system |
US7552333B2 (en) * | 2000-08-04 | 2009-06-23 | First Data Corporation | Trusted authentication digital signature (tads) system |
US7010691B2 (en) * | 2000-08-04 | 2006-03-07 | First Data Corporation | ABDS system utilizing security information in authenticating entity access |
AU2001286464A1 (en) * | 2000-08-14 | 2002-02-25 | Peter H. Gien | System and method for secure smartcard issuance |
GB2366469B (en) * | 2000-08-25 | 2005-02-23 | Hewlett Packard Co | Improvements relating to document transmission techniques II |
US7275155B1 (en) * | 2000-09-01 | 2007-09-25 | Northrop Grumman Corporation | Chain of trust processing |
SE0003171L (en) * | 2000-09-07 | 2002-03-08 | Bankgirocentralen Bgc Ab | Network related user identification system |
WO2002021408A1 (en) * | 2000-09-08 | 2002-03-14 | Tallent Guy S | System and method for transparently providing certificate validation and other services within an electronic transaction |
US20020144122A1 (en) * | 2001-04-03 | 2002-10-03 | S.W.I.F.T. | System and method for facilitating trusted transactions between businesses |
US7072870B2 (en) * | 2000-09-08 | 2006-07-04 | Identrus, Llc | System and method for providing authorization and other services |
US20020038290A1 (en) * | 2000-09-22 | 2002-03-28 | Cochran Jeffrey M. | Digital notary system and method |
US7457950B1 (en) | 2000-09-29 | 2008-11-25 | Intel Corporation | Managed authentication service |
US7178030B2 (en) * | 2000-10-25 | 2007-02-13 | Tecsec, Inc. | Electronically signing a document |
US8285991B2 (en) * | 2000-10-25 | 2012-10-09 | Tecsec Inc. | Electronically signing a document |
WO2002035758A2 (en) | 2000-10-26 | 2002-05-02 | American International Group, Inc. | Identity insurance transaction method |
US7581011B2 (en) * | 2000-12-22 | 2009-08-25 | Oracle International Corporation | Template based workflow definition |
US7085834B2 (en) * | 2000-12-22 | 2006-08-01 | Oracle International Corporation | Determining a user's groups |
US7802174B2 (en) | 2000-12-22 | 2010-09-21 | Oracle International Corporation | Domain based workflows |
US7380008B2 (en) | 2000-12-22 | 2008-05-27 | Oracle International Corporation | Proxy system |
US7937655B2 (en) | 2000-12-22 | 2011-05-03 | Oracle International Corporation | Workflows with associated processes |
US8015600B2 (en) * | 2000-12-22 | 2011-09-06 | Oracle International Corporation | Employing electronic certificate workflows |
US7363339B2 (en) * | 2000-12-22 | 2008-04-22 | Oracle International Corporation | Determining group membership |
US7711818B2 (en) * | 2000-12-22 | 2010-05-04 | Oracle International Corporation | Support for multiple data stores |
US7475151B2 (en) * | 2000-12-22 | 2009-01-06 | Oracle International Corporation | Policies for modifying group membership |
US7213249B2 (en) * | 2000-12-22 | 2007-05-01 | Oracle International Corporation | Blocking cache flush requests until completing current pending requests in a local server and remote server |
US7349912B2 (en) | 2000-12-22 | 2008-03-25 | Oracle International Corporation | Runtime modification of entries in an identity system |
US7415607B2 (en) * | 2000-12-22 | 2008-08-19 | Oracle International Corporation | Obtaining and maintaining real time certificate status |
JP2002207427A (en) * | 2001-01-10 | 2002-07-26 | Sony Corp | System and method for issuing public key certificate, information processor, information recording medium, and program storage medium |
JP2002207426A (en) | 2001-01-10 | 2002-07-26 | Sony Corp | System and method for issuing public key certificate, electronic certification device, and program storage medium |
US7039807B2 (en) | 2001-01-23 | 2006-05-02 | Computer Associates Think, Inc. | Method and system for obtaining digital signatures |
FR2820578A1 (en) * | 2001-02-06 | 2002-08-09 | Picture Certification Com E | DEVICE FOR OBLITERATING AND MANUALLY SIGNING AN ELECTRONIC DOCUMENT, SECURED BY CHIP CARD, PUBLIC KEY AND THIRD PARTY OF SEQUESTRE |
US20020152086A1 (en) * | 2001-02-15 | 2002-10-17 | Smith Ned M. | Method and apparatus for controlling a lifecycle of an electronic contract |
GB2372343A (en) * | 2001-02-17 | 2002-08-21 | Hewlett Packard Co | Determination of a trust value of a digital certificate |
GB2372342A (en) * | 2001-02-17 | 2002-08-21 | Hewlett Packard Co | Determination of a credential attribute value of a digital certificate |
US7139911B2 (en) * | 2001-02-28 | 2006-11-21 | International Business Machines Corporation | Password exposure elimination for digital signature coupling with a host identity |
US20030172027A1 (en) * | 2001-03-23 | 2003-09-11 | Scott Walter G. | Method for conducting a credit transaction using biometric information |
US7181017B1 (en) | 2001-03-23 | 2007-02-20 | David Felsher | System and method for secure three-party communications |
US20020144110A1 (en) * | 2001-03-28 | 2002-10-03 | Ramanathan Ramanathan | Method and apparatus for constructing digital certificates |
US20020144120A1 (en) * | 2001-03-28 | 2002-10-03 | Ramanathan Ramanathan | Method and apparatus for constructing digital certificates |
US20020161999A1 (en) * | 2001-04-25 | 2002-10-31 | Gunter Carl A. | Method and system for expediting delegation of permission |
US20020162004A1 (en) * | 2001-04-25 | 2002-10-31 | Gunter Carl A. | Method and system for managing access to services |
DE10120290A1 (en) * | 2001-04-25 | 2002-11-07 | Siemens Ag | Method for securing a data transmission between several data transmission units and associated components |
US20030172299A1 (en) * | 2002-03-05 | 2003-09-11 | Gunter Carl A. | Method and system for maintaining secure access to web server services using permissions |
US6885388B2 (en) * | 2001-04-25 | 2005-04-26 | Probaris Technologies Inc. | Method for automatically generating list of meeting participants and delegation permission |
NO313810B1 (en) * | 2001-04-25 | 2002-12-02 | Ericsson Telefon Ab L M | Cryptographic signing in small units |
US20030236977A1 (en) * | 2001-04-25 | 2003-12-25 | Levas Robert George | Method and system for providing secure access to applications |
US20050210263A1 (en) * | 2001-04-25 | 2005-09-22 | Levas Robert G | Electronic form routing and data capture system and method |
US20020162019A1 (en) * | 2001-04-25 | 2002-10-31 | Berry Michael C. | Method and system for managing access to services |
US20020162002A1 (en) * | 2001-04-25 | 2002-10-31 | Gunter Carl A. | Method and system for controlling access to services |
US20030172297A1 (en) * | 2002-03-05 | 2003-09-11 | Gunter Carl A. | Method and system for maintaining secure access to web server services using public keys |
US7167985B2 (en) * | 2001-04-30 | 2007-01-23 | Identrus, Llc | System and method for providing trusted browser verification |
US20020188511A1 (en) * | 2001-05-14 | 2002-12-12 | Trilegiant Loyalty Solutions | Interactive online point redemption system |
US6785686B2 (en) * | 2001-05-29 | 2004-08-31 | Sun Microsystems, Inc. | Method and system for creating and utilizing managed roles in a directory system |
US7096362B2 (en) * | 2001-06-01 | 2006-08-22 | International Business Machines Corporation | Internet authentication with multiple independent certificate authorities |
GB2376313A (en) * | 2001-06-04 | 2002-12-11 | Hewlett Packard Co | Indicating to a user if they are connected to a trusted computer platform |
US7509498B2 (en) * | 2001-06-29 | 2009-03-24 | Intel Corporation | Digital signature validation |
US7254706B2 (en) * | 2001-06-29 | 2007-08-07 | Hewlett-Packard Development Company, L.P. | System and method for downloading of files to a secure terminal |
US20040101142A1 (en) * | 2001-07-05 | 2004-05-27 | Nasypny Vladimir Vladimirovich | Method and system for an integrated protection system of data distributed processing in computer networks and system for carrying out said method |
WO2003013167A1 (en) * | 2001-07-20 | 2003-02-13 | Brainshield Technologies, Inc. | Device for digitally signing an electronic document |
US20030018890A1 (en) * | 2001-07-23 | 2003-01-23 | Hale Douglas Lavell | Method of local due diligence for accepting certificates |
US20040128508A1 (en) * | 2001-08-06 | 2004-07-01 | Wheeler Lynn Henry | Method and apparatus for access authentication entity |
US20030229811A1 (en) * | 2001-10-31 | 2003-12-11 | Cross Match Technologies, Inc. | Method that provides multi-tiered authorization and identification |
US7769690B2 (en) * | 2001-11-06 | 2010-08-03 | International Business Machines Corporation | Method and system for the supply of data, transactions and electronic voting |
US7447904B1 (en) | 2001-11-14 | 2008-11-04 | Compass Technology Management, Inc. | Systems and methods for obtaining digital signatures on a single authoritative copy of an original electronic record |
US7146500B2 (en) * | 2001-11-14 | 2006-12-05 | Compass Technology Management, Inc. | System for obtaining signatures on a single authoritative copy of an electronic record |
KR100439171B1 (en) * | 2001-11-21 | 2004-07-05 | 한국전자통신연구원 | Method for providing a trusted path between client and system |
US20030105876A1 (en) * | 2001-11-30 | 2003-06-05 | Angelo Michael F. | Automatic generation of verifiable customer certificates |
US7225256B2 (en) | 2001-11-30 | 2007-05-29 | Oracle International Corporation | Impersonation in an access system |
US7543139B2 (en) * | 2001-12-21 | 2009-06-02 | International Business Machines Corporation | Revocation of anonymous certificates, credentials, and access rights |
US7165718B2 (en) * | 2002-01-16 | 2007-01-23 | Pathway Enterprises, Inc. | Identification of an individual using a multiple purpose card |
US7231657B2 (en) * | 2002-02-14 | 2007-06-12 | American Management Systems, Inc. | User authentication system and methods thereof |
US7228417B2 (en) * | 2002-02-26 | 2007-06-05 | America Online, Inc. | Simple secure login with multiple-authentication providers |
US20030163685A1 (en) * | 2002-02-28 | 2003-08-28 | Nokia Corporation | Method and system to allow performance of permitted activity with respect to a device |
GB2385955A (en) * | 2002-02-28 | 2003-09-03 | Ibm | Key certification using certificate chains |
US20030177094A1 (en) * | 2002-03-15 | 2003-09-18 | Needham Bradford H. | Authenticatable positioning data |
US8086867B2 (en) * | 2002-03-26 | 2011-12-27 | Northrop Grumman Systems Corporation | Secure identity and privilege system |
EP1504393A4 (en) | 2002-04-23 | 2008-03-19 | Clearing House Service Company | Payment identification code and payment system using the same |
US7900048B2 (en) * | 2002-05-07 | 2011-03-01 | Sony Ericsson Mobile Communications Ab | Method for loading an application in a device, device and smart card therefor |
US7216163B2 (en) * | 2002-05-15 | 2007-05-08 | Oracle International Corporation | Method and apparatus for provisioning tasks using a provisioning bridge server |
US7840658B2 (en) | 2002-05-15 | 2010-11-23 | Oracle International Corporation | Employing job code attributes in provisioning |
US7167871B2 (en) * | 2002-05-17 | 2007-01-23 | Xerox Corporation | Systems and methods for authoritativeness grading, estimation and sorting of documents in large heterogeneous document collections |
US20030221109A1 (en) * | 2002-05-24 | 2003-11-27 | Pure Edge Solutions, Inc. | Method of and apparatus for digital signatures |
JP4102105B2 (en) * | 2002-05-24 | 2008-06-18 | 株式会社日立製作所 | Document entry system using electronic pen |
KR100477645B1 (en) * | 2002-05-25 | 2005-03-23 | 삼성전자주식회사 | Method of generating serial number and apparatus thereof |
US20030233542A1 (en) * | 2002-06-18 | 2003-12-18 | Benaloh Josh D. | Selectively disclosable digital certificates |
US7305547B2 (en) * | 2002-06-28 | 2007-12-04 | Hewlett-Packard Development Company, L.P. | Method for upgrading a host/agent security system that includes digital certificate management and an upgradable backward compatible host/agent security system digital certificate infrastructure |
AU2003258067A1 (en) | 2002-08-06 | 2004-02-23 | Privaris, Inc. | Methods for secure enrollment and backup of personal identity credentials into electronic devices |
US20040054898A1 (en) * | 2002-08-28 | 2004-03-18 | International Business Machines Corporation | Authenticating and communicating verifiable authorization between disparate network domains |
US7177847B2 (en) * | 2002-10-15 | 2007-02-13 | Microsoft Corporation | Authorization token accompanying request and including constraint tied to request |
US7571472B2 (en) * | 2002-12-30 | 2009-08-04 | American Express Travel Related Services Company, Inc. | Methods and apparatus for credential validation |
US9818136B1 (en) | 2003-02-05 | 2017-11-14 | Steven M. Hoffberg | System and method for determining contingent relevance |
US7543140B2 (en) * | 2003-02-26 | 2009-06-02 | Microsoft Corporation | Revocation of a certificate and exclusion of other principals in a digital rights management (DRM) system based on a revocation list from a delegated revocation authority |
US20040205345A1 (en) * | 2003-04-11 | 2004-10-14 | Ripley Michael S. | System for identification and revocation of audiovisual titles and replicators |
US20040221158A1 (en) * | 2003-05-02 | 2004-11-04 | Secure Data In Motion, Inc. | Digital signature and verification system for conversational messages |
AU2004239780B2 (en) * | 2003-05-13 | 2009-08-27 | Assa Abloy Ab | Efficient and secure data currentness systems |
US20090112670A1 (en) * | 2003-05-29 | 2009-04-30 | Black Steven C | Human resources method for employee termination procedures |
US20040243428A1 (en) * | 2003-05-29 | 2004-12-02 | Black Steven C. | Automated compliance for human resource management |
US20090182602A1 (en) * | 2003-05-29 | 2009-07-16 | Hotlinkhr, Inc. | Human resources method for employee demographics reporting compliance |
EP1636682A4 (en) * | 2003-06-24 | 2009-04-29 | Corestreet Ltd | Access control |
US7290278B2 (en) | 2003-10-02 | 2007-10-30 | Aol Llc, A Delaware Limited Liability Company | Identity based service system |
US7904487B2 (en) | 2003-10-09 | 2011-03-08 | Oracle International Corporation | Translating data access requests |
US7882132B2 (en) | 2003-10-09 | 2011-02-01 | Oracle International Corporation | Support for RDBMS in LDAP system |
US7340447B2 (en) | 2003-10-09 | 2008-03-04 | Oracle International Corporation | Partitioning data access requests |
EP1673674A2 (en) | 2003-10-17 | 2006-06-28 | International Business Machines Corporation | Maintaining privacy for transactions performable by a user device having a security module |
US7620630B2 (en) * | 2003-11-12 | 2009-11-17 | Oliver Lloyd Pty Ltd | Directory system |
CA2544273C (en) * | 2003-11-19 | 2015-01-13 | Corestreet, Ltd. | Distributed delegated path discovery and validation |
US7533407B2 (en) | 2003-12-16 | 2009-05-12 | Microsoft Corporation | System and methods for providing network quarantine |
US20050138388A1 (en) * | 2003-12-19 | 2005-06-23 | Robert Paganetti | System and method for managing cross-certificates copyright notice |
US7698557B2 (en) * | 2003-12-22 | 2010-04-13 | Guardtime As | System and method for generating a digital certificate |
US20050149724A1 (en) * | 2003-12-30 | 2005-07-07 | Nokia Inc. | System and method for authenticating a terminal based upon a position of the terminal within an organization |
US20050144144A1 (en) * | 2003-12-30 | 2005-06-30 | Nokia, Inc. | System and method for authenticating a terminal based upon at least one characteristic of the terminal located at a position within an organization |
US7966487B2 (en) | 2004-01-09 | 2011-06-21 | Corestreet, Ltd. | Communication-efficient real time credentials for OCSP and distributed OCSP |
US8725607B2 (en) | 2004-01-30 | 2014-05-13 | The Clearing House Payments Company LLC | Electronic payment clearing and check image exchange systems and methods |
US7236957B2 (en) * | 2004-02-10 | 2007-06-26 | Bottomline Technologies (De) Inc. | Method for remotely authorizing a payment transaction file over an open network |
US20050223233A1 (en) * | 2004-04-01 | 2005-10-06 | Fujitsu Limited | Authentication method and system |
US8296573B2 (en) * | 2004-04-06 | 2012-10-23 | International Business Machines Corporation | System and method for remote self-enrollment in biometric databases |
EP1738239A1 (en) * | 2004-04-12 | 2007-01-03 | Intercomputer Corporation | Secure messaging system |
US20050267954A1 (en) * | 2004-04-27 | 2005-12-01 | Microsoft Corporation | System and methods for providing network quarantine |
US7676590B2 (en) | 2004-05-03 | 2010-03-09 | Microsoft Corporation | Background transcoding |
US20060075247A1 (en) * | 2004-09-27 | 2006-04-06 | Sharp Laboratories Of America, Inc. | System and method for establishing an authenticated timestamp and content certification |
US7630974B2 (en) | 2004-09-28 | 2009-12-08 | Oracle International Corporation | Multi-language support for enterprise identity and access management |
US20060085850A1 (en) * | 2004-10-14 | 2006-04-20 | Microsoft Corporation | System and methods for providing network quarantine using IPsec |
JP4999300B2 (en) * | 2004-10-22 | 2012-08-15 | 株式会社リコー | Scan device, scan service using device, authentication service providing device, scan service program, scan service using program, authentication service program, recording medium, scan method, scan service using method, and authentication service providing method |
US7205882B2 (en) * | 2004-11-10 | 2007-04-17 | Corestreet, Ltd. | Actuating a security system using a wireless device |
US7936869B2 (en) * | 2005-01-07 | 2011-05-03 | First Data Corporation | Verifying digital signature based on shared knowledge |
US20060153369A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Providing cryptographic key based on user input data |
US7869593B2 (en) * | 2005-01-07 | 2011-01-11 | First Data Corporation | Software for providing based on shared knowledge public keys having same private key |
US7593527B2 (en) * | 2005-01-07 | 2009-09-22 | First Data Corporation | Providing digital signature and public key based on shared knowledge |
US7693277B2 (en) * | 2005-01-07 | 2010-04-06 | First Data Corporation | Generating digital signatures using ephemeral cryptographic key |
US20060156013A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Digital signature software using ephemeral private key and system |
US7490239B2 (en) * | 2005-01-07 | 2009-02-10 | First Data Corporation | Facilitating digital signature based on ephemeral private key |
US20060153370A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Generating public-private key pair based on user input data |
US20060153364A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Asymmetric key cryptosystem based on shared knowledge |
US20060153367A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Digital signature system based on shared knowledge |
EP1684153A1 (en) * | 2005-01-24 | 2006-07-26 | Thomson Licensing | Presence-based access control |
EP1684204A1 (en) * | 2005-01-24 | 2006-07-26 | THOMSON Licensing | Presence-based access control |
US8230224B2 (en) | 2005-03-08 | 2012-07-24 | International Business Machines Corporation | Transmitting security data in multipart communications over a network |
US9436804B2 (en) | 2005-04-22 | 2016-09-06 | Microsoft Technology Licensing, Llc | Establishing a unique session key using a hardware functionality scan |
US7849101B2 (en) * | 2005-05-12 | 2010-12-07 | Microsoft Corporation | Method and system for enabling an electronic signature approval process |
JP4121134B2 (en) * | 2005-05-31 | 2008-07-23 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Program, classification method and system |
DE602005017291D1 (en) * | 2005-06-01 | 2009-12-03 | Research In Motion Ltd | SYSTEM AND METHOD FOR DETERMINING SAFETY CODING TO BE APPLIED TO SUBMITTED MESSAGES |
US20060291700A1 (en) * | 2005-06-08 | 2006-12-28 | Ogram Mark E | Internet signature verification system |
US20060294366A1 (en) * | 2005-06-23 | 2006-12-28 | International Business Machines Corp. | Method and system for establishing a secure connection based on an attribute certificate having user credentials |
US7565358B2 (en) | 2005-08-08 | 2009-07-21 | Google Inc. | Agent rank |
US7622641B2 (en) * | 2005-08-24 | 2009-11-24 | Pioneer Hi-Bred Int'l., Inc. | Methods and compositions for providing tolerance to multiple herbicides |
US7924913B2 (en) | 2005-09-15 | 2011-04-12 | Microsoft Corporation | Non-realtime data transcoding of multimedia content |
US8874477B2 (en) | 2005-10-04 | 2014-10-28 | Steven Mark Hoffberg | Multifactorial optimization system and method |
US7526677B2 (en) * | 2005-10-31 | 2009-04-28 | Microsoft Corporation | Fragility handling |
US20070101400A1 (en) * | 2005-10-31 | 2007-05-03 | Overcow Corporation | Method of providing secure access to computer resources |
US7827545B2 (en) * | 2005-12-15 | 2010-11-02 | Microsoft Corporation | Dynamic remediation of a client computer seeking access to a network with a quarantine enforcement policy |
US20070198525A1 (en) * | 2006-02-13 | 2007-08-23 | Microsoft Corporation | Computer system with update-based quarantine |
US8104074B2 (en) * | 2006-02-24 | 2012-01-24 | Microsoft Corporation | Identity providers in digital identity system |
US20070203852A1 (en) * | 2006-02-24 | 2007-08-30 | Microsoft Corporation | Identity information including reputation information |
US8117459B2 (en) * | 2006-02-24 | 2012-02-14 | Microsoft Corporation | Personal identification information schemas |
US7904725B2 (en) * | 2006-03-02 | 2011-03-08 | Microsoft Corporation | Verification of electronic signatures |
US7793096B2 (en) * | 2006-03-31 | 2010-09-07 | Microsoft Corporation | Network access protection |
DK2011301T3 (en) * | 2006-04-10 | 2011-10-17 | Trust Integration Services B V | Arrangement and method for secure data transmission |
US7603350B1 (en) | 2006-05-09 | 2009-10-13 | Google Inc. | Search result ranking based on trust |
EP1868315A1 (en) * | 2006-06-15 | 2007-12-19 | Sealed SPRL | Cryptographic computer-implemented method for processing a digital signature and information processing apparatus therefor. |
US8078880B2 (en) * | 2006-07-28 | 2011-12-13 | Microsoft Corporation | Portable personal identity information |
US8121946B1 (en) | 2006-08-01 | 2012-02-21 | United Services Automobile Association | System and method for modular electronic signature block |
US8171469B2 (en) | 2006-08-15 | 2012-05-01 | Hewlett-Packard Development Company, L.P. | Package compatibility |
US8239677B2 (en) * | 2006-10-10 | 2012-08-07 | Equifax Inc. | Verification and authentication systems and methods |
US20080097777A1 (en) * | 2006-10-23 | 2008-04-24 | Ctm Software Corporation | Electronic document execution |
US8510233B1 (en) | 2006-12-27 | 2013-08-13 | Stamps.Com Inc. | Postage printer |
US9779556B1 (en) | 2006-12-27 | 2017-10-03 | Stamps.Com Inc. | System and method for identifying and preventing on-line fraud |
US8087072B2 (en) * | 2007-01-18 | 2011-12-27 | Microsoft Corporation | Provisioning of digital identity representations |
US8407767B2 (en) * | 2007-01-18 | 2013-03-26 | Microsoft Corporation | Provisioning of digital identity representations |
US8689296B2 (en) * | 2007-01-26 | 2014-04-01 | Microsoft Corporation | Remote access of digital identities |
EP1968265A1 (en) * | 2007-02-07 | 2008-09-10 | Comodo CA Limited | Method and system for securely transmitting electronic mail |
US8341616B2 (en) * | 2007-03-28 | 2012-12-25 | International Business Machines Corporation | Updating digitally signed active content elements without losing attributes associated with an original signing user |
US20080288291A1 (en) * | 2007-05-16 | 2008-11-20 | Silver Springs - Martin Luther School | Digital Signature, Electronic Record Software and Method |
US20080313456A1 (en) * | 2007-06-12 | 2008-12-18 | Andrew John Menadue | Apparatus and method for irrepudiable token exchange |
MX2010000619A (en) * | 2007-07-17 | 2010-05-17 | William Howard Peirson Jr | Systems and processes for obtaining and managing electronic signatures for real estate transaction documents. |
KR101018001B1 (en) * | 2007-09-27 | 2011-03-02 | 주식회사 스타뱅크 | System having a structure of unit for managing documents and electric information |
US9225684B2 (en) * | 2007-10-29 | 2015-12-29 | Microsoft Technology Licensing, Llc | Controlling network access |
AU2009205675B2 (en) | 2008-01-18 | 2014-09-25 | Identrust, Inc. | Binding a digital certificate to multiple trust domains |
JP5225394B2 (en) * | 2008-09-24 | 2013-07-03 | エヌイーシー ヨーロッパ リミテッド | Method and system for distributing TV content via network |
US20100146280A1 (en) * | 2008-12-10 | 2010-06-10 | Industrial Technology Research Institute | Remote assisting method and system |
US8327134B2 (en) * | 2009-02-12 | 2012-12-04 | International Business Machines Corporation | System, method and program product for checking revocation status of a biometric reference template |
US9298902B2 (en) * | 2009-02-12 | 2016-03-29 | International Business Machines Corporation | System, method and program product for recording creation of a cancelable biometric reference template in a biometric event journal record |
US8635442B2 (en) * | 2009-04-28 | 2014-01-21 | Adobe Systems Incorporated | System and method for long-term digital signature verification utilizing light weight digital signatures |
US8605296B2 (en) * | 2009-05-28 | 2013-12-10 | SecureCare Technologies, Inc. | Digital signature system and method |
US9608826B2 (en) * | 2009-06-29 | 2017-03-28 | Jpmorgan Chase Bank, N.A. | System and method for partner key management |
US8606792B1 (en) | 2010-02-08 | 2013-12-10 | Google Inc. | Scoring authors of posts |
JP5244849B2 (en) * | 2010-04-26 | 2013-07-24 | 株式会社野村総合研究所 | Seal with authentication function |
EP2609712A1 (en) * | 2010-08-24 | 2013-07-03 | Koninklijke Philips Electronics N.V. | Attribute-based digital signatures |
US8782397B2 (en) * | 2011-01-06 | 2014-07-15 | International Business Machines Corporation | Compact attribute for cryptographically protected messages |
WO2012144930A1 (en) * | 2011-04-22 | 2012-10-26 | Общество С Ограниченной Ответственностью "Нфи-Сервис" | System for ordering goods and services by means of a cellular communications device |
WO2012165337A1 (en) * | 2011-05-31 | 2012-12-06 | Yamada Tetsuo | Tax administration method, tax administration system, transaction information administration device, and authentication server |
US11334884B2 (en) * | 2012-05-04 | 2022-05-17 | Institutional Cash Distributors Technology, Llc | Encapsulated security tokens for electronic transactions |
WO2013166518A1 (en) * | 2012-05-04 | 2013-11-07 | Institutional Cash Distributors Technology, Llc | Secure transaction object creation, propagation and invocation |
US10423952B2 (en) | 2013-05-06 | 2019-09-24 | Institutional Cash Distributors Technology, Llc | Encapsulated security tokens for electronic transactions |
WO2015088986A1 (en) * | 2013-12-09 | 2015-06-18 | Sureclinical Inc. | System and method for high trust cloud digital signing and workflow automation in health sciences |
US20150186619A1 (en) * | 2013-12-26 | 2015-07-02 | Medidata Solutions, Inc. | Method and system for ensuring clinical data integrity |
US10521791B2 (en) * | 2014-05-07 | 2019-12-31 | Mastercard International Incorporated | Systems and methods for communicating liability acceptance with payment card transactions |
US11295308B1 (en) | 2014-10-29 | 2022-04-05 | The Clearing House Payments Company, L.L.C. | Secure payment processing |
US10453058B2 (en) | 2014-12-17 | 2019-10-22 | Heartland Payment Systems, Inc. | E-signature |
US9336092B1 (en) * | 2015-01-01 | 2016-05-10 | Emc Corporation | Secure data deduplication |
CN105991600B (en) * | 2015-02-25 | 2019-06-21 | 阿里巴巴集团控股有限公司 | Identity identifying method, device, server and terminal |
US10868672B1 (en) | 2015-06-05 | 2020-12-15 | Apple Inc. | Establishing and verifying identity using biometrics while protecting user privacy |
US11140171B1 (en) | 2015-06-05 | 2021-10-05 | Apple Inc. | Establishing and verifying identity using action sequences while protecting user privacy |
EP3104320B1 (en) * | 2015-06-12 | 2018-08-15 | EM Microelectronic-Marin SA | Method for programming bank data in an integrated circuit of a watch |
US11042882B2 (en) | 2015-07-01 | 2021-06-22 | The Clearing House Payments Company, L.L.C. | Real-time payment system, method, apparatus, and computer program |
US11694168B2 (en) | 2015-07-01 | 2023-07-04 | The Clearing House Payments Company L.L.C. | Real-time payment system, method, apparatus, and computer program |
WO2017030670A1 (en) * | 2015-08-18 | 2017-02-23 | Wal-Mart Stores, Inc. | System for automatic signature for receipt verification |
WO2017031674A1 (en) * | 2015-08-24 | 2017-03-02 | 华为技术有限公司 | Security authentication method, configuration method and related device |
US11328234B2 (en) | 2015-12-11 | 2022-05-10 | Sureclinical Inc. | Interactive project progress tracking interface |
US9800568B1 (en) * | 2016-03-16 | 2017-10-24 | F5 Networks, Inc. | Methods for client certificate delegation and devices thereof |
US10482468B2 (en) | 2016-11-11 | 2019-11-19 | Mastercard International Incorporated | Systems and methods of improved electronic messaging |
US11436577B2 (en) | 2018-05-03 | 2022-09-06 | The Clearing House Payments Company L.L.C. | Bill pay service with federated directory model support |
US10541954B1 (en) * | 2018-08-05 | 2020-01-21 | Gideon Samid | Cyber companion: attaching a secondary message to a primary one |
US20210374718A1 (en) * | 2018-09-04 | 2021-12-02 | Sony Corporation | Ic card, processing method, and information processing system |
US11157626B1 (en) | 2019-05-29 | 2021-10-26 | Northrop Grumman Systems Corporation | Bi-directional chain of trust network |
US20210110405A1 (en) * | 2019-10-09 | 2021-04-15 | Jpmorgan Chase Bank, N.A. | System and method for implementing a data contract management module |
US11532040B2 (en) | 2019-11-12 | 2022-12-20 | Bottomline Technologies Sarl | International cash management software using machine learning |
US11526859B1 (en) | 2019-11-12 | 2022-12-13 | Bottomline Technologies, Sarl | Cash flow forecasting using a bottoms-up machine learning approach |
WO2021144888A1 (en) * | 2020-01-15 | 2021-07-22 | 株式会社Finality Technologies | Settlement processing device, settlement processing program, and settlement processing system |
US11704671B2 (en) | 2020-04-02 | 2023-07-18 | Bottomline Technologies Limited | Financial messaging transformation-as-a-service |
CN113411184B (en) * | 2021-05-31 | 2022-06-14 | 胡金钱 | Integrated management terminal device and integrated management method |
CN113259137A (en) * | 2021-07-15 | 2021-08-13 | 广东电网有限责任公司江门供电局 | Power grid access control method, system and storage medium based on user attributes |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4625076A (en) * | 1984-03-19 | 1986-11-25 | Nippon Telegraph & Telephone Public Corporation | Signed document transmission system |
US5214702A (en) * | 1988-02-12 | 1993-05-25 | Fischer Addison M | Public key/signature cryptosystem with enhanced digital signature certification |
US5005200A (en) * | 1988-02-12 | 1991-04-02 | Fischer Addison M | Public key/signature cryptosystem with enhanced digital signature certification |
US5031214A (en) * | 1990-01-29 | 1991-07-09 | Dziewit Halina S | Document authentication apparatus |
US4981370A (en) * | 1990-01-29 | 1991-01-01 | Dziewit Halina S | Document authentication apparatus |
US5163091A (en) * | 1990-01-29 | 1992-11-10 | Graziano James M | Knowledge based system for document authentication (apparatus) |
US5191613A (en) * | 1990-11-16 | 1993-03-02 | Graziano James M | Knowledge based system for document authentication |
US5164988A (en) * | 1991-10-31 | 1992-11-17 | International Business Machines Corporation | Method to establish and enforce a network cryptographic security policy in a public key cryptosystem |
US5157726A (en) * | 1991-12-19 | 1992-10-20 | Xerox Corporation | Document copy authentication |
-
1995
- 1995-07-19 JP JP8505241A patent/JPH10504150A/en active Pending
- 1995-07-19 AT AT95934957T patent/ATE305682T1/en not_active IP Right Cessation
- 1995-07-19 CZ CZ97115A patent/CZ11597A3/en unknown
- 1995-07-19 WO PCT/US1995/009076 patent/WO1996002993A2/en active IP Right Grant
- 1995-07-19 DE DE69534490T patent/DE69534490T2/en not_active Expired - Lifetime
- 1995-07-19 CA CA002194475A patent/CA2194475A1/en not_active Abandoned
- 1995-07-19 RU RU97102357/09A patent/RU2144269C1/en not_active IP Right Cessation
- 1995-07-19 EP EP95934957A patent/EP0771499B1/en not_active Expired - Lifetime
- 1995-07-19 AU AU37156/95A patent/AU698454B2/en not_active Ceased
-
1996
- 1996-07-16 TR TR96/00585A patent/TR199600585A2/en unknown
- 1996-07-16 US US08/682,071 patent/US5659616A/en not_active Expired - Lifetime
-
1997
- 1997-01-09 NO NO970084A patent/NO970084L/en unknown
Also Published As
Publication number | Publication date |
---|---|
AU3715695A (en) | 1996-02-16 |
WO1996002993A3 (en) | 1996-03-07 |
TR199600585A2 (en) | 1997-02-21 |
DE69534490D1 (en) | 2005-11-03 |
NO970084L (en) | 1997-03-10 |
CZ11597A3 (en) | 1997-09-17 |
EP0771499B1 (en) | 2005-09-28 |
ATE305682T1 (en) | 2005-10-15 |
US5659616A (en) | 1997-08-19 |
AU698454B2 (en) | 1998-10-29 |
EP0771499A2 (en) | 1997-05-07 |
RU2144269C1 (en) | 2000-01-10 |
WO1996002993A2 (en) | 1996-02-01 |
NO970084D0 (en) | 1997-01-09 |
DE69534490T2 (en) | 2006-06-29 |
JPH10504150A (en) | 1998-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0771499B1 (en) | Method for securely using digital signatures in a commercial cryptographic system | |
US7904722B2 (en) | Method for securely using digital signatures in a commercial cryptographic system | |
WO1996002993A9 (en) | Method for securely using digital signatures in a commercial cryptographic system | |
Law et al. | How to make a mint: the cryptography of anonymous electronic cash | |
US6026166A (en) | Digitally certifying a user identity and a computer system in combination | |
Camenisch et al. | An efficient fair payment system | |
US5615268A (en) | System and method for electronic transmission storage and retrieval of authenticated documents | |
US6490358B1 (en) | Enabling business transactions in computer networks | |
US20150356523A1 (en) | Decentralized identity verification systems and methods | |
WO2003007121A2 (en) | Method and system for determining confidence in a digital transaction | |
JP2006246543A (en) | Cryptographic system and method with key escrow function | |
US20070179903A1 (en) | Identity theft mitigation | |
CN101216923A (en) | A system and method to enhance the data security of e-bank dealings | |
TW200427284A (en) | Personal authentication device and system and method thereof | |
Chida et al. | Digital money–a survey | |
US7356842B2 (en) | Cryptographic revocation method using a chip card | |
Wang et al. | A consumer scalable anonymity payment scheme with role based access control | |
Information Security Committee | Section of Science and technology | |
Brands | Electronic Cash. | |
Sudia et al. | Commercialization of Digital Signatures | |
Danezis | An Anonymous Auction Protocol Using “Money Escrow” Transcript of Discussion | |
Mokhtari | Digital Money Methods Based On Public Insurance Tools | |
Rihaczek | TeleTrusT-OSIS and communication security | |
Al-Meaither et al. | A secure electronic payment scheme for charity donations | |
Wenninger et al. | Consumer Payments over Open Computer Networks, Research Paper 9603 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FZDE | Discontinued |