Skip to main content

A helper tool for file encryption in Git repositories primarily aimed at encrypting Kubernetes secrets and other sensitive information to be later used in a CI/CD pipeline

Project description

Krypt: GitOps-friendly Secret Management for Kubernetes Clusters

Krypt is a tool designed to streamline secret management within Kubernetes cluster (and pretty much any other) configurations, particularly suited for GitOps workflows. It enables users to securely seal and unseal secrets within cluster configuration folders, ensuring sensitive information remains protected both in transit and at rest.

Getting Started

To begin using Krypt, follow these simple steps:

  1. Initialization: Initialize the cluster directory using the krypt init command. Provide a passphrase for encryption and specify the path to the cluster directory.

    krypt init --passphrase PASSPHRASE /path/to/cluster
    
  2. Sealing Secrets: Seal the secrets within the cluster directory using the krypt seal command.

    krypt seal /path/to/cluster
    
  3. Commit and Push: Once sealed, commit the changes to your Git repository and push them upstream. This ensures that the encrypted secrets are securely stored and version controlled.

  4. CI/CD Integration: In your CI/CD pipeline, use the krypt unseal command to unseal the secrets before applying manifests onto the cluster. Pass the passphrase for decryption and specify the path to the cluster directory.

    krypt unseal --passphrase PASSPHRASE /path/to/cluster
    

Usage Guidelines

  • Only files with .kpt. in the name or those ending with .kpt are sealed by Krypt. Other files within the cluster directory remain stored in plaintext. This ensures that only intended secrets are encrypted while maintaining transparency for other configuration files.

  • Krypt automatically adds files with .kpt. in the name or those ending with .kpt to .gitignore to ensure that plaintext secrets are not being committed to the repository.

  • It's essential to securely manage and store the passphrase used for sealing and unsealing secrets. Consider using secure key management practices to protect this passphrase.

Contributing

Contributions to Krypt are welcome! Feel free to open issues for bug reports, feature requests, or any questions you may have. Pull requests are also encouraged for those who would like to contribute directly to the project's development.

License

Krypt is licensed under the GPLv3 License, allowing for both personal and commercial use with proper attribution. Refer to the license file for detailed information.

Acknowledgments

Krypt was inspired by the need for a secure and streamlined approach to managing secrets within Kubernetes clusters, particularly in GitOps workflows. We extend our gratitude to the open-source community for their contributions and support.


Krypt - Secure Secret Management for Kubernetes Clusters

For more information, visit Krypt on GitHub

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

krypt-0.1.2.tar.gz (22.5 kB view details)

Uploaded Source

Built Distribution

krypt-0.1.2-py3-none-any.whl (27.0 kB view details)

Uploaded Python 3

File details

Details for the file krypt-0.1.2.tar.gz.

File metadata

  • Download URL: krypt-0.1.2.tar.gz
  • Upload date:
  • Size: 22.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for krypt-0.1.2.tar.gz
Algorithm Hash digest
SHA256 2ba9a41d6d303239cb481fedb3d0c265e4cd1ef272aff8acb2ae2452d96d0207
MD5 b52beb96ec7a6ea72f2767dff373884e
BLAKE2b-256 1f4e89bcd8637424a81aefd29ce36906d2117ab57f60ab7ce16c8192f2e30947

See more details on using hashes here.

File details

Details for the file krypt-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: krypt-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 27.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for krypt-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8b342517db934c536be67dcfdb99d67c551ffbfe95327f45a2b7305b1b485d65
MD5 f03d676f3331b377146174435d7d14ff
BLAKE2b-256 ccb44b8ebdc7caf66c5e69b38440b42349dd3d4ce0f0bf6a5b962c0cc3a6a8c2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page