Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit dac0b02

Browse files
committedNov 7, 2018
Normalized method name
1 parent 460697b commit dac0b02

File tree

5 files changed

+37
-30
lines changed

5 files changed

+37
-30
lines changed
 

‎src/main/java/org/tron/common/zksnark/merkle/IncrementalMerkleTreeContainer.java

+4-1
Original file line numberDiff line numberDiff line change
@@ -283,11 +283,14 @@ public MerklePath path(Deque<SHA256Compress> filler_hashes) {
283283
}
284284

285285

286+
public byte[] getMerkleTreeKey() {
287+
return getRootArray();
288+
}
289+
286290
public byte[] getRootArray() {
287291
return root().getContent().toByteArray();
288292
}
289293

290-
291294
public IncrementalMerkleWitnessContainer toWitness() {
292295
return new IncrementalMerkleWitnessContainer(this);
293296
}

‎src/main/java/org/tron/common/zksnark/merkle/IncrementalMerkleWitnessContainer.java

+4
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,10 @@ public SHA256Compress root() {
7878
return witnessCapsule.getTree().toMerkleTreeContainer().root(DEPTH, partial_path());
7979
}
8080

81+
public byte[] getMerkleWitnessKey() {
82+
return root().getContent().toByteArray();
83+
}
84+
8185

