caedicom colombia - política de estampado cronológico · 2020-05-18 · autoridad de estampado...

30
CAEDICOM COLOMBIA - Política de Estampado Cronológico Redactada según RFC 3647 y CEA 4-1-10 versión 01 de ONAC

Upload: others

Post on 22-Jun-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

CAEDICOM COLOMBIA - Política de EstampadoCronológico

Redactada según RFC 3647 y CEA 4-1-10 versión 01 de ONAC

CAEDICOM COLOMBIA - Política de Estampado Cronológico

Título del documento: CAEDICOM COLOMBIA - Política de EstampadoCronológico

Asunto: Redactada según RFC 3647 y CEA 4-1-10 versión 01 deONAC

Nombre del fichero: CAEDICOMCO_PC_PoliticaEstampadoCronologico.odt

Versión: 1.8

Estado: VIGENTE

Fecha: 05/03/20

Autor: Jose Romero Artigas

OID 1.3.6.1.4.1.30051.2.3.3.10

Revisión, Aprobación

Revisado por: Raul Santisteban Cano Fecha: 05/03/2020

Aprobado por: José Vilata Tamarit Fecha: 05/03/2020

Historial de cambios

Versión Fecha Descripción de la acción Páginas

1.0 26/09/16 Documento inicial 22

1.1 06/03/17 Cambios para acreditación con ONAC 27

1.2 12/06/18 Inclusión de modelos de contratos y tarifasInclusión del punto Documentos Normativos o Técnicos

30

1.3 03/01/19 Se alinea el texto de la introducción con el numeral 10.1 del CEA.

5

1.4 23/01/19 Renovación del certificado y cambio de la URL de acceso

12

1.5 25/02/19 Se suprimen referencias a verificación de laidentidad

10

1.6 20/11/19 Se actualizan las tarifas y modelos de contrato 16

1.7 04/12/19 Se actualiza y se detalla la parte del ciclo de vida 10

1.8 05/03/2020 Se incluye la validación del Certificado deexistencia y representación legal

Se actualizan las tarifas y modelos de contrato

10

16

CAEDICOM COLOMBIA - Política de Estampado Cronológico | | 2

CAEDICOM COLOMBIA - Política de Estampado Cronológico

Índice de contenido

1 Introducción.......................................................................................................................................................... 5

2 Referencias, definiciones y abreviaturas...........................................................................................................62.1 Referencias............................................................................................................................................................................6

2.2 Definiciones...........................................................................................................................................................................6

2.3 Abreviaturas...........................................................................................................................................................................6

2.4 Documentos normativos o técnicos..................................................................................................................................7

3 Conceptos generales...........................................................................................................................................83.1 Servicio de Estampado Cronológico.................................................................................................................................8

3.2 Autoridad de Estampado Cronológico (AEC)..................................................................................................................9

3.3 Suscriptores...........................................................................................................................................................................9

4 El ciclo de vida de servicio................................................................................................................................104.1 Solicitud................................................................................................................................................................................10

4.2 Revisión de la solicitud.....................................................................................................................................................10

4.3 Revisión................................................................................................................................................................................11

4.4 Toma de la decisión...........................................................................................................................................................12

4.5 Revocación y suspensión del servicio...........................................................................................................................13

5 Política de Estampado Cronológico.................................................................................................................145.1 Vista general........................................................................................................................................................................14

5.2. Identificación de la política de Estampado Cronológico...........................................................................................14

5.3. Aplicación del estampado de tiempo............................................................................................................................15

6 Obligaciones y responsabilidades....................................................................................................................166.1 Tarifas y Modelos de Contrato.........................................................................................................................................16

6.2 Obligaciones de la AEC....................................................................................................................................................18

6.2.1 Obligaciones...............................................................................................................................................................18

6.2.2 Responsabilidad financiera........................................................................................................................................18

6.2.3 Exoneración de responsabilidad................................................................................................................................18

6.2.4 Cese de la actividad de la AEC..................................................................................................................................19

6.3 Cliente...................................................................................................................................................................................19

6.4 Tercero que confía en las estampas de tiempo...........................................................................................................20

6.5 Derechos de propiedad intelectual.................................................................................................................................20

7 Requerimientos Operacionales.........................................................................................................................217.1 Obtención del tiempo fiable.............................................................................................................................................21

7.2 Certificado de la AEC........................................................................................................................................................21

7.2.1 Generación de claves de la AEC...............................................................................................................................21

7.2.2 Protección de la clave privada de la AEC..................................................................................................................21

7.2.3 Publicación del certificado de AEC............................................................................................................................22

7.2.4 Cambio de certificado de AEC...................................................................................................................................22

7.3 Implementación de la solicitud y respuesta de estampas de tiempo.....................................................................22

7.3.1 Protocolo Timestamp vía HTTP.................................................................................................................................22

7.4 Formato de los mensajes..................................................................................................................................................22

7.4.1 Timestamp Request...................................................................................................................................................22

7.4.2 Timestamp Response................................................................................................................................................23

7.4.3 Validate Request........................................................................................................................................................25

7.4.4 Validate Reply............................................................................................................................................................26

7.5 Ejemplo de conexión en Java..........................................................................................................................................26

CAEDICOM COLOMBIA - Política de Estampado Cronológico | | 3

CAEDICOM COLOMBIA - Política de Estampado Cronológico

8 Peticiones, quejas, reclamos y apelaciones....................................................................................................30

CAEDICOM COLOMBIA - Política de Estampado Cronológico | | 4

CAEDICOM COLOMBIA - Política de Estampado Cronológico

1 INTRODUCCIÓN

EDICOM SAS presta servicios de certificación de CAEDICOM Colombia cumpliendocon la obligación establecida en el artículo 160 del Decreto Ley 0019 de 2012 y en elDecreto reglamentario 333 del 19 de febrero de 2014, así como en la ley 527 de1999 en sus artículos 2 literal d), artículo 29 y artículo 30 modificado por el DecretoLey 0019 de 2012, artículo 42 del decreto 1471 de 2014 y los demás reglamentosque los modifiquen o complementen.

EDICOM SAS tiene su domicilio principal en la ciudad de Bogotá, se encuentrainscrita en el Registro Mercantil bajo el número de matrícula No. 02393355.

Esta Política establece las reglas generales empleadas por la Autoridad deEstampado Cronológico de la Autoridad de Certificación de EDICOM de Colombia(en adelante CAEDICOM), para la emisión de tokens que contienen estampas detiempo firmadas. Se establecen en este documento los participantes de estosprocesos, especificando sus responsabilidades, derechos y ámbito de aplicación.

La presente política es conforme a la norma del ETSI EN 319 421 “ElectronicSignatures and Infrastructures (ESI);Policy and Security Requirements for TrustService Providers issuing Time-Stamps ” y a su especificación equivalente RFC-3161 “Internet X.509 Public Key Infrastructure Time-Stamp Protocol (TSP)”.

Esta Política asume cierto grado de conocimiento por parte del lector de conceptosrelacionados con las infraestructuras de clave pública y las estampas de tiempo. Sieste no fuera el caso, se recomienda al lector que se informe sobre los temasanteriores antes de continuar con la lectura del presente documento.

El presente documento puede ser usado por las partes confiantes y los suscriptoresde los servicios proporcionados por la CAEDICOM como base para garantizar laconfianza de los servicios que se describen en este documento.

Esta política esta basada en criptografía de clave pública, fuentes de tiempo fiables ycertificados X.509 v3 y está subordinada al cumplimiento de las CondicionesGenerales expuestas en la Declaración de Prácticas de Certificación (DPC) de laCAEDICOM Colombia.

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 1Introducción | 5

CAEDICOM COLOMBIA - Política de Estampado Cronológico

2 REFERENCIAS, DEFINICIONES Y ABREVIATURAS

2.1 Referencias

Los documentos que se citan a continuación se mencionan a lo largo del texto:

[1] Declaración de Prácticas de Certificación de la CAEDICOM Colombia (DPC)

[2] ETSI TS 102 023 “Policy Requirements for time-stamping authorities”

[3] RFC-3161 “Internet X.509 Public Key Infrastructure – Time Stamp Protocol (TSP)”

[4] ETSI EN 319 421 “Electronic Signatures and Infrastructures (ESI); Policy andSecurity Requirements for Trust Service Providers issuing Time-Stamps ”

2.2 Definiciones

Para los propósitos del presente documento, se aplican los siguientes términos ydefiniciones:

Autoridad de Estampado Cronológico: Sistema de emisión y gestión deestampas de tiempo seguras.

Suscriptor: Persona o entidad que solicita los servicios proporcionados por laAutoridad de Estampado Cronológico.

Token de Estampa de Tiempo: Dispositivo de datos empleado en un procesode creación de firma electrónica, que une la representación de un dato a untiempo concreto, estableciendo así evidencia de que el dato existía antes deese tiempo.

Usuario: Destinatario de un Token de Estampa de tiempo y que confía en elmismo.

Declaración de Prácticas de Estampado Cronológico: Declaración de lasPrácticas que una Autoridad de Estampado Cronológico emplea en laemisión. En el caso de la CAEDICOM, todos los puntos que debe tratar estadeclaración se encuentra integrada con los documentos operacionales, deprocedimiento y técnicos que engloban toda la plataforma de la misma.

2.3 Abreviaturas AEC: Autoridad de Estampado CronológicoSEC: Servicio de Estampado Cronológico SET: Solicitud de Estampa de Tiempo CAEDICOM: Autoridad de Certificación de EDICOM TET: Token de Estampa de Tiempo IETF: Internet Engineering Task Force CEN: Comité Europeo de Normalización

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 2Referencias, definiciones y abreviaturas | 6

CAEDICOM COLOMBIA - Política de Estampado Cronológico

CWA: Cen Workshop Agreement RFC: Request for comment UTC: Universal Time Coordinated CRL: Certificate Revocation ListFIPS: Federal Information Processing Standards HSM: Hardware Security Module GPS: Global Positioning System

2.4 Documentos normativos o técnicos

A continuación se especifican los documentos normativos o técnicos que cumpleesta política:

• Longitud y tipo de clave de certificado de la AEC: RSA 2048

• Algoritmo de Hash empleado en la infraestructura de la AEC: SHA256

• RFC 3628 “Policy Requirements for Time-Stamping Authorities (TSAs)”Noviembre de 2003

• ETSI T-X509 V3 “Open Systems Interconnection – The Directory: Public-keyand attribute certificate frameworks” octubre 2012

• Nivel de seguridad de los dispositivos SSCD/HSM FIPS 140-2 Nivel 3diciembre 2003

• RFC 3161 “Internet X.509 Public Key Infrastructure Time-Stamp Protocol(TSP)” Agosto 2001

• RFC 5905 “Network Time Protocol Version 4: Protocol and AlgorithmsSpecification” Junio 2010

• RFC 5216 “The EAP-TLS Authentication Protocol” Marzo 2008

• ETSI EN 319 421 V1.1.1 ”Electronic Signatures and Infrastructures (ESI);Policy and Security Requirements for Trust Service Providers issuing Time-Stamps ” Marzo 2016

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 2Referencias, definiciones y abreviaturas | 7

CAEDICOM COLOMBIA - Política de Estampado Cronológico

3 CONCEPTOS GENERALES

3.1 Servicio de Estampado Cronológico

El Estampado Cronológico (Timestamping) es un mecanismo on-line que permitedemostrar que una serie de datos han existido y no han sido alterados desde uninstante específico en el tiempo.

La implementación de la política de Estampado Cronológico se debe cumplir con elprotocolo definido en la norma RFC 3161 “Internet X.509 Public KeyInfrastructure Time-Stamp Protocol (TSP)”.

Los pasos para generar una estampa de tiempo son los siguientes:

El cliente calcula el hash del documento a sellar

El cliente envía una solicitud de estampa de tiempo a una URL determinadade CAEDICOM siguiendo el protocolo RFC 3161, incluyendo el hash deldocumento a sellar

CAEDICOM recibe la petición, revisa si la petición está completa y correcta yrealiza un control de acceso en función del usuario y password del cliente.

Si el resultado es correcto, la AEC firma la petición generando una Estampade Tiempo (incluyendo el hash del documento, la fecha y hora -obtenida de lahora legal de la República de Colombia tomada directamente de los patronesde referencia del Laboratorio de Tiempo y Frecuencia del Instituto deMetronomía-, y la firma electrónica de la AEC).

La estampa de tiempo se envía de vuelta al Cliente

El Cliente debe validar la firma de la estampa y custodiarlo debidamente

La AEC de la CAEDICOM también mantendrá un registro de las estampasemitidos para su futura verificación si así se ha contratado con el cliente

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 3Conceptos generales | 8

CAEDICOM COLOMBIA - Política de Estampado Cronológico

3.2 Autoridad de Estampado Cronológico (AEC)

La autoridad en la que confían los usuarios de los servicios de EstampadoCronológico (suscriptores y partes confiantes) para la emisión de las estampas detiempo. La AEC tiene responsabilidad global en la provisión del servicio deEstampado Cronológico que se identifica en la cláusula 4.1.

3.3 Suscriptores

