Skip to content

Commit 72b774c

Browse files
committed
[bitmex] switch API keys to url-safe base64 encoding, which is the
scheme used by bitmex
1 parent c3cf9ca commit 72b774c

File tree

1 file changed

+4
-8
lines changed

1 file changed

+4
-8
lines changed

xchange-bitmex/src/main/java/org/knowm/xchange/bitmex/service/BitmexDigest.java

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
11
package org.knowm.xchange.bitmex.service;
22

3-
import java.io.IOException;
43
import java.security.MessageDigest;
54
import java.security.NoSuchAlgorithmException;
5+
import java.util.Base64;
66

77
import javax.crypto.Mac;
88
import javax.ws.rs.FormParam;
99

1010
import org.knowm.xchange.service.BaseParamsDigest;
1111

12-
import net.iharder.Base64;
1312
import si.mazi.rescu.RestInvocation;
1413

1514
public class BitmexDigest extends BaseParamsDigest {
@@ -30,11 +29,8 @@ private BitmexDigest(byte[] secretKeyBase64) {
3029

3130
public static BitmexDigest createInstance(String secretKeyBase64) {
3231

33-
try {
34-
if (secretKeyBase64 != null)
35-
return new BitmexDigest(Base64.decode(secretKeyBase64.getBytes()));
36-
} catch (IOException e) {
37-
throw new IllegalArgumentException("Could not decode Base 64 string", e);
32+
if (secretKeyBase64 != null) {
33+
return new BitmexDigest(Base64.getUrlDecoder().decode(secretKeyBase64.getBytes()));
3834
}
3935
return null;
4036
}
@@ -55,7 +51,7 @@ public String digestParams(RestInvocation restInvocation) {
5551
mac512.update(("/" + restInvocation.getPath()).getBytes());
5652
mac512.update(sha256.digest());
5753

58-
return Base64.encodeBytes(mac512.doFinal()).trim();
54+
return Base64.getUrlEncoder().encodeToString(mac512.doFinal()).trim();
5955

6056
}
6157

0 commit comments

Comments
 (0)