Articles of openssl

Servidor SSL de Python Paste con TLSv1.2 y secreto de reenvío

para una aplicación Python en Mac OS X, necesito configurar un servidor HTTPS con TLSv1.2, Secreto hacia adelante y sin cifrados RC4. Usando Pegar y pyOpenSSL escribí el siguiente código: from paste import httpserver from OpenSSL import SSL context = SSL.Context(SSL.SSLv23_METHOD) context.use_privatekey_file(“/Path/to/my/private.key”) context.use_certificate_chain_file(“/Path/to/my/chain-cert.pem”) context.set_options(SSL.OP_NO_SSLv2) context.set_options(SSL.OP_NO_SSLv3) context.set_options(SSL.OP_SINGLE_DH_USE) context.set_cipher_list(“EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:EDH+aRSA:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!RC4”) logger.debug(“OPENSSL version: %s” % SSL.SSLeay_version(SSL.SSLEAY_VERSION)) httpserver.serve(app_logged, host=http_host, port=http_port, […]

Error “no hay cifrado compartido” con python y OpenSSL

Servidor: #!/usr/bin/env python import SocketServer import json from OpenSSL import SSL import os import socket TERMINATION_STRING = “Done” CERTIFICATE_PATH = os.getcwd() + ‘/CA/certs/01.pem’ KEY_PATH = os.getcwd() + ‘/CA/private/key.pem’ CA_PATH = os.getcwd() + ‘/CA/cacert.pem’ print CA_PATH def verify_cb(conn, cert, errnum, depth, ok): print(‘Got cert: %s’ % cert.get_subject()) return ok class SSLThreadingTCPServer(SocketServer.ThreadingTCPServer): def __init__(self, address, handler): SocketServer.ThreadingTCPServer.__init__(self, […]

¿Cómo actualizar OpenSSL en mac?

Debo asegurarme de tener la versión OpenSSL de 1.0.1 o superior para conectarme a la API de Salesforce de acuerdo con esta documentación . De acuerdo con esta pregunta , puedo realizar los siguientes pasos (que he completado con éxito) actualización de cerveza brew install openssl enlace de elaboración – force openssl Cuando ejecuto la […]

certificado de paso torcido para el controlador SSL

Estoy diseñando un servidor ssl en el que estoy usando trenzado con ssl y se requiere la autenticación del certificado del cliente para continuar con el progtwig. Cuando verifico el certificado ssl del cliente, devuelve True, pero quiero pasar el nombre de usuario y la dirección de correo electrónico en el. certificado de cliente para […]

SSL v3 Handshake Failure (pero solo en versiones más recientes de OpenSSL)

Este fragmento de código básico en Python 3.5, con un sitio web específico, falla con requests.exceptions.SSLError: [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:720) import requests requests.get(“https://ssbp.mycampus.ca/prod_uoit/bwskfshd.P_CrseSchdDetl”) Funciona perfectamente bien en Ubuntu 16.04, pero el mismo script con las mismas versiones de todas sus dependencias de Python falla en Debian Stretch. He intentado instalar requests[security] y […]

Cómo corregir las SSLErrors de “mal saludo” cuando se utilizan solicitudes de Python

Estoy tratando de obtener acceso a la API de BambooHR ( documentación aquí ), pero recibo el siguiente error params = { ‘user’: username, ‘password’: password, ‘api_token’: api_key} url = ‘https://api.bamboohr.com/api/gateway.php/company/v1/login’ r = requests.get(url, params=params) Error: Traceback (most recent call last): File “/Applications/PyCharm.app/Contents/helpers/pydev/pydevd.py”, line 1580, in globals = debugger.run(setup[‘file’], None, None, is_module) File “/Applications/PyCharm.app/Contents/helpers/pydev/pydevd.py”, line […]

RSA encripta / desencripta entre C y python

Tengo servidor escrito en python y cliente en C Su trabajo es enviar un mensaje secreto del servidor al cliente que está cifrado con RSA private key . Estoy usando la biblioteca openssl/rsa.h , es decir, inicializo un objeto rsa con una clave privada y RSA_public_encrypt(length_of_message, “Secret Message”, to, rsa, RSA_PKCS1_PADDING) un mensaje con RSA_public_encrypt(length_of_message, […]

Obtención de la cadena de certificados con el módulo SSL de Python 3.3

Puedo obtener la información del certificado estándar para una conexión SSL en Python 3.3 a través del método getpeercert () en el socket SSL. Sin embargo, parece que no proporciona la cadena como OpenSSL, la herramienta “s_client”. ¿Hay alguna forma de obtener esto para poder ver si mi certificado IA se configuró correctamente? s_client línea […]

¿Puedo usar TLS versión 1.1 o 1.2 en python 2?

Leí un documento que dice que Python 2 solo tiene la constante ssl.PROTOCOL_TLSv1 , y que ssl.PROTOCOL_TLSv1_1 y ssl.PROTOCOL_TLSv1_2 se agregaron en Python 3.4. Entonces, ¿cómo puedo usar TLS 1.1 y 1.2 en Python 2? PD. No quiero usar TLS 1.0 porque tiene algunos fallos de seguridad. TLS 1.2 es la versión más reciente ahora, […]

El objeto ‘NoneType’ no tiene ningún atributo ‘_app_data’ en scrapy \ twisted \ openssl

Durante el proceso de raspado con scrapy aparece un error en mis registros de vez en cuando. No parece estar en ninguna parte de mi código, y parece algo dentro de twisted \ openssl. ¿Alguna idea de qué causó esto y cómo deshacerse de él? Stacktrace aquí: [Launcher,27487/stderr] Error during info_callback Traceback (most recent call […]