Los suscriptores de este servicio son los usuarios del sistema con los que se hayasuscrito el correspondiente convenio de prestación de servicios de EstampadoCronológico Certificado.

Los clientes envían peticiones de estampado y reciben estampas de tiemposiguiendo el protocolo RFC3161 Time Stamp Protocol (TSP).

Los clientes deben adaptar sus sistemas para poder realizar peticiones deEstampado Cronológico. Existen librerías públicas que implantan el protocolo TSPen diversos lenguajes de programación:

BouncyCastle (http://www.bouncycastle.org): Conjunto de librerías criptográficasque implementan el protocolo TSP en los lenguajes Java y C#

OpenTSA (http://www.opentsa.org): Es una ampliación de la librería criptográficaOpenSSL que implementa el protocolo TSP en lenguaje C.

Digistamp (http://digistamp.com/toolkitDoc/MSToolKit.htm): Toolkit basado en lalibrería criptográfica CryptoAPI de Microsoft que implementa el protocolo TSP enVisual Basic

IAIK: Incluye librerías criptográficas en Java que implementan el protocolo TSP.Estas librerías son gratuitas únicamente para propósitos no comerciales

Adobe Reader: La aplicación Adobe Reader 8 permite validar estampas detiempo incluidos en documentos PDF.

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 3Conceptos generales | 9

CAEDICOM COLOMBIA - Política de Estampado Cronológico

4 EL CICLO DE VIDA DE SERVICIO

4.1 Solicitud

El punto de contacto para obtener servicios de CAEDICOM es el número telefónicodel departamento comercial de EDICOM SAS:

+57 1 7953970

o mediante el formulario de contacto que se encuentra en la web de EDICOM SAS

http://www.edicomgroup.com/

Un Key Account Manager tiene la responsabilidad de gestionar ese contactotelefónico y llevar a cabo la captura y registro de los datos del cliente necesariospara la prestación del servicio de certificación digital, que incluyen:

- Tipo de servicio de certificación requerido- Especificaciones del servicio a contratar- Contrato de prestación de servicios de certificación digital - Datos del cliente o del contacto principal (Cédula de ciudadanía/extranjería o

pasaporte)- Certificado de Existencia y Representación Legal expedido por la Cámara de

Comercio de los 30 días anteriores (si se trata de una organización)

También se podrá solicitar documentación adicional para los siguientes casos:- Administrador o representante legal sujeto a inscripción registral: Certificado

del Registro de los 30 días anteriores correspondiente relativo alnombramiento y vigencia de su cargo.

- Representación voluntaria: Poder notarial bastante que contengan unacláusula especial para solicitar certificados de persona jurídica a laCAEDCIOM.

- Asociaciones, Fundaciones o Cooperativas no inscribibles en el registromercantil: Certificado del Registro público donde consten inscritas, relativo asu constitución de los 30 días anteriores.Sociedades civiles y demás personas jurídicas: Documento público queacredite su constitución de manera fehaciente.

4.2 Revisión de la solicitudEl Key Account Manager (KAM) tiene la responsabilidad de informar y recibir delsolicitante la documentación necesaria para realizar el proceso de certificación digitalsegún lo establecido en la sección anterior.

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 4El ciclo de vida de servicio | 10

CAEDICOM COLOMBIA - Política de Estampado Cronológico

Tras verificar la documentación recibida del solicitante, todos los datos aportados poreste se archivan en la herramienta de Gestión Comercial del departamentoComercial de EDICOM SAS en el estado de ‘Cliente Potencial’. El Key AccountManager procede a la creación de la tarea técnica donde quedan detalladas todaslas características del servicio contratado. La tarea técnica queda asociada a la fichadel cliente quedando de este modo vinculadas.

Finalmente, cuando el suscriptor sea una organización, se validará el certificado deexistencia y representación legal en la web del Registro Único Empresarial y Socialde Colombia. Una vez realizadas todas las verificaciones, se descargarán yarchivarán en la tarea los documentos que acrediten que se han llevado a cabodichas comprobaciones.

A partir de este momento, el Key Account Manager será responsable de garantizarque:

a) La información acerca del solicitante es suficiente para realizar el proceso decertificación digital;

b) Se ha resuelto cualquier diferencia de entendimiento conocida entre EDICOMy el solicitante, incluyendo el acuerdo con respecto a la DPC, documentosnormativos u otros documentos reglamentarios;

c) Se ha definido el alcance del servicio de certificación digital solicitado;d) Se dispone de los medios para realizar todas las actividades de verificación;e) CAEDICOM tiene la competencia y la capacidad para llevar a cabo la

actividad y servicios de certificación digital.f) CAEDICOM declina cualquier solicitud de un servicio de certificación digital, si

el mismo no se encuentra en el alcance de la acreditación que le fueotorgado.

De este modo, una vez finalizado el proceso de revisión de la solicitud, la tarea y elservicio pasan al estado “Pendiente de Revisión” y quedan por tanto en espera deser revisados.

4.3 Revisión

El personal designado del departamento de preventa tiene la responsabilidad derevisar la tarea técnica para asegurar la calidad de la misma y del proceso decertificación. El objetivo de esta revisión consiste en corroborar que la informaciónintroducida por el KAM es correcta, descriptiva y acorde al servicio de certificacióndigital a ofrecer. Entre otros se revisa:

• El tipo de servicio corresponde con lo solicitado por el solicitante.

• La información disponible del solicitante es suficiente para prestar el serviciode certificación digital.

• El alcance del servicio está delimitado y es correcto de acuerdo a losrequerimientos.

• Que el solicitante y la RA han firmado un contrato para la prestación deservicios de certificación digital.

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 4El ciclo de vida de servicio | 11

CAEDICOM COLOMBIA - Política de Estampado Cronológico

• No hay ausencia de información.

Llegados a este punto, en caso de detectarse errores o falta de calidad en lainformación suministrada, la tarea y, por tanto, la solicitud del servicio, serándevueltos al estado “Intervención comercial” quedando por tanto responsable el KAMde proceder de nuevo con la correcta grabación o solicitud de información restantenecesaria. Asimismo, se debe declinar una solicitud de servicio de certificacióndigital, si el mismo no se encuentra en el alcance de la acreditación otorgada porONAC, por lo que se devolverá la solicitud al estado “Intervención comercial”quedando responsable el KAM de declinar o ajustar la solicitud con el cliente a loestablecido dentro del alcance de los servicios acreditados.

Si por el contrario la tarea es considerada correcta, continúa el flujo hacia la fase dedecisión, pasando a un estado interno de “Pendiente de realización”. Dicha accióndejará un registro en la aplicación a efectos de evidenciar la recomendación positiva,con base en la revisión efectuada, para que se tenga en cuenta en la decisión sobrela certificación. De igual modo, el personal de preventa que realiza la revisión, tienela posibilidad de registrar en la aplicación sus comentarios sobre la recomendaciónpara la decisión sobre la certificación con base en la revisión.

4.4 Toma de la decisión

La creación del servicio se realizará tras la aprobación por parte del ResponsableTécnico.

Para garantizar la imparcialidad en el proceso, la revisión de la solicitud y la toma dedecisión de la creación del entorno del servicio la realizan personas con diferentesroles y de departamentos distintos dentro de la organización, por tanto elResponsable Técnico no puede ser un Key Account Manager.

El Responsable Técnico tiene las siguientes responsabilidades y realiza lassiguientes acciones:

• Toma de decisión sobre la creación del servicio basada en los siguientescriterios

◦ Imparcialidad.

◦ No discriminación.

◦ Equidad.

◦ Asuntos relacionados específicamente con el alcance de la certificación.

• Aceptar la solicitud con la creación de las tareas técnicas necesarias para lacreación del servicio.

• El Responsable Técnico reserva y supervisa los recursos técnicos y humanospara la prestación del servicio.

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 4El ciclo de vida de servicio | 12

CAEDICOM COLOMBIA - Política de Estampado Cronológico

Una vez finalizada la parametrización y puesta en marcha del servicio, un miembrodel departamento técnico realizará la entrega al cliente de la documentación formalmediante el acta de cierre del proyecto, que incluirá:

◦ El nombre y la dirección de CAEDICOM.

◦ La fecha en que comienza la prestación del servicio.

◦ El nombre y la dirección del cliente.

◦ El alcance de la certificación digital (tipo de servicio).

◦ Toda otra información exigida para el servicio de certificación.

◦ Firma de la Autoridad de Registro.

4.5 Revocación y suspensión del servicio

El punto de contacto para solicitar una baja del servicio de Estampado Cronológicoes el número telefónico del departamento comercial de EDICOM SAS:

+57 1 7953970

o mediante el formulario de contacto que se encuentra en la web de EDICOM

http://www.edicomgroup.com/

La duración del contrato tiene carácter anual y se entenderá tácitamente renovadode no mediar notificación en contrario por cualquiera de las partes.

Cualquiera de las partes podrá resolver el contrato en cualquier momento mediantesolicitud de baja, comunicada por escrito de forma fehaciente con 45 días deantelación.

Queda expresamente prohibida dicha solicitud de baja efectuada por el Clientemediante comunicación telefónica.

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 4El ciclo de vida de servicio | 13

CAEDICOM COLOMBIA - Política de Estampado Cronológico

5 POLÍTICA DE ESTAMPADO CRONOLÓGICO

5.1 Vista general

La presente política establece el conjunto de reglas utilizadas durante la emisión y elcontrol de los tokens de estampa de tiempo (TET), y regulan además el nivel deseguridad para la AEC.

Los tokens de Estampado Cronológico son emitidos con una desviación máxima de500ms.

El perfil del certificado de la AEC, utilizado en la firma de los TET, se ajusta a loespecificado por el IETF en RFC-3161. En la siguiente tabla se detallan los camposbásicos de este perfil:

Campo Contenido I C TVersión v3 S FSerial Number 70AB0DA0348964A3 S FSignature Algorithm SHA256withRSAEncryption S F

Issuer Distinguished NameCN=CAEDICOM Colombia/serialNumber=NIT900680995-4, O=EDICOM, L=Calle 26 #59-51 Oficina 308 Torre Argos - Ciudad Empresarial Sarmiento Angulo - Bogotá, C=CO

S F

Validez 2 años S F

Subject Public Key InfoTipo de clave: RSALongitud de la clave: 2048 bits

S F

Subject S DCommonName (CN)CAEDICOM Colombia TSA S D

Organization (O)EDICOM S DCountry (C)CO S D

SubjectKeyIdentifier 6E:A7:DB:8C:B6:6C:99:E2:4A:55:D1:B3:D7:6B:5E:C5:A1:32:F1:9B S DAuthorityKeyIdentifier keyid:D1:C9:62:FC:4A:E7:C3:89:3B:9A:4D:E9:2B:EA:C1:72:72:BF:67:10 S FBasicConstraints S X F

CAFalso S X FpathLengthNo aplicable (0) F

KeyUsage digitalSignature,nonRepudiation S X FExtendedKeyUsage TimeStamping S X F

La AEC que proporciona sus servicios bajo la estructura de la CAEDICOM, emite lasestampas de tiempo acorde a la ETSI EN 319 421. Cada estampa de tiempo incluyeel identificador de la política, descrito en el capítulo 5.2 “Identificación de la Políticade Estampado Cronológico”, de la presente política.

El servicio de Estampado Cronológico es accesible vía https en la direccióntsa.acedicom.edicomgroup.com. La URL a definir en el clientehttps://tsa co .acedicom.edicomgroup.com .

5.2. Identificación de la política de Estampado Cronológico

La información de la política, que controla la emisión y el control de los tokens deEstampado Cronológico, esta definida en la siguiente Tabla :

Nombre del documento Política de estampado de tiempo de laCAEDICOM

Versión del documento Ver en la tabla de control del documento

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 5Política de Estampado Cronológico | 14

CAEDICOM COLOMBIA - Política de Estampado Cronológico

Estado del documento Vigente

OID (Object Identifier) 1.3.6.1.4.1.30051.2.3.3.10

Fecha de emisión 27/09/16

Fecha de expiración No aplicable.

DPC relacionada Declaración de Prácticas de Certificación(DPC) de la CAEDICOM. Versión 1.0

OID: 1.3.6.1.4.1.30051.2.3.1.2

Disponible en :

http://acedicom.edicomgroup.com

Localización http://acedicom.edicomgroup.com

El identificador de la política de la Autoridad de Estampado Cronológico de laCAEDICOM esta incluido en cada estampa de tiempo. También aparece en eldocumento de Declaración de Términos y Condiciones de Uso de la Autoridad deEstampado Cronológico.

5.3. Aplicación del estampado de tiempo las estampas de tiempo emitidos por la Autoridad de Estampado Cronológico de laCAEDICOM pueden emplearse para garantizar las transacciones y el no repudio enprocesos en los cuales intervenga cualquier organismo o entidad con los que sehaya formalizado un convenio de certificación.

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 5Política de Estampado Cronológico | 15

CAEDICOM COLOMBIA - Política de Estampado Cronológico

6 OBLIGACIONES Y RESPONSABILIDADES

6.1 Tarifas y Modelos de Contrato

El valor que fija CAEDICOM para los servicios de generación de estampas detiempo se establece de acuerdo a las condiciones contractuales acordadas con lossolicitantes del servicio de certificación digital y serán adecuadamente calculados yliquidados por el sistema de solicitud de productos y servicios de CAEDICOM.

El modelo de contrato y las tarifas de este servicio son:

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 6Obligaciones y responsabilidades | 16

CAEDICOM COLOMBIA - Política de Estampado Cronológico

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 6Obligaciones y responsabilidades | 17

CAEDICOM COLOMBIA - Política de Estampado Cronológico

6.2 Obligaciones de la AEC

6.2.1OBLIGACIONES

CAEDICOM, actuando como Autoridad de Estampado Cronológico (AEC) se obligaa:

Respetar lo dispuesto en esta Política de Estampado Cronológico.

Proteger sus claves privadas de forma segura.

Emitir estampas de tiempo conforme a esta Política y a los estándares deaplicación.

Garantizar que la hora y fecha incluidas en las estampas se mantienendentro de los márgenes precisión establecida en el contrato entre el cliente yCAEDICOM, que en ningún caso pueden ser superiores a lo establecido enel apartado 5.1.

Emitir estampas de tiempo según la información enviada por el cliente ylibres de errores de entrada de datos.

Emitir estampas de tiempos cuyo contenido mínimo sea el definido por lanormativa vigente, cuando sea aplicable.

Publicar esta Política de Estampado Cronológico

Informar sobre las modificaciones de la Política de Estampado Cronológico aclientes y terceros que confían en las estampas de tiempo.

Establecer los mecanismos de generación y custodia de la informaciónrelevante en las actividades descritas, protegiéndolas ante pérdida,destrucción o falsificación.

Custodiar las estampas de tiempo emitidos para los clientes que contraten elservicio de custodia

Sin perjuicio de lo anterior CAEDICOM no garantizará los algoritmos y estándarescriptográficos utilizados ni responderá de los daños causados por ataques externosa los mismos, siempre que hubiere aplicado la diligencia debida según el estado dela técnica en cada momento, y hubiere actuado conforme a lo dispuesto en laspresentes Políticas de Estampado Cronológico y en la legislación vigente, donde seaaplicable.

6.2.2RESPONSABILIDAD FINANCIERA

La AEC no se hace responsable en caso de pérdidas por transacciones

6.2.3EXONERACIÓN DE RESPONSABILIDAD

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 6Obligaciones y responsabilidades | 18

CAEDICOM COLOMBIA - Política de Estampado Cronológico

CAEDICOM no será responsable en ningún caso cuando se encuentre antecualquiera de estas circunstancias:

Estado de Guerra, desastres naturales, funcionamiento defectuoso de losservicios eléctricos, las redes telemáticas y/o telefónicas o de los equiposinformáticos utilizados por el Cliente o por los Terceros, o cualquier otro casode fuerza mayor.

Por el uso indebido o fraudulento de las estampas de tiempo.

Por el uso indebido de la información contenida en el Certificado o en la CRL.

Por el contenido de los mensajes o documentos estampados.

En relación a acciones u omisiones del Cliente

Falta de veracidad de la información suministrada para emitir la estampa

Negligencia en la conservación de sus datos de acceso al servicio deEstampado Cronológico, en el aseguramiento de su confidencialidad y en laprotección de todo acceso o revelación.

Extralimitación en el uso dla estampa de tiempo, según lo dispuesto en lanormativa vigente y en la presente Política de Estampado Cronológico.

En relación a acciones u omisiones del Usuario, tercero que confía en elcertificado.

Falta de comprobación de la suspensión o pérdida de vigencia del certificadodigital de la AEC publicada en el servicio de consulta sobre la vigencia de loscertificados o falta de verificación de la firma digital.

6.2.4CESE DE LA ACTIVIDAD DE LA AEC

Antes del cese de su actividad la AEC realizará las siguientes actuaciones:

Informará a todos los suscriptores, usuarios o entidades con los cuales tengaacuerdos u otro tipo de relación del cese con la anticipación mínima de 2 meses, o elperiodo que establezca la legislación vigente.

Revocará toda autorización a entidades subcontratadas para actuar en nombre de laAEC en el procedimiento de emisión de estampas de tiempo.

1. Informará a la administración competente, con la antelación indicada, el cesede su actividad y el destino que se vaya a dar a las estampas de tiempoemitidos hasta la fecha, especificando, en su caso, si se va a transferir lagestión y a quién.

6.3 Cliente

El Cliente estará obligado a cumplir con lo dispuesto por la normativa y además a:

Respetar lo dispuesto en los documentos contractuales firmados con la AEC.

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 6Obligaciones y responsabilidades | 19

CAEDICOM COLOMBIA - Política de Estampado Cronológico

Verificar la corrección de la firma digital de la estampa de tiempo y la validezdel certificado de la AEC en el momento de firmarlo.

6.4 Tercero que confía en las estampas de tiempo

Será obligación de los Usuarios cumplir con lo dispuesto por la normativa vigente yademás:

Verificar la corrección de la firma de la estampa de tiempo y la validez delcertificado de la AEC en el momento de firmarlo.

6.5 Derechos de propiedad intelectual

Todos los derechos de propiedad intelectual incluyendo los referidos a certificados yCRL’s emitidos por la CAEDICOM, OIDs, la presente DPC, las Políticas deCertificado que le son de aplicación, así como cualquier otro documento, electrónicoo de cualquier otro tipo, propiedad de CAEDICOM, pertenecen a la CAEDICOM.

El uso de la marca CAEDICOM está reservado a EDICOM SAS. Si un suscriptordesea acreditar que está utilizando los servicios de CAEDICOM mediante el uso dela marca CAEDICOM, puede hacer una solicitud a CAEDICOM mediante los canalesexpuestos en el punto 8. CAEDICOM se reserva el derecho a aceptar o rechazardicha solicitud.

Las claves privadas y las claves públicas son propiedad del usuario,independientemente del medio físico que se emplee para su almacenamiento.

El suscriptor conserva cualquier derecho que pudiere ostentar sobre la marcaproducto o nombre comercial contenido en el certificado.

Para tal efecto, atenderá lo dispuesto en el Código de Comercio, la Decisión 486 de2000, la Decisión 351 de 1993 y demás normas complementarias a estas materias.

El uso de marca de certificación cumple los dispuesto en el documento RAC-1.4-03de ONAC (Reglamento de Uso de los Símbolos de Acreditado y/o Asociado). Elsuscriptor no está autorizado a emplear la marca ONAC.

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 6Obligaciones y responsabilidades | 20

CAEDICOM COLOMBIA - Política de Estampado Cronológico

7 REQUERIMIENTOS OPERACIONALES

7.1 Obtención del tiempo fiable

Las fuentes de tiempos utilizadas, basadas en el protocolo NTP (Network Time Pro-tocol) se auto calibran por distintos caminos, haciendo que la exactitud no disminuyapor debajo de los requerimientos especificados (capítulo 5.1 del presente documen-to), utilizando como referencia la hora legal de la República de Colombia tomada di-rectamente de los patrones de referencia del Laboratorio de Tiempo y Frecuencia delInstituto Nacional de Metrología y la sincronización GPS vía satélite. Se disponen dedistintos caminos de sincronización de forma que la manipulación de los sistemas noafecta a la exactitud de la estampa de tiempo.

A nivel interno la CAEDICOM dispone de mecanismos de seguridad que evitan lamanipulación física de sus sistemas (información adicional en la DPC, apartado 5.1“Controles de Seguridad Física”).

La CAEDICOM incorpora mecanismos que detectan diferencias entre el tiemposuministrado y el que se incluye en las estampas de tiempo. El cálculo del tiempo serealiza de acuerdo al protocolo NTP.

7.2 Certificado de la AEC

7.2.1GENERACIÓN DE CLAVES DE LA AEC

Las claves de la AEC se generan en módulo de seguridad hardware (en adelanteHSM), que cumple con el estándar NIST FIPS 140-2 nivel 3, por personal autorizadode la CAEDICOM. La descripción de los roles y controles del personal puedeencontrarse en la DPC, en el apartados 5.2 “Controles Procedimentales” [1].

El entorno de generación de las claves cumple los requisitos normativos impuestospor la CAEDICOM, de acuerdo con la DPC.

El algoritmo y tamaño de claves se describen en el capítulo 5.1 “Vista general” deesta política.

7.2.2PROTECCIÓN DE LA CLAVE PRIVADA DE LA AEC

Los niveles de seguridad del HSM donde se almacena la clave se describen en elcapítulo 7.2.1 “Generación de la clave de la AEC” de esta política.

Esta clave se encuentra bajo control multipersonal. Se encuentra dividida en variosfragmentos y es necesario un mínimo de dos de estos fragmentos para recomponerla clave.

Las copias de Backup de la clave privada se almacenan cifradas en archivosseguros ignífugos.

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 7Requerimientos Operacionales | 21

CAEDICOM COLOMBIA - Política de Estampado Cronológico

7.2.3PUBLICACIÓN DEL CERTIFICADO DE AEC

El certificado de la AEC, que incluye su clave publica, se distribuye utilizando losmecanismos facilitados por la CAEDICOM principalmente a través del sitio Webhttp://acedicom.edicomgroup.com.

7.2.4CAMBIO DE CERTIFICADO DE AEC

El certificado de la AEC puede ser cambiado en cualquier momento por otrocertificado de AEC igualmente válido.

Este cambio no se comunicará a los usuarios del servicio, los cuales deberíanconfiar en todos las estampas emitidos por CAEDICOM y firmados con certificadosválidos de AEC dentro de la jerarquía de certificación.

7.3 Implementación de la solicitud y respuesta deestampas de tiempo.

Las solicitudes y respuestas de estampas se se adherirán a la sintaxis de laespecificación “RFC3161 Time Stamp Protocol (TSP)” descrito en el Apartado 3.4.“Time-Stamp Protocol via http” de la especificación, con las restricciones de la normaETSI EN 319 421.

La URL del servicio de Estampado Cronológico de CAEDICOM es la especificada enel apartado 5.1 de este documento

7.3.1PROTOCOLO TIMESTAMP VÍA HTTP

Formato de la petición

Content-Type: application/timestamp-query

<<the ASN.1 DER-encoded Time-Stamp Request message>>

Formato de la respuesta

Content-Type: application/timestamp-reply

<<the ASN.1 DER-encoded Time-Stamp Response message>>

7.4 Formato de los mensajes

Existen dos tipos de mensajes: los que el cliente envía a la AEC, y los que envía laAEC al cliente. Todos los mensajes están representados en notación ASN.1

7.4.1TIMESTAMP REQUEST

Este mensaje lo utiliza la entidad que quiere un estampa de tiempo (solicitante) paraacceder al servicio que ofrece una AEC. Tiene el siguiente formato:

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 7Requerimientos Operacionales | 22

CAEDICOM COLOMBIA - Política de Estampado Cronológico

TimeStampReq ::= SEQUENCE {

version INTEGER { v1(1) },

messageImprint MessageImprint,

reqPolicy TSAPolicyId OPTIONAL,

nonce INTEGER OPTIONAL,

certReq BOOLEAN DEFAULT FALSE,

extensions [0] IMPLICIT Extensions OPTIONAL

}

Campo Descripciónversion Versión de la petición TimeStamp (v1)messageImprint OID del algoritmo hash y el valor del hash de los datosreqPolicy OID de la política de la AEC

Indica a la AEC la política bajo la cuál quiere que se proporcione la estampaNonce Si se incluye el nonce permite al cliente comprobar el retardo en la respuesta

cuando no se dispone de reloj local. La respuesta debe contener este mismo número o se rechazará. El nonce es un número aleatorio con una elevada probabilidad de que el cliente lo genere una única vez (entero de 64 bits).

CertReq Si el campo certReq está presente y con valor true, la clave publica de la AEC debe estar referenciada por el identificador ESSCertID dentro de un atributo SigningCertificate de la estructura SignedData en la respuesta. Ese campo además puede contener otros certificados.

Si falta el campo certReq o tiene valor false entonces, el campo SigningCertificate de la estructura SignedData no debe aparecer en la respuesta.

extensions Es una forma de permitir añadir nuevos campos en el futuro. Si se incluye algún campo de extensión que la AEC no reconozca, ésta devolverá un mensaje de error de extensión no aceptada (unacceptedExtension).

Más información en: RFC 2459

MessageImprint ::= SEQUENCE {

hashAlgorithm AlgorithmIdentifier,

hashedMessage OCTET STRING

}

Campo DescripciónhashAlgorithm OID del algoritmo hash:

El algoritmo de hash indicado en hashAlgorithm debería ser unoconocido por la AEC. También comprobará que sea suficientemente fuerte. Si la AEC no reconoce el algoritmo usadoo piensa que es débil, entonces la AEC denegará el servicio al cliente devolviendo un pkiStatusInfo de 'bad_alg'.

hashedMessage Este campo contiene el hash de los datos que se quiere sellar. Lalongitud del hash tiene que coincidir con la longitud de hash delalgoritmo utilizado

El mensaje Timestamp Request no identifica al cliente, y esta información no esvalidada por la AEC. En el caso en que la AEC requiera su identidad deberá utilizarun mecanismo alternativo de identificación o autenticación.

