QZ qz thoughts
a blog from Eli the Bearded
Page 4 of 146

Tiny Media, revisited


A few weeks ago I posted about getting a tiny cassette tape and commented that I needed a microdrive to complete the collection.

Four pieces of tiny media with a dime and Lego brick for scale

Clockwise from top: a 36 exposure film cartridge for a Minox camera (takes 8 × 11 mm pictures on 9.2mm wide film); a US dime and green a Lego brick of the most generic type (3001, 31.8 × 15.8 × 11.4 mm); a Seagate 4GB microdrive in Compact Flash package (43 × 36 × 5 mm; platter is 26mm Ø); a 120 minute Sony NTC-120 cassette tape (30 × 21.5 × 5 mm; 2.5 mm magnetic tape) and a Samsung micro SD card (15 × mm × 1 mm).

I checked ebay, and microdrives are easy and cheap to find these days, so now I have one. Upon getting I found out I had to buy a new Y000 size tri-lobed screw driver (well, bit for my modular driver) to take it apart. My set of bits, the complete range from Ifixit when I got the set, only went down to Y0. Ifixit now has them. I got a Y00 at the same time to not have a gap.

Somewhere I have a few UMD disks, the DVD-esque media for the Sony Playstation Portable (PSP). At 64mm in diameter, it was smaller than the Minidisk (68mm) format, but it is still much larger than any of these.

getcert


I've typed these commands in by hand dozens of times over the years. But today I decided, "No more, script it."

So here's a simple script that takes a hostname, with optional port, and optional output filter. It makes an SSL connection to the given host, and extracts the certificate presented. With the validity filter, you can see the dates the cert is good for. With the dns filter, you can see hostnames the cert covers.

#!/bin/sh

host=$1
port=443

full() { cat; }
valid() { grep -A2 'Validity'; }
dns() { grep -E '(Subject.*CN *=|DNS *:)'; }

case "$host" in
        *:*) connect="$host" ;;
        ?*)   connect="$host:$port" ;;
        *) echo "usage: host[:port] { full | valid | dns }"
           exit 2
           ;;
esac
filter="full"

case "$2" in
        full) filter="full" ;;
        val*) filter="valid" ;;
        dns*) filter="dns" ;;
esac

: | openssl s_client -connect "$connect" 2> /dev/null |
    openssl x509 -noout -text |
    $filter
exit

Some examples of it in use:

$ getcert www.cvs.com dns      
        Subject: C = US, ST = Rhode Island, L = Woonsocket, O = CVS
Pharmacy Inc, OU = CVS Caremark Corporation, CN = www.cvs.com
                DNS:www.cvs.com, DNS:www.minuteclinic.com,
DNS:www.cvshealth.com, DNS:voices.cvshealth.com,
DNS:videovisit.cvs.com, DNS:vaccines.cvs.com,
DNS:vaccines-west.cvs.com, DNS:vaccineclinicscheduler.cvs.com,
DNS:tnl-photo.cvs.com, DNS:t.cvs.com, DNS:static.cvs.com,
DNS:services.cvshealth.com, DNS:services.cvs.com,
DNS:scheduling.minuteclinic.com, DNS:r.cvs.com, DNS:photohelp.cvs.com,
DNS:photo-store.cvs.com, DNS:photo-smetrics.cvs.com,
DNS:photo-metrics.cvs.com, DNS:payments.cnpapi.cvs.com,
DNS:optical.cvs.com, DNS:mypassword.cvshealth.com,
DNS:mypassword.cvs.com, DNS:myhr.cvs.com,
DNS:mychart.minuteclinic.com, DNS:mobile.cvs.com,
DNS:minuteclinic.com, DNS:message.cvs.com, DNS:meddplanfinder.cvs.com,
DNS:m.cvs.com, DNS:i.cvs.com, DNS:health.cvs.com, DNS:flushot.cvs.com,
DNS:express.cvs.com, DNS:es.minuteclinic.com, DNS:es.cvs.com,
DNS:entservices.cvs.com, DNS:e.cvs.com, DNS:depservices.cvs.com,
DNS:ddl.cvs.com, DNS:d.cvs.com, DNS:cvs.com,
DNS:citrix.minuteclinic.com, DNS:circular.cvs.com,
DNS:catools-photo.cvs.com, DNS:cvsh-tv.cvs.com, DNS:c.cvs.com,
DNS:seo.cvs.com, DNS:s.cvs.com, DNS:ds.cvs.com, DNS:design.cvs.com,
DNS:alvie.cvs.com, DNS:smartbytes.minuteclinic.com, DNS:care.cvs.com,
DNS:www.care.cvs.com
$
$
$ getcert www.nato.int valid
        Validity
            Not Before: Dec 17 14:09:55 2020 GMT
            Not After : Dec 31 22:59:59 2021 GMT
$

There you have it. CVS has a list of subject alternative names (SANs) as long as a CVS receipt, and you now know what to get NATO for xmas.

Tiny Media


Three pieces of tiny media and a Lego brick for scale

Clockwise: a Lego brick of the most generic size; a 120 minute NTC-120 cassette tape, a micro SD card, and a 36 exposure film cartridge for a Minox camera.

Extremely tiny things amuse me, so when I recently learned about the NT tape format from Sony, I looked on ebay to see if I could find one. About twelve bucks later and I have one. Now I need to get a microdrive to complete the collection.

Update: with microdrive

The Green Knight


This a two hour ten minute retelling of the Arthur Extended Universe story Sir Gawain and the Green Knight. It's a slow and meditative movie, with several extended sequences lacking in dialog. Some of the lines that were spoken were hard to understand, so working well as silent film is a plus.

Without spoiling any of the story, let me recount a scene near the end. Having left the house of the mysterious Lord (most characters lack names) who played the game of exchanging winnings, Gawain makes his way to Green Chapel, arriving a day earlier than appointed time. He Sees the Green Knight sitting, eyes closed in a throne at the back of the broken down hall. Gawain places the axe down at the foot of the Knight and sits on the floor to wait. There's somewhere between two and five minutes of silent waiting, the camera lingering on the closed eyes of the Green Knight's face mixed with cuts to Gawain coming to terms with the fate ahead of him. This is used to show the passage of time until the next morning when the Green Knight awakens.

If you are stoned enough to find that deep or patient enough to tollerate that sort of slow moving story, this is a pretty entertaining retelling of the legend. If you'll be checking your phone when nothing happens for a while, stay away.

I think it helps to already know the story, and it also helps to be willing to accept some changes to the story. There's a fox in this version, for example, that is not in the one I read.

A six day journey out of ten.

The Green Knight at imdb

Also get ready for a bunch of different ways to pronounce "Gawain".