[OT] FOSS Skype Replacement

20 replies [Last post]
DeckardCain
Offline
Joined: 06/04/2013

Hello again, everyone;

I've been working on creating a FOSS Skype Replacement; which I am currently calling GNUChat. Currently, the program is in pre pre pre-alpha (or as I like to call it, !@#$ing buggy as !@#$!). I've been asking all of my friends and family, who avidly use Skype, which features they'd like to see in my program as well as what they dislike about Skype. I think I've gathered enough information from them to know what the "Average User" wants in a program, but I'm looking to see what GNU/Linux users and Advanced Users would want / are looking for in a Skype Replacement program.

First and foremost, this program is, of course, going to be released under the GPL and will be completely Free Software. The program is written in Java, with plans for a C++ port (mostly because one of my friends wants to have most of the same functionality for his programs). The program is designed to be similar to IRC, though have some characteristics to Skype (a GUI demo is available in the attachments for constructive critiscm).

If you have any suggestions as to what you'd like to see in the program, please either reply in this list, or email me at name at domain You may also email me if you'd like further information about the project :)

Thank you for your time
Thanks in advance for your replys!
~DeckardCain

AttachmentSize
Build3NewGUI.tar_.xz14.64 KB
axgb
Offline
Joined: 09/22/2013

Hello,

I ran the program (obviously with OpenJDK)
The interface is nice.

Will a server need to be ran for the program to work?
Will one of the users have to run a server to use it?

ahj
ahj

I am a member!

Offline
Joined: 06/03/2012

Will this client employ encryption? If not, maybe you should consider joining the Tox team instead; they're working on a skype replacement *with* encryption.

Cheers

lembas
Offline
Joined: 05/13/2010
DeckardCain
Offline
Joined: 06/04/2013

The network will be a P2P based network employing encryptions such as RSA, AES, TwoFish, Serpent, Blowfish, DES, and variations of those such as Triple DES. All of the encryptions all 100% customizable and can be chained together in whatever way the user wishes, for example: MyMessage -> AES -> TwoFish -> BlowFish -> AES Round 2 (and so on).

Networking information will be released as soon as I can create a stable base of the new architecture and get time to create them.

I am aware of the efforts by the various other groups, though feel like they don't have all of the functionality and customization that this program will.

quiliro@congresolibre.org
Offline
Joined: 10/28/2010

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

El 03/11/13 08:21, name at domain escribió:
> The network will be a P2P based network employing encryptions such as RSA, AES, TwoFish, Serpent,
Blowfish, DES, and variations of those such as Triple DES. All of the
encryptions all 100% customizable and can be chained together in
whatever way the user wishes, for example: MyMessage -> AES -> TwoFish
-> BlowFish -> AES Round 2 (and so on).
>
> Networking information will be released as soon as I can create a
stable base of the new architecture and get time to create them.

Your ideas sound really cool. Thank you for participating in this
important project.

>
> I am aware of the efforts by the various other groups, though feel
like they don't have all of the functionality and customization that
this program will.
>

Have you asked the developers of those programs if they would like to
accept your changes to their programs? Perhaps it would serve you better
so you do not have to reinvent the wheel and you could have a lot more
cooperation from others (them!). Their experience and their programs'
prestige would be very helpful. The reason to make something from
scratch or fork a project is the incapacity to work with peers. Is there
a reason that asking the other project devs not sound OK with you?

Thank you for your ideas and efforts.

- --
Saludos libres,

Quiliro Ordóñez
Presidente (en co-gobierno con los socios)
Asociación de Software Libre del Ecuador - ASLE
Teléfono: 6008579

Recuerda que todas tus comunicaciones están siendo vigiladas. Lo que
puedes hacer para restar su eficacia es eliminar el software privativo
de tus computadores, evitar el software como servicio, almacenar tus
datos en tus propios equipos y encriptar todas tus comunicaciones.

Toda la información contenida en este mensaje es libre de uso y
distribución con o sin modificaciones y todo correo que reciba implica
que el remitente acepta que tendrá las mismas libertades sin importar
cualquier clausula de confidencialidad o restricción anterior o posterior.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)

