Getting data securely to me, starting from (almost) nothing:

If I’m out and about and my bike gets stolen, along with all of my gear – or worse yet, I get accosted by highwaymen who steal all my things by force and leave me stranded – my concern will be immediate physical safety.

Beyond that, and assuming there is at least some honest infrastructure I can use, my concern will be replacing my equipment. I have some important things memorized, but I also have a bandana I made with various secret information encoded on it.

So, assuming the criminals don’t strip the clothing off my head, I can contact friends and family, share identifying information, and authenticate with some online services. Another thing I can do with the bandana is exchange sensitive data over the internet by encrypting it, because it’s got a slightly obfuscated copy of my private RSA encryption key on it.

How does that work?

Let’s assume I’ve lost everything but the bandana, so I’m starting from scratch with some new blank laptop I bought in a local shop.

Using that I can connect to the internet and download various pre-encrypted things I’ve created, and access them with the key in the bandana. But I can also have people encrypt things and send them to me.

That’s why I made this post: The explanation below is the bare minimum people will need to safely send me things, large and small:

First thing you need is this public key:

-----BEGIN PUBLIC KEY-----
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAwAGrQGlUBYTz+1nbQjUk
NSCb4qdOZ76JI8W6Jgcx6uh0w7RYgp933VvVa0+gOezIN9n1C3lQd01uT14vp0EO
9t/aSipH+I4px5zZBBcdu6aKtuDEgUiaaTmV7+w66QCxcN7ACitkoqW/pmv8l4mg
bPhbSsyb3+e0bHCQ2f90MX1szsplEsu8LElEVL9Y2lR5tHZ2UlqA3mVqHqK7a9ue
SU7rEfNIPV3EEkU59L5lAPwKqFsekPxRhToQD2AK9tuyRMtZCam6jMEtxNQm5Qrz
Wgqvbin39u30HMR39Q5AZ+vNhb9aD+Iibl5jZe8x5TH18/Z0wd/8jtdSk/5mcjZC
XyMW0hguL1EX+E8mNbTZklVbjMhPq53rwgNm9O5RYcHPkaB3AcI+zxv+6AzzXl/Q
5VP0EfDyqSfzge3Yyxdj9T2QV275KCyEKKs7pEucUN0d5OKOQuXXtoojjH0kWEMx
oh/B0Z7B0leDcAMqgoe/l5avw8i56bWoNZ6gJ7BeT8/Wubk7wNyZYKBDb3JHRNYY
dQeXnQxiYObnq5T2JqyFfG0ITHq5Q7KzIv9kWG5rapGSBdtkVCEGDY9zPt7oHoeM
eTujgVYXux0FoyHrG86GKhlVVVxHY0pHeDwlsW2rjJr9E5iizLAkcDF50OdbjIa9
F9Hrzo6RF0XI5YbrR+Z9KBMCAwEAAQ==
-----END PUBLIC KEY-----

Grab this text and paste it into a file called id_rsa.pub.pkcs8

To send:

Let’s say you have a big thing you want to send: secret.zip, a zipfile full of stuff.

We’re going to make a temporary key, encrypt that file with the key, encrypt the temporary key with my public RSA key, and package secret.zip and the encrypted temporary key together, like so:

$ openssl rand 64 | base64 -b 0 > key
$ openssl aes-256-cbc -in secret.zip -out secret.zip.enc -pass file:key
$ openssl rsautl -encrypt -oaep -pubin -inkey id_rsa.pub.pkcs8 -in key -out key.enc
$ tar -zcvf secret.tgz *.enc

The resulting file, secret.tgz, is what you’ll want to send me.

To receive:

When I get secret.tgz, I decompress it and find two files inside:

key.enc
secret.zip.enc

Then I run the following:

$ openssl rsautl -decrypt -oaep -inkey ~/.ssh/id_rsa -in key.enc -out key
$ openssl aes-256-cbc -d -in secret.zip.enc -out secret.zip -pass file:key

That gets me secret.zip, and the exchange is done.

It’s incredibly unlikely that I’ll ask anyone to send me things this way, but this page is here just in case.

A variation of this is how I intend to get all my data back in my hands even if I’m in a part of the world where everything I send or receive online is subject to eavesdropping or logging by weird state actors or random criminals.

References:

https://gist.github.com/fcoury/4890d7831d7e83ba1782 , https://www.bjornjohansen.com/encrypt-file-using-ssh-key

