An open API service indexing awesome lists of open source software.

https://github.com/anubhav11156/pharaonik

Smart Contract Security Auditing Exercises for Cairo
https://github.com/anubhav11156/pharaonik

cairo-lang security-audit smat-contracts starknet

Last synced: 4 months ago
JSON representation

Smart Contract Security Auditing Exercises for Cairo

Awesome Lists containing this project

README

        

# Pharaonik
![readme_banner](https://github.com/anubhav11156/Pharaonik/assets/86551390/301576ba-c612-43d9-a392-ff1cc4ec025d)
![readme_banner_2](https://github.com/anubhav11156/Pharaonik/assets/86551390/0acdad19-0308-4718-9c13-04a648a156cc)

Set of exercises designed to help you develop, learn, and refine your skills in security audits of Cairo smart contracts. The problems are inspired by real-world smart contract exploits and insights gleaned from security audit reports. By working through these exercises, you'll gain proficiency in identifying and mitigating vulnerabilities in Cairo contracts.

The exercises can be of three difficulty levels: Easy, Medium, and Hard. Each problem is also associated with relevant tags to guide you. These tags might indicate the specific vulnerability the exercise focuses on (e.g., reentrancy, access control, etc), the required skills (e.g., arithmetic overflows, gas optimization, etc). To ensure effective learning, each exercise follows a comprehensive format, providing background information/context, clearly defined objective, and instructions.

## Install and Build
### Dependencies
![Static Badge](https://img.shields.io/badge/Scarb-gray?style=flat-square)![Static Badge](https://img.shields.io/badge/%20v2.5.4-blue?style=flat-square) ![Static Badge](https://img.shields.io/badge/%20Starknet%20Foundry-gray?style=flat-square)![Static Badge](https://img.shields.io/badge/%20v0.18.0-blue?style=flat-square)
- [Install Scarb](https://docs.swmansion.com/scarb/download.html)
- [Install Starknet-foundry](https://github.com/foundry-rs/starknet-foundry)
### Installation
1. Clone the repository
```bash
git clone [email protected]:anubhav11156/Pharaonik.git
```
2. Update the dependencies
```bash
scarb update
```
3. Build the modules
```bash
scarb build
```
## Excercises
- [Excercise0](https://github.com/anubhav11156/Pharaonik/tree/main/src/excercises/excercise0)
- [Excercise1](https://github.com/anubhav11156/Pharaonik/tree/main/src/excercises/excercise1)

## Getting Help
- Go through the Starknet [Cairo Book](https://book.cairo-lang.org/)
- Check the [Staknet Foundry Book](https://foundry-rs.github.io/starknet-foundry/)
- Join the [Starknet Discord](https://discord.com/invite/qypnmzkhbc)
- Need more help? [Contact me](https://twitter.com/subsix_)
## Disclaimer
- The Cairo code, practices, and patterns provided in this repository are for educational purposes only. They are not intended for use in production environments.
- This repo is under constant upgrade, more excersises are being added!