**Show HN:Mini‑Diarium ― 暗号化されたローカル・クロスプラットフォームジャーナリングアプリ**

2026/02/19 20:54

**Show HN:Mini‑Diarium ― 暗号化されたローカル・クロスプラットフォームジャーナリングアプリ**

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

Mini Diarium は、Tauri 2、SolidJS、および Rust で構築されたプライバシー優先のローカル専用ジャーナリングアプリです。インターネットに接続せず、データをオフデバイスで保存しません。

すべての日記エントリは AES‑256‑GCM を使用して暗号化され、ランダムなマスターキーが各認証方法によってラップされています:
パスワード – Argon2 KDF(メモリハードハッシュ)。
X25519 プライベート・キー ファイル – ECIES(ECDH + HKDF‑SHA256 + AES‑GCM);64文字の16進数

.key
ファイルは SQLite データベースに入ることはありません。

アプリはデバイスごとに複数のキー スロット、リッチテキストエディタ、カレンダー ナビゲーション、およびアンロック時に自動バックアップ(ローテーション付き)をサポートします。インポート/エクスポート機能は Mini Diary JSON、Day One JSON/TXT、jrnl JSON への対応と JSON/Markdown 出力が可能で、テーマも付属しています。

キーボードショートカット(Ctrl / ⌘ 組み合わせ)はナビゲーション、設定、統計情報、インポート/エクスポート、および日付ジャンプを網羅しますが、現在の既知の問題セクションでいくつかは動作していません。

クロスプラットフォームリリースは Windows(.msi / .exe)、macOS(.dmg)および Linux(.AppImage または .deb)用に提供されます。インストール時の注意点として SmartScreen、Gatekeeper、およびチェックサム検証があります。ビルド成果物は

src-tauri/target/release/bundle/
に配置されます。ソースからビルドするには Rust 1.75+、Bun 1.x、および Tauri v2 の依存関係が必要です。

このプロジェクトはオープンソースで、貢献ガイドライン、リリースノート、および SECURITY.md ファイルが明確に記載されています。パスワード スロットとすべてのキー ファイルを紛失した場合には回復経路がなく、コンテンツは不可逆的に失われます。このアーキテクチャは、他の生産性ツールが完全にローカルでプライバシー中心設計を採用するインスピレーションになる可能性があります。

本文

Mini Diarium
Webサイト: https://mini-diarium.com

暗号化されたローカル・クロスプラットフォームジャーナリングアプリです。Mini Diariumは、すべてのエントリをAES‑256‑GCMで暗号化し、インターネットに接続せず、データがマシンから離れないように設計されています。Tauri 2、SolidJS、およびRustで構築されました。


背景

Mini DiariumはSamuel Meuli の Mini Diary を精神的に継承したものです。元のツールはシンプルでプライベート、ジャーナルアプリとして理想的でしたが、数年メンテナンスされていないため依存関係が古くなっていました。フォークとモダナイズは非現実的だったので、Tauri 2、SolidJS、Rustでゼロから再構築し、同じコア哲学(暗号化、ローカルのみ、最小限)を保ちつつ、より軽量で高速、強力な暗号化と個人的タッチを追加しました。


主な機能

  • キー・ファイル認証 – パスワードの代わりまたは併用でX25519プライベートキー・ファイル(.key)からジャーナルを開錠。複数登録可能で、設定画面から管理できます。
  • AES‑256‑GCM暗号化 – すべてのエントリはランダムなマスタキーで暗号化。各認証方法はそのコピーを保持し、追加・削除はO(1)で再暗号化不要。
  • リッチテキストエディタ
  • カレンダーによるナビゲーション
  • インポート:Mini Diary JSON、Day One JSON/TXT、jrnl JSON(マージ競合解決付き)
  • エクスポート:JSONとMarkdown形式
  • テーマ設定
  • 自動バックアップ:ロック解除時にローテーション
  • 統計情報
  • 設定項目:週の最初の日、将来エントリ表示切替、タイトル可視性、スペルチェック、パスワード変更、認証方法管理
  • クロスプラットフォーム対応:Windows, macOS, Linux
  • ネットワークアクセスゼロ:テレメトリー・解析・アップデート確認なし

アーキテクチャ

ロック解除モデル

