From 13c4a755e66cbff0ac0c65eece015bddbe152ed2 Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Mon, 24 Mar 2025 01:30:53 +0800 Subject: Use a WebAssembly solver --- challenge.html | 114 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 114 insertions(+) create mode 100644 challenge.html (limited to 'challenge.html') diff --git a/challenge.html b/challenge.html new file mode 100644 index 0000000..ea18794 --- /dev/null +++ b/challenge.html @@ -0,0 +1,114 @@ + + + + + + Proof-of-work challenge + + + + +
+
+

Proof-of-work challenge

+
+ +
+

This site is protected by Powxy{{ if .Global.Version }} {{ .Global.Version }}{{ end }}.

+

You must complete this proof-of-work challenge before you can access this site.

+
+ +
+

Select a nonce no longer than 32 bytes, such that when it is appended to the decoded form of the challenge identifier, and the entire result is hashed with SHA-256, the first {{ .Global.NeedBits }} bits of the SHA-256 hash are all zeros. Within one octet, higher bits are considered to come before lower bits.

+

In other words, find an nonce NN with |N|32B\lvert N\rvert \le 32\,\mathrm{B}, such that SHA256(IN)<2{{ .Global.NeedBitsReverse }}\mathrm{SHA256}(I \,\|\, N) < 2^{{{ .Global.NeedBitsReverse }}} in big endian, where II is the identifier provided below.

+ + +
+ +
+
+

Encode your selected nonce in base64 and submit it below.

+

Please note that if your submission is successful, you will be given a cookie that will allow you to access this site for a period of time without having to complete the challenge again. By pressing the submit button, you agree to be given cookies for this purpose.

+ + + +
+
+ + {{- if .Message }} +
+

{{ .Message }}

+
+ {{- end }} + +
+

JavaScript seems to be disabled. You must solve the challenge externally.

+
+ +
+

A C implementation of the challenge solver is available.

+
+
+ + + + -- cgit v1.2.3