chacha20-poly1305-rfc8439

Implement RFC 8439 ChaCha20-Poly1305 AEAD with constant-time operations and tag verification.

Updated Jul 20, 2026
One-click install
npx skills add https://github.com/trancee/MeshLink-template --skill chacha20-poly1305-rfc8439
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: chacha20-poly1305-rfc8439
Source: https://github.com/trancee/MeshLink-template/tree/main/.agents/skills/chacha20-poly1305-rfc8439
Command: npx skills add https://github.com/trancee/MeshLink-template --skill chacha20-poly1305-rfc8439

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides a comprehensive, authoritative reference for implementing the ChaCha20 stream cipher and Poly1305 MAC, ensuring developers avoid common pitfalls like nonce reuse or non-constant-time operations.

Core Features & Use Cases

  • Algorithm Reference: Detailed breakdown of ChaCha20 state, quarter rounds, and Poly1305 clamping and accumulation.
  • AEAD Construction: Guidance on the secure combination of ChaCha20 and Poly1305 for authenticated encryption.
  • Use Case: Use this Skill when building secure, high-performance messaging protocols or file encryption systems that require a robust, software-friendly alternative to AES.

Quick Start

Use the chacha20-poly1305-rfc8439 skill to explain the AEAD construction process and verify your implementation against the provided test vectors.

Frequently Asked Questions about chacha20-poly1305-rfc8439

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How does ChaCha20-Poly1305 AEAD construction work for authenticated encryption?

ChaCha20-Poly1305 AEAD construction combines the ChaCha20 stream cipher for encryption with the Poly1305 MAC for message authentication. This Skill details the state initialization, quarter rounds, and secure combination process for authenticated encryption.

How do I implement ChaCha20 stream cipher and Poly1305 MAC correctly?

To implement ChaCha20 and Poly1305 correctly, follow the RFC 8439 specifications for quarter rounds, Poly1305 clamping, and accumulation. This Skill provides implementation guidance and test vectors to verify your cryptographic operations.

When should I use ChaCha20-Poly1305 instead of AES for secure protocol design?

Use ChaCha20-Poly1305 as a software-friendly alternative to AES when building high-performance messaging protocols or file encryption systems. It provides robust security without hardware acceleration requirements, satisfying constant-time operation needs.

What are the security constraints for nonce usage in ChaCha20-Poly1305?

Nonce uniqueness is a critical security constraint for ChaCha20-Poly1305. This Skill highlights common pitfalls like nonce reuse and non-constant-time operations, providing technical specifications to ensure correct AEAD tag verification.

Can I verify my ChaCha20-Poly1305 implementation against RFC 8439 test vectors?

Yes, you can verify your ChaCha20-Poly1305 implementation against the provided RFC 8439 test vectors. This Skill supports cryptographic engineering tasks by offering detailed algorithm references to validate your AEAD construction.