Update MobileCoin measurements and configuration.

This commit is contained in:
Cody Henthorne 2023-01-06 11:21:38 -05:00 committed by Alex Hart
parent 9a763bd726
commit bdbeefe08e
4 changed files with 26 additions and 15 deletions

View file

@ -19,11 +19,12 @@ import java.security.cert.CertificateFactory;
import java.security.cert.X509Certificate;
import java.util.Collection;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public abstract class MobileCoinConfig {
abstract @NonNull Uri getConsensusUri();
abstract @NonNull List<Uri> getConsensusUris();
abstract @NonNull Uri getFogUri();

View file

@ -15,6 +15,8 @@ import org.whispersystems.signalservice.internal.push.AuthCredentials;
import java.io.IOException;
import java.security.cert.X509Certificate;
import java.util.Arrays;
import java.util.List;
import java.util.Set;
final class MobileCoinMainNetConfig extends MobileCoinConfig {
@ -26,8 +28,11 @@ final class MobileCoinMainNetConfig extends MobileCoinConfig {
}
@Override
@NonNull Uri getConsensusUri() {
return Uri.parse("mc://node1.prod.mobilecoinww.com");
@NonNull List<Uri> getConsensusUris() {
return Arrays.asList(
Uri.parse("mc://node1.consensus.mob.production.namda.net"),
Uri.parse("mc://node2.consensus.mob.production.namda.net")
);
}
@Override
@ -66,15 +71,7 @@ final class MobileCoinMainNetConfig extends MobileCoinConfig {
try {
Set<X509Certificate> trustRoots = getTrustRoots(R.raw.signal_mobilecoin_authority);
ClientConfig config = new ClientConfig();
VerifierFactory verifierFactory = new VerifierFactory(// ~June 23, 2021
new ServiceConfig(
"653228afd2b02a6c28f1dc3b108b1dfa457d170b32ae8ec2978f941bd1655c83",
"f3f7e9a674c55fb2af543513527b6a7872de305bac171783f6716a0bf6919499",
"89db0d1684fcc98258295c39f4ab68f7de5917ef30f0004d9a86f29930cebbbd",
"dd84abda7f05116e21fcd1ee6361b0ec29445fff0472131eaf37bf06255b567a",
new String[] { "INTEL-SA-00334" }
),
// ~July 8th, 2022
VerifierFactory verifierFactory = new VerifierFactory(// ~July 8th, 2022
new ServiceConfig(
"733080d6ece4504f66ba606fa8163dae0a5220f3dbf6ca55fbafbac12c6f1897",
"660103d766cde0fd1e1cfb443b99e52da2ce0617d0dee42f8b875f7104942c6b",
@ -97,6 +94,14 @@ final class MobileCoinMainNetConfig extends MobileCoinConfig {
"dca7521ce4564cc2e54e1637e533ea9d1901c2adcbab0e7a41055e719fb0ff9d",
"fd4c1c82cca13fa007be15a4c90e2b506c093b21c2e7021a055cbb34aa232f3f",
new String[] { "INTEL-SA-00334", "INTEL-SA-00615", "INTEL-SA-00657" }
),
// ~December 15, 2022
new ServiceConfig(
"e35bc15ee92775029a60a715dca05d310ad40993f56ad43bca7e649ccc9021b5",
"a8af815564569aae3558d8e4e4be14d1bcec896623166a10494b4eaea3e1c48c",
"8c80a2b95a549fa8d928dd0f0771be4f3d774408c0f98bf670b1a2c390706bf3",
"da209f4b24e8f4471bd6440c4e9f1b3100f1da09e2836d236e285b274901ed3b",
new String[] { "INTEL-SA-00334", "INTEL-SA-00615", "INTEL-SA-00657" }
));

View file

@ -14,6 +14,8 @@ import org.whispersystems.signalservice.internal.push.AuthCredentials;
import java.io.IOException;
import java.security.cert.X509Certificate;
import java.util.Arrays;
import java.util.List;
import java.util.Set;
final class MobileCoinTestNetConfig extends MobileCoinConfig {
@ -25,8 +27,11 @@ final class MobileCoinTestNetConfig extends MobileCoinConfig {
}
@Override
@NonNull Uri getConsensusUri() {
return Uri.parse("mc://node1.test.mobilecoin.com");
@NonNull List<Uri> getConsensusUris() {
return Arrays.asList(
Uri.parse("mc://node1.consensus.mob.staging.namda.net"),
Uri.parse("mc://node2.consensus.mob.staging.namda.net")
);
}
@Override

View file

@ -73,7 +73,7 @@ public final class Wallet {
this.mobileCoinClient = new MobileCoinClient(account,
mobileCoinConfig.getFogUri(),
mobileCoinConfig.getConsensusUri(),
mobileCoinConfig.getConsensusUris(),
mobileCoinConfig.getConfig(),
TransportProtocol.forGRPC());
} catch (InvalidUriException | BadEntropyException e) {