Skip to content
This repository was archived by the owner on Sep 6, 2022. It is now read-only.

Commit 105c883

Browse files
dignifiedquireStebalien
authored andcommitted
use equal method from openssl
uses spacemonkeygo/openssl#126
1 parent 96972fe commit 105c883

File tree

4 files changed

+39
-21
lines changed

4 files changed

+39
-21
lines changed

crypto/openssl_common.go

Lines changed: 29 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77

88
pb "github.com/libp2p/go-libp2p-core/crypto/pb"
99

10-
openssl "github.com/spacemonkeygo/openssl"
10+
openssl "github.com/libp2p/go-openssl"
1111
)
1212

1313
// define these as separate types so we can add more key types later and reuse
@@ -63,15 +63,21 @@ func (pk *opensslPublicKey) Raw() ([]byte, error) {
6363

6464
// Equals checks whether this key is equal to another
6565
func (pk *opensslPublicKey) Equals(k Key) bool {
66-
a, err := pk.Raw()
67-
if err != nil {
68-
return false
69-
}
70-
b, err := k.Raw()
71-
if err != nil {
72-
return false
66+
k0, ok := k.(*RsaPublicKey)
67+
if !ok {
68+
a, err := pk.Raw()
69+
if err != nil {
70+
return false
71+
}
72+
b, err := k.Raw()
73+
if err != nil {
74+
return false
75+
}
76+
77+
return bytes.Equal(a, b)
7378
}
74-
return bytes.Equal(a, b)
79+
80+
return pk.key.Equal(k0.opensslPublicKey.key)
7581
}
7682

7783
// Sign returns a signature of the input data
@@ -104,13 +110,19 @@ func (sk *opensslPrivateKey) Raw() ([]byte, error) {
104110

105111
// Equals checks whether this key is equal to another
106112
func (sk *opensslPrivateKey) Equals(k Key) bool {
107-
a, err := sk.Raw()
108-
if err != nil {
109-
return false
110-
}
111-
b, err := k.Raw()
112-
if err != nil {
113-
return false
113+
k0, ok := k.(*RsaPrivateKey)
114+
if !ok {
115+
a, err := sk.Raw()
116+
if err != nil {
117+
return false
118+
}
119+
b, err := k.Raw()
120+
if err != nil {
121+
return false
122+
}
123+
124+
return bytes.Equal(a, b)
114125
}
115-
return bytes.Equal(a, b)
126+
127+
return sk.key.Equal(k0.opensslPrivateKey.key)
116128
}

crypto/rsa_openssl.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import (
66
"errors"
77
"io"
88

9-
openssl "github.com/spacemonkeygo/openssl"
9+
openssl "github.com/libp2p/go-openssl"
1010
)
1111

1212
// RsaPrivateKey is an rsa private key

go.mod

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,13 @@ require (
77
github.com/ipfs/go-cid v0.0.2
88
github.com/jbenet/goprocess v0.1.3
99
github.com/libp2p/go-flow-metrics v0.0.1
10+
github.com/libp2p/go-openssl v0.0.1
1011
github.com/minio/sha256-simd v0.1.0
1112
github.com/mr-tron/base58 v1.1.2
1213
github.com/multiformats/go-multiaddr v0.0.4
1314
github.com/multiformats/go-multihash v0.0.5
14-
github.com/spacemonkeygo/openssl v0.0.0-20181017203307-c2dcc5cca94a
1515
go.opencensus.io v0.21.0
1616
golang.org/x/crypto v0.0.0-20190618222545-ea8f1a30c443
1717
)
18+
19+
replace github.com/spacemonkeygo/openssl => github.com/dignifiedquire/openssl v0.0.0-20190628113709-80f7894f8393

go.sum

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@ github.com/coreos/go-semver v0.3.0 h1:wkHLiw0WNATZnSG7epLsujiMCgPAc9xhjJ4tgnAxmf
2121
github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk=
2222
github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495 h1:6IyqGr3fnd0tM3YxipK27TUskaOVUjU2nG45yzwcQKY=
2323
github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
24+
github.com/dignifiedquire/openssl v0.0.0-20190628113709-80f7894f8393 h1:B92kIXsWHWxJF8o6rtFGipDDFHbL7Fq8u8o8wM4OWYk=
25+
github.com/dignifiedquire/openssl v0.0.0-20190628113709-80f7894f8393/go.mod h1:7AyxJNCJ7SBZ1MfVQCWD6Uqo2oubI2Eq2y2eqf+A5r0=
2426
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
2527
github.com/gogo/protobuf v1.2.1 h1:/s5zKNz0uPFCZ5hddgPdo2TK2TVrUNMn0OOX8/aZMTE=
2628
github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4=
@@ -53,6 +55,8 @@ github.com/kkdai/bstream v0.0.0-20161212061736-f391b8402d23 h1:FOOIBWrEkLgmlgGfM
5355
github.com/kkdai/bstream v0.0.0-20161212061736-f391b8402d23/go.mod h1:J+Gs4SYgM6CZQHDETBtE9HaSEkGmuNXF86RwHhHUvq4=
5456
github.com/libp2p/go-flow-metrics v0.0.1 h1:0gxuFd2GuK7IIP5pKljLwps6TvcuYgvG7Atqi3INF5s=
5557
github.com/libp2p/go-flow-metrics v0.0.1/go.mod h1:Iv1GH0sG8DtYN3SVJ2eG221wMiNpZxBdp967ls1g+k8=
58+
github.com/libp2p/go-openssl v0.0.1 h1:hOIo7l0lXir9UzQE2zPxwd/Gdts1LFik0nqhbDZrG8U=
59+
github.com/libp2p/go-openssl v0.0.1/go.mod h1:v8Zw2ijCSWBQi8Pq5GAixw6DbFfa9u6VIYDXnvOXkc0=
5660
github.com/minio/blake2b-simd v0.0.0-20160723061019-3f5f724cb5b1 h1:lYpkrQH5ajf0OXOcUbGjvZxxijuBwbbmlSxLiuofa+g=
5761
github.com/minio/blake2b-simd v0.0.0-20160723061019-3f5f724cb5b1/go.mod h1:pD8RvIylQ358TN4wwqatJ8rNavkEINozVn9DtGI3dfQ=
5862
github.com/minio/sha256-simd v0.0.0-20190131020904-2d45a736cd16 h1:5W7KhL8HVF3XCFOweFD3BNESdnO8ewyYTFT2R+/b8FQ=
@@ -77,8 +81,6 @@ github.com/multiformats/go-multihash v0.0.5/go.mod h1:lt/HCbqlQwlPBz7lv0sQCdtfcM
7781
github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
7882
github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
7983
github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
80-
github.com/spacemonkeygo/openssl v0.0.0-20181017203307-c2dcc5cca94a h1:/eS3yfGjQKG+9kayBkj0ip1BGhq6zJ3eaVksphxAaek=
81-
github.com/spacemonkeygo/openssl v0.0.0-20181017203307-c2dcc5cca94a/go.mod h1:7AyxJNCJ7SBZ1MfVQCWD6Uqo2oubI2Eq2y2eqf+A5r0=
8284
github.com/spacemonkeygo/spacelog v0.0.0-20180420211403-2296661a0572 h1:RC6RW7j+1+HkWaX/Yh71Ee5ZHaHYt7ZP4sQgUrm6cDU=
8385
github.com/spacemonkeygo/spacelog v0.0.0-20180420211403-2296661a0572/go.mod h1:w0SWMsp6j9O/dk4/ZpIhL+3CkG8ofA2vuv7k+ltqUMc=
8486
github.com/spaolacci/murmur3 v1.1.0 h1:7c1g84S4BPRrfL5Xrdp6fOJ206sU9y293DDHaoy0bLI=
@@ -116,6 +118,8 @@ golang.org/x/sys v0.0.0-20190219092855-153ac476189d h1:Z0Ahzd7HltpJtjAHHxX8QFP3j
116118
golang.org/x/sys v0.0.0-20190219092855-153ac476189d/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
117119
golang.org/x/sys v0.0.0-20190412213103-97732733099d h1:+R4KGOnez64A81RvjARKc4UT5/tI9ujCIVX+P5KiHuI=
118120
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
121+
golang.org/x/sys v0.0.0-20190626221950-04f50cda93cb h1:fgwFCsaw9buMuxNd6+DQfAuSFqbNiQZpcgJQAgJsK6k=
122+
golang.org/x/sys v0.0.0-20190626221950-04f50cda93cb/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
119123
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
120124
golang.org/x/tools v0.0.0-20180221164845-07fd8470d635 h1:2eB4G6bDQDeP69ZXbOKC00S2Kf6TIiRS+DzfKsKeQU0=
121125
golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=

0 commit comments

Comments
 (0)