diff --git a/e2e/singleUse/responseFingerprint.go b/e2e/singleUse/responseFingerprint.go index a7458b88e4bc5f7701cc21211589a39e44810d65..37c84ba95564a551d1042937811912aaadfbcbb0 100644 --- a/e2e/singleUse/responseFingerprint.go +++ b/e2e/singleUse/responseFingerprint.go @@ -21,8 +21,10 @@ const responseFPConstant = "responseFPConstant" // the given key number. func ResponseFingerprint(dhKey *cyclic.Int, keyNum uint64) format.Fingerprint { // Create fingerprint - fp := format.Fingerprint{} - copy(fp[:], makeKeyHash(dhKey, keyNum, responseFPConstant)) + fp := format.NewFingerprint(makeKeyHash(dhKey, keyNum, responseFPConstant)) + + // Set the first bit as zero to ensure everything stays in the group + fp[0] &= 0b01111111 return fp } diff --git a/e2e/singleUse/responseFingerprint_test.go b/e2e/singleUse/responseFingerprint_test.go index 28a2928191defc94ffc8453001ae517ada63f5e4..7dd1f932a615d53d6ae446c936657d677766d416 100644 --- a/e2e/singleUse/responseFingerprint_test.go +++ b/e2e/singleUse/responseFingerprint_test.go @@ -24,13 +24,12 @@ func TestResponseFingerprint(t *testing.T) { dhKey := diffieHellman.GeneratePublicKey(diffieHellman.GeneratePrivateKey( diffieHellman.DefaultPrivateKeyLength, grp, prng), grp) testFP := ResponseFingerprint(dhKey, 0) - testFPBase64 := base64.StdEncoding.EncodeToString(testFP[:]) - if expectedFP != testFPBase64 { + if expectedFP != testFP.String() { t.Errorf("ResponseFingerprint() did not return the expected "+ "fingerprint for public key %s."+ "\nexpected: %s\nreceived: %s", - dhKey.Text(10), expectedFP, testFPBase64) + dhKey.Text(10), expectedFP, testFP) } } diff --git a/e2e/singleUse/transmitFingerprint.go b/e2e/singleUse/transmitFingerprint.go index c246063fd73ba216e2c11dbc0163d142990e9f89..98a92a9a66338f14fc57b4b8e1e1b50bb833d8df 100644 --- a/e2e/singleUse/transmitFingerprint.go +++ b/e2e/singleUse/transmitFingerprint.go @@ -18,8 +18,7 @@ const transmitFPConstant = "transmitFPConstant" // message. func TransmitFingerprint(dhKey *cyclic.Int) format.Fingerprint { // Create fingerprint - fp := format.Fingerprint{} - copy(fp[:], makeHash(dhKey, []byte(transmitFPConstant))) + fp := format.NewFingerprint(makeHash(dhKey, []byte(transmitFPConstant))) // Set the first bit as zero to ensure everything stays in the group fp[0] &= 0b01111111 diff --git a/e2e/singleUse/transmitFingerprint_test.go b/e2e/singleUse/transmitFingerprint_test.go index 5d0f382ac8598e37da0b9e99ebc0ade1a0a7997f..db1ec5f6064e065aa6fc6a3a3109126d1dcbb6d3 100644 --- a/e2e/singleUse/transmitFingerprint_test.go +++ b/e2e/singleUse/transmitFingerprint_test.go @@ -38,13 +38,12 @@ func TestTransmitFingerprint_Consistency(t *testing.T) { dhKey := diffieHellman.GeneratePublicKey(diffieHellman.GeneratePrivateKey( diffieHellman.DefaultPrivateKeyLength, grp, prng), grp) testFP := TransmitFingerprint(dhKey) - testFPBase64 := base64.StdEncoding.EncodeToString(testFP[:]) - if expected != testFPBase64 { + if expected != testFP.String() { t.Errorf("TransmitFingerprint() did not return the expected "+ "fingerprint for public key %s at index %d."+ "\nexpected: %s\nreceived: %s", - dhKey.Text(10), i, expected, testFPBase64) + dhKey.Text(10), i, expected, testFP) } } } diff --git a/go.mod b/go.mod index ff4e99973af78257ea3681fa0337865e760874fd..dc77cace338d996f19715009454254166b6db734 100644 --- a/go.mod +++ b/go.mod @@ -5,7 +5,7 @@ go 1.13 require ( github.com/pkg/errors v0.9.1 github.com/spf13/jwalterweatherman v1.1.0 - gitlab.com/elixxir/primitives v0.0.3-0.20210107183456-9cf6fe2de1e5 + gitlab.com/elixxir/primitives v0.0.3-0.20210120174718-802bdcda9dbb gitlab.com/xx_network/crypto v0.0.5-0.20210107183440-804e0f8b7d22 gitlab.com/xx_network/primitives v0.0.4-0.20210106014326-691ebfca3b07 golang.org/x/crypto v0.0.0-20200728195943-123391ffb6de diff --git a/go.sum b/go.sum index c0581c0f4f44a5c35b6b17b5111fa38ad086a449..45a88be441ef68f76ca0f0bde2eb08b75df7f285 100644 --- a/go.sum +++ b/go.sum @@ -61,6 +61,8 @@ gitlab.com/elixxir/primitives v0.0.3-0.20210104223605-0e47af99d9d5 h1:gFnu6lXLNG gitlab.com/elixxir/primitives v0.0.3-0.20210104223605-0e47af99d9d5/go.mod h1:BLL0lkR9foigqmsz1p3OLnwACBhS9fd3mVk9Ftflg9E= gitlab.com/elixxir/primitives v0.0.3-0.20210107183456-9cf6fe2de1e5 h1:50HbCJWirpX2Q+NNhIHcs0M9f45H1UJ/7LNMu81Bnn0= gitlab.com/elixxir/primitives v0.0.3-0.20210107183456-9cf6fe2de1e5/go.mod h1:Ph6isHUDVjmRUd9DioyKpd8W9J52gKBiDeue4DCygXA= +gitlab.com/elixxir/primitives v0.0.3-0.20210120174718-802bdcda9dbb h1:BA/qishMQwdNU7NJTq9WzkSIR45Fi35OrIJ8zqOy3lE= +gitlab.com/elixxir/primitives v0.0.3-0.20210120174718-802bdcda9dbb/go.mod h1:Ph6isHUDVjmRUd9DioyKpd8W9J52gKBiDeue4DCygXA= gitlab.com/xx_network/crypto v0.0.5-0.20201217195719-cc31e1d1eee3 h1:xXJAkvhHZl5CUX8/9rqe8hod5FbqZrxwMuT8cG48Mxs= gitlab.com/xx_network/crypto v0.0.5-0.20201217195719-cc31e1d1eee3/go.mod h1:iHCS8UOFndbXivLTeIarxN8TKbi3NcanZj29KtMzs2o= gitlab.com/xx_network/crypto v0.0.5-0.20210107183440-804e0f8b7d22 h1:SQga1vOuAGzbYURnBjG0f37r7WmWKZRdiqmdopaNMb4=