data-encryption — Claude Code skill: what it does, how to install
Sets up data encryption at rest and in transit using AES-256-GCM, RSA, and TLS configurations for Node.js, Python, and PostgreSQL.
npx skills add aj-geddes/useful-ai-prompts --skill data-encryption -a claude-codeWhat data-encryption does
This skill provides implementation patterns for protecting sensitive records, passwords, and network traffic. It includes reference setups for Node.js using standard crypto, a Python cryptography implementation, PostgreSQL column-level security, and TLS/SSL configurations.
The patterns focus on authenticated encryption using AES-256-GCM alongside PBKDF2 or Argon2 for key derivation. Asymmetric tasks rely on RSA-4096 or ECC, enforcing TLS 1.2+ for transit security.
Hardcoding encryption keys directly in application source code is prohibited by the guidelines. Keys must live in a dedicated KMS or HSM, otherwise proper key rotation fails.
What it helps with
- implement AES-256-GCM encryption for application data in Node.js or Python
- configure database encryption in PostgreSQL to satisfy GDPR and HIPAA requirements
- set up password hashing with salt using PBKDF2 or Argon2
- enforce TLS 1.2+ configuration for secure communications
Example prompts for the agent
- Write an encryption service in Node.js using AES-256-GCM and PBKDF2 key derivation
- How should I structure PostgreSQL database encryption for PCI-DSS compliance?
- Configure TLS/SSL settings that avoid weak ciphers and enforce authenticated encryption
How to install data-encryption
1Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill data-encryption -a claude-code2Manually: put the files in place
~/.claude/skills/data-encryption/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/data-encryption/
1Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill data-encryption -a codex2Manually: put the files in place
.agents/skills/data-encryption/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill data-encryption -a cursor2Manually: put the files in place
.cursor/skills/data-encryption/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install aj-geddes/useful-ai-prompts data-encryption2Manually: put the files in place
.github/skills/data-encryption/SKILL.md1Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill data-encryption -a gemini-cli2Platform CLI
gemini skills install https://github.com/aj-geddes/useful-ai-prompts --path skills/data-encryptionManually: put the files in place
.devin/skills/data-encryption/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill data-encryption -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about data-encryption
How to install data-encryption in Claude Code?
Run npx skills add aj-geddes/useful-ai-prompts --skill data-encryption -a claude-code. The skill file will be placed in ~/.claude/skills/data-encryption/SKILL.md.
What does the data-encryption skill do?
It guides the assistant through production-ready cryptographic implementations across Node.js, Python, and PostgreSQL. It enforces standards like AES-256-GCM and blocks dangerous practices such as ECB mode or IV reuse.
Which key derivation functions does the skill recommend?
It specifies PBKDF2 or Argon2 paired with cryptographically secure random salts. Storing passwords with unsalted hashes, MD5, or SHA1 is disallowed.
Source text
SKILL.md · MIT
---
name: data-encryption
description: >
Implement strong encryption using AES, RSA, TLS, and proper key management.
Use when securing data at rest, in transit, or implementing end-to-end
encryption.
---
# Data Encryption
## Table of Contents
- [Overview](#overview)
- [When to Use](#when-to-use)
- [Quick Start](#quick-start)
- [Reference Guides](#reference-guides)
- [Best Practices](#best-practices)
## Overview
Implement robust encryption strategies for protecting sensitive data at rest and in transit using industry-standard cryptographic algorithms and key management practices.
## When to Use
- Sensitive data storage
- Database encryption
- File encryption
- Communication security
- Compliance requirements (GDPR, HIPAA, PCI-DSS)
- Password storage
- End-to-end encryption
## Quick Start
Minimal working example:
```javascript
// 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)
```
## Reference Guides
Detailed implementations in the `references/` directory:
| Guide | Contents |
|---|---|
| [Node.js Encryption Library](references/nodejs-encryption-library.md) | Node.js Encryption Library |
| [Python Cryptography Implementation](references/python-cryptography-implementation.md) | Python Cryptography Implementation |
| [Database Encryption (PostgreSQL)](references/database-encryption-postgresql.md) | Database Encryption (PostgreSQL) |
| [TLS/SSL Configuration](references/tlsssl-configuration.md) | TLS/SSL Configuration |
## Best Practices
### ✅ DO
- Use AES-256-GCM for symmetric encryption
- Use RSA-4096 or ECC for asymmetric encryption
- Implement proper key rotation
- Use secure key storage (HSM, KMS)
- Salt and hash passwords
- Use TLS 1.2+ for transit encryption
- Implement key derivation (PBKDF2, Argon2)
- Use authenticated encryption
### ❌ DON'T
- Roll your own crypto
- Store keys in code
- Use ECB mode
- Use MD5 or SHA1
- Reuse IVs/nonces
- Use weak key lengths
- Skip authentication tags
© aj-geddes · MIT · aj-geddes/useful-ai-prompts