Commit Graph

23 Commits

Author SHA1 Message Date
wiz
20ee1a50dd Bump date for new crypto types. 2011-02-25 21:10:33 +00:00
drochner
b4da53f1e6 make the use of SHA2-HMAC by FAST_IPSEC compliant to current standards:
-RFC2104 says that the block size of the hash algorithm must be used
 for key/ipad/opad calculations. While formerly all ciphers used a block
 length of 64, SHA384 and SHA512 use 128 bytes. So we can't use the
 HMAC_BLOCK_LEN constant anymore. Add a new field to "struct auth_hash"
 for the per-cipher blocksize.
-Due to this, there can't be a single "CRYPTO_SHA2_HMAC" external name
 anymore. Replace this by 3 for the 3 different keysizes.
 This was done by Open/FreeBSD before.
-Also fix the number of authenticator bits used tor ESP and AH to
 conform to RFC4868, and remove uses of AH_HMAC_HASHLEN which did
 assume a fixed authenticator size of 12 bytes.

FAST_IPSEC will not interoperate with KAME IPSEC anymore if sha2 is used,
because the latter doesn't implement these standards. It should
interoperate with at least modern Free/OpenBSD now.
(I've only tested with NetBSD-current/FAST_IPSEC on both ends.)
2011-02-25 20:13:10 +00:00
jruoho
75868060a9 Document also kern.cryptodevallowsoft. 2010-04-20 08:37:22 +00:00
jruoho
88aba63225 Document kern.usercrypto and kern.userasymcrypto. 2010-04-20 08:27:24 +00:00
wiz
a62f6ec261 Use full month name in Dd. 2010-01-31 15:05:49 +00:00
hubertf
827a5e73da Fix two typos to make documentation match the code:
* the CIOCFKEY ioctl is really called CIOCKEY
 * CRK_MOD_EX => CRK_MOD_EXP

Bump date.
2010-01-31 14:43:04 +00:00
hubertf
62ff0dc871 Fix typo: CIOCASSYMFEAT -> CIOCASYMFEAT 2010-01-28 08:35:06 +00:00
wiz
bdcda8d0cc Remove trailing whitespace. Avoid marking up punctuation. Remove
superfluous Pp. Make HTML-ready. ioctl(4) -> ioctl(2).
Fix wrong end-of-sentence break.
2009-05-17 06:50:59 +00:00
fair
1496bb7663 Eliminate a groff warning seen during build.
Add some paragraph breaks for clarity/readability.
Sentence periods should be at end of lines.
2009-05-17 01:23:27 +00:00
martin
cd22f25e6f Move TNF licenses to 2 clause form 2008-05-02 18:11:04 +00:00
tls
597ee710c7 Extend crypto.4 interface:
* Asynchronous operation with result retrieval via select/poll
	* Mutliple-request submit/retrieve ioctls
	* Mutliple-session create-destroy ioctls

Revise/rewrite crypto.4 manual page.  It should now be much easier to write
new applications to this API.

Measured performance for trivial requests: 84,000 very short modular math
operations/sec, 120,000 very short md5 hashes per sec (with a hardware
accellerator of moderate performance but very low latency, whose driver
will be contributed at a later date).

Contributed to TNF by Coyote Point Systems, Inc.
2008-04-10 22:48:42 +00:00
tls
49444bc037 Make /dev/crypto properly cloning. Leave CRIOGET in place but note that
it is deprecated, no longer required, and will be removed in a future
release of NetBSD.

Dramatically reduce the size of the session structure by removing an
IOV_MAX array of iovecs where only the first was use.  Saves an 8k
bzero on each session creation.

Convert fixed-size allocations in cryptodev.c to pools.
2008-01-26 00:04:27 +00:00
tls
9675caff5e Some minor opencrypto fixes, one with a major performance impact for
OpenSSL:

1) Fix extremely misleading text in crypto.4 manual page so it does not
   appear to claim that a new cloned file descriptor is required for every
   session.

2) Fix severe performance problem (and fd leak!) in openssl cryptodev
   engine resulting from misunderstanding probably caused by said manual
   page text.

3) Check for session-ID wraparound in kernel cryptodev provider.  Also,
   start allocating sessions at 1, not 0 -- this will be necessary when
   we add ioctls for the creation of multiple sessions at once, so we
   can tell which if any creations failed.
2008-01-25 07:09:56 +00:00
elad
04ced3c62f PR/30355: der Mouse: crypto(4) gets ioctl names wrong
Patch applied, thanks!
2006-09-23 20:38:51 +00:00
riz
ef1e9e4fce Since the swcrypto pseudo-device is now needed for using the crypto
framework without a hardware accelerator card, make sure it has
some accessible documentation.
2006-03-28 20:50:57 +00:00
nathanw
e8e89790f0 The bind-session ioctl is CIOCGSESSION, not CRIOCGSESSION. 2005-04-14 18:52:23 +00:00
nathanw
c700f1d7a3 CIOCCRYPT takes a "struct crypt_op *", not a "struct crpyto_op *". 2005-04-13 16:28:06 +00:00
nathanw
1733290d22 ".XR" should be ".Xr". 2005-03-28 22:07:22 +00:00
jonathan
5267884365 Make new hifn(4) and ubsec(4) manual pages visible to system, after
review, proofing, and bug-fixing by Thomas Klausner (wiz):
1. add hifn(40 and ubsec(4) to share/man/man4/Makefile and the distrib set lists.
2. Restore commented-out cross-references to hifn(40 and ubsec(4) in crypto(4).

No change made to hifn.4 or ubsec.4; commit forced for cross-reference
and for pullup-request purposes.
2004-04-29 19:42:29 +00:00
wiz
be2b474fba Fix Dd argument; new sentence, new line; fix a typo; remove superfluous
.Pp before/after section headers; replace <> with \*[Lt] and \*[Gt] resp.
for HTML; mark up COP_*; add a missing word ("if"); comment out references
to hifn(4) and ubsec(4), which we don't have; sort sections; add missing
word ("in").
2004-04-28 15:21:43 +00:00
wiz
a7f8dce68e Drop trailing white space in preparation for more changes. 2004-04-28 15:19:20 +00:00
jonathan
1162a488a6 Update synopsis to match reality: usercode has to #include <sys/time.h>,
because sys/opencrypto/cryptodev.h currently doesn't do that on behalf
of userspace code.
2004-04-27 23:42:59 +00:00
jonathan
11600006ea Commit first draft of a manpage for crypto(4), the user-mode API
to opencrypto(9).
2004-04-27 21:34:10 +00:00