This is the cops' post. The robbers' is here.
You make a program and a regex.
For most inputs, one of the following happens:
- the regex doesn't match, and the program returns a falsey value
- the regex doesn't match, and the program returns a truthy value
- the regex matches, and the program returns a truthy value
But for one (or more) input, the regex matches, but the program returns a falsy value.
You should try to keep this input hidden. Robbers will try to find an input where the regex matches, but the program returns a falsy value.
Post your program and your regex, as well as your language name, byte count of the program, regex flavor, and byte count of the regex.
If a robber finds an input where the regex matches, but the program returns a falsy value, even if it wasn't the intended input your program is considered cracked, and you edit in a link to the robber's crack.
If nobody has cracked your program & regex after a week, then edit in that your submission is safe and is therefore not eligible for cracking. Also edit in the intended input. The shortest (program bytes + regex bytes) non-cracked submission wins.
Let's say your regex is (all of the flavors):
And your program is (JS):
Then a valid crack would be
0, because the regex matches
0 is falsey.
Delimiters don't count in the byte count.
I can't enforce the banning of hash functions with rules, but please don't use SHA/RSA or anything that is unfair to the robbers