Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 15 additions & 15 deletions box_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,21 +40,21 @@ func ExampleBoxSeal() {
}

func TestBox(t *testing.T) {
ka := keys.Bytes32(encoding.DecodeHex("77076d0a7318a57d3c16c17251b26645df4c2f87ebc0992ab177fba51db92c2a"))
kpa := keys.Bytes32(encoding.DecodeHex("8520f0098930a754748b7ddcb43ef75a0dbf3a0d26381af4eba4a98eaa9b4e6a"))
kb := keys.Bytes32(encoding.DecodeHex("5dab087e624a8a4b79e17f8b83800ee66f3bb1292618b6fd1c2f8b27ff88e0eb"))
kpb := keys.Bytes32(encoding.DecodeHex("de9edb7d7b7dc1b4d35b61c2ece435373f8343c85b78674dadfc7e146f882b4f"))
nonce := keys.Bytes24(encoding.DecodeHex("69696ee955b62b73cd62bda875fc73d68219e0036b7a0b37"))
plain := encoding.DecodeHex("be075fc53c81f2d5cf141316ebeb0c7b5228c52a4c62cbd44b66849b64244ffc" +
"e5ecbaaf33bd751a1ac728d45e6c61296cdc3c01233561f41db66cce314adb31" +
"0e3be8250c46f06dceea3a7fa1348057e2f6556ad6b1318a024a838f21af1fde" +
"048977eb48f59ffd4924ca1c60902e52f0a089bc76897040e082f93776384864" +
"5e0705")
cipher := encoding.DecodeHex("f3ffc7703f9400e52a7dfb4b3d3305d98e993b9f48681273c29650ba32fc76ce" +
"48332ea7164d96a4476fb8c531a1186ac0dfc17c98dce87b4da7f011ec48c972" +
"71d2c20f9b928fe2270d6fb863d51738b48eeee314a7cc8ab932164548e526ae" +
"90224368517acfeabd6bb3732bc0e9da99832b61ca01b6de56244a9e88d5f9b3" +
"7973f622a43d14a6599b1f654cb45a74e355a5")
ka := keys.Bytes32(encoding.MustDecode("77076d0a7318a57d3c16c17251b26645df4c2f87ebc0992ab177fba51db92c2a", encoding.Hex))
kpa := keys.Bytes32(encoding.MustDecode("8520f0098930a754748b7ddcb43ef75a0dbf3a0d26381af4eba4a98eaa9b4e6a", encoding.Hex))
kb := keys.Bytes32(encoding.MustDecode("5dab087e624a8a4b79e17f8b83800ee66f3bb1292618b6fd1c2f8b27ff88e0eb", encoding.Hex))
kpb := keys.Bytes32(encoding.MustDecode("de9edb7d7b7dc1b4d35b61c2ece435373f8343c85b78674dadfc7e146f882b4f", encoding.Hex))
nonce := keys.Bytes24(encoding.MustDecode("69696ee955b62b73cd62bda875fc73d68219e0036b7a0b37", encoding.Hex))
plain := encoding.MustDecode("be075fc53c81f2d5cf141316ebeb0c7b5228c52a4c62cbd44b66849b64244ffc"+
"e5ecbaaf33bd751a1ac728d45e6c61296cdc3c01233561f41db66cce314adb31"+
"0e3be8250c46f06dceea3a7fa1348057e2f6556ad6b1318a024a838f21af1fde"+
"048977eb48f59ffd4924ca1c60902e52f0a089bc76897040e082f93776384864"+
"5e0705", encoding.Hex)
cipher := encoding.MustDecode("f3ffc7703f9400e52a7dfb4b3d3305d98e993b9f48681273c29650ba32fc76ce"+
"48332ea7164d96a4476fb8c531a1186ac0dfc17c98dce87b4da7f011ec48c972"+
"71d2c20f9b928fe2270d6fb863d51738b48eeee314a7cc8ab932164548e526ae"+
"90224368517acfeabd6bb3732bc0e9da99832b61ca01b6de56244a9e88d5f9b3"+
"7973f622a43d14a6599b1f654cb45a74e355a5", encoding.Hex)

alice := keys.NewX25519KeyFromPrivateKey(ka)
bob := keys.NewX25519KeyFromPrivateKey(kb)
Expand Down
22 changes: 11 additions & 11 deletions edx25519_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -77,17 +77,17 @@ func ExampleEdX25519Key_Sign() {
}

func TestSign(t *testing.T) {
// private := encoding.MustHex("b18e1d0045995ec3d010c387ccfeb984d783af8fbb0f40fa7db126d889f6dadd")
// public := encoding.MustHex("77f48b59caeda77751ed138b0ec667ff50f8768c25d48309a8f386a2bad187fb")
kp := encoding.DecodeHex("b18e1d0045995ec3d010c387ccfeb984d783af8fbb0f40fa7db126d889f6dadd" +
"77f48b59caeda77751ed138b0ec667ff50f8768c25d48309a8f386a2bad187fb")
msg := encoding.DecodeHex("916c7d1d268fc0e77c1bef238432573c39be577bbea0998936add2b50a653171" +
"ce18a542b0b7f96c1691a3be6031522894a8634183eda38798a0c5d5d79fbd01" +
"dd04a8646d71873b77b221998a81922d8105f892316369d5224c9983372d2313" +
"c6b1f4556ea26ba49d46e8b561e0fc76633ac9766e68e21fba7edca93c4c7460" +
"376d7f3ac22ff372c18f613f2ae2e856af40")
sig := encoding.DecodeHex("6bd710a368c1249923fc7a1610747403040f0cc30815a00f9ff548a896bbda0b" +
"4eb2ca19ebcf917f0f34200a9edbad3901b64ab09cc5ef7b9bcc3c40c0ff7509")
// private := encoding.MustDecode("b18e1d0045995ec3d010c387ccfeb984d783af8fbb0f40fa7db126d889f6dadd", encoding.Hex)
// public := encoding.MustDecode("77f48b59caeda77751ed138b0ec667ff50f8768c25d48309a8f386a2bad187fb", encoding.Hex)
kp := encoding.MustDecode("b18e1d0045995ec3d010c387ccfeb984d783af8fbb0f40fa7db126d889f6dadd"+
"77f48b59caeda77751ed138b0ec667ff50f8768c25d48309a8f386a2bad187fb", encoding.Hex)
msg := encoding.MustDecode("916c7d1d268fc0e77c1bef238432573c39be577bbea0998936add2b50a653171"+
"ce18a542b0b7f96c1691a3be6031522894a8634183eda38798a0c5d5d79fbd01"+
"dd04a8646d71873b77b221998a81922d8105f892316369d5224c9983372d2313"+
"c6b1f4556ea26ba49d46e8b561e0fc76633ac9766e68e21fba7edca93c4c7460"+
"376d7f3ac22ff372c18f613f2ae2e856af40", encoding.Hex)
sig := encoding.MustDecode("6bd710a368c1249923fc7a1610747403040f0cc30815a00f9ff548a896bbda0b"+
"4eb2ca19ebcf917f0f34200a9edbad3901b64ab09cc5ef7b9bcc3c40c0ff7509", encoding.Hex)

key := keys.NewEdX25519KeyFromPrivateKey(keys.Bytes64(kp))

Expand Down
16 changes: 8 additions & 8 deletions encoding/encode.go
Original file line number Diff line number Diff line change
Expand Up @@ -158,8 +158,8 @@ func MustDecode(s string, encoding Encoding) []byte {
}

// DecodeHex decode base16 (hex).
func DecodeHex(s string) []byte {
return MustDecode(s, Hex)
func DecodeHex(s string) ([]byte, error) {
return Decode(s, Hex)
}

// EncodeHex encode base16 (hex).
Expand All @@ -168,8 +168,8 @@ func EncodeHex(b []byte) string {
}

// DecodeBase32 decode base32.
func DecodeBase32(s string) []byte {
return MustDecode(s, Base32)
func DecodeBase32(s string) ([]byte, error) {
return Decode(s, Base32)
}

// EncodeBase32 encode base32.
Expand All @@ -178,8 +178,8 @@ func EncodeBase32(b []byte) string {
}

// DecodeBase62 decode base62.
func DecodeBase62(s string) []byte {
return MustDecode(s, Base62)
func DecodeBase62(s string) ([]byte, error) {
return Decode(s, Base62)
}

// EncodeBase62 encode base62.
Expand All @@ -188,8 +188,8 @@ func EncodeBase62(b []byte) string {
}

// DecodeBase64 decode base64.
func DecodeBase64(s string) []byte {
return MustDecode(s, Base64)
func DecodeBase64(s string) ([]byte, error) {
return Decode(s, Base64)
}

// EncodeBase64 encode base64.
Expand Down
12 changes: 8 additions & 4 deletions encoding/encode_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -80,15 +80,19 @@ func TestEncodeBase64(t *testing.T) {

func TestMustEncodeDecode(t *testing.T) {
in := bytes.Repeat([]byte{0x01}, 32)
out := encoding.DecodeBase32(encoding.EncodeBase32(in))
out, err := encoding.DecodeBase32(encoding.EncodeBase32(in))
require.NoError(t, err)
require.Equal(t, in, out)

out = encoding.DecodeBase62(encoding.EncodeBase62(in))
out, err = encoding.DecodeBase62(encoding.EncodeBase62(in))
require.NoError(t, err)
require.Equal(t, in, out)

out = encoding.DecodeBase64(encoding.EncodeBase64(in))
out, err = encoding.DecodeBase64(encoding.EncodeBase64(in))
require.NoError(t, err)
require.Equal(t, in, out)

out = encoding.DecodeHex(encoding.EncodeHex(in))
out, err = encoding.DecodeHex(encoding.EncodeHex(in))
require.NoError(t, err)
require.Equal(t, in, out)
}
24 changes: 12 additions & 12 deletions secretbox_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,18 +19,18 @@ func TestSecretBox(t *testing.T) {
}

func TestSecretBoxSeal(t *testing.T) {
key := keys.Bytes32(encoding.DecodeHex("1b27556473e985d462cd51197a9a46c76009549eac6474f206c4ee0844f68389"))
iv := keys.Bytes24(encoding.DecodeHex("69696ee955b62b73cd62bda875fc73d68219e0036b7a0b37"))
plain := encoding.DecodeHex("be075fc53c81f2d5cf141316ebeb0c7b5228c52a4c62cbd44b66849b64244ffc" +
"e5ecbaaf33bd751a1ac728d45e6c61296cdc3c01233561f41db66cce314adb31" +
"0e3be8250c46f06dceea3a7fa1348057e2f6556ad6b1318a024a838f21af1fde" +
"048977eb48f59ffd4924ca1c60902e52f0a089bc76897040e082f93776384864" +
"5e0705")
cipher := encoding.DecodeHex("f3ffc7703f9400e52a7dfb4b3d3305d98e993b9f48681273c29650ba32fc76ce" +
"48332ea7164d96a4476fb8c531a1186ac0dfc17c98dce87b4da7f011ec48c972" +
"71d2c20f9b928fe2270d6fb863d51738b48eeee314a7cc8ab932164548e526ae" +
"90224368517acfeabd6bb3732bc0e9da99832b61ca01b6de56244a9e88d5f9b3" +
"7973f622a43d14a6599b1f654cb45a74e355a5")
key := keys.Bytes32(encoding.MustDecode("1b27556473e985d462cd51197a9a46c76009549eac6474f206c4ee0844f68389", encoding.Hex))
iv := keys.Bytes24(encoding.MustDecode("69696ee955b62b73cd62bda875fc73d68219e0036b7a0b37", encoding.Hex))
plain := encoding.MustDecode("be075fc53c81f2d5cf141316ebeb0c7b5228c52a4c62cbd44b66849b64244ffc"+
"e5ecbaaf33bd751a1ac728d45e6c61296cdc3c01233561f41db66cce314adb31"+
"0e3be8250c46f06dceea3a7fa1348057e2f6556ad6b1318a024a838f21af1fde"+
"048977eb48f59ffd4924ca1c60902e52f0a089bc76897040e082f93776384864"+
"5e0705", encoding.Hex)
cipher := encoding.MustDecode("f3ffc7703f9400e52a7dfb4b3d3305d98e993b9f48681273c29650ba32fc76ce"+
"48332ea7164d96a4476fb8c531a1186ac0dfc17c98dce87b4da7f011ec48c972"+
"71d2c20f9b928fe2270d6fb863d51738b48eeee314a7cc8ab932164548e526ae"+
"90224368517acfeabd6bb3732bc0e9da99832b61ca01b6de56244a9e88d5f9b3"+
"7973f622a43d14a6599b1f654cb45a74e355a5", encoding.Hex)

encrypted := keys.PrivSecretBoxSeal(plain, iv, key)
require.Equal(t, iv[:], encrypted[:24])
Expand Down