Skip to content

Desmond4343x/banking-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

65 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ’° Silverstone - Secure Digital Banking System

Secure, modular, and scalable banking system with core features like user authentication, role-based access control, encrypted storage, and inter-user transactions.

🌐 Hosted On

  • Frontend: Vercel
  • Backend: Render
  • Database: Aiven (MySQL)

πŸ” Features

  1. RSA/AES Hybrid Encryption

    • AES key encrypts user data.
    • RSA (public key) encrypts AES key.
    • RSA (private key) decrypts AES, which then decrypts the data.
  2. Secure Password Management

    • BCrypt hashing for user passwords.
    • Passwords and RSA private keys stored in a vault-like, separate database.
  3. JWT-Based Authentication

    • JWT tokens used to protect API routes.
    • Verification and RBAC implemented at the API entrypoint.
  4. Role-Based Access Control (RBAC)

    • Admin-only routes and dashboard with restricted functionality.
  5. Spring MVC Architecture

    • Modular and clean code structure following Java Spring MVC patterns.
  6. Google SMTP Integration

    • Automated email services and verification via Gmail SMTP.
  7. Cross-User Operations

    • Includes SendMoney, RequestMoney functionality beyond standard CRUD.

⚠️ Drawbacks

  • Very basic frontend with limited user interactivity.
  • No proper async/delay/loading feedback handling.
  • No session refresh or multiple session detection.
  • JWT tokens aren't invalidated (no delisting or blacklisting).
  • Unverified accounts are not auto-deleted.
  • Password reset lacks OTP verification (if email is compromised, so is the account).

πŸ”§ Planned Improvements

  • ✨ Modern, responsive frontend UI with better UX and animations.
  • πŸšͺ API Gateway layer for:
    • Rate limiting
    • Load balancing
    • API flooding protection
  • πŸ’³ Transaction framework with:
    • ACID compliance
    • Rollback support
  • πŸ“Š ML/AI-Based Analytics
    • Monthly spending analysis
    • Category-based insights
  • πŸ“ˆ Data Visualizations
    • Graphs and charts for financial metrics
  • πŸ“ˆ Investment Simulation
    • SIPs, FDs, interest logic, stock trading modules

πŸ“Ž Live Link

πŸ”— silverstone-dun.vercel.app


πŸ“‚ Technologies Used

  • Frontend: React.js, Vercel
  • Backend: Spring Boot, Render
  • Database: MySQL (Aiven)
  • Security: RSA, AES, BCrypt, JWT
  • Email: Gmail SMTP

Releases

No releases published

Packages

No packages published

Languages