[{"data":1,"prerenderedAt":21},["ShallowReactive",2],{"blog-detail:scalebit-zkctf-2024-guide":3},{"category":4,"article":5},null,{"slug":6,"category":7,"categoryLabel":8,"subcategoryLabel":9,"authorName":10,"title":11,"excerpt":12,"contentHtml":13,"coverUrl":14,"seoTitle":11,"seoDescription":15,"seoImageUrl":14,"publishedAt":16,"updatedAt":17,"readTime":18,"cover":14,"hasCover":19,"coverAlt":20},"scalebit-zkctf-2024-guide","product-updates","Product Updates","Announcements","ScaleBit","ScaleBit zkCTF 2024 Guide","Welcome to the forefront of blockchain innovation with our zkCTF contest! In this guide, we’ll navigate you through the registration process for the ScaleBit zkCTF 2024. Whether you’re a blockchain enthusiast or an aspiring developer, this challenge is your gateway to showcase your prowess in Zero-Knowledge technology. Let’s embark on this exciting journey together!","\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F86d48f905c37012730f8e2f542924aba.png\" alt=\"scalebit-zk-ctf-2024\" title=\"ScaleBit zkCTF 2024\">\u003C\u002Fp>\n\u003Cp>Welcome to the forefront of blockchain innovation with our zkCTF contest! In this guide, we’ll navigate you through the registration process for the \u003Cstrong>ScaleBit zkCTF 2024\u003C\u002Fstrong>. Whether you’re a blockchain enthusiast or an aspiring developer, this challenge is your gateway to showcase your prowess in Zero-Knowledge technology. Let’s embark on this exciting journey together!\u003C\u002Fp>\n\u003Ch2 id=\"1-Register-for-a-zkCTF-account-and-log-in\">1. Register for a zkCTF account and log in.\u003C\u002Fh2>\n\u003Cp>Open the zkCTF website link \u003Ca target=\"_blank\" rel=\"noopener\" href=\"https:\u002F\u002Fzkctf.scalebit.xyz\u002F\">https:\u002F\u002Fzkctf.scalebit.xyz\u002F\u003C\u002Fa>, then click the registration button in the top right corner.\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F3d311363cca5c5022070600ada1399ea.png\" alt=\"scalebit-zk-ctf-2024-1\" title=\"ScaleBit zkCTF 2024 Step1\">\u003C\u002Fp>\n\u003Cp>Then, complete the registration process according to the requirements in the following image. Please use your real email address for registration.\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F80811903ca5ecd46dda89ff016d0f1ae.png\" alt=\"scalebit-zk-ctf-2024-2\" title=\"ScaleBit zkCTF 2024 Step2\">\u003C\u002Fp>\n\u003Cp>After completing the registration, a verification email will be sent to your inbox. Click on the link in the email to complete the verification process. Then, you can use this account to log in.\u003C\u002Fp>\n\u003Ch2 id=\"2-Create-Join-a-team\">2. Create (Join) a team\u003C\u002Fh2>\n\u003Cp>As this competition allows team participation, participants can join an existing team or create their own (as shown in the following image).\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F033211b5cbd90303a6f92a0862d46fb5.png\" alt=\"scalebit-zk-ctf-2024-3\" title=\"ScaleBit zkCTF 2024 Step3\">\u003C\u002Fp>\n\u003Cp>If you don’t want to join a team immediately after registration, you can also click the ‘Teams’ button in the top right corner of the website to proceed later.\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F0d4bfde51dc64a103f094d5b76ff8f26.png\" alt=\"scalebit-zk-ctf-2024-4\" title=\"ScaleBit zkCTF 2024 Step4\">\u003C\u002Fp>\n\u003Ch3 id=\"1-Join-a-team\">(1) Join a team\u003C\u002Fh3>\n\u003Cp>To join a team, you need to enter the correct team name and team password. Each team can have a maximum of two players.\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F8cdfec53a1267b86ad756dd4fcda4ea9.png\" alt=\"scalebit-zk-ctf-2024-5\" title=\"ScaleBit zkCTF 2024 Step5\">\u003C\u002Fp>\n\u003Ch3 id=\"2-Create-a-team\">(2) Create a team\u003C\u002Fh3>\n\u003Cp>To create a team, set the team name and team password. Share this information with your teammates so they can join your team.\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002Fadd1cf941d78e6a695b6918e8a568dfb.png\" alt=\"scalebit-zk-ctf-2024-6\" title=\"ScaleBit zkCTF 2024 Step6\">\u003C\u002Fp>\n\u003Cp>After joining or creating a team, you can see the team members and their scores\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002Fc6a74d4c195b29229f8b15193b9d338b.png\" alt=\"scalebit-zk-ctf-2024-7\" title=\"ScaleBit zkCTF 2024 Step7\">\u003C\u002Fp>\n\u003Cp>The four buttons in the following image can be used to edit team information, select a team leader, obtain a team-sharing link, and delete the team.\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F7a7d861bcdd8349bcdb8ae091f6698eb.png\" alt=\"scalebit-zk-ctf-2024-8\" title=\"ScaleBit zkCTF 2024 Step8\">\u003C\u002Fp>\n\u003Cp>Note that once you have earned points, you cannot disband the team on your own. If you need to disband the team, please contact the staff.\u003C\u002Fp>\n\u003Ch2 id=\"3-Environmental-Configuration\">3. Environmental Configuration\u003C\u002Fh2>\n\u003Cp>\u003Cstrong>The following operation steps can be viewed in the \u003Ca target=\"_blank\" rel=\"noopener\" href=\"https:\u002F\u002Fdocs.circom.io\u002Fgetting-started\u002Finstallation\u002F\">Installation - Circom 2 Documentation\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch3 id=\"3-1-Dependency-Installation\">3.1 Dependency Installation\u003C\u002Fh3>\n\u003Ch4 id=\"（1）Rust\">（1）Rust\u003C\u002Fh4>\n\u003Cp>The circom tool uses an editor written in Rust. To make Rust available on your system, you can install rustup. If you are using Linux or macOS, please open the terminal and enter the following command:\u003C\u002Fp>\n\u003Cpre class=\"line-numbers language-none\">\u003Ccode class=\"language-none\">curl --proto '=https' --tlsv1.2 https:\u002F\u002Fsh.rustup.rs -sSf | sh\u003C\u002Fcode>\u003C\u002Fpre>\n\n\u003Cp>If you are using Windows, please go to the following website and install according to the instructions:\u003C\u002Fp>\n\u003Cpre class=\"line-numbers language-none\">\u003Ccode class=\"language-none\">https:\u002F\u002Fwww.rust-lang.org\u002Fzh-CN\u002Ftools\u002Finstall\u003C\u002Fcode>\u003C\u002Fpre>\n\n\u003Ch4 id=\"（2）Installing-netcat-nc\">（2）Installing netcat(nc)\u003C\u002Fh4>\n\u003Cp>For Linux systems, install using the following command:\u003C\u002Fp>\n\u003Cpre class=\"line-numbers language-none\">\u003Ccode class=\"language-none\">yum install -y nc\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>For Windows systems, install according to the following tutorial:\u003C\u002Fp>\n\u003Cpre class=\"line-numbers language-none\">\u003Ccode class=\"language-none\">https:\u002F\u002Fblog.csdn.net\u002Fmuriyue6\u002Farticle\u002Fdetails\u002F107127217\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4 id=\"（3）Others\">（3）Others\u003C\u002Fh4>\n\u003Cp>The Node.js version should preferably be 10 or above, and you also need to install a package management tool such as Npm or Yarn.\u003C\u002Fp>\n\u003Ch3 id=\"3-2-Installing-Circom\">3.2 Installing Circom\u003C\u002Fh3>\n\u003Ch4 id=\"（1）First-clone-the-circom-repository-to-your-local-machine\">（1）First, clone the circom repository to your local machine\u003C\u002Fh4>\n\u003Cpre class=\"line-numbers language-none\">\u003Ccode class=\"language-none\">git clone https:\u002F\u002Fgithub.com\u002Fiden3\u002Fcircom.git\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4 id=\"（2）Enter-the-Circom-directory-and-use-cargo-build-to-compile\">（2）Enter the Circom directory and use cargo build to compile\u003C\u002Fh4>\n\u003Cpre class=\"line-numbers language-none\">\u003Ccode class=\"language-none\">cargo build --release\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>This command will take about three minutes to complete. Once successfully downloaded, it will generate the circom binary file in the directory target\u002Frelease.\u003C\u002Fp>\n\u003Ch4 id=\"（3）Install-the-binary-file\">（3）Install the binary file\u003C\u002Fh4>\n\u003Cp>Note: Make sure you are still in the circom directory when you execute this command.\u003C\u002Fp>\n\u003Cpre class=\"line-numbers language-none\">\u003Ccode class=\"language-none\">cargo install --path circom\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>The above command will install the circom binary file into the directory $HOME\u002F.cargo\u002Fbin.\u003C\u002Fp>\n\u003Ch4 id=\"（4）Verification\">（4）Verification\u003C\u002Fh4>\n\u003Cp>Now, you should be able to use the –help flag to view all options of the executable file:\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F079134cecf261f5431368353f80a717b.png\" alt=\"scalebit-zk-ctf-2024-9\" title=\"ScaleBit zkCTF 2024 Step9\">\u003C\u002Fp>\n\u003Ch3 id=\"3-3-Installing-snarkjs\">3.3 Installing snarkjs\u003C\u002Fh3>\n\u003Cp>snarkjs is an npm package that contains code for generating and verifying ZK proofs from artifacts produced by circom. You can install snarkjs using the following command:\u003C\u002Fp>\n\u003Cpre class=\"line-numbers language-none\">\u003Ccode class=\"language-none\">npm install -g snarkjs\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3 id=\"3-4-Metamask-Configuration\">3.4.Metamask Configuration\u003C\u002Fh3>\n\u003Cp>Metamask can be downloaded in the Chrome or Edge extensions\u003C\u002Fp>\n\u003Ch4 id=\"1）Go-to-the-Metamask-page-and-click-on-the-network-option-in-the-top-left-corner\">(1）Go to the Metamask page and click on the network option in the top left corner\u003C\u002Fh4>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002Fad106fb159ce3de37540387e8bb740c6.png\" alt=\"scalebit-zk-ctf-2024-10\" title=\"ScaleBit zkCTF 2024 Step10\">\u003C\u002Fp>\n\u003Ch4 id=\"2）Click-on-‘Add-Network’\">(2）Click on ‘Add Network’\u003C\u002Fh4>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002Fe1c2cb8145cdb2eaa0c515aa71a062c8.png\" alt=\"scalebit-zk-ctf-2024-11\" title=\"ScaleBit zkCTF 2024 Step11\">\u003C\u002Fp>\n\u003Ch4 id=\"3）Choose-‘Add-Network-Manually’-at-the-bottom\">(3）Choose ‘Add Network Manually’ at the bottom\u003C\u002Fh4>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F14eee4bee7b29b9c07fa3bdfdc06df88.png\" alt=\"scalebit-zk-ctf-2024-12\" title=\"ScaleBit zkCTF 2024 Step12\">\u003C\u002Fp>\n\u003Ch4 id=\"4）Enter-the-correct-parameters-as-shown-in-the-image-below-then-click-save\">(4）Enter the correct parameters as shown in the image below, then click save.\u003C\u002Fh4>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002Fc6c861f22c82aa278ff313f9b69dbf65.png\" alt=\"scalebit-zk-ctf-2024-13\" title=\"ScaleBit zkCTF 2024 Step13\">\u003C\u002Fp>\n\u003Ch4 id=\"5）You-can-switch-to-this-network-on-the-main-page\">(5）You can switch to this network on the main page.\u003C\u002Fh4>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002Ff09c895457685eebc85f347282a578ea.png\" alt=\"scalebit-zk-ctf-2024-14\" title=\"ScaleBit zkCTF 2024 Step14\">\u003C\u002Fp>\n\u003Ch2 id=\"4-Click-the-challenge-button-to-enter-the-question-page\">4. Click the challenge button to enter the question page.\u003C\u002Fh2>\n\u003Cp>The document provides ‘checkin’ as an example of problem-solving.\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002Fda90a0b7f713f6b731051b4517aa9b45.png\" alt=\"scalebit-zk-ctf-2024-15\" title=\"ScaleBit zkCTF 2024 Step15\">\u003C\u002Fp>\n\u003Ch2 id=\"5-Checkin-Solving\">5.Checkin Solving\u003C\u002Fh2>\n\u003Cp>For reference on using ZK to verify circuits, refer to the \u003Ca target=\"_blank\" rel=\"noopener\" href=\"https:\u002F\u002Fdocs.circom.io\u002Fgetting-started\u002Fproving-circuits\u002F\">Proving circuits with ZK - Circom 2 Documentation\u003C\u002Fa> document.\u003Cbr>‘checkin’ is a circuit written in circom. Click on ‘checkin’.\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F04d6ef0c2f7eb1ba7113ea5e609a73d5.png\" alt=\"scalebit-zk-ctf-2024-16\" title=\"ScaleBit zkCTF 2024 Step16\">\u003C\u002Fp>\n\u003Cp>This will display detailed information about the ‘checkin’ challenge, as follows:\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F9bac0370099e8130d19eb1df61fef96a.png\" alt=\"scalebit-zk-ctf-2024-17\" title=\"ScaleBit zkCTF 2024 Step17\">\u003C\u002Fp>\n\u003Cp>This competition uses a custom RPC chain: \u003Ca target=\"_blank\" rel=\"noopener\" href=\"http:\u002F\u002F47.76.89.7:8545\u002F\">http:\u002F\u002F47.76.89.7:8545\u002F\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Test coin faucet address: \u003Ca target=\"_blank\" rel=\"noopener\" href=\"http:\u002F\u002F47.76.89.7:8080\u002F\">http:\u002F\u002F47.76.89.7:8080\u002F\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>You can view detailed information about the challenge at \u003Ca target=\"_blank\" rel=\"noopener\" href=\"https:\u002F\u002Fgithub.com\u002Fscalebit\u002FzkCTF-sample1.git\">https:\u002F\u002Fgithub.com\u002Fscalebit\u002FzkCTF-sample1.git\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>The detailed solution steps are as follows:\u003C\u002Fp>\n\u003Ch3 id=\"（1）Start\">（1）Start\u003C\u002Fh3>\n\u003Cp>First, execute the ‘nc’ command, nc 47.76.89.7 20000.\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002Fc0b627a23c84fcf2f4f4346992f053ae.png\" alt=\"scalebit-zk-ctf-2024-18\" title=\"ScaleBit zkCTF 2024 Step18\">\u003C\u002Fp>\n\u003Ch3 id=\"（2）Obtain-an-Account\">（2）Obtain an Account\u003C\u002Fh3>\n\u003Cp>Select option 1 to get an external account for deploying contracts.\u003C\u002Fp>\n\u003Cp>The account address and token will be returned.\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F4b7549d46136549b26b9747436241f6a.png\" alt=\"scalebit-zk-ctf-2024-19\" title=\"ScaleBit zkCTF 2024 Step19\">\u003C\u002Fp>\n\u003Ch3 id=\"（3）-Deploy-the-Contract\">（3） Deploy the Contract\u003C\u002Fh3>\n\u003Cp>Go to the test coin faucet website to get some test coins for the generated account, then execute the ‘nc’ command again, select option 2, enter the previously generated token to deploy the contract.\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002Fb072e0963c388c64026b6600aa27dfcc.png\" alt=\"scalebit-zk-ctf-2024-20\" title=\"ScaleBit zkCTF 2024 Step20\">\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F657a871ac59249555e2f983886c9f9f6.png\" alt=\"scalebit-zk-ctf-2024-21\" title=\"ScaleBit zkCTF 2024 Step21\">\u003C\u002Fp>\n\u003Ch3 id=\"（4）-View-the-Source-Code\">（4） View the Source Code\u003C\u002Fh3>\n\u003Cp>Execute the ‘nc’ command again, select option 4, to view the contract source code.\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F9d27311b3dfb864264fd39b7c14857c9.png\" alt=\"scalebit-zk-ctf-2024-22\" title=\"ScaleBit zkCTF 2024 Step22\">\u003C\u002Fp>\n\u003Ch3 id=\"（5）Solve-the-Challenge\">（5）Solve the Challenge\u003C\u002Fh3>\n\u003Cp>Go to the GitHub repository to view the given challenge information.\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F9fc7e37027df92370e9ab5347480b061.png\" alt=\"scalebit-zk-ctf-2024-23\" title=\"ScaleBit zkCTF 2024 Step23\">\u003C\u002Fp>\n\u003Cp>There are three files given:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>a circom circuit,\u003C\u002Fli>\n\u003Cli>a solidity verification contract,\u003C\u002Fli>\n\u003Cli>a zkey.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>This challenge requires us to call the ‘verify’ function in the checkin.sol contract with two correct parameters for successful verification.\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F10cac673dcd93fd1e001a71f79f8a703.png\" alt=\"scalebit-zk-ctf-2024-24\" title=\"ScaleBit zkCTF 2024 Step24\">\u003C\u002Fp>\n\u003Cp>According to the \u003Ca target=\"_blank\" rel=\"noopener\" href=\"https:\u002F\u002Fdocs.circom.io\u002Fgetting-started\u002Fproving-circuits\u002F\">Proving circuits with ZK - Circom 2 Documentation\u003C\u002Fa>, you can generate the parameters required for the solidity verification contract with the ‘snarkjs generatecall’ command. But this requires us to generate public.json and proof.json, which in turn require the zkey and wtns files. The zkey is already provided, so we need to generate the wtns file.\u003C\u002Fp>\n\u003Cp>According to the \u003Ca target=\"_blank\" rel=\"noopener\" href=\"https:\u002F\u002Fdocs.circom.io\u002Fgetting-started\u002Fcomputing-the-witness\u002F\">Computing the witness - Circom 2 Documentation\u003C\u002Fa>, you first need to compile the circom file, then go to the js folder, edit an input parameter json file, and then call the command ‘node generate_witness.js checkin.wasm input.json witness.wtns’ to generate the wtns file. Since the checkin challenge has no restrictions, we can use any two pieces of data, but note that we use strings, not numbers. The specific steps are as follows:\u003C\u002Fp>\n\u003Cp>\u003Cstrong>First step: Compile\u003C\u002Fstrong>\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F616358de623fdc94d9a6acb24835bd8f.png\" alt=\"scalebit-zk-ctf-2024-25\" title=\"ScaleBit zkCTF 2024 Step25\">\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F646985550e44bbc0f2cef68ce7d6c4dc.png\" alt=\"scalebit-zk-ctf-2024-26\" title=\"ScaleBit zkCTF 2024 Step26\">\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Second step: Compute the witness\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>my input.json:\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F2f7938862c70d29e1029a358ae81d0c4.png\" alt=\"scalebit-zk-ctf-2024-27\" title=\"ScaleBit zkCTF 2024 Step27\">\u003C\u002Fp>\n\u003Cpre class=\"line-numbers language-none\">\u003Ccode class=\"language-none\">node generate_witness.js checkin.wasm input.json witness.wtns\u003C\u002Fcode>\u003C\u002Fpre>\n\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F97fb60e2f1b004474e62bc1352f7b3ea.png\" alt=\"scalebit-zk-ctf-2024-28\" title=\"ScaleBit zkCTF 2024 Step28\">\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Third step: Generate proof.json and public.json\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Since the contract verification only needs _proof and _pubSignals, we use plonk instead of groth16 here\u003C\u002Fp>\n\u003Cpre class=\"line-numbers language-none\">\u003Ccode class=\"language-none\">snarkjs plonk prove checkin.zkey witness.wtns proof.json public.json\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F85e45b97c623bb5bc049aa0fec2867c4.png\" alt=\"scalebit-zk-ctf-2024-29\" title=\"ScaleBit zkCTF 2024 Step29\">\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Fourth step: Generate proof.json and public.json\u003C\u002Fstrong>\u003Cbr>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F2b34817cd4243c113defce4bbc61b5e5.png\" alt=\"scalebit-zk-ctf-2024-30\" title=\"ScaleBit zkCTF 2024 Step30\">\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Fifth step: Interact with the contract through Remix and Metamask, calling the function\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Select ‘Injected Provider’ for the environment, which will automatically pop up the Metamask window for confirmation and connection to the wallet\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F51f442d8e4e9383c2032076d697a4f29.png\" alt=\"scalebit-zk-ctf-2024-31\" title=\"ScaleBit zkCTF 2024 Step31\">\u003C\u002Fp>\n\u003Cp>Enter the generated contract address in the red box, click ‘At Address’, and you can see the contract interaction interface under ‘Deployed Contracts’\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002Fcba252244795304a3c0a25efaaa8c8ae.png\" alt=\"scalebit-zk-ctf-2024-32\" title=\"ScaleBit zkCTF 2024 Step32\">\u003C\u002Fp>\n\u003Cp>Enter the two generated parameters, click the yellow ‘verify’ button, a Metamask popup will appear, confirm the transaction (make sure your account has test coins when calling)\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F5acfd008c3f6a104ef492b54e50966a3.png\" alt=\"scalebit-zk-ctf-2024-33\" title=\"ScaleBit zkCTF 2024 Step33\">\u003C\u002Fp>\n\u003Cp>Wait for the transaction to complete, click ‘isSolved’ to check the flag status. If it’s true, it means the call was successful, and you can get the flag\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F83aeaa3b79102b0fa1c2464c798f89c2.png\" alt=\"scalebit-zk-ctf-2024-34\" title=\"ScaleBit zkCTF 2024 Step34\">\u003C\u002Fp>\n\u003Ch3 id=\"6）After-successfully-solving-the-challenge-execute-the-‘nc’-command-again-select-option-3-enter-the-token-generated-in-the-first-step-and-obtain-the-flag\">(6）After successfully solving the challenge, execute the ‘nc’ command again, select option 3, enter the token generated in the first step, and obtain the flag\u003C\u002Fh3>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F6f39eb655ecb3f5b5668148b4417dabe.png\" alt=\"scalebit-zk-ctf-2024-35\" title=\"ScaleBit zkCTF 2024 Step35\">\u003C\u002Fp>\n\u003Ch3 id=\"（7）Finally-submit-the-flag-on-the-zkCTF-website-to-get-points\">（7）Finally, submit the flag on the zkCTF website to get points\u003C\u002Fh3>\n\u003Cp>\u003Cimg src=\"\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002Ff2921a5b8f721ee4dead2b6b64fc8459.png\" alt=\"scalebit-zk-ctf-2024-36\" title=\"ScaleBit zkCTF 2024 Step36\">\u003C\u002Fp>\n\u003Ch2 id=\"6-Continue-Solving-Problems\">6.Continue Solving Problems\u003C\u002Fh2>\n\u003Cp>The solution steps for subsequent challenges are similar to the sample challenge ‘checkin’, for your reference. Good luck to all participants!\u003C\u002Fp>\n\u003Cp>Thank you for following our guide on registering and participating in the ScaleBit zkCTF 2024. We’re excited to see the innovative solutions you’ll bring to the competition. Don’t hesitate – take the leap, register now, and be part of this cutting-edge blockchain journey. Good luck, and see you at the contest!\u003C\u002Fp>\n\u003Cp>\u003Ca target=\"_blank\" rel=\"noopener\" href=\"https:\u002F\u002Fzkctf.scalebit.xyz\u002F\">Register zkCTF 2024 NOW\u003C\u002Fa>\u003Cbr>\u003Ca target=\"_blank\" rel=\"noopener\" href=\"https:\u002F\u002Ft.me\u002FScaleBitAudit\">Live Support in Telegram Group\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch2 id=\"About-ScaleBit\">About ScaleBit\u003C\u002Fh2>\n\u003Cp>ScaleBit, a subsidiary brand of BitsLab, is a blockchain security team that provides security solutions for Mass Adoption of Web3. With expertise in scaling technologies like blockchain interoperability and zero-knowledge proofs, we provide meticulous and cutting-edge security audits for blockchain applications. The team comprises security professionals with extensive experience in both academia and enterprise. Our mission is to provide security solutions for Web3 Mass Adoption and make security accessible for all.\u003C\u002Fp>\n\u003Cp>\u003Ca target=\"_blank\" rel=\"noopener\" href=\"https:\u002F\u002Fwww.scalebit.xyz\u002F?type=getAudit\">Requests a quote\u003C\u002Fa>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Website: \u003Ca target=\"_blank\" rel=\"noopener\" href=\"https:\u002F\u002Fwww.scalebit.xyz\u002F\">https:\u002F\u002Fwww.scalebit.xyz\u002F\u003C\u002Fa>\n\u003C\u002Fli>\n\u003Cli>Twitter: \u003Ca target=\"_blank\" rel=\"noopener\" href=\"https:\u002F\u002Ftwitter.com\u002Fscalebit_\">https:\u002F\u002Ftwitter.com\u002Fscalebit_\u003C\u002Fa>\n\u003C\u002Fli>\n\u003C\u002Ful>","\u002Fmedia\u002Fscalebit\u002F2024\u002F01\u002F86d48f905c37012730f8e2f542924aba.png","Welcome to the forefront of blockchain innovation with our zkCTF contest! In this guide, we’ll navigate you through the registration process for the ScaleBit zkCTF 2024. Whether you’re a blockchain enthusiast or an aspiring developer, this challenge is your gateway to showcase your prowess in Zero-Knowledge technology.","2024-01-22T03:15:00Z","2026-08-19T16:35:04Z","7 min read",true,"ScaleBit zkCTF 2024 Guide cover image",1792473988927]