8286
public byte[] getRootArray() {
8387
return root().getContent().toByteArray();

‎src/main/java/org/tron/common/zksnark/merkle/MerkleContainer.java

+19-20
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,8 @@ public IncrementalMerkleTreeContainer getBestMerkleRoot() {
3838

3939
container.append(a);
4040

41-
this.manager.getMerkleTreeStore().put(container.getRootArray(), container.getTreeCapsule());
41+
this.manager.getMerkleTreeStore()
42+
.put(container.getMerkleTreeKey(), container.getTreeCapsule());
4243
return container;
4344
}
4445
return capsule.toMerkleTreeContainer();
@@ -60,49 +61,47 @@ public IncrementalMerkleTreeCapsule getMerkleTree(byte[] rt) {
6061
}
6162

6263

63-
public IncrementalMerkleTreeContainer saveCmIntoMerkleAndStore(byte[] rt, byte[] cm) {
64-
IncrementalMerkleTreeContainer tree = this.manager.getMerkleTreeStore().get(rt)
65-
.toMerkleTreeContainer();
64+
public IncrementalMerkleTreeContainer saveCmIntoMerkleTree(IncrementalMerkleTreeContainer tree,
65+
byte[] cm) {
6666

6767
SHA256CompressCapsule sha256CompressCapsule1 = new SHA256CompressCapsule();
6868
sha256CompressCapsule1.setContent(ByteString.copyFrom(cm));
6969
tree.append(sha256CompressCapsule1.getInstance());
7070

71-
putMerkleTreeIntoStore(tree.getRootArray(), tree.getTreeCapsule());
7271
return tree;
7372
}
7473

7574

76-
public IncrementalMerkleTreeContainer saveCmIntoMerkleAndStore(byte[] rt, byte[] cm1,
75+
public IncrementalMerkleTreeContainer saveCmIntoMerkleTree(byte[] rt, byte[] cm1,
7776
byte[] cm2) {
7877

79-
IncrementalMerkleTreeContainer container1 = saveCmIntoMerkleAndStore(rt,
80-
cm1);
78+
IncrementalMerkleTreeContainer tree = this.manager.getMerkleTreeStore().get(rt)
79+
.toMerkleTreeContainer();
8180

82-
IncrementalMerkleWitnessContainer witnessContainer1 = container1.toWitness();
81+
tree = saveCmIntoMerkleTree(tree, cm1);
8382

84-
putMerkleWitnessIntoStore(witnessContainer1.getRootArray(),
83+
IncrementalMerkleWitnessContainer witnessContainer1 = tree.toWitness();
84+
putMerkleWitnessIntoStore(witnessContainer1.getMerkleWitnessKey(),
8585
witnessContainer1.getWitnessCapsule());
8686

87-
IncrementalMerkleTreeContainer container2 = saveCmIntoMerkleAndStore(container1.getRootArray(),
88-
cm2);
87+
tree = saveCmIntoMerkleTree(tree, cm2);
8988

90-
IncrementalMerkleWitnessContainer witnessContainer2 = saveCmIntoMerkleWitnessAndStore(
91-
witnessContainer1.getRootArray(), cm2);
89+
IncrementalMerkleWitnessContainer witnessContainer2 = saveCmIntoMerkleWitness(
90+
witnessContainer1, cm2);
91+
putMerkleWitnessIntoStore(witnessContainer2.getMerkleWitnessKey(),
92+
witnessContainer2.getWitnessCapsule());
9293

93-
return container2;
94+
putMerkleTreeIntoStore(tree.getMerkleTreeKey(), tree.getTreeCapsule());
95+
return tree;
9496

9597
}
9698

97-
public IncrementalMerkleWitnessContainer saveCmIntoMerkleWitnessAndStore(byte[] rt, byte[] cm) {
98-
IncrementalMerkleWitnessContainer tree = this.manager.getMerkleWitnessStore().get(rt)
99-
.toMerkleWitnessContainer();
100-
99+
public IncrementalMerkleWitnessContainer saveCmIntoMerkleWitness(
100+
IncrementalMerkleWitnessContainer tree, byte[] cm) {
101101
SHA256CompressCapsule sha256CompressCapsule1 = new SHA256CompressCapsule();
102102
sha256CompressCapsule1.setContent(ByteString.copyFrom(cm));
103103
tree.append(sha256CompressCapsule1.getInstance());
104104

105-
putMerkleWitnessIntoStore(tree.getRootArray(), tree.getWitnessCapsule());
106105
return tree;
107106
}
108107

‎src/main/java/org/tron/core/actuator/ZkV0TransferActuator.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public boolean execute(TransactionResultCapsule ret) throws ContractExeException
5757
dbManager.getNullfierStore().put(nf1, new BytesCapsule(nf1));
5858
dbManager.getNullfierStore().put(nf2, new BytesCapsule(nf2));
5959

60-
dbManager.getMerkleContainer().saveCmIntoMerkleAndStore(zkContract.getRt().toByteArray(),
60+
dbManager.getMerkleContainer().saveCmIntoMerkleTree(zkContract.getRt().toByteArray(),
6161
zkContract.getCm1().toByteArray(), zkContract.getCm2().toByteArray());
6262
return true;
6363
}

‎src/test/java/org/tron/common/zksnark/MerkleContainerTest.java

+9-8
Original file line numberDiff line numberDiff line change
@@ -73,15 +73,15 @@ public void test() {
7373
//root
7474
//todo : need check
7575
Assert.assertEquals("835ea79627cfa5b773439220b4a8fba947be8b3faab18ffe12dd2343cd669d15",
76-
ByteArray.toHexString(tree.getRootArray()));
76+
ByteArray.toHexString(tree.getMerkleTreeKey()));
7777

7878
//save
79-
merkleContainer.putMerkleTreeIntoStore(tree.getRootArray(), tree.getTreeCapsule());
79+
merkleContainer.putMerkleTreeIntoStore(tree.getMerkleTreeKey(), tree.getTreeCapsule());
8080

8181
//get
82-
Assert.assertEquals(true, merkleContainer.merkleRootIsExist(tree.getRootArray()));
82+
Assert.assertEquals(true, merkleContainer.merkleRootIsExist(tree.getMerkleTreeKey()));
8383

84-
tree = merkleContainer.getMerkleTree(tree.getRootArray()).toMerkleTreeContainer();
84+
tree = merkleContainer.getMerkleTree(tree.getMerkleTreeKey()).toMerkleTreeContainer();
8585
Assert.assertEquals(3, tree.size());
8686

8787
//other
@@ -90,13 +90,13 @@ public void test() {
9090
Assert.assertEquals(96, tree.DynamicMemoryUsage());
9191
tree.wfcheck();
9292

93-
//saveCmIntoMerkleAndStore
93+
//saveCmIntoMerkleTree
9494
IncrementalMerkleTreeContainer newTree = merkleContainer
95-
.saveCmIntoMerkleAndStore(tree.getRootArray(), ByteArray.fromHexString(s1),
95+
.saveCmIntoMerkleTree(tree.getMerkleTreeKey(), ByteArray.fromHexString(s1),
9696
ByteArray.fromHexString(s2));
9797
//todo : need check
9898
Assert.assertEquals("18a4aa922c9f3f8aecb5cd469bc92da72297cda82c55c3a50c36e7b2956c8b80",
99-
ByteArray.toHexString(newTree.getRootArray()));
99+
ByteArray.toHexString(newTree.getMerkleTreeKey()));
100100

101101
Assert.assertEquals(3, tree.size());
102102
Assert.assertEquals(5, newTree.size());
@@ -122,7 +122,8 @@ public void test() {
122122
witness.path();
123123

124124
//save
125-
merkleContainer.putMerkleWitnessIntoStore(witness.getRootArray(), witness.getWitnessCapsule());
125+
merkleContainer
126+
.putMerkleWitnessIntoStore(witness.getMerkleWitnessKey(), witness.getWitnessCapsule());
126127

127128
IncrementalMerkleTreeContainer bestMerkleRoot = merkleContainer.getBestMerkleRoot();
128129
Assert.assertEquals(1, bestMerkleRoot.size());

0 commit comments

Comments
 (0)
Please sign in to comment.