Skip to content

Commit fcb112d

Browse files
committed
servers.md: update authentication schemes
1 parent bd479b5 commit fcb112d

File tree

1 file changed

+47
-11
lines changed

1 file changed

+47
-11
lines changed

servers.md

+47-11
Original file line numberDiff line numberDiff line change
@@ -7,26 +7,62 @@
77
| - Germany | <ircs://irc.de.hackint.org:6697> |
88
| - Netherlands | <ircs://irc.nl.hackint.org:6697> |
99

10-
We would like to encourage you to authenticate via one of the following schemes:
10+
## Authentication
11+
12+
We would like to encourage you to authenticate via [SASL], so you will
13+
already be authenticated before your client tries to join channels,
14+
which results in a smoother connection setup.
1115

1216
- password based (*easy*)
13-
- SASL PLAIN
14-
- certificate based (*moderately difficult*)
15-
- SASL ECDSA-NIST256P
16-
- SASL EXTERNAL
17+
- [SASL PLAIN]
18+
- certificate based (*moderately difficult*)
19+
- SASL ECDSA-NIST256P-CHALLENGE (atheme-specific)
20+
- [SASL EXTERNAL]
1721
- CertFP
1822

19-
We're currently using SHA256 fingerprints for SASL External and CertFP.
23+
### Certificate Fingerprint (SASL External, CertFP)
2024

21-
Enrolling your fingerprint is just a matter of calling:
25+
To enroll the fingerprint of the certificate you are currently connected
26+
with call:
2227

2328
```
2429
/msg NickServ cert add
2530
```
2631

27-
This will automatically configure the fingerprint of the client
28-
certificate you are currently connected with. You will now
29-
automatically be identified by NickServ on every connect, when
30-
you present your client certificate.
32+
Presenting the client certificate on connect will subsequently
33+
authenticate you against services.
34+
35+
We're currently using SHA256 fingerprints for SASL External and CertFP.
36+
37+
### Public Key (ECDSA-NIST256P-CHALLENGE)
38+
39+
If you are planning to use ECDSA-NIST256P, generate `prime256v1` ecparams
40+
and store the public key within the services. During the connection phase
41+
a challenge-based authentication will happen.
42+
43+
#### Generate the ecparams and retrieve the public key
44+
45+
```
46+
$ openssl ecparam -genkey -name prime256v1 -out ecdsa.pem
47+
$ openssl ec -noout -text -conv_form compressed -in ~/.weechat/ecdsa.pem | grep '^pub:' -A 3 | tail -n 3 | tr -d ' \n:' | xxd -r -p | base64
48+
```
49+
50+
#### Configure the public key in your account
51+
52+
```
53+
/msg NickServ set property pubkey <pubkey>
54+
```
55+
56+
#### Showing your configured public key
57+
58+
```
59+
/msg NickServ taxonomy
60+
```
61+
62+
## Transports
3163

3264
Other ways to connect exist, they use transports, check the menu for that.
65+
66+
[SASL]: https://ircv3.net/docs/sasl-mechs
67+
[SASL PLAIN]: https://tools.ietf.org/search/rfc4616
68+
[SASL EXTERNAL]: https://tools.ietf.org/html/rfc4422#appendix-A

0 commit comments

Comments
 (0)