reorganize: consolidate keystore in /opt/aitbc/keys
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Documentation Validation / validate-docs (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
Integration Tests / test-service-integration (push) Has been cancelled
Python Tests / test-python (push) Has been cancelled
Systemd Sync / sync-systemd (push) Has been cancelled
API Endpoint Tests / test-api-endpoints (push) Has been cancelled
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Documentation Validation / validate-docs (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
Integration Tests / test-service-integration (push) Has been cancelled
Python Tests / test-python (push) Has been cancelled
Systemd Sync / sync-systemd (push) Has been cancelled
API Endpoint Tests / test-api-endpoints (push) Has been cancelled
- Move keystore from /var/lib/aitbc/keystore to /opt/aitbc/keys - Consolidate validator_keys.json, .password, and README.md - Update README with comprehensive documentation - Centralize key management for better organization - Maintain secure permissions (600 for sensitive files)
This commit is contained in:
81
keys/README.md
Normal file
81
keys/README.md
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
# AITBC Keys Directory
|
||||||
|
|
||||||
|
## 🔐 Purpose
|
||||||
|
Secure storage for blockchain cryptographic keys and keystore files.
|
||||||
|
|
||||||
|
## 📁 Contents
|
||||||
|
|
||||||
|
### Validator Keys
|
||||||
|
- **`validator_keys.json`** - Validator key pairs for PoA consensus
|
||||||
|
- **`.password`** - Keystore password (secure, restricted permissions)
|
||||||
|
- **`README.md`** - This documentation file
|
||||||
|
|
||||||
|
## 🔑 Key Types
|
||||||
|
|
||||||
|
### Validator Keys
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"0x1234567890123456789012345678901234567890": {
|
||||||
|
"private_key_pem": "RSA private key (PEM format)",
|
||||||
|
"public_key_pem": "RSA public key (PEM format)",
|
||||||
|
"created_at": 1775124393.78119,
|
||||||
|
"last_rotated": 1775124393.7813215
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Keystore Password
|
||||||
|
- **File**: `.password`
|
||||||
|
- **Purpose**: Password for encrypted keystore operations
|
||||||
|
- **Permissions**: 600 (root read/write only)
|
||||||
|
- **Format**: Plain text password
|
||||||
|
|
||||||
|
## 🛡️ Security
|
||||||
|
|
||||||
|
### File Permissions
|
||||||
|
- **validator_keys.json**: 600 (root read/write only)
|
||||||
|
- **.password**: 600 (root read/write only)
|
||||||
|
- **Directory**: 700 (root read/write/execute only)
|
||||||
|
|
||||||
|
### Key Management
|
||||||
|
- **Rotation**: Supports automatic key rotation
|
||||||
|
- **Encryption**: PEM format for standard compatibility
|
||||||
|
- **Backup**: Regular backups recommended
|
||||||
|
|
||||||
|
## 🔧 Usage
|
||||||
|
|
||||||
|
### Loading Validator Keys
|
||||||
|
```python
|
||||||
|
import json
|
||||||
|
with open('/opt/aitbc/keys/validator_keys.json', 'r') as f:
|
||||||
|
keys = json.load(f)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Keystore Password
|
||||||
|
```bash
|
||||||
|
# Read keystore password
|
||||||
|
cat /opt/aitbc/keys/.password
|
||||||
|
```
|
||||||
|
|
||||||
|
## 📋 Integration
|
||||||
|
|
||||||
|
### Blockchain Services
|
||||||
|
- **PoA Consensus**: Validator key authentication
|
||||||
|
- **Block Signing**: Cryptographic block validation
|
||||||
|
- **Transaction Verification**: Digital signature verification
|
||||||
|
|
||||||
|
### AITBC Components
|
||||||
|
- **Consensus Layer**: Multi-validator PoA mechanism
|
||||||
|
- **Security Layer**: Key rotation and management
|
||||||
|
- **Network Layer**: Validator identity and trust
|
||||||
|
|
||||||
|
## ⚠️ Security Notes
|
||||||
|
|
||||||
|
1. **Access Control**: Only root should access these files
|
||||||
|
2. **Backup Strategy**: Secure, encrypted backups required
|
||||||
|
3. **Rotation Schedule**: Regular key rotation recommended
|
||||||
|
4. **Audit Trail**: Monitor key access and usage
|
||||||
|
|
||||||
|
## 🔄 Migration
|
||||||
|
|
||||||
|
Previously located at `/var/lib/aitbc/keystore/` - moved to `/opt/aitbc/keys/` for centralized key management.
|
||||||
Reference in New Issue
Block a user