Design Techniques for Secure IoT Devices and Networks