Как заставить мою программу на Python обходить Linux openssl и использовать мою скомпилированную


0

Я запускаю экспериментальную программу на python, используя python3.6.5 и Openssl. Я использую Ubuntu 18, который поставляется с OpenSSL 1.1.0g:

openssl version -a
OpenSSL 1.1.0g  2 Nov 2017
built on: reproducible build, date unspecified
platform: debian-amd64
compiler: gcc -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/lib/ssl\"" -DENGINESDIR="\"/usr/lib/x86_64-linux-gnu/engines-1.1\"" 
OPENSSLDIR: "/usr/lib/ssl"
ENGINESDIR: "/usr/lib/x86_64-linux-gnu/engines-1.1"

В этой поставленной версии слабая криптография отключена. Для настройки эксперимента мне нужно включить шифры DES и использовать OpenSSL1.1.0g с включенным DES.

Я использовал следующие инструкции (после установки zlib1g-dev и build-essential), чтобы скомпилировать свой собственный OpenSSL1.1.0g с включенным DES и позволить Python использовать его вместо поставляемого. Тем не менее, эти шаги теперь не имеют никакого эффекта (хотя это работало со мной в прошлом).

1) Скачать OpenSSL 1.1.0g Исходный код от: https://www.openssl.org/source/old/1.1.0/ в папке Download

2) После распаковки папки перейдите в нее и выполните:

./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl shared zlib enable-weak-ssl-ciphers -Wl,-rpath=/usr/local/openssl/lib

3) Затем выполните:

 sudo make
 sudo make install

4) Перейти к: /etc/profile.d

6) Создайте файл с именем: openssl.sh и поместите этот контент в него:

# /etc/profile.d/openssl.sh
export PATH=$PATH:/usr/local/openssl/bin 

8) Перейти к: etc/ld.so.conf.d

9) Создайте новый файл с именем: openssl-1.1.0g.conf и поместите этот контент в него:

# /etc/ld.so/conf.d/openssl-1.1.0g.conf
/usr/local/openssl/lib

Ожидаете ли вы, что Python не использует мою компиляцию OpenSSL с вышеуказанными шагами? Как я могу заставить мою программу на python3 использовать шифр DES в OpenSSL? Другими словами, использовать мой скомпилированный OpenSSL?


export PATH=$PATH:/usr/local/openssl/bin добавь свой локальный openssl после система одна. Вы хотите вместо этого: export PATH=/usr/local/openssl/bin:$PATH
xenoid

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.