As defined by wikipedia the Internet of Things is a network of communicating objects, mostly microcontrollers using radio like bluetooth, wifi or more specialized low-bandwidth protocols with messages length in the dozen of bytes. The question is then how do you make sure those radio transmissions are secure?

One-time pad is a "perfectly secure" way to encrypt messages, the only issues is that the length of the key is the same as the length of the messages and you cannot reuse any part of the key without greatly lowering the security offered. This is unlike other encryption methods where the key is of a small fixed size.

But as long as messages are short and infrequent like they are likely to be in the internet of things, for example one 10 byte message every five minute, that's 1 Mbyte of data per year, to secure your channel using One-time pad for 10 years you need only a key of ten megabytes in length, a 2 Gbyte USB key is about $3 (6 years of 10 byte messages every second).

Of course one-time pads are not without issues, for example see this crypto-gram article on one-time pads, key distribution and management plays a key role in their effective security.

But in the case of the internet of things they seem a good solution as long as makers include a way to flash the key in the thing (and then erase bits of it when transmitting, or all of it in case of unwanted physical access), and that cheap hardware random generators are readily available and usable. With the added bonus that nearly no CPU power is needed to encrypt and decrypt messages.

Note 20150708: true random number generator for a true hacker