Objective 1.4High Priority9 min read

Digital Signatures

A cryptographic mechanism using asymmetric keys to verify authenticity and integrity of digital messages or documents. The sender signs with their private key; recipients verify with the sender's public key, providing non-repudiation.

Understanding Digital Signatures

Digital signatures are the cryptographic equivalent of handwritten signatures—but stronger. They prove that a message came from a specific sender (authenticity), hasn't been modified (integrity), and the sender cannot deny sending it (non-repudiation).

How it works: 1. Sender creates hash of the message 2. Sender encrypts the hash with their private key (this is the signature) 3. Signature is attached to the message 4. Recipient decrypts signature with sender's public key 5. Recipient hashes the message and compares

If the hashes match, the signature is valid—the message is authentic and unmodified.

Why This Matters for the Exam

Digital signatures are fundamental to internet security and heavily tested on SY0-701. They're used in code signing, email security (S/MIME), document signing, SSL/TLS certificates, and software distribution.

The exam tests the key direction (sign with private, verify with public), the security properties provided (authenticity, integrity, non-repudiation), and when digital signatures are appropriate.

Understanding digital signatures connects to PKI, certificates, and trust concepts. A signature is only trustworthy if you trust the public key actually belongs to the claimed sender—this is what certificates provide.

Deep Dive

The Digital Signature Process

Signing (Sender):

  • 1.Create message to send
  • 2.Hash the message (SHA-256)
  • 3.Encrypt hash with sender's PRIVATE key
  • 4.Attach encrypted hash (signature) to message
  • 5.Send message + signature

Verification (Recipient):

  • 1.Receive message + signature
  • 2.Decrypt signature with sender's PUBLIC key
  • 3.Independently hash the received message
  • 4.Compare decrypted hash to calculated hash
  • 5.If match → Signature valid

What Digital Signatures Provide

PropertyHow It's Achieved
AuthenticityOnly private key holder could create signature
IntegrityAny message change invalidates signature
Non-repudiationSender cannot deny signing (they have the only private key)

What Signatures Do NOT Provide

  • Confidentiality — Message is not encrypted (only signed)
  • For confidentiality + authenticity: Encrypt AND sign

Why Hash First?

Efficiency: Hashing creates fixed-size data to sign

  • 10KB document → 256-bit hash → sign 256 bits
  • Much faster than signing entire document

Security: Asymmetric operations are slow

  • Hash once (fast)
  • Sign hash (fast on small data)
  • Overall: fast signing of any size document

Signature Algorithms

AlgorithmBased OnStatus
RSA SignaturesRSA encryption✅ Widely used
DSADiscrete logarithm✅ Government standard
ECDSAElliptic curves✅ Efficient, modern
EdDSA (Ed25519)Edwards curves✅ Newest, very fast

Digital Signatures Use Cases

Code Signing

  • Software developers sign executables
  • OS verifies signature before running
  • Prevents malware impersonating legitimate software

Email Signing (S/MIME, PGP)

  • Sender signs email
  • Recipient verifies sender identity
  • Detects tampering of email content

Document Signing

  • Legal documents signed digitally
  • PDF signatures
  • Contract signing platforms

Certificate Signing

  • CAs sign certificates with their private key
  • Browser verifies CA signature
  • Establishes trust chain

SSL/TLS Handshakes

  • Server proves identity via signed certificate
  • Client verifies signature against trusted CAs

Encryption vs. Signature Key Direction

OperationKey UsedPurpose
EncryptRecipient's PUBLICConfidentiality
DecryptRecipient's PRIVATERead encrypted data
SignSender's PRIVATENon-repudiation
VerifySender's PUBLICConfirm authenticity

Key insight: Encryption and signing use keys in OPPOSITE directions.

  • Encryption: Encrypt with recipient's public key
  • Signing: Sign with your own private key

How CompTIA Tests This

Example Analysis

Scenario: A software company distributes an application. Users need assurance that: 1. The software actually came from the company 2. The software hasn't been modified since release 3. The company cannot deny releasing it

Solution: Code Signing with Digital Signature

Implementation: 1. Company creates hash of the application 2. Company signs hash with their PRIVATE key 3. Signature attached to application 4. User downloads application + signature 5. User's OS verifies signature using company's PUBLIC key

What this provides:Authenticity: Only the company has the private key • Integrity: Any modification invalidates the signature • Non-repudiation: Company cannot claim they didn't sign it

What if verification fails? • OS warns user: "Unknown publisher" or "Modified software" • User decides whether to trust and run • Malware typically fails signature verification

Key Terms to Know

digital signaturesnon-repudiationauthenticityintegrityasymmetric cryptographyprivate key signingpublic key verificationDSA

Common Mistakes to Avoid

Signing with public key—WRONG. Sign with PRIVATE key, verify with PUBLIC key. This is the opposite direction from encryption.
Thinking signatures provide confidentiality—signatures prove authenticity and integrity, NOT confidentiality. The message is readable; it's just signed.
Confusing signing the message vs. signing the hash—we sign the HASH, not the entire message. This is for efficiency (smaller data to sign).
Forgetting the trust problem—a signature is only meaningful if you trust the public key. Without certificates/PKI, anyone could claim any identity.

Exam Tips

Sign with PRIVATE key, Verify with PUBLIC key. This is opposite from encryption direction.
Digital signatures provide: Authenticity, Integrity, Non-repudiation. NOT confidentiality.
Hash the message first, then sign the hash. This is faster than signing large messages.
Code signing = Application of digital signatures to software.
Signatures need trust anchors. A signature means nothing if you don't trust the public key belongs to who they claim.

Memory Trick

"SIGN-PRIVATE, VERIFY-PUBLIC"

The sender SIGNS with their PRIVATE key (only they have it) Anyone VERIFIES with the PUBLIC key (everyone has it)

  • What Signatures Give You: "AIN"
  • Authenticity — Proves who sent it
  • Integrity — Proves it wasn't changed
  • Non-repudiation — Sender can't deny it

Not Confidentiality! "AIN" not "CAIN"

Process Memory: "HASH-SIGN-SEND" 1. HASH the message 2. SIGN the hash (encrypt with private key) 3. SEND message + signature

Verification: "DECRYPT-HASH-COMPARE" 1. DECRYPT signature (with public key) 2. HASH the received message 3. COMPARE the two hashes

Test Your Knowledge

Q1.When creating a digital signature, which key does the sender use?

Q2.Which security properties does a digital signature provide?

Q3.Why is a hash created before signing a document?

Want more practice with instant AI feedback?

Practice with AI

Continue Learning

Ready to test your knowledge?

Practice questions on digital signatures and other Objective 1.4 concepts.

Start Practice