Skip to content

The Demo is based on Virgil IoTKit and its dev tools to demonstrate secure IoT devices development in action.

License

Notifications You must be signed in to change notification settings

VirgilSecurity/demo-iotkit-nix

Repository files navigation

IoTKit Demo

Introduction

To demonstrate Virgil IoTKit in action we developed a demo based on Virgil IoTKit and its dev tools. The Demo contains samples for UNIX-like OS.

 

Demo Content

The Demo provides you with samples of key elements that are necessary to build a secure IoT lifecycle:

  • common. Contains samples of HAL implementations (hardware abstraction layer). Find all implementations here.
  • initializer. Implementation of initializer of IoT Device and Gateway. Find all implementations here.
  • bootloader. Application that simulates a bootloader for the controller. The application performs firmware verification.
  • thing. Samples of IoT Device (end-device) implementation based on IoTKit. Find examples on how to work with IoT device here.
  • gateway. Samples of IoT Gateway implementation based on IoTKit. Find examples on how to work with the Cloud, Getaway or its threads here.
  • dummy-keys. Testing keys for signing a testing firmware.
  • tests. A set of ready code-snippets for testing the needed features.

Prerequisites

To start working with the IoTKit Demo you have to:

  • Clone IoTKit repository
$ git clone --recursive https://github.com/VirgilSecurity/virgil-iotkit

Run Tests

To make sure that everything goes in the right way, we also provide a set of ready code-snippets for testing the necessary features:

  • Crypto: crypto algorithms (e. g. hash, RNG, AES) and crypto operations (key pair, sign/verify etc.).
  • Firmware related functionality: create firmware, save/load/install.
  • Security Box (test storage module): read write for signed or/and encrypted data.
  • SNAP (Secure Network Adjustable Protocol tests): send, receive, etc. Navigate to the tests folder of the repository to find preferred tests and start working with them.

To run the preferred test go through the following steps:

  • Clone the demo repository (if you haven't done that already)
$ git clone --recursive https://github.com/VirgilSecurity/demo-iotkit-nix
  • Build test project
$ mkdir build
$ cd build
$ cmake ..
$ make rpi-tests
  • Run tests

Reference

License

This library is released under the 3-clause BSD License.

Support

Our developer support team is here to help you. Find more information on our Help Center.

You can find us on Twitter or via email at support@VirgilSecurity.com.

Also, get extra help from our support team on Slack.