Mini Diariumは「マスタキーをラップ」方式を採用。

  1. ランダムマスタキーでAES‑256‑GCMによりすべてのエントリを暗号化。
  2. 認証方法がマスタキーをラップ。
  3. ロック解除時にメモリへアンラップし、セッション中のみ保持。

解除フロー

方法ステップ
パスワードArgon2鍵導出 → AES‑GCMでマスタキーをアンラップ
キー・ファイルX25519ペア → ECDH → HKDF → AES‑GCMでマスタキーをアンラップ

マスタキーは平文として保存されることはありません。

システムコンテキスト

すべてローカル実行。

  • UI は
    tauri::invoke()
    を通じて Rust バックエンドと通信。
  • バックエンドはローカル SQLite へ読み書き。
  • HTTP クライアント・バックグラウンド同期・テレメトリーなし。

レイヤード構造

Mini Diarium はレイヤー構成(詳細省略)を採用しています。


エントリの保存

  1. コンテンツはマスタキーで暗号化。
  2. 暗号化データを
    entries
    テーブルへ格納。

インストール

プラットフォーム別に最新リリースをダウンロードしてください:

プラットフォームフォーマット
Windows
.msi
または
.exe
(NSISインストーラー、管理者権限不要)
macOS
.dmg
Linux
.AppImage
または
.deb

インストール時の注意

  • Windows – Windows SmartScreen が警告を表示する場合があります。「詳細情報」をクリックし「実行」を選択。Mini Diarium はオープンソースで、ビルドはソースから再現可能です。
  • macOS – Gatekeeper が最初の起動時に「破損しているため開けません」とブロックする場合があります。アプリを Applications にドラッグした後、ターミナルで次を実行:
    xattr -cr "/Applications/Mini Diarium.app"
    
    その後通常通り起動(1 回限り)。
  • Linux – コード署名不要。インストール前に SHA256 チェックサムを
    checksums-linux.txt
    と照合してください:
    sha256sum Mini-Diarium-*.AppImage
    # checksums‑linux.txt と比較
    

クイックスタート

  1. Mini Diarium を起動。
  2. パスワードを作成(忘れた場合は回復不可)。
  3. 最初のエントリを書き込み、タイプするたびに自動保存されます。
  4. Ctrl+← / Ctrl+→
    で日付切替、またはカレンダーの日付クリックで移動。
  5. 作業終了時にジャーナルをロック。

キー・ファイル認証

Mini Diarium は X25519 プライベートキー・ファイル(

.key
)で開錠できます。パスワードの代わり、または併用して利用可能です。

キー・ファイルを使う理由

シナリオ効果
物理的第二要素
.key
を USB ドライブに保存し、ドライブ接続時のみ開錠。アプリ、電話、OTP コード不要。
パスワードマネージャ統合
.key
を安全な添付ファイルとして保管し、パスフレーズを覚えずに開錠。
複数機器各機器ごとにキー・ファイルを登録。個別に無効化でき、他の認証方法やエントリは影響なし。
共有アカウント(複数鍵)ラベル付きで複数キーを登録し、1 つだけ削除しても他は安全。

動作原理

各認証方法は、すべてのジャーナルエントリを暗号化するランダムマスタキーの暗号コピーを保持します。キー・ファイルの場合、X25519 ECIES を用いてラップします。

  1. マスタキー(256ビット)はジャーナル作成時に一度生成され、その後変更はありません。
  2. 設定で X25519 ペアを生成し、プライベートキーを
    .key
    ファイル(64 文字 hex)として保存。公開鍵のみデータベースに保持します。
  3. 公開鍵がマスタキーをラップ:一時的な DH キー交換で一次秘密を得て、HKDF‑SHA256 によりラッピングキーを導出し、AES‑256‑GCM でマスタキーを暗号化。
  4. 生成されたバイナリは
    auth_slots
    テーブルにパスワードスロットと共に保存されます。

開錠時には Mini Diarium が

.key
ファイルを読み取り、逆に ECDH を実行してマスタキーをアンラップ。パスワードは不要です。
プライベートキーはデータベースに入らず、公開鍵だけでは解読できません。不正または改ざんされたファイルは AES‑GCM の認証で拒否されます。

