mirror of
https://github.com/bisq-network/bisq.git
synced 2024-11-19 09:52:23 +01:00
commit
bcceac532d
@ -49,6 +49,10 @@ public class CryptonoteAddressValidator implements AddressValidator {
|
||||
//Aeon & Blur-type addresses
|
||||
return AddressValidationResult.validAddress();
|
||||
}
|
||||
else if (prefix.length() == 4 && address.length() == 94 + prefix.length()) {
|
||||
// FourtyTwo-type address
|
||||
return AddressValidationResult.validAddress();
|
||||
}
|
||||
else {
|
||||
//Non-supported prefix
|
||||
return AddressValidationResult.invalidStructure();
|
||||
@ -63,6 +67,10 @@ public class CryptonoteAddressValidator implements AddressValidator {
|
||||
// Aeon, Mask & Blur-type subaddress
|
||||
return AddressValidationResult.validAddress();
|
||||
}
|
||||
if (subAddressPrefix.length() == 5 && address.length() == 96 + subAddressPrefix.length()) {
|
||||
// FourtyTwo-type subaddress
|
||||
return AddressValidationResult.validAddress();
|
||||
}
|
||||
else {
|
||||
// Non-supported subAddress
|
||||
return AddressValidationResult.invalidStructure();
|
||||
|
28
assets/src/main/java/bisq/asset/coins/FourtyTwo.java
Normal file
28
assets/src/main/java/bisq/asset/coins/FourtyTwo.java
Normal file
@ -0,0 +1,28 @@
|
||||
/*
|
||||
* This file is part of Bisq.
|
||||
*
|
||||
* Bisq is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or (at
|
||||
* your option) any later version.
|
||||
*
|
||||
* Bisq is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
|
||||
* License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with Bisq. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
package bisq.asset.coins;
|
||||
|
||||
import bisq.asset.Coin;
|
||||
import bisq.asset.CryptonoteAddressValidator;
|
||||
|
||||
public class FourtyTwo extends Coin {
|
||||
|
||||
public FourtyTwo() {
|
||||
super("FourtyTwo", "FRTY", new CryptonoteAddressValidator("foUr", "SNake"));
|
||||
}
|
||||
}
|
@ -23,6 +23,7 @@ bisq.asset.coins.Dogecoin
|
||||
bisq.asset.coins.Dragonglass
|
||||
bisq.asset.coins.Ether
|
||||
bisq.asset.coins.EtherClassic
|
||||
bisq.asset.coins.FourtyTwo
|
||||
bisq.asset.coins.Gridcoin
|
||||
bisq.asset.coins.Horizen
|
||||
bisq.asset.coins.Iridium
|
||||
|
44
assets/src/test/java/bisq/asset/coins/FourtyTwoTest.java
Normal file
44
assets/src/test/java/bisq/asset/coins/FourtyTwoTest.java
Normal file
@ -0,0 +1,44 @@
|
||||
/*
|
||||
* This file is part of Bisq.
|
||||
*
|
||||
* Bisq is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or (at
|
||||
* your option) any later version.
|
||||
*
|
||||
* Bisq is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
|
||||
* License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with Bisq. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
package bisq.asset.coins;
|
||||
|
||||
import bisq.asset.AbstractAssetTest;
|
||||
import org.junit.Test;
|
||||
|
||||
public class FourtyTwoTest extends AbstractAssetTest {
|
||||
|
||||
public FourtyTwoTest() {
|
||||
super(new FourtyTwo());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testValidAddresses() {
|
||||
assertValidAddress("foUrDvc6vtJYMvqpx4oydJjL445udJ83M8rAqpkF8hEcbyLCp5MhvLaLGXtVYkqVXDG8YEpGBU7F241FtWXVCFEK7EMgnjrsM8");
|
||||
assertValidAddress("foUrFDEDkMGjV4HJzgYqSHhPTFaHfcpLM4WGZjYQZyrcCgyZs32QweCZEysK8eNxgsWdXv3YBP8QWDDWBAPu55eJ6gLf2TubwG");
|
||||
assertValidAddress("SNakeyQFcEacGHFaCgj4VpdfM3VTsFDygNHswx3CtKpn8uD1DmrbFwfM11cSyv3CZrNNWh4AALYuGS4U4pxYPHTiBn2DUJASoQw4B");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testInvalidAddresses() {
|
||||
assertInvalidAddress("");
|
||||
assertInvalidAddress("fUrDvc6vtJYMvqpx4oydJjL445udJ83M8rAqpkF8hEcbyLCp5MhvLaLGXtVYkqVXDG8YEpGBU7F241FtWXVCFEK7EMgnjrsM8");
|
||||
assertInvalidAddress("UrFDEDkMGjV4HJzgYqSHhPTFaHfcpLM4WGZjYQZyrcCgyZs32QweCZEysK8eNxgsWdXv3YBP8QWDDWBAPu55eJ6gLf2TubwG");
|
||||
assertInvalidAddress("keyQFcEacGHFaCgj4VpdfM3VTsFDygNHswx3CtKpn8uD1DmrbFwfM11cSyv3CZrNNWh4AALYuGS4U4pxYPHTiBn2DUJASoQw4B!");
|
||||
assertInvalidAddress("akeyQFcEacGHFaCgj4VpdfM3VTsFDygNHswx3CtKpn8uD1DmrbFwfM11cSyv3CZrNNWh4AALYuGS4U4pxYPHTiBn2DUJASoQw4B");
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user