GitHunt
TL

tls-n/nss-tlsn

Mozilla's NSS library with TLS-N implementation.

TLS-N implementation for NSS

This is the prototype TLS-N implementation based on Mozilla's NSS library.

Main Library

The main library file can be found inside nss/lib/ssl/tlsproof.c. Here the most important functions are:

tlsproof_addMessageToProof
This function adds a record to the evidence calculation.

SSL_TLSProofRequestProof
The requester calls this function to trigger the evidence request.

tlsproof_handleMessageRequest
The function used by the generator to finalize the evidence.

tlsproof_handleMessageResponse
Uses the supplied evidence to create a proof according to the user's wishes.

SSL_TLSProofCheckProof
Verifies a given proof.

Test Applications

We have also provided multiple test applications, such as:

  • A standalone verifier that verifies proofs.
  • A client and server application to test TLS-N with a specified amount of random traffic.
  • A benchmarking app for TLS-N.

Test-CA

For testing purposes we provide a Test CA with a test certiface for tls-n.testserver inside the ca folder. The certificate store has an empty password. You have to resolve this hostname accordingly in DNS.

Languages

C70.7%C++15.9%Assembly4.0%Shell2.4%Python1.9%Makefile1.6%Objective-C1.2%HTML0.9%Roff0.6%Perl0.2%CMake0.1%M40.1%JavaScript0.1%Java0.1%Lex0.0%Perl 60.0%Yacc0.0%Batchfile0.0%Ada0.0%

Contributors

Mozilla Public License 2.0
Created August 10, 2017
Updated April 14, 2022