キー・ファイルの設定

  1. Preferences → Authentication Methods を開く。
  2. 「Generate Key File」をクリック。
  3. .key
    ファイルを USB ドライブ、パスワードマネージャの安全なメモ、暗号化フォルダなど自分だけがアクセスできる場所に保存。
  4. 現在のパスワードで登録を承認。
  5. スロットにラベル(例:「USB ドライブ」や「ノートPC」)を付ける。

以降、ログイン画面でキー・ファイルモードに切替えて

.key
ファイルを選択すれば開錠できます。削除したい場合は Preferences → Authentication Methods から該当スロットを消去(最後の認証方法は必ず残します)。

キー・ファイルはバックアップしてください。 SSH プライベートキーと同様に再生成できません。パスワードスロットとすべてのキー・ファイルが失われた場合、回復手段はありません。


キーボードショートカット

アクションショートカット
前日へ移動
Ctrl+←
次日へ移動
Ctrl+→
本日へ移動
Ctrl+T
日付指定
Ctrl+G
前月へ
Ctrl+Shift+←
次月へ
Ctrl+Shift+→
設定
Ctrl+,
統計
Ctrl+I
インポート
Ctrl+Shift+I
エクスポート
Ctrl+Shift+E

macOS では

Cmd
を使用。


ソースからビルド

必要条件:Rust 1.75+, Bun 1.x, Tauri v2 のシステム依存パッケージ。

git clone https://github.com/fjrevoredo/mini-diarium.git
cd mini-diarium
bun install
bun run tauri build

ビルド成果物は

src-tauri/target/release/bundle/
に生成されます。


技術スタック

  • Tauri 2 – デスクトップアプリフレームワーク(Rust バックエンド、Web フロントエンド)
  • SolidJS – リアクティブ UI フレームワーク
  • Rust – バックエンドロジック・暗号化・データベース
  • x25519-dalek
    ,
    hkdf
    ,
    sha2
    – キー・ファイル認証用 X25519 ECIES
  • SQLite – ローカル暗号化済みデータベース
  • TipTap – リッチテキストエディタ
  • UnoCSS – ユーティリティファースト CSS
  • Kobalte – アクセシブル UI プリミティブ

既知の問題

  • 多くのキーボードショートカットが動作していません(issue はリポジトリで追跡中)。

コントリビューション

CONTRIBUTING.md
を参照し、セットアップ手順・開発フロー・規約を確認してください。


リリース

メンテナー向け:

docs/RELEASING.md
にステップバイステップのリリース手順があります。


セキュリティ

SECURITY.md
でセキュリティモデルと脆弱性報告方法を説明しています。


クレジット

Francisco J. Revoredo が愛情込めて制作(Claude Code の少しの助けもあり)。

同じ日のほかのニュース

一覧に戻る →

2026/02/20 0:19

「Gemini 3.1 Pro」 (そのままカタカナ表記で)

## Japanese Translation: > **Gemini 3.1 Pro** – Google の最新 AI モデルで、複雑なタスクに対する高度な推論を目的として設計されています。 > > • **パフォーマンス:** ARC‑AGI‑2 ベンチマークで 77.1 % を達成し、Gemini 3 Pro のスコアの 2 倍以上となり、推論能力が大幅に向上したことを示しています。 > > • **新機能:** > – テキストプロンプトからウェブサイト用の高解像度アニメーション SVG を生成し、スケーリングもクリスプでファイルサイズも小さく保ちます。 > – 複雑な API をユーザーフレンドリーな設計に統合(例:国際宇宙ステーションのテレメトリを表示するライブ航空宇宙ダッシュボード)。 > – 手入力追跡と生成音声が連動した、操作可能なスターリング・マルミュレーションなどのインタラクティブ 3D エクスペリエンスをサポートします。 > – 文学的テーマを機能的コードに変換し、エミリー・ブルントー風のポートフォリオウェブサイトで実証されています。 > > • **入手可能性:** 現在はプレビュー版です。検証とさらなるエージェンシーワークフローの進化後に一般公開されます。 > – 開発者は Gemini API、Google AI Studio、Gemini CLI、Antigravity、Android Studio、および Vertex AI を通じてアクセスできます。 > – 企業は Vertex AI または Gemini Enterprise を介して統合できます。 > – Gemini アプリでは、Google AI Pro/Ultra プランのユーザーがより高い使用制限を受け取り、NotebookLM は Pro/Ultra ユーザーに限定されます。 > > • **開発背景:** 11 月の Gemini 3 Pro 発表以来、ユーザーフィードバックによる迅速な改善が進み、このプレビューリリースにつながりました。

