Terence Eden. He has a beard and is smiling.

Terence Eden’s Blog

Theme Switcher:

FobCam '25 - All my MFA tokens on one page

· 3 comments · 1,000 words · Viewed ~1,224 times


A padlock engraved into a circuit board.

Some ideas are timeless. Back in 2004, an anonymous genius set up "FobCam". Tired of having to carry around an RSA SecurID token everywhere, our hero simply left the fob at home with an early webcam pointing at it. And then left the page open for all to see. Security expert Bruce Schneier approved of this trade-off between security and usability - saying what we're all thinking: Here’s a guy w…

How to prevent Payment Pointer fraud

· 9 comments · 1,000 words · Viewed ~724 times


Web Monetization The Web Monetization API allows websites to automatically and passively receive payments from Web Monetization-enabled visitors.

There's a new Web Standard in town! Meet WebMonetization - it aims to be a low effort way to help users passively pay website owners. The pitch is simple. A website owner places a single new line in their HTML's <head> - something like this: <link rel="monetization" href="https://wallet.example.com/edent" /> That address is a "Payment Pointer". As a user browses the web, their browser takes …

Towards a test-suite for TOTP codes

· 11 comments · 1,250 words · Viewed ~7,120 times


Screenshot showing a QR code and numeric codes.

Because I'm a massive nerd, I actually try to read specification documents. As I've ranted ad nauseam before, the current TOTP spec is irresponsibly obsolete. The three major implementations of the spec - Google, Apple, and Yubico - all subtly disagree on how it should be implemented. Every other MFA app has their own idiosyncratic variants. The official RFC is infuriatingly vague. That's no…

Using the Web Crypto API to Generate TOTP Codes in JavaScript Without 3rd Party Libraries

· 2 comments · 750 words · Viewed ~819 times


A chunky wristwatch showing the time and a selection of 6 digit codes and their corresponding entities.

The Web Crypto API is, thankfully, nothing to do with scammy cryptocurrencies. Instead, it provides access to powerful cryptographic features which were previously only available in 3rd party tools. So, is it possible to build a TOTP code generator without using any external JS libraries? Yes! And it is (relatively) simple. Here's the code that I've written. It is slightly verbose and contains…

The least secure TOTP code possible

· 4 comments · 750 words · Viewed ~5,260 times


QR code.

If you use Multi-Factor Authentication, you'll be well used to scanning in QR codes which allow you to share a secret code with a website. These are known as Time-based One Time Passwords (TOTP). As I've moaned about before, TOTP has never been properly standardised. It's a mish-mash of half-finished proposals with no active development, no test suite, and no-one looking after it. Which is…

Review: Pebblebee Clip Universal - and Android "Find My Device" Tracker

· 2 comments · 1,250 words · Viewed ~3,020 times


The disk has a USB-C socket at the bottom and flashing lights on the side.

Android is belatedly getting a Bluetooth tracker feature which doesn't rely on proprietary apps. Long-time readers will know that back in 2016 I reviewed both the Chipolo and the TinTag. Both of those were adequate at finding things which were in range of your phone, but hopeless at finding lost items - because they required everyone to have a special app installed. But now, under pressure from …

Should you enable TOTP *only* authentication?

· 10 comments · 300 words · Viewed ~275 times


A QR code.

Here's a "fun" thought experiment. Imagine a website which let you sign in using only your username and TOTP code. No passwords. No magic links emailed to you. No FIDO tokens. No codes via SMS. Just a TOTP generated and displayed on your device. Is that useful? Sensible? Practical? It's certainly technically possible. Store the username, store the TOTP seed, done. Your users can now log in. …

A decade later, has my mobile security advice changed?

· 7 comments · 1,750 words · Viewed ~375 times


Logo for 361 degrees podcast.

A decade ago, I appeared on the 361 Podcast to give my advice about mobile security. This was the era of the iPhone 5 and Android KitKat. BlackBerry was trying to have (yet another) resurgence and Nokia was desperately trying to keep Windows Phone alive. What advice did I give then, and is it still relevant? Stay Sceptical In at number five is just stay sceptical. I mean, quite often, lots…

Psssst! Your date of birth can be a random number!

· 15 comments · 300 words · Viewed ~2,946 times


A graphic of a calendar showing the date "February 25 Sunday"

For lots of online accounts, a date of birth is nothing more than a very weak second factor. The majority of places aren't checking your identity, cross-referencing your birthdate, and personalising your experience based on your Zodiac sign. At most, they'll wish you a happy birthday and / or let you recover your account by providing your date of birth. But, of course, lots of people know your…

Is it OK to share 2FA secrets?

· 4 comments · 300 words · Viewed ~250 times


A QR code.

Yeah. Yeah, I reckon so. Under the right circumstances. Multi-Factor Authentication (MFA, 2FA, TOTP, whatever you want to call it) is pretty nifty. You scan a QR code and your phone will continually generate a set of one-time passwords which are synchronised with a remote server. There's nothing stopping multiple people from scanning that QR code! They will each have the same password displayed …

QR Code Hijacking Attempts Are Pretty Inept

· 3 comments · 650 words · Viewed ~453 times


A poster behind some glass. A paper QR code is stuck on top of the glass. It is easy to see it is a replacement code.

I've been writing about QR codes since 2007 - long before they were fashionable. Because QR Codes are so cheap to produce, there has always been a concern that attackers might print out their own codes and stick them over legitimate ones. When I first wrote about QR Hijacking in 2011, I said that such attacks were usually easy to spot: Recently, a new wave of QR Hijacking attacks have been…

Cybersecurity and Shakespeare - a brief look at how technology can prevent tragedy

· 4 comments · 950 words · Viewed ~205 times


A pixelated Shakespeare.

Shakespeare, famously, shunned computers. Like some sort of retro hipster, he didn't write his plays on a laptop, refused to use spellcheck, and didn't register his copyright on the blockchain. Lord, what fools these mortals be! What would Shakespeare's plays have been like if their characters understood basic cybersecurity? Now, it is true that very few of his plays feature computers, but…