Jump to content

What If There Was A Hak.5 Messenger?


Recommended Posts

Off topic, but I was thinking a few things the other day. First, why does this have to be a Hak5 IM client. Second, my idea was to make somehting similar to a bit torrent client, but be based on IM clients and called "Key-Peer". How it would work is no central tracking site, like with bit torrents, but 100% hash based on the users email and ip.

Users who share the Key-peer client can only talk to those who they enter on their buddy list. The way they add people is they have to know their friends email. The requesters email address gets converted to an MD5 hash and then a request sent to the persons email to be added to their buddy list. The user must accept you to their buddy list in order to speak and share file in a closed network only available to other users on that buddy list. They then add your md5 hash to their buddy list and they send back a reply with their md5 hash to be added to your list. The buddy list then contains MD5 hashes of the friends address as the users name and everyone who joins the same pool only sees the other users md5 hashes. Only the two original friends that share emails know each others hashes. On he buddy list, the manually entered hashes go in one section, and the remaining pool of users go in another one. You can talk to anyone in the pool, but your onlygoing to know the people you manually added. This way everyone can keep semi private settings without anyone being able to come after them.

Everyone on the buddy list can also block other users they do not want to add or see to the pool, but the benefit would be to add friends of friends to the list to create a larger peer network. These added friends just go in the secondary section of unknown users, while the main list of known friends can be labeled with names to correspond with their MD5 hash. This corresponding name system only gets saved locally to the users pc and is never transmittted over the peer network so only the twho who exchanged emails know who is really who.

Then, everyone on the same buddy list can share files, but the more spread out over the budyd list, the faster they files transfer, in the same manner as Bit torrents, only 1-no central tracking site needed, 2-everyone on the buddy list keeps a copy of the buddy tracker of peer's on the list(but they correspond to md5 hashes and ip) and 3-everyone shares a list of currently shared files available. 100% peer based IM client with file sharing similar to bit torrent.

Few last features will be an encrption system. Either something like a vpn among multi clients or secure tunnel among clients, so anyone trying to sniff traffic gets garbage. Only people you add to your list can see you and only people you share with can see your ip. The list will be encrypted on each pc, so anyone whos lists gets a copy will have to decrypt it to see what and who is on the list, which makes it that much harder for someone to see what is going on. The files, buddy lists and trackers will go into a secure folder system similar to true crypt. Only the person with the password to log on to the Key-peer network can see the files in their shared folder. Files moved out of the securly shared folder can be seen by anyone, but the list will always be encrypted so even when moved out of the secure folder, they would still need to decrypt the list in order to see what is being shared and who is on the list.

Now there are a lot of things that would need to be implemented and this is just a generalization to my idea, but a community based IM client with Secure file tranfer ability as well as DHT/bit torrent type of file sharing, and keeping everything in a tryu-crypt secureed folder system would make for a very handy application. Not just in the hacker community, but even on a corporate network where people on the lan all need to access a shared file(s) quicly and they can get it from all the other key-peers on the list across states, countries, continents, etc.

Link to comment
Share on other sites

- Snipped -

I like the idea behind it, though, say im one of the key links, if i turn of my PC, wouldnt it be possible that the entire chat would cut in half?

Think of bit torrents. One person leaves, the whole network does not shut down, and also, user a talking to user c doe snot need user b to be logged on in order to chat or share files. Its just that when users a b c d e and f have the same files, user a can get peices from users b c d e and f, etc. The IM part works just like any other IM client, only all the info is stored on local pc's in a distributed network instead of on some central website. The lists can be shared with others on the list, so user a may have 20 people on his/her list, user b might have 50, and user c x number of users, but these lists eventually get distributed among friends and can spread from peer to peer. You also decide who and how many people in your pool to share with, so if you know users a b and c and your d, but you only want to share with a and b, you can still do this. It would require the community to work together though to benefit larger spread of the list of key-peers and files.

Link to comment
Share on other sites

yea but isnt the reason all the clients are able to connect to one another in torrents because of the trackers, and not the peer-to-peer?


And if u do add a tracker, the isnt what ur after, just a slightly modded, but higher security IRC protocol?

Link to comment
Share on other sites

HSN, STFU n00b

[me=SomeoneE1se]hits manuel with a rolled up newspaper[/me]

NO NO BAD thunder kitten, BAAAAD thunder kitten. we do not attack the noobs! (directly)

Ok, ok, ok.  perhaps I was a tad bit too harsh on the kid.  This kitty will go back to playing with that ball of yarn he found way on the other side of the fence yesterday.

Link to comment
Share on other sites

This is just a concept. I have no working model, but just a quick mock up: http://www.twistedpairrecords.com/digip/keypeerconcept.jpg

just a slightly modded, but higher security IRC protocol

I guess in a way it is, only it runs off peer to peer users sharing the lists of IP's in the pool. Each time th eclient starts it would check the IP's in it's pool file to see who it can reach, and then they show up in the pool lists. If they cannot be reached they do not show up, but remain in the list and can be checked periodically. Also, each user that logs on can send out an announce that they have logged on, so they would then refresh the lists of already logged on users. The only time someone is removed from your copy of the list is when you remove them, but they stay on other peoples lists. Using a preference window(which is not shown here) you could black list/white list added peers per your needs. No need for MODS or Chat admins, as you can remove the person from your peer lists and query for updated lists. Since it is strictly MD5 based, they can try to come back on with another IP address, but they must provide their real email initially to get onto one of this lists. If they are a blocked email/md5 hash on your  black list, they cannot get back on to your list and cannot see or trade files as well as chat with you. You become invisible to them once you remove them as well, so once you black list a peer, you come off their list and they cannot communicate with you unless you un ban them.

These are purely concept ideas, and the GUI is ugly at best, but just an idea I have had for a while. I wouldn't know where to begin with this as far as the programming side of it. I can make an MD5 hasher part to it and add that much, but the encryption and file transfering/Instant message, chat side of it are over my head.

Id picture like a few hundred different modules combined from different sources/users into one app that can do it all. Then port it to other OS's like Unix/Linux, OSX, etc. Make it PHP based and run off some little home web server client but with SSL or other encryption and it might make it easier. Browser based PHP interface instead of a programed GUI(or both types, whatever floats your boat) so that it can run in any system that has web server capability and PHP installed. Again, all just concepts.

Link to comment
Share on other sites

I know what your thinking....

Why in the world would you need one right?

Well you don't, you've got the forum, irc, and the client you already use.

But tell me what you think of the idea.

Do you even know any programming languages?

Link to comment
Share on other sites

i started to program when i was about 15-16, i was working part time, and had school, which means i wasnt gettin home untill 6pm. I still picked up on it rather well i think ( / hope). Instead of junking around with tools, wouldnt it be best to try out a few tuts?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...