7.4.2TIMESTAMP RESPONSE

Es la respuesta que la AEC da a una mensaje time stamp request. Tiene la siguienterepresentación:

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 7Requerimientos Operacionales | 23

CAEDICOM COLOMBIA - Política de Estampado Cronológico

TimeStampResp ::= SEQUENCE {

status PKIStatusInfo,

timeStampToken TimeStampToken OPTIONAL

}

Campo DescripciónStatus Estado de la respuesta. Ver sección 3.2.3 del RFC 2510timeStampToken Este campo que contiene la marca de tiempo generado.

Es una estructura ContentInfo que encapsula información firmada en una estructura TSTInfo. Está definida en la RFC 2630.

PKIStatusInfo ::= SEQUENCE {

status PKIStatus,

statusString PKIFreeText OPTIONAL,

failInfo PKIFailureInfo OPTIONAL

}

Campo DescripciónStatus Estado de la respuesta:

granted(0): Marca de tiempo presente. grantedWithMods(1): Marca de tiempo presente con modificaciones. rejection(2): Petición rechazada waiting(3): Esperando revocationWarning(4) : Advertencia de revocación inminente revocationNotification (5): Notificación de revocación

statusString Puede usarse para indicar eventos de errorfailInfo Causas del fallo:

badAlg(0): Identificador de algoritmo no soportado badRequest(2): Transacción no permitida o soportada badDataFormat(5): Datos enviados con formato incorrecto timeNotAvailable(14): Origen de tiempo no disponible unacceptedPolicy(15): Política solicitada no soportada unacceptedExtension(16): Extensión no soportada addInfoNotAvailable(17): Información adicional no disponible systemFailure(25): Error del sistema

TSTInfo ::= SEQUENCE {

version INTEGER { v1(1) },

policy TSAPolicyId,

messageImprint MessageImprint,

serialNumber INTEGER,

genTime GeneralizedTime,

accuracy Accuracy OPTIONAL,

ordering BOOLEAN DEFAULT FALSE,

nonce INTEGER OPTIONAL,

tsa [0] GeneralName OPTIONAL,

extensions [1] IMPLICIT Extensions OPTIONAL

}

Campo DescripciónVersion Versión de la respuesta TimeStamp (v1)ReqPolicy OID de la política de la AEC

Indica la política de la AEC bajo la cual se proporciona la estampa, si se ha generadola estampa, será igual al del mensaje de petición

messageImprint OID del algoritmo hash y el valor del hash de los datos. Debe tener el mismo valor

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 7Requerimientos Operacionales | 24

CAEDICOM COLOMBIA - Política de Estampado Cronológico

que el campo correspondiente de la petición.SerialNumber Es un entero asignado por la AEC y debe ser único para cada sello que genere. Por

tanto, un sello será identificado por el nombre de la AEC que lo generó y el número de serie asignado. Permite hasta 160 bits

genTime Es el instante de tiempo en el que se creó la estampa. Tanto ISO como el IETF expresan el instante de tiempo referido a la escala UTC, para evitar confusiones con las horas locales. El formato debe ser el siguiente:CC YY MM DD hh mm ss Z

CC representa el siglo (19-99) YY representa el año (00-99) MM representa el mes (01-12) DD representa el día (01-31) hh representa la hora (00-23) mm representa los minutos (00-59) ss representa los segundos (00-59) Z viene de zulu, que es como se conoce a la escala UTC

accuracy Representa la desviación del tiempo UTC contenido en genTime, en los casos que sea necesario, proporciona una precisión incluso de microsegundos:

Accuracy ::= SEQUENCE {

seconds [1] Integer OPTIONAL,

millis [2] Integer (1..999) OPTIONAL,

micros [3] Integer (1..999) OPTIONAL,

}

Cuando este campo no está presente la precisión puede obtener a través de otros métodos, por ejemplo TSAPolicyId.

ordering Si falta el campo ordering o está presente y tiene valor false, entonces el campo genTime solo indica el momento en el que la marca de tiempo ha sido creada por la AEC.

En este caso, el orden de la marcas de tiempo emitidas por una misma AEC o distintas AECs solo es posible cuando la diferencia entre el genTime de la primera marca de tiempo es mayor que la suma de las precisiones del genTime de cada marca de tiempo.

nonce El nonce es un número aleatorio con una elevada probabilidad de que el cliente lo genere una única vez (entero de 64 bits). Debe tener el mismo valor que el campo correspondiente de la petición.

Tsa Identificador de la AECextensions Es una forma de permitir añadir nuevos campos en el futuro.

Más información en: RFC 2459

7.4.3VALIDATE REQUEST

Es el mensaje que una entidad envía a una AEC cuando quiere comprobar la validezy la autenticidad de un sello. En la RFC 3161 del IETF no se contempla el procesode verificación de la estampa de tiempo:

ValidateRequest ::= SEQUENCE {

version INTEGER { v1(0) },

tst TimeStampToken,

requestID [0] OCTET STRING OPTIONAL

}

- tst: contiene la estampa que se quiere verificar

- requestID: identificador que se utiliza para vincular una petición con su respuesta

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 7Requerimientos Operacionales | 25

CAEDICOM COLOMBIA - Política de Estampado Cronológico

7.4.4VALIDATE REPLY

La AEC envía este mensaje como respuesta a una petición de verificación:

ValidateReply ::= SEQUENCE {

version INTEGER { v1(0) },

status PKIStatusInfo,

tst TimeStampToken,

requestID [0] OCTET STRING OPTIONAL

}

7.5 Ejemplo de conexión en Java

