Hi, I'm M. Rayhan Farrukh

I also go by my online handle Grwna

I’m a third-year Informatics Engineering bachelor student at Bandung Institute of Technology with an interest in Software Engineering, Cybersecurity and Low-level Programming.

Profile

My Skills

Cybersecurity

Focusing on offensive security, I'm actively sharpening my skills through CTFs

CryptographyPWNWeb Exploitation
Systems Programming

I find joy in understanding the inner workings of software components, and how i can create my own

CRustAssemblyLinux
Web Dev

I'm interested in fullstack development, but focusing in backend and the design of server-side architecture

DockerPythonTypeScriptMySQLReactNext.js

Tools I Use

Python
C
C++
HTML
CSS
React
Next.js
Docker
Azure
Github
VSCode
Linux
Windows 11

Experience

Backend Engineer

Feb. 2026 - Present
American Association of Petroleum Geologists ITB

Worked on the backend of the Wildcat AAPG ITB competition website

Laboratory Assistant

Sept. 2025 - Present
Distributed Systems Laboratory STEI ITB

Design and manage assignment projects for Informatics Students at STEI ITB. Including Operating Systems Course.

Academic Division Staff

Jul. 2025 - Present
Himpunan Mahasiswa Informatika ITB

Head of Fundraising Department

May. 2025 - Present
Keluarga Mahasiswa Jambi ITB

Lead a team of four staff members, to gather funds for events and operational purposes of Keluarga Mahasiswa Jambi ITB.

Competition and Community Staff

Dec. 2024 - Jun. 2025
Himpunan Mahasiswa Informatika ITB

Competition and Community Intern

Oct. 2024 - Dec. 2024
Himpunan Mahasiswa Informatika ITB

Head of Fundraising Department

Apr. 2024 - Apr. 2025
Ganesha Fun Day ITB 2025

Managed entrepreneurship and sponsorship division with a total of 9 members to gather funds for GFD event through merch sale, ticket sale, and sponsorship.

Entrepreneurship Staff

Jun. 2023 - Feb. 2024
Ganesha Fun Day ITB 2024

Worked as the sole staff for fundraising division. Responsible for supervising on-site merch sale booth.

Projects I've Done

SiapbOSku

SiapbOSku

32-bit operating system with separation between kernel and user land. It uses a custom EXT2 filesystem, with multitasking capabilities, and a fully working shell

Cx86 AssemblyKernel DevelopmentFilesystem Development (EXT2)
ASM HTTP Server

ASM HTTP Server

HTTP server written entirely in x86 assembly. The server can handle multiple connectiens simultaneously using a forking model for each client request. It also serves various filetypes

x86 AssemblyCNginxSocket Programming
Mandelbrot Generator

Mandelbrot Generator

Mandelbrot set generator that uses CPU and GPU parallelization to achieve high speed generation

C++OpenMPCUDA
Bitwise Multiplication Calculator

Bitwise Multiplication Calculator

Multiplication calculator that is written entirely using bitwise operators. Can handle numbers up to 10^1.000.000 in a reasonable time

CNumber Theoretic TransformBitwise Programming
CTF Challenge Repository

CTF Challenge Repository

Collection of CTF challenges i authored for personal learning as well as various events

Digital ForensicsCryptographyReverse Engineering
Vigenere Cipher Cracker

Vigenere Cipher Cracker

Cracker for vigenere cipher that utilizes Dynamic Programming for Index of Coincidence calculation to efficiently solve a vigenere key written in Python

PythonCryptographyDynamic Programming
TCP over UDP Chat Application

TCP over UDP Chat Application

Python chat app with client and server application to demonstrate an implementation of TCP over UDP

PythonSocket ProgrammingComputer Networking
Rush Hour Puzzle Solver

Rush Hour Puzzle Solver

Java desktop application of solver for Rush Hour Puzzle. Uses various pathfinding algorithms to efficiently find a solution for the puzzle

JavaJavaFXPathfinding
Little Alchemy Recipe Finder

Little Alchemy Recipe Finder

Website that allows searching for recipes of items in Little Alchemy 2

GolangNextJSDockerSearch Algorithms
SongSmart

SongSmart

Website that lets you find a song's name by it's tune and albums by their cover art

NextJSPythonImage Information RetirevalMusic Information Retireval

My Writing

Arch Linux Installation Guide on VirtualBox

Guide on instaling Arch Linux on a VirtualBox without Archinstall. Besides OS installation, i also went over some extra stuff to make the OS more suitable for a daily driver

Bahasa IndonesiaLinuxVirtualBox

Attack on the Vigenère Cipher Key Through Index of Coincidence Optimization Based on Dynamic Programming

Analysis on the algorithmic speedup of using Dynamic Programming in the Index of Coincidence calculation in the implementation of Vigenere Cipher's key solver. In the paper, i compared the efficiency and effectivity on various plaintext sizes

EnglishAlgorithmic StrategyCryptography

Analyzing Computational Complexity of Popular Cryptographic Algorithms to Determine the Most Efficient Cryptosystem

Analyzing three different Cryptographic Algorithms, RSA, ECC and AES to compare their efficiency on different sizes of plaintext using computational complexity evaluation and empirical data from implementations of such algorithms

EnglishCryptographyDiscrete MathematicsElliptic CurvesRSAAES

Application of Linear Algebra for Optimizing Collision Detection in Precision Parry-Based Combat Systems for Sekiro-like Games

In this paper i explored optimizations of collision detection algorithms which utilizes Linear Algebra. Algorithms included in the paper are Axis-Aligned Bounding Box (AABB), and Separating Axis Theorem (SAT)

EnglishLinear AlgebraCollision DetectionAABBSAT