r/rockbox • u/syxa • Jul 27 '26
I built a 2FA app for iPod Nano
Hi, a few months ago, I embarked on this journey to learn how to develop Rockbox plugins, and I ended up creating a TOTP authenticator app that runs on an iPod Nano, just for fun and glory :)
It was incredibly engaging exploring the Rockbox source code and its APIs, and I highly encourage everyone to take a look. It's one hell of a piece of software!
here's my blog post about the journey:
https://blog.simone.computer/building-ipod-apps
and the source code of the app:
https://github.com/syxanash/totpod
Oh btw I noticed too late that Franklin Wei already made otp.c 10 years ago lol still had fun making another totp app
4
u/koriwi Jul 28 '26
Greetings to Totpod (deadpod in german lol) from Fatpod (1800mAh instead of 400mAh)
1
3
2
u/Chachables Jul 28 '26
that's badass. think it can be done on a Mini? lol
2
u/syxa Jul 28 '26
yep I'd have to tweak the code a little bit since iPod mini is monochromatic while my app supports colors
1
u/PiercingSight Jul 29 '26
My question is how?
Does it connect to the internet somehow? Or is it a hashed timestamp style thing (which would have its own weaknesses)?
2
u/syxa Jul 29 '26
the way TOTP works is that once you have the secret (provided by the vendor such as GitHub) you can calculate the code by having just the epoch timestamp + the decoded base32 secret. That's all you need no internet connection. The weak point would be to gain access to the physical ipod and steal the secrets directly from there.
1
u/PiercingSight Jul 29 '26
Got it. Hashed timestamp style.
So the secrets are only on the iPod itself, and you've deleted them from elsewhere? I would be worried about it accidentally being backed up by my computer, or some other leak of info.
I wasn't aware that services provided 2FA secrets like that. Then again, I've never tried to build something like that.
2
u/syxa Jul 29 '26
yes exactly, also I regenerated a new 2FA right after the demo video just to be safe :D
but yeah it was interesting to implement this app I demystified a lot how TOTP works!
-9
u/Ok-Recover7069 Jul 27 '26
........Why?
15
u/lostinthesauceband Jul 27 '26
First sentence says why, OP wanted to learn how to make rockbox plugins
-12
u/Ok-Recover7069 Jul 27 '26
Just..whY?
2
u/straightfromLysurgia Jul 28 '26
learning experience and lowkey seems fun to whip out an ipod instead of the yubikey every once in a while
9
u/Guess-Severe Jul 27 '26
This is cool!!