2026/02/20 4:42

**マイクロペイメント:ニュースサイトにとっての現実的検証**

## Japanese Translation: **改善された要約** マイクロペイメントは、購読モデルを損なうことなく分散したニュース消費を収益化する方法として出版社に提供されます。代わりに広告収入の乗数効果として機能します。支払履歴は、本物の人間のエンゲージメントを独立して証明し、広告主の信頼性を高めます。モバイルアプリ内購入(IAP)は、二段階通貨交換が小額支払いを受け入れやすくすることを示しています。約80 % のモバイルゲーマーはゲームをプレイしながら IAP を行っており、マイクロペイメントの実用的な市場シェアを示唆しています。出版社は「パブリッシャコイン」をサブスクライバー向けのボーナス機能として導入でき、それが非サブスクライバーにも拡散されます。これは、習慣を形成するために無料コインを配布するゲームメカニクスと同様です。 正当なサイトは、広告主が AI 主導の帰属推定やビッグテックの不透明なレポートに対してますます懐疑的になる中で、信頼できる人間観客指標を必要とします。広告主 ROI はビッグテック評価の上昇とともに低下し、ランダム化実験は広告効果の因果関係を証明する唯一の確立された方法です。ビッグテックは W3C 承認済みのブラウザ内帰属システムを推進しており、これがブラウザベンダーに測定を集中させる可能性があります。これは、独立したサイトが自らの利益と合致しない場合、不利になる恐れがあります。 ビッグテックデータフローへの過度な依存を避けるため、正当な出版社は迅速に代替帰属手法(例:「rickcentralcontrolcom/geo-rct-methodology」)を採用する必要があります。統一されたマイクロペイメントプラットフォームは、複数の同意ダイアログ、メール登録、および通知プロンプトを排除し、ユーザーにかかる負担を軽減できます。 この記事ではさらに業界全体の動向にも言及しています:チャイニーズオープンソース AI の採用率(約80 % が中国モデルを使用)、プライバシー懸念から内蔵 AI 機能を禁止する EU、デジタルコンテンツ配信を規制する EPIC の年齢適切設計法案など。

2026/02/20 0:54

**Show HN:** *Micasa – ターミナルからあなたの住まいを追跡する*

<|channel|>final <|constrain|>## Japanese Translation: **Micasa**は、ホームオーナーが家のメンテナンスに関するすべての側面(タスク・プロジェクト・インシデント・機器・ベンダー・見積もり・ドキュメント)を単一のローカルSQLiteデータベースで管理できる、軽量で端末ベースのUIです(クラウドやサブスクリプションは不要)。 自動的に期日を計算し、設計図から完成までプロジェクトを追跡し、見積もりを横並びで比較し、保証とインシデントの詳細を記録し、ベンダー情報を保存し、ファイルを直接レコードに添付します。 インターフェースは完全にキーボード駆動で、Vimスタイルのモーダルナビゲーション、ファジー検索、ソート、列非表示、関連レコードへのドリルダウンが可能です。ヘルプ画面からフルキー绑定参照を確認できます。 Micasaは、家のメンテナンス管理に使われる物理的なショーボックス・バインダー・付箋紙を置き換えます。そのデザインはVisiDataのモーダル操作モデルからインスパイアされています。 Goでのインストール(`go install github.com/cpcloud/micasa/cmd/micasa@latest`)またはバイナリ(Linux、macOS、Windows;amd64 & arm64)のダウンロードによりセットアップできます。クイックスタートコマンドには `micasa --demo`、`micasa`、および `micasa --print-path` が含まれます。 アプリはすべてのデータを単一のSQLiteファイルにローカル保存し、`cp` で手動バックアップが可能です。 ## Text to translate (revised for completeness and accuracy):** > **Micasa** is a lightweight, terminal‑based UI that lets homeowners track all aspects of home maintenance— tasks … (the rest)