summary refs log tree commit diff stats
path: root/v-2
diff options
context:
space:
mode:
authorSoniEx2 <endermoneymod@gmail.com>2018-09-14 02:42:25 -0300
committerSoniEx2 <endermoneymod@gmail.com>2018-09-14 02:42:25 -0300
commit791ab635f6558c2ec67570265ef9cffb457f9af3 (patch)
treed12f9979524793023b9fe96fabb6df5cf7a3f174 /v-2
Initial commit. Add all known versions of newclog.
Version 0 is the latest.

Version -1 is the second latest.

Version -2 is the third latest.

Versions -3 and back, I didn't manage to recover.
Diffstat (limited to 'v-2')
-rw-r--r--v-277
1 files changed, 77 insertions, 0 deletions
diff --git a/v-2 b/v-2
new file mode 100644
index 0000000..729f2bd
--- /dev/null
+++ b/v-2
@@ -0,0 +1,77 @@
+CAP prefix/clog

+===============

+

+Copyright (c) Soni L. \<fakedme plus irkv3 at gmail dot com>

+

+This capability provides a mechanism for identifying and conveying a cryptographically secured list of messages to IRC clients.

+

+This specification also suggests a mechanism by which IRC clients can sync logs, using the information provided by this capability.

+

+Cap syntax

+----------

+

+The capability shall be specified as

+

+    prefix/clog=hash_type,hash_type/tag,tag,tag

+

+Example:

+

+    prefix/clog=sha1,sha256/server-time

+

+`server-time` is always implicitly specified, and should be omitted.

+

+The `HASH` S2C command

+----------------------

+

+The `HASH` command shall be sent for hashes associated with a channel.

+

+Each hash must be a cryptographic hash. Non-cryptographic hashes must be ignored. Broken hash algorithms should be avoided. MD5 is explicitly disallowed and must not be used.

+

+The counter must be able to store numbers in the `0..2^62-1` range.

+

+Syntax:

+

+    HASH #channel :hash_type=counter/hash,type=counter/hash,...

+

+Example:

+

+    >>> JOIN #channel

+    <<< JOIN #channel

+    <<< NAMES etc

+    <<< HASH #channel :sha1=20,something_long

+    <<< HASH #channel :sha1=60,something_else sha256=70,another

+

+Optionally, the server may include a server name with the HASH command:

+

+    <<< :server1.example.com HASH #channel :etc

+    <<< :server2.example.com HASH #channel :other

+

+The `hash` message tag

+----------------------

+

+The `hash` mesaage tag shall be sent with every `PRIVMSG`, `TOPIC` and `NOTICE`.

+

+Syntax:

+

+    hash=type=counter/short_hash,type=counter/short_hash,...

+

+The use of `short_hash` lowers bandwidth requirements. Consult your cryptography expert for best practices on using cryptography.

+

+Example:

+

+    TODO

+

+The `SYNC` CTCP (informative)

+-----------------------------

+

+*This section is informative.*

+

+The `SYNC` CTCP is a hypothetical CTCP for syncing logs.

+

+Syntax:

+

+    SYNC <tox-compatible public key> <port> <host> <host> <...> -[nospam+checksum]

+

+This is a highly flexible command supporting ipv4, ipv6, hostname, tor, i2p and tox ID.

+

+Messages sent over non-tox channels must be encrypted with the tox-compatible public key.