/wallet
TensorCash Core.
Qt-põhine töölauarahakott TensorCashi plokiahelale — Bitcoin Core'ist hargnenud, natiivsete varade toega ja sisseehitatud JSON-RPC konsooliga. Ehita ise avalikust lähtekoodipuust (Dockeris või natiivselt) või võta allpool olevast loendist heategija avaldatud valmisbinaarfail.
Tutvustus
Sama paigutus mis Bitcoin Core'is, kuid TensorCashile lisatud vahelehtedega natiivsete varade ja emiteerimise jaoks. Klõpsa paanil täisresolutsioonilise pildi avamiseks.
Ehita lähtekoodist
Kanooniline artefakt on lähtekoodipuu asukohas services/core-node/bcore/. Qt-rahakott ehitatakse samast CMake'i sihist kui peata daemon — lisa konfigureerimisel -DBUILD_GUI=ON. Kaks teed: Dockerfile, mis ehitab kogu virna ühe käiguga (lihtsaim, isoleeritud), või natiivsed sõltuvused otse sinu masinal (kiirem iteratsioon, väiksem ressursikulu).
1. tee · Docker (soovitatav)
Hoidlas on mitmeastmeline Dockerfile, mis ehitab cosign-bridge'i Rust-binaarfaili, ChiaVDF-i Pythoni ratta ning kogu bcore daemoni koos Qt-rahakotiga ühe käiguga. Ainus eeldus on Docker hostmasinas. Konteiner sisaldab ka Tori peidetud teenuste võrgunduse jaoks ja VNC-serverit, kui soovid GUI-d konteineris käitada.
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 \
. Pärast ehitamist käivita konteiner, avades rahakoti RPC-pordi ja (valikuliselt) VNC GUI-juurdepääsuks:
# 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 2. tee · Natiivne ehitus
Kasuta seda, kui soovid natiivseid binaarfaile oma masinal ilma konteinerita. Testitud macOS 13+ (arm64 / x86_64) ja Ubuntu / Debiani peal; Fedora ja Arch on dokumenteeritud bcore alamooduli doc/build-unix.md sees.
Klooni
git clone --recurse-submodules https://github.com/tensorcash/tensorcash.git
cd tensorcash/services/core-node/bcore Paigalda sõltuvused — macOS
Kõigepealt Xcode Command Line Tools, seejärel Homebrew paketid.
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 Paigalda sõltuvused — Linux (Ubuntu / Debian)
Sama idee, erinev pakihaldur. Fedora ja Arch on kirjeldatud hoidla sees asuvas upstream doc/build-unix.md failis.
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 Paigalda sõltuvused — Windows (ristkompilatsioon)
Natiivsed Windowsi ehitused käivad MSVC kaudu (vt doc/build-windows-msvc.md). Kiirem tee, mida enamik kaasaaitajaid kasutab, on ristkompilatsioon Linuxi masinal (või WSL-is) Mingw-w64 tööriistaketi ja pakitud sõltuvuste süsteemi abil. NSIS on vajalik ainult .exe installeri sihi jaoks.
# 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) Konfigureeri + kompileeri
macOS / Linuxil on konfiguratsioonisamm üks CMake'i käivitus. Windowsil anna edasi sõltuvuste puust genereeritud tööriistaketi fail.
# 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 Levinud konfiguratsioonilipud: -DBUILD_GUI=ON (Qt rahakott), -DENABLE_WALLET=OFF (ainult ahelaadla), -DWITH_ZMQ=ON (ZMQ pub/sub teemad). Täieliku nimekirja saamiseks käivita cmake -B build -LH.
Ehita cosign-bridge
Rahakoti cosign-funktsioonid (paarisseadme allkirjastamine, födereeritud multisig) suhtlevad cosign-bridge nimelise Rust-sidecar binaarfailiga üle kohaliku sokli. Docker'i tee ehitab selle automaatselt; natiivsete ehituste puhul toodad selle cargo'ga:
# 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. Käivita
Qt-rahakoti binaarfail valmib build/bin/ kausta. Esimene sünkroonimine mainnetiga võtab tunde ja kirjutab kettale mitu GB ahelaolekut; kiireks kontrolliks suuna see hoopis regtest-andmekataloogile.
# 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 Kaasnevad teenused
TensorCash Core on rahakott koos väikese hulga sidecar-teenustega, millega see suhtleb. Ülalolev Docker-ehitus pakib kõik kokku; kui ehitad natiivselt, paned Qt-binaarfaili kõrvale just need teenused, mida sul vaja läheb.
| Teenus | Lähtekoodi tee | Mida teeb | Kasutusala |
|---|---|---|---|
| cosign-bridge | services/core-node/cosign-bridge/ | Kohalik Rust-sidecar, mis käsitleb cosign / födereeritud allkirjastamise paaritamist (SPAKE2 + Noise WebSocket'i kaudu). Vahendab paarisseadme vooge Qt rahakotist. | Cosign-funktsioonid (mitmesseadme allkirjastamine, födereeritud multisig) |
| ChiaVDF | shared-utils/chiavdf/ | Kontrollitav viivitusfunktsioon (Verifiable Delay Function), mida ahela valideerimine kasutab. Ehitatakse daemoni ehituse käigus Pythoni rattana. | Mis tahes ploki valideerimine (mainnet, testnet või regtest) |
| core-node REST | services/core-node/src/ | Väike REST API JSON-RPC serveri kõrval. Pakub mudeli metaandmeid ja sõlme meetrikat. | Pakkuja integratsioonid; rahakott ise ei vaja seda |
| verification-api | services/verification-api/ | Avatud lähtekoodiga valideerimisteenus. Rahakott ei kutsu seda otse — seda teeb bcore, kui -validationapi=real. | Päris (mitte-mock) ploki valideerimine tootmises |
| miner-api | services/miner-api/ | Ühendab ahela järeldusmootoriga (llama.cpp / vLLM). Toodab järeldustõendi, millest saab ploki osa. | Kaevandamine (järelduse teenindamine + plokkide tootmine) |
Heategijate binaarfailid
Lähtekoodist ehitamine on kanooniline tee. Mugavuse huvides avaldavad kogukonna heategijad oma ehitusi samast lähtekoodipuust. Projekt ise binaarfaile ei tooda, allkirjasta ega levita — need on sõltumatud kolmandate osapoolte väljalasked, loetletud siin üksnes leitavuse pärast. Kontrolli iga heategija ehitust oma lähtekoodist tehtud ehituse vastu või ristviita heategijate omavahel.
| Heategija | Platvormid | PGP võti | Märkused |
|---|---|---|---|
| TensorCash | macOS (arm64, x86_64) · Linux (x86_64) · Windows (x86_64) | pending | Ehitab avalikust lähtekoodipuust. Iga väljalase sisaldab SHA-256 manifesti ja eraldatud PGP allkirja binaarfailide kõrval. |
Heategijana lisamiseks: ehita märgistatud lähtekoodi väljalasest, avalda SHA-256 manifest oma artefaktidest ja eraldatud PGP allkiri ning ava pull request, lisades sellele tabelile rea.
Heategija ehituse kontrollimine
Kaks kontrolli. Esimene seob heategija väite allalaaditud binaarfailiga; teine seob binaarfaili lähtekoodiga.
Räsi + allkiri
Iga heategija avaldab SHA256SUMS faili ja eraldatud SHA256SUMS.asc allkirja. Kinnita, et allalaaditud fail vastab manifesti kirjele ja manifest on allkirjastatud heategija avaldatud PGP võtmega.
# 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 Ristviitamine
Ühe heategija allkiri tõestab vaid seda, et tema seisab binaarfaili eest — mitte seda, et binaarfail vastab lähtekoodile. Selle lünga sulgemiseks on kaks teed: ehita ise lähtekoodist ja võrdle räsisid, või võrdle sama väljalaskemärgendi all teise heategija manifestiga. Kui kaks või enam sõltumatut ehitajat avaldavad sama artefakti kohta identsed SHA-256 räsid, on sul tõendid, et ehitus on avalikust lähtekoodist reprodutseeritav.
Mis edasi
- regtest-juhend — kohaliku arenduse liivakast mock-valideerimisega, mudeli registreerimise ja vara emiteerimise juhenditega.
- JSON-RPC viide — rahakoti sisseehitatud konsool toetab kõiki selle viite meetodeid.
- Liitu meiega — kõik muud osalemisviisid: institutsioonid, pakkujad, arendajad, valideerijad, teadlased.