Skip to content

Network Security ​

Cloud Service implements multiple layers of security to protect the network, nodes, and users from various threats.

Consensus Security ​

Proof of Work Protection ​

The ZelHash algorithm provides security through:

  • Economic cost — Mining requires real resources
  • Decentralization — GPU mining is accessible to many
  • ASIC resistance — Prevents mining centralization
  • Battle-tested — PoW secures billions in value

51% Attack Prevention ​

MechanismDescription
Hash Rate DistributionEncourage diverse mining
Economic DisincentiveAttack would be costly
Network MonitoringDetect unusual hash rate changes
Community ResponseRapid response to attacks

Double-Spend Protection ​

┌─────────────────────────────────────────────────────────────┐
│               Double-Spend Prevention                        │
│                                                              │
│  Attacker tries to:                                         │
│  1. Send CS to merchant                                    │
│  2. Wait for merchant to deliver goods                      │
│  3. Secretly mine alternative chain without that tx         │
│  4. Broadcast longer chain to reverse transaction           │
│                                                              │
│  Prevention:                                                │
│  • Wait for multiple confirmations                          │
│  • Merchant waits for 6+ confirmations                      │
│  • Network follows longest chain                            │
│  • Attacker needs >50% hash rate                            │
│                                                              │
└─────────────────────────────────────────────────────────────┘
Transaction ValueRecommended Confirmations
< 100 CS6 confirmations (~12 min)
100-1000 CS12 confirmations (~24 min)
1000-10000 CS24 confirmations (~48 min)
> 10000 CS72 confirmations (~2.4 hours)

Node Security ​

Network Security ​

ini
# cs.conf security settings

# Restrict RPC access
rpcallowip=127.0.0.1
rpcbind=127.0.0.1

# Use strong credentials
rpcuser=long_random_username_here
rpcpassword=long_random_password_here

# Limit connections
maxconnections=128
maxuploadtarget=5000

# Whitelist trusted peers
whitelist=192.168.1.0/24

Firewall Configuration ​

bash
# Essential ports
sudo ufw allow 26125/tcp  # P2P

# RPC - restrict to localhost
sudo ufw allow from 127.0.0.1 to any port 16180

# Enable firewall
sudo ufw enable

SSL/TLS for RPC ​

For remote RPC access, use SSL:

bash
# Generate self-signed certificate
openssl req -x509 -nodes -days 365 \
    -newkey rsa:2048 \
    -keyout rpc.key \
    -out rpc.crt

# Configure nginx as reverse proxy
server {
    listen 16180 ssl;
    ssl_certificate /path/to/rpc.crt;
    ssl_certificate_key /path/to/rpc.key;
    
    location / {
        proxy_pass http://127.0.0.1:16180;
    }
}

Wallet Security ​

Best Practices ​

  1. Use strong passwords — Minimum 12 characters
  2. Enable encryption — Encrypt wallet.dat
  3. Regular backups — Backup to multiple locations
  4. Cold storage — Keep large amounts offline
  5. Multi-signature — Require multiple signatures

Wallet Encryption ​

bash
# Encrypt wallet
cs-cli encryptwallet "your_strong_password"

# Unlock for transactions
cs-cli walletpassphrase "password" 60  # 60 seconds

# Lock immediately
cs-cli walletlock

Backup Strategies ​

bash
# Automated backup script
#!/bin/bash
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_DIR="/secure/backup/cscoin"

# Create backup
cp ~/.cs/wallet.dat "$BACKUP_DIR/wallet_$DATE.dat"

# Encrypt backup
gpg --symmetric --cipher-algo AES256 "$BACKUP_DIR/wallet_$DATE.dat"

# Remove unencrypted
rm "$BACKUP_DIR/wallet_$DATE.dat"

# Upload to secure storage
scp "$BACKUP_DIR/wallet_$DATE.dat.gpg" backup-server:/backups/

Network Attack Vectors ​

DDoS Attacks ​

Protection:

  • Rate limiting per peer
  • Connection limits per IP
  • Ban score system
  • Traffic analysis

Eclipse Attacks ​

What is it: Attacker controls all your peer connections

Protection:

  • Maintain diverse peer connections
  • Use DNS seeds
  • Add manual peers
  • Monitor peer diversity

Sybil Attacks ​

What is it: Attacker creates many fake nodes

Protection:

  • IP-based connection limits
  • Proof of Work cost
  • Peer scoring
  • Ban misbehaving nodes

Spam Attacks ​

What is it: Flooding network with invalid transactions

Protection:

  • Transaction fee requirements
  • Mempool size limits
  • Rate limiting
  • Orphan transaction limits

Security Monitoring ​

Node Monitoring ​

bash
#!/bin/bash
# Security monitoring script

# Check for unusual peer count
PEERS=$(cs-cli getconnectioncount)
if [ "$PEERS" -lt 5 ]; then
    echo "WARNING: Low peer count: $PEERS"
fi

# Check for banned peers
BANNED=$(cs-cli listbanned | grep -c "address")
if [ "$BANNED" -gt 10 ]; then
    echo "WARNING: Many banned peers: $BANNED"
fi

# Check mempool size
MEMPOOL=$(cs-cli getmempoolinfo | grep '"bytes"' | grep -o '[0-9]*')
if [ "$MEMPOOL" -gt 500000000 ]; then
    echo "WARNING: Large mempool: $((MEMPOOL/1024/1024))MB"
fi

Log Analysis ​

bash
# Check for suspicious activity
grep -i "ban" ~/.cs/debug.log | tail -20

# Monitor connection attempts
grep "connection" ~/.cs/debug.log | tail -50

# Check for errors
grep -i "error" ~/.cs/debug.log | tail -20

Incident Response ​

If Compromised ​

  1. Stop the node — cs-cli stop
  2. Disconnect from network — Unplug network
  3. Assess damage — Check logs and wallet
  4. Backup remaining — Copy wallet.dat securely
  5. Rebuild — Fresh install, restore wallet
  6. Monitor — Watch for unauthorized transactions

Reporting Security Issues ​

  • Email: security@cscoin.network
  • PGP Key: Available on website
  • Bug Bounty: Up to 10,000 CS for critical vulnerabilities

Security Checklist ​

Node Operators ​

  • [ ] Strong RPC password
  • [ ] Firewall configured
  • [ ] Regular software updates
  • [ ] Log monitoring enabled
  • [ ] Automated backups
  • [ ] SSL for remote RPC
  • [ ] Limited port exposure

Wallet Users ​

  • [ ] Wallet encrypted
  • [ ] Backup created
  • [ ] Password stored securely
  • [ ] Software up to date
  • [ ] Anti-virus installed
  • [ ] Large amounts in cold storage

Miners ​

  • [ ] Mining pool secured
  • [ ] Worker passwords unique
  • [ ] Regular payout verification
  • [ ] Monitoring alerts enabled
  • [ ] Backup mining configuration

Next Steps ​

Released under the MIT License.