Versión 1.0 basa su estructura en la especificación del protocolo SSL 3.0, publicada por Netscape. Las diferencias entre ambos protocolos no son significativas, permitiendo que TLS y SSL sean interoperables y llevando en la mayoría de los casos a analizar SSL 3.0 mientras se analiza TLS 1.0.
Ambos protocolos se diseñaron de manera tal que proporcionen integridad y privacidad de datos entre dos aplicaciones que se comunican. Su estructura muestra a cada uno de ellos compuesto por dos capas. El Protocolo de TLS se compone de dos capas:
El transporte del mensaje usa un mensaje de chequeo de integridad que utiliza un MAC (Message Authentication Code) con clave, usando funciones de hash seguras como SHA y MD5, pero puede operar sin usarla.
Este protocolo se usa para la encapsulación de varios protocolos de más alto nivel: HandShake Protocol y el protocolo de la aplicación.
Fundamentalmente se encarga de tomar los mensajes a ser transmitidos, fragmenta los datos en bloques manejables, opcionalmente comprime los datos, aplica una MAC, encripta y transmite el resultado. El dato recibido es desencriptado, verificado, descomprimido y reensamblado, entregándose a los clientes en niveles más altos. Este proceso se lleva a cabo mediante el uso de cuatro estados posibles de conexión el estado de lectura actual, el estado de escritura actual, el estado pendiente de lectura y el estado pendiente de escritura. Cada estado especifica el algoritmo de compresión, el algoritmo de encriptación y el algoritmo de MAC, junto con el MAC con clave, el tamaño de las claves de encriptación y los Ivs (Initialization Vector).
El Handshake protocolo. Este protocolo involucra el uso del Record Protocol de TLS para intercambiar una serie de mensajes entre un servidor TLS-enabled y un cliente TLS-enabled al comienzo de una conexión TLS. Este intercambio de mensajes se diseñó para permitir las siguientes acciones:
La autenticación opcional del cliente por parte del servidor.