Traveling With A Crateworks Bike Box

Here, have a pile of weirdly specific instructional videos on how to ship an ordinary touring bike with a modified Crateworks box!

Preparing your Crateworks box to pack a bicycle into it.

Disassembling a bicycle to fit into a Crateworks box.

Packing the disassembled bike into the Crateworks box.

Getting your bike out of the Crateworks box and reassembling it.

Re-folding the Crateworks box and preparing it for shipping without the bike.

Powering Stuff On A Long Bike Tour

I’ve been doing long bike tours for over 15 years now, and for almost all of them I’ve carried a laptop so I can compute on the road, including pretty serious remote work as a software developer.

The metaphorical landscape has changed massively since I started doing this. All the tools have gotten way better. But one of the challenges I am constantly dealing with is: How the heck do you power and charge everything?

I’m always looking for ways to make my solution better, but I’ve hit on a nice one just now, and after going on a few trips to test it out, I figure I should pause here and document it for my own obsessive reference.

Two full-power USB-C ports on one power socket.

These are the two main parts:

To go with these, I have a set of cables:

USB-C is pretty adaptable, as long as you have the right bits and pieces...

  • A set of four short USB-C cables from CableCreation that support data and up to 60 watts of power.
  • A couple of adapters that turn any USB-C connector into a Micro-USB or Lightning connector.
  • Two 2-meter USB-C cables that support up to 100 watts of power. (One of them is the magsafe cable that comes with my laptop.)

Here’s what makes this setup so good:

The HyperJuice battery can charge three other USB-C devices while it is recharging.

Charging three things and the battery! Noice!

For example, after a day of working in some remote place and draining the battery, you can plug the battery into the Anker 737 and it will charge at 100 watts. Then at the same time you can plug in three other things, like your phone and GPS and headphones, and charge those as you go. These gadgets will charge at full speed and the battery will charge as well.

So all you need is one power socket. That’s important when you’re traveling in weird places, and power sockets are often in high demand. Here’s another thing you can do:

If you're just using one port, it will deliver 100 watts. Both ports at once: 60 watts each.

In this configuration, both items charge at 60 watts.

Plug the other long cable into the Anker 737, and the battery park charges at 60 watts, while your laptop also charges at 60 watts. (Yes, this one adapter will put out 120 watts for you. I’ve done this a hundred times.) Now if you want, you can plug more things into your laptop and charge those as well. So with one socket you can charge your battery, your laptop, and six other devices, all at once. No swapping required.

My typical hotel room charging list is:

With this setup, I can plug all these in and just walk away.

Another thing you can do with this adapter is, if someone else is claiming the only power socket in a place, you can offer to use yours instead. Since it has two USB-C outlets, you both can plug into it and share the socket at full power.

I’ve done exactly that in a few very crowded cafes.

Also, I only ever need one international adapter.

And, in situations where the power socket is very far away, I can use the battery between the two cables, making one 4-meter (13-foot) long cable.

Just a little bit of velcro in the corner.

It's decently small, but the real advantage is, it's extremely light.

By putting velcro patches on my small items (external drive, media card reader) I can use the short cables to stick them on the back of my laptop while they’re connected, keeping them nicely out of the way.

Just long enough to get the drive out of the way.

Stays on pretty well!

Altogether it’s a great setup. It’s extremely flexible, charges lots of things, provides a ton of backup power (good for using the laptop all day at a campsite), and in situations where time is limited, I can store up the maximum amount of energy by charging the battery at 100 watts … or the laptop and battery at a combined 120 watts.

Valoria parts list

Valoria has evolved a bit since I first built her. This list is up-to-date as of January 2023.

