Applying Security Technique in Blockchain into IOT devices. Providing the Transparency, Privacy, and Confidentiality concepts in IOT - where they have never existed before.
- Data integrity verification using blockchain immuatable ledger
- Digital signatures for device authentication and non-repudiation
- Anti-forgery protection for IoT devices with cryptographic validation
- Distributed storage with IPFS for decentralized data management
- Real-time monitoring dashboard with device status tracking
IoT Devices → Backend API → Smart Contracts → Blockchain
↓ ↓ ↓
Digital Sign Validation Data Storage
↓ ↓ ↓
IPFS Store → Web Dashboard ← Monitoring
- Python 3.8+
- Node.js & npm
- Git
- Clone and setup
git clone <repository-url>
cd iot-security-platform
pip install -r requirements.txt
npm install -g ganache-cli- Start blockchain and deploy
ganache-cli --host 0.0.0.0 --port 8545
cd contracts && python deploy.py- Run application
# Backend
cd app && python main.py
# Frontend
cd frontend && python -m http.server 8000├── contracts/ # Solidity smart contracts
│ ├── DataStorage.sol # Main data storage contract
│ └── deploy.py # Contract deployment
├── app/ # Python backend API
│ ├── main.py # Flask application
│ ├── routes/ # API endpoints
│ └── services/ # Business logic
├── frontend/ # Web interface
├── iot_device/ # Device simulator
├── tests/ # Test suites
└── docs/ # Documentation
POST /api/iot/data- Submit IoT device dataGET /api/iot/verify/{device_id}- Verify device authenticityGET /api/data/integrity/{hash}- Check data integrityGET /api/devices- List registered devices
# Run all tests
python -m pytest tests/ -v
# Run specific tests
python -m pytest tests/test_signature.py
python -m pytest tests/test_data_integrity.pyBlockchain
- Ethereum, Solidity
- Web3.py for interaction
Backend
- Python, Flask
- Cryptographic libraries
- IPFS integration
Frontend
- HTML5, JavaScript, CSS3
- Real-time visualization
MIT License