Show HN:PanicLock - MacBook のスリーブを閉じると Touch ID を無効にし、パスワード認証でロック解除を可能にします。

2026/04/18 1:38

Show HN:PanicLock - MacBook のスリーブを閉じると Touch ID を無効にし、パスワード認証でロック解除を可能にします。

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

要約

日本語翻訳:

要約は、自動起動機能、ルーフスイッチロック機能、および具体的なインストール方法を追加して拡張する必要があります。これにより、「主要ポイントリスト」を完全に反映させることができますが、新たな情報を付加することはありません。

改善された要約

PanicLock は、法執行機関とのやり取りなど、機密状態の状況における即時防護のために設計された、本質的なオープンソースの macOS メニューバーユーティリティです。その主な機能は、シングルクリックまたはホットキー(例:⌃⌥⌘L)でタッチ ID を直ちに無効化し、画面をロックすることであり、オプションとしてラップトップのカバーを閉じたときに動作して、Apple の標準機能における重要なギャップを満たします。このアプリケーションは、アクティブなセッションを中断することなく、システムタイムアウト設定を安全に修正するための最小権限ヘルパーを offline で使用して安全に動作します。具体的には、3 つの特定のコマンドのみを実行します。技術的には、アプリの資格情報を検証して注入攻撃を防ぎ、ネットワーク上の活動やテレメトリーを維持しないことで安全性を確保しています。macOS 14.0 以降と互換性があり、インストールには初期の管理者パスワードが必要です(Homebrew または手動ダウンロードで入手可能)。ロック解除後、元のタッチ ID 設定を自動的に 2 秒以内に復元します。組織にとっては、無許可による指紋アクセスに対する迅速な安全網を提供し、現在のデータを保持しながら、オープンソースの性質によりコードベースの独立した監査が可能であり、隠されたデータ収集がないことを検証できます。さらに、ログイン時に起動するように設定でき、アイコンを右クリックして好みを設定またはアンインストールするオプションを選択できます。

本文

PanicLock は、ワンクリックまたはラップトップの Lid(カバー)を閉じるという単純な動作で、Touch ID を瞬時に無効化し画面をロックする macOS のメニューバーユーティリティです。PanicLock は、macOS が提供していない重要な機能を補完します:つまり、状況に応じて Touch ID を瞬時に無効化する方法が標準では存在しないという課題です。生体認証は日常的には利便性が高く、スピードが必要だったり、パスワードが見られるのを避けたい場合などは特に有利です。しかしながら、機密の多い状況下では、多くの国において法執行機関や国境警備当局は、パスワードとは異なる方法で Touch ID による解錠を強制させることができます。PanicLock は、ワンクリックのメニューバーボタン、カスタマイズ可能なホットキー、または Lid を閉じた際の自動ロック機能を提供し、Touch ID を即座に無効化して画面をロックします。これにより、セッションを終了させたりシステムをシャットダウンしたりすることなく、パスワードによる解錠のみを可能にする保護状態に戻すことができます。

主な特徴

  • ワンクリックでパニックロック: メニューバーのアイコンをクリックするかホットキーを押すことで瞬時にロックできます。
  • Lid 閉じ時のロック: Lid を閉じた際に Touch ID の無効化と共に自動でロックするオプションです。
  • Touch ID の一時的な無効化: パスワードによる解錠のみを強制します。
  • 自動復元: 解錠後、元の Touch ID の設定が自動的に回復します。
  • キーボードショートカット: グローバルホットキーを設定できます(例:⌃⌥⌘L)。
  • ログイン時起動: ログイン時に自動的に動作を開始します。

インストール

  • Homebrew 経由:
    brew install paniclock/tap/paniclock
  • 手動ダウンロード: リリースページの最新 DMG ファイルをダウンロードしてください。

要件

  • macOS 14.0 (Sonoma) 以降
  • Touch ID を搭載した Mac

使い方

動作結果
アイコンの左クリック直ちにパニックロックをトリガーします
アイコンの右クリックメニューを開きます(環境設定、アンインストール、終了)
Lid 閉じ時のロック環境設定で有効にすると、Mac の Lid を閉じると自動的に Touch ID が無効化され画面がロックされます。Touch ID はパスワードでの再ログインまで無効化されたままです。他により一般的な理由(スクリーンセーバー、表示の休止など)で画面がロックされた場合でも、Touch ID は通常通り機能します。
最初の起動時初めて使用する際には、特権ヘルパーをインストールするための管理者パスワードの入力を求められます。これは一回限りのセットアップです。

