Author: Anugrah Singh (1AY23CS031)
CryptoRand is an interactive web application designed to demonstrate and educate users on the application of discrete mathematics principles in cryptographic pseudo-random number generators (PRNGs). The project allows users to generate sequences from PRNGs like the Linear Congruential Generator (LCG) and Blum Blum Shub (BBS), visualize their outputs, and learn underlying mathematical concepts through an AI-powered tutor (Gemma 3).
For a detailed explanation of the project, please see PROJECT_REPORT.md.
git clone https://github.com/Anugrah-Singh/dms_project.git
cd dms_project
<-> on the left).http://localhost:1234/v1. Note this address.Navigate to the backend directory:
cd backend
Create and activate a Python virtual environment:
If you don't have virtualenv installed, install it:
pip install virtualenv
Create the virtual environment:
python -m venv venv
Activate the virtual environment:
.\venv\Scripts\Activate.ps1
(For bash/zsh on Linux/macOS, it would be source venv/bin/activate)
Install dependencies:
pip install -r requirements.txt
(Optional) Configure LM Studio API Endpoint:
backend/app.py or via an environment variable if the application is set up to read it. (Check app.py for how the LM Studio URL is determined).Run the Flask application:
flask run
The backend will typically run on http://127.0.0.1:5000.
Install Node.js and npm:
Navigate to the frontend directory:
cd ..\frontend
(Assuming you are in the backend directory from the previous step. If you are in the project root, just cd frontend)
Install dependencies:
npm install
Run the Vite development server:
npm run dev
The frontend will typically be accessible at http://localhost:5173 (or another port if 5173 is busy, Vite will tell you). Open this URL in your web browser.
Navigate to the backend directory:
cd backend
Install dependencies:
pip install -r requirements.txt
Run the Flask application:
flask run
The backend will typically run on http://127.0.0.1:5000.
Navigate to the frontend directory:
cd frontend
Install dependencies:
npm install
Run the Vite development server:
npm run dev
The frontend will typically be accessible at http://localhost:5173.
For a comprehensive understanding of the project, including its goals, technical details, discrete mathematics concepts applied, and educational value, please refer to the PROJECT_REPORT.md.