# BlockDroid: Detection of Android Malware from Images using Lightweight Convolutional Neural Network Models with Ensemble Learning and Blockchain for Mobile Devices This study detects malware from images of Android DEX files using lightweight convolutional neural networks. To prevent repeated queries and ensure continuous training of the model, the model predictions are recorded on the blockchain network. ## Quick start 1. Install [Docker](https://www.docker.com/get-started), Docker Compose, Python 3.8 and [Hyperledger Fabric 2.5](https://hyperledger-fabric.readthedocs.io/en/release-2.5/install.html). 2. The APK files in the CICMalDroid 2020 dataset are converted to images. The APK files collected under the benign and malware folders have been converted to JPEG images using Python code. ```bash python dex_convert_img.py benign images-benign ``` 3. Android malware detection model is trained and tested using images. ```bash python block_droid_train.py ``` 4. Smart contract is deployed to the network to interact with the blockchain. A smart contract is deployed to the network to interact with the blockchain. (https://hyperledger-fabric.readthedocs.io/en/latest/deploy_chaincode.html)