iQIcBAEBAgAGBQJSdlQMAAoJEKmBO+c86O68wCAP/Arzfmy0qXHowzyw9DfyDRYH
saaX0dHZwAUnm6NvPByRbGxUDjJQtloHUAcss/nT52o9fq257LTVC7sBo7ybvUdf
lLjIiLQrRRCjasfYJ7gfNuNsNjDlPJ1PmzHmQB2o2bIzgGe8Qhfmlh0VcQAPtbkB
WyPQ/it7yIfyg7sYyPdrpQLP74tvJllwZaLfMGY5U1sJCV0OjIF7t5iHkcPSpsqD
wwIXFfXllMBIvhyBQymuQzFGi5HmdF1p2fBuM8/RuW6TqTLIwZbwQMqZVFGr6kwq
v8IXJxzwq3iOYZkMCY3Ym9BPfik+yK3GhbxB8ZeNMdyq3EGNiyKXMFS8rrIOHp7s
ldzT3i7jBrw4b0dy8V9KRtOWcE8EiWkRM3uk7Y/3WHgv3jVeJur/mE2lK2oOYLsc
8Kd2EBFmrNdiJIEBowUOBkPo9DM/3YHkOAgaZryYcNhIzYpNqIkIBdcE+bUunt5U
gpo4KevqGV4KlaXIk9SHcCFSl+UNPRNwq1PUqkjyJyj+KdC7tBvB9AvVJvg+bTM3
qjkE89QgZGpjqJKSoKzuW2Qmt3o6fdDJN59CrQr3s+R797IZjGx32Gy/fd4cbgV5
JH4Goy+YRUOko81MWZKUa7m2c6W3LHclfdI/dhhLxp/sGRpyj8tayVj+r/rRv1lk
IAa3s6Dgmgw+G3w3y656
=Hg7b
-----END PGP SIGNATURE-----

DeckardCain
Offline
Joined: 06/04/2013

Thank you very much :)

I've considered joining other teams, though the issue is I am completely self taught (i've never taken an actual course on programming, other than highschool... which doesnt really count, because I literally taught that course myself...). I'm afraid that my code may not be sanitary enough to make it into their program and since I'm using Java it would need converting anyways. Another thing is that, as stupid as this sounds, I'm finding it really fun to re-invent the wheel. While I program I talk with my other programming friends and we colaborate for hours on methods. Perhaps what I will do, is segment off certain functions that I know other programs could use, and make that specific snippit available for the other programs to view and decide themselves wether or not they'd like to follow...

Thank you for your input
~DeckardCain

onpon4
Offline
Joined: 05/30/2012

Jitsi is in Java.

DeckardCain
Offline
Joined: 06/04/2013

ALL THE BETTER! :D

THank you Onpon4, I will definitely make an effort to sharing as much as I can with this team (if they so wish).

~DeckardCain

DeckardCain
Offline
Joined: 06/04/2013

ALL THE BETTER! :D

THank you Onpon4, I will definitely make an effort to sharing as much as I can with this team (if they so wish).

~DeckardCain

ssdclickofdeath
Offline
Joined: 05/18/2013

Will it be part of the GNU project?

GNUsup
Offline
Joined: 10/29/2013

What about Tor, GPG and possibly profiles on a "normal server". Or maybe a P2P profile too, that would have darknet-like or meshnet functionnality? The person would be asked if he wants to share is profile with such other profile and would possibly share it.

For sending message, encrypt the message with the other person's public key, that the profile would give. Then, it would send the message through Tor. I would surely use such software, and even more if it's easy to configure.

Ps : I recommend having to type a password for profile startup, that would be the private key.

DeckardCain
Offline
Joined: 06/04/2013

TOR functionality is already being worked on and for the most part is working. GPG will not be added (though similar functionaltiy does exist). The way that I'm approaching my P2P network allows for someone to create a client server scheme in their own network (this part is rather hard to explain, hopefully soon I will get some documentation on it). Sharing profile information is going to be approached from several different ways, either a direct connection from person to person, from person to person to person or from person to server to person, as well as the obvious person proxy person, VPN, TOR, etc... Again, more documentation to come :P

The cool thing that I think makes this software rather unique, is that you can choose how you'd like things encrypted and how the encrypted messages are delivered, so essentailly all communications reach an RSA encryption at some point... What you are suggesting is currently possible :D

There is also a password on the configuration file (currently AES, but will be completely customizable) so that no one can access your settings (your "account" information is also stored here).

~DeckardCain

ssdclickofdeath
Offline
Joined: 05/18/2013

Doesn't ekiga do the same thing as Skype?
Also, are you programming it with the free version of Java?

ivaylo
Offline
Joined: 07/26/2010

В 06:53 +0100 на 03.11.2013 (нд), deckardcain@[nospam] написа:
> Hello again, everyone;
>
> I've been working on creating a FOSS Skype Replacement; which I am currently
> calling GNUChat. Currently, the program is in pre pre pre-alpha