ソースからのビルド

  1. このリポジトリをクローンしてください。
  2. Xcode で
    PanicLock.xcodeproj
    を開きます。
  3. 両方のターゲット(
    PanicLock
    PanicLockHelper
    )において、開発チームを設定します。
  4. Info.plist
    (SMPrivilegedExecutables 内)および
    Info-Helper.plist
    (SMAuthorizedClients 内)のチーム ID を更新します。
  5. ビルドして実行します。

アンインストール

  • Homebrew / アプリから: アイコンを右クリック →「PanicLock のアンインストール」を選択 → 管理者パスワードを入力
  • 手動:
    sudo launchctl bootout system/com.paniclock.helper
    sudo rm -f /Library/PrivilegedHelperTools/com.paniclock.helper
    sudo rm -f /Library/LaunchDaemons/com.paniclock.helper.plist
    rm -rf /Applications/PanicLock.app
    

動作原理

PanicLock は、SMJobBless を介してインストールされる特権ヘルパーを使用して、Touch ID のタイムアウト設定を変更します。その手順は以下の通りです。

  1. bioutil -r -s
    コマンドで現在のタイムアウト値を取得
  2. bioutil -w -s -o 1
    コマンドでタイムアウトを 1 秒に設定
  3. pmset displaysleepnow
    コマンドで画面をロック
  4. 約 2 秒後に元のタイムアウト値を回復

セキュリティ

  • 最小限の特権: ヘルパーはハードコードされたコマンド(
    bioutil
    pmset
    )の 3 つのみを実行します。
  • コマンドインジェクションの防止: タイムアウトパラメータは文字列ではなく Swift Int です。
  • 署名付き XPC: ヘルパーは接続するアプリのバンドル ID、チーム ID、証明書を検証します。
  • ネットワーク活動なし: アプリは完全にオフライン動作し、テレメトリやアナリティクスはありません。
  • データ収集なし: 環境設定(アイコンスタイル、キーボードショートカットなど)のみを保存します。
  • オープンソース: コード全体を監査に提供可能です。

リリース手順

リリーススクリプトはビルド、署名、Notarization、パッケージ化をすべて処理します。

  • 機能:
    • Xcode プロジェクトからバージョン情報を自動的に抽出します。
    • App Store 外での配布のために Developer ID による署名を行います。
    • Apple への Notarization 提出(所要時間は数分から数時間)を行います。
    • 配布用の Notarized DMG を作成します。
    • 並列 Notarization のサポートにより、各バージョンごとに独自の
      build/release/<version>/
      ディレクトリが生成されます。
  • ワークフロー:
    1. Xcode で
      MARKETING_VERSION
      を更新します。
    2. ./scripts/release.sh
      を実行してビルドと Notarization 提出を行います。
    3. 後に再度実行してステータスを確認し、承認を待つことができます。
    4. ファイナル出力:
      build/release/<version>/PanicLock-<version>.dmg

ライセンス

MIT ライセンスの詳細は LICENSE ファイルをご確認ください。

コントリビュート(貢献)

歓迎しています!問題報告やプルリクエストをオープンしてください。

同じ日のほかのニュース

一覧に戻る →

2026/04/18 0:04

クロード・デザイン

## Japanese Translation: Anthropic は今日、研究プレビュー段階で一般公開された新しい AI ツール「Claude Design」を発表しました。このツールは、進化した Claude Opus 4.7 vision モデルを基盤としており、テキストやドキュメントを瞬時に視覚デザインに変換する機能を備えています。以前では 20 つ以上のプロンプトが必要だった作業フローをわずか 2 ステップへと大幅に簡素化することで、プロトタイプ制作を容易にします。ユーザーはテキストで要件を記述するか、DOCX、PPTX、XLSX ファイルをアップロードし、Claude が最初の視覚版を作成して改善の余地を残します。オンボーディング時に既存のコードベースに直接統合され、チーム向けデザインシステムを自動的に構築するほか、デザインファイルを读取して共有標準を策定します。 本ツールにはカスタムスライダーやインラインコメントなど、精密な微調整制御に加え、組織範囲での共有機能、プライベートリンク、編集アクセス権、グループチャットといった新たなコラボレーション機能も提供されます。デザインは Canva への完全編集可能なファイルとしての直接エクスポートが可能で、あるいは PDF、PPTX、HTML、社内 URL へも代替的にエクスポートできます。バンドルは Claude Code のための直接実装用としても保存されます。これは、現実的なインタラクティブプロトタイプやワイヤーフレームからピッチデッキ、マーケティング素材、3D 要素など先端デザインに至るまでの用途をカバーします。 現在、claude.ai/design で利用可能です。本サービスは現在の研究プレビュー段階ですが、一日中急速に拡大しており、Pro、Max、Team、Enterprise サブスクリプションのすべてで利用可能になっています。特に、Enterprise ユーザーではデフォルトで機能がオフになっているものの、管理者が Organization 設定からこれを有効にすることで、アクセス管理を好みに合わせて行うことができます。この進歩により、コードを書かずに複雑な素材を作成することが可能となり、デザインサイクルが加速するとともに、ワイヤーフレームからプロダクションまでの移行プロセスにおいてクリエイティブワークフローと開発者ツールを統合することで、そのプロセスが合理化されます。

