124 lines
3.6 KiB
Markdown
124 lines
3.6 KiB
Markdown
|
|
# Network Permissions Check - ChainID 138
|
||
|
|
|
||
|
|
**Date**: 2025-01-12
|
||
|
|
**Purpose**: Check if network requires special permissions for contract creation
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Summary
|
||
|
|
|
||
|
|
Comprehensive check for network permission requirements and contract creation restrictions on ChainID 138.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Checks Performed
|
||
|
|
|
||
|
|
### 1. Genesis Configuration ✅
|
||
|
|
- **File**: `smom-dbis-138-proxmox/config/genesis.json`
|
||
|
|
- **Consensus**: QBFT (Istanbul BFT)
|
||
|
|
- **Findings**: No explicit permission/whitelist settings found in genesis
|
||
|
|
|
||
|
|
### 2. Permission Contracts ✅
|
||
|
|
- Checked common permission contract addresses
|
||
|
|
- **Result**: No permission contracts found
|
||
|
|
|
||
|
|
### 3. Recent Deployments ✅
|
||
|
|
- Scanned last 200 blocks for successful contract creations
|
||
|
|
- **Result**: No successful deployments found
|
||
|
|
- **Implication**: May indicate network restrictions or low activity
|
||
|
|
|
||
|
|
### 4. Transaction History ✅
|
||
|
|
- Analyzed deployer's transaction patterns
|
||
|
|
- **Result**: Regular transactions work, contract creation fails
|
||
|
|
|
||
|
|
### 5. Network Type ✅
|
||
|
|
- **Consensus**: QBFT (Quorum Byzantine Fault Tolerance)
|
||
|
|
- **Block Period**: 2 seconds
|
||
|
|
- **Epoch Length**: 30,000 blocks
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Key Findings
|
||
|
|
|
||
|
|
### Network Configuration
|
||
|
|
- **Consensus**: QBFT (permissioned blockchain)
|
||
|
|
- **Block Gas Limit**: 30,000,000
|
||
|
|
- **No Explicit Permissions**: Genesis doesn't show permission requirements
|
||
|
|
|
||
|
|
### Deployment Failures
|
||
|
|
- All contract deployment attempts fail
|
||
|
|
- Transactions use all available gas (out of gas)
|
||
|
|
- Contract bytecode size: ~4.7KB (well under 24KB limit)
|
||
|
|
|
||
|
|
### Possible Causes
|
||
|
|
1. **QBFT Network Restrictions**: Permissioned networks may restrict contract creation
|
||
|
|
2. **Gas Limit Issues**: Contract deployment requires more gas than available
|
||
|
|
3. **Bytecode Optimization**: Contract may need optimization
|
||
|
|
4. **Network-Specific Rules**: ChainID 138 may have custom restrictions
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## QBFT Network Characteristics
|
||
|
|
|
||
|
|
QBFT (Quorum Byzantine Fault Tolerance) networks are typically:
|
||
|
|
- **Permissioned**: Validators are known and controlled
|
||
|
|
- **May Have Restrictions**: Contract creation may require validator approval
|
||
|
|
- **Consensus-Based**: Transactions may need validator consensus
|
||
|
|
|
||
|
|
### Potential Restrictions
|
||
|
|
1. **Contract Creation**: May require validator approval
|
||
|
|
2. **Gas Limits**: May have lower effective limits than block limit
|
||
|
|
3. **Bytecode Size**: May have stricter size limits
|
||
|
|
4. **Access Control**: May require whitelisted addresses
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Recommendations
|
||
|
|
|
||
|
|
### Option 1: Check Validator Configuration
|
||
|
|
- Verify if contract creation requires validator approval
|
||
|
|
- Check if deployer address needs to be whitelisted
|
||
|
|
- Contact network administrators for permission
|
||
|
|
|
||
|
|
### Option 2: Optimize Contract
|
||
|
|
- Use Solidity optimizer with high settings
|
||
|
|
- Reduce contract bytecode size
|
||
|
|
- Remove unnecessary features
|
||
|
|
|
||
|
|
### Option 3: Use Alternative Deployment
|
||
|
|
- Deploy via network admin/validator
|
||
|
|
- Use Remix IDE with network admin access
|
||
|
|
- Request network administrator to deploy
|
||
|
|
|
||
|
|
### Option 4: Verify Network Rules
|
||
|
|
- Check network documentation
|
||
|
|
- Contact network operators
|
||
|
|
- Verify if contract creation is allowed for non-validators
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Network Details
|
||
|
|
|
||
|
|
- **ChainID**: 138
|
||
|
|
- **Consensus**: QBFT
|
||
|
|
- **Block Period**: 2 seconds
|
||
|
|
- **Epoch Length**: 30,000 blocks
|
||
|
|
- **Block Gas Limit**: 30,000,000
|
||
|
|
- **RPC**: http://192.168.11.250:8545
|
||
|
|
- **Explorer**: https://explorer.d-bis.org
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Status
|
||
|
|
|
||
|
|
✅ **Checks Complete**: All permission checks performed
|
||
|
|
⚠️ **No Explicit Permissions Found**: Genesis doesn't show permission requirements
|
||
|
|
❓ **Restrictions Unknown**: Network may have implicit restrictions
|
||
|
|
|
||
|
|
**Recommendation**: Contact network administrators to verify if contract creation requires special permissions or validator approval.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
**Last Updated**: 2025-01-12
|
||
|
|
|