Added general-purpose API for AEAD algorithms, and GCM implementation.
[BearSSL] / samples / README.txt
1 This directory contains sample code for using BearSSL.
2
3 client_basic.c
4
5 A sample client code, that connects to a server, performs a SSL
6 handshake, sends a basic HTTP GET request, and dumps the complete
7 answer on stdout.
8
9 Compile it against BearSSL headers (in the ../inc directory) and
10 library (libbearssl.a). This code will validate the server
11 certificate against two hardcoded trust anchors.
12
13 server_basic.c
14
15 A sample SSL server, that serves one client at a time. It reads a
16 single HTTP request (that it does not really parse; it just waits for
17 the two successive line endings that mark the end of the request),
18 and pushes a basic response.
19
20 Compile it against BearSSL headers (in the ../inc directory) and
21 library (libbearssl.a). Depending on compilation options (see the
22 code), it will use one of several certificate chains, that exercise
23 various combinations of RSA and EC keys and signatures. These
24 certificate chains link to the trust anchors that are hardcoded
25 in client_basic.c, so the sample client and the sample server can
26 be tested against each other.
27
28 custom_profile.c
29
30 A sample C source file that shows how to write your own client or
31 server profiles (selections of cipher suites and algorithms).
32
33
34 The .pem files are certificate and keys corresponding to the chains
35 and anchors used by the sample client and server. They are provided
36 for reference only; these files are not used by the examples.