Skip to content
Avatar

Sponsors

@magnuswatn
@MarkusZoppelt
@quartercastle

Sponsoring

@Homebrew
@richfelker
@alyssais
@dominikh
@pirate
@ncw
@zx2c4
@bitcynth
@mholt
@ziglang

Organizations

@ArchiveTeam @recursecenter @cryptography-training
Block or Report

Block or report FiloSottile

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Add an optional note:
Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
FiloSottile/README.md

I’m a cryptography engineer and open source maintainer, specializing in Go.

From 2018 to 2022, I worked on the Go team at Google, where I was in charge of the Go Security team. I implemented TLS 1.3 support in the Go standard library; co-designed the Go Checksum Database, a seamless solution for securing the Go software supply chain with transparency trees; and with my team was responsible for developing features such as native fuzzing and the Go Vulnerability Database, as well as handling vulnerability reports.

Before that, I was at Cloudflare, where I maintained the proprietary Go authoritative DNS server which powers 10% of the Internet, and led the DNSSEC and TLS 1.3 implementations.

Today, I maintain the cryptography packages that ship as part of the Go standard library (crypto/… and golang.org/x/crypto/…), including the TLS, SSH, and low-level implementations, such as elliptic curves, RSA, and ciphers. These packages are critical to virtually every Go application, securing HTTPS requests, implementing authentication, and providing encryption.

I also develop and maintain a set of cryptographic tools, including the file encryption tool age, the development certificate generator mkcert, and the SSH agent yubikey-agent.

Professional maintenance

Open-source software, despite being shared critical infrastructure, is maintained by volunteers or by full-time company employees. Neither is a sustainable model, the former for obvious reasons, and the latter because available resources at a single company do not scale with the size and success of the project, leading whole teams to burnout and churn.

I am testing a new model: professional independent full-time maintainers, who bill companies as contractors, providing ongoing maintenance and access to their expertise and to the project’s decision-making process.

I envision open source maintainer as a first-class profession, with independent maintainers organized in personal practices or small and medium-sized firms, earning compensation comparable to what senior software engineers are paid. I want maintainers to be empowered to keep doing what they do best, and be available as a resource to the companies that fund them.

I believe the best way to precipitate this change is to prove the model myself, and I plan to build the missing tools (legal contracts, best practices, professional associations…) and grow the model by example and by employing others.

None of this, both my open source work and establishing this model, would be possible without my clients, who've been forward-thinking enough to invest in something new.

logos

Pinned

  1. mkcert Public

    A simple zero-config tool to make locally trusted development certificates with any names you'd like.

    Go 42.2k 2.2k

  2. age Public

    A simple, modern and secure encryption tool (and Go library) with small explicit keys, no config options, and UNIX-style composability.

    Go 13.9k 440

  3. Heartbleed Public

    A checker (site and tool) for CVE-2014-0160

    Go 2.3k 489

  4. A ssh server that knows who you are. $ ssh whoami.filippo.io

    Go 2.1k 115

  5. filippo.io/edwards25519 — A safer, faster, and more powerful low-level edwards25519 Go implementation.

    Go 110 26

  6. yubikey-agent is a seamless ssh-agent for YubiKeys.

    Go 2.4k 119

422 contributions in the last year

