cryptokit

Perform hashing, signing, and encryption with Swift CryptoKit.

Updated Apr 19, 2026
One-click install
npx skills add https://github.com/femitz/flyby --skill cryptokit-femitz
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: cryptokit
Source: https://github.com/femitz/flyby/tree/main/.agents/skills/cryptokit
Command: npx skills add https://github.com/femitz/flyby --skill cryptokit-femitz

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Developers need a safe, Swift-native API to perform cryptographic operations without delving into lower-level Security frameworks, enabling hashing, signing, encryption, key exchange, and secure key storage with the Secure Enclave.

Core Features & Use Cases

  • Hashing with SHA256, SHA384, and SHA512 for data integrity
  • HMAC for message authentication
  • Symmetric encryption using AES-GCM and ChaChaPoly
  • Public-key signing with P256 and Curve25519
  • Key agreement (ECDH) to derive symmetric keys
  • Secure Enclave-backed key storage and usage
  • Key export/import patterns and Keychain integration for secure key handling
  • Practical scenarios include securing user data, signing tokens, and protecting app secrets

Quick Start

Hash a message with SHA256 using CryptoKit to verify data integrity.

Frequently Asked Questions about cryptokit

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

FAQPage Schema
How do I hash data using SHA256 in Swift for integrity verification?

To hash data using SHA256 in Swift, use CryptoKit to generate a cryptographic hash digest for data integrity verification. CryptoKit provides a Swift-native API supporting SHA256, SHA384, and SHA512 for secure hashing operations.

Can I use the Secure Enclave for key storage and cryptographic signing in iOS?

Yes, you can use the Secure Enclave for key storage and cryptographic signing in iOS using CryptoKit. Secure Enclave-backed key storage protects app secrets and supports public-key signing with P256 and Curve25519 keys.

Does CryptoKit support symmetric encryption with AES-GCM and ChaChaPoly?

CryptoKit does support symmetric encryption using AES-GCM and ChaChaPoly. It provides Swift-native APIs for encrypting and decrypting user data securely without requiring lower-level Security framework interactions.

What is the best way to derive symmetric keys using key agreement in Swift?

The best way to derive symmetric keys using key agreement in Swift is CryptoKit's Elliptic Curve Diffie-Hellman (ECDH) support. ECDH enables two parties to derive shared symmetric keys for secure encryption.

Do I need iOS 13 and Swift 5.9 to use CryptoKit for secure cryptographic operations?

Yes, you need iOS 13+ and Swift 5.9+ to use CryptoKit for secure cryptographic operations. CryptoKit aligns with best practices for AES-GCM, ChaChaPoly, and Secure Enclave keys within these version requirements.

How does HMAC message authentication work with CryptoKit in Swift?

HMAC message authentication with CryptoKit in Swift works by using a cryptographic key to generate a message authentication code. This ensures data integrity and verifies that the message originated from the expected sender.