Challenge 1: Checkin
In this first challenge, your task is to interact with a basic Move contract. The contract defines a Flag
object, which you need to retrieve by calling a specific function.
The contract mints a new flag and transfers it to your account. Your goal is to call the function, capture the flag, and then submit the object ID to verify your success.
This challenge is designed to be an easy introduction, guiding you through the process of interacting with the blockchain, calling functions, and understanding the basics of flag capture.
Deployed Contract Address:
Package: 0xed1bbeb067ea89b70859641557700997a39bf749b5eedf91e221d56a5d961622
Contracts
checkin.move
module ctf::checkin {
public struct Flag has key, store {
id: UID,
user: address
}
public entry fun get_flag(ctx: &mut TxContext) {
transfer::public_transfer(Flag {
id: object::new(ctx),
user: tx_context::sender(ctx)
}, tx_context::sender(ctx));
}
}
Related Articles
In this challenge, you must use the IOTA CLI to interact with the blockchain. This set of articles will help you set up your environment and call a deployed contract:
Good luck in capturing your first flag!
Feedback Form