mirror of
https://github.com/haveno-dex/haveno.git
synced 2025-08-09 15:12:26 -04:00
update public keys with dev privileges on stagenet (#1883)
This commit is contained in:
parent
866aaac51d
commit
2ff149b1eb
3 changed files with 31 additions and 16 deletions
|
@ -105,9 +105,9 @@ public class AlertManager {
|
||||||
"024baabdba90e7cc0dc4626ef73ea9d722ea7085d1104491da8c76f28187513492");
|
"024baabdba90e7cc0dc4626ef73ea9d722ea7085d1104491da8c76f28187513492");
|
||||||
case XMR_STAGENET:
|
case XMR_STAGENET:
|
||||||
return List.of(
|
return List.of(
|
||||||
"036d8a1dfcb406886037d2381da006358722823e1940acc2598c844bbc0fd1026f",
|
"03aa23e062afa0dda465f46986f8aa8d0374ad3e3f256141b05681dcb1e39c3859",
|
||||||
"026c581ad773d987e6bd10785ac7f7e0e64864aedeb8bce5af37046de812a37854",
|
"02d3beb1293ca2ca14e6d42ca8bd18089a62aac62fd6bb23923ee6ead46ac60fba",
|
||||||
"025b058c9f2c60d839669dbfa5578cf5a8117d60e6b70e2f0946f8a691273c6a36");
|
"0374dd70f3fa6e47ec5ab97932e1cec6233e98e6ae3129036b17118650c44fd3de");
|
||||||
case XMR_MAINNET:
|
case XMR_MAINNET:
|
||||||
return List.of();
|
return List.of();
|
||||||
default:
|
default:
|
||||||
|
|
|
@ -104,9 +104,9 @@ public class PrivateNotificationManager implements MessageListener {
|
||||||
"024baabdba90e7cc0dc4626ef73ea9d722ea7085d1104491da8c76f28187513492");
|
"024baabdba90e7cc0dc4626ef73ea9d722ea7085d1104491da8c76f28187513492");
|
||||||
case XMR_STAGENET:
|
case XMR_STAGENET:
|
||||||
return List.of(
|
return List.of(
|
||||||
"02ba7c5de295adfe57b60029f3637a2c6b1d0e969a8aaefb9e0ddc3a7963f26925",
|
"03aa23e062afa0dda465f46986f8aa8d0374ad3e3f256141b05681dcb1e39c3859",
|
||||||
"026c581ad773d987e6bd10785ac7f7e0e64864aedeb8bce5af37046de812a37854",
|
"02d3beb1293ca2ca14e6d42ca8bd18089a62aac62fd6bb23923ee6ead46ac60fba",
|
||||||
"025b058c9f2c60d839669dbfa5578cf5a8117d60e6b70e2f0946f8a691273c6a36");
|
"0374dd70f3fa6e47ec5ab97932e1cec6233e98e6ae3129036b17118650c44fd3de");
|
||||||
case XMR_MAINNET:
|
case XMR_MAINNET:
|
||||||
return List.of();
|
return List.of();
|
||||||
default:
|
default:
|
||||||
|
|
|
@ -84,9 +84,9 @@ public class FilterManager {
|
||||||
private final ConfigFileEditor configFileEditor;
|
private final ConfigFileEditor configFileEditor;
|
||||||
private final ProvidersRepository providersRepository;
|
private final ProvidersRepository providersRepository;
|
||||||
private final boolean ignoreDevMsg;
|
private final boolean ignoreDevMsg;
|
||||||
|
private final boolean useDevPrivilegeKeys;
|
||||||
private final ObjectProperty<Filter> filterProperty = new SimpleObjectProperty<>();
|
private final ObjectProperty<Filter> filterProperty = new SimpleObjectProperty<>();
|
||||||
private final List<Listener> listeners = new CopyOnWriteArrayList<>();
|
private final List<Listener> listeners = new CopyOnWriteArrayList<>();
|
||||||
private final List<String> publicKeys;
|
|
||||||
private ECKey filterSigningKey;
|
private ECKey filterSigningKey;
|
||||||
private final Set<Filter> invalidFilters = new HashSet<>();
|
private final Set<Filter> invalidFilters = new HashSet<>();
|
||||||
private Consumer<String> filterWarningHandler;
|
private Consumer<String> filterWarningHandler;
|
||||||
|
@ -113,16 +113,31 @@ public class FilterManager {
|
||||||
this.configFileEditor = new ConfigFileEditor(config.configFile);
|
this.configFileEditor = new ConfigFileEditor(config.configFile);
|
||||||
this.providersRepository = providersRepository;
|
this.providersRepository = providersRepository;
|
||||||
this.ignoreDevMsg = ignoreDevMsg;
|
this.ignoreDevMsg = ignoreDevMsg;
|
||||||
|
this.useDevPrivilegeKeys = useDevPrivilegeKeys;
|
||||||
publicKeys = useDevPrivilegeKeys ?
|
|
||||||
Collections.singletonList(DevEnv.DEV_PRIVILEGE_PUB_KEY) :
|
|
||||||
List.of("0358d47858acdc41910325fce266571540681ef83a0d6fedce312bef9810793a27",
|
|
||||||
"029340c3e7d4bb0f9e651b5f590b434fecb6175aeaa57145c7804ff05d210e534f",
|
|
||||||
"034dc7530bf66ffd9580aa98031ea9a18ac2d269f7c56c0e71eca06105b9ed69f9");
|
|
||||||
|
|
||||||
banFilter.setBannedNodePredicate(this::isNodeAddressBannedFromNetwork);
|
banFilter.setBannedNodePredicate(this::isNodeAddressBannedFromNetwork);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected List<String> getPubKeyList() {
|
||||||
|
switch (Config.baseCurrencyNetwork()) {
|
||||||
|
case XMR_LOCAL:
|
||||||
|
if (useDevPrivilegeKeys) return Collections.singletonList(DevEnv.DEV_PRIVILEGE_PUB_KEY);
|
||||||
|
return List.of(
|
||||||
|
"027a381b5333a56e1cc3d90d3a7d07f26509adf7029ed06fc997c656621f8da1ee",
|
||||||
|
"024baabdba90e7cc0dc4626ef73ea9d722ea7085d1104491da8c76f28187513492",
|
||||||
|
"026eeec3c119dd6d537249d74e5752a642dd2c3cc5b6a9b44588eb58344f29b519");
|
||||||
|
case XMR_STAGENET:
|
||||||
|
return List.of(
|
||||||
|
"03aa23e062afa0dda465f46986f8aa8d0374ad3e3f256141b05681dcb1e39c3859",
|
||||||
|
"02d3beb1293ca2ca14e6d42ca8bd18089a62aac62fd6bb23923ee6ead46ac60fba",
|
||||||
|
"0374dd70f3fa6e47ec5ab97932e1cec6233e98e6ae3129036b17118650c44fd3de");
|
||||||
|
case XMR_MAINNET:
|
||||||
|
return List.of();
|
||||||
|
default:
|
||||||
|
throw new RuntimeException("Unhandled base currency network: " + Config.baseCurrencyNetwork());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// API
|
// API
|
||||||
|
@ -587,16 +602,16 @@ public class FilterManager {
|
||||||
"but the new version does not recognize it as valid filter): " +
|
"but the new version does not recognize it as valid filter): " +
|
||||||
"signerPubKeyAsHex from filter is not part of our pub key list. " +
|
"signerPubKeyAsHex from filter is not part of our pub key list. " +
|
||||||
"signerPubKeyAsHex={}, publicKeys={}, filterCreationDate={}",
|
"signerPubKeyAsHex={}, publicKeys={}, filterCreationDate={}",
|
||||||
signerPubKeyAsHex, publicKeys, new Date(filter.getCreationDate()));
|
signerPubKeyAsHex, getPubKeyList(), new Date(filter.getCreationDate()));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isPublicKeyInList(String pubKeyAsHex) {
|
private boolean isPublicKeyInList(String pubKeyAsHex) {
|
||||||
boolean isPublicKeyInList = publicKeys.contains(pubKeyAsHex);
|
boolean isPublicKeyInList = getPubKeyList().contains(pubKeyAsHex);
|
||||||
if (!isPublicKeyInList) {
|
if (!isPublicKeyInList) {
|
||||||
log.info("pubKeyAsHex is not part of our pub key list (expected case for pre v1.3.9 filter). pubKeyAsHex={}, publicKeys={}", pubKeyAsHex, publicKeys);
|
log.info("pubKeyAsHex is not part of our pub key list (expected case for pre v1.3.9 filter). pubKeyAsHex={}, publicKeys={}", pubKeyAsHex, getPubKeyList());
|
||||||
}
|
}
|
||||||
return isPublicKeyInList;
|
return isPublicKeyInList;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue