2.6 Il tipo application/pkcs7-mime

 

Il tipo application/pkcs7-mime è usato per trasportare oggetti PKCS #7 o diversi tipi inclusi envelopedData e signedData. Questo tipo MIME trasporta sempre un singolo oggetto PKCS #7. L’oggetto PKCS #7 deve sempre essere descritto secondo la codifica BER della sintassi ASN.1.

Il campo contentInfo dell’oggetto PKCS #7 trasportato contiene sempre un’entità MIME che è preparata come descritto nella sezione 2.5.

Il campo contentInfo non deve mai essere vuoto.

 

Poiché gli oggetti PKCS #7 sono dati binari, nella maggior parte dei casi la codifica di trasferimento base-64 è appropriata, in particolare quando usata con il trasporto SMTP.

La codifica di trasferimento usata dipende dal trasporto attraverso cui l’oggetto è inviato, e non è una caratteristica del tipo MIME.

 

Nota che questa discussione si riferisce alla codifica di trasferimento dell’oggetto PKCS #7 o dell’entità MIME “esterna”.

È completamente distinta e non è legata affatto alla codifica di trasferimento dell’ entità MIME resa sicura dall’oggetto PKCS #7, l’oggetto “interno”, che è descritto nella sezione 2.5.

 

Poiché ci sono diversi tipi di oggetti application/pkcs7-mime, un agente in trasmissione DOVREBBE fare il possibile per aiutare l'agente in ricezione a conoscere i contenuti dell'oggetto senza forzarlo a decodificare l' ASN.1 dell'oggetto.

Gli header MIME di tutti gli oggetti application/pkcs7-mime DOVREBBERO includere il parametro opzionale "smime-type".  

L’intento di questo parametro è di comunicare i dettagli circa il servizio di sicurezza applicato (firma o imbustamento) insieme con l’informazione circa il content type contenuto.

 

 

I parametri name e filename

Per il tipo application/pkcs7-mime, gli agenti in trasmissione DOVREBBERO emettere il parametro opzionale “name” nel campo Content-Type per compatibilità con i sistemi più vecchi.

Gli agenti in trasmissione DOVREBBERO anche emettere il campo opzionale Content-Disposition con il parametro “filename”.

Se un agente in trasmissione emette i parametri suddetti, il valore dei parametri DOVREBBE essere un nome di file con l’estensione appropriata:

 

 

MIME Type                             File Extension

 

application/pkcs7-mime               .p7m

(signedData, envelopedData)

 

application/pkcs7-mime               .p7c

(degenerate signedData

"certs-only" message)

 

application/pkcs7-signature          .p7s

 

application/pkcs10                       .p10

 

  

In oltre, il nome del file DOVREBBE essere limitato ad otto caratteri seguiti da una estensione di tre lettere.

Il filename di base può essere un qualsiasi nome distinto; l’uso del nome del file base “smime” DOVREBBE essere usato per indicare che l’entità MIME è associata con S/MIME.

 

L’inclusione di un nome di file serve a due scopi:

 

·        Rende più semplice l’utilizzo di oggetti S/MIME come file su disco.

·        Può anche comunicare informazione di tipo lungo i gateway. Questo spesso permette ai sistemi in ricezione di determinare l’applicazione appropriata per trattare l’allegato, in questo caso un applicazione per elaborazioni S/MIME.