[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
12.3 TLS Authentication Methods
In GnuTLS authentication methods can be implemented quite easily. Since the required changes to add a new authentication method affect only the handshake protocol, a simple interface is used. An authentication method needs only to implement the functions as seen in the figure below.
The functions that need to be implemented are the ones responsible for interpreting
the handshake protocol messages. It is common for such functions to read data from
one or more credentials_t
structures(17) and write data, such as certificates, usernames etc. to auth_info_t
structures.
Simple examples of existing authentication methods can be seen in auth_psk.c
for PSK ciphersuites and auth_srp.c
for SRP ciphersuites. After implementing these functions
the structure holding its pointers has to be registered in gnutls_algorithms.c
in the _gnutls_kx_algorithms
structure.