diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/service/ots/OkHttpBlockstreamExplorer.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/service/ots/OkHttpBlockstreamExplorer.kt index 4e09ab747..43faba016 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/service/ots/OkHttpBlockstreamExplorer.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/service/ots/OkHttpBlockstreamExplorer.kt @@ -48,7 +48,8 @@ class OkHttpBlockstreamExplorer( return it } - val url = "$BLOCKSTREAM_API_URL/block/$hash" + val usingTor = forceProxy(BLOCKSTREAM_API_URL) + val url = "${getAPI(usingTor)}/block/$hash" val client = HttpClientManager.getHttpClient(forceProxy(url)) val request = @@ -92,8 +93,9 @@ class OkHttpBlockstreamExplorer( return it } - val url = "$BLOCKSTREAM_API_URL/block-height/$height" - val client = HttpClientManager.getHttpClient(forceProxy(url)) + val usingTor = forceProxy(BLOCKSTREAM_API_URL) + val url = "${getAPI(usingTor)}/block-height/$height" + val client = HttpClientManager.getHttpClient(usingTor) val request = Request @@ -119,5 +121,13 @@ class OkHttpBlockstreamExplorer( companion object { private const val BLOCKSTREAM_API_URL = "https://blockstream.info/api" + private const val MEMPOOL_API_URL = "https://mempool.space/api/" + + fun getAPI(usingTor: Boolean) = + if (usingTor) { + MEMPOOL_API_URL + } else { + BLOCKSTREAM_API_URL + } } } diff --git a/quartz/src/main/java/com/vitorpamplona/quartz/ots/OpenTimestamps.java b/quartz/src/main/java/com/vitorpamplona/quartz/ots/OpenTimestamps.java index d422144ce..3118c99a0 100644 --- a/quartz/src/main/java/com/vitorpamplona/quartz/ots/OpenTimestamps.java +++ b/quartz/src/main/java/com/vitorpamplona/quartz/ots/OpenTimestamps.java @@ -379,8 +379,8 @@ public class OpenTimestamps { try { String blockHash = explorer.blockHash(height); - blockInfo = explorer.block(blockHash); Log.i("OpenTimestamps", "Lite-client verification, assuming block " + blockHash + " is valid"); + blockInfo = explorer.block(blockHash); } catch (Exception e2) { e2.printStackTrace(); throw e2;