A continuación se describe un ejemplo de conexión a la AEC de EDICOM mediante código JAVA y utilizando las librerías bouncycastle (http://www.bouncycastle.org/latest_releases.html): bcprov-jdkxx-145.jar y bctspjdkxx-145.jar

package com.edicom.map.net;import java.io.*;import java.math.*;import java.net.*;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;

import org.bouncycastle.asn1.cmp.*;import org.bouncycastle.asn1.x509.*;import org.bouncycastle.tsp.*;import org.bouncycastle.util.encoders.Base64;

public class TimestampClient {/** URL of the Time Stamp Authority */protected String tsaURL;/** TSA Username */protected String tsaUsername;/** TSA password */protected String tsaPassword;/** Estimate of the received time stamp token */protected int tokSzEstimate;/*** Creates an instance of a TSAClient that will use BouncyCastle.* @param url String - Time Stamp Authority URL (i.e. "http://tsatest1.digistamp.com/TSA")*/

public TimestampClient(String url) {this(url, null, null, 4096);

}/*** Creates an instance of a TSAClient that will use BouncyCastle.* @param url String - Time Stamp Authority URL (i.e."http://tsatest1.digistamp.com/TSA")* @param username String - user(account) name* @param password String - password*/

public TimestampClient(String url, String username, String password) {this(url, username, password, 4096);}/*** Constructor.* Note the token size estimate is updated by each call, as the token* size is not likely to change (as long as we call the same TSA using* the same imprint length).* @param url String - Time Stamp Authority URL (i.e."http://tsatest1.digistamp.com/TSA")* @param username String - user(account) name

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 7Requerimientos Operacionales | 26

CAEDICOM COLOMBIA - Política de Estampado Cronológico

* @param password String - password* @param tokSzEstimate int - estimated size of received time stamp token (DER

encoded)*/

public TimestampClient(String url, String username, String password, inttokSzEstimate) {

this.tsaURL = url;this.tsaUsername = username;this.tsaPassword = password;this.tokSzEstimate = tokSzEstimate;

}

/*** Get timestamp token - Bouncy Castle request encoding / decoding layer*/

protected byte[] getTimeStampToken(byte[] imprint) throws Exception {byte[] respBytes = null;try {

// Setup the time stamp requestTimeStampRequestGenerator tsqGenerator = newTimeStampRequestGenerator();tsqGenerator.setCertReq(true);// tsqGenerator.setReqPolicy("1.3.6.1.4.1.601.10.3.1");BigInteger nonce = BigInteger.valueOf(System.currentTimeMillis());TimeStampRequest request =

tsqGenerator.generate(X509ObjectIdentifiers.id_SHA1.getId(),imprint,nonce);

byte[] requestBytes = request.getEncoded();

// Call the communications layerrespBytes = getTSAResponse(requestBytes);

// Handle the TSA responseTimeStampResponse response = new TimeStampResponse(respBytes);

// validate communication level attributes (RFC 3161 PKIStatus)response.validate(request);PKIFailureInfo failure = response.getFailInfo();int value = (failure == null) ? 0 : failure.intValue();if (value != 0) {

// @todo: Translate value of 15 error codes defined by PKIFailureInfo to string

throw new Exception("[invalid.tsa.1.response.code] url: " + tsaURL + ". status: " + String.valueOf(value));

}// @todo: validate the time stap certificate chain (if we want// assure we do not sign using an invalid timestamp).// extract just the time stamp token (removes communication status

info)TimeStampToken tsToken = response.getTimeStampToken();if (tsToken == null) {

throw new Exception("[tsa.1.failed.to.return.time.stamp.token] url: " + tsaURL + ". status: " + response.getStatusString());

}TimeStampTokenInfo info = tsToken.getTimeStampInfo(); // to view

details

byte[] encoded = tsToken.getEncoded();long stop = System.currentTimeMillis();

// Update our token size estimate for the next call (padded to be safe)this.tokSzEstimate = encoded.length + 32;return encoded;

} catch (Exception e) {throw e;

} catch (Throwable t) {throw new Exception("[failed.to.get.tsa.response.from.1] url: " +

tsaURL + ". status: " + t);}

}

/*** Get timestamp token - communications layer

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 7Requerimientos Operacionales | 27

CAEDICOM COLOMBIA - Política de Estampado Cronológico

* @return - byte[] - TSA response, raw bytes (RFC 3161 encoded)*/

protected byte[] getTSAResponse(byte[] requestBytes) throws Exception {// Setup the TSA connectionURL url = new URL(tsaURL);URLConnection tsaConnection;tsaConnection = (URLConnection) url.openConnection();tsaConnection.setDoInput(true);tsaConnection.setDoOutput(true);tsaConnection.setUseCaches(false);tsaConnection.setRequestProperty("Content-Type",

"application/timestampquery");//tsaConnection.setRequestProperty("Content-Transfer-Encoding", "base64");tsaConnection.setRequestProperty("Content-Transfer-Encoding", "binary");if ((tsaUsername != null) && !tsaUsername.equals("") ) {

String userPassword = tsaUsername + ":" + tsaPassword;tsaConnection.setRequestProperty("Authorization", "Basic " +

new String(Base64.encode(userPassword.getBytes())));}OutputStream out = tsaConnection.getOutputStream();out.write(requestBytes);out.close();

// Get TSA response as a byte arrayInputStream inp = tsaConnection.getInputStream();ByteArrayOutputStream baos = new ByteArrayOutputStream();byte[] buffer = new byte[1024];int bytesRead = 0;while ((bytesRead = inp.read(buffer, 0, buffer.length)) >= 0) {

baos.write(buffer, 0, bytesRead);}byte[] respBytes = baos.toByteArray();

String encoding = tsaConnection.getContentEncoding();if (encoding != null && encoding.equalsIgnoreCase("base64")) {

respBytes = Base64.decode(new String(respBytes));}return respBytes;

}public byte[] generateImprint(byte[] data) throws NoSuchAlgorithmException {

MessageDigest md = MessageDigest.getInstance("SHA-1");return md.digest(data);

}public byte[] generateImprintFromFile(String filename) throws Exception {

byte[] data = loadBytesFromFile(filename);return generateImprint(data);

}public byte[] loadBytesFromFile(String name) {

FileInputStream in = null;try {

in = new FileInputStream(name);ByteArrayOutputStream buffer = new ByteArrayOutputStream();int ch;while ((ch = in.read()) != -1)

buffer.write(ch);return buffer.toByteArray();} catch (IOException e) {

if (in != null) {try {

in.close();} catch (IOException e2) {}

}return null;

}}

public void writeFile(byte[] data, String filename) throws IOException{OutputStream out = new FileOutputStream(filename);try {

out.write(data);} finally {out.close();

}

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 7Requerimientos Operacionales | 28

CAEDICOM COLOMBIA - Política de Estampado Cronológico

}public static void main(String[] args) {

String url = "http://tsa.acedicom.edicomgroup.com:9026/";if (args.length > 0) {

try {String user = "usuario";String password = "password";TimestampClient tsc = new TimestampClient(url, user, password);byte[] imprint = tsc.generateImprintFromFile(args[0]);byte[] response = tsc.getTimeStampToken(imprint);tsc.writeFile(response, args[0] + ".tsr");

}catch (Exception e) {

e.printStackTrace();}

}}

}

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 7Requerimientos Operacionales | 29

CAEDICOM COLOMBIA - Política de Estampado Cronológico

8 Peticiones, quejas, reclamos y apelaciones

Según lo especificado en la Declaración de Prácticas de Certificación (DPC) de laCAEDICOM Colombia.

CAEDICOM COLOMBIA - Política de Estampado Cronológico | 8Peticiones, quejas, reclamos y apelaciones | 30