2026/04/18 6:38

FIL-C の簡略化モデル

## Japanese Translation: Fil-C は、既存の不安全な C/C++ コードベースをメモリ安全性を備えた実装に改修することを目的とした革命的ツールであり、手動による書き換えを必要としません。それは、簡略化されたモデルではソースコード、または生産環境版では LLVM IR を自動的に変換することで達成され、各関数内のポインターにメタデータレコード(`AllocationRecord*` 変数)を付与します。これらのレコードは、可視データ、境界アラインメント用の非公開バイト、および長さ情報を追跡し、参照解除やポインター算術といった標準的な操作を自動的に境界チェックを備えた操作へと書き換えることを可能にします。 このシステムは、標準ライブラリ呼び出しを Fil-C 版(例:`filc_malloc`)で置き換えにより配列を明示的に処理し、かつ廃棄された非公開メタデータオブジェクトの解放にはガバージコレータが担当するというハイブリッドアプローチによってメモリライフサイクルを管理します。これは `AllocationRecord` インスタンス自体が直接子配列を解放しないためです。スタック操作によるエラーを防ぎつつ安全性を保証するため、ローカルスコープからアドレスが流出する変数は自動的にヒープ割り当てに昇進されます。 未確認のレガシーコードベースに対する安全な橋渡しとしての位置づけを持つ Fil-C は、 unsafe ポインター交換を関数呼び出しを超えて防止するというユニークなポインター所有性の性質を持ち、積極的な最適化および並行型ガバージコレータを通じて典型的なメモリ安全性ペナルティを軽減します。最終的に、AddressSanitizer による強力なコンパイル時の安全性保証を提供すると同時に、産業界が既存の大規模コードベースを安全にし、Zig などにおける安全なコンパイル時評価を活用することを可能にします。

2026/04/18 3:17

『全ての 12 人の月面歩行者は、火薬のような匂いのする塵から「月じんかぜ」に苦しんだ(2018 年)』

## 日本語訳: 月面の塵は宇宙探査にとって二重の現実をもたらします:それはアストロノーツにとって即座に命を脅かす危険であると同時に、将来的な植民地にとっては貴重な資源でもあります。主な危険性は、その独自の物理的特性に由来します。やわらかい地球の塵とは異なり、月面の粒子は鋭く研摩性のあるケイ酸塩粒であり、太陽放射と大気による侵食の欠如のため静電的に帯電したままです。これらの小さな棘状の粒子(人間の髪の毛の約 50 倍小さいもの)は、地球重力の 1/6 の環境でも数ヶ月間浮遊し、表面より高く漂浮しながら装備に侵入し、さらに人間肺の奥深くまで到達します。史上 12 人の月面を歩いた宇宙飛行士すべて(其中包括アポロ 17 号のハリーソン・シミュット)によって記録されているように、露出は「月の枯草熱」と呼ばれる症状——喉の痛み、涙目、くしゃみ、鼻閉塞(時に数日続くものも含まれる)——および肺細胞や脳細胞に損傷をもたらす可能性のある長期的毒性を引き起こしました。また、この塵は宇宙船内部で独特な火薬のような燃えた臭いを放ちます。 これらのリスクを安全に研究するために、研究者らはドイツで粉砕された丸みを帯びた火山岩シミュラントを使用して、鋭く有毒な月面粒子への曝露なしに機器故障をモデル化しています。カリフォルニア大学の NASA アストロノート・キム・プリスクを含む 12 人の科学者による野心的なプログラムで、月面塵の毒性リスクが推定されています。生物学者のエリン・トランフィールドは、火山岩を粉砕することで鋭い縁を取り除き、より安全なシミュレーションが可能になると指摘しています。科学顧問のアイドアン・カウリーは有望な応用として、月面土壌を加熱して居住用のレンガを生産したり、レゴリットから酸素を抽出して有人ミッションを維持したりすることを挙げています。同時に、ESA アストロノート・アレクサンダー・ゲーストは減重力下での肺の健康を追跡するための「気道モニタリング」実験を行い、将来の持続可能な月面帰還を支えています。並行して、ESA はオランダのエウレカ研究所内で月面資源に関するワークショップを開催し、これらの機会への研究を推進するとともに、この独自の環境がもたらす重大な健康リスクを軽減することを目指しています。