99 "github.com/jedisct1/dlog"
1010 "github.com/jedisct1/xsecretbox"
1111 "golang.org/x/crypto/curve25519"
12- "golang.org/x/crypto/nacl/box"
13- "golang.org/x/crypto/nacl/secretbox"
1412)
1513
1614const (
@@ -57,19 +55,9 @@ func ComputeSharedKey(
5755 dlog .Criticalf ("[%v] Weak XChaCha20 public key" , providerName )
5856 }
5957 } else {
60- box .Precompute (& sharedKey , serverPk , secretKey )
61- c := byte (0 )
62- for i := 0 ; i < 32 ; i ++ {
63- c |= sharedKey [i ]
64- }
65- if c == 0 {
66- dlog .Criticalf ("[%v] Weak XSalsa20 public key" , providerName )
67- if _ , err := crypto_rand .Read (sharedKey [:]); err != nil {
68- dlog .Fatal (err )
69- }
70- }
58+ dlog .Criticalf ("[%v] Unsupported encryption system" , providerName )
7159 }
72- return
60+ return sharedKey
7361}
7462
7563func (proxy * Proxy ) Encrypt (
@@ -124,9 +112,7 @@ func (proxy *Proxy) Encrypt(
124112 if serverInfo .CryptoConstruction == XChacha20Poly1305 {
125113 encrypted = xsecretbox .Seal (encrypted , nonce , padded , sharedKey [:])
126114 } else {
127- var xsalsaNonce [24 ]byte
128- copy (xsalsaNonce [:], nonce )
129- encrypted = secretbox .Seal (encrypted , padded , & xsalsaNonce , sharedKey )
115+ err = errors .New ("Unsupported encryption system" )
130116 }
131117 return
132118}
@@ -153,13 +139,7 @@ func (proxy *Proxy) Decrypt(
153139 if serverInfo .CryptoConstruction == XChacha20Poly1305 {
154140 packet , err = xsecretbox .Open (nil , serverNonce , encrypted [responseHeaderLen :], sharedKey [:])
155141 } else {
156- var xsalsaServerNonce [24 ]byte
157- copy (xsalsaServerNonce [:], serverNonce )
158- var ok bool
159- packet , ok = secretbox .Open (nil , encrypted [responseHeaderLen :], & xsalsaServerNonce , sharedKey )
160- if ! ok {
161- err = errors .New ("Incorrect tag" )
162- }
142+ err = errors .New ("Unsupported encryption system" )
163143 }
164144 if err != nil {
165145 return encrypted , err
0 commit comments