Messaje is a fully secure fast cross-platform client and server, written in Java, that supports desktop (Linux, Windows, Mac OS) and mobile platforms (only Android right now).
No one of packets (create account, log in to account, write message) can be read using packet interceptor like Wireshark.
Every packet is encrypted, using custom 256-bit AES-GCM key.
Key, or it's encrypted parts is never sent over network.
Configuration, that contains AES key is encrypted using custom algorithm (should be changed after installation).
Even when somebody has exact same JAR/EXE/APK file, to decrypt properties, that person should spend large amount of time.
- Press
Code
- Press
Download ZIP
- Unzip downloaded zip file through any unzipper
- Open terminal
- Write command
git clone https://github.com/werryxgames/Messaje
Don't forget to first configure properties (instruction located below).
First run will be much longer, than others.
- Press
R
, while holdingSuper
(Win
). - Write
cmd.exe
(orcmd
) and pressEnter
. - Write
cd
, then write path to unpacked Messaje directory and pressEnter
. - Write
.\gradlew.bat server:run
and pressEnter
.
- Open terminal (or use already opened).
- Write
cd
, then write path to unpacked Messaje directory and pressEnter
. - Write
./gradle server:run
and pressEnter
.
Don't forget to first configure properties (instructions located below).
First run will be much longer, than others.
- Press
R
, while holdingSuper
(Win
). - Write
cmd.exe
(orcmd
) and pressEnter
. - Write
cd
, then write absolute path to unpacked Messaje directory and pressEnter
. - Write
.\gradlew.bat desktop:run
and pressEnter
.
- Open terminal (or use already opened).
- Write
cd
, then write absolute path to unpacked Messaje directory and pressEnter
. - Write
./gradle desktop:run
and pressEnter
.
- Follow Installation steps.
- Open file manager (like
explorer.exe
ornautilus
). - Go to directory of old server version.
- Copy
config
directory. - Go to directory of new server version.
- Paste
config
here. - Change configuration: look at added, changed and removed configuration properties below.
- Open terminal.
- Follow Installation steps.
- Write
cd
, write absolute path to directory of old server version and pressEnter
. - Write
cp config/ -r
, write absolute path to new server version and pressEnter
- Change configuration: look at added, changed and removed configuration properties below.
You should configure client and server, using custom properties. To customize properties, overwrite
them in ./config/client.properties
and ./config/server.properties
(create them first).
Description of configuration properties is located in ./config/client.example.properties
and ./config/server.example.properties
.
Client properties:
aes.key
debug
server.host
server.port
password.pepper
Server properties:
aes.key
db.url
db.user
db.password
server.host
server.port
server.maxPendingConnections
To apply configuration properties, write java -jar server.jar --saveConfig
(to compile
server.jar
, write gradle server:dist
and then move ./server/build/libs/server-1.0.jar
to
./server.jar
; also you can write java -jar ./server/build/libs/server-1.0.jar --saveConfig
,
without moving)