> ## Content Index
> Fetch the complete content index at: https://www.sakashita.page/llms.txt
> Use this file to discover other available public pages before exploring further.

# Rust libfprint?
- URL: https://www.sakashita.page/rust-libfprint/
- Published: 2026-07-18T23:00:00.000Z
- Updated: 2026-07-18T22:59:59.000Z
- Author: Sakashita Yasunobu
- Tags: 技術

指紋認証は便利で快適です。

iPhoneはFaceIDを使うので別次元の快適さですが、PCでは指紋認証が現役です。

Windows/Macはいざ知らずいざ知らず、Linuxで指紋認証デバイスを使おうと思ってもPlug-and-Playというわけにはいきません。

それどころか、Linuxでの指紋認証サポートは限定的です。

Linuxでは[fprint project](https://fprint.freedesktop.org/)が主体となって（事実上のデファクトとして）指紋認証デバイスのサポートを行っていますが、指紋認証デバイスの仕様をメーカーが公開していない以上、指紋認証デバイスAを持つユーザーが自分でドライバAを書くほかありません。

メンテナーによる骨の折れる作業と血のにじむ努力によって多数のデバイスがLinuxでサクッと動くようになり、Linux Mintなどの一部ディストロではGUIから気楽に使えるようになったので、対応デバイスをお持ちの方にとってはとてもいい時代になりました。

しかし、まあ、内部実装が歴史的につらい事情などなど、現代的に作り直すことで歴史から解き放ちつつも、共存の道を模索するプロジェクトとして[fprintd](https://github.com/P4suta/fprintd)というプロジェクトを私が立ち上げました。

[GitHub - P4suta/fprintd: A GObject-free, pure-Rust fingerprint stack that speaks fprintd’s D-Bus contract (net.reactivated.Fprint): daemon, NBIS MINDTCT/BOZORTH3 ports, and an embeddable core.A GObject-free, pure-Rust fingerprint stack that speaks fprintd’s D-Bus contract (net.reactivated.Fprint): daemon, NBIS MINDTCT/BOZORTH3 ports, and an embeddable core. - P4suta/fprintd![](https://storage.ghost.io/c/94/1f/941f9972-ad5c-4231-a438-ca329c85433f/content/images/icon/favicon-bc98c722-a5b7-4a8e-9684-decc60fb9949.svg)GitHubP4suta![](https://storage.ghost.io/c/94/1f/941f9972-ad5c-4231-a438-ca329c85433f/content/images/thumbnail/fprintd-7fd6807c-beb0-458d-be6b-aa135a2ecbe1)](https://github.com/P4suta/fprintd)

小難しくいっていますが、要するにRustで実装したよ、ということです。

## MINDTCT

指紋画像から特徴量を抽出するのに用いられるアルゴリズムの一つにNISTが開発したMINDTCTが用いられます。

本プロジェクトではMINDTCTを[Rustで実装し、公開しています](https://github.com/P4suta/fprintd/tree/main/crates/fprint-mindtct)。

## Bozorth3

指紋照合に広く用いられるアルゴリズムのひとつにNISTが開発したBozorth3が用いられます。

本プロジェクトではBozorth3を[Rustで実装し、公開しています](https://github.com/P4suta/fprintd/tree/main/crates/fprint-bozorth3)。

## プロジェクトの今後

結局のところ、メーカーが仕様を公開しない限り、我々はいつまでもリバースエンジニアリングの沼のままです。

私自身このプロジェクトのためにこの世のすべての指紋認証デバイスを入手し、対応するドライバを書き上げ……といったことはできませんが、逆に皆さんが「私の指紋認証デバイスが動いたらうれしいな。」ということでしたら、各種準備は整えておりますのでお手元のAI Agentを使って私のプロジェクトの中にドライバを書けばいいかと思います。もし、ほかに世界の誰か同じデバイスを使っている人のためになるかも、と思ってくださる方はPull Requestなどで協力していただけると幸いです。