From a08baa74ab8be8942f63ee2db2792833b6a90be1 Mon Sep 17 00:00:00 2001 From: Michael Czigler <37268479+mcpcpc@users.noreply.github.com> Date: Tue, 22 Sep 2020 09:43:26 -0400 Subject: Update README.md --- README.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/README.md b/README.md index 4295687..e367bc0 100644 --- a/README.md +++ b/README.md @@ -24,6 +24,7 @@ usage: kirc [-s hostname] [-p port] [-c channel] [-n nick] [-r real name] [-u us -n nickname (required) -u server username (optional) -k server password (optional) +-a SASL PLAIN authentication token (optional) -r real name (optional) -v version information -V verbose output (e.g. raw stream) @@ -98,6 +99,24 @@ socat tcp-listen:6667,reuseaddr,fork,bind=127.0.0.1 ssl::6697 kirc -s 127.0.0.1 -c 'channel' -n 'name' -r 'realname' ``` +## SASL Plain Support + +In order to connect using SASL authentication, the user must provide the required token during the initial connection. If the authentication token is base64 encoded and, therefore, can be generated a number of ways. For example, using Python, one could use the following: + +```shell +python -c 'import base64; print(base64.encodebytes(b"nick\x00nick\x00password"))' +``` + +For example, lets assume an authentication identity of `jilles` and password `sesame`: + +```shell +$ python -c 'import base64; print(base64.encodebytes(b"jilles\x00jilles\x00sesame"))' + +b 'amlsbGVzAGppbGxlcwBzZXNhbWU=\n' + +$ kirc -n jilles -a amlsbGVzAGppbGxlcwBzZXNhbWU= +``` + ## Contact For any further questions or concerns, feel free to reach out to me on `#kirc` -- cgit v1.2.3