The Update Frameworkって何?
自己更新型のソフトウェアを作りたいと思い調べていたところ、The Update Frameworkという単語を見ました。知らなかったので調べておきました。ここには私の理解を説明しておきます。
TUFって何?
The Update Frameworkは、セキュアなソフトウェアを更新するシステムのためのフレームワークです。略してTUFというようです。
https://theupdateframework.io/
大まかにサプライチェーン攻撃からの保護を目的としており、鍵やサーバーが侵害された場合も回復できるフレームワークらしいです。また、鍵が漏れても、それだけでは突破されない仕組みになっていることが一つの特徴、とのこと。
どこが出発?
米国の国立科学財団の助成金を使った研究の成果であり、Linux Foundationが管理しているとの情報があります。また、Wikipediaを見る限り、2009年ごろにワシントン大学を出発として研究され、発展していったようです。印象的なのは、IBM、Microsoft、Google、Amazon、Docker、Cloudflareなどが使用しているという情報があったことです。
情報の出展はWikipediaです。
https://en.wikipedia.org/wiki/The_Update_Framework
構成要素や仕様など
TUF は仕様として定義されていて、それが各言語で実装されているようです。そして、Python で実装した参照実装が python-tufとのとこ。
https://github.com/theupdateframework/python-tuf
さらに、それを使いやすくしたのが、tufup というライブラリのようです。
https://pypi.org/project/tufup/
私は現時点で使ったことがありませんが、今後、実際に検証したり中身を確認していきたいと思います。