@davejthorp the RSS feeds at dave-thorp.me.uk (e.g. for posts and comments, presumably among others) are broken
Month: January 2019
Evaluating the GCHQ Exceptional Access Proposal
This is a repost promoting content originally published elsewhere. See more things Dan's reposted.
…
In a blog post, cryptographer Matthew Green summarized the technical problems with this GCHQ proposal. Basically, making this backdoor work requires not only changing the cloud computers that oversee communications, but it also means changing the client program on everyone’s phone and computer. And that change makes all of those systems less secure. Levy and Robinson make a big deal of the fact that their backdoor would only be targeted against specific individuals and their communications, but it’s still a general backdoor that could be used against anybody.
The basic problem is that a backdoor is a technical capability — a vulnerability — that is available to anyone who knows about it and has access to it. Surrounding that vulnerability is a procedural system that tries to limit access to that capability. Computers, especially internet-connected computers, are inherently hackable, limiting the effectiveness of any procedures. The best defense is to not have the vulnerability at all.
…
Lest we ever forget why security backdoors, however weasely well-worded, are a terrible idea, we’ve got Schneier calling them out. Spooks in democratic nations the
world over keep coming up with “innovative” suggestions like this one from GCHQ but they keep solving the same problem, the technical problem of key distribution or
key weakening or whatever it is that they want to achieve this week, without solving the actual underlying problem which is that any weakness introduced to a secure
system, even a weakness that was created outwardly for the benefit of the “good guys”, can and eventually will be used by the “bad guys” too.
Furthermore: any known weakness introduced into a system for the purpose of helping the “good guys” will result in the distrust of that system by the people they’re trying to catch. It’s pretty trivial for criminals, foreign agents and terrorists to switch from networks that their enemies have rooted to networks that they (presumably) haven’t, which tends to mean a drift towards open-source security systems. Ultimately, any backdoor that gets used in a country with transparent judicial processes becomes effectively public knowledge, and ceases to be useful for the “good guys” any more. Only the non-criminals suffer, in the long run.
Sigh.
The Route of a Text Message
This is a repost promoting content originally published elsewhere. See more things Dan's reposted.
With each tap, a small electrical current passes from the screen to her hand. Because electricity flows easily through human bodies, sensors on the phone register a change in voltage wherever her thumb presses against the screen. But the world is messy, and the phone senses random fluctuations in voltage across the rest of the screen, too, so an algorithm determines the biggest, thumbiest-looking voltage fluctuations and assumes that’s where she intended to press.
So she starts tap-tap-tapping on the keyboard, one letter at a time.
I-spacebar-l-o-v-e-spacebar-y-o-u.
…
I’ve long been a fan of “full story” examinations of how technology works. This one looks and the sending and receipt of an SMS text message from concept through touchscreen, encoding and transmission, decoding and display. It’s good to be reminded that whatever technology you build, even a “basic” Arduino project, a “simple” website or a “throwaway” mobile app, you’re standing on the shoulders of giants. Your work sits atop decades or more of infrastructure, standards, electronics and research.
Sometimes it feels pretty fragile. But mostly it feels like magic.
CSS-driven console graphics
If you’re reading this post via my blog and using a desktop computer, try opening your browser’s debug console (don’t worry; I’ll wait). If you don’t know how, here’s instructions for Firefox and instructions for Chrome. Other browsers may vary. You ought to see something like this in your debugger:
What sorcery is this?
The debug console is designed to be used by web developers so that they can write Javascript code right in their browser as well as to investigate any problems with the code run by a web page. The web page itself can also output to the console, which is usually used for what I call “hello-based debugging”: printing out messages throughout a process so that the flow and progress can be monitored by the developer without having to do “proper” debugging. And it gets used by some web pages to deliver secret messages to any of the site users who open their debugger.
Principally, though, the console is designed for textual content and nothing else. That said, both Firefox and Chrome’s consoles permit the use of CSS to style blocks of debug output by using the %c
escape sequence. For example, I could style some of a message with italic text:
>>
Using CSS directives like background, then, it’s easy to see how one could embed an image into the console, and that’s been done before. Instead, though, I wanted to use the lessons I’d learned developing PicInHTML 8¾ years ago to use text and CSS (only) to render a colour picture to the console. First, I created my template image – a hackergotchi of me and an accompanying speech bubble, shrunk to a tiny size and posterised to reduce the number of colours used and saved as a PNG.
Next, I wrote a quick Ruby program, consolepic.rb, to do the hard work. It analyses each pixel of the image and for each distinct colour assigns to a variable the CSS code used to set the background colour to that colour. It looks for “strings” of like pixels and combines them into one, and then outputs the Javascript necessary to write out all of the above. Finally, I made a few hand-tweaks to insert the text into the speech bubble.
The resulting output weighs in at 31.6kB – about a quarter of the size of the custom Javascript on the frontend of my site and so quite a bit larger than I’d have liked and significantly less-efficient than the image itself, even base64-encoded for embedding directly into the code, but that really wasn’t the point of the exercise, was it? (I’m pretty sure there’s significant room for improvement from a performance perspective…)
What it achieved was an interesting experiment into what can be achieved with Javascript, CSS, the browser console, and a little imagination. An experiment that can live here on my site, for anybody who looks in the direction of their debugger, for the foreseeable future (or until I get bored of it). Anybody with any more-exotic/silly ideas about what this technique could be used for is welcome to let me know!
Update: 17 April 2019 – fun though this was, it wasn’t worth continuing to deliver an additional 25% Javascript payload to every visitor just for this, so I’ve stopped it for now. You can still read the source code (and even manually run it in the console) if you like. And I have other ideas for fun things to do with the console, so keep an eye out for that…
Security Checklist
This is a repost promoting content originally published elsewhere. See more things Dan's reposted.
Be safe on the internet.
An open source checklist of resources designed to improve your online privacy and security. Check things off to keep track as you go.
…
I’m pretty impressed with this resource. It’s a little US-centric and I would have put the suggestions into a different order, but many of the ideas on it are very good and are presented in a way that makes them accessible to a wide audience.
Dan Q posted a note for GC5J655 GO Active Cutteslowe and Sunnymead Park
This checkin to GC5J655 GO Active Cutteslowe and Sunnymead Park reflects a geocaching.com log entry. See more of Dan's cache logs.
- CO hasn’t logged in in almost 3 years.
- Long string of DNFs.
- No finds in 8 months.
- During that time I’ve repeatedly tried to contact CO both through this site and through Go Active Oxfordshire (to report this as probably-missing and to volunteer to help with its future maintenance if they want to bring it back to life), but never received a response.
I strongly suspect that this cache is abandoned by the organisation that set it up. I’m reaching out to them today, one last time, but if they don’t respond then I suggest that this be considered for archiving by an administrator.
Dan Q posted a note for GC54KVD Oxford Medical History #2: Grey matter
This checkin to GC54KVD Oxford Medical History #2: Grey matter reflects a geocaching.com log entry. See more of Dan's cache logs.
Came past here the other day while some work was being done on the island. The entire area around the GZ has been torn-up and it seems likely that the cache has been muggled and that the area might no-longer be suitable for a cache. :-(
The most unexpected answer to a counting puzzle
This is a repost promoting content originally published elsewhere. See more things Dan's reposted.
Summary: if an idealised weight slides into another, bouncing it off a wall then back into itself, how many times will the two collide? If the two weights are the same then the answer is 3: the first collision imparts all of the force of the first into the second, the second collision is the second bouncing off the wall, and the third imparts the force from the second back into the first. If the second weight weighs ten times as much as the first, the answer turns out to be 31. One hundred times as much, and there are 314 bounces. One thousand times, and there are 3,141. Ten thousand times, and there are 31,415… spot the pattern? The number of bounces are the digits of pi.
Why? This is mindblowing. And this video doesn’t answer the question (completely): it only poses it. But I’ll be looking forward to the next episode’s explanation…
The Mystery
This is a repost promoting content originally published elsewhere. See more things Dan's reposted.
Brian and Nick are back for the first time in, like, forever. Do you remember what happened before this? It was The Faux Pas, two years ago. And before that? And before that? And before that? The short of it is that it’s been a long time since your mom’s butthole was just fine.
Geohashing expedition 2019-01-08 51 -1
This checkin to geohash 2019-01-08 51 -1 reflects a geohashing expedition. See more of Dan's hash logs.
Location
A34 near Peartree Interchange, Oxford.
Participants
- Dan Q (whose birthday it is!)
Plans
It’s my birthday on YYYY-01-08 (Birthday geohash achievement, here I come!), and even though I have to go into work (boo!), I note that my graticule’s geohashpoint falls only about a kilometre and a half of a diversion from my usual cycle route to work. The A4260 and A34 are basically a deathtrap for cyclists, so depending on conditions and traffic I’ll probably divert via the Oxford Canal towpath from Kidlington to Peartree, park up near Peartree Services, and then finish on foot. And then go to work, I guess.
Expedition
Success! A relatively easy (but sometimes scary: the traffic’s a bit nuts on some of the major roads that provided the shortest route) journey to the hashpoint area, followed by a slightly-scary crossing of the road to the hashpoint, which turned out to be right by the crash barriers at the central reservation. The crash barriers provided a great place to tie a “The Internet Was Here” sign.
On my way away from the hashpoint, at 09:19, I hid a geocache: (“2019-01-08 51 -1, 09:19”, OK049E, GC827X6). The geocache is of the “puzzle” variety – the person looking for it is likely to discover geohashing (if they haven’t already) as part of their research into the secret location of the cache.
- YouTube video of my expedition (also available here) – this also includes proof of my date of birth
- Tracklog (GPX) showing my route
Achievements
Dan Q earned the Birthday Geohash Achievement
|
Geohashing expedition 2019-01-08 51 -1 (video)
On the morning of my 38th birthday I set out on an expedition to the geohashpoint in my graticule as a diversion from my way to work: read my full hash log for details (or on the geohashing wiki). Inspired by a spot near the hashpoint, I also hid a geocache (“2019-01-08 51 -1, 09:19”, OK049E, GC827X6). You can download my tracklog [GPX] here.
There’s lots of ugliness in the world right now, so I think it’s important to share these photos…
This is a repost promoting content originally published elsewhere. See more things Dan's reposted.
(5) As soon as the ceremony was over, people were directed to another area for a wine reception. I slipped away to the bathroom with @AimieRocks, who was helping with my make-up. I shaved off the beard, did my face, got into the clown suit, and pounded one of the 40oz’s.(8) I accidentally shattered a few wine glasses, but I gotta say I brought a real JOVIAL DRUNK CLOWN vibe to the whole affair, so people embraced me pretty quickly, even though I kept drinking their wine.(9) Except for Laura’s dad, who called for security to escort me out. She had to tell him that I was AN OFFICIAL MEMBER OF THE WEDDING PARTY.Best Man ☑️
Maid of Honor ☑️
Drunk Clown ☑️(10) At some point, we must have gone into the vineyard to take those photos in the original tweet up above, but honestly I was so drunk that I don’t remember taking them.Anyway, I told you there wasn’t much backstory. It was an awesome wedding. <end>
(12) OMG okay so I guess I have to make a SECOND ADDENDUM because @AimieRocks just emailed me some more photos from the wedding. Adding them to this thread…(13) What I wore to the wedding ceremony. (That’s not my hat, that’s @AimieRocks‘s hat, I’m *not* a hat person but wearing it made me feel like Diane Keaton.) Posting these photos so you can see the beard I had before my clown transformation. I shaved that thing off SO QUICKLY.Marvin just joined twitter to tell me that’s his mom I’m hugging in the third photo in this tweet. I’M SORRY, MARVIN. But welcome to twitter. xohttps://twitter.com/MarvinSolomon8/status/1053408858196983808
(17) ADDENDUM #3: @MarvinSolomon8 just texted me the name of their wedding photographer. Shoutout to SAMUEL POTTER PHOTOGRAPHY in Paso Robles. Here’s his website:He took the three vineyard photos & obviously has a great eye. THANK YOU SAMUEL POTTER.
I was at a party this afternoon and an old friend introduced me to his wife, then told her: “honey, this is the drunk clown I told you about.”
Dan Q note OK045C The Fairy Elevator
This checkin to OK045C The Fairy Elevator reflects an opencache.uk log entry. See more of Dan's cache logs.
Dropped by to perform routine maintenance to discover that this cache has been partially muggled: the lifting mechanism has been cut and the pencils have been removed. However the cache itself is otherwise functional. As a stop-gap the cache is temporarily hidden BEHIND the tree (rather the hoisted up it); I’ll look into a proper fix as soon as I’m able.
Dan Q performed maintenance for GC7R0HB The Fairy Elevator
This checkin to GC7R0HB The Fairy Elevator reflects a geocaching.com log entry. See more of Dan's cache logs.
Dropped by to perform routine maintenance to discover that this cache has been partially muggled: the lifting mechanism has been cut and the pencils have been removed. However the cache itself is otherwise functional. As a stop-gap the cache is temporarily hidden BEHIND the tree (rather the hoisted up it); I’ll look into a proper fix as soon as I’m able.
Review of Oxy Oriental
This review of Oxy Oriental originally appeared on Google Maps. See more reviews by Dan.