Do you know about the GNU Telephony [1] and its sub-project GNU Free
Call [2]? The GNU Telephony developers work on a peer-to-peer SIP/VoIP
server (GNU SIP Witch) with encryption (ZRTP). The GNU Free Call effort
tries to improve the GNU SIP Witch server's peer-to-peer functionality,
so it can work in a mesh-like networks and eliminate central servers.

Of course these are server solutions, which have to be run by users and
need a SIP client. It might be better to improve the support for GNU SIP
Whitch in existing SIP clients, if such is need, or help in the GNU
Telephony project directly. After all, it is better to separate the GUI
from the protocol.

You've said that you are self-taught, but that shouldn't be an obstacle
to contribute to other projects. I think any member of a free software
project would suggest improvements to your code contribution and will
point you to helpful material. Programming is most of the time
self-learning while programming. Learning and contributing from/to
existing free software projects will only improve your skills.

[1] http://www.gnutelephony.org/index.php/GNU_Telephony
[2] http://www.gnutelephony.org/index.php/GNU_Free_Call_Announcement

DeckardCain
Offline
Joined: 06/04/2013

This program uses OpenJDK-7 which is free software. Hopefully (if all goes well), I will make the program in such a way that you can only run it using OpenJDK. I am to do this by taking the source code of OpenJDK and compiling it in such a way that I can package it with my program to form an executable which will be aimed for Windows machines (exe). This way people cannot run it using non-free java atleast on windows. This won't really be an issue on GNU/Linux machines because as far as I've seen most people use OpenJDK anyways...

GNU Telephony and Wich SIP have been on my radar for quite some time... I think it would be really nice to have them integrated into the program so that the user can have an option between my networking framework or GNU's take... The reasoning behind that being my framework is somewhat a fork of other projects that have come about or has used idea's from other projects, for instance TOR. While I've never used GNU's SIP, I think that it may be a popular choise so I'll at it to my list :)

I think what I'm going to do is post segments of code that I think other projects would benefit from and give them a link to my website which will contain it. Perhaps if I find some time or feel like this is becoming a main priority that I will jump onto other projects and try to submit my code more though as it stands right now I'm having a lot of fun making my own software, its become a really big part of my life and my friends and I are having a blast colaborating on closed sourced software trying to figure out how they did things and how we could make a better version... Maybe this is true with other projects, but I like to keep myself focused on one project at a time and by being in two either one will fail and the other succeed or both will be hindered...

I think that adding more documentation will be something that I do if not today then sometime this week. Hopefully in a weeks time the projet will be clearer so that people can have a more indepth look into what I intend to do, but till that time I'll keep chugging the coffee's back and playing April Wine ;)

~DeckardCain
~DeckardCain

onpon4
Offline
Joined: 05/30/2012

Making a Java program intentionally incompatible with the proprietary Java interpreter from Oracle is not something I would encourage. Other than OpenJDK not being readily available in binary form for Windows, it doesn't improve anyone's freedom to intentionally cripple a Java program so that a certain Java interpreter can't interpret it.

DeckardCain
Offline
Joined: 06/04/2013

The intention is not to make the program not run on non free Java, the program will definitely be able to do that. The intent is rather to package the program with OpenJDK to form an EXE. The reasoning behind this is that most windows users do not know how to run a JAR (thats...really sad... but true.), though they do know how to use EXE's, so I figured why not make it even easier to use by making an EXE, and I mide as well throw a free edition of Java in there too. If you don't want to use the EXE, you will have the option to download the .JAR or even the tar of the .java files themselves.

~DeckardCain

G4JC
Offline
Joined: 03/11/2012

Regarding Skype-like software- I just found this today, also in Java:
http://sourceforge.net/projects/ftalksecurevoip/?source=directory

icarolongo
Offline
Joined: 03/26/2011

Today the best is Jitsi, GNOME Empathy(both with XMPP or SIP) and WebRTC since Firefox/Abrowser 22. Linphone is good, but only SIP.

DeckardCain
Offline
Joined: 06/04/2013

Hopefully I will be able to implement functionality from GNOME Empathy (with their different protocols) and make my program as open and developer friendly so that even though we are all working on our own projects, we can collectively create functionality leading to the defeat of Skype and other proprietary programs.

A quick update: Development has continued and I think that the program is almost reaching pre pre-alpha, as opposed to the pre pre pre-alpha that I started with :P Hopefully soon I will send out a test version for people to fool around with and give more feedback as feedback is CRUCIAL at this stage in the game. If you have any ideas for the program or wish to voice your opinion of the faults of Skype or possible faults in my program please respond to the email list or email me directly.

~DeckardCain