Multipurpose Internet Mail Extensions: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m tag obsoleti
+Bibliografia, sistemo collegamenti esterni
 
(20 versioni intermedie di 18 utenti non mostrate)
Riga 1:
{{nota disambigua|altri significati di "Mime"|Mime|MIME}}
Il '''Multipurpose Internet Mail Extensions''' ('''MIME'''); (letteralmente '''Estensioni{{Lett|estensioni multifunzione alla posta di Internet'''}}) è uno [[Norma (tecnologia)tecnica|standard]] di [[Internet]] che estende la definizione del [[Formato di file|formato]] dei messaggi di [[posta elettronica]], originariamente definito dall'[[Simple Mail Transfer Protocol|SMTP]], il [[protocollo (informatica)|protocollo]] di trasmissione delle email.
MIME aggiunge il supporto per:
* l'impiego di [[codifiche di caratteri]] diversi dall'[[ASCII]],
Riga 6:
* la codifica di messaggi (o loro parti) non testuali.
 
Queste novità rispetto ad SMTP consentono caratteristiche oggi comuni nell'uso della posta elettronica, come il concetto di [[Allegato di posta elettronica|allegato]], l'invio di file non testuali, la lunghezza arbitraria delle linee di testo e del messaggio stesso, o ancora la [[firma digitale]] e la cifratura dei messaggi.
Per garantire compatibilità con il protocollo SMTP, i messaggi email in formato MIME vengono codificati in uno o più messaggi nel formato SMTP spediti ordinatamente.
Quasi tutte le email scritte da persone e molte delle email generate automaticamente sono trasmesse usando queste due tecnologie.
 
Sebbene il formato nacquesia nato per la posta elettronica, oggi è impiegato in ambiti anche molto diversi, specialmente in contesti di comunicazione o memorizzazione il cui oggetto abbia una codifica non fissata e che debba pertanto essere esplicitata da [[metadati]].
L'esempio più evidente è il protocollo [[Hypertext Transfer Protocol|HTTP]] alla base del [[World Wide Web]], nel quale i messaggi tra [[browser]] e [[server web]] sono codificati usando MIME.
 
Riga 16:
 
== Caratteristiche ==
Il [[protocollo di rete|protocollo]] base di Internet per la trasmissione di email, l''''SMTP''', supporta solo caratteri [[ASCII]] a 7 bit. Questo di fatto limita le email a messaggi che, quando trasmessi, includono solo i caratteri sufficienti per scrivere in un numero limitato di lingue, come per esempio l'inglese, e rende leggibile (ma non corretta) la rappresentazione in qualche altra lingua che fa uso dell'[[alfabeto latino]].
Il '''MIME''' definisce meccanismi atti a spedire altri tipi di informazione con l'email, potendo includere testo scritto in lingue diverse dall'inglese usando codifiche diverse dall'ASCII, e contenuti binari come immagini, suoni e filmati, oppure programmi. Il MIME è anche un componente fondamentale dei protocolli di comunicazione come l'[[Hyper TextHypertext Transfer Protocol|HTTP]], il quale richiede che i dati siano trasmessi come messaggi simil-email, sebbene i messaggi non siano effettivamente email.
 
La traduzione dei messaggi, da e in formato MIME, è generalmente fatta in automatico dai client e dai server quando si spediscono o si ricevono email SMTP/MIME.
Il formato base delle email su Internet è definito nell'RFC 2822, che è un aggiornamento del RFC 822. Questi standard specificano i formati conosciuti per rappresentare le intestazioni e il corpo delle email, come anche le regole attinenti all'utilizzo delle intestazioni quali "A:", "Oggetto", "Da" e "Data:". MIME definisce un insieme di intestazioni per inserire attributi aggiuntivi in un messaggio, come per esempio il tipo del contenuto, e definisce un insieme di codifiche di trasferimento che possono essere usate per rappresentare dati binari a [[8 bit]] utilizzando il charset ASCII a 7 bit. Lo standard MIME specifica anche regole per codificare caratteri non ASCII nelle intestazioni del messaggio email, come "Oggetto:", permettendo a queste intestazioni di contenere caratteri diversi dall'inglese.
 
Lo standard MIME è espandibile. Le sue definizioni includono metodi per definire nuovi tipi di contenuto e altri attributi MIME.
Riga 28:
Può sembrare sorprendente che la versione MIME sia formalmente rimasta ''1.0'' dal 1992 a oggi. In realtà, MIME esordisce mettendo a punto un ''meccanismo per specificare e descrivere il formato'' dei messaggi di posta elettronica (RFC 1521). Lo standard definisce un processo di registrazione e un formato, fornendo in pratica delle linee guida per la messa a punto di nuove estensioni. In particolare viene caldeggiata l'introduzione di nuovi tipi di contenuto e di nuovi metodi di accesso. Viene anche suggerito l'uso del prefisso <code>X-</code> per i nomi non registrati.
 
I '''tipi di contenuto''' predefiniti sono sette.
Cinque sono tipi elementari: testo, audio, immagine, video e applicazione, dove l'ultimo rappresenta il tipo di dati generato o utilizzato da un particolare software applicativo. Ogni tipo ha dei sottotipi, per cui abbiamo, per esempio, <code>image/gif</code> e <code>application/zip</code>.
Due sono tipi composti: ''messaggio'' e ''multipart''. Anche questi hanno i loro sottotipi, per esempio <code>message/rfc822</code> è usato per rinviare messaggi come allegati, mentre con <code>multipart/alternative</code> si può inviare un testo sia in versione normale sia in [[HTML]].
 
I '''metodi di accesso''' sono introdotti allo scopo di inviare un riferimento al messaggio in luogo del messaggio stesso. Questo non è semplicemente un link in mezzo al testo, come spesso si usa. Lo standard prevede un tipo <code>message/external-body</code> corredato del tipo di accesso. I metodi d'accesso previsti vanno dalle varie forme di [[File Transfer Protocol|FTP]], ai file locali o remoti, ai messaggi email su un server di posta (presumibilmente in cartelle [[Internet Message Access Protocol|IMAP]] condivise). Tra i parametri che corredano l'accesso ci sono le autorizzazioni e la data di scadenza.
 
Ovviamente non è pensabile che un normale client di posta, compatibile con la versione ''1.0'' di MIME, possa trattare tutte queste estensioni in modo appropriato. Il software è un processo in divenire e si chiama così proprio perché le regole non sono scolpite nel marmo. L'apparato di MIME è tale da permettere e regolare lo sviluppo di estensioni che saranno sviluppate via via. L'interfacciamento di segreterie telefoniche e [[fax]] potrebbe essere un esempio.
 
== Bibliografia ==
* {{en}}IETF|1341|MIME RFC 1521(Multipurpose Internet Mail Extensions): Mechanisms for Specifying and Describing the Format of Internet Message Bodies}}
* {{en}} RFC IETF|1426 |SMTP Service Extension for 8bit-MIMEtransport.}}
* {{IETF|1521|MIME (Multipurpose Internet Mail Extensions) Part One: Mechanisms for Specifying and Describing the Format of Internet Message Bodies}}
* {{en}} RFC IETF|1847 |Security Multiparts for MIME: Multipart/Signed and Multipart/Encrypted}}
* {{en}}IETF|2045|Multipurpose RFCInternet 2045Mail Extensions (MIME) Part One: Format of Internet Message Bodies.}}
* {{en}}IETF|2046|Multipurpose RFCInternet 2046Mail Extensions (MIME) Part Two: Media Types.}}
* {{en}}IETF|2047|MIME RFC(Multipurpose 2047Internet MIMEMail Extensions) Part Three: Message Header Extensions for Non-ASCII Text.}}
* {{en}}IETF|2049|Multipurpose RFCInternet 2049Mail Extensions (MIME) Part Five: Conformance Criteria and Examples.}}
* {{en}} RFC IETF|2183 |Communicating Presentation Information in Internet Messages: The Content-Disposition Header. Field}}
* {{en}} RFC IETF|2231 |MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations.}}
* {{en}} RFC IETF|2387 |The MIME Multipart/Related Content-type.}}
* {{en}} RFC IETF|3156 |MIME Security with OpenPGP}}
* {{en}} RFC IETF|4288 MIME Part Four: |Media Type Specifications and Registration Procedures.}}
* {{en}}IETF|4289|Multipurpose RFCInternet 4289Mail Extensions (MIME) Part Four: Registration Procedures.}}
 
== Voci correlate ==
Line 44 ⟶ 60:
 
== Collegamenti esterni ==
* {{FOLDOC}}
* {{en}} RFC 1426 SMTP Service Extension for 8bit-MIMEtransport.
* {{cita web|lingua=en|url=http://mgrand.home.mindspring.com/mime.html|urlarchivio=https://web.archive.org/web/20060623063612/http://mgrand.home.mindspring.com/mime.html|titolo=A more detailed overview of MIME|autore=Mark Grand|data=26 ottobre 1993}}
* {{en}} RFC 1847 Security Multiparts for MIME: Multipart/Signed and Multipart/Encrypted
* {{cita web|httphttps://www.iana.org/assignments/character-sets|List of Character Sets|sito=[[IANA]]|data=2024-06-06|lingua=en}}
* {{en}} RFC 3156 MIME Security with OpenPGP
* {{cita web|httphttps://developer.mozilla.org/en/docs/Properly_Configuring_Server_MIME_Types|Properly Configuring Server MIME Types|sito=[[MDN Web Docs|MDN]]|lingua=en}}
* {{en}} RFC 2045 MIME Part One: Format of Internet Message Bodies.
* {{cita web|1=https://www.w3schools.com/media/media_mimeref.asp|2=W3 School's Multimedia MIME Reference|lingua=en|accesso=24 settembre 2008|urlarchivio=https://web.archive.org/web/20060705091421/http://www.w3schools.com/media/media_mimeref.asp|dataarchivio=5 luglio 2006|urlmorto=sì}}
* {{en}} RFC 2046 MIME Part Two: Media Types.
* {{en}} RFC 2047 MIME Part Three: Message Header Extensions for Non-ASCII Text.
* {{en}} RFC 4288 MIME Part Four: Media Type Specifications and Registration Procedures.
* {{en}} RFC 4289 MIME Part Four: Registration Procedures.
* {{en}} RFC 2049 MIME Part Five: Conformance Criteria and Examples.
* {{en}} RFC 2183 Communicating Presentation Information in Internet Messages: The Content-Disposition Header.
* {{en}} RFC 2231 MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations.
* {{en}} RFC 2387 The MIME Multipart/Related Content-type.
* {{en}} RFC 1521 Mechanisms for Specifying and Describing the Format of Internet Message Bodies
* {{en}} [http://mgrand.home.mindspring.com/mime.html A more detailed overview of MIME] (1993)
* {{cita web|http://www.iana.org/assignments/character-sets|List of Character Sets|lingua=en}}
* {{cita web|http://developer.mozilla.org/en/docs/Properly_Configuring_Server_MIME_Types|Properly Configuring Server MIME Types|lingua=en}}
* {{cita web|http://www.w3schools.com/media/media_mimeref.asp|W3 School's Multimedia MIME Reference|lingua=en}}
 
{{portale|internet}}