https://github.com/t94j0/mwnn
IRC, but with privacy - Also a way to help me learn Go
https://github.com/t94j0/mwnn
gpg irc messenger security
Last synced: 8 months ago
JSON representation
IRC, but with privacy - Also a way to help me learn Go
- Host: GitHub
- URL: https://github.com/t94j0/mwnn
- Owner: t94j0
- Created: 2016-08-19T18:35:17.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2017-04-18T21:04:38.000Z (about 9 years ago)
- Last Synced: 2025-02-14T09:50:45.958Z (over 1 year ago)
- Topics: gpg, irc, messenger, security
- Language: Go
- Homepage:
- Size: 56.6 KB
- Stars: 3
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# NOTICE: This repository has been deemed NOT secure. Messages can be repeated with replay attacks. This will be fixed in the future.
# Messenger With No Name [MWNN (Pronounced Minn)]

# What is MWNN?
IRC has never been a good tool for securely talking to other people because the data is sent in clear text over the internet. (Unless you are using SSL, but there are inherent [vulnerabilies with it](http://www.howtogeek.com/182425/5-serious-problems-with-https-and-ssl-security-on-the-web/). With MWNN, I am trying to create an irc-like service that uses GPG encryption to send text data across the internet safely so that there is no possibility for a MITM attack.
For more information on GPG, go [here](https://www.gnupg.org/)
# Installing
* Get mwnn from github: `go get github.com/t94j0/mwnn`
#### Generating private key
1. gpg --gen-key
2. gpg --armor --export maxh@maxh.io > [location for public key]
3. gpg --armor --export-secret-key maxh@maxh.io > [location for private key]
* Run with `./mwnn -c [ip of server] -p [port] -puk [location of exported public key] -prk [location of exported private key]`
# Messenger
**Sending PM's**
* /message [target username] [message to send]
**Quitting**
* /quit
* Ctrl+c
**Viewing Public Keys**
/seekeys - This will display all connected user's keys. Always be sure that the keys you see here match what the other user's see. To exit, press Ctrl-q
# TODO:
* Add key generation under a new cobra name so that the user can use `mwnn keys create` as well as `mwnn keys list`
* Message history / scrolling textbox
* Implement User info storage (channels, rights, friends?, admin status)
* Manage concurrency/parallelism of server
* Add Client-side history/favorites
* General UI changes
* Add more commands
* Random TODOs in the codebase