/
githubmirror
/
client
Обзор
Документация
Войти
/
githubmirror
/
client
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
go/libkb/passphrase_stream_test.go
71 строка
2 KB
Surya
fix go vet
25 апр 2019, 20:15
25 апр 2019, 20:15
ff3e975
Код
Авторство
О чём код?
// Copyright 2015 Keybase, Inc. All rights reserved. Use of // this source code is governed by the included BSD license. package libkb import ( "encoding/hex" "testing" ) type dktest struct { name string passphrase string salt string pwh string ekey string dkey string lkey string } var dktests = []dktest{ { name: "simple 1", passphrase: "my passphrase", salt: "random salt zxcv", pwh: "eb92a4bc72cbce98b80c5bfb391b353c37af5f3398e52c7cb436b73de97abc48", ekey: "248f73a3645486c7d2c327da2bb7bb3129cf2347494d54ca9e35083f325ab57e", dkey: "b4f8ffced85c240c4833afac527ce1f9be37e2e645fc020d41c31d8179ff7ef2", lkey: "daf502dcc05af15e8c9b4c36a195566e1cfdd5dbb7593e268e0053e89ed74c0f", }, { name: "simple 2", passphrase: "my passphrase", salt: "random salt qwer", pwh: "5c44c619c7f29bc446af06ecd2d5c8d0a58db04970891aa18084fac8014c717a", ekey: "c93b7470701a0623a062b849f0527b68faa568549926b77320e9030b12d29197", dkey: "77375b7d2e59b9fdd4733dbead5ba66116cec508e05919b98332b97e437a75b0", lkey: "5fec13005cca4f12ce0b624db02488d9ea4e5ef54b67649620c810e6b4e01376", }, { name: "simple 3", passphrase: "my passphrase is longer", salt: "random salt zxcv", pwh: "de526ef302f50283d0a0aecdc303e1f42c3b206060657bf03f781f076eec1459", ekey: "199c9e10e5c9505c431cd2d3235873e7e113918511178afc341d28d48f1b5dd7", dkey: "1c2c2d040fc743f939b1af6e90dde1a0e9181e2d6a0e584c75f7d363100493d5", lkey: "66647f005c89d55efbc4683b2a86210d545d77e6fadfd29b8aa9bcc53efc5a7f", }, } func TestTSPassKey(t *testing.T) { for _, test := range dktests { _, dk, err := StretchPassphrase(nil, test.passphrase, []byte(test.salt)) if err != nil { t.Errorf("%s: got unexpected error: %s", test.name, err) continue } if hex.EncodeToString(dk.PWHash()) != test.pwh { t.Errorf("%s: pwh = %x, expected %q", test.name, dk.PWHash(), test.pwh) } if hex.EncodeToString(dk.EdDSASeed()) != test.ekey { t.Errorf("%s: eddsa = %x, expected %q", test.name, dk.EdDSASeed(), test.ekey) } if hex.EncodeToString(dk.DHSeed()) != test.dkey { t.Errorf("%s: dh = %x, expected %q", test.name, dk.DHSeed(), test.dkey) } if hex.EncodeToString(dk.LksClientHalf().Bytes()) != test.lkey { t.Errorf("%s: lks = %x, expected %q", test.name, dk.LksClientHalf().Bytes(), test.lkey) } } }