Contribution Graph
Day of Week August September October November December January February March April May June July August
Sunday 1 contribution on Sunday, August 21, 2022 No contributions on Sunday, August 28, 2022 No contributions on Sunday, September 4, 2022 3 contributions on Sunday, September 11, 2022 1 contribution on Sunday, September 18, 2022 No contributions on Sunday, September 25, 2022 No contributions on Sunday, October 2, 2022 No contributions on Sunday, October 9, 2022 No contributions on Sunday, October 16, 2022 10 contributions on Sunday, October 23, 2022 No contributions on Sunday, October 30, 2022 No contributions on Sunday, November 6, 2022 No contributions on Sunday, November 13, 2022 No contributions on Sunday, November 20, 2022 5 contributions on Sunday, November 27, 2022 3 contributions on Sunday, December 4, 2022 1 contribution on Sunday, December 11, 2022 No contributions on Sunday, December 18, 2022 No contributions on Sunday, December 25, 2022 2 contributions on Sunday, January 1, 2023 3 contributions on Sunday, January 8, 2023 No contributions on Sunday, January 15, 2023 No contributions on Sunday, January 22, 2023 No contributions on Sunday, January 29, 2023 No contributions on Sunday, February 5, 2023 No contributions on Sunday, February 12, 2023 No contributions on Sunday, February 19, 2023 No contributions on Sunday, February 26, 2023 No contributions on Sunday, March 5, 2023 No contributions on Sunday, March 12, 2023 No contributions on Sunday, March 19, 2023 No contributions on Sunday, March 26, 2023 No contributions on Sunday, April 2, 2023 No contributions on Sunday, April 9, 2023 1 contribution on Sunday, April 16, 2023 1 contribution on Sunday, April 23, 2023 No contributions on Sunday, April 30, 2023 No contributions on Sunday, May 7, 2023 4 contributions on Sunday, May 14, 2023 4 contributions on Sunday, May 21, 2023 No contributions on Sunday, May 28, 2023 No contributions on Sunday, June 4, 2023 No contributions on Sunday, June 11, 2023 No contributions on Sunday, June 18, 2023 No contributions on Sunday, June 25, 2023 No contributions on Sunday, July 2, 2023 No contributions on Sunday, July 9, 2023 No contributions on Sunday, July 16, 2023 13 contributions on Sunday, July 23, 2023 No contributions on Sunday, July 30, 2023 6 contributions on Sunday, August 6, 2023 No contributions on Sunday, August 13, 2023 No contributions on Sunday, August 20, 2023
Monday No contributions on Monday, August 22, 2022 No contributions on Monday, August 29, 2022 No contributions on Monday, September 5, 2022 1 contribution on Monday, September 12, 2022 2 contributions on Monday, September 19, 2022 1 contribution on Monday, September 26, 2022 No contributions on Monday, October 3, 2022 1 contribution on Monday, October 10, 2022 1 contribution on Monday, October 17, 2022 2 contributions on Monday, October 24, 2022 No contributions on Monday, October 31, 2022 7 contributions on Monday, November 7, 2022 8 contributions on Monday, November 14, 2022 2 contributions on Monday, November 21, 2022 No contributions on Monday, November 28, 2022 1 contribution on Monday, December 5, 2022 No contributions on Monday, December 12, 2022 2 contributions on Monday, December 19, 2022 10 contributions on Monday, December 26, 2022 1 contribution on Monday, January 2, 2023 3 contributions on Monday, January 9, 2023 No contributions on Monday, January 16, 2023 No contributions on Monday, January 23, 2023 No contributions on Monday, January 30, 2023 No contributions on Monday, February 6, 2023 7 contributions on Monday, February 13, 2023 No contributions on Monday, February 20, 2023 No contributions on Monday, February 27, 2023 9 contributions on Monday, March 6, 2023 No contributions on Monday, March 13, 2023 No contributions on Monday, March 20, 2023 No contributions on Monday, March 27, 2023 3 contributions on Monday, April 3, 2023 No contributions on Monday, April 10, 2023 1 contribution on Monday, April 17, 2023 No contributions on Monday, April 24, 2023 No contributions on Monday, May 1, 2023 No contributions on Monday, May 8, 2023 No contributions on Monday, May 15, 2023 6 contributions on Monday, May 22, 2023 No contributions on Monday, May 29, 2023 No contributions on Monday, June 5, 2023 6 contributions on Monday, June 12, 2023 No contributions on Monday, June 19, 2023 No contributions on Monday, June 26, 2023 No contributions on Monday, July 3, 2023 No contributions on Monday, July 10, 2023 No contributions on Monday, July 17, 2023 No contributions on Monday, July 24, 2023 5 contributions on Monday, July 31, 2023 10 contributions on Monday, August 7, 2023 No contributions on Monday, August 14, 2023
Tuesday No contributions on Tuesday, August 23, 2022 1 contribution on Tuesday, August 30, 2022 No contributions on Tuesday, September 6, 2022 2 contributions on Tuesday, September 13, 2022 No contributions on Tuesday, September 20, 2022 1 contribution on Tuesday, September 27, 2022 1 contribution on Tuesday, October 4, 2022 No contributions on Tuesday, October 11, 2022 No contributions on Tuesday, October 18, 2022 No contributions on Tuesday, October 25, 2022 1 contribution on Tuesday, November 1, 2022 No contributions on Tuesday, November 8, 2022 8 contributions on Tuesday, November 15, 2022 No contributions on Tuesday, November 22, 2022 No contributions on Tuesday, November 29, 2022 No contributions on Tuesday, December 6, 2022 No contributions on Tuesday, December 13, 2022 1 contribution on Tuesday, December 20, 2022 1 contribution on Tuesday, December 27, 2022 4 contributions on Tuesday, January 3, 2023 3 contributions on Tuesday, January 10, 2023 No contributions on Tuesday, January 17, 2023 No contributions on Tuesday, January 24, 2023 No contributions on Tuesday, January 31, 2023 2 contributions on Tuesday, February 7, 2023 No contributions on Tuesday, February 14, 2023 No contributions on Tuesday, February 21, 2023 No contributions on Tuesday, February 28, 2023 No contributions on Tuesday, March 7, 2023 No contributions on Tuesday, March 14, 2023 No contributions on Tuesday, March 21, 2023 No contributions on Tuesday, March 28, 2023 No contributions on Tuesday, April 4, 2023 1 contribution on Tuesday, April 11, 2023 No contributions on Tuesday, April 18, 2023 No contributions on Tuesday, April 25, 2023 2 contributions on Tuesday, May 2, 2023 2 contributions on Tuesday, May 9, 2023 5 contributions on Tuesday, May 16, 2023 3 contributions on Tuesday, May 23, 2023 No contributions on Tuesday, May 30, 2023 3 contributions on Tuesday, June 6, 2023 5 contributions on Tuesday, June 13, 2023 No contributions on Tuesday, June 20, 2023 No contributions on Tuesday, June 27, 2023 No contributions on Tuesday, July 4, 2023 No contributions on Tuesday, July 11, 2023 No contributions on Tuesday, July 18, 2023 No contributions on Tuesday, July 25, 2023 No contributions on Tuesday, August 1, 2023 No contributions on Tuesday, August 8, 2023 1 contribution on Tuesday, August 15, 2023
Wednesday 3 contributions on Wednesday, August 24, 2022 No contributions on Wednesday, August 31, 2022 1 contribution on Wednesday, September 7, 2022 1 contribution on Wednesday, September 14, 2022 No contributions on Wednesday, September 21, 2022 No contributions on Wednesday, September 28, 2022 No contributions on Wednesday, October 5, 2022 No contributions on Wednesday, October 12, 2022 1 contribution on Wednesday, October 19, 2022 1 contribution on Wednesday, October 26, 2022 No contributions on Wednesday, November 2, 2022 1 contribution on Wednesday, November 9, 2022 2 contributions on Wednesday, November 16, 2022 No contributions on Wednesday, November 23, 2022 No contributions on Wednesday, November 30, 2022 3 contributions on Wednesday, December 7, 2022 No contributions on Wednesday, December 14, 2022 No contributions on Wednesday, December 21, 2022 6 contributions on Wednesday, December 28, 2022 2 contributions on Wednesday, January 4, 2023 No contributions on Wednesday, January 11, 2023 1 contribution on Wednesday, January 18, 2023 No contributions on Wednesday, January 25, 2023 No contributions on Wednesday, February 1, 2023 No contributions on Wednesday, February 8, 2023 1 contribution on Wednesday, February 15, 2023 3 contributions on Wednesday, February 22, 2023 1 contribution on Wednesday, March 1, 2023 3 contributions on Wednesday, March 8, 2023 No contributions on Wednesday, March 15, 2023 No contributions on Wednesday, March 22, 2023 1 contribution on Wednesday, March 29, 2023 No contributions on Wednesday, April 5, 2023 1 contribution on Wednesday, April 12, 2023 1 contribution on Wednesday, April 19, 2023 3 contributions on Wednesday, April 26, 2023 No contributions on Wednesday, May 3, 2023 2 contributions on Wednesday, May 10, 2023 6 contributions on Wednesday, May 17, 2023 8 contributions on Wednesday, May 24, 2023 No contributions on Wednesday, May 31, 2023 2 contributions on Wednesday, June 7, 2023 No contributions on Wednesday, June 14, 2023 No contributions on Wednesday, June 21, 2023 No contributions on Wednesday, June 28, 2023 No contributions on Wednesday, July 5, 2023 No contributions on Wednesday, July 12, 2023 No contributions on Wednesday, July 19, 2023 No contributions on Wednesday, July 26, 2023 No contributions on Wednesday, August 2, 2023 No contributions on Wednesday, August 9, 2023 1 contribution on Wednesday, August 16, 2023
Thursday 3 contributions on Thursday, August 25, 2022 No contributions on Thursday, September 1, 2022 No contributions on Thursday, September 8, 2022 No contributions on Thursday, September 15, 2022 No contributions on Thursday, September 22, 2022 No contributions on Thursday, September 29, 2022 No contributions on Thursday, October 6, 2022 No contributions on Thursday, October 13, 2022 No contributions on Thursday, October 20, 2022 7 contributions on Thursday, October 27, 2022 3 contributions on Thursday, November 3, 2022 No contributions on Thursday, November 10, 2022 2 contributions on Thursday, November 17, 2022 No contributions on Thursday, November 24, 2022 1 contribution on Thursday, December 1, 2022 1 contribution on Thursday, December 8, 2022 No contributions on Thursday, December 15, 2022 No contributions on Thursday, December 22, 2022 7 contributions on Thursday, December 29, 2022 No contributions on Thursday, January 5, 2023 16 contributions on Thursday, January 12, 2023 No contributions on Thursday, January 19, 2023 No contributions on Thursday, January 26, 2023 6 contributions on Thursday, February 2, 2023 1 contribution on Thursday, February 9, 2023 No contributions on Thursday, February 16, 2023 No contributions on Thursday, February 23, 2023 No contributions on Thursday, March 2, 2023 1 contribution on Thursday, March 9, 2023 1 contribution on Thursday, March 16, 2023 No contributions on Thursday, March 23, 2023 No contributions on Thursday, March 30, 2023 1 contribution on Thursday, April 6, 2023 1 contribution on Thursday, April 13, 2023 No contributions on Thursday, April 20, 2023 1 contribution on Thursday, April 27, 2023 No contributions on Thursday, May 4, 2023 No contributions on Thursday, May 11, 2023 No contributions on Thursday, May 18, 2023 No contributions on Thursday, May 25, 2023 No contributions on Thursday, June 1, 2023 2 contributions on Thursday, June 8, 2023 4 contributions on Thursday, June 15, 2023 2 contributions on Thursday, June 22, 2023 No contributions on Thursday, June 29, 2023 No contributions on Thursday, July 6, 2023 No contributions on Thursday, July 13, 2023 1 contribution on Thursday, July 20, 2023 No contributions on Thursday, July 27, 2023 No contributions on Thursday, August 3, 2023 No contributions on Thursday, August 10, 2023 No contributions on Thursday, August 17, 2023
Friday No contributions on Friday, August 26, 2022 No contributions on Friday, September 2, 2022 No contributions on Friday, September 9, 2022 No contributions on Friday, September 16, 2022 No contributions on Friday, September 23, 2022 No contributions on Friday, September 30, 2022 No contributions on Friday, October 7, 2022 No contributions on Friday, October 14, 2022 No contributions on Friday, October 21, 2022 11 contributions on Friday, October 28, 2022 No contributions on Friday, November 4, 2022 No contributions on Friday, November 11, 2022 5 contributions on Friday, November 18, 2022 No contributions on Friday, November 25, 2022 3 contributions on Friday, December 2, 2022 No contributions on Friday, December 9, 2022 No contributions on Friday, December 16, 2022 1 contribution on Friday, December 23, 2022 No contributions on Friday, December 30, 2022 No contributions on Friday, January 6, 2023 No contributions on Friday, January 13, 2023 1 contribution on Friday, January 20, 2023 No contributions on Friday, January 27, 2023 3 contributions on Friday, February 3, 2023 No contributions on Friday, February 10, 2023 1 contribution on Friday, February 17, 2023 1 contribution on Friday, February 24, 2023 No contributions on Friday, March 3, 2023 No contributions on Friday, March 10, 2023 No contributions on Friday, March 17, 2023 No contributions on Friday, March 24, 2023 No contributions on Friday, March 31, 2023 No contributions on Friday, April 7, 2023 No contributions on Friday, April 14, 2023 No contributions on Friday, April 21, 2023 1 contribution on Friday, April 28, 2023 8 contributions on Friday, May 5, 2023 No contributions on Friday, May 12, 2023 2 contributions on Friday, May 19, 2023 No contributions on Friday, May 26, 2023 No contributions on Friday, June 2, 2023 1 contribution on Friday, June 9, 2023 No contributions on Friday, June 16, 2023 No contributions on Friday, June 23, 2023 No contributions on Friday, June 30, 2023 No contributions on Friday, July 7, 2023 1 contribution on Friday, July 14, 2023 No contributions on Friday, July 21, 2023 2 contributions on Friday, July 28, 2023 1 contribution on Friday, August 4, 2023 1 contribution on Friday, August 11, 2023 No contributions on Friday, August 18, 2023
Saturday No contributions on Saturday, August 27, 2022 No contributions on Saturday, September 3, 2022 No contributions on Saturday, September 10, 2022 No contributions on Saturday, September 17, 2022 No contributions on Saturday, September 24, 2022 No contributions on Saturday, October 1, 2022 No contributions on Saturday, October 8, 2022 2 contributions on Saturday, October 15, 2022 No contributions on Saturday, October 22, 2022 No contributions on Saturday, October 29, 2022 1 contribution on Saturday, November 5, 2022 3 contributions on Saturday, November 12, 2022 No contributions on Saturday, November 19, 2022 1 contribution on Saturday, November 26, 2022 No contributions on Saturday, December 3, 2022 3 contributions on Saturday, December 10, 2022 1 contribution on Saturday, December 17, 2022 No contributions on Saturday, December 24, 2022 4 contributions on Saturday, December 31, 2022 No contributions on Saturday, January 7, 2023 No contributions on Saturday, January 14, 2023 No contributions on Saturday, January 21, 2023 No contributions on Saturday, January 28, 2023 No contributions on Saturday, February 4, 2023 No contributions on Saturday, February 11, 2023 No contributions on Saturday, February 18, 2023 2 contributions on Saturday, February 25, 2023 No contributions on Saturday, March 4, 2023 No contributions on Saturday, March 11, 2023 2 contributions on Saturday, March 18, 2023 No contributions on Saturday, March 25, 2023 7 contributions on Saturday, April 1, 2023 No contributions on Saturday, April 8, 2023 No contributions on Saturday, April 15, 2023 27 contributions on Saturday, April 22, 2023 No contributions on Saturday, April 29, 2023 No contributions on Saturday, May 6, 2023 No contributions on Saturday, May 13, 2023 2 contributions on Saturday, May 20, 2023 No contributions on Saturday, May 27, 2023 1 contribution on Saturday, June 3, 2023 No contributions on Saturday, June 10, 2023 No contributions on Saturday, June 17, 2023 No contributions on Saturday, June 24, 2023 No contributions on Saturday, July 1, 2023 1 contribution on Saturday, July 8, 2023 No contributions on Saturday, July 15, 2023 3 contributions on Saturday, July 22, 2023 5 contributions on Saturday, July 29, 2023 3 contributions on Saturday, August 5, 2023 No contributions on Saturday, August 12, 2023 No contributions on Saturday, August 19, 2023

Contribution activity

August 2023

Reviewed 1 pull request in 1 repository
FiloSottile/age.ts 1 pull request

Created an issue in golang/go that received 6 comments

os: (*Cmd).Wait hangs on macOS when setctty is used after commit b15c399a3

A test that involves setting the command's TTY with the code below, and then calling (*Cmd).Wait, started timing out on macOS in Go 1.20. func SetC…

6 comments
Opened 1 other issue in 1 repository
2 contributions in private repositories Aug 15 – Aug 16

Seeing something unexpected? Take a look at the GitHub profile guide.