flutter-security について
flutter-securityは、機密データの保護、入力検証、API通信の安全対策を定めたFlutter開発スキルです。安全な保存、認証ゲート、シークレット管理を実装するチーム向けです。
主な機能
- 01機密データの保存にAES-256-GCMを使用
- 02flutter_secure_storageで鍵を保管
- 03Argon2idによるマスターパスワード導出
- 04メモリとクリップボードから秘密情報を消去
- 05生体認証とセキュリティ監査ログ
- 06入力検証とHTTPS限定のAPI通信
活用シーン
- 01ローカル保存する機密データの保護
- 02エクスポートや破壊的操作への生体認証ゲート
- 03パスワードやOTPの露出低減
- 04API認証情報の保護とユーザー入力の検証
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ dhruvanbhalara/ skills --skill flutter-securityインストール後、Claude Code で/flutter-securityを入力して読み込まれたか確認します。
詳細
セキュリティとデータ整合性 (アーキテクトレベル)
- AES-256-GCM: すべての機密ストレージに認証付き暗号化を使用します。
- シークレットストレージ: 暗号化キーおよびマスター派生キーには
flutter_secure_storageの使用を必須とします。 - キー導出: ローカルストレージの暗号化とエクスポートの前に、マスターパスワードの導出に NIST 承認のハッシュ (Argon2id) を必須とします。
- メモリ安全性: 操作が終了したとき、またはアプリがバックグラウンドに移行したときに、機密変数 (パスワード、キー) をメモリから厳密にクリアします。
- クリップボードの安全性: 機密データ (OTP、パスワード) を短時間 (30~60秒) 後にプログラムによってクリアすることを必須とします。
- 生体認証ゲート: あらゆる表示、エクスポート、または破壊的な操作に対してローカル認証を必須とします。
- 監査ログ: セキュリティ上重要なすべての操作は
AppLoggerを介してログに記録する必要があります (生のシークレットは除く)。
入力とデータの安全性
- 入力検証: 処理または保存の前に、すべてのユーザー向け入力フィールドを検証し、サニタイズします。
- HTTPS のみ: すべての API 通信は HTTPS を使用しなければなりません。機密性の高いアプリケーションでは証明書ピンニングを検討してください。
- トークンストレージ: トークン、API キー、または認証情報をソースコードや公開リポジトリに保存することを厳格に禁止します。
flutter_secure_storageまたは環境ベースのインジェクションを使用してください。
コメント
Markdown 対応