Branch: Tag:

2018-11-03

2018-11-03 14:21:37 by Marcus Comstedt <marcus@mc.pp.se>

Merge remote-tracking branch 'origin/8.1' into gobject-introspection

2018-03-07

2018-03-07 17:55:05 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Documentation [Crypto.ECC]: Added reference to rfc.

2017-10-10

2017-10-10 10:58:48 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve25519.EdDSA: Fixed documentation.

2017-09-29

2017-09-29 09:37:45 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve25519.EdDSA: Added jwk().

Support generating JWKs for Ed25519 keys.

2017-09-23

2017-09-23 09:41:01 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve.ECDSA: Support strings in set_private_key().

Convenience variant for setting the ECDSA private key from
a binary string.

Fixes testsuite failure.

2017-09-22

2017-09-22 13:58:39 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve.ECDSA: Added get_point().

2017-09-22 13:58:05 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve.ECDSA: Implemented jwk().

Support generation of JSON Web Keys (JWKs) from ECDSA objects.

Fixes more of [PIKE-39].

2017-09-21

2017-09-21 13:34:19 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve.ECDSA: Implemented jwk().

Support generation of JSON Web Keys (JWKs) from ECDSA objects.

Fixes more of [PIKE-39].

2017-08-29

2017-08-29 13:16:56 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve25519.EdDSA: Fixed API for set_private_key().

It now returns the current object.

2017-03-25

2017-03-25 13:10:19 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve25519: Implement more of the standard API.

2016-12-12

2016-12-12 10:50:46 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC: Survive use with old Pike 8.0 binaries.

Fixes some of [bug 7825].

2016-10-08

2016-10-08 14:33:42 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Nettle: Added support for Curve25519 and EdDSA25519.

CAVEAT: API subject to change!

Note that these have a different API than the other ECC curves
due to a different low-level API.

2016-09-23

2016-09-23 16:21:36 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Nettle: Probe for the SECP curves.

Some versions of RedHat have censored the weaker curves
(secp_192r1 abd secp_224r1), so we need to survive this.

Thanks to Martin Bähr <mbaehr+pike@realss.com> for the report.

Fixes [LysLysKOM 21863021].

2016-09-23 16:10:05 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Nettle: Probe for the SECP curves.

Some versions of RedHat have censored the weaker curves
(secp_192r1 abd secp_224r1), so we need to survive this.

Thanks to Martin Bähr <mbaehr+pike@realss.com> for the report.

Fixes [LysLysKOM 21863021].

2016-07-07

2016-07-07 09:54:50 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC [JWT]: Zero-pad short signature integers.

Makes sure that the signature generated by jose_sign() always
has the same length for a given Curve.

Likely to fix intermittent testsuite failures where jose signatures
fail to verify.

2016-07-07 09:49:18 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC [JWT]: Zero-pad short signature integers.

Makes sure that the signature generated by jose_sign() always
has the same length for a given Curve.

Likely to fix intermittent testsuite failures where jose signatures
fail to verify.

2016-05-31

2016-05-31 08:54:21 by Magnus Holmgren <holmgren@lysator.liu.se>

Documentation breakage

When preparing a new Debian package of 8.0.240, I noticed that some
documentation disappeared, apparently due to the following. The error
in Nettle.Sign is already corrected but not the others, AFAICT, and
I'm guessing that @exp should be @expr. Patch below, which I home
someone can apply right away.

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/src/modules/Gmp/mpz_glue.c, lines: 668..668), "DocParser", "@exp cannot be used like this: @exp{ ... @}")>

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/lib/modules/__builtin.pmod/Nettle.pmod/Sign.pike, lines: 102..102), "DocParser", "@item is not allowed inside @array (allowed children are: @elem)")>

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/lib/modules/Crypto.pmod/ECC.pmod, lines: 286..286), "DocParser", "@item is not allowed inside @array (allowed children are: @elem)")>

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/lib/modules/Crypto.pmod/RSA.pmod, lines: 368..368), "DocParser", "@item is not allowed inside @array (allowed children are: @elem)")>

2016-05-31 08:52:28 by Magnus Holmgren <holmgren@lysator.liu.se>

Documentation breakage

When preparing a new Debian package of 8.0.240, I noticed that some
documentation disappeared, apparently due to the following. The error
in Nettle.Sign is already corrected but not the others, AFAICT, and
I'm guessing that @exp should be @expr. Patch below, which I home
someone can apply right away.

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/src/modules/Gmp/mpz_glue.c, lines: 668..668), "DocParser", "@exp cannot be used like this: @exp{ ... @}")>

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/lib/modules/__builtin.pmod/Nettle.pmod/Sign.pike, lines: 102..102), "DocParser", "@item is not allowed inside @array (allowed children are: @elem)")>

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/lib/modules/Crypto.pmod/ECC.pmod, lines: 286..286), "DocParser", "@item is not allowed inside @array (allowed children are: @elem)")>

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/lib/modules/Crypto.pmod/RSA.pmod, lines: 368..368), "DocParser", "@item is not allowed inside @array (allowed children are: @elem)")>

