I carry a few pens with me - different color ink for different days of the week - so I can see how much I wrote in a single day. Started doing it after I read about Neil Gaiman's writing habits.
bitcoin proof of work is not as impacted by quantum computers - grover's algorithm provides a quadratic speedup for unstructured search - so SHA256 ends up with 128 bits of security for pre-image resistance. BTC can easily move to SHA512.
symmetric ciphers would have similar properties (AES, CHACHA20). Asymmetric encryption atm would use ECDH (which breaks) to generate a key for use with symmetric ciphers - Kyber provides a PQC KEM for this.
So, the situation isn't as bad. We're well positioned in cryptography to handle a PQC world.
- Anonymous credentials (this is what Signal does) - maintain an encrypted blob representing a group chat (members list etc all stay encrypted and Signal cannot tell who is in a group chat). A normal client can provide a zkp that they are in a particular group chat (the decrypted blob contains this member for example) and have a message delivered to other group members. Both the client and the recipient can keep their identities encrypted and the zkp proves the membership of the plaintext client / recipient.
- Encrypt some metadata of a message sent to someone. You can build a ZKP that the plaintext behind the encrypted metadata satsifies some properties such as recipient is not in some blacklist (and so on). All this can be done by maintaining privacy because the metadata stays encrypted.
- Given an electronic medical record, you can prove that the record contains a vaccine without sending the record over the wire to some other party.
Lots more such ideas exist.
zkVMs are a good place to start playing with things.
He was an towering intellect and positively influenced any situation he was placed in - the odometer, the mapping of the gulf stream, counterfeit detection for paper bills are so far removed from his background in publishing, and later role as statesman - I can't think of anyone since who had such an striking impact; certainly no contemporary leaders who will be remembered so fondly 200 years from today.
would love to see some pics of your work. Since you seem to know about Japanese craft techniques - do you know what sort of adhesive is used in Japanese gold leaf application? I am not able to use bole or animal hide glue due (vegan) but was curious if the Japanese have some rice-paste based method.
Thank you very much for your work Rich. I've seen your talks in person a couple of times and really admired the immense clarity of thought in every one of your ideas. And thank you very much for giving us Clojure - lots of fun memories.
LV is a very solid brand. I used them a lot but once I discovered Japanese tools I did a total switch and won't look back. Lots of Japanese stuff is entering the US market and the tools are very serviceable - I can easily take apart and sharpen, clean, tweak the planes for example.
I love clojure but do a lot more Rust now. I feel the language leadership is from the information-systems universe - thinking about databases, schemas that sort of thing - and I feel the language and tooling are very good for those sorts of things but there is really no energy or interest in expanding beyond those use cases so it feels like things are settled now and wont change.
Rust OTOH feels highly malleable and the tooling is always improving. The community seems to care about a good user experience across several domains - web, systems, networking, cryptography, desktop gui, and over the last 2 - 3 things are really coming together as coherent whole.
Besides day job (which I am excited about), I've been working on honing my zen buddhist woodworking skills this past year and taking on more complex projects.
the pki does make life easy - ethereum address as a global unique id + seed phrase around for recovery + integrate this thing with the rest of the ethereum ecosystem (e.g. other apps can require ownership of an account on this app by looking for a signed message on chain)
The bit about turning a dockerfile into a rootfs. A docker image is just a tarball of tarballs. We do something like this:
- you can dump the image using `docker save <name>`.
- you can then get a list of the tarballs in this image by extracting this tarball and reading the file `manifest.json`; `Config` -> `Layers` will give you a list of tarballs (see undocker for how to do this: https://github.com/larsks/undocker)
- Untar these in a directory and use linux tools to convert this dir to a rootfs.