{"id":25379346,"url":"https://github.com/typek22/cfmx_compat_python","last_synced_at":"2026-06-30T02:31:44.239Z","repository":{"id":273847041,"uuid":"921076168","full_name":"typek22/cfmx_compat_python","owner":"typek22","description":"A Python implementation of ColdFusion default encryption and decryption with CFMX_COMPAT and UUEncoding based on Railo source.","archived":false,"fork":false,"pushed_at":"2025-01-23T10:46:55.000Z","size":16,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-09T11:19:34.637Z","etag":null,"topics":["cfmx-compat","coldfusion","decrypt","encrypt","python","railo","security","uuencode"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/typek22.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":"2025-01-23T09:42:54.000Z","updated_at":"2025-01-23T10:46:59.000Z","dependencies_parsed_at":"2025-01-23T10:32:51.747Z","dependency_job_id":"6f4a584b-6cfb-4d7a-b520-b7c3d37755f1","html_url":"https://github.com/typek22/cfmx_compat_python","commit_stats":null,"previous_names":["typek22/cfmx_compat_python"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/typek22/cfmx_compat_python","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typek22%2Fcfmx_compat_python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typek22%2Fcfmx_compat_python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typek22%2Fcfmx_compat_python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typek22%2Fcfmx_compat_python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/typek22","download_url":"https://codeload.github.com/typek22/cfmx_compat_python/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typek22%2Fcfmx_compat_python/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34950328,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-30T02:00:05.919Z","response_time":92,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["cfmx-compat","coldfusion","decrypt","encrypt","python","railo","security","uuencode"],"created_at":"2025-02-15T05:19:50.600Z","updated_at":"2026-06-30T02:31:44.223Z","avatar_url":"https://github.com/typek22.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Python CFMX_COMPAT ColdFusion Encryption\n\nThis project provides a Python implementation of the ColdFusion \u003ca target=\"_blank\" href=\"https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-e-g/encrypt.html\"\u003eencrypt\u003c/a\u003e and \u003ca target=\"_blank\" href=\"https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-c-d/Decrypt.html\"\u003edecrypt\u003c/a\u003e functions with the default configuration. This project provides the exact same functionality as ColdFusion's built-in encryption and decryption, ensuring compatibility for applications that need to work with ColdFusion-encrypted data.\n\nThe implementation is based on the open-source \u003ca target=\"_blank\" href=\"https://github.com/getrailo/railo\"\u003eRailo project\u003c/a\u003e, ensuring accuracy and compatibility with ColdFusion's encryption standards.\n\n⚠️ The CFMX_COMPAT algorithm, used in ColdFusion for encryption, is known for its significant security weaknesses. It should NOT be used for encryption of any data.\n\nInstead, it can be used for:\n- Interoperability with ColdFusion\n- Decoding ColdFusion-Encrypted Data\n- ColdFusion to Python Migration\n- Reverse Engineering \u0026 Security Audits\n\n## Features\n\n- Compatible with ColdFusion's default encryption and decryption functions.\n- **UUCoder**: Implements encoding and decoding using UUEncoding format.\n- **Transformer**: Implements a LFSR-based transformation algorithm for encryption/decryption.\n- **CFMXCompat**: Provides a high-level interface for encrypting and decrypting data using both the UUCoder and Transformer.\n\n\n\n## Requirements\n\n- Python 3.x\n- No external dependencies are required, only built-in Python libraries.\n\n## Usage\n\n### Run right away\n```bash\n$ git clone https://github.com/typek22/cfmx_compat_python.git\n$ cd cfmx_compat_python\n$ python main.py\n```\n\n### Adjust the parameter in main.py and run\n```python\nkey = \"86090ec89fa81d7b\"\nencrypted_text = \"#2 B+\"\nplain_text = \"Cat\"\n```\n```console\n$ python main.py\n\nENCRYPTION original: 'Cat', encrypted: '#3P:8'.\nDECRYPTION original: '#2 B+', decrypted: 'Dog'.\n```\n\n\n### Or incorporate into your project\n```python\nfrom crypt.cfmx_compat import CFMXCompat\n\nkey = \"e3548384e1ee4c26\"\nencrypted_text = \"\u00266%Z,LJ6Z\"\nplain_text = \"Rabbit\"\n\ndecrypted = CFMXCompat.decrypt(encrypted_text, key)\nencrypted = CFMXCompat.encrypt(plain_text, key)\n```\nThis is the same as following CFML code\n```cfm\n\u003ccfscript\u003e\n    key = \"e3548384e1ee4c26\";\n    encrypted_text = \"\u00266%Z,LJ6Z\"\n    plain_text = \"Rabbit\"\n\t\n    decrypted = decrypt(encrypted_text, key);\n    encrypted = encrypt(plain_text, key);\n\u003c/cfscript\u003e\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftypek22%2Fcfmx_compat_python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftypek22%2Fcfmx_compat_python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftypek22%2Fcfmx_compat_python/lists"}