X-Git-Url: https://git.distorted.org.uk/~mdw/catacomb/blobdiff_plain/0f00dc4c8eb47e67bc0f148c2dd109f73a451e0a..4a2b75bce099766effacd749ac7fa1fbb0cb3399:/progs/catcrypt.1 diff --git a/progs/catcrypt.1 b/progs/catcrypt.1 index 6bace86f..a3ebff8a 100644 --- a/progs/catcrypt.1 +++ b/progs/catcrypt.1 @@ -134,6 +134,14 @@ A has the syntax .IR kem \c .RB [ / \c +.IR bulk \c +.RB [ \- \c +.IR cipher ] \c +.RB [ / \c +.IR hash ]] +or +.IR kem \c +.RB [ / \c .IR cipher \c .RB [ / \c .IR hash ]]. @@ -197,16 +205,61 @@ command (see .BR key (1)) to generate the key. .PP +The bulk crypto transform is chosen based on the +.B bulk +attribute on the key, or, failing that, +from the +.I bulk +stated in the +.IR kemalgspec . +Run +.B catcrypt show bulk +for a list of supported bulk crypto transforms. +.TP +.B gencomp +A generic composition of +a cipher secure against chosen-plaintext attack, +and a message authentication code. +Makes use of +.B cipher +and +.B mac +attributes. +This is the default transform. +.TP +.B naclbox +Use Salsa20 or ChaCha and Poly1305 to secure the bulk data. +This is nearly the same as the NaCl +.B crypto_secretbox +construction, +except that +.B catcrypt +uses Salsa20 or ChaCha rather than XSalsa20, +because it doesn't need the latter's extended nonce. +The +.B cipher +attribute may be set to one of +.BR salsa20 , +.BR salsa20/12 , +.BR salsa20/8 , +.BR chacha20 , +.BR chacha12 , +or +.BR chacha8 ; +the default is +.BR salsa20 . +.PP As well as the KEM itself, a number of supporting algorithms are used. These are taken from appropriately named attributes on the key or, failing that, derived from other attributes as described below. .TP .B cipher -This is the symmetric encryption algorithm used for bulk data -encryption. If there is no +This is the symmetric encryption algorithm +used by the bulk data transform. +If there is no .B cipher attribute then the -.I cipher +.I bulk in the .I kemalgspec is used; if that it absent, then the default of @@ -230,9 +283,13 @@ is used. Run for a list of supported symmetric encryption algorithms. .TP .B mac -This is the message authentication algorithm used during bulk data -encryption to ensure integrity of the encrypted message and defend -against chosen-ciphertext attacks. If there is no +This is the message authentication algorithm +used by the +.B gencomp +bulk data transform +to ensure integrity of the encrypted message and +defend against chosen-ciphertext attacks. +If there is no .B mac attribute then .IB hash -hmac @@ -584,7 +641,7 @@ All messages. .PP .B Warning! All output written has been checked for authenticity. However, output -can fail madway through for many reasons, and the resulting message may +can fail midway through for many reasons, and the resulting message may therefore be truncated. Don't rely on the output being complete until .B OK is printed or