{"id":13569066,"url":"https://github.com/kiprotect/kodex","last_synced_at":"2025-12-16T01:35:57.059Z","repository":{"id":46246982,"uuid":"280229520","full_name":"kiprotect/kodex","owner":"kiprotect","description":"A privacy and security engineering toolkit: Discover, understand, pseudonymize, anonymize, encrypt and securely share sensitive and personal data: Privacy and security as code.","archived":false,"fork":false,"pushed_at":"2024-08-11T07:21:50.000Z","size":4049,"stargazers_count":109,"open_issues_count":6,"forks_count":16,"subscribers_count":9,"default_branch":"main","last_synced_at":"2024-08-11T08:32:15.597Z","etag":null,"topics":["anonymization","anonymize","ccpa","compliance","consent-management","encryption","gdpr","privacy","privacy-engineering","privacy-enhancing-technologies","privacy-protection","privacyops","pseudonymization","pseudonymize","security","security-engineering","securityops"],"latest_commit_sha":null,"homepage":"https://heykodex.com","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kiprotect.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-07-16T18:33:03.000Z","updated_at":"2024-08-11T07:21:55.000Z","dependencies_parsed_at":"2024-02-28T10:42:18.219Z","dependency_job_id":"f4c94b11-88a1-49bb-a1e2-43051d249631","html_url":"https://github.com/kiprotect/kodex","commit_stats":null,"previous_names":["kiprotect/kiprotect"],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiprotect%2Fkodex","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiprotect%2Fkodex/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiprotect%2Fkodex/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiprotect%2Fkodex/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kiprotect","download_url":"https://codeload.github.com/kiprotect/kodex/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223100117,"owners_count":17087387,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["anonymization","anonymize","ccpa","compliance","consent-management","encryption","gdpr","privacy","privacy-engineering","privacy-enhancing-technologies","privacy-protection","privacyops","pseudonymization","pseudonymize","security","security-engineering","securityops"],"created_at":"2024-08-01T14:00:35.636Z","updated_at":"2025-12-16T01:35:56.977Z","avatar_url":"https://github.com/kiprotect.png","language":"Go","readme":"![](https://heykodex.com/static/images/logos/kodexlogo-blue.png)\n\n**Kodex (Community Edition - CE)** is an open-source toolkit for\n**privacy and security engineering**. It helps you to automate data\nsecurity and data protection measures in your data engineering workflows.\nIt offers the following functionality:\n\n- Read data items from a variety of sources such as files, databases or\n  message queues.\n- Protect these data items using various privacy- \u0026 security enhancing\n  transformations, like de-identification, masking, pseudonymization,\n  anonymization or encryption.\n- Send the protected items to a variety of destinations.\n\nWith Kodex, you can describe your data protection and data security\nworkflows using a simple, declarative configuration language: Just like DevOps\ntools let you describe infrastructure as code, Kodex is a **PrivacyOps** \u0026\n**SecurityOps** tool that let you describe **privacy and security measures\nas code**.\n\nKodex takes care of the boring and difficult aspects of privacy, such as\n\n- **Key management**: Kodex manages encryption and pseudonymization\n  keys for you (if you want that).\n- **Parameter management**: Kodex keeps track of how every single data item\n  was processed so you can prove the compliance of your data workflows\n  and create an audit trail.\n- **Data transformation**: Kodex implements modern cryptographic and\n  statistical techniques to protect your data.\n\n# Getting started\n\nTo download and install Kodex from source, simply run\n\n    git clone https://github.com/kiprotect/kodex\n    cd kiprotect\n\n    make\n    make install\n\n# Documentation\n\nYou can find the official documentation at https://heykodex.com/docs.\n\n# Transforming data\n\nKodex reads its configuration from so-called blueprints. To get an idea\nof how this works, check out our\n[blueprints repository](https://github.com/kiprotect/blueprints), which contains\nexample blueprints together with instructions on how to run them. You can\ninstall these blueprints via Kodex (requires Internet access):\n\n    kodex blueprints download\n\nAlternatively, you can copy them to your machine manually, please refer to the\n[documentation](https://heykodex.com/docs/blueprints) for more details.\nTo then run the pseudonymization example, simply type\n\n    # pseudonymize the example data and write it to a file named 'pseudonymized.json'\n    kodex run pseudonymization/examples/data-types/pseudonymize\n\n    # depseudonymize the data again and print the result on stdout\n    kodex run pseudonymization/examples/data-types/depseudonymize\n\nThat's it! Kodex takes care of generating and storing cryptographic\nparameters for the pseudonymization. If you want to manually enter a key instead\nto generate parameters, you can do that too:\n\n    # pseudonymize the data with a user-supplied key\n    kodex run pseudonymization/examples/data-types/pseudonymize-with-key\n\n    # depseudonymize with a key as well\n    kodex run pseudonymization/examples/data-types/depseudonymize-with-key\n\n# Running the tests\n\nKodex comes with a suite of automated unit tests, which you can run with\nMake:\n\n    make test\n\n## Testing Plugins\n\nThe plugin test may fail with an error message \"plugin was built with a different version of package internal/cpu\"\nwhich can occur if the compile flags used for compiling the main code and the plugin differ. This might happen\ne.g. if you perform race condition detection tests. To fix the problem, go to the plugin folder and run\n\n    make clean\n    make\n\n# Running the benchmarks\n\nKodex also comes with a number of benchmarks that you can run as follows:\n\n    make bench\n\n# Status \u0026 Roadmap\n\nThis is still an early version of Kodex and does not contain many features\nyet. We will progressively port more functionality from our Enterprise Edition\n(EE). The following features are next up on our list:\n\n- **Anonymization**: Anonymize streaming data using differentially private\n  aggregations.\n- **Discovery**: Discover sensitive and personal information in your structured\n  and unstructured data.\n- **Encryption**: Encrypt and decrypt structured data.\n- **Data Mapping**: Analyze and map your data infrastructure.\n- **Consent Management**: Manage and enforce processing purposes and\n  user consent for all your data streams.\n\n# Enterprise Edition\n\nOur open-source work is made possible by commercially offering a **Kodex\nenterprise edition (EE)**, which extends the community edition (CE) with\nfunctionality that supports a deployment of Kodex in a professional\nenterprise environment. It includes e.g. the following functionality:\n\n- Advanced, SQL-based configuration \u0026 parameter management and storage.\n- REST-based API to control all Kodex functionality.\n- Web interface to manage and monitor data streams.\n- More advanced data transformations.\n- Role-based access control mechanism.\n\nAre you interested to learn more about Kodex EE? Just visit\n[our website](https://heykodex.com) or [get in touch with us](mailto:kodex@kiprotect.com)!\n\n# License\n\nKodex is currently licensed under the Affero GPL license, version 3 (AGPL-3.0). See the\n[license file](LICENSE) for details. In addition, we also offer a commercial license\nthat allow you to directly integrate the Kodex code into closed-source software\nwithout disclosing your own code. If you're interested in buying a commercial license,\n[please get in touch with us](mailto:kodex@kiprotect.com).\n\n## Why Affero GPL?\n\nThe Affero GPL license is a strong copyleft license that allows you to freely use\nKodex for commercial and non-commercial purposes. If you use the software as a\nstandalone tool without integrating it with your own software code (i.e. you do not\nimport and compile it as a Go library in your own Go code) its use will not\naffect your own software code in any way. In that respect, Kodex can be used\nas freely as other Linux tools provided under a GPL license. \n\nHowever, if you integrate the Kodex code with your own software code and distribute\nor offer that software as a web service, you will have to make the source\ncode of your software available under a compatible license. Similarly, if you modify\nor extend Kodex and either distribute it or offer it as a service you will have\nto make the source code of your changes available as well. This ensures that improvements\nwhich you make to Kodex will benefit the entire user community.\n\n## I need a different license\n\nIf you have trouble using Kodex-CE due to the license terms, please\n[get in touch with us](mailto:kodex@kiprotect.com). We offer a commercial license \nthat enables you to integrate Kodex with your own software code without\nbeing affected by the terms of the AGPL license.\n\n# Contact us\n\nDo you have trouble getting Kodex to run? Do you want to suggest a new\nfeature or report a bug? Please open an issue in this issue tracker. If\nit's something that you'd like to discuss directly with us, please\n[send us an e-mail](kodex@kiprotect.com), we love to hear from you!\n\n# Spread the word\n\nAre you using Kodex in your organization and like it? Please let the world\nknow! Spreading the word about it and giving us feedback helps us to improve\nthe software.\n","funding_links":[],"categories":["Privacy","Awesome Privacy Engineering [![Awesome](https://awesome.re/badge.svg)](https://awesome.re)"],"sub_categories":["Professional Privacy","De-Identification and Anonymization"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkiprotect%2Fkodex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkiprotect%2Fkodex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkiprotect%2Fkodex/lists"}