Evidence method
Evidence method
What we record, how we protect it and how anyone can verify it years later, without access to our system.
Version 2026-09-v1
Principle
We design every step so that if, years from now, someone claims a message never arrived or an annex was different, an expert or a judge can establish what happened without having to trust Notificado. When two technical options are possible, we choose the one that makes independent verification easier.
Freezing the content
Before sending, we build the exact message that will go out (an .eml file with headers, text and attachments) and store it unmodified. What is sent is, byte for byte, what was frozen.
SHA-256 fingerprints
We compute the SHA-256 fingerprint of the whole message and of each attached document. Any change to a file, however small, produces a different fingerprint. The fingerprints appear on the proof of delivery.
Timestamps from at least two authorities
The fingerprints are timestamped using the standard RFC 3161 protocol by at least two mutually independent timestamp authorities. We keep each timestamp token (.tsr) exactly as the authority issued it. A timestamp proves the content existed, identical, at that moment; two independent timestamps avoid depending on a single provider.
One fingerprint, two independent authorities, and two tokens kept exactly as they arrived. Sending
The message leaves DKIM-signed from our domain. The documents are attached and, in addition, each recipient gets a personal download link. The attachment proves which content arrived; the link proves access.
Events we record
- Acceptance by the recipient's mail server: SMTP response, remote server IP address and time.
- Bounces and delivery failures, with the response received.
- Document downloads through the personal link: time, IP address and browser.
- The recipient's acknowledgement of receipt, when given.
- Message opens.
We keep each provider's raw response, not only the parsed fields, so the event can be reconstructed.
Opens are an indicio, not proof
Some mail services download a message's images automatically, without a person opening it. That is why an open is always recorded and shown as an indicio, never as proof of reading.
Hash chain
Events are never modified or deleted: they are only appended. Each event stores the previous event's fingerprint, and its own fingerprint is computed over that fingerprint and its content. Altering, removing or reordering an event breaks the chain from that point, and verification names the first affected event.
Each event carries the fingerprint of the one before: alter event 2 and its fingerprint changes, so event 3 no longer matches. Daily anchor
Every night we compute a single fingerprint (Merkle root) of all the day's events and timestamp it with every authority. So not even we could rewrite a whole day unnoticed.
Every night the day's events fold into a single Merkle root, which is timestamped. Immutable storage
Frozen messages, documents, timestamps, proofs of delivery and raw provider responses are kept in write-once (WORM) storage in compliance mode for 10 years. During that period nobody can delete or overwrite them, not even a Notificado administrator.
Legal time
Our servers synchronize with Colombian legal time as broadcast by the Instituto Nacional de Metrología. We store every time in UTC and display it in Colombian time (America/Bogota), with UTC beside it.
Proof of delivery and evidence package
The proof of delivery (constancia de entrega) is a PDF with the send details, fingerprints, events and timestamps, digitally signed (PAdES) and with a QR code leading to the public verification page. The evidence package (.zip) holds the original message, the documents, the event logs in raw and readable form, the timestamp tokens, the constancia and offline verification instructions.
The constancias' signing identity
Every constancia carries a PAdES signature made with the key of VENOMTECH S.A.S. (NIT 901.991.367-7). Its X.509 is our own (self-issued): the signature proves the PDF has not changed since Notificado signed it; it is not an accreditation by any body. To check the signature is ours, compare the signer's SHA-256 fingerprint — `openssl x509 -fingerprint -sha256` on the bundle's firma/cert-chain.pem prints it, as does the PDF reader's signature panel — with the one published here. They must be identical; a new key will be published here without withdrawing the earlier ones.
sha256 Fingerprint=30:53:AB:A4:2B:96:6E:5F:B6:FC:F4:55:2C:82:B4:94:4F:A5:C1:AF:C0:85:18:25:1E:D7:95:B3:4E:D0:14:56 CN=Notificado — firma de constancias, serialNumber=901991367-7, organizationIdentifier=NTRCO-901991367-7, O=VENOMTECH S.A.S., C=CO 2026-09-24T21:30:16Z → 2036-09-24T21:30:16ZHow to verify offline
With the evidence package and standard tools, without accessing Notificado:
- Compute the SHA-256 fingerprint of the message and each document, and compare it with the one on the constancia.
- Verify each timestamp with OpenSSL against the trust chain (.pem file) of the authority that issued it.
- Recompute the event chain following the package's instructions; the first fingerprint that does not match points to the altered event.
Exact file names are listed in the package's README.
Terminal sha256sum mensaje.eml openssl ts -reply -in sello-1.tsr -text openssl ts -verify -data mensaje.eml -in sello-1.tsr -CAfile autoridad-1.pemOnline verification
On the verification page anyone can enter a constancia's code or load the PDF: its fingerprint is computed in their own browser, the file is not sent to our servers, and the page answers whether the constancia is authentic and unaltered. We only show date, status and fingerprint; never the message content or the recipient's personal data.
Scope
Notificado is not an accredited digital certification authority. This method describes how we produce and keep the evidence; its probative value and the validity of the notification are for the judge of the case to decide. Each version of this document is published with its version number, and each constancia states the method version it was produced under.
Verify it yourself
With the evidence package and OpenSSL, check the message's fingerprint and each timestamp without any access to Notificado, or upload the constancia to the verification page.