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.
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
}
}
GEMBOS addresses critical security challenges in modern mobile communication protocol SS7 through innovative cryptographic solutions and distributed architecture.
Implements Elliptic Curve Cryptography (ECC) with AES-128-GCM encryption, ensuring military-grade security for all communications.
Seamless switching between SMS messaging and internet-based messaging fallback ensures reliable communication in any network condition.
Scalable, distributed system design with offline support and automatic synchronization across multiple devices.
Complete API documentation for integrating with GEMBOS services.
Comprehensive guides and specifications for understanding and implementing GEMBOS.
Complete project requirements, functional specifications, and system constraints.
Download PDFDetailed system architecture, component design, and implementation specifications.
Download PDFUser interface design patterns, mockups, and interaction guidelines.
Download PDFAccess source code repositories and development resources.
Meet the development team and learn how to contribute to the GEMBOS project.
Project Advisor
Department of Computer Engineering
YaΕar University
Department of Computer Engineering
COMP4920 Senior Design Project II
Spring 2025
GEMBOS is an open-source project. We welcome contributions from the community.