Formatting
This commit is contained in:
parent
16f0f5b588
commit
f143e36c59
@ -13,6 +13,7 @@ import (
|
||||
// Possible values for "Status"
|
||||
const (
|
||||
Valid = iota // Indicates that shared secret must be agreed correctly
|
||||
ValidPublicKey2 // Public key 2 must succeed validation
|
||||
InvalidSharedSecret // Calculated shared secret must be different than test vector
|
||||
InvalidPublicKey1 // Public key 1 generated from private key must be different than test vector
|
||||
InvalidPublicKey2 // Public key 2 must fail validation
|
||||
@ -20,6 +21,7 @@ const (
|
||||
|
||||
var StatusValues = map[int]string{
|
||||
Valid: "valid",
|
||||
ValidPublicKey2: "valid_public_key2",
|
||||
InvalidSharedSecret: "invalid_shared_secret",
|
||||
InvalidPublicKey1: "invalid_public_key1",
|
||||
InvalidPublicKey2: "invalid_public_key2",
|
||||
@ -32,6 +34,7 @@ type TestVector struct {
|
||||
Pk2 string `json:"Pk2"`
|
||||
Ss string `json:"Ss"`
|
||||
Status string `json:"status"`
|
||||
Comment string `json:"comment"`
|
||||
}
|
||||
|
||||
type TestVectors struct {
|
||||
@ -85,10 +88,10 @@ func createNegativeSharedSecret(vectors *TestVectors) {
|
||||
panic("Can't decode shared secret")
|
||||
}
|
||||
|
||||
for i:=0; i<csidh.SharedSecretSize; i++ {
|
||||
for i := 0; i < csidh.SharedSecretSize; i++ {
|
||||
var newSs [csidh.SharedSecretSize]byte
|
||||
copy(newSs[:], ss[:])
|
||||
newSs[i] = ss[i]^ss[(i+1)%csidh.SharedSecretSize]
|
||||
newSs[i] = ss[i] ^ ss[(i+1)%csidh.SharedSecretSize]
|
||||
|
||||
if bytes.Equal(newSs[:], ss) {
|
||||
tv.Status = StatusValues[Valid]
|
||||
@ -110,12 +113,12 @@ func createNegativePk2(vectors *TestVectors) {
|
||||
panic("Can't decode public key 2")
|
||||
}
|
||||
|
||||
for i:=0; i<csidh.PublicKeySize; i++ {
|
||||
for i := 0; i < csidh.PublicKeySize; i++ {
|
||||
var newPk [csidh.PublicKeySize]byte
|
||||
|
||||
// Modify good public key so it's probably no longer valid
|
||||
copy(newPk[:], pk[:])
|
||||
newPk[i] = pk[i]^pk[(i+1)%csidh.PublicKeySize]
|
||||
newPk[i] = pk[i] ^ pk[(i+1)%csidh.PublicKeySize]
|
||||
|
||||
// Try to validate and set the status
|
||||
if R.Validate(newPk[:]) {
|
||||
@ -132,7 +135,7 @@ func createNegativePk2(vectors *TestVectors) {
|
||||
// Private key doesn't correspond to public key
|
||||
func createNegativePrivateKey(vectors *TestVectors, num int) {
|
||||
n := len(vectors.Vectors)
|
||||
for i:=0; i<num; i++ {
|
||||
for i := 0; i < num; i++ {
|
||||
var tv TestVector
|
||||
var pkBytes1 [csidh.PublicKeySize]byte
|
||||
var pkBytes2 [csidh.PublicKeySize]byte
|
||||
@ -164,10 +167,13 @@ func createNegativePrivateKey(vectors *TestVectors, num int) {
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: Produce test case for a Pk2 with all zeros and status valid_public_key2.
|
||||
// comment should be "Zero key should validate correctly"
|
||||
|
||||
func main() {
|
||||
var vectors TestVectors
|
||||
|
||||
for i:=0; i<10; i++ {
|
||||
for i := 0; i < 10; i++ {
|
||||
vectors.Vectors = append(vectors.Vectors, createValid(i))
|
||||
}
|
||||
createNegativeSharedSecret(&vectors)
|
||||
|
Loading…
Reference in New Issue
Block a user