Xexure

Email Service

Java 8Spring BootSpring DataPostgreSQLAngularHibernateMongoXMPPJames Email ServerBouncy CastleJenkinsNginxDockerApache
Meemo main

Description

In 2013, Edward Snowden blew the whistle on large corporations transferring the personal data of their customers to the US intelligence agencies.

Unsurprisingly, the demand for more digital security skyrocketed immediately. Consumers – rightfully – wanted an email service that would protect their data against third party interest. This is when Xexure was conceived.

What we did here was to create a service provider where security is put front and center. There are no corporate interests that will lead to your data going to the highest bid.

With Xexure, all your emails, all your data is stored encrypted. Not even the administrator has access to your conversations. To maximize security, we used AES encryption. Each user has a unique encryption key that is available exclusively to him or her.

Client goals

Our experts here at InventorSoft had to develop Xexure completely from scratch. The goal was to create a product that is secure more than anything. At the same time, we still wanted it to be accessible and convenient for all users. Through all the encryption and design choices, we came up with a very elegant solution.

Main roles

User

Creates his own mailbox and correspondence. He can send and receive emails.

Super admin

Can view how many users are registered at any time (though not their personal correspondence). He is also in charge of payment.

Meemo Illustration 1

Implemented features

To get started, we set up the email service itself. For this, we used the Apache James web server. This allows the owner of a given site to operate their content on the internet. The way it works is the user first enters the domain name into the address bar. After this, the web server will deliver the requested files. That is how users can control the James web server through email.

In the second phase, we wrote a control panel for the administrator. This gives him the ability to manage all the necessary data. Here should be noted that he cannot view any personal data of the users. To write the control panel, we used Angular.

Then, we put in a new feature. We implemented a chat that is based on a web socket. Security-wise, it is very similar to Telegram. All communication is carefully encrypted and protected against any third parties. This gives users the option to share data and messages without fear of being spied on.

Once we were satisfied with the infrastructure we built and the security it provided, we then added in a payment system. Keeping with the theme, we were careful to choose an option that provided customers with a high level of security. Payments will be processed by Stripe.

Details

Timeline

September 2016 - February 2017

Team

1 Front-end, 2 Back-end developers, 1 QA Engineer

Used Technologies

Xexure Java 8

Java 8

Xexure Spring Boot

Spring Boot

Xexure Spring Data

Spring Data

Xexure PostgreSQL

PostgreSQL

Xexure Angular

Angular

Xexure Hibernate

Hibernate

Xexure Mongo

Mongo

Xexure XMPP

XMPP

Xexure James Email Server

James Email Server

Xexure Bouncy Castle

Bouncy Castle

Xexure Jenkins

Jenkins

Xexure Nginx

Nginx

Xexure Docker

Docker

Xexure Apache

Apache