44444444444444444444444444444444444444444444444444444444444444444444444444444444
44444444444444444444444444┌──────────────────────────┐44444444444444444444444444
44444444444444444444444444│ BGGP4: R E P L I C A T E │44444444444444444444444444
44444444444444444444444444│ BGGP4: R E P L I C A T E │44444444444444444444444444
44444444444444444444444444│ BGGP4: R E P L I C A T E │44444444444444444444444444
44444444444444444444444444│ BGGP4: R E P L I C A T E │44444444444444444444444444
44444444444444444444444444└── 06.23.23 -> 09.08.23 ──┘44444444444444444444444444
44444444444444444444444444444444444444444444444444444444444444444444444444444444
44┌─Goal───────────────────────────────────────┐44444444444444444444444444444444
44│ │44444444444444444444444444444444
44│ Create the smallest self-replicating file. │──┐44444444444444444444444444444
44│ │44│44444444444444444444444444444
44└────────────────────────────────────────────┘44│44444444444444444444444444444
44444444444444444444444444444444444444444444444444│44444444444444444444444444444
444444444444444444444┌─Requirements─────────────────────────────┐444444444444444
444444444444444444444│ │444444444444444
444444444444444444444│ A valid submission will: │444444444444444
444444444444444444444│ - Produce exactly 1 copy of itself │444444444444444
444444444444444444444│ - Name the copy "4" │444444444444444
444444444444444444444│ - Not execute the copied file │444444444444444
444444444444444444444│ - Print, return, or display the number 4 │444444444444444
444444444444444444444│ │444444444444444
444444444444444444444└──────────────────────────────────────────┘444444444444444
4444444444444444444444444444444444444444444│444444444444444444444444444444444444
444444444444444444444444444┌────Example────┘444444444444444444444444444444444444
444444444444444444444444444│4444444444444444444444444444444444444444444444444444
4444444444444444┌─bggp.sh────┐44444444444444444444444444444444444444444444444444
4444444444444444│ │44444444444444444444444444444444444444444444444444
4444444444444444│ #!/bin/sh │44444444444444444444444444444444444444444444444444
4444444444444444│ │44444444444444444444444444444444444444444444444444
4444444444444444│ cp $0 4 │44444444444444444444444444444444444444444444444444
4444444444444444│ echo 4 │44444444444444444444444444444444444444444444444444
4444444444444444│ │44444444444444444444444444444444444444444444444444
4444444444444444└────────────┘44444444444444444444444444444444444444444444444444
4444444444444444444444│444444444444444444444444444444444444444444444444444444444
┌─────────────────────┘444444444444444444444444444444444444444444444444444444444
│4444444444444444444444444444444444444444444444444444444444444444444444444444444
│4┌─Output────────────────────────────────────────────────────────────────────┐4
│4│ │4
│4│ $ ls │4
└─│ bggp.sh │4
44│ │4
44│ $ ./bggp.sh │4
44│ 4 │4
44│ │4
44│ $ ls │4
44│ 4 bggp.sh │4
44│ │4
44│ $ sha256sum * │4
44│ 244848db0a4dd21b25bb1a05095b09f016bb01f00d9146b9a5b6af255bc7c6e8 4 │4
44│ 244848db0a4dd21b25bb1a05095b09f016bb01f00d9146b9a5b6af255bc7c6e8 bggp.sh │4
44│ │4
44│ $ ls -la bggp.sh │4
44│ -rwxrwxr-x 1 user user 25 Apr 4 04:44 bggp.sh │4
44│ │4
44└───────────────────────────────────────────────────────────────────────────┘4
4444444444444444444444444444444444444444444444444444444444│444444444444444444444
4444444444444444444444444444444444444444444444444444444444└──┐444444444444444444
4444444444┌─Scoring────────────────────────────────────┐44444│444444444444444444
4444444444│ │44444│444444444444444444
4444444444│ The smallest entry of each file type wins. │─────┘444444444444444444
4444444444│ │444444444444444444444444
4444444444└────────────────────────────────────────────┘444444444444444444444444
444444444444444444444444444444444│4444444444444444444444444444444444444444444444
┌─Enter────────────────────────────────────────────────────────────────────────┐
│ │
│ To enter, please fill out the following template and email bggp @ tmpout.sh │
---BEGIN BGGP4 ENTRY---
Name or handle:
Contact Info:
Website, twitter, other online presence:
Target File Type:
SHA256 Hash:
Target Environment (How do we run the file?):
Any additional info?:
Link to PoC video, screenshot, or console output, if any:
Link to writeup, if any:
File contents (base64 encoded please):
---END BGGP4 ENTRY---
│ │
└──────────────────────────────────────────────────────────────────────────────┘
4444444444444444444444444444│444444444444444444444444444444444444444444444444444
4444444444444444444444444444│444┌─Inspiration──────────────────────────────┐4444
4444444444444444444444444444│444│ │4444
4444444444444444444444444444└───│ Smallest self-replicating shell script │4444
44444444444444444444444444444444│ Smallest self-replicating COM │4444
44444444444444444444444444444444│ Smallest self-replicating Kernel Module │4444
44444444444444444444444444444444│ Smallest self-replicating core dump │4444
44444444444444444444444444444444│ Smallest self-replicating VxD │4444
44444444444444444444444444444444│ Smallest self-replicating Makefile │4444
44444444444444444444444444444444│ Smallest self-replicating UEFI App │4444
44444444444444444444444444444444│ Smallest self-replicating .pyc │4444
44444444444444444444444444444444│ Smallest self-replicating APK │4444
44444444444444444444444444444444│ Smallest self-replicating Gameboy ROM │4444
44444444444444444444444444444444│ Smallest self-replicating GIF │4444
44444444444444444444444444444444│ Smallest self-replicating MP4 │4444
44444444444444444444444444444444│ Smallest self-replicating Postgres query │4444
44444444444444444444444444444444│ Smallest self-replicating .tar.gz │4444
44444444444444444444444444444444│ Smallest self-replicating Word Document │4444
44444444444444444444444444444444│ │4444
44444444444444444444444444444444└──────────────────────────────────────────┘4444
444444444444444444444444444444444444444444444444444444│4444444444444444444444444
444444444444444┌─Links─────────────────────────────┐44│4444444444444444444444444
444444444444444│ │44│4444444444444444444444444
444444444444444│ https://binary.golf │──┘4444444444444444444444444
444444444444444│ github.com/binarygolf/bggp │4444444444444444444444444444
444444444444444│ @binarygolf@haunted.computer │4444444444444444444444444444
444444444444444│ [-]https://twitter.com/binarygolf │4444444444444444444444444444
444444444444444│ │4444444444444444444444444444
444444444444444└───────────────────────────────────┘4444444444444444444444444444
44444444444444444444444444444444444444444444444444444444444444444444444444444444
4444444444444444444 Flyer: @nico_n_art ││ Layout: @netspooky 4444444444444444444
44444444444444444444444444444444444444444444444444444444444444444444444444444444
[[ FAQ ]]
Q: Can I send more than one entry?
A: Yes
Q: Can I update my entry after I send it?
A: Yes, and we will score whichever entry you sent last
Q: Are Polyglot files allowed?
A: Yes, we will have a special section for most interesting files in this years
repo. Entries will be sorteded by file type, with polyglot file combinations
representing a single "type".
Example: PDF/EXE polyglot, PDF entry, and EXE entry would all be in their
own unique categories to score within.
Q: Can you please extend BGGP4 another two weeks?
A: Yes, BGGP4 will now end at 11:59pm America/Los_Angeles September 8th 2023