diff --git a/assets/src/main/java/bisq/asset/coins/Solo.java b/assets/src/main/java/bisq/asset/coins/Solo.java new file mode 100644 index 00000000000..02d2beb948f --- /dev/null +++ b/assets/src/main/java/bisq/asset/coins/Solo.java @@ -0,0 +1,30 @@ +/* + * 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 . + */ + +package bisq.asset.coins; + +import bisq.asset.AltCoinAccountDisclaimer; +import bisq.asset.Coin; +import bisq.asset.CryptoNoteAddressValidator; + +@AltCoinAccountDisclaimer("account.altcoin.popup.solo.msg") +public class Solo extends Coin { + + public Solo() { + super("Solo", "XSL", new CryptoNoteAddressValidator(13975, 23578)); + } +} diff --git a/assets/src/main/resources/META-INF/services/bisq.asset.Asset b/assets/src/main/resources/META-INF/services/bisq.asset.Asset index d66104f4a2a..85ab4ade3ec 100644 --- a/assets/src/main/resources/META-INF/services/bisq.asset.Asset +++ b/assets/src/main/resources/META-INF/services/bisq.asset.Asset @@ -90,6 +90,7 @@ bisq.asset.coins.Ryo bisq.asset.coins.Siafund bisq.asset.coins.SiaPrimeCoin bisq.asset.coins.SixEleven +bisq.asset.coins.Solo bisq.asset.coins.SpaceCash bisq.asset.coins.Spectrecoin bisq.asset.coins.Starwels diff --git a/assets/src/test/java/bisq/asset/coins/SoloTest.java b/assets/src/test/java/bisq/asset/coins/SoloTest.java new file mode 100644 index 00000000000..e95bbcafcaa --- /dev/null +++ b/assets/src/test/java/bisq/asset/coins/SoloTest.java @@ -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 . + */ + + package bisq.asset.coins; + + import bisq.asset.AbstractAssetTest; + import org.junit.Test; + + public class SoloTest extends AbstractAssetTest { + + public SoloTest() { + super(new Solo()); + } + + @Test + public void testValidAddresses() { + assertValidAddress("SL3UVNhEHuaWK9PwhVgMZWD5yaL6VBC4xRuXLnLFWizxavKvSqbcSpH2fG3dT36uMJEQ6XoKBqvFLUnzWG4Rb5e11yqsioFy8"); + assertValidAddress("Ssy27ePzscCj4spPjgtc8NKGSud9eLFLHGEWNAo8PuC53NnWhDDTX17Cfo3BzFKdYZfU9ovtEYNtQ4ezTtPhAHEuAR5mF8dTqB"); + assertValidAddress("Ssy2WFFnmi3XYJz8UsXPKzHtUxFdVhdSuU3sBGmpTbTLQqpZEMPS8GB486Q8UCaskdbGzxJxwdJYobtJmEPwDawa5mXD5spNbs"); + } + + @Test + public void testInvalidAddresses() { + assertInvalidAddress(""); + assertInvalidAddress("SL3dqGkkFszKzjzyXSLkYB6X9uqad7ih3DJtTeB8hrzD9iaRjWAUHZ8FA3NErphWM00NzURSTL7FEZ9un9fgLYjK2f7mHRFBn"); + assertInvalidAddress("Ssy2WLjegYxS5P1djMSRmVG8EzXDfHyde6BiZRd3aDyVh1vjwUB2GJHfWhVsvg1i4TjWyGRC9rD4n3kCE2gPA9yx6K34AyzcMZ"); + assertInvalidAddress("Sl3UVNhEHuaWK9PwhVgMZWD5yaL6VBC4xRuXLnLFWizxavKvSXxXSpam8d3dMaDuMJEQ6XoKBqvFLUnzWG4Rb5e11yqsioFy8"); + assertInvalidAddress("Ssy2WFFnmi3XYJz8UsXPKzHtUxFdVhdSuU3sBGmpTbTLQLoLIghGooDdf6QTryaskdbGzxJxwdJYobtJmEPwDawa5mXD5spNbs"); + } +} diff --git a/core/src/main/resources/i18n/displayStrings.properties b/core/src/main/resources/i18n/displayStrings.properties index 95407170749..eb634405d6e 100644 --- a/core/src/main/resources/i18n/displayStrings.properties +++ b/core/src/main/resources/i18n/displayStrings.properties @@ -1128,6 +1128,18 @@ transfer using the Blur Transaction Viewer (https://blur.cash/#tx-viewer).\n\n\ Failure to provide the required information to the arbitrator will result in losing the dispute case. In all cases of dispute, the \ BLUR sender bears 100% of the burden of responsibility in verifying transactions to an arbitrator. \n\n\ If you do not understand these requirements, do not trade on Bisq. First, seek help at the Blur Network Discord (https://discord.gg/dMWaqVW). +account.altcoin.popup.solo.msg=Trading Solo on Bisq requires that you understand and fulfill \ +the following requirements:\n\n\ +To send Solo you must use the Solo Network CLI Wallet. \n\n\ +If you are using the CLI wallet, a transaction hash (tx ID) will be displayed after a transfer is sent. You must save \ +this information. Immediately after sending the transfer, you must use the command 'get_tx_key' to retrieve the \ +transaction private key. If you fail to perform this step, you may not be able to retrieve the key later. \n\n\ +In the event that arbitration is necessary, you must present the following to an arbitrator: 1.) the transaction ID, \ +2.) the transaction private key, and 3.) the recipient's address. The arbitrator will then verify the Solo \ +transfer using the Solo Block Explorer by searching for the transaction and then using the "Prove sending" function (https://explorer.minesolo.com/).\n\n\ +failure to provide the required information to the arbitrator will result in losing the dispute case. In all cases of dispute, the \ +Solo sender bears 100% of the burden of responsibility in verifying transactions to an arbitrator. \n\n\ +If you do not understand these requirements, do not trade on Bisq. First, seek help at the Solo Network Discord (https://discord.minesolo.com/). account.altcoin.popup.cash2.msg=Trading CASH2 on Bisq requires that you understand and fulfill \ the following requirements:\n\n\ To send CASH2 you must use the Cash2 Wallet version 3 or higher. \n\n\