Agent skill
cryptographic-practices
暗号化・ハッシュ・CSPRNG・鍵管理の実装を安全に進めるためのスキル。 要件整理から設計、実装、監査までの一連フローを提供する。 Anchors: • Applied Cryptography / 適用: アルゴリズム選定と強度判断 / 目的: 標準準拠の基礎固め • Web Application Security / 適用: 脅威モデリング / 目的: 実装リスクの明確化 • NIST SP 800-57 / 適用: 鍵管理 / 目的: ライフサイクル設計 Trigger: Use when implementing cryptographic functions, selecting algorithms, generating secure random values, managing encryption keys, or auditing crypto implementations. cryptographic practices, crypto implementation, key management, csprng, algorithm selection
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/security/cryptographic-practices-daishiman-aiworkfloworchestrat
SKILL.md
cryptographic-practices
概要
暗号実装に必要な判断基準と実装手順を整理し、安全なアルゴリズム選定・鍵管理・乱数生成を支援する。
ワークフロー
Phase 1: 要件整理
目的: 目的・脅威・制約を整理し、暗号要件を明確化する。
アクション:
- 保護対象と脅威を整理する。
- 目的(機密性/完全性/認証/署名)を明確化する。
- 既存実装の有無を確認する。
Task: agents/analyze-crypto-requirements.md を参照
Phase 2: 設計
目的: アルゴリズムと鍵管理の方針を設計する。
アクション:
references/algorithm-strength-guide.mdで強度を確認する。references/key-management-policy.mdで鍵ライフサイクルを設計する。references/csprng-implementation.mdで乱数生成方針を整理する。
Task: agents/design-crypto-architecture.md を参照
Phase 3: 実装
目的: 安全な実装と検出を行う。
アクション:
- 設計方針を実装に反映する。
scripts/detect-weak-crypto.mjsで弱い実装を検出する。- 変更点を記録する。
Task: agents/implement-crypto-controls.md を参照
Phase 4: 検証と監査
目的: 実装の安全性を検証し、監査記録を残す。
アクション:
assets/crypto-audit-checklist.mdで監査する。- 監査結果をテンプレートに整理する。
scripts/log_usage.mjsで記録を更新する。
Task: agents/validate-crypto-implementation.md を参照
Task仕様ナビ
| Task | 起動タイミング | 入力 | 出力 |
|---|---|---|---|
| analyze-crypto-requirements | Phase 1開始時 | 目的/制約/脅威 | 暗号要件メモ、リスク一覧 |
| design-crypto-architecture | Phase 2開始時 | 暗号要件メモ | アルゴリズム設計、鍵管理方針 |
| implement-crypto-controls | Phase 3開始時 | 設計方針 | 実装変更メモ、検出結果 |
| validate-crypto-implementation | Phase 4開始時 | 実装変更メモ | 監査レポート、改善提案 |
詳細仕様: 各Taskの詳細は agents/ ディレクトリを参照
ベストプラクティス
すべきこと
| 推奨事項 | 理由 |
|---|---|
| 脅威モデルから設計する | 要件と実装が一致する |
| 標準アルゴリズムを使う | 自作暗号のリスク回避 |
| CSPRNGを使用する | 予測可能性の排除 |
| 鍵管理をライフサイクルで設計する | 漏洩リスクを抑える |
| 監査ログを残す | 再現性と証跡の確保 |
避けるべきこと
| 禁止事項 | 問題点 |
|---|---|
| 弱いアルゴリズムの採用 | 既知の脆弱性を抱える |
| 乱数にMath.randomを使う | 予測可能で危険 |
| 鍵のハードコード | 漏洩リスクが高い |
| 監査なしのデプロイ | 安全性が担保できない |
リソース参照
scripts/(決定論的処理)
| スクリプト | 機能 |
|---|---|
scripts/detect-weak-crypto.mjs |
弱い暗号実装の検出 |
scripts/validate-skill.mjs |
スキル構造の検証 |
scripts/log_usage.mjs |
使用記録と評価メトリクス更新 |
references/(詳細知識)
| リソース | パス | 読込条件 |
|---|---|---|
| レベル1 基礎 | references/Level1_basics.md | 要件整理時 |
| レベル2 実務 | references/Level2_intermediate.md | 設計時 |
| レベル3 応用 | references/Level3_advanced.md | 実装時 |
| レベル4 専門 | references/Level4_expert.md | 監査時 |
| 強度ガイド | references/algorithm-strength-guide.md | アルゴリズム選定時 |
| CSPRNG実装 | references/csprng-implementation.md | 乱数設計時 |
| 鍵管理方針 | references/key-management-policy.md | 鍵運用設計時 |
| 脅威整理 | references/threat-modeling.md | 目的整理時 |
| 要求仕様索引 | references/requirements-index.md | 仕様確認時 |
| 旧スキル | references/legacy-skill.md | 互換確認時 |
assets/(テンプレート・素材)
| アセット | 用途 |
|---|---|
assets/crypto-audit-checklist.md |
監査チェックリスト |
assets/encryption-config-template.json |
暗号設定テンプレート |
assets/key-rotation-plan.md |
鍵ローテーション計画 |
assets/crypto-audit-report-template.md |
監査レポート |
運用ファイル
| ファイル | 目的 |
|---|---|
EVALS.json |
レベル評価・メトリクス管理 |
LOGS.md |
実行ログの蓄積 |
CHANGELOG.md |
改善履歴の記録 |
Didn't find tool you were looking for?