I understand that non-repudiation is based upon public key cryptography and the principle of only the sender knowing their own private key. However, what is a condition, if any, of non-repudiation that can never be proven through digital analysis? This digital analysis would include inspecting the message and logs. I am assuming that "I was hacked" will not work here because we have access to logs.
3 Answers
Non-repudiation is not done with public keys; non-repudiation is done with a legal framework which defines responsibilities and duties. Though details depend on the jurisdiction, most will more or less follow the following scheme:
A signature that you perform is binding as long as you did it. That's the definition. The rest is about what happens in case of litigation, and you claim that you did NOT do it.
An electronic signature is one that is made with some mechanism where electrons are involved, but not ink on paper.
Local laws usually shift the burden of proof. If you simply write your name at the end of an email, then that is legally a binding signature, but in case of litigation, it is up to your adversary to demonstrate that you really signed the email. That is, a name at the end of an email will effectively bind you only if it can be positively proven that you wrote that email as it is. That proof can take a lot of forms; e.g., it could be a witness, who saw you write that email.
Local laws may recognize the existence of strong signature systems where the burden of proof is reversed: the signature system is deemed robust by default; if you want to repudiate your signature (i.e. if you claim that you did not do it), then you have to do the work and find proof of framing/hacking/whatever (e.g. you find a witness who saw you hiking in Greenland, far from any network connection, at the time the signature was purportedly generated).
Local law systems will usually grant the "strong" status to a signature system only after a complex assessment process of the inner workings of the said signature systems. This will involve a lot of paper and certifications and hordes of auditors, and it will be expensive. Most local law systems will require that alleged strong signature systems use asymmetric cryptography with public keys and so on (this is a prerequisite, but not sufficient in itself to achieve the "strong signature" legal status). This is where cryptography matters: it is a tool which may help achieve a given goal within a given legal framework.
In any case, it would be inordinately optimistic to assume that "access to the logs" would reliably settle the question of whether hacking occurred or did not occur. Logs can be erased; logs can be faked.
-
2
PKI can be used to generate digital signatures. These can be used to provide non-repudiation. As referred to in the previous answer, the burden of proof is what is important where non-repudiation is concerned.
The ability to prove non-repudiation which has been assured through cryptography (specifically PKI) can be aided by demonstrating that the bearer of the private key used to generate the signature is the only person who has access to the private key. This is usually implemented by the generation and storage of the private key using a hardware security module (HSM) or similar.
HSMs come in a variety of forms. Bulk key generators and crypto-accelerators are used for SSL / TLS offloading. Network HSM for generation and storage of keys in distributed key management frameworks, such as ATM networks. They can also come in the form of small, portable devices, like smart cards and USB tokens.
These types of devices are usually chosen where non-repudiation by cryptography is required.
Essentially where non-repudiation is a requirement it important to conduct a full and detailed risk assessment of the solution, including all business areas which will utilize the application, in order to capture all risks, whether they be operational, business, legal / regulatory, or technology.
Decades ago a group of cryptographers invented the concept of non-repudiation, and they claimed to enforce it in real life with just technical means (a magical "non-repudiation" bit). However, in real life people are free to deny whatever they want, and law courts rule conflicts between parties, not bits.
Here are two arguments for signature repudiation which have been used in actual court cases in EU, and where digital forensics didn't help:
my eID smartcard has the same PIN codde for authentication and signature, so when the application asked me for my PIN I thought I was authenticating, not signing something.
when I signed this document I wanted to express that I had read it, not that I agreed with its content.