For same chunk of data, which one is faster? Public key encryption or digital signature? Confidentiality is not important. I am trying to achieve non-repudiation for the communication.
Information Security Stack Exchange is a question and answer site for information security professionals. It only takes a minute to sign up.Sign up to join this community
Whatever you use to create a digital signature will actually use a hashing function inside it. The digital certificate itself won't touch the 100 Gig of data, and isn't worth thinking about yet.
What you should care about is the hashing function used to create the hash that the (optional) private key in the certificate will sign. Encryption is probably irrelevant here.
The answer you need is: Use a SHA1 or SHA2 hash over the data.
If you want to see a comparison of various hashing functions, see this. Note that some of those hashing functions listed are insecure for cryptographic purposes and should't be relied upon
Using Public Key(of the receiver) to encrypt the content will NOT GIVE YOU Non-Repudiation. It only gives INTEGRITY of the content that you know ONLY the legitimate receiver can read the content.
If you want Non-Repudiation that Sender cannot REPUDIATE that he did not send the content, then you will have to sign the content using Private Key of the Sender(aka Digital Signature). Therefore sender cannot deny NOT sending the data, since the signature can be verified using the sender's public key.