mcpField
D
data-encryption

data-encryption

github.com/aj-geddes安全373613 次安装34 周前更新
代码仓库

关于 data-encryption

用于通过加密算法和密钥管理实践保护静态及传输中敏感数据的安全技能。指南涵盖 Node.js、Python、PostgreSQL 和 TLS/SSL 配置。

主要功能

  1. 01AES-256-GCM 加密指南
  2. 02非对称加密指南
  3. 03密钥轮换与安全存储
  4. 04密码哈希与加盐
  5. 05PostgreSQL 和 TLS/SSL 指南

适用场景

  1. 01加密存储的敏感数据
  2. 02保护数据库和文件内容
  3. 03保障传输中通信安全
  4. 04满足加密要求

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/aj-geddes/useful-ai-prompts --skill data-encryption

安装后在 Claude Code 中输入/data-encryption确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
database-encryption-postgresql.md
nodejs-encryption-library.md
python-cryptography-implementation.md
tlsssl-configuration.md
scripts/
security-checklist.sh

详细介绍

数据加密

目录

概述

使用符合行业标准的加密算法和密钥管理实践,实施可靠的加密策略,以保护静态和传输中的敏感数据。

适用场景

  • 敏感数据存储
  • 数据库加密
  • 文件加密
  • 通信安全
  • 合规要求(GDPR、HIPAA、PCI-DSS)
  • 密码存储
  • 端到端加密

快速开始

最简可运行示例:

// encryption-service.js
const crypto = require("crypto");
const fs = require("fs").promises;

class EncryptionService {
  constructor() {
    // AES-256-GCM for symmetric encryption
    this.algorithm = "aes-256-gcm";
    this.keyLength = 32; // 256 bits
    this.ivLength = 16; // 128 bits
    this.saltLength = 64;
    this.tagLength = 16;
  }

  /**
   * Generate a cryptographically secure random key
   */
  generateKey() {
    return crypto.randomBytes(this.keyLength);
  }

  /**
   * Derive a key from a password using PBKDF2
   */
  async deriveKey(password, salt = null) {
// ... (see reference guides for full implementation)

参考指南

references/ 目录中的详细实现:

指南内容
Node.js 加密库Node.js 加密库
Python 加密实现Python 加密实现
数据库加密(PostgreSQL)数据库加密(PostgreSQL)
TLS/SSL 配置TLS/SSL 配置

最佳实践

✅ 应该做
  • 使用 AES-256-GCM 进行对称加密
  • 使用 RSA-4096 或 ECC 进行非对称加密
  • 实施适当的密钥轮换
  • 使用安全的密钥存储(HSM、KMS)
  • 为密码加盐并哈希
  • 使用 TLS 1.2+ 进行传输加密
  • 实施密钥派生(PBKDF2、Argon2)
  • 使用认证加密
❌ 不应该做
  • 自行编写加密算法
  • 将密钥存储在代码中
  • 使用 ECB 模式
  • 使用 MD5 或 SHA1
  • 重用 IV/nonce
  • 使用较弱的密钥长度
  • 跳过认证标签

评论

支持 Markdown