Centram Documentation
Centram ドキュメンテーション
Welcome to the Centram documentation. This guide covers everything from initial setup to advanced configuration, economic incentives, and policies.
Centram ドキュメンテーションへようこそ。本ガイドは初期セットアップから高度な設定、経済的インセンティブ、ポリシーまでをカバーします。
System Requirements
システム要件
| Platformプラットフォーム | Minimum最小 | Recommended推奨 |
|---|---|---|
| Desktop | 4 GB RAM, 2 GB free diskRAM 4 GB、空きディスク 2 GB | 8 GB RAM, 50+ GB shareableRAM 8 GB、共有可能 50 GB 以上 |
| Android | Android 8.0+ (API 26) | Android 12+ with 4 GB RAMAndroid 12+ / RAM 4 GB |
| iOS | iOS 14.0+ | iOS 16+ with 4 GB RAMiOS 16+ / RAM 4 GB |
| Web MonitorWeb モニター | Any modern browserモダンブラウザ全般 | Chrome, Safari, Firefox |
Installation
インストール
Desktop
デスクトップ
Download the latest release for your platform:
お使いのプラットフォーム用の最新リリースをダウンロードしてください:
| OS | Format |
|---|---|
| macOS | DMG or ZIP |
| Windows | Installer (NSIS) or Portable |
| Linux | AppImage or DEB |
Mobile
モバイル
Install from your device's app store or sideload the APK / IPA directly from the releases page.
デバイスのアプリストアからインストールするか、リリースページから APK / IPA を直接サイドロードしてください。
From Source
ソースからビルド
Clone the repository
リポジトリをクローン
git clone https://github.com/centram/centram.git cd centram
Install dependencies
依存関係をインストール
npm install
Install the daemon
デーモンをインストール
cd daemon pip install -e .
Build the C++ core (optional, for native crypto)
C++ コアをビルド(オプション、ネイティブ暗号用)
cd core mkdir build && cd build cmake .. make
Quick Start
クイックスタート
Start the daemon
デーモンを起動
The daemon is the backend service that handles storage, P2P networking, and blockchain operations.
デーモンはストレージ、P2P ネットワーキング、ブロックチェーン処理を担うバックエンドサービスです。
centram-daemon
You should see output confirming the API is listening and the P2P node is active.
API が待ち受け状態になり、P2P ノードがアクティブになったことを示す出力が表示されるはずです。
Launch a client
クライアントを起動
Open whichever client you prefer. All clients connect to the daemon running on your machine.
お好みのクライアントを開いてください。すべてのクライアントは、お使いのマシンで動作しているデーモンに接続します。
# Desktop (Electron) npm run start:electron # Desktop (JavaFX) cd desktop && ./gradlew run # Web Monitor cd web-monitor/frontend && npm run dev # Android npm run build:android && npm run open:android
Upload a file
ファイルをアップロード
Navigate to the Files tab, choose a file, and enter a passphrase. Centram will encrypt, chunk, and distribute it automatically.
ファイルタブに移動し、ファイルを選んでパスフレーズを入力してください。Centram が自動で暗号化、チャンク化、分散を行います。
Daemon Configuration
デーモン設定
The daemon reads its configuration from ~/.centram/config.json. If the file doesn't exist, defaults are used.
デーモンは設定を ~/.centram/config.json から読み込みます。ファイルが存在しない場合はデフォルト値が使われます。
Default Configuration
デフォルト設定
{
"api_host": "127.0.0.1",
"api_port": 9740,
"p2p_port": 9741,
"data_dir": "~/.centram",
"reserved_gb": 50,
"node_type": "storage",
"subscription_cost": 0.0,
"accept_24_7_policy": false,
"bluetooth_fallback": false,
"bootstrap_peers": []
}
Configuration Options
設定オプション
| Key | Default | Description |
|---|---|---|
api_port | 9740 | Port for the REST API and WebSocket |
p2p_port | 9741 | Port for peer-to-peer connections |
reserved_gb | 50 | Disk space reserved for the OS (not shared) |
node_type | "storage" | Node role: "storage", "server", or "database" |
subscription_cost | 0.0 | Price you charge per GB/month for storage |
accept_24_7_policy | false | Required for server/database nodes |
bootstrap_peers | [] | List of "host:port" peers to connect to on startup |
Node Types
ノードタイプ
Every Centram node operates as one of three types. Your node type affects allocation priority, trust rewards, and uptime requirements.
Centram のノードはすべて 3 タイプのいずれかとして動作します。ノードタイプは割り当て優先度、信頼報酬、稼働時間要件に影響します。
Storage (Default)
ストレージ(デフォルト)
Casual participants. Share unused disk space when your device is online. No uptime commitment required. Lowest allocation priority but easiest to run.
カジュアル参加者向け。デバイスがオンライン中に未使用ディスク領域を共有します。稼働時間のコミットメント不要。割り当て優先度は最低ですが運用が最も簡単です。
Server
サーバー
Always-on hosting nodes with highest allocation priority. Server nodes commit to the 24/7 Uptime Policy and must remain online at all times. Downtime results in trust score penalties. Best for dedicated machines or VPS instances.
常時稼働のホスティングノード。最高の割り当て優先度を持ちます。サーバーノードは 24/7 稼働ポリシーにコミットし、常時オンライン必須。ダウンタイムは信頼スコアにペナルティをもたらします。専用マシンや VPS インスタンスに最適。
Database
データベース
Persistent data nodes with medium allocation priority. Like servers, database nodes require the 24/7 policy. Designed for nodes that store large volumes of indexed data.
永続データノード。中程度の割り当て優先度を持ちます。サーバーと同様、24/7 ポリシーが必要。大量のインデックス済みデータを保持するノード向け。
Storage Configuration
ストレージ設定
Data Directory
データディレクトリ
All Centram data is stored under ~/.centram/ by default:
Centram の全データはデフォルトで ~/.centram/ 配下に保存されます:
~/.centram/ chunks/ Encrypted file chunks (256-way fan-out) chain/ Blockchain data trust_scores.json Peer trust records config.json Your configuration
Chunk Storage
チャンクストレージ
Files are split into 4 MB chunks, encrypted individually, and stored in a fan-out directory structure. The first two hex characters of each chunk's SHA-256 hash determine the subdirectory (256 possible directories), ensuring efficient file system lookup.
ファイルは 4 MB チャンクに分割され、個別に暗号化されてファンアウトディレクトリ構造に保存されます。各チャンクの SHA-256 ハッシュの最初の 2 桁が(256 通りの)サブディレクトリを決定し、効率的なファイルシステム検索を実現します。
Reserved Space
予約領域
The reserved_gb setting (default: 50 GB) tells Centram how much disk space to leave free for the operating system and other applications. Only space beyond this reserve is available for the network.
reserved_gb 設定(デフォルト 50 GB)は、OS や他アプリのために空けておくディスク容量を Centram に伝えます。この予約分を超えた領域のみがネットワーク提供に使われます。
Replication
レプリケーション
Every chunk is replicated to 3 independent peers. The replication manager checks for under-replicated chunks every 60 seconds and automatically repairs them by pushing copies to new peers.
すべてのチャンクは独立した 3 ピアにレプリケーションされます。レプリケーションマネージャは 60 秒ごとに不足チャンクを検出し、新規ピアへコピーを送信して自動修復します。
Networking
ネットワーキング
Connecting to Peers
ピアとの接続
Centram discovers peers through:
Centram は次の方法でピアを発見します:
- Bootstrap peers — configured in
config.jsonor via the API - Peer exchange — connected peers share their known peer lists
- DHT discovery — Kademlia distributed hash table for decentralized lookup
Firewall
ファイアウォール
If you're behind a firewall or NAT, ensure port 9741 (P2P) is open for incoming connections. The API port (9740) only needs to be accessible from localhost.
ファイアウォールや NAT の背後にある場合、受信接続用にポート 9741(P2P)を開放してください。API ポート(9740)は localhost からのアクセスのみで十分です。
CenTrust Score
CenTrust スコア
CenTrust is Centram's reputation system. Every peer starts with a score of 50 (range: 0–100). Your score reflects your reliability on the network.
CenTrust は Centram のレピュテーションシステムです。各ピアはスコア 50(範囲 0~100)からスタートします。スコアはネットワーク上での信頼性を反映します。
How Your Score Changes
スコアの変動要因
| Event | Effect | Description |
|---|---|---|
| Storage proof success | +0.5 | You proved you hold a chunk when challenged |
| Storage proof failure | -5.0 | You failed to prove chunk possession |
| Uptime tick (per hour) | +0.1 | Earned for each hour your node stays online |
| Downtime penalty (per hour) | -2.0 | 24/7 nodes only — when your node goes offline |
| Successful transfer | +0.2 | You completed a chunk transfer to another peer |
| Failed transfer | -1.0 | A transfer to/from your node failed |
Trust Levels
信頼レベル
| Score | Level | Gas Discount |
|---|---|---|
| 80 – 100 | Trusted | 40% – 50% |
| 60 – 79 | Reliable | 30% – 39% |
| 40 – 59 | Normal | 20% – 29% |
| 0 – 39 | Low | 0% – 19% |
Benefits of High Trust
高信頼スコアの恩恵
- Gas discounts — up to 50% off all transaction fees
- Allocation priority — your node is chosen first for new chunk storage
- Network reputation — visible on the trust leaderboard
Gas Fees
ガス手数料
Every storage transaction incurs a 5% base gas fee. This fee is paid to the block miner who validates the transaction.
すべてのストレージトランザクションには 5% の基本ガス手数料がかかります。これはトランザクションを検証するブロックマイナーに支払われます。
How Gas is Calculated
ガス計算方法
Base gas rate: 5% Trust discount: (your_score / 100) × 50% Effective rate: 5% × (1 - trust_discount) Example (trust score = 80): Trust discount = (80 / 100) × 50% = 40% Effective rate = 5% × (1 - 0.40) = 3% On a 100 unit tx: gas = 3 units, you pay 97
Subscription Pricing
サブスクリプション料金
As a storage sharer, you set your own price per GB per month. This is the amount peers pay you for storing their data on your node.
ストレージ提供者として、自分で GB あたり月額料金を設定します。これはピアがあなたのノードにデータを保存するために支払う金額です。
Setting Your Price
価格の設定
- Go to Cloud / Node Settings in any client
- Enter your desired price in the Subscription Price field
- Your price is advertised to the network automatically
Pricing Strategy
価格戦略
- $0.00 — Free storage. Generous to the network, earns trust.
- $0.01 – $0.10 — Competitive pricing. Attracts allocations.
- $0.10+ — Premium pricing. May reduce allocations unless you have high trust and uptime.
Marketplace
マーケットプレイス
The Centram marketplace lists all peers offering storage. It's accessible through the web monitor or any client's Economics section.
Centram マーケットプレイスはストレージを提供する全ピアを掲載します。Web モニターまたは各クライアントのエコノミクスセクションからアクセス可能です。
Each listing shows:
各リスティングには次の情報が表示されます:
- Peer ID (anonymized)
- Node type (Storage / Server / Database)
- Trust score
- Price per GB/month
- Available storage capacity
Encryption
暗号化
Centram uses a multi-layered envelope encryption scheme to ensure only you can access your files. Even the computer storing your data cannot read it.
Centram は多層エンベロープ暗号化方式を採用し、ファイルにアクセスできるのは本人だけになるよう保証します。データを保管するコンピュータでさえ読み取れません。
Key Hierarchy
鍵の階層
Passphrase ↓ PBKDF2-SHA256 (100,000 iterations + random salt) Master Key (256-bit) ↓ HKDF-SHA256 (per-file info) KEK (Key Encryption Key) — wraps the DEK ↓ DEK (Data Encryption Key) — random per file, encrypts chunks ↓ HKDF-SHA256 (per-chunk index) Per-Chunk Key — unique AES-256-GCM key for each chunk
Encryption Pipeline
暗号化パイプライン
- Key Derivation — Your passphrase is run through PBKDF2-SHA256 (100,000 iterations) with a random salt to produce a 256-bit master key.
- Envelope Creation — Each file gets a random DEK (Data Encryption Key). The DEK is wrapped (encrypted) by a KEK derived from your master key. The wrapped DEK is stored as a
KeyEnvelopealongside the file metadata. - Per-Chunk Keys — Each chunk gets its own key, derived from the DEK using HKDF-SHA256 with the chunk index. This provides defense-in-depth: compromising one chunk key does not compromise others.
- Encryption — Each chunk is encrypted with AES-256-GCM using a random 12-byte nonce. Output:
[Nonce (12B) | Ciphertext | Auth Tag (16B)] - Integrity Hash — A BLAKE3 hash of each sealed chunk is computed. Storage nodes use this to verify integrity without decrypting.
Secure Memory Handling
セキュアメモリ取扱
All key material uses SecureKey types that are automatically zeroized in memory when dropped. Keys never persist in plaintext beyond their scope.
すべての鍵素材は SecureKey 型を使用し、ドロップ時にメモリ上で自動的にゼロ化されます。鍵がスコープ外で平文として残ることはありません。
Zero-Knowledge Storage
ゼロ知識ストレージ
Centram is zero-knowledge by design. Storage nodes hold encrypted chunks but have absolutely no ability to decrypt them — even the operator of the storage node cannot read the data on their own computer.
Centram は設計上ゼロ知識です。ストレージノードは暗号化チャンクを保持しますが、それらを復号する能力は一切ありません ─ ストレージノードの運用者でさえ、自分のコンピュータ上のデータを読めません。
How It Works
仕組み
- Client-side encryption — All encryption happens on the file owner's device before chunks are sent to the network.
- No key transmission — Encryption keys are never sent to storage nodes. Nodes receive only ciphertext + integrity hashes.
- Envelope separation — The
KeyEnvelope(wrapped DEK) is stored separately from chunk data. Even with both, you need the master key to unwrap the DEK. - Storage node verification — Nodes can verify chunk integrity via BLAKE3 hashes without any access to plaintext or keys.
What Storage Nodes See
A storage node receives a SealedChunk containing: encrypted ciphertext (random-looking bytes), a chunk index, a BLAKE3 hash for integrity, and the original size for quota accounting. No plaintext, no keys, no file metadata.
Tamper Detection
Every sealed chunk includes a BLAKE3 integrity hash. If a storage node (or attacker) modifies even a single byte of the ciphertext, the hash check fails, and the AES-GCM authentication tag will also reject the data. Tampering is detected at two independent layers.
Key Sharing (X25519)
鍵共有 (X25519)
Centram uses X25519 Elliptic Curve Diffie-Hellman for secure file sharing between users, without ever exposing encryption keys to the network.
Centram はユーザ間のセキュアなファイル共有に X25519 楕円曲線 Diffie-Hellman を使用し、暗号鍵をネットワークに露出させません。
How File Sharing Works
ファイル共有の仕組み
- Every Centram user has an X25519 keypair (public + secret key).
- When Alice wants to share a file with Bob, she computes a shared secret:
ECDH(Alice_secret, Bob_public) - Alice wraps the file's DEK with the shared secret using AES-256-GCM, creating a
KeyGrant. - The KeyGrant is sent to Bob (can be transmitted publicly — only Bob can unwrap it).
- Bob computes the same shared secret:
ECDH(Bob_secret, Alice_public)and recovers the DEK.
Key Grants
鍵グラント
A KeyGrant contains: the wrapped DEK, the sender's public key, the file ID, and an optional expiry timestamp. Grants can be revoked by the file owner by re-encrypting the file with a new DEK.
KeyGrant にはラップ済み DEK、送信者の公開鍵、ファイル ID、オプションの有効期限タイムスタンプが含まれます。ファイル所有者は新しい DEK で再暗号化することでグラントを失効できます。
Wallet Integration
ウォレット連携
Centram nodes can derive their cryptographic identity from existing cryptocurrency wallets, linking your blockchain address to your Centram node.
Centram ノードは既存の暗号資産ウォレットから暗号学的アイデンティティを導出でき、ブロックチェーンアドレスと Centram ノードをリンクできます。
Supported Wallets
対応ウォレット
| Wallet | Chain | Connection Method |
|---|---|---|
| MetaMask | Ethereum / EVM | Browser extension or WalletConnect |
| Trust Wallet | Ethereum / EVM | WalletConnect |
| Coinbase Wallet | Ethereum / EVM | WalletConnect |
| Ledger | Ethereum / EVM | USB / Bluetooth |
| Phantom | Solana | Browser extension |
| WalletConnect | Multi-chain | QR code / deep link |
How Wallet Linking Works
ウォレット連携の仕組み
- The Centram app presents a deterministic message for signing.
- You sign the message with your wallet (no funds are transferred).
- The signature is used as seed material for HKDF, deriving three Centram keys:
- X25519 key — for file sharing and key exchange
- Ed25519 key — for node identity and signing
- Master key — for envelope encryption
- Your Ethereum/Solana address is linked to your Centram node identity.
Supported Chains
対応チェーン
Ethereum Mainnet (1), Polygon (137), Arbitrum (42161), Optimism (10), Base (8453), BSC (56), and Solana.
Ethereum Mainnet (1)、Polygon (137)、Arbitrum (42161)、Optimism (10)、Base (8453)、BSC (56)、Solana。
Node Tiers
ノード階層
Every Centram node is automatically classified into a tier based on its hardware specifications. Higher tiers can store more data types, share more bandwidth, and earn higher rewards.
すべての Centram ノードはハードウェアスペックに基づき自動的に階層分類されます。上位階層ほど多種のデータタイプを保管でき、帯域提供量が多く、報酬倍率も高くなります。
| Tier | CPU Cores | RAM | Free Disk | Network | Max CPU Usage | Reward Multiplier |
|---|---|---|---|---|---|---|
| Light | 1+ | 4 GB | 10 GB | 10 Mbps | ≤ 95% | 1x |
| Standard | 4+ | 8 GB | 100 GB | 50 Mbps | ≤ 85% | 2x |
| Power | 8+ | 16 GB | 500 GB | 100 Mbps | ≤ 75% | 4x |
| Enterprise | 16+ | 32 GB | 1 TB | 500 Mbps | ≤ 60% | 8x |
Content Type Restrictions
コンテンツタイプ制限
- Light — Text, Metadata, Config only
- Standard — + Images, Documents, Archives
- Power — + Video, Audio, Datasets
- Enterprise — + ML Models, Relay, CDN Cache (all types)
Tiers are re-evaluated in real time based on system metrics. Your tier may change as your CPU load, available disk space, or network conditions change.
階層はシステムメトリクスに基づきリアルタイムで再評価されます。CPU 負荷、空きディスク容量、ネットワーク状態の変化により階層も変わります。
Category Quotas
カテゴリ別クォータ
To prevent any single data type from dominating a node's storage, Centram enforces per-category quotas. Each of the 12 content categories has a maximum percentage of a node's total capacity.
単一データタイプがノードストレージを支配しないよう、Centram はカテゴリ別クォータを強制します。12 のコンテンツカテゴリそれぞれに、ノード総容量の最大割合が設定されています。
| Category | Max Share | Description |
|---|---|---|
| Video | 30% | Largest files, capped to prevent domination |
| Images | 25% | Common uploads, moderate cap |
| Datasets | 20% | AI/ML training data |
| ML Models | 20% | Trained model weights |
| Archives | 20% | ZIP/tar bundles |
| Audio | 15% | Music, podcasts, recordings |
| Documents | 15% | PDFs, office files |
| CDN Cache | 15% | Edge-cached content |
| Text | 10% | Plain text, code, logs |
| Config | 5% | Configuration files |
| Metadata | 5% | File and chunk metadata |
| Relay | 10% | Relay traffic buffering |
When a category reaches its quota, new chunks of that type are routed to other nodes with available capacity. The node continues to accept other categories normally.
あるカテゴリがクォータに達すると、そのタイプの新規チャンクは余裕のある他ノードへルーティングされます。ノードは他カテゴリを通常通り受け入れ続けます。
Anti-Concentration Placement
集中防止配置
Centram's placement engine prevents data from concentrating on a small number of nodes, ensuring network resilience and fair distribution.
Centram の配置エンジンは、データが少数ノードに集中しないようにし、ネットワークのレジリエンスと公平な分散を保証します。
Placement Algorithm
配置アルゴリズム
- Filter — Exclude nodes that cannot accept the chunk (quota full, category disallowed, or node holds >10% of network data).
- Score — Rank remaining nodes: lower fill ratio (35%), lower category fill (35%), higher trust score (20%), higher tier (10%).
- Diversify — Select top nodes from different network segments first, then fill remaining slots regardless of segment.
- Replicate — Ensure minimum replication factor per category (critical data: 5 copies, standard: 3–4 copies).
Network Share Limit
ネットワークシェア上限
No single node may hold more than 10% of the network's total chunks. Nodes exceeding this limit are flagged for redistribution, with overloaded chunks migrated to emptier nodes.
単一ノードはネットワーク総チャンクの 10% を超えて保有できません。この上限を超えたノードは再配置対象となり、過負荷チャンクは空きのあるノードへ移行されます。
Replication Factors
レプリケーション係数
| Category | Min Replicas |
|---|---|
| Text, Metadata, Config | 5 |
| Documents, Datasets, ML Models | 4 |
| Images, Archives, Audio, Video | 3 |
| Relay, CDN Cache | 2 |
Storage Proofs
ストレージ証明
Centram uses Proof of Storage (PoSt) to verify that peers actually hold the data they claim. This prevents free-riding and ensures data integrity.
Centram は Proof of Storage (PoSt) を使用し、ピアが主張通りのデータを実際に保有していることを検証します。これによりフリーライドを防ぎ、データ整合性を保証します。
How It Works
- A challenge is derived from the previous block hash and a chunk hash
- The challenged node must produce a proof by hashing the challenge with the actual chunk data
- The proof is verified by miners and recorded on the blockchain
- Successful proofs increase your trust score; failures decrease it
Blockchain
ブロックチェーン
Centram's blockchain is a lightweight chain optimized for storage operations. It records all allocations, storage proofs, trust updates, and economic transactions.
Centram のブロックチェーンは、ストレージ操作に最適化された軽量チェーンです。すべての割当、ストレージ証明、信頼更新、経済トランザクションを記録します。
Consensus
コンセンサス
Blocks are mined using Proof of Storage rather than Proof of Work. This means mining rewards go to nodes that prove they store data, not nodes that waste energy on hash puzzles.
ブロックは Proof of Work ではなく Proof of Storage でマイニングされます。マイニング報酬は、ハッシュパズルにエネルギーを費やすノードではなく、データ保管を証明するノードに支払われます。
What Gets Recorded On-Chain
オンチェーンに記録される内容
- Storage proofs (chunk possession verification)
- Chunk allocations (which peers hold which chunks)
- Capacity advertisements
- File registrations
- Subscription pricing changes
- Trust score updates
- Node type declarations
- Gas fee payments
Decentralized Cybersecurity Force
分散型サイバーセキュリティ部隊
Centram includes a fully decentralized cybersecurity system where network peers collectively detect, vote on, and block malicious actors. All security actions are recorded on a SHA-256 hash chain, creating an immutable audit trail.
Centram には完全分散型のサイバーセキュリティシステムが組み込まれており、ネットワークピアが協力して悪意あるアクターを検出、投票、ブロックします。すべてのセキュリティアクションは SHA-256 ハッシュチェーンに記録され、不変の監査証跡を構成します。
How It Works
- Detection — Sentinel nodes monitor peer connections in real time, analyzing connection rates, subnet density, and disconnection patterns to identify threats (DDoS, Sybil attacks, Eclipse attacks, etc.).
- Reporting — Detected threats are broadcast to the network and recorded on the security blockchain with a SHA-256 hash linking each block to the previous.
- Voting — Peers with sufficient trust scores vote to block or unblock suspicious nodes. Consensus is required before any peer is blocked network-wide.
- Defense — When a node is attacked, nearby nodes in the same region automatically form a defense coalition, lending bandwidth and processing power to absorb the threat.
Threat Types Detected
検出可能な脅威タイプ
- DDoS — Connection flood detection based on rate thresholds
- Sybil Attack — Multiple fake identities from the same subnet
- Eclipse Attack — Rapid peer disconnections indicating node isolation attempts
- Data Tampering — Chunk integrity failures during replication verification
- Unauthorized Access — Brute-force authentication patterns
- Malware Injection — Suspicious payloads in pipeline data streams
Security Blockchain
セキュリティブロックチェーン
Every security action (threat report, vote result, peer block/unblock, sentinel reward) is recorded as a block on a dedicated security chain. Each block contains:
すべてのセキュリティアクション(脅威レポート、投票結果、ピアブロック/解除、センチネル報酬)は専用セキュリティチェーンのブロックとして記録されます。各ブロックには以下が含まれます:
Block {
blockHash: SHA-256(prevHash + action + target + consensus + timestamp + nonce)
prevBlockHash: SHA-256 hash of the previous block
actionType: "threat_report" | "block_peer" | "unblock_peer" | "vote_result" | ...
target: Peer ID or IP address
consensusPercent: Percentage of voters who agreed
timestamp: Unix timestamp (ms)
nonce: Random nonce for hash uniqueness
}
Sentinel Nodes
センチネルノード
A Sentinel Node is a specialized node role focused on network security. Sentinels earn rewards for accurate threat detection and participate in community voting.
センチネルノードはネットワークセキュリティに特化した専門役割です。センチネルは正確な脅威検出で報酬を獲得し、コミュニティ投票に参加します。
Sentinel Node Role
Enable Sentinel mode in the Security → Sentinel tab of any Centram client. Requires a stake of 400 credits and 24/7 uptime for optimal detection.
Detection Sensitivity
検出感度
Sentinel nodes support three sensitivity levels that control how aggressively threats are flagged:
センチネルノードは脅威フラグの積極性を制御する 3 段階の感度レベルをサポートします:
- Low — Connection rate threshold: 20/min, subnet density: 10. Fewer false positives.
- Medium (default) — Connection rate: 10/min, subnet density: 5. Balanced detection.
- High — Connection rate: 5/min, subnet density: 3. Maximum detection, more false positives.
Real-Time System Monitoring
リアルタイムシステム監視
The security system reads real system resources from the host machine:
セキュリティシステムはホストマシンの実システムリソースを読み取ります:
- CPU — Core count and real-time usage percentage (via Electron IPC or
navigator.hardwareConcurrency) - Memory — Total and free RAM (via
os.totalmem()/os.freemem()) - Disk — Total and free disk space (via
check-disk-spaceornavigator.storage.estimate()) - Network — Available bandwidth (via
navigator.connection.downlink), interface enumeration (viaos.networkInterfaces())
Collective Defense
集団防衛
When a node is attacked, other nodes in the same blockchain region automatically rally to defend it. This is Centram's "immune system" — decentralized, automatic, and proportional to the threat.
あるノードが攻撃を受けると、同じブロックチェーン領域内の他ノードが自動的に集結して防衛します。これが Centram の「免疫系」 ─ 分散型・自動的・脅威の規模に比例した動作です。
How Coalitions Form
連合の形成方法
- A threat is detected targeting a specific node
- The threat report is broadcast via gossipsub to regional peers
- Nearby sentinel nodes evaluate the threat and join the defense coalition
- Each defender contributes bandwidth (Mbps) and processing power (%)
- The coalition absorbs the attack traffic until the threat is mitigated or the attacker is blocked via consensus vote
Resource Contribution
リソース提供
Each defending node contributes based on its available resources, read directly from the host system:
各防衛ノードはホストシステムから直接読み取った利用可能リソースに基づいて貢献します:
- Bandwidth — Available network capacity in Mbps
- Processing — Spare CPU capacity (100% minus current usage)
- Memory — Free RAM available for threat mitigation buffers
- Disk — Free storage for logging and evidence collection
Privacy Policy
プライバシーポリシー
Data We Never Collect
収集しないデータ
- Your files, filenames, or file contents
- Your encryption passphrase or keys
- Personal information (name, email, phone)
- Browsing history or usage analytics
Data That Exists on the Network
ネットワーク上に存在するデータ
- Peer ID — a randomly generated identifier (SHA-256 hash). Not linked to your identity.
- IP Address — visible to peers you connect to directly. This is inherent to any P2P network.
- Trust Score — your reputation score is public to other peers.
- Subscription Price — your storage pricing is advertised to the network if you're a sharer.
- Storage Proofs — recorded on-chain, proving you hold specific chunks (but not revealing their content).
Encryption Guarantee
暗号化の保証
All file data is encrypted client-side before leaving your device. No peer, relay, or server on the network can read your files. Even if every other node on the network colluded, they could not access your data without your passphrase.
すべてのファイルデータはデバイスから出る前にクライアント側で暗号化されます。ネットワーク上のどのピア、リレー、サーバもファイルを読めません。ネットワーク上の他全ノードが結託しても、パスフレーズなしではデータにアクセスできません。
Terms of Use
利用規約
Acceptable Use
許容される利用
By using Centram, you agree to:
Centram を利用することで、以下に同意したものとみなします:
- Not store illegal content on the network
- Not attempt to attack, overload, or disrupt the network
- Not impersonate other peers or manipulate trust scores
- Accept that Centram is decentralized software provided "as is" with no warranty
Liability
免責事項
Centram is open-source software. The developers are not responsible for data loss, service interruption, or any damages arising from the use of this software. You are solely responsible for your passphrase and data backups.
Centram はオープンソースソフトウェアです。開発者は本ソフトウェアの利用に起因するデータ損失、サービス中断、その他の損害に対して責任を負いません。パスフレーズおよびデータバックアップは利用者の責任です。
Data Responsibility
データ責任
As a storage sharer, you store encrypted chunks on behalf of other peers. You cannot see or access the content of these chunks. You are not responsible for their content.
ストレージ提供者として、他ピアに代わり暗号化チャンクを保管します。これらのチャンクの内容は閲覧・アクセスできません。利用者はその内容について責任を負いません。
24/7 Uptime Policy
24/7 稼働ポリシー
Server and Database nodes must accept the 24/7 Uptime Policy. This is a commitment to keep your node online at all times.
Server および Database ノードは 24/7 稼働ポリシーに同意する必要があります。これはノードを常時オンラインに保つことへのコミットメントです。
Requirements
要件
- Your node must remain reachable and responsive 24 hours a day, 7 days a week
- Heartbeat responses must be sent within 90 seconds of each challenge
- Scheduled maintenance windows are acceptable if brief
Penalties
ペナルティ
- -2.0 trust per hour of downtime
- Extended downtime may result in chunks being re-allocated to other peers
- Severe or repeated downtime degrades your trust score significantly
Opting Out
オプトアウト
You can switch back to a Storage node at any time, which removes the 24/7 requirement. However, this also reduces your allocation priority.
いつでも Storage ノードへ戻すことができ、24/7 要件は解除されます。ただし割当優先度も低下します。
API Reference
API リファレンス
The daemon exposes a REST API at http://127.0.0.1:9740. All endpoints are prefixed with /api.
デーモンは http://127.0.0.1:9740 で REST API を公開します。すべてのエンドポイントは /api プレフィックスを持ちます。
Status & Info
ステータス & 情報
| Method | Endpoint | Description |
|---|---|---|
GET | /api/status | Node status, peer count, chain height, trust |
GET | /api/storage | Disk usage stats |
GET | /api/peers | Connected peers list |
GET | /api/files | Local file chunks |
Node Configuration
ノード設定
| Method | Endpoint | Description |
|---|---|---|
GET | /api/node/type | Current node type and policy |
POST | /api/node/type | Set node type + accept policy |
GET | /api/node/subscription | Current subscription price |
POST | /api/node/subscription | Set subscription price |
Trust & Economics
信頼 & エコノミクス
| Method | Endpoint | Description |
|---|---|---|
GET | /api/trust/self | Your trust score and gas discount |
GET | /api/trust/{peer_id} | A peer's trust info |
GET | /api/trust/leaderboard | Top trusted peers |
GET | /api/gas/estimate?amount=X | Gas fee estimate |
GET | /api/economics/summary | Full economics overview |
GET | /api/marketplace/sharers | Browse sharers |
Blockchain
ブロックチェーン
| Method | Endpoint | Description |
|---|---|---|
GET | /api/blockchain/status | Chain height and validity |
GET | /api/blockchain/blocks | Paginated block list |
GET | /api/blockchain/block/{n} | Single block by height |
POST | /api/upload | Upload file (multipart + passphrase) |
WebSocket
WebSocket
Real-time events are available at ws://127.0.0.1:9740/ws.
リアルタイムイベントは ws://127.0.0.1:9740/ws で利用可能です。
Ports & Endpoints
ポート & エンドポイント
| Port | Service | Binding | Notes |
|---|---|---|---|
9740 | REST API + WebSocket | localhost | Client-daemon communication |
9741 | P2P Node | 0.0.0.0 | Open this port for incoming peer connections |
FAQ
FAQ
Can I recover my files if I lose my passphrase?
パスフレーズを失った場合、ファイルは復元できますか?
No. Centram is zero-knowledge by design. Your passphrase is never stored anywhere. Without it, your encryption keys cannot be derived and your files are permanently lost.
いいえ。Centram は設計上ゼロ知識です。パスフレーズはどこにも保存されません。それなしでは暗号鍵を導出できず、ファイルは永久に失われます。
What happens if peers storing my data go offline?
データを保管しているピアがオフラインになった場合は?
Every chunk is replicated to 3 peers. If one goes offline, the replication manager automatically detects the under-replication and pushes the chunk to a new peer. Your data is safe as long as at least one copy remains available.
すべてのチャンクは 3 ピアにレプリケーションされます。1 つがオフラインになると、レプリケーションマネージャが自動的に不足を検出し、新規ピアへチャンクを送信します。少なくとも 1 コピーが残っている限りデータは安全です。
Can storage nodes read my files?
No. All chunks are encrypted with AES-256-GCM using per-chunk keys derived from your personal master key. Storage nodes only hold sealed ciphertext + BLAKE3 integrity hashes. Even the node operator cannot decrypt the data on their own machine.
How much can I earn by sharing storage?
Earnings depend on your subscription price, available capacity, trust score, and network demand. You set your own price and the marketplace determines how competitive it is.
Do I need a static IP address?
No. Centram supports relay connections for peers behind NAT or firewalls. However, a static IP or open port 9741 will improve your connectivity and peer discovery.
Is there a minimum storage requirement?
No. You can share as little or as much as you want. The reserved_gb setting ensures your OS always has enough space.
Can I use my existing crypto wallet?
Yes. Centram supports MetaMask, Trust Wallet, Coinbase Wallet, Ledger, Phantom (Solana), and any WalletConnect-compatible wallet. Your wallet signs a message to derive your Centram identity — no funds are transferred and no private keys leave your wallet.
How do I share an encrypted file with someone?
Centram uses X25519 key exchange. You create a KeyGrant that wraps the file's encryption key with a shared secret derived from your key and the recipient's public key. Only the intended recipient can unwrap it. No central key server is needed.