JMAP – den åbne protokol vil erstatte IMAP ved udveksling af e-mails

I begyndelsen af måneden blev der aktivt diskuteret på Hacker News protokollen JMAP, der udvikles under IETFs ledelse. Vi besluttede os for at tale om, hvorfor den er nødvendig, og hvordan den er opbygget.Hvad er galt med IMAP

JMAP – den åbne protokol vil erstatte IMAP ved udveksling af e-mails
/ Hvad får I ud af det / PD

IMAP

Protokol blev introduceret i 1986. Mange af de ting, der er beskrevet i standarden, er i dag ikke længere relevante. For eksempel kan protokollen returnere antal linjer i en e-mail og kontrolsummer, — denne funktionalitet bruges næsten ikke i moderne e-mailklienter. MD5 Et andet problem er relateret til trafikforbruget. I tilfælde af IMAP gemmes e-mails på serveren og synkroniseres periodisk med lokale klienter. Hvis en eller anden grund ødelægger kopien på brugerens enhed, skal hele mailen synkroniseres igen. I den moderne verden, hvor tusinder af mobile enheder kan være tilsluttet serveren, fører denne tilgang til forhøjet trafikforbrug og øgede beregningsressourcer.

Problemer opstår ikke kun med selve protokollen, men også med de e-mailklienter, der arbejder med den. Siden IMAP blev skabt, har det gennemgået mange revisioner — den aktuelle version i dag er IMAP4. Derudover findes der mange valgfri udvidelser til det — der er

nitten RFC'er med tillæg. En af de nyeste er er offentliggjort RFC8514 , præsenteret i 2019.Samtidig tilbyder mange virksomheder deres egne proprietære løsninger, der skal forenkle arbejdet med IMAP eller helt erstatte det:

Gmail Outlook, . Resultatet er, at eksisterende e-mailklienter kun understøtter nogle af de tilgængelige funktioner. En sådan mangfoldighed fører til markedsegmentering., Nylas„Desuden skal en moderne e-mailklient ikke blot kunne sende meddelelser, men også være i stand til at arbejde med kontakter og synkronisere med kalenderen,” siger Sergey Belkin, leder af udviklingsafdelingen hos IaaS-udbyderen

1cloud.ru 1cloud.ru. „I dag anvendes tredjepartsprotokoller som LDAP, CardDAV og CalDAV. Denne tilgang komplicerer opsætningen af firewalls i virksomheders netværk og åbner nye vektorer for cyberangreb.”

JMAP er designet til at løse de nævnte problemer. Det udvikles af specialister fra FastMail under vejledning af Internet Engineering Task Force (IETF). Protokollen arbejder ovenpå HTTPS, bruger JSON (af denne grund er den egnet ikke kun til e-mailudveksling, men også til en række opgaver i skyen) og forenkler arbejdet med e-mail på mobile enheder. Ud over behandling af e-mails giver JMAP også mulighed for at tilslutte udvidelser til arbejde med kontakter og kalender-planlægningsprogrammer.

Funktioner i den nye protokol

JMAP er en statsløs protokol og kræver ikke en konstant forbindelse til mailserveren. Denne funktion forenkler arbejdet i ustabile mobile netværk og sparer batteristrøm.

En e-mail i JMAP præsenteres i JSON-struktur. Den indeholder al information fra meddelelsen RFC5322 (Internet Message Format), som kan være nødvendig for mailapplikationer. Ifølge udviklerne skal denne tilgang forenkle oprettelsen af klienter, da serveren vil tage sig af løsningen af potentielle problemer (relateret til MIME, læsning af overskrifter og kodning).

Til kommunikation med serveren bruger klienten et API. For dette danner den en autentificeret POST-anmodning, hvis egenskaber er beskrevet i JMAP-sessionobjektet. Anmodningen har formatet application/json og består af ét JSON-anmodningsobjekt. Serveren genererer også ét svarobjekt.

I specifikationerne (punkt 3) forfatterne giver følgende eksempel på en anmodning:

{
  "using": [ "urn:ietf:params:jmap:core", "urn:ietf:params:jmap:mail" ],
  "methodCalls": [
    [ "method1", {
      "arg1": "arg1data",
      "arg2": "arg2data"
    }, "c1" ],
    [ "method2", {
      "arg1": "arg1data"
    }, "c2" ],
    [ "method3", {}, "c3" ]
  ]
}

Nedenfor er et eksempel på et svar, som serveren vil generere:

{
  "methodResponses": [
    [ "method1", {
      "arg1": 3,
      "arg2": "foo"
    }, "c1" ],
    [ "method2", {
      "isBlah": true
    }, "c2" ],
    [ "anotherResponseFromMethod2", {
      "data": 10,
      "yetmoredata": "Hello"
    }, "c2"],
    [ "error", {
      "type":"unknownMethod"
    }, "c3" ]
  ],
  "sessionState": "75128aab4b1b"
}

Den fulde specifikation af JMAP med implementeringseksempler kan findes på den officielle hjemmeside projektet. Her har forfatterne også offentliggjort specifikationerne for JMAP Contacts og JMAP Calendars — de er rettet mod arbejde med kalendere og kontaktlister. Ifølge ifølge forfatterne er Contacts og Calendars blevet adskilt i separate dokumenter, så de kan udvikles og standardiseres uafhængigt af "kernen". Kildekoderne til JMAP findes på repository på GitHub.

JMAP – den åbne protokol vil erstatte IMAP ved udveksling af e-mails
/ Hvad får I ud af det / PD

Udsigter

Selv om arbejdet med standarden officielt endnu ikke er afsluttet, implementeres den allerede i produktionsmiljøer. For eksempel har skaberne af den åbne mailserver Cyrus IMAP implementeret deres JMAP-version. Udviklerne fra FastMail har udgivet serverframework for den nye protokol i Perl, og forfatterne af JMAP præsenterede proxy-server.

Man kan forvente, at der i fremtiden vil komme flere projekter baseret på JMAP. For eksempel er der en vis sandsynlighed for, at udviklerne fra Open-Xchange, som skaber IMAP-servere til Linux-systemer, vil overgå til den nye protokol. Deltagerne i fællesskabet beder dem meget om at skifte fra IMAP, et fællesskab der er dannet omkring virksomhedens værktøjer.

Udviklerne fra IETF og FastMail siger, at flere og flere brugere ser behovet for en ny åben standard for beskedudveksling. Forfatterne af JMAP håber, at flere virksomheder i fremtiden vil implementere denne protokol.

Vore ekstra ressourcer og kilder:

JMAP – den åbne protokol vil erstatte IMAP ved udveksling af e-mails Sådan tjekker du cookies for overensstemmelse med GDPR - et nyt åbent værktøj hjælper

JMAP – den åbne protokol vil erstatte IMAP ved udveksling af e-mails Hvordan man sparer penge med en applikationsprogrammeringsgrænseflade
JMAP – den åbne protokol vil erstatte IMAP ved udveksling af e-mails DevOps i cloud-tjenesten med eksemplet 1cloud.ru
JMAP – den åbne protokol vil erstatte IMAP ved udveksling af e-mails Evolutionsarkitektur af 1cloud

JMAP – den åbne protokol vil erstatte IMAP ved udveksling af e-mails Potentielle angreb på HTTPS og hvordan man beskytter sig imod dem
JMAP – den åbne protokol vil erstatte IMAP ved udveksling af e-mails Hvordan man beskytter en server på internettet: erfaringer fra 1cloud.ru
JMAP – den åbne protokol vil erstatte IMAP ved udveksling af e-mails Kort introduktion: hvad er Continuous Integration

Kilde: habr.com

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster