Course Overview
This training program aims to give participants a good understanding of IOT Security concepts and will give a range a full range of topics to the participants based on their domain.
At the end of the training, participants will:
- Have an understanding of basic python needed for IoT
- Have a good understanding of IoT concepts as well a brief understanding of Cloud Computing
- Have a good understanding of various threats and possible attacks and how to handle and protect against these attacks
Requirements
- Basic Programming Skills are good to have
Curriculum
-
Hardware Kit
- Development Boards: Raspberry Pi 3
- Development Boards: ESP8266 NodeMcu
- Development Boards: Arduino Mega (ATMega2560) with a USB cable
- Electronic Components: Sensors – Analog temperature sensor(LM35)
- Electronic Components: IR Proximity Sensor
- Electronic Components: LEDs (10)
- Electronic Components: Switches – Push Button (10)
- Electronic Components: Resistors (10)
- Electronic Components: Breadboard
- Electronic Components: Memory Card (16 GB)
- Electronic Components: Connecting leads (25)
- Electronic Components: HDMI – VGA Converter
- Electronic Components: 1A Power Adapter
- Communication Modules: WiFi – ESP01
- Communication Modules: Bluetooth – HC05
-
Python overview
-
Data Types
-
Functions
-
Classes in Python
-
Introduction to the Internet of Things (IoT)
- Concept and definitions
- Embedded Systems, Computer Networks, M2M (Machine to Machine Communication), Internet of Everything (IoE), Machine Learning, Distributed Computing, Artificial Intelligence, Industrial automation
- Interoperability, Identification, localization, Communication, Software Defined Assets
- Understanding IT and OT convergence: Evolution of IIoT & Industry 4.0
- IoT Adoption
- Market statistics, Early adopters, Roadmap
- Business opportunities: Product + Service model
- Development, deployment, and monetization of applications as service
- Use cases
-
Concept of Data, Information, Knowledge, and Wisdom
-
Sensor Data Mining and Analytics
-
Signals and systems
-
Real-time analytics
-
Edge analytics
- Data Aggregation on Edge gateway
- Wireless Sensor Area Networks (WSAN): Evolution of M2M and IoT networks and technologies
- Sensor Nodes
- Sensor node architecture
- WSN/M2M communication technologies
- Bluetooth, Zigbee, and WiFi communication technologies
- Cellular communication and LPWAN (LoRa and LoRaWAN) technologies
- Topologies
- Applications
-
Design and Development of IoT systems
-
IoT design considerations
-
Cloud Computing and Platforms
- Public, Private and Hybrid cloud platforms and deployment strategy
- Industrial Gateways
- Commercial Gateways solutions from various vendors
- Cloud-based Gateway solutions
- IaaS, SaaS, PaaS models
- Cloud components and services
- Device Management, Databases, Visualization, Reporting, Notification/Alarm management, Security management, Cloud resource monitoring, and management
- Example Platforms: ThingSpeak, Pubnub, AWS IoT
-
AWS IoT Services
-
IoT security
-
Analytics
-
Case studies and roadmap
-
Hands-on/Practical Exercises
- Programming microcontrollers (Arduino, NodeMCU)
- Building HTTP and MQTT based M2M networks
- Interfacing Analog and Digital sensors with microcontroller to learn real-time data acquisition, storage, and analysis on IoT endpoints and edges
- An interfacing SD card with a microcontroller for data logging on IoT end devices using SPI protocol
- Interfacing Real-time clock module with microcontrollers for time and date stamping using the I2C protocol
- Python exercises to check the quality of acquired data
- Developing microcontroller-based applications to understand event-based real-time processing and in- memory computations
- Setting up Raspberry Pi as Gateway to aggregate data from thin clients
- Python programming on Raspberry Pi to analyze collected data
- GPIO programming using Python and remote monitoring/control
- Pushing collected data to cloud platforms
- Designing sensor nodes to collect multiple parameters (Temperature, Humidity, etc.)
- Uploading data on the local gateway as cache
- Uploading data on cloud platforms
- Monitoring and controlling devices using android user apps and Bluetooth interfaces
- Building wireless sensor networks using WiFi
- Sensor data uploading on the cloud using GSM/GPRS
- Device to device communication using LoRa modules
- Remote controlling machines using cloud-based apps
- Remote controlling machines using device-based apps through the cloud as an intermediate node
- Interfacing Raspberry Pi with AWS IoT Gateway service to exchange messages
- Interfacing Raspberry Pi with PUBNUB cloud to understand publish/subscribe architecture and MQTT protocol
- Data cleaning, subsetting, and visualization
- Set of python exercises to demonstrate descriptive and predictive analytics
-
Case study/Use case
-
Internet of Things Security
- IoT concepts revision
- Introduction to information and cybersecurity
- Basic terminologies
- Standards and open source initiatives
- CIA triads: effectively addressing security and privacy concerns
- Attack surfaces and vulnerabilities: Device, network, Gateway and Cloud
- Risk assessment and management
- Cryptography: Applications of Cryptography in IoT communication and data security
- Threat modeling
- Device security
- Application Hardening
- OS/platform hardening
- Physical security
- Gateway security
- Communication protocols and network security
- Data link layer – Wireless communication technology security provisions
- WiFi, Bluetooth, Zigbee, and 802.15.4 protocols
- Application layer security
- MQTT and HTTP protocols
- Network hardening
-
IoT cloud platforms