{"id":21689099,"url":"https://github.com/tinram/rnd","last_synced_at":"2026-01-04T10:31:21.218Z","repository":{"id":83640107,"uuid":"81244606","full_name":"Tinram/RND","owner":"Tinram","description":"Random data generator creating files, streams, passwords, characters/fuzzing sequences.","archived":false,"fork":false,"pushed_at":"2023-11-07T17:15:49.000Z","size":174,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-25T12:41:48.269Z","etag":null,"topics":["character-generator","fuzz-testing","fuzzing","password-generator","random","random-bytes"],"latest_commit_sha":null,"homepage":"","language":"FreeBasic","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Tinram.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":"2017-02-07T19:16:54.000Z","updated_at":"2023-08-04T20:17:16.000Z","dependencies_parsed_at":"2023-11-07T18:31:09.308Z","dependency_job_id":"6472bb5e-968a-4d2e-b28c-bb08b3435266","html_url":"https://github.com/Tinram/RND","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/Tinram%2FRND","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tinram%2FRND/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tinram%2FRND/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tinram%2FRND/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Tinram","download_url":"https://codeload.github.com/Tinram/RND/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244611790,"owners_count":20481265,"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":["character-generator","fuzz-testing","fuzzing","password-generator","random","random-bytes"],"created_at":"2024-11-25T17:21:14.823Z","updated_at":"2026-01-04T10:31:21.172Z","avatar_url":"https://github.com/Tinram.png","language":"FreeBasic","readme":"\r\n# RND\r\n\r\n### Random and sequence character data generator.\r\n\r\n\r\n##### RND v.1.2\r\n\r\n##### Linux and Windows\r\n\r\n\r\n## Purpose\r\n\r\n### Create:\r\n\r\n### Random Character Streams and Files\r\n\r\n+ Random and random range ASCII character streams.\r\n+ Random ASCII control codes.\r\n+ Long password strings.\r\n\r\n### Repeating Text Content\r\n\r\n+ Repeating text strings for content filler e.g. *Lorem ipsum*.\r\n\r\n### Random File Data\r\n\r\n+ Specific file size (e.g. 607 bytes, 10MB) for file integrity, processing, hashing, network, and benchmarking tests (non-sparse files created).\r\n+ Existing file overwrites to the exact byte count.\r\n\r\n### Sequence / Fuzzing Characters\r\n\r\n+ Specific byte / control code sequence.\r\n+ Character range sequence.\r\n+ Unicode character range sequence.\r\n\r\n\r\n## OS Support\r\n\r\n+ Linux\r\n+ Linux ARM6\r\n+ Windows\r\n\r\n\r\n## Usage\r\n\r\n    rnd.exe or rnd       (Windows)        display command-line options\r\n    ./rnd                (Linux)\r\n\r\n\r\n### Options\r\n\r\n    rnd -c [number of bytes (or: 1K, 1M, 1G)] [low_character high_character] [file]\r\n    rnd -s [number] [\"text to output\"] [file]\r\n    rnd -b \u003cnum,num,num,num, ...\u003e [file]\r\n    rnd -b \u003clow_character\u003e-\u003chigh_character\u003e [file]\r\n    rnd -u \u003clow_character\u003e-\u003chigh_character\u003e\r\n    rnd -p\r\n    rnd -a\r\n\r\n           - square brackets denote optional commands\r\n           - all numbers must be in decimal\r\n\r\n\r\n### Usage Examples\r\n\r\n\r\n#### ASCII List\r\n\r\n    rnd -a               list the 8-bit ASCII character table, 0 to 255\r\n                         (0 to 31 are displayed as control code acronyms)\r\n                         (127 to 255 are not printable on a Linux terminal; however, 'rnd -u 128-255' will display some)\r\n\r\n\r\n#### Characters\r\n\r\n    rnd -c                                  output 255 random characters in the range ! to ~ (33 to 126) on the command-line\r\n    rnd -c 100                              100 characters in the range ! to ~\r\n    rnd -c 100 49 57                        100 characters in the range 1 to 9\r\n    rnd -c 672 97 122 \u003e test.txt            output a 672 byte file containing random characters in the range a to z\r\n    rnd -c 1k 97 122 \u003e test.txt             a 1kB (1024 bytes) file containing a to z (suffix is case insensitive)\r\n    rnd -c 10M 65 90 dump.txt               output a 10MB file called dump.txt containing characters A to Z, using a fast file dump\r\n                                                (much faster than redirecting output, BUT the generated data is NOT cryptographically secure [fast non-crypto random number generator used])\r\n\r\n    rnd -c 1k 0 255 | ent                   pipe 1kB of random characters to 'ent', an entropy checking program\r\n    rnd -c 1k 0 255 | nc 192.168.1.20 80    pipe 1kB of characters to 'netcat' to send to 192.168.1.20 on port 80 (test web server response)\r\n    rnd -c 1k 65 90 | nc 192.168.1.20 80    same as above, but with A to Z, triggering an HTTP 501 in Apache/2.4.16\r\n\r\n    rnd -p                                  generate a complex 32-character password (! to ~)\r\n\r\n\r\n#### Strings\r\n\r\n    rnd -s                                  255 instances of the text string 'lorem ipsum '\r\n    rnd -s 100                              100 instances of 'lorem ipsum '\r\n    rnd -s 100 \"junk text \"                 100 instances of any chosen text (if text contains spaces, the string must be double quoted)\r\n    rnd -s 10000 test dump.txt              output a file called dump.txt containing 10,000 instances of 'test' using a fast file dump\r\n                                                (some string patterns may corrupt when viewing in some editors)\r\n\r\n\r\n#### Bytes\r\n\r\n    rnd -b 82,78,68,13,10                   output 'RND\u003cCR\u003e\u003cLF\u003e'\r\n    rnd -b 82|78|68|13|10                   'RND\u003cCR\u003e\u003cLF\u003e' ('|' as an alternative delimiter, ';' also supported)\r\n    rnd -b 82,78,68,13,10 test.txt          'RND\u003cCR\u003e\u003cLF\u003e' to a file called text.txt\r\n    rnd -b 0-31                             0 to 31 control characters\r\n    rnd -b 0-255                            all ASCII 8-bit characters\r\n\r\n\r\n#### Unicode Bytes\r\n\r\n    rnd -u 2000-2001                        Unicode multi-byte output of characters 2000 and 2001\r\n    rnd -u 33-255                           display characters 33 to 255 (multi-byte: 892 bytes total)\r\n    rnd -u 256-1500                         display characters 256 to 1500 (correct rendering dependent on installed character sets)\r\n    rnd -u 8000-10000 \u003e chars.txt           redirect characters 8000 to 10000 to a file called chars.txt\r\n                                                (NotePad2 and Geany render and zoom such character files)\r\n    rnd -u 240-255 | nc localhost 80        pipe byte sequence to 'netcat' to send to localhost, triggering an HTTP 400 in Apache/2.4.16\r\n\r\n\r\n#### Version\r\n\r\n    rnd -v\r\n\r\n\r\n###### WARNING: For both of the fast file dump options, be careful of the amount of data generated in regards to the available memory of your PC (especially on 32-bit systems: ~3.25GB max; Windows: 1.8GB memory heap) and the age and performance of your hard-drive.\r\n\r\n\r\n## Other\r\n\r\n07 (BEL) is the bell code and usually creates audible noise in the Windows terminal. Low random characters can contain many 07. As well as noise, low characters can cause the terminal to lock or crash (especially on Windows).\r\n\r\nRND generates pseudo-random data via the Win32 Crypto API or */dev/urandom* on Linux (**except** when using the *fast file dump* options). Providing the relevant API is available on the target system, the generated data should be suitable for cryptographic purposes. However, if the API is not available, RND will switch to the Mersenne Twister algorithm. Despite the strengths of this algorithm, it is not suitable for cryptographic purposes.\r\n\r\n\r\n## Build\r\n\r\nInstall [FreeBASIC](http://www.freebasic.net/forum/viewforum.php?f=1) compiler (*fbc*).\r\n\r\n(RND can be compiled with either the x32 or x64 version of *fbc*.)\r\n\r\nEnsure GCC is available: `whereis gcc`\r\n\r\n\r\n### Linux\r\n\r\n```bash\r\n    make\r\n```\r\n\r\nor full process:\r\n\r\n```bash\r\n    make \u0026\u0026 make install\r\n```\r\n\r\n\r\n### Windows / Compile Manually\r\n\r\n```bash\r\n    fbc rnd.bas -gen gcc -O max\r\n```\r\n\r\n\r\n## Other\r\n\r\nOn both Linux and Windows, it's more convenient for RND to be available from any directory location via the *$PATH* system variable (rather than copying the executable file to the directory where needed).\r\n\r\n\r\n### Linux\r\n\r\n```bash\r\n    make install\r\n```\r\n\r\nOr move the *rnd* executable to a location such as */usr/local/bin* (location must be present in *$PATH*).\r\n\r\n\r\n### Windows\r\n\r\n*Windows key* + `Break` \u003e *Advanced* tab \u003e *Environmental Variables* button \u003e click *Path* line \u003e *Edit* button \u003e *Variable* value \u0026ndash; append at the end of existing line info: *C:\\directory\\path\\to\\rnd.exe\\;*\r\n\r\n\r\n## License\r\n\r\nRND is released under the [GPL v.3](https://www.gnu.org/licenses/gpl-3.0.html).\r\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftinram%2Frnd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftinram%2Frnd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftinram%2Frnd/lists"}