Filippo Valsorda
e0829623af
chacha20: expose internal/chacha20 package
const KeySize = 32
const NonceSize = 12
func HChaCha20(key, nonce []byte) ([]byte, error)
type Cipher struct {}
func NewUnauthenticatedCipher(key, nonce []byte) (*Cipher, error)
func (s *Cipher) XORKeyStream(dst, src []byte)
Small performance hit in chacha20poly1305, probably due to the loss
of the Advance API, which we might consider adding later. No new
allocations, thanks to the mid-stack inliner.
name old time/op new time/op delta
Chacha20Poly1305/Open-64-8 1.60µs ± 0% 1.68µs ± 1% +4.94% (p=0.000 n=9+10)
Chacha20Poly1305/Seal-64-8 1.56µs ± 0% 1.64µs ± 1% +5.21% (p=0.000 n=8+10)
Chacha20Poly1305/Open-64-X-8 2.10µs ± 1% 2.22µs ± 1% +5.81% (p=0.000 n=10+10)
Chacha20Poly1305/Seal-64-X-8 2.07µs ± 1% 2.17µs ± 0% +4.88% (p=0.000 n=10+10)
Chacha20Poly1305/Open-1350-8 15.4µs ± 0% 15.7µs ± 1% +1.65% (p=0.000 n=10+10)
Chacha20Poly1305/Seal-1350-8 15.6µs ± 2% 15.9µs ± 1% +1.58% (p=0.028 n=10+9)
Chacha20Poly1305/Open-1350-X-8 16.0µs ± 1% 16.3µs ± 2% +2.00% (p=0.000 n=10+10)
Chacha20Poly1305/Seal-1350-X-8 15.9µs ± 0% 16.3µs ± 1% +1.91% (p=0.000 n=10+8)
Chacha20Poly1305/Open-8192-8 85.6µs ± 0% 86.6µs ± 1% +1.21% (p=0.000 n=10+10)
Chacha20Poly1305/Seal-8192-8 85.7µs ± 0% 86.3µs ± 0% +0.68% (p=0.001 n=9+9)
Chacha20Poly1305/Open-8192-X-8 86.4µs ± 1% 87.1µs ± 1% +0.76% (p=0.035 n=10+9)
Chacha20Poly1305/Seal-8192-X-8 86.0µs ± 0% 87.0µs ± 1% +1.14% (p=0.000 n=9+9)
Updates golang/go#24485
Change-Id: I2ec2ef487a03f013049915d9063751c75a78408b
Reviewed-on: https://go-review.googlesource.com/c/crypto/+/185980
Reviewed-by: Michael Munday <mike.munday@ibm.com>
2019-11-11 21:38:06 +00:00
..
2019-02-25 12:45:18 +00:00
2019-01-23 08:56:48 +00:00
2019-09-26 18:03:35 +00:00
2019-08-29 04:30:50 +00:00
2018-10-15 02:39:09 +00:00
2019-01-31 18:25:04 +00:00
2014-04-09 13:57:52 -07:00
2017-09-25 11:19:01 +00:00
2017-12-18 18:48:59 +00:00
2018-10-29 10:30:14 +00:00
2017-11-28 17:48:09 +00:00
2019-04-11 14:11:16 +00:00
2019-11-11 21:38:06 +00:00
2019-06-17 13:33:40 +00:00
2019-05-10 10:41:15 +00:00
2018-01-11 10:11:23 +00:00
2018-10-29 02:12:03 +00:00
2019-04-18 16:56:55 +00:00
2019-09-09 09:17:59 +00:00
2017-05-31 07:46:08 +00:00
2017-03-30 15:57:35 +00:00
2019-04-11 14:11:56 +00:00
2019-07-01 09:49:42 +00:00
2019-04-18 16:56:55 +00:00
2015-08-17 22:17:06 +00:00
2019-11-08 23:12:17 +00:00
2018-10-29 10:30:14 +00:00
2018-10-29 10:30:14 +00:00
2017-02-08 15:25:40 +00:00
2015-07-15 23:39:58 +00:00
2016-04-25 17:01:51 +00:00
2019-06-17 13:33:40 +00:00
2018-10-29 02:12:03 +00:00
2017-11-28 17:48:09 +00:00
2019-06-17 13:33:40 +00:00
2019-04-11 14:19:40 +00:00
2017-11-28 19:40:09 +00:00
2019-05-10 10:41:15 +00:00
2019-05-10 10:41:15 +00:00
2018-05-14 16:50:30 +00:00
2014-04-09 13:57:52 -07:00
2018-05-14 11:17:49 +00:00
2016-07-06 16:40:51 +00:00
2018-01-11 10:11:23 +00:00
2019-04-11 14:11:16 +00:00