Question I'm building my own Secure Chat App and need advice on VOIP, Encryption and Caching ?

Feb 22, 2025
1
0
10
Hi everyone, I'm not sure if this is the right place to ask for guidance, but recently, I've wanted to move away from popular chatting apps (e.g., Skype and Discord) and create my own secure application for a small group of people to use.

I'll admit, I've spent more time thinking than doing—mostly because I wanted to have a solid plan before starting anything. Despite three months of research, I still need clarification on a few details.

Here are some logistical issues I'm running into:

1. After building the basic chat room layout, how do I handle VOIP? More importantly, how do I ensure it's secure? Is it legal to host my own VOIP? (I'm pretty sure it is, but the information online isn’t very clear.)

2. I'm not having any issues verifying the validity of message encryption—this was the easiest thing to solve. 👍

3. I've noticed a trend: the more robust an application is, the less secure it becomes. For example, small projects by other programmers, hackers, and hobbyists tend to have minimal front-end design but strong back-end security (at least from what I can tell). Meanwhile, platforms like Signal, Discord, and Skype all have questionable security issues—some more glaring than others.

4. I want to implement a self-clearing cache once a certain amount of data is reached, but I haven’t been able to find any helpful resources. This might just be a wording issue.

Thanks for reading! Any help is appreciated. I'm not looking for hand-holding—just some guidance to push me in the right direction.

(And yes, I've seen Matrix, but I want to build something with my own two hands and understand the system inside and out.)

(P.S. One final thing, it's already been recommended I start smaller or a different project but hear me out, This can split into multiple stages starting with front end to back, I really do want to build this but it feels like everything i want to do is fractured in tutorials either not updated or poorly documented.)
 
I'm not looking for hand-holding—just some guidance to push me in the right direction.
Well, you want to make instant messaging application from scratch, but i'd suggest that you either take open-source software as a base and modify it according to your needs, or the very least, you can look how it's done in other software (since you can access it's code) and copy/paste what you need, over to your software.

One that is good starting point, is Miranda NG (previously known as Miranda IM)
further reading: https://en.wikipedia.org/wiki/Miranda_NG

I used to use Miranda IM way back, in my... (how to say it...) shady days. :) Of course, back then, there was no such thing as Skype or Discord. What public then had, was MSN Messenger. So, Miranda IM/NG has been around for a long-long time.
Since Miranda IM/NG is open-source and multiprotocol, either use it's kernel as your baseline or look how it is coded, to get inspiration for your own software.
 
  • Like
Reactions: cruisetung