Граф коммитов

8 Коммитов

Автор SHA1 Сообщение Дата
Joe Farrell 77f4136a99 go.crypto/blowfish: fix typo in docstring in cipher.go
Change-Id: I1b968decc23de5b7f635dcbc4133b1ab3745ff88
Reviewed-on: https://go-review.googlesource.com/23851
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2016-06-07 17:52:46 +00:00
David Symonds 1fbbd62cfe crypto: add import comments.
Change-Id: I33240faf1b8620d0cd600de661928d8e422ebdbc
Reviewed-on: https://go-review.googlesource.com/1235
Reviewed-by: Andrew Gerrand <adg@golang.org>
2014-12-09 23:26:36 +00:00
Dmitry Chestnykh b7f382b979 go.crypto/blowfish: support salts larger than 16 bytes.
Supporting larger salts makes it possible to implement bcrypt-pbkdf
(http://www.tedunangst.com/flak/post/bcrypt-pbkdf), which is used in
the latest OpenSSH versions to encrypt key files.

This change makes expandKeyWithSalt (and thus NewSaltedCipher) about
20% slower, but since it isn't used in the "heavy" phase of computation
in bcrypt (it uses ExpandKey, which didn't change), the effect on
bcrypt performance is negligible.

The 16-byte limit was an artifact of optimization and due to the fact
that it was enough for bcrypt; Eksblowfish spec or other
implementations don't limit the salt size.

Additionally, there was a bug in the previous implementation: it only
generated correct results for salts consisting of 4, 8, or 16 bytes, and panicked if salt had zero length.

LGTM=agl
R=golang-codereviews, gobot, agl
CC=golang-codereviews
https://golang.org/cl/102720045
2014-08-01 14:09:20 -07:00
Dmitry Chestnykh c261757620 go.crypto/blowfish: no need for key in initCipher
LGTM=robert.hencke
R=golang-codereviews, robert.hencke
CC=golang-codereviews
https://golang.org/cl/84860043
2014-05-05 11:42:21 -07:00
Adam Langley 8f45c680ce go.crypto/blowfish: allow shorter passwords.
bcrypt didn't allow one, two and three letter passwords which is a
policy decision best left to the user of the code. Some users have
legacy issues which require such short passwords to be processed.

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/81800044
2014-03-31 13:41:02 -04:00
Damian Gryski 62944567d8 go.crypto: remove cipher.Reset()
The go.crypto repo was missed when this function was removed from the
ciphers in the standard library.

R=agl
CC=golang-dev
https://golang.org/cl/6904062
2012-12-10 11:00:48 -05:00
Dmitry Chestnykh dc67354e86 go.crypto/blowfish: document that only 16 bytes of salt are used.
Also fix salt expansion code to fill the properly sized array,
since the following code never uses more than 4 uints.

Also remove unused expandedKey array.

R=golang-dev, agl
CC=golang-dev
https://golang.org/cl/6622050
2012-10-06 10:03:43 -04:00
Russ Cox 470549d502 go.crypto: initial code
Manual edits to README.
Moved from main Go repository, deleted Makefiles, ran gofix -r go1rename.

Tested with: go test code.google.com/p/go.crypto/...

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/5564059
2012-01-25 15:31:12 -05:00