我試圖讓curl 使用GOST2001-GOST89-GOST89 密碼,可由OpenSSL 使用,但failed setting cipher list
儘管curl 看到gost 引擎並且可以使用GOST 用戶端證書,但仍然不斷出現錯誤。我怎樣才能解決這個問題?所有函式庫都是從原始碼編譯的。
$ openssl ciphers | grep -o '\(GOST[[:digit:]]\+-\?\)\+'
GOST2001-GOST89-GOST89
GOST94-GOST89-GOST89
$ openssl engine | grep gost
(gost) Reference implementation of GOST engine
$ openssl version
OpenSSL 1.0.1 14 Mar 2012
$ curl -V
curl 7.25.0 (x86_64-apple-darwin11.3.0) libcurl/7.25.0 OpenSSL/1.0.1 zlib/1.2.5
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smtp smtps telnet tftp
Features: IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP
$ curl --engine gost --ciphers GOST2001-GOST89-GOST89 https://localhost:4433
curl: (59) failed setting cipher list
答案1
這並不是真正的答案,但可能會對某些人有幫助。
錯誤代碼 59 表示「無法使用指定的 SSL 密碼」(來自這裡)。
顯然curl 不能使用這個密碼。
該錯誤可能會產生誤導,因為問題實際上可能是您的本地主機伺服器在握手期間拒絕了該密碼,因為該密碼不受支援。
使用更知名的密碼可能會更好。