X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=README;h=200da3742ba9ef91d7b4c81273c22184e02883ca;hb=147b444d6faa9a621e33d653b7a72c29724203c3;hp=c27375ab7bf563702272c62870e4d51222518331;hpb=1b8af2f7f86131a5364f2270865895ea597c591e;p=secnet.git diff --git a/README b/README index c27375a..200da37 100644 --- a/README +++ b/README @@ -193,6 +193,17 @@ Usage: secnet [OPTION]... --help display this help and exit --version output version information and exit +* base91s + +secnet defines a variant of the base91 encoding `basE91', from + http://base91.sourceforge.net/ + +base91s is the same as baseE91 except that: + - in the encoded charset, `"' is replaced with `-' + - spaces, newlines etc. and other characters outside the charset + are not permitted (although in some places they may be ignored, + this is not guaranteed). + * secnet builtin modules ** resolver @@ -381,15 +392,17 @@ site: dict argument them. resolver (resolver closure) random (randomsrc closure) - local-key (rsaprivkey closure) + key-cache (privcache closure) + local-key (sigprivkey closure): Deprecated; use key-cache instead. address (string list): optional, DNS name(s) used to find our peer; address literals are supported too if enclosed in `[' `]'. port (integer): mandatory if 'address' is specified: the port used to contact our peer - key (rsapubkey closure): our peer's public key + peer-keys (string): path (prefix) for peer public key set file(s); + see README.make-secnet-sites re `pub' etc. and NOTES.peer-keys. + key (sigpubkey closure): our peer's public key (obsolete) transform (transform closure): how to mangle packets sent between sites dh (dh closure) - hash (hash closure) key-lifetime (integer): max lifetime of a session key, in ms [one hour; mobile: 2 days] setup-retries (integer): max number of times to transmit a key negotiation @@ -562,11 +575,26 @@ priv-cache: dict argument privkey-max (integer): optional, maximum size of private key file in bytes. [4095] +** pubkeys + +Defines: + make-public (closure => sigpubkey closure) + +make-public: ( + arg1: sigscheme name + arg2: base91s encoded public key data, according to algorithm + ** rsa Defines: - rsa-private (closure => rsaprivkey closure) - rsa-public (closure => rsapubkey closure) + sigscheme algorithm 00 "rsa1" + rsa-private (closure => sigprivkey closure) + rsa-public (closure => sigpubkey closure) + +rsa1 sigscheme algorithm: + private key: SSH private key file, version 1, no password + public key: SSH public key file, version 1 + (length, restrictions, email, etc., ignored) rsa-private: string[,bool] arg1: filename of SSH private key file (version 1, no password) @@ -576,6 +604,11 @@ rsa-public: string,string arg1: encryption key (decimal) arg2: modulus (decimal) +The sigscheme is hardcoded to use sha1. Both rsa-private and +rsa-public look for the following config key in their context: + hash (hash closure): hash function [sha1] + + ** dh Defines: