Designa det ultimata IM systemet!

Tråden skapades och har fått 22 svar. Det senaste inlägget skrevs .
1
  • Medlem
  • International user
  • 2001-06-01 15:26

Hur skulle det se ut? UDP vs TCP? Hur mycket ska hanteras av Servern vs Klienten? Ska Servrarna vara fristående från varandra? Ska trafiken krypteras? Ska protokollet hantera olika krypteringar? Vilka säkerhetsåtgärder bör tas?

Hur tycker ni det ska se ut?
Ge kommentarer!

[ 01 Juni 2001: Meddelandet ändrat av: kent ]

  • Oregistrerad
  • 2001-06-01 15:34

Min IM ser ut så här, har en Huvudserver(master server) som man kopplar massa andra slav servrar till, master servern tar emot namn och passwd av slavarna och ser om de är tillåtna på det nätverket, om dessa servrar är tillåtna så har de möjlighet att låta användare logga in på dem, alltså alla användare loggar in på slavservrar, slavservern skickar iväg check till masterservern och kollar upp om användar koden och namnet stämmer och skickar tillbaka ett svar tex ok eller !ok, när användaren skickar ett medelande till någon så kollar slavservern upp om motagaren är inloggad på denna slavserver, är hon/han inte det så skickas medelandet vidare till masterns som skickar det till rätt slavserver. Dock saknades mitt system en viktig funktion jag vill ha användar listan sparad på servern inte på hårddisken. Tror jag ska lägga upp mitt system på nätet sen och källkod och instruktions html filer. Dock är det gjort för beos men borde kunna portas.

Det intressant är väl först och främst vilka funktioner som bör finnas med.

* Skicka meddelanden
* Skicka Filer
* Dela PasteBoard
* Automatisk "Detection" av andra noder på lokala nätet

Gällande kents frågor. Jag tror på ett system i stil med Gnutella med enbart massa fristående klienter och inga servrar. Någon form av PKI tror jag skulle vara det bästa för krypteringen, men kryptering ska inte vara obligatorisk. PKI kan man ju använda även för användarverifiering.

email är bra för användärnamn, det är av sin natur ganska unika.

ja, lite tankar iaf.

:rolleyes:

  • Oregistrerad
  • 2001-06-01 16:01

Alternativ till email borde vara mobil och sms, om man glömmer lösen ska det sms´as till en mobil då ingen annan kan få tag i det om man nu inte är dum och lånar ut mobilen. Så gör halebop med deras tjänster juh, sen vill jag ha server till 100% bara för att spara listorna och ev. history så man når det och kan byta burk väldigt snabbt, tex om man har två burkar där hemma låt säga en bebox och en cube och så vill man göra något på den andra så ska man kunna ha listan där istället juh, utan att förlora 3 användare i sin lista. Hade även varit toppen om man har en handdator om detta fanns. Ända alternativet som finns nu är jabber som jag själv kör men där kan man inte skicka filer över icq, men det bygger iaf på xml

  • Medlem
  • International user
  • 2001-06-01 17:40

Ideer

När man startar klienten första gången får man skapa en publik nyckel och en privat. Den publika registreras tillsammans med mitt ip på en server som jag har bra ping till och mitt email kopplas till den publika nyckeln på en annan server.

Vid inloggning frågar jag efter en uppdaterad lista på servrar. Ingen lösenordskontroll.

Vill jag sen se om odlund är online så kollar jag först om hans finns på sitt senaste ip, om inte så frågar jag den senaste servern han var på. Om det inte funkar så frågar jag dom andra servrarna om dom har hans ip. När jag hittat hans ip så frågar jag vad han har för nyckel och kollar om den stämmer med min. Hittar jag honom inte så antar jag att han är offline och att han kommer söka mig när han kommer online.

Om jag sedan vill lägga med emil till min lista så skickar jag en förfrågan med emils email till en email-PKI server och får hans nyckel och sen fortsätter jag enligt tidigare.

Sen borde man kunna fråga den andra klienten vilken funktionalitet han stödjer så att man inte skickar filer om personen inte kan hantera den typen av överföringar.

Klienten borde också kunna hitta dom som finns på det privata nätverket som han redan varit i kontakt med.

  • Oregistrerad
  • 2001-06-01 18:03

Fick inte helt koll på vad du menar, men du menar att med den ena nycklen ska man använda för att tillåta andra att se om man är online eller inte, eller?

  • Medlem
  • International user
  • 2001-06-01 23:50

Ja, om jag har dig i min lista så vet jag redan din nyckel och det är ett bra sätt att få ett unikt "fingertryck" på en person, om man inte vill ha en huvudserver som måste stå för att dela ut användarnummer.

Om du inte hållit på med PKI eller liknande så drar jag för säkerhets skull det..

PKI fungerar så att det är en publik nyckel och en privat. Den publika nyckeln ger du till alla som vill kunna kommunicera med dig. Den använder dom sen för att kryptera meddelandet, och det enda som kan dekryptera meddelandet är din privata nyckel tillsammans med ditt lösenord.

På det sättet så har du dels ett unikt id som inte en server behöver dela ut plus ett sätt att kryptera informationen så att den inte går att sniffa och enkelt dekryptera på vägen.

En grej som jag inte förstår vad gäller publika och privata nycklar är hur ens nyckel kan bli unik. Nyckeln måste ju på något sätt slumpas fram och det måste ju finnas en chans (om än väldigt, väldigt liten) att jag slumpar fram samma nyckel som någon annan. Eller? Är chansen så liten att den är försumbar eller finns det något sätt att försäkra unikheten hos varje framgenererad nyckel?

Jag har säkert missat något fundamentalt men jag har tänkt på det ett tag och inte kommit på någon lösning.

  • Oregistrerad
  • 2001-06-02 02:00

Hmm har nog läst någon om det innan och haft egna påminnande idéer, men hur fan kan man få ett annat lösen in i texten, och hur vet man var det ska skickas?

Gjorde en gång en ICQ klon för pc. Den sparar kontaktlista och history på en server, vilket gör att man slipper många problem.

Men om man nu sak göra ett program så bygg den på IETFs standarder, skapa inte ett eget, det är ju det som skapar alla problem.

Här är lite länkar till IETFs protokoll Instant Messaging and Presence Protocol (impp).

IMPP Work Group
IETF web site
IMPP Internet-Drafts page
IMPP Working Group page´

En hel del information som ändras hela tiden kan också hitta om man söker på "impp" på söksidan http://search.ietf.org/search/brokers/internet-drafts/query.html

[ 02 Juni 2001: Meddelandet ändrat av: Fredrik Sigbjörn ]

  • Medlem
  • International user
  • 2001-06-02 14:32

Om du använder tillräckligt många bits i din PKI så är det stort sett försumbar chans att två får liknande nycklar. Men om man vill vara säker så lägger man till något mer som tex email som gör att det stort sett är omöjligt att få duplikat.

Problemen är att om du byter lösenord så har jag för mig att din nyckel ändras vilket skulle få många att tro att det inte är du. Måste kolla upp hur man skulle lösa det. Men annars så ligger ditt lösen inte lagrat någonstans förutom kanske cachat i ditt program efter inlogging och det används bara för att dekryptera meddelanden. Man behöver aldrig kommunicera ut ditt eget lösen eller skicka det på nätverk.

Problemet med att använda dom existerade IM protokollen är att jag inte har sett något som har den grad av säkerhet och flexibilitet som jag vill ha, eller så bygger dom på att någon ska ställa ut stora servrar någonstans som gör att någon måste tjäna pengar på det och det luktar banners och reklam lång väg.

Det bör tilläggas också att jag är lätt paranoid när det gäller internet och gillar inget som ser ens lite ut som big-brother..

Hur kan man lösa det utan stora servrar?

  • Medlem
  • International user
  • 2001-06-05 09:47

Genom att göra så att det är ett nätverk av servrar där man kan koppla på och av servrar hur som hellst och där dom hjälps åt att hitta rätt.

Sen genom att undvika att lagra grejer på servern. Jag håller med om att det är smidigt att ha kompislistan på servern, men det innebär också att det måste läggas ner mer pengar i den, och det gör att företaget som ställer ut fetingservern måste hitta ett sätt att tjäna pengar på det..

  • Oregistrerad
  • 2001-06-05 15:39

Finns de med bredband som säkert ställer upp på att sätta servrar på deras brukar, dock är jag tveksam till det på min burk eftersom att bredbandsbolaget är emot det, fast det är inte landskrona kommuns radiolan iaf där får man ha det.

Du måste ändå ha din kontaktlista på servern. Hur ska du annars veta när folk går online och away, det sköter servern åt dig genom att den vet vilka kontakter du har. Så funkar ICQ, jag vill se om nån har någon annan lösning på detta problemet utan att skicka kontaktlistan till servern.

  • Oregistrerad
  • 2001-06-05 19:46

Fredrik: Tror att Kent menar lagra in skicka listan, alltså med andra ord du behöver inte spara listan i hårddisken utan var du än är finns listan kvar även om du har en hd krash, du menar väl att man skickar listan var gång man loggar in eller?

Menar båda faktiskt, när man ändå alltid har listan på icq servern när man är inloggad är det väl lika bra att ha den där hela tiden.

  • Medlem
  • International user
  • 2001-06-06 09:20

Min tanke var att listan bara ligger på min disk, sen när jag loggar in så söker jag reda på var dom andra är och skickar ett meddelande till dom som säger att nu finns jag här.

  • Medlem
  • Stockholm
  • 2001-06-06 11:38
Citat:

Skapades ursprungligen av: kent:
Min tanke var att listan bara ligger på min disk, sen när jag loggar in så söker jag reda på var dom andra är och skickar ett meddelande till dom som säger att nu finns jag här.

Jag måste säga att jag gillar MSN.

  • Svenska tecken funkar fiint både på mac och pc.

  • Du ser vilka som ligger på din lista oavsett var du än är.

  • Du ser vilka som har dig på din lista.

Detta vill jag ha med en lite bättre gui och lite bättre system. då skulle jag vara mäkta glad!

/glemme

  • Medlem
  • International user
  • 2001-06-06 20:34

Har skitigt i MSN totalt pga en snabb test när första versionen av Macversionen kom och det visade sig att krypteringen var chr(256 - asc(tecken)). Men jag såg att dom publicerat protokollet..

Någon som har tittat på protokollet och kan berätta om det verkar vara något att ha..?

  • Oregistrerad
  • 2001-06-07 15:00

Kent: Kolla in jabber protokollet istället som också är öppet det bygger på XML och fungerar med MSN(men också icq, aim, irc etc)

  • Medlem
  • International user
  • 2001-06-07 16:00

Om jag bestämmer mig för att genomföra min ide så kommer jag att kolla in alla protokoll jag kommer över. Men om jag förstått det rätt så finns det inga alternativ för kryptering i jabber förutom om du kör det på enbart texten..?

Ett annat kul projekt vore att skriva en ICQ/MSN/AIM/Jabber sniffer..

En liten fotnot: Jag ogillar väldigt mycket att folk kan läsa vad jag skriver och ser vad jag gör om dom bara vill. Därför kommer det aldrig komma ett IM som är användbart som har den nivån av säkerhet som krävs för att jag ska vara nöjd..

  • Oregistrerad
  • 2001-06-07 23:02

Jag vet inte hur det är med krypteringen tyvärr.

1
Bevaka tråden