Skip to content

Commit a4a0a24

Browse files
authored
Revise extradata encode (tronprotocol#3104)
* remove unnecessary base64 encode on extra_data field * fix checkStyle error
1 parent 973491d commit a4a0a24

File tree

2 files changed

+6
-4
lines changed
  • framework/src

2 files changed

+6
-4
lines changed

framework/src/main/java/org/tron/core/services/http/Util.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
import lombok.extern.slf4j.Slf4j;
2323
import org.apache.commons.lang3.StringUtils;
2424
import org.eclipse.jetty.util.StringUtil;
25-
import org.spongycastle.util.encoders.Base64;
2625
import org.spongycastle.util.encoders.Hex;
2726
import org.tron.api.GrpcAPI.BlockList;
2827
import org.tron.api.GrpcAPI.EasyTransferResponse;
@@ -353,7 +352,11 @@ public static Transaction setTransactionExtraData(JSONObject jsonObject,
353352
String data = jsonObject.getString(EXTRA_DATA);
354353
if (data.length() > 0) {
355354
Transaction.raw.Builder raw = transaction.getRawData().toBuilder();
356-
raw.setData(ByteString.copyFrom(Base64.decode(data)));
355+
if (getVisibleOnlyForSign(jsonObject)) {
356+
raw.setData(ByteString.copyFrom(data.getBytes()));
357+
} else {
358+
raw.setData(ByteString.copyFrom(ByteArray.fromHexString(data)));
359+
}
357360
return transaction.toBuilder().setRawData(raw).build();
358361
}
359362
}

framework/src/test/java/stest/tron/wallet/common/client/utils/HttpMethed.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
import org.apache.http.params.CoreConnectionPNames;
2525
import org.apache.http.util.EntityUtils;
2626
import org.junit.Assert;
27-
import org.spongycastle.util.encoders.Base64;
2827
import org.testng.collections.Lists;
2928
import org.tron.api.GrpcAPI;
3029
import org.tron.common.utils.ByteArray;
@@ -296,7 +295,7 @@ public static String sendCoin(String httpNode, byte[] fromAddress, byte[] toAddr
296295
userBaseObj2.addProperty("to_address", ByteArray.toHexString(toAddress));
297296
userBaseObj2.addProperty("owner_address", ByteArray.toHexString(fromAddress));
298297
userBaseObj2.addProperty("amount", amount);
299-
userBaseObj2.addProperty("extra_data", Base64.toBase64String(notes.getBytes()));
298+
userBaseObj2.addProperty("extra_data", ByteArray.toHexString(notes.getBytes()));
300299
response = createConnect(requestUrl, userBaseObj2);
301300
transactionString = EntityUtils.toString(response.getEntity());
302301
transactionSignString = gettransactionsign(httpNode, transactionString, fromKey);

0 commit comments

Comments
 (0)