From 121ed94fe6473183baa3f33403f16e6862181fdd Mon Sep 17 00:00:00 2001 From: mehbark Date: Mon, 25 Nov 2024 14:59:20 -0500 Subject: [PATCH] space hash --- space-hash.rb | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 space-hash.rb diff --git a/space-hash.rb b/space-hash.rb new file mode 100644 index 0000000..91c3f1a --- /dev/null +++ b/space-hash.rb @@ -0,0 +1,31 @@ +require 'digest' + +def prompt(*args) + print(*args) + gets.chomp +end + +WHITESPACE = " \t\u200b\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000" + +def doit(message, regex, limit = 10) + return unless limit > 0 + + digest = Digest::SHA256.hexdigest message + if regex.match? digest + p message + puts digest + exit 0 + end + + WHITESPACE.each_char do |ws| + doit(message + ws, regex, limit - 1) + end +end + +message = prompt "Message: " +hash_regex = Regexp.new(prompt "Digest regex: ") + +doit(message, hash_regex) + +puts "i give up :(" +exit 1