From 653c6ff5030cffe1133737bf8b442a263bef56e2 Mon Sep 17 00:00:00 2001 From: GitGab19 Date: Tue, 24 Mar 2026 23:20:58 +0100 Subject: [PATCH] add JDC_AUTHORITY_PUBLIC_KEY to the Sv2 endpoint --- server/src/config-generator.ts | 6 ++++-- shared/ports.json | 3 ++- src/components/setup/MinerConnectionInfo.tsx | 4 ++-- src/lib/ports.ts | 3 ++- 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/server/src/config-generator.ts b/server/src/config-generator.ts index fedc7a7..e6bd4bc 100644 --- a/server/src/config-generator.ts +++ b/server/src/config-generator.ts @@ -13,6 +13,7 @@ const __dirname = dirname(fileURLToPath(import.meta.url)); interface PortsConfig { TRANSLATOR_PORT: number; JDC_PORT: number; + JDC_AUTHORITY_PUBLIC_KEY: string; } function loadPorts(): PortsConfig { @@ -35,6 +36,7 @@ function loadPorts(): PortsConfig { const ports = loadPorts(); export const TRANSLATOR_PORT = ports.TRANSLATOR_PORT; export const JDC_PORT = ports.JDC_PORT; +export const JDC_AUTHORITY_PUBLIC_KEY = ports.JDC_AUTHORITY_PUBLIC_KEY; /** * Generate Translator Proxy config (tproxy-config.toml) @@ -54,7 +56,7 @@ export function generateTranslatorConfig(data: SetupData): string { // When connecting to local JDC, we don't need authority key (using hardcoded keys) // When connecting to external pool, we need the pool's authority key const authorityPubkey = mode === 'jd' - ? '9auqWEzQDVyd2oe1JVGFLMLHZtCo2FFqZwtKA5gd9xbuEu7PH72' + ? JDC_AUTHORITY_PUBLIC_KEY : pool.authority_public_key; // Min hashrate from user config (default 100 TH/s if not set) @@ -131,7 +133,7 @@ max_supported_version = 2 min_supported_version = 2 # Auth keys for downstream connections -authority_public_key = "9auqWEzQDVyd2oe1JVGFLMLHZtCo2FFqZwtKA5gd9xbuEu7PH72" +authority_public_key = "${JDC_AUTHORITY_PUBLIC_KEY}" authority_secret_key = "mkDLTBBRxdBv998612qipDYoTK3YUrqLe8uWw7gu3iXbSrn2n" cert_validity_sec = 3600 diff --git a/shared/ports.json b/shared/ports.json index 123e569..6529b2c 100644 --- a/shared/ports.json +++ b/shared/ports.json @@ -1,4 +1,5 @@ { "TRANSLATOR_PORT": 34255, - "JDC_PORT": 34265 + "JDC_PORT": 34265, + "JDC_AUTHORITY_PUBLIC_KEY": "9auqWEzQDVyd2oe1JVGFLMLHZtCo2FFqZwtKA5gd9xbuEu7PH72" } diff --git a/src/components/setup/MinerConnectionInfo.tsx b/src/components/setup/MinerConnectionInfo.tsx index 163b5c2..1fc2a65 100644 --- a/src/components/setup/MinerConnectionInfo.tsx +++ b/src/components/setup/MinerConnectionInfo.tsx @@ -1,6 +1,6 @@ import { useState } from 'react'; import { Copy, Check } from 'lucide-react'; -import { TRANSLATOR_PORT, JDC_PORT } from '@/lib/ports'; +import { TRANSLATOR_PORT, JDC_PORT, JDC_AUTHORITY_PUBLIC_KEY } from '@/lib/ports'; function CopyableAddress({ address }: { address: string }) { const [copied, setCopied] = useState(false); @@ -32,7 +32,7 @@ interface MinerConnectionInfoProps { export function MinerConnectionInfo({ isJdMode, centered = false }: MinerConnectionInfoProps) { const translatorUrl = `stratum+tcp://:${TRANSLATOR_PORT}`; - const jdcUrl = `stratum+tcp://:${JDC_PORT}`; + const jdcUrl = `stratum2+tcp://:${JDC_PORT}/${JDC_AUTHORITY_PUBLIC_KEY}`; const hint = (

diff --git a/src/lib/ports.ts b/src/lib/ports.ts index a4be5f9..c050c7b 100644 --- a/src/lib/ports.ts +++ b/src/lib/ports.ts @@ -1,5 +1,5 @@ /** - * SV2 stack port configuration. + * SV2 stack configuration constants. * Single source of truth: shared/ports.json */ @@ -7,3 +7,4 @@ import ports from '../../shared/ports.json'; export const TRANSLATOR_PORT = ports.TRANSLATOR_PORT; export const JDC_PORT = ports.JDC_PORT; +export const JDC_AUTHORITY_PUBLIC_KEY = ports.JDC_AUTHORITY_PUBLIC_KEY;