This update was hard won..! I co-code with Claude (“vibe coding” is a stupid name, I’ll never mention it again). ChatGPT was laughably unable to keep up and Claude Sonnet did quite well up to this point, but this update was so gargantuan I had to change the engine to Opus as it couldn’t keep up otherwise. The level of sophistication is very high, we’re up to ~4,000 lines of C++. Claude has always made countless mistakes and logic errors, but it’s been helpful nonetheless and is a strong AI.
Aside from a new batch of LED’s and the resulting change to resistor values the hardware is pretty much the same. This update was all about software.
Alpha 6 introduced provisioning so that I can batch-install Cipherpod standards or blacks and their correlated keys, which is harder than it sounds because the group of blacks need to have the same onboard key – unique from anybody else’s in the world – and locked RFID keys readable only by black units, and only by units provisioned in that same group.
Which is to say, if you provision 4 black units and their corresponding RFID keys, those keys are unreadable by any other unit ever sold, and the onboard keys to the black units themselves are unique… but you can mix and match the provisioned units and keys to your heart’s content and it’ll always produce the same password!
Creating the provisioning program and this code while still remaining backwards compatible was frankly brutal, it took many days. The other benefit to figuring out authenticated keys was the ability to authenticate to block zero, which I’ve been trying to do for months. RFID token metadata includes serial numbers, but by reading block zero data I’m able to get much more manufacturing and checksum data, making plain ol’ RFID cards or hotel room keys produce much more entropy for password generation.
While I was at it, I tested RFID Yubikey and other random RFID tokens and at first they broke.. everything.. but in the end card type detection speed was improved by 10x and absolutely any RFID device can be used quickly and effectively. The minimum entropy for the worst key out there (all-zeros aside!) is ~56 bits, which will still produce the best password Facebook has ever seen. If you use a provisioned Cipherpod RFID key the entropy pool is over 512 bits and it will quickly and consistently generate powerful passwords.
As a finishing touch, green mode actually flashes the green LED now, instead of just the blue. What can I say, it’s the little things.
I’ve now produced at least one of each type – a standard (PLA), standard (PETG), Pod Zero (PETG) and 2x Pod Blacks. I’ll use these to model for photos.
