GEMBOS Global Encrypted Mobile-Based
Obscured SMS Application

A secure, distributed messaging system with end-to-end encryption, dual transmission modes, and seamless offline synchronization. Built with modern cryptographic standards and distributed architecture principles.

End-to-End Encryption
Dual Transmission
Offline Sync
EncryptionManager.swift
func encryptMessage(message: String, 
                       sharedSecret: Data) -> String? {
    guard let messageData = message.data(using: .utf8) 
    else { return nil }
    
    // Derive AES key using HKDF
    let aesKey = HKDF<SHA256>.deriveKey(
        inputKeyMaterial: SymmetricKey(data: sharedSecret),
        outputByteCount: 32
    )
    
    do {
        let sealedBox = try AES.GCM.seal(messageData, using: aesKey)
        return sealedBox.combined?.base64EncodedString()
    } catch {
        print("Encryption failed: \(error)")
        return nil
    }
}

Project Overview

GEMBOS addresses critical security challenges in modern mobile communication protocol SS7 through innovative cryptographic solutions and distributed architecture.

πŸ”

Security First

Implements Elliptic Curve Cryptography (ECC) with AES-128-GCM encryption, ensuring military-grade security for all communications.

  • End-to-end encryption
  • Perfect forward secrecy
  • Secure key exchange protocols
πŸ“‘

Dual Transmission

Seamless switching between SMS messaging and internet-based messaging fallback ensures reliable communication in any network condition.

  • SMS based messaging
  • Internet-based fallback capability
πŸ”„

Distributed Architecture

Scalable, distributed system design with offline support and automatic synchronization across multiple devices.

  • Offline message storage
  • Automatic synchronization
  • Multi-device support

System Architecture

Presentation Layer
Android App (Java)
Application Layer
Spring Boot API
Encryption Service
Message Service
Data Layer
MySQL Database
Local Storage

API Reference

Complete API documentation for integrating with GEMBOS services.

Documentation

Comprehensive guides and specifications for understanding and implementing GEMBOS.

πŸ“‹

Requirements Specification

Complete project requirements, functional specifications, and system constraints.

v0 0 MB
Download PDF
πŸ—οΈ

Design Specifications

Detailed system architecture, component design, and implementation specifications.

v2.0 1.6 MB
Download PDF
🎨

Interface Guidelines

User interface design patterns, mockups, and interaction guidelines.

v0 0 MB
Download PDF
βš™οΈ

API Documentation

Complete API reference with endpoints, parameters, and examples.

v1.0 45 KB
Download JSON
πŸ“Š

Project Poster

Visual overview and summary of the GEMBOS project achievements.

Final 0 MB
Download PDF
πŸ“–

Final Report

Comprehensive project documentation including results and conclusions.

Final 0 MB
Download PDF

Downloads & Source Code

Access source code repositories and development resources.

πŸ€–

Android Application

Native Android app with encryption support

Java
⭐ 38
🍴 9
πŸ“„ MIT
βš™οΈ

Backend API

Spring Boot API with JWT authentication

Java
⭐ 56
🍴 18
πŸ“„ MIT

Community & Team

Meet the development team and learn how to contribute to the GEMBOS project.

Development Team

BV

Berker Vergi

Senior Year Computer Engineering Student

21070001202

GA

Giray Aksakal

Senior Year Computer Engineering Student

21070001030

Project Supervision

AHK

Prof. Dr. Ahmet Hasan Koltuksuz

Project Advisor

Department of Computer Engineering

Yaşar University

Yaşar University

Department of Computer Engineering

COMP4920 Senior Design Project II

Spring 2025

Contributing

GEMBOS is an open-source project. We welcome contributions from the community.

πŸ›

Report Issues

Found a bug or have a feature request? Open an issue on GitHub.

Report Issue
πŸ”§

Submit Pull Requests

Contribute code improvements and new features to the project.

Create PR
πŸ“–

Improve Documentation

Help us improve the documentation and guides.

Edit Docs