A use case of sorts for permissioned -and- encrypted data

So in my introduction I mentioned something, and was asked to maybe make a thread about it. This is that thread.

The only problem is that I can’t be very specific at this point in time due to happy fun IP/NDA etc. things so I may have to… gloss over a few things and be intentionally vague. That also means I may not be able to answer questions in a non-vague manner (as in, you’ll always get an answer but it may not be useful :P)

So. I work as a devops engineer (well, R&D engineer really) for a company that does IoT and smart building things. We’ve been working on a new model of doing things that involves way more deployments on the edge, and with the core principle that data sovereignty is a must (i.e. “the user owns all their data, end of story”). This has been a “hobby thing” for a few of my colleagues and myself for the past year and a half and recently has been given the official “congrats boys, you’re now our new 2026 project” go-ahead.

The structure we came up with has some very close parallels to ATproto, and we’ve actively considered using ATproto because it saves us the headache of account management, and you get that fun data/identity portability thrown in. Except the data we need to store, well… it needs to be permissioned (because we don’t want anyone just being able to, for instance, alter the schedule at which a bit of heating comes on), and it needs to be encrypted because this would live on an edge device and it’d be kinda bad form if someone could walk in, swipe the box, and make off with a bunch of unencrypted data. (yes there’s ways to implement encryption OOB with vault and transit encryption but that’s OOB and I’d so incredibly love for it to be in-band).

tl:dr; we do fun stuff with IoT on edge and it’d be neat if we could just use ATproto instead of the FrankATproto we’ve come up with. Encrypted and permissible data would go a long way into convincing our CEO we’ve not all gone around the bend :slight_smile:

2 Likes

If you are building for IoT / Edge, are these the sorts of devices that are powerful enough to run a PDS? I think of Arduino type boards when I hear IoT/Edge (vs CF edge)

What does ATProto bring to your project? Is it mainly that the PDS is a multi-tenant database with auth and soon™ permissioned data?

Some of them are yes, think Intel NUC/RPi style things. Some are arduino boards and won’t be running anything like a PDS :smiley:

What it brings to the project… difficult, I have to be vague :slight_smile: But mostly you’re spot on with what you said. There’s also the ATproto data model wrt. relays and appviews and such things. Of course, a PDS isn’t really a great database since it has no relational capabilities but the structure of it (along with the ownership-of-records) solves a few things we’ve been kicking around for a while.

But most of that hinges completely on the existence of not just permissioned data, but also encrypted data. One perhaps being a function of the other. Permissioned data is a must-have, encrypted data, well, we have a workaround for that but it’s not ideal (basically involving some copious usage of Vault’s transit encryption).

Aaaand that’s about as specific as I can get :frowning: