| (I) A value computed with a cryptographic algorithm and appended
to a data object in such a way that any recipient of the data can
use the signature to verify the data's origin and integrity. (See:
data origin authentication service, data integrity service,
digitized signature, electronic signature, signer.)
(I) "Data appended to, or a cryptographic transformation of, a
data unit that allows a recipient of the data unit to prove the
source and integrity of the data unit and protect against forgery,
e.g. by the recipient." [I7498 Part 2]
(C) Typically, the data object is first input to a hash function,
and then the hash result is cryptographically transformed using a
private key of the signer. The final resulting value is called the
digital signature of the data object. The signature value is a
protected checksum, because the properties of a cryptographic hash
ensure that if the data object is changed, the digital signature
will no longer match it. The digital signature is unforgeable
because one cannot be certain of correctly creating or changing
the signature without knowing the private key of the supposed
signer.
(C) Some digital signature schemes use a asymmetric encryption
algorithm (e.g., see: RSA) to transform the hash result. Thus,
when Alice needs to sign a message to send to Bob, she can use her
private key to encrypt the hash result. Bob receives both the
message and the digital signature. Bob can use Alice's public key
to decrypt the signature, and then compare the plaintext result to
the hash result that he computes by hashing the message himself.
If the values are equal, Bob accepts the message because he is
certain that it is from Alice and has arrived unchanged. If the
values are not equal, Bob rejects the message because either the
message or the signature was altered in transit.
(C) Other digital signature schemes (e.g., see: DSS) transform the
hash result with an algorithm (e.g., see: DSA, El Gamal) that
cannot be directly used to encrypt data. Such a scheme creates a
signature value from the hash and provides a way to verify the
signature value, but does not provide a way to recover the hash
result from the signature value. In some countries, such a scheme
may improve exportability and avoid other legal constraints on
usage.
|