{"id":24763659,"url":"https://github.com/grishnov/rc4-prng","last_synced_at":"2025-03-23T14:29:15.063Z","repository":{"id":87922766,"uuid":"314918902","full_name":"GRISHNOV/RC4-PRNG","owner":"GRISHNOV","description":"Implementation of RC4-based stream pseudo-random number generator (PRNG) in C","archived":false,"fork":false,"pushed_at":"2021-03-31T22:25:28.000Z","size":8,"stargazers_count":1,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-28T20:38:27.288Z","etag":null,"topics":["pseudo-random","pseudo-random-generator","pseudo-random-number-generation","random","random-generation","random-number-generators","rc4","rc4-algorithm"],"latest_commit_sha":null,"homepage":"https://tools.ietf.org/html/rfc6229","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/GRISHNOV.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-11-21T22:58:39.000Z","updated_at":"2024-06-08T08:27:12.000Z","dependencies_parsed_at":null,"dependency_job_id":"c51de01a-3902-4541-9287-4615d06b8ed3","html_url":"https://github.com/GRISHNOV/RC4-PRNG","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GRISHNOV%2FRC4-PRNG","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GRISHNOV%2FRC4-PRNG/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GRISHNOV%2FRC4-PRNG/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GRISHNOV%2FRC4-PRNG/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GRISHNOV","download_url":"https://codeload.github.com/GRISHNOV/RC4-PRNG/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245115107,"owners_count":20563111,"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":["pseudo-random","pseudo-random-generator","pseudo-random-number-generation","random","random-generation","random-number-generators","rc4","rc4-algorithm"],"created_at":"2025-01-28T20:35:52.410Z","updated_at":"2025-03-23T14:29:15.055Z","avatar_url":"https://github.com/GRISHNOV.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eRC4-PRNG\u003c/h1\u003e\nImplementation of RC4-based pseudo-random number generator (PRNG) in C.\n\n# Quick start\n\nDownload this repository and go to directory with project.\n\n```\ngit clone https://github.com/GRISHNOV/RC4-PRNG.git\ncd RC4-PRNG\n```\n\nRun the project build using the make utility.\n\n```\nmake\n```\n\nNow the `build` folder contains the `RC4_PRNG.o` object file. Use it together with the `RC4_PRNG.h` header file from `include` folder to work with RC4-based pseudo-random number generator in your project.\n\n# Example of use\n\n```C\n#include \u003cstdio.h\u003e\n#include \u003cstdint.h\u003e\n#include \u003cstdlib.h\u003e\n#include \"RC4_PRNG.h\"\n\nint main(void)\n{\n\tuint8_t  key[]        = { 0x01, 0x02, 0x03, 0x04, 0x05 };\n\tuint16_t keyLength    = sizeof(key);\n\tuint64_t streamOffset = 0;\n\tuint64_t streamLength = 32;\n\n\tuint8_t* result = getPseudoRandomBytesStream(key, keyLength, streamOffset, streamLength);\n\tprintPseudoRandomBytesStream(result, streamLength);\n\n\tfree(result);\n\n\treturn 0;\n}\n```\n\n```\ngcc main.c RC4_PRNG.o\n./a.out\n```\nOutput:\n```\nb2\t39\t63\t5\tf0\t3d\tc0\t27\tcc\tc3\t52\t4a\ta\t11\t18\ta8\n69\t82\t94\t4f\t18\tfc\t82\td5\t89\tc4\t3\ta4\t7a\td\t9\t19\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgrishnov%2Frc4-prng","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgrishnov%2Frc4-prng","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgrishnov%2Frc4-prng/lists"}