3.6 KiB
3.6 KiB
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
- QBFT Network Restrictions: Permissioned networks may restrict contract creation
- Gas Limit Issues: Contract deployment requires more gas than available
- Bytecode Optimization: Contract may need optimization
- 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
- Contract Creation: May require validator approval
- Gas Limits: May have lower effective limits than block limit
- Bytecode Size: May have stricter size limits
- 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