/wallet
TensorCash Core.
Wallet desktop berbasis Qt untuk rantai TensorCash — diturunkan dari Bitcoin Core, dengan dukungan native-asset dan konsol JSON-RPC bawaan. Bangun sendiri dari source tree publik (dengan Docker, atau secara native), atau ambil biner siap pakai yang dipublikasikan benefactor di bawah ini.
Tur
Tampilan serupa Bitcoin Core, dengan tab khusus TensorCash untuk aset native dan penerbitan. Klik tile untuk melihat gambar resolusi penuh.
Bangun dari source
Artefak kanonik adalah source tree di services/core-node/bcore/. Wallet Qt dibangun dari target CMake yang sama dengan daemon headless — berikan -DBUILD_GUI=ON saat konfigurasi. Dua jalur: Dockerfile yang membangun seluruh stack (paling mudah, tersandbox), atau dependensi native di host Anda (iterasi lebih cepat, jejak image lebih kecil).
Jalur 1 · Docker (direkomendasikan)
Repositori menyertakan Dockerfile multi-tahap yang membangun biner Rust cosign-bridge, wheel Python ChiaVDF, serta daemon bcore + wallet Qt secara lengkap dalam satu langkah. Anda hanya perlu Docker terinstal di host. Container juga menyertakan Tor untuk jaringan hidden-service dan server VNC agar Anda bisa menjalankan GUI di dalam container jika diinginkan.
Dockerfile: services/core-node/tor.Dockerfile
git clone --recurse-submodules https://github.com/tensorcash/tensorcash.git
cd tensorcash
docker build \
-f services/core-node/tor.Dockerfile \
-t tensorcash-core:dev \
. Setelah build, jalankan container dengan membuka port RPC wallet dan (opsional) VNC untuk akses GUI:
# Headless daemon, RPC reachable on host:18332.
docker run --rm -p 18332:18332 \
-v $HOME/.tensorcash-data:/data \
tensorcash-core:dev
# With the Qt GUI exposed via VNC on host:5900 (default password in the
# container's vnc.sh — change before any non-localhost binding).
docker run --rm -p 5900:5900 -p 18332:18332 \
-v $HOME/.tensorcash-data:/data \
tensorcash-core:dev Jalur 2 · Build native
Gunakan ini jika Anda menginginkan biner native di host tanpa container. Sudah diuji di macOS 13+ (arm64 / x86_64) dan Ubuntu / Debian; Fedora dan Arch didokumentasikan di dalam doc/build-unix.md submodule bcore.
Clone
git clone --recurse-submodules https://github.com/tensorcash/tensorcash.git
cd tensorcash/services/core-node/bcore Pasang dependensi — macOS
Pasang Xcode Command Line Tools terlebih dahulu, lalu paket-paket Homebrew.
xcode-select --install # if not already installed
brew install \
cmake boost pkgconf libevent \
qt@6 qrencode \
zeromq \
capnp # optional, only if you want -DENABLE_IPC=ON Pasang dependensi — Linux (Ubuntu / Debian)
Konsep serupa, manajer paket berbeda. Fedora dan Arch ada di upstream doc/build-unix.md dalam repositori.
sudo apt-get install -y \
build-essential cmake pkgconf python3 \
libevent-dev libboost-dev libsqlite3-dev libzmq3-dev \
qt6-base-dev qt6-tools-dev qt6-l10n-tools qt6-tools-dev-tools libgl-dev \
libqrencode-dev Pasang dependensi — Windows (cross-compile)
Build Windows native menggunakan MSVC (lihat doc/build-windows-msvc.md). Jalur lebih cepat yang dipakai kebanyakan kontributor adalah cross-compile dari host Linux (atau WSL) menggunakan toolchain Mingw-w64 ditambah sistem depends bawaan. NSIS hanya diperlukan untuk target installer .exe.
# On a Linux host (or WSL inside Windows):
sudo apt-get install -y g++-mingw-w64-x86-64-posix nsis
# Build the depends tree once.
gmake -C depends HOST=x86_64-w64-mingw32 -j$(nproc) Konfigurasi + kompilasi
Di macOS / Linux, langkah konfigurasi adalah satu pemanggilan CMake. Di Windows, berikan file toolchain yang dihasilkan oleh depends tree.
# macOS / Linux
cmake -B build -DBUILD_GUI=ON
cmake --build build -j$(getconf _NPROCESSORS_ONLN 2>/dev/null || nproc)
# Windows (cross-compile from Linux/WSL)
cmake -B build --toolchain depends/x86_64-w64-mingw32/toolchain.cmake -DBUILD_GUI=ON
cmake --build build -j$(nproc)
cmake --build build --target deploy # produces the .exe installer via NSIS Flag konfigurasi umum: -DBUILD_GUI=ON (wallet Qt), -DENABLE_WALLET=OFF (node chain-only), -DWITH_ZMQ=ON (topik pub/sub ZMQ). Jalankan cmake -B build -LH untuk daftar lengkapnya.
Bangun cosign bridge
Fitur Cosign di wallet (penandatanganan perangkat berpasangan, federated multisig) berkomunikasi dengan biner Rust sidecar bernama cosign-bridge melalui soket lokal. Jalur Docker membangunnya secara otomatis; untuk build native, Anda membuatnya dengan cargo:
# Rust 1.85+ required.
cd services/core-node/cosign-bridge
cargo build --release --bin cosign-bridge --bin cosign-local-relay
# Binaries land in target/release/. Run cosign-bridge alongside the wallet. Jalankan
Biner wallet Qt tersimpan di build/bin/. Sinkronisasi pertama ke mainnet memerlukan waktu berjam-jam dan menulis chainstate multi-GB; untuk smoke test cepat, arahkan ke datadir regtest.
# Smoke test on a private chain — no real coins, no peers, no IBD.
build/bin/bitcoin-qt -regtest -datadir=$HOME/.tensorcash-regtest
# Production: starts initial block download against the live network.
build/bin/bitcoin-qt Layanan pendamping
TensorCash Core terdiri dari wallet beserta sejumlah kecil layanan sidecar yang dipanggilnya. Build Docker di atas menyertakan semuanya; jika Anda build secara native, inilah yang perlu Anda rakit bersama biner Qt sesuai fitur yang diinginkan.
| Layanan | Jalur source | Fungsinya | Dibutuhkan untuk |
|---|---|---|---|
| cosign-bridge | services/core-node/cosign-bridge/ | Sidecar Rust lokal yang menangani pasangan cosign / federated-signing (SPAKE2 + Noise via WebSocket). Memfasilitasi alur perangkat-berpasangan dari wallet Qt. | Fitur Cosign (penandatanganan multi-perangkat, federated multisig) |
| ChiaVDF | shared-utils/chiavdf/ | Verifiable Delay Function yang digunakan oleh validasi rantai. Dibangun sebagai wheel Python selama build daemon. | Memvalidasi blok apa pun (mainnet, testnet, atau regtest) |
| core-node REST | services/core-node/src/ | Antarmuka REST kecil di samping server JSON-RPC. Mengekspos metadata model + metrik node. | Integrasi penyedia; wallet sendiri tidak memerlukannya |
| verification-api | services/verification-api/ | Layanan verifikasi OSS. Wallet tidak memanggilnya langsung — bcore yang melakukannya, saat -validationapi=real. | Validasi blok nyata (non-mock) di produksi |
| miner-api | services/miner-api/ | Menjembatani antara rantai dan mesin inferensi (llama.cpp / vLLM). Menghasilkan bukti inferensi yang menjadi bagian dari sebuah blok. | Penambangan (menjalankan inferensi + menghasilkan blok) |
Biner dari benefactor
Membangun dari source adalah jalur kanonik. Untuk memudahkan, benefactor komunitas mempublikasikan hasil build mereka sendiri dari source tree yang sama. Proyek tidak memproduksi, menandatangani, atau mendistribusikan biner — ini adalah publikasi pihak ketiga independen, dicantumkan di sini hanya untuk referensi. Verifikasi setiap build benefactor terhadap build dari source Anda sendiri, atau saling cocokkan antar benefactor.
| Benefactor | Platform | Kunci PGP | Catatan |
|---|---|---|---|
| TensorCash | macOS (arm64, x86_64) · Linux (x86_64) · Windows (x86_64) | pending | Dibangun dari source tree publik. Setiap rilis menyertakan manifes SHA-256 dan tanda tangan PGP terpisah bersama biner. |
Untuk terdaftar sebagai benefactor: bangun dari rilis source bertag, publikasikan manifes SHA-256 artefak Anda dan tanda tangan PGP terpisah, lalu buka pull request untuk menambahkan baris ke tabel ini.
Memverifikasi build benefactor
Dua pemeriksaan. Yang pertama mengikat klaim benefactor ke biner yang Anda unduh; yang kedua mengikat biner ke source.
Hash + tanda tangan
Setiap benefactor mempublikasikan file SHA256SUMS dan tanda tangan SHA256SUMS.asc terpisah. Pastikan file yang Anda unduh cocok dengan manifes, dan bahwa manifes ditandatangani oleh kunci PGP benefactor yang dipublikasikan.
# 1. Manifest matches the binary you have on disk.
shasum -a 256 -c SHA256SUMS --ignore-missing
# 2. Manifest is signed by the benefactor's key.
gpg --verify SHA256SUMS.asc SHA256SUMS Saling cocokkan
Tanda tangan satu benefactor hanya membuktikan bahwa mereka menjamin biner — bukan bahwa biner cocok dengan source. Dua cara untuk menutup celah itu: bangun dari source sendiri dan bandingkan hash, atau cocokkan terhadap manifes benefactor kedua untuk tag rilis yang sama. Jika dua atau lebih pembangun independen mempublikasikan SHA-256 yang identik untuk artefak yang sama, Anda memiliki bukti bahwa build dapat direproduksi dari source publik.
Langkah selanjutnya
- panduan regtest — sandbox pengembangan lokal dengan validasi mock, panduan registrasi model dan penerbitan aset.
- Referensi JSON-RPC — konsol bawaan wallet mendukung setiap metode pada referensi ini.
- Terlibat — semua cara lain untuk berpartisipasi: institusi, penyedia, developer, verifier, peneliti.