PartCostLast Seen At
aMTBer 20T Chainring 64 BCD$‎40Amazon
Avid BB7 160mm MTB rotor disc brake #1$‎81Modern Bike
Avid BB7 160mm MTB rotor disc brake #2$‎81Modern Bike
Avid Speed Dial 7 Bicycle Brake Lever Set$‎28Modern Bike
Bacchetta 20” Carbon Johnson Fork$‎300Bacchetta
Bacchetta Compression Plug for Carbon Fork$12Bacchetta
Orbit X Crown Race 1-1/8in$7Bacchetta
Bacchetta Giro A20 frame kit, large, with Bella riser, 13” lower seat stays, 21” wide handlebar$‎800Zach Kaplan
Bacchetta Giro A20 rear wheel without tire, tube, or cassette$‎120Zach Kaplan
Bacchetta Recurve seat$‎275Zach Kaplan
Aluminum Handlebar Cup Holder$14Amazon
Busch & Müller 95cm headlight cable & 210cm taillight cable, with connectors on both ends$‎10Zach Kaplan
Busch & Müller Lumotec IQ-X Dynamo Headlight with coax connector$‎223Perennial Cycle
Busch & Müller TopLight Line Plus taillight$‎44Zach Kaplan
Busch & Müller Cycle Star Mirror 903 long curved Rod$‎37Amazon
Igaro D2 Pro R3 Dynamo USB Power Converter with coax connector$218Perennial Cycle
FSA Orbit MX 1-1/8″ headset$78Bacchetta
Jagwire Mountain Brake Inner Wire Slick Stainless, 1.5X2750mm #1$‎12Amazon
Jagwire Mountain Brake Inner Wire Slick Stainless, 1.5X2750mm #2$‎12Amazon
KMC 9-speed chain$‎65Zach Kaplan
Microshift FD-R439 Front Derailleur$‎26Modern Bike
Pinhead Bicycle Locking Skewer Set$‎43Amazon
Pitstop SS Tandem Shift Cable (3100mm) #1$‎9Amazon
Pitstop SS Tandem Shift Cable (3100mm) #2$9Amazon
Quad Lock Cycling – Handlebar/Stem Mount #1$‎30Quad Lock
Quad Lock Cycling – Handlebar/Stem Mount #2$‎30Quad Lock
Quad Lock Cycling – Handlebar/Stem Mount #3$30Quad Lock
Schwalbe Marathon Mondial Touring Bike Tire, 26 x 2.0in$‎90Schwalbe
Schwalbe Marathon Plus HS Wire Tire, 20 x 1.75in$‎50Schwalbe
Shimano Alivio FC-M4050 Crankset 170mm 40X30X22t$‎66eBay
Shimano HG400 CS-HG400-9 9 Speed Cassette, 12-36$‎41Modern Bike
Shimano PD-EH500 SPD & Flat Dual Sided Bike Pedals$‎77Amazon
SONdelux Disc hub, 32-hole$‎309Zach Kaplan
SON Junction Box with SON Hub Adapter$70Perennial Cycle
Splined to 6-bolt adaptor for SONdelux$‎25Zach Kaplan
SRAM X.7 9-Speed Rear Derailleur, Long Cage$‎59Walmart
SRAM X0 Bicycle Twist Shifter Set (9-Speed)$‎73Amazon
TerraCycle GlideFlex Stem, 1-1/8″ lower clamp, 1-1/8″ upper mast$‎135Zach Kaplan
TerraCycle Multi-Purpose Accessory Mount, 75 mm x 100 mm arms, 1-1/8″ clamps$‎38Zach Kaplan
TerraCycle Tab Mount For Euro Style Lights$‎9Zach Kaplan
TerraCycle Fastback NorBack Frame Pack$‎105TerraCycle
Tonyon four-segment anti-shear bicycle lock TY3869-20$‎30AliExpress
Topeak Road Morph G Bike Pump with Gauge$‎28Amazon
Topeak Fuel Tank with Charging Cable Hole (Large)$40Amazon
TRP Front Flat Mount Fork to Post Mount Caliper Adaptor for 160mm Rotors with two 17mm Bolts$12Modern Bike
Tubus Cargo Evo Classic Rear Bicycle Rack$‎104Amazon
Velocity Aeroheat/Dyad 20 x 1.5″ 32 Hole BMX Rim$‎73Modern Bike

Comparison of Ortlieb bags

The images here are scaled to show the relative size of the bags.

Sport-Roller Classic
25 liters
roll-top
Sport-Roller Plus
25 liters
roll-top
Gravel-Pack
25 liters
roll-top
Sport-Packer Classic
30 liters
lid
Sport-Packer Plus
30 liters
lid
Back-Roller Pro Classic
70 liters
roll-top
Back-Roller Classic
40 liters
roll-top
Back-Roller Plus
40 liters
roll-top
Back-Roller City
40 liters
roll-top
Bike-Packer Classic
40 liters
lid
Bike-Packer Plus
42 liters
lid
Back-Roller Pro Plus
70 liters
roll-top