{"id":15101914,"url":"https://github.com/2alf/stegodon","last_synced_at":"2026-01-04T20:03:05.135Z","repository":{"id":221621260,"uuid":"754897625","full_name":"2alf/Stegodon","owner":"2alf","description":"C# steganography library with encryption and decryption.","archived":false,"fork":false,"pushed_at":"2024-09-14T21:23:25.000Z","size":90,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-24T16:45:35.465Z","etag":null,"topics":["csharp","nuget","nuget-package","steganography"],"latest_commit_sha":null,"homepage":"https://www.nuget.org/packages/Stegodon","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/2alf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"github":["2alf"],"patreon":null,"open_collective":null,"ko_fi":"alfcode","tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":null}},"created_at":"2024-02-09T01:05:28.000Z","updated_at":"2024-09-14T21:23:28.000Z","dependencies_parsed_at":"2024-02-09T02:43:06.706Z","dependency_job_id":"42519e61-e2ae-445b-9b21-ff4a947d2fd4","html_url":"https://github.com/2alf/Stegodon","commit_stats":null,"previous_names":["2alf/stegodon"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2alf%2FStegodon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2alf%2FStegodon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2alf%2FStegodon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/2alf%2FStegodon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/2alf","download_url":"https://codeload.github.com/2alf/Stegodon/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230315823,"owners_count":18207490,"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":["csharp","nuget","nuget-package","steganography"],"created_at":"2024-09-25T18:42:56.980Z","updated_at":"2026-01-04T20:03:05.082Z","avatar_url":"https://github.com/2alf.png","language":"C#","funding_links":["https://github.com/sponsors/2alf","https://ko-fi.com/alfcode","https://ko-fi.com/C1C3UABOS"],"categories":[],"sub_categories":[],"readme":"# Stegodon\n\nQuick and easy C# steganography library for encrypting and decrypting strings into image files when building .NET Framework apps.\n\n[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/C1C3UABOS)\n![NuGet Downloads](https://img.shields.io/nuget/dt/Stegodon?style=for-the-badge\u0026logo=c%23\u0026logoColor=%2350FF00\u0026label=INSTALLS\u0026color=%233e9544)\n\n\n\n\u003cimg src=\"https://github.com/2alf/Stegodon/assets/113948114/2706e52d-e42b-4eb9-a3a6-54157230de66\" width=\"250\"/\u003e\n\n\n\n### Made from scratch for the purpose of building the [Leonardo Desktop App](https://github.com/2alf/Leonardo).\n\n## Contents:\n\n\u003e[Download](#download)\n\n\u003e[Usage](#usage)\n\n\u003e[Further info](#further-info)\n\n## Download\n\n### DLL Binary\n\n\u003e[Github](https://github.com/2alf/Stegodon/releases)\n\n\u003e[NuGet](https://www.nuget.org/packages/Stegodon)\n\n### .NET Cli\n\n```bash\ndotnet add package Stegodon\n```\n\n### Visual studio:\n\nRight click on your project solution and go to your NuGet package manager.\n\n\n\u003cimg src=\"https://github.com/2alf/Stegodon/assets/113948114/45de3351-2bfd-410a-8925-fc60526538e9\" width=\"550\"/\u003e\n\n\n\u003cimg src=\"https://github.com/2alf/Stegodon/assets/113948114/5ee88f00-b6d2-4921-a9b8-93c425e4c8c9\" width=\"550\"/\u003e\n\n\n## Usage\n\n\u003e[Encrypt](#encrypt)\n\n\u003e[Decrypt](#decrypt)\n\n\u003e[Text to binary](#text2binary)\n\n\u003e\u003e[Binary to text](#binary2text)\n\n### Encrypt\n\nEncrypt() takes 2 arguments. First is `Bitmap` and the seocond one is a `string`.\n```cs\n// Example\nstring imagePath = \"path/to/your/img.jpg\"\nstring secretMsg = \"p@55w0rd\"\n\nBitmap encryptedImage = Stegodon.Encrypt(new Bitmap(imagePath), secretMsg);\n```\n\nOutput is a prompt to save your image as a `.png` file. \n\n### Decrypt\n\nDecrypt() takes a Bitmap argument.\nIn the below example we assume that the user wants to decrypt a string from an image. \n```cs\n// Example\nstring imagePath = openFileDialog.FileName;\nBitmap chosenImg = new Bitmap(imagePath);\n\nStegodon.Decrypt(chosenImg);\n```\n\nOutput is the decrypted string.\n\n### Text2binary\n\n```Txt2Bin(string text)```\nConverts a string into a binary format suitable for embedding into an image.\n\n### Binary2text\n```Bin2Txt(string binaryMessage)```\nConverts a binary string back into readable text.\n\n\n## Further info\nThe solution I made isn’t anything new and broad, but it is concentrated in allowing users to use steganography easily to encrypt and decrypt strings into and from image files. The encryption process first normalizes the image making sure all pixel data is even to minimize error whilst injecting new bits into the file and to avoid breaking pixels. Then we just embed string binary data into the least significant bits of each RGB color channel. The decryption is simply extracting back information from the LSB of each channel.  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F2alf%2Fstegodon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F2alf%2Fstegodon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F2alf%2Fstegodon/lists"}