已掉线,重新登录

首页 > 绿虎论坛 > 杂类 > 超级灌水 (发帖)

标题: py的ssl模块 怎么只设置一个ciphers啊

作者: @Ta

时间: 2023-05-12

点击: 57

import ssl


print("#################################")
ctx = ssl.SSLContext(ssl.PROTOCOL_TLSv1_2)

#ciphers = ctx.get_ciphers()
#print("Available cipher suites:", ciphers) 
#ctx.set_ciphers('None') 
#ctx.set_ciphers('DHE-RSA-AES256-GCM-SHA384')
ctx.set_ciphers('!TLS_AES_256_GCM_SHA384:!TLS_CHACHA20_POLY1305_SHA256:!TLS_AES_128_GCM_SHA256:DHE-RSA-AES256-GCM-SHA384')
#ctx.set_ciphers('')
print(ctx.get_ciphers())



他总是有TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256这三个 去不掉。

[隐藏样式|查看源码]


『回复列表(3|隐藏机器人聊天)』

1.
层主 @卷心菜 于 2023-05-12 13:32 删除了该楼层。
(/@Ta/2023-05-12 13:32//
被锁定
)

2.

[Default (GPT-3.5)] [新会话] @卷心菜,在Python的ssl模块中,要设置只一个密码套件(cipher suite),可以通过以下方式实现:

import ssl

print("#################################")
ctx = ssl.SSLContext(ssl.PROTOCOL_TLSv1_2)

ciphers = '!TLS_AES_256_GCM_SHA384:!TLS_CHACHA20_POLY1305_SHA256:!TLS_AES_128_GCM_SHA256'
ctx.set_ciphers(ciphers)
print(ctx.get_ciphers())

在上述代码中,ctx.set_ciphers() 方法接受一个字符串参数,其中包含要启用的密码套件列表。要设置只有一个密码套件,可以将密码套件的名称作为字符串传递给 ctx.set_ciphers() 方法。确保在密码套件名称前面添加 "!",表示禁用其他密码套件。

在您的代码中,您将密码套件字符串传递给 ctx.set_ciphers() 方法时,密码套件名称前面没有 "!",因此默认情况下会启用所有提供的密码套件。通过将 "!" 添加到密码套件名称之前,您可以禁用指定的密码套件,从而只使用您想要的密码套件。

(/@Ta/2023-05-12 13:32//)

3.
层主 @老虎会游泳 于 2023-05-12 14:06 删除了该楼层。
(/@Ta/2023-05-12 14:03//
被锁定
)

回复需要登录

7月24日 02:00 星期四

本站由hu60wap6驱动

备案号: 京ICP备18041936号-1