2016-04-27

2016-04-27 14:36:02 by Martin Nilsson <nilsson@fastmail.com>

SHA256 is assumed due to Nettle version requirements. SHA384 and SHA512 are not.

2016-04-27 14:35:39 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve.ECDSA: Added support for jose_{sign,decode}().

2016-04-27 14:34:35 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto: Added algorithm identifiers from JWA (RFC 7518:3.1).

Fixes some of [bug 7671].

2016-04-19

2016-04-19 19:18:08 by Martin Nilsson <nilsson@fastmail.com>

SHA256 is assumed due to Nettle version requirements. SHA384 and SHA512 are not.

2016-04-19 14:54:04 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve.ECDSA: Added support for jose_{sign,decode}().

2016-04-14

2016-04-14 10:12:22 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto: Added algorithm identifiers from JWA (RFC 7518:3.1).

Fixes some of [bug 7671].

2015-08-22

2015-08-22 18:54:15 by Martin Nilsson <nilsson@fastmail.com>

Support linking direct to RFC anchor.

2015-08-21

2015-08-21 23:56:32 by Martin Nilsson <nilsson@fastmail.com>

Use @rfc{@} autodoc syntax.

2015-01-27

2015-01-27 22:25:17 by Martin Nilsson <nilsson@opera.com>

The low level API for curve selection only supported a subset of NIST curves. Change into a easier to use and easier to extend API in preparation for curve25519.

2015-01-27 22:24:06 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve: Added LFUN::`==().

2015-01-25

2015-01-25 01:33:56 by Martin Nilsson <nilsson@opera.com>

Changed curve() into get_curve() to be consistent with the other methods, and to properly mask the get_curve() in Nettle.ECC_Curve.ECDSA.

2015-01-25 01:31:10 by Martin Nilsson <nilsson@opera.com>

Changed curve() into get_curve() to be consistent with the other methods, and to properly mask the get_curve() in Nettle.ECC_Curve.ECDSA.

2015-01-25 01:12:43 by Martin Nilsson <nilsson@opera.com>

Added some basic Point support.

2014-12-23

2014-12-23 14:11:58 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto: Added some FIXMEs regarding RFC 6979.

2014-09-29

2014-09-29 23:55:47 by Martin Nilsson <nilsson@opera.com>

Verify that no additional payload is hidden in ASN.1 structures.

2014-04-13

2014-04-13 17:41:14 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve.ECDSA: Added key_size().

2014-04-12

2014-04-12 13:18:17 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC: Support SHA1 for signatures.

ECDSA/SHA1 signatures is the default combination to support for
ECDSA certificates in TLS 1.2 if the client hasn't said otherwise.

2014-02-22

2014-02-22 12:19:48 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.Sign: Added public_key_equal() and _equal().

* public_key_equal() and _equal() added to the common API for
cryptographic signing.

* Implemented _equal() in all current signing algorithms.

* Added public_key_equal() to ECDSA.

2014-02-14

2014-02-14 21:09:25 by Martin Nilsson <nilsson@opera.com>

Simplified dependencies.

2014-01-16

2014-01-16 11:32:04 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC: Inhibit module dumping.

This is a workaround for a dumping bug where Crypto.ECC.Curve()->ECDSA
apparently doesn't get encoded properly (the decoded values seems to
not have overloaded Nettle.ECC_Curve()->ECDSA at all).

Should fix ECDSA support in dumped pikes.

2014-01-13

2014-01-13 16:49:43 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve: Fixed pkcs_ec_parameters().

The curve identifier should not be wrapped in a sequence.

Fixes interoperability with OpenSSL and GNUTLS.

2014-01-13 14:28:42 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve.ECDSA: Improved support for ANSI x9.62.

set_public_key() now accepts an ANSI x9.62 encoded public key.

2014-01-13 14:27:06 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve: Added pkcs_named_curve_id().

This is to make it easier to identify curves given the ASN.1
identifier.

2014-01-13 13:06:07 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve.ECDSA: Added some helper functions.

2014-01-13 11:49:55 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC.Curve: Added some more PKCS APIs.

Adds sufficient pkcs_*() functions to generate selfsigned certificates.

2014-01-05

2014-01-05 15:14:13 by Marcus Comstedt <marcus@mc.pp.se>

Merge branch '8.0' into gobject-introspection

2014-01-04

2014-01-04 13:40:52 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC: Added support for ECDSA.

This adds support for ECDSA with an API similar to that for RSA and DSA.

2014-01-04 13:26:52 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC: Document the constant curves as modules.

As these values are intended to be treated as modules,
document them as such.

2014-01-04 13:09:03 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC: Changed initialization of curves.

This is to allow for extending the Crypto.ECC.Curve API with
code written in Pike.

2013-12-26

2013-12-26 23:45:06 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.ECC: Added some Elliptic Curve Crypto support.