E-signatures
E signature security checklist
An e signature security checklist has three stages: before sending, match the identity check to the document and keep sensitive detail out of the invitation; while the link is live, protect the link and the inboxes it travels through; after signing, check the certificate, verify the PDF and store both under access control. Most signing incidents start in the email around a signature, not in the cryptography inside it.
Nuwan Madhusanka · Co-founder
7 min read · Published
A useful e signature security checklist is organised by when you can act. Before sending, you decide how strongly each signer is verified and what the invitation reveals. While the link is live, you protect it and watch for failures. After signing, you confirm the evidence is intact and store the file somewhere controlled. The signing service enforces a lot on its own, but it cannot choose the right check for you, spot a lookalike email address, or decide where the signed contract lives.
This checklist assumes the documents are ordinary business agreements. Regulated documents may have their own rules on identity and storage.
Before sending: verify identity at the right level
Start with your own account. Anyone who gets into it can create envelopes, void them and download signed documents. The Australian Cyber Security Centre calls multi-factor authentication one of the most effective ways to protect accounts against unauthorised access, so turn it on for the email account and the sign-in you use.
Then confirm each signer’s address from somewhere other than the thread you are replying to. The ACSC describes business email compromise as criminals using email to abuse trust in business processes, and a changed character in a counterparty’s address is the classic version. Every check that follows starts from that address.
Now choose the check by what the document is worth:
Email link only for low value documents to addresses you already deal with.
Emailed one-time code for contracts to personal addresses. The mutual NDA envelope uses it for both companies: a six digit code, valid ten minutes, redeemable once.
Access code where you will speak to the signer anyway. In the residential lease, the agent read each tenant’s code out by phone. The code is at least four characters and the service never returns it, so it only works if it travels by a different route than the link.
The trade-offs between the three are set out in full in how to verify a signer’s identity.
Finally, write a plain title and message. When a code is set, the page a signer reaches before passing it shows the title and the recipient’s name and email, and nothing about the document. That page is visible to whoever holds the link, and the message is visible to whoever reads the invitation email.
While it is live: protect the link
A signing link is a credential. The invitation says so in its footer: the link is personal and should not be forwarded. Three habits keep it that way.
Resend, never forward. Resend issues the signer a new link, so the one in the old email stops working. It also clears a lockout and records a resent event.
Read failures. The audit trail records each failed verification with its time and IP address. Five wrong codes lock that recipient for fifteen minutes. One lockout is usually a signer mistyping. Several, or a lockout on a signer who says they never tried, means someone else may have the link, and the fix is to void and send a new envelope.
Void mistakes at once. Voiding expires every outstanding link, records a voided event and emails the people still holding a live link. Anyone opening one then sees that the document was withdrawn by the sender.
Guessing is throttled per recipient. Five failed access code or one-time code attempts lock that recipient for 15 minutes, at most five one-time codes are issued per ten minutes, codes are stored as salted scrypt hashes, and a signing session lasts 30 minutes before the check is repeated. NIST SP 800-63B requires a verifier to limit consecutive failed attempts on one account to no more than 100, so the lockout here is far stricter, and it applies per recipient.
Links also end on their own. Every envelope expires 30 days after creation, and an expired link returns a message that the signing request has expired.
In person signing deserves care. When you host a signer’s turn from the status page, as the lender does in the loan agreement envelope, the emailed check is waived for that session and the event records who hosted it. Use it only with the signer in front of you.
After signing: check the certificate
The certificate of completion is the quickest security review. For each signer, confirm the identity method is the one you chose, printed as Email link, Email link + access code, or Email link + emailed one-time code. Check the IP address is plausible and the consent timestamp sits just before the signing time.
Then read the certification line. PAdES-SHA256-DocMDP means the PDF was certified. The words “with RFC 3161 timestamp” appear only when a timestamp authority attached a token, and in the current setup none does. Do not describe a signed file as independently timestamped.
Do not compare the certificate’s two document hashes with a hash of the file you downloaded. “Document hash as sent” is the uploaded file, and “Fully signed hash” is the stamped file before certification, so neither will match the final download.
Verify the file itself
Open the signed PDF in a reader that shows signatures. Certification at DocMDP P=1 means no changes are permitted after certification, so an edited copy shows as altered. The steps for common readers are in how to check if a PDF is signed. If a counterparty later sends you back a copy, open that one too rather than assuming it is the file they received, because a certified file only protects you when someone actually checks it.
Certification never degrades quietly. If it fails, the envelope is marked failed and the sender is emailed, rather than an uncertified PDF being sent out.
Audit the trail
The status page walks the audit trail and shows either “Hash chain verified” or “Chain broken at event n”. Each row stores a sha256 hash computed over the event and the previous row’s hash, so altering one row breaks every link after it. SHA-256 is one of the hash algorithms specified in FIPS 180-4, whose stated purpose is detecting whether a message has changed. The hash chain page explains the mechanism.
The trail also settles who typed what. A sender cannot pre-fill any field, so every typed value is entered by the recipient it belongs to, under that recipient’s own signing event. In the vehicle sale envelope, the odometer reading sits in the seller’s field and the amount paid in the buyer’s, so neither side can later claim the other wrote it.
Know the gap: downloads are not recorded in the trail. Who opens the signed file later is invisible to it.
Store the file
The completion email sends the certified PDF to every signer and the sender. Save it with the certificate in storage with access control and a backup, not in a personal inbox. APP 11 asks for reasonable steps, technical and organisational, to protect personal information from misuse, loss and unauthorised access, and for it to be destroyed or de-identified once no longer needed unless a law requires keeping it.
The sixteen checks below put all of this in order, from before you send to after you file.
Common mistakes
Pasting the access code into the covering email. Both halves then sit in one inbox.
Forwarding the invitation to a signer who lost it. Two live copies of a credential.
Trusting the reply-to address. Confirm addresses out of band.
Ignoring a lockout. Treat an unexpected one as a possible compromise.
Calling the PDF timestamped. It is certified, not timestamped.
Leaving signed files in email. Every recipient’s inbox is now part of your storage.
Build it
The e-sign security page describes what the service enforces. Access codes and one-time codes are salted scrypt hashes compared in constant time. A verified signer’s session lasts 30 minutes. The trail records 18 event types on a sha256 hash chain, and the finished PDF is certified at DocMDP P=1. There is no approver or cc role, and the expiry is fixed at 30 days. The e-signature tutorial covers setting identity checks when you add each signer.
| Stage | Check | Why it matters |
|---|---|---|
| Before | Your own account uses a strong passphrase and multi-factor authentication | Anyone in your account can create, void and download envelopes |
| Before | Each signer's email address is confirmed from a source other than the email thread | A lookalike address sends the link to the wrong person |
| Before | Identity check chosen by document value: email link, emailed one-time code or access code | The certificate records which check applied, and a weak one cannot be upgraded later |
| Before | Access codes shared by phone or in person, never in the covering email | A code in the same inbox as the link adds nothing |
| Before | Title and message contain no sensitive detail | The title shows to whoever holds the link before any check, and the message to whoever reads the invitation |
| Before | Signers are called ahead so they expect the request | A request nobody expected is easier to fake |
| During | Stuck signers get Resend, not a forwarded email | Resend replaces the link and kills the old one |
| During | Failed verification attempts on the status page are read, not ignored | Repeated failures and a lockout can mean somebody other than the signer has the link |
| During | A request sent in error is voided at once | Voiding expires outstanding links and tells those signers it was withdrawn |
| During | In person signing is hosted only when the signer is actually present | It waives the emailed check for that session |
| After | Certificate lists every signer with the expected identity method and a plausible IP address | An unexpected method or location is the first sign of a problem |
| After | Hash chain shows as verified on the status page | A broken chain names the event where the trail stops agreeing with itself |
| After | Signed PDF opened in a reader shows an intact certification | DocMDP P=1 means any later change is flagged |
| After | Certification line read correctly: no timestamp phrase means no RFC 3161 token | Avoids claiming a third party timestamp that is not there |
| After | PDF and certificate stored together with access control and a backup | Downloads are not recorded in the signing audit trail |
| After | Retention period set and old records destroyed or de-identified | Personal information kept past its purpose is a breach waiting to happen |
A finished example
To sign an NDA online you upload the finished PDF, place fields for each party and send one link to each signer. This page shows exactly that, on the mutual NDA between Sable Robotics and Northwind Components from the documents examples: initials on the first page, a signature block for each company on the second, and a six digit emailed code before either side can open it.
Read the sign an nda onlineQuestions people ask
What is the single most important e signature security check?
Confirming the signer's email address from a source other than the email thread you are replying to. Every identity check here starts from that address, including the one-time code, which lands in the same inbox. If a scammer has slipped a lookalike address into the conversation, every later check will faithfully verify the wrong person. A thirty second phone call prevents it.
Are signing links safe to send by email?
They are designed for it, with limits. The link identifies a recipient but, when a code is set, opens only a verification page showing the title and the signer's name. Links are personal, expire with the envelope after 30 days and die when resent or voided. With the email link alone and no code, whoever holds the link reaches the document, so choose a code for anything sensitive.
What happens if someone guesses at an access code?
Five wrong attempts lock that recipient for fifteen minutes, and each failure is recorded in the audit trail with its time and IP address. Codes are stored as salted scrypt hashes and never returned by the service, so there is nothing to leak from the sender's side. NIST's authentication guideline sets a ceiling of 100 consecutive failures, so five is strict.
Is the signed PDF encrypted?
Certification is not encryption. The finished PDF is certified with a PAdES signature at DocMDP P=1, which makes any later change detectable but does not stop anyone who has the file from reading it. Confidentiality after signing depends on where the file goes: the completion email sends it to every signer and the sender, and your storage decides who else can open it.
Does the certificate prove who signed?
It proves which check each signer passed, when they signed, the IP address, their consent to sign electronically, and the hash of the document they saw. It does not prove who held the device. That is why the checks before sending matter more than the reading afterwards: the certificate can only record the strength of the identity check you chose.
Do I need a timestamp from a timestamp authority?
An RFC 3161 token is a third party's statement that the file existed at a given time, and it matters most for long term validation. The signing service can attach one, but no timestamp authority is configured in the current setup, so signed PDFs carry none. The certificate's algorithm line reads PAdES-SHA256-DocMDP without the timestamp phrase, which says so honestly.
How long does a verified signer stay signed in?
Thirty minutes. After passing a code check, the signer holds a session bound to their own recipient record, kept in memory only, so refreshing the page sends them back through verification. OWASP's session guidance puts common idle timeouts at 2 to 5 minutes for high value applications and 15 to 30 for lower risk ones, and ties absolute limits to how long a task takes, which here is one signing sitting.
Written by
Nuwan Madhusanka · Co-founder
Works across the builders and the export paths: how a form becomes a PDF, how a flyer canvas becomes a print file, and how a signed document carries its audit trail.
LinkedIn profileWritten and checked by the OneCraft team. Last checked .
Make your own signing flow
Describe what you need and the generator writes and designs it, then you edit anything you like.
See what it can makeRead next
How to verify a signer's identity
An emailed link proves somebody reached an inbox. A code proves they also held something you handed over separately, or that they reached the same inbox twice. Choosing between them is a question about what the document is worth, not about which sounds most secure.
E-signature audit trail requirements: what must be logged
An e-signature audit trail has to show who signed, that they meant to, that they agreed to sign electronically, when each step happened, and that the document has not changed since. Laws rarely list event names; they ask for a reliable method and a record that stays complete, unaltered and accessible, so the trail is judged on whether it can answer those questions later.
E-signature for freelancers
A freelance contract is the simplest signing case there is: one document, one signer, one deadline. The craft is in what you initial, what you write in the covering message, and what you do on day four when nothing has happened.
For the steps inside the builder, read the guideon this topic.