Java WM Library 1.0.5

A (very) minor release for the World Model Java library.  I’ve changed the dependency on mina-core to the JAR type instead of the bundle.  All the MINA docs want you to use the bundle packaging, which requires the maven-bundle-plugin.  In the end, mina-core doesn’t require bundling, and it became a headache.

Maven Central should be updated in the next 24-48 hours.  If you’re impatient, you can always build from GitHub.  If you’re already using version 1.0.4, you don’t need to make any changes.

BCrypt Settings

Aside

While working on the new web API for Owl Platform, I had some trouble finding the right parameters for bcrypt.  It’s a great library/algorithm for password encryption, but I couldn’t figure out what the right log factor was.  The default value of 10 was described in plenty of articles, but I had no idea what was right for 2013.  Here’s what I found.  On my Intel i5 M460 (2.5 GHz), it took around 440 milliseconds to hash/verify a password using a log factor of 12.   This seems entirely reasonable to me.  I hope that on better hardware it will still take at least 5-10 milliseconds, slowing down attackers.

Ben and I got into a big tirade about what was really secure and what crypto strength meant and everything, but in the end I think a log factor of 12 is sensible.  I may bump it up to 13 before we go live, if the hardware keeps the hash under 200 ms.

Bay Area Maker Faire 2013

Live MakerFaire Demo!

We’re just starting day two of the 2013 Bay Area maker faire! We had a lot of fun yesterday meeting lots of people as they came by. Plenty of people are asking us how we are different from other sensing and Internet of Things groups — and given how many groups there are I totally understand the confusion!

The Owl Platform philosophy has two important ideas. First, people should be able to just unpack a sensor from a box, stick it somewhere, and forget about it. This means that sensors should be ready to use straight from the box and shouldn’t require constant maintenance, which is why the multi-year lifetime of our sensors is so important!

Our second main idea is that people want to program sensor data, not the sensor! Programming a sensor is a real pain — you need to worry about interrupts, wireless networking, battery consumption, and a lot of other details that don’t matter to your goal. Owl Platform’s network API let’s you get right to working with your sensor data so you can get right to making the sensor application you want. Our API is so simple that many of our apps can be written in 50 line Ruby scripts!

Check out the open source implementation of our API in C++, Java, and Ruby at github.com/OwlPlatform and read more about our system at www.owlplatform.com/developers.php