summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
696d610)
Just to have fewer repository dependencies.
[submodule "src/golang.org/x/crypto"]
path = src/golang.org/x/crypto
url = https://go.googlesource.com/crypto
[submodule "src/golang.org/x/crypto"]
path = src/golang.org/x/crypto
url = https://go.googlesource.com/crypto
-[submodule "src/github.com/dchest/blake2b"]
- path = src/github.com/dchest/blake2b
- url = https://github.com/dchest/blake2b.git
[submodule "src/github.com/go-yaml/yaml"]
path = src/github.com/go-yaml/yaml
url = https://github.com/go-yaml/yaml.git
[submodule "src/github.com/go-yaml/yaml"]
path = src/github.com/go-yaml/yaml
url = https://github.com/go-yaml/yaml.git
@headitem Library @tab Platform @tab Licence
@item @code{github.com/agl/ed25519} @tab All @tab BSD 3-Clause
@item @code{github.com/bigeagle/water} @tab GNU/Linux @tab BSD 3-Clause
@headitem Library @tab Platform @tab Licence
@item @code{github.com/agl/ed25519} @tab All @tab BSD 3-Clause
@item @code{github.com/bigeagle/water} @tab GNU/Linux @tab BSD 3-Clause
-@item @code{github.com/dchest/blake2b} @tab All @tab CC0 1.0
@item @code{github.com/go-yaml/yaml} @tab All @tab LGPLv3 and MIT
@item @code{golang.org/x/crypto} @tab All @tab BSD 3-Clause
@end multitable
@item @code{github.com/go-yaml/yaml} @tab All @tab LGPLv3 and MIT
@item @code{golang.org/x/crypto} @tab All @tab BSD 3-Clause
@end multitable
@item @code{cypherpunks.ru/govpn} @tab @url{https://github.com/stargrave/govpn.git}
@item @code{github.com/agl/ed25519} @tab @url{git://git.cypherpunks.ru/ed25519.git}
@item @code{github.com/bigeagle/water} @tab @url{git://git.cypherpunks.ru/water.git}
@item @code{cypherpunks.ru/govpn} @tab @url{https://github.com/stargrave/govpn.git}
@item @code{github.com/agl/ed25519} @tab @url{git://git.cypherpunks.ru/ed25519.git}
@item @code{github.com/bigeagle/water} @tab @url{git://git.cypherpunks.ru/water.git}
-@item @code{github.com/dchest/blake2b} @tab @url{git://git.cypherpunks.ru/blake2b.git}
@item @code{github.com/go-yaml/yaml} @tab @url{git://git.cypherpunks.ru/yaml.git}
@item @code{golang.org/x/crypto} @tab @url{git://git.cypherpunks.ru/crypto.git}
@end multitable
@item @code{github.com/go-yaml/yaml} @tab @url{git://git.cypherpunks.ru/yaml.git}
@item @code{golang.org/x/crypto} @tab @url{git://git.cypherpunks.ru/crypto.git}
@end multitable
- "github.com/dchest/blake2b"
+ "golang.org/x/crypto/blake2b"
"golang.org/x/crypto/salsa20"
)
"golang.org/x/crypto/salsa20"
)
func Encode(r *[RSize]byte, in []byte) ([]byte, error) {
out := make([]byte, len(in)+HSize+RSize)
copy(out, in)
func Encode(r *[RSize]byte, in []byte) ([]byte, error) {
out := make([]byte, len(in)+HSize+RSize)
copy(out, in)
+ h, err := blake2b.New256(nil)
+ if err != nil {
+ return nil, err
+ }
h.Write(r[:])
h.Write(in)
copy(out[len(in):], h.Sum(nil))
h.Write(r[:])
h.Write(in)
copy(out[len(in):], h.Sum(nil))
if len(in) < HSize+RSize {
return nil, errors.New("Too small input buffer")
}
if len(in) < HSize+RSize {
return nil, errors.New("Too small input buffer")
}
+ h, err := blake2b.New256(nil)
+ if err != nil {
+ return nil, err
+ }
h.Write(in[:len(in)-RSize])
salsaKey := new([32]byte)
for i, b := range h.Sum(nil)[:RSize] {
h.Write(in[:len(in)-RSize])
salsaKey := new([32]byte)
for i, b := range h.Sum(nil)[:RSize] {
"github.com/agl/ed25519"
"github.com/agl/ed25519/extra25519"
"github.com/agl/ed25519"
"github.com/agl/ed25519/extra25519"
- "github.com/dchest/blake2b"
+ "golang.org/x/crypto/blake2b"
"golang.org/x/crypto/curve25519"
"golang.org/x/crypto/salsa20"
)
"golang.org/x/crypto/curve25519"
"golang.org/x/crypto/salsa20"
)
enc := make([]byte, 8)
copy(enc, data)
AddTimeSync(timeSync, enc)
enc := make([]byte, 8)
copy(enc, data)
AddTimeSync(timeSync, enc)
- mac := blake2b.NewMAC(8, id[:])
+ mac, err := blake2b.New256(id[:])
+ if err != nil {
+ panic(err)
+ }
mac.Write(enc)
mac.Sum(enc[:0])
return enc
mac.Write(enc)
mac.Sum(enc[:0])
return enc
- "github.com/dchest/blake2b"
+ "golang.org/x/crypto/blake2b"
mc.cache[pid].ts = pc.TimeSync
} else {
log.Println("Adding key", pid)
mc.cache[pid].ts = pc.TimeSync
} else {
log.Println("Adding key", pid)
+ mac, err := blake2b.New256(pid[:])
+ if err != nil {
+ panic(err)
+ }
mc.cache[pid] = &MACAndTimeSync{
mc.cache[pid] = &MACAndTimeSync{
- mac: blake2b.NewMAC(8, pid[:]),
- "github.com/dchest/blake2b"
+ "golang.org/x/crypto/blake2b"
"golang.org/x/crypto/poly1305"
"golang.org/x/crypto/salsa20"
)
"golang.org/x/crypto/poly1305"
"golang.org/x/crypto/salsa20"
)
func newNonces(key *[32]byte, i uint64) chan *[NonceSize]byte {
macKey := make([]byte, 32)
salsa20.XORKeyStream(macKey, make([]byte, 32), make([]byte, 8), key)
func newNonces(key *[32]byte, i uint64) chan *[NonceSize]byte {
macKey := make([]byte, 32)
salsa20.XORKeyStream(macKey, make([]byte, 32), make([]byte, 8), key)
- mac := blake2b.NewMAC(NonceSize, macKey)
+ mac, err := blake2b.New256(macKey)
+ if err != nil {
+ panic(err)
+ }
nonces := make(chan *[NonceSize]byte, NonceBucketSize*3)
go func() {
for {
nonces := make(chan *[NonceSize]byte, NonceBucketSize*3)
go func() {
for {
"encoding/base64"
"errors"
"fmt"
"encoding/base64"
"errors"
"fmt"
"cypherpunks.ru/balloon"
"github.com/agl/ed25519"
"cypherpunks.ru/balloon"
"github.com/agl/ed25519"
- "github.com/dchest/blake2b"
+ "golang.org/x/crypto/blake2b"
"golang.org/x/crypto/ssh/terminal"
)
"golang.org/x/crypto/ssh/terminal"
)
return &Verifier{S: s, T: t, P: p, Id: id}
}
return &Verifier{S: s, T: t, P: p, Id: id}
}
+func blake2bKeyless() hash.Hash {
+ h, err := blake2b.New256(nil)
+ if err != nil {
+ panic(err)
+ }
+ return h
+}
+
// Apply the password: create Ed25519 keypair based on it, save public
// key in verifier.
func (v *Verifier) PasswordApply(password string) *[ed25519.PrivateKeySize]byte {
// Apply the password: create Ed25519 keypair based on it, save public
// key in verifier.
func (v *Verifier) PasswordApply(password string) *[ed25519.PrivateKeySize]byte {
- r := balloon.H(blake2b.New256, []byte(password), v.Id[:], v.S, v.T, v.P)
+ r := balloon.H(blake2bKeyless, []byte(password), v.Id[:], v.S, v.T, v.P)
defer SliceZero(r)
src := bytes.NewBuffer(r)
pub, prv, err := ed25519.GenerateKey(src)
defer SliceZero(r)
src := bytes.NewBuffer(r)
pub, prv, err := ed25519.GenerateKey(src)
+++ /dev/null
-Subproject commit 3c8c640cd7bea3ca78209d812b5854442ab92fed
src/cypherpunks.ru/balloon
src/github.com/agl/ed25519
src/github.com/bigeagle/water
src/cypherpunks.ru/balloon
src/github.com/agl/ed25519
src/github.com/bigeagle/water
- src/github.com/dchest/blake2b
src/github.com/go-yaml/yaml
src/golang.org/x/crypto
"
src/github.com/go-yaml/yaml
src/golang.org/x/crypto
"
golang.org/x/crypto/LICENSE
golang.org/x/crypto/PATENTS
golang.org/x/crypto/README
golang.org/x/crypto/LICENSE
golang.org/x/crypto/PATENTS
golang.org/x/crypto/README
+golang.org/x/crypto/blake2b
golang.org/x/crypto/curve25519
golang.org/x/crypto/poly1305
golang.org/x/crypto/salsa20
golang.org/x/crypto/curve25519
golang.org/x/crypto/poly1305
golang.org/x/crypto/salsa20