{"id":13633119,"url":"https://stylesuxx.github.io/steganography/","last_synced_at":"2025-04-18T10:34:11.921Z","repository":{"id":24534806,"uuid":"27941180","full_name":"stylesuxx/steganography","owner":"stylesuxx","description":null,"archived":false,"fork":false,"pushed_at":"2024-07-09T17:11:24.000Z","size":8,"stargazers_count":142,"open_issues_count":6,"forks_count":63,"subscribers_count":6,"default_branch":"gh-pages","last_synced_at":"2025-04-10T10:11:33.638Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stylesuxx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2014-12-12T22:44:14.000Z","updated_at":"2025-04-02T03:48:01.000Z","dependencies_parsed_at":"2024-08-01T23:37:13.774Z","dependency_job_id":null,"html_url":"https://github.com/stylesuxx/steganography","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stylesuxx%2Fsteganography","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stylesuxx%2Fsteganography/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stylesuxx%2Fsteganography/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stylesuxx%2Fsteganography/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stylesuxx","download_url":"https://codeload.github.com/stylesuxx/steganography/tar.gz/refs/heads/gh-pages","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249259193,"owners_count":21239422,"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":[],"created_at":"2024-08-01T23:00:28.149Z","updated_at":"2025-04-18T10:34:11.669Z","avatar_url":"https://github.com/stylesuxx.png","language":"HTML","funding_links":[],"categories":["Uncategorized","TOOLSET","Steganography"],"sub_categories":["Uncategorized"],"readme":"# Steganography Online\r\nSince I wanted to look into steganography for some time, this is a small project dedicated to steganography.\r\n\r\nIt provides functionality to **encode** a message in an image and to **decode** the message from the image.\r\n\r\nHead over to [the github page](http://stylesuxx.github.io/steganography/) and check out the online decoder and encoder.\r\n\r\n## About Steganography\r\n\r\nSteganography is the art of hiding a message inside another message. In this case we will hide a text message inside an image.\r\nAn image will most propably go unnotified, not a bunch of people will suspect a message hidden inside an image.\r\nSteganography is **no means of encryption**, just a way of hiding data inside an image.\r\n\r\nIf you want to learn about Steganography in detail head over to [the Wikipedia article](http://en.wikipedia.org/wiki/Steganography).\r\n\r\n## Implementation Details\r\n\r\nThe User chooses an image, the image data is then normalized, meaning that each RGB value is decremented by one if it is not even. \r\nThis is done for every pixel in the image.\r\n\r\nNext the message is converted to a binary representation, 8 Bits per character of the message. This binary representation \r\nis then applied to the normalized image, 3 Bit per pixel. This concludes, that the maximal length of a message hidden in \r\nan image is:\r\n\r\n    Image Width * Image Height * 3\r\n    ------------------------------\r\n                  8\r\n\r\nSince the image was normalized, we now know that an **even** r, g or b value is **0** and an **uneven** is a **1**. And this is how the\r\n message is decoded back from the image.\r\n\r\n## Additional layers of security\r\n\r\nAs mentioned before, steganography is no means of encryption, just a way to hide data from plain sight. But one could, for example,\r\nhide a pgp encrypted message inside an image. So even if the image did not go unnoticed, the message would still only \r\nbe readable by the person it was addressed to.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/stylesuxx.github.io%2Fsteganography%2F","html_url":"https://awesome.ecosyste.ms/projects/stylesuxx.github.io%2Fsteganography%2F","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/stylesuxx.github.io%2Fsteganography%2F/lists"}