diff --git a/app/src/main/java/com/cobo/cold/callables/RequestUpdateCallable.java b/app/src/main/java/com/cobo/cold/callables/RequestUpdateCallable.java index 5182fda..dce0c0e 100644 --- a/app/src/main/java/com/cobo/cold/callables/RequestUpdateCallable.java +++ b/app/src/main/java/com/cobo/cold/callables/RequestUpdateCallable.java @@ -68,7 +68,6 @@ public class RequestUpdateCallable implements Callable { } private boolean updating() throws Exception { - final byte[] checksum = calculateChecksum(updateData); final byte[] readBuffer = new byte[CONSTANTS.CONFIG.PAGE_SIZE]; try (InputStream inputStream = new ByteArrayInputStream(updateData)) { // skip metadata @@ -89,9 +88,6 @@ public class RequestUpdateCallable implements Callable { .addBytePayload(CONSTANTS.TAGS.UPDATING_PACKAGE_TYPE, type) .addHexPayload(CONSTANTS.TAGS.CURRENT_PASSWORD, password) .addBytesPayload(CONSTANTS.TAGS.UPDATING_PACKAGE, availableBuffer); - if (type == TYPE_PACKAGE_END) { - builder.addBytesPayload(CONSTANTS.TAGS.UPDATING_CHECKSUM, checksum); - } final Callable callable = new BlockingCallable(builder.build()); try { Log.w(TAG, String.format("write the %sth package", packageIndex)); diff --git a/app/src/main/java/com/cobo/cold/callables/UpdateCallable.java b/app/src/main/java/com/cobo/cold/callables/UpdateCallable.java index c97e98d..6ccb725 100644 --- a/app/src/main/java/com/cobo/cold/callables/UpdateCallable.java +++ b/app/src/main/java/com/cobo/cold/callables/UpdateCallable.java @@ -106,8 +106,6 @@ public class UpdateCallable implements Callable { } private void updating() throws Exception { - final byte[] checksum = calculateChecksum(mUpdateData); - final byte[] readBuffer = new byte[CONSTANTS.CONFIG.PAGE_SIZE]; try (InputStream inputStream = new ByteArrayInputStream(mUpdateData)) { @@ -124,7 +122,7 @@ public class UpdateCallable implements Callable { final byte[] availableBuffer = fitBuffer(readBuffer, read); final int type = calculatePackageType(packageSize, readPosition, read); for (int i = 1; i <= PACKET_RETRY_TIMES; ++i) { - if (writeUpdateBytes(checksum, packageIndex, availableBuffer, type, i)) break; + if (writeUpdateBytes(packageIndex, availableBuffer, type, i)) break; } readPosition += read; ++packageIndex; @@ -154,17 +152,13 @@ public class UpdateCallable implements Callable { return false; } - private boolean writeUpdateBytes(byte[] checksum, int packageIndex, byte[] availableBuffer, int type, int i) { + private boolean writeUpdateBytes(int packageIndex, byte[] availableBuffer, int type, int i) { boolean writeSuccess = true; final Packet.Builder builder = new Packet.Builder(CONSTANTS.METHODS.WRITE_UPDATE_BYTES) .addBytePayload(CONSTANTS.TAGS.UPDATING_PACKAGE_TYPE, type) .addHexPayload(CONSTANTS.TAGS.CURRENT_PASSWORD, password) .addBytesPayload(CONSTANTS.TAGS.UPDATING_PACKAGE, availableBuffer); - if (type == TYPE_PACKAGE_END) { - builder.addBytesPayload(CONSTANTS.TAGS.UPDATING_CHECKSUM, checksum); - } - final Callable callable = new BlockingCallable(builder.build()); try { diff --git a/coinlib/src/main/java/com/cobo/coinlib/coins/BTC/Btc.java b/coinlib/src/main/java/com/cobo/coinlib/coins/BTC/Btc.java index 31846d4..5e70923 100644 --- a/coinlib/src/main/java/com/cobo/coinlib/coins/BTC/Btc.java +++ b/coinlib/src/main/java/com/cobo/coinlib/coins/BTC/Btc.java @@ -178,6 +178,7 @@ public class Btc extends AbsCoin { StringBuilder paths = new StringBuilder(); for (int i = 0; i < inputs.length(); i++) { JSONObject input = inputs.getJSONObject(i); + input.put("bip32Derivation",new JSONArray()); String path = input.getString("ownerKeyPath"); checkHdPath(path, false); paths.append(path).append(SEPARATOR);