sslv3 경고 핸드 셰이크 실패 (_ssl.c : 590)?


0

이것은 내 코드입니다.

def test(request):
paypalrestsdk.configure({
  "mode": "security-test-sandbox",
    "client_id": "XXXXXXX-XXXX-XXXX-XXXX",
    "client_secret": "XXXXXXX-XXXX-XXXX-XXXX"  })

payment = paypalrestsdk.Payment({
  "intent": "sale",
  "payer": {
    "payment_method": "credit_card",
    "funding_instruments": [{
      "credit_card": {
        "type": "visa",
        "number": "4417119669820331",
        "expire_month": "11",
        "expire_year": "2018",
        "cvv2": "874",
        "first_name": "Joe",
        "last_name": "Shopper" }}]},
  "transactions": [{
    "item_list": {
      "items": [{
        "name": "item",
        "sku": "item",
        "price": "1.00",
        "currency": "USD",
        "quantity": 1 }]},
    "amount": {
      "total": "1.00",
      "currency": "USD" },
    "description": "This is the payment transaction description." }]})

if payment.create():
  print("Payment created successfully")
else:
  print(payment.error)
return render(request, "test.html")

payment.create () 명령을 수행하면 다음 오류가 발생합니다. [SSL : SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 경고 핸드 셰이크 실패 (_ssl.c : 590). Mac을 사용하고 있습니다. 왜 그런지 말해줘?

답변:


4

나는 같은 문제가 있었고 이것이 내가 찾은 것과 어떻게 고쳤는지입니다.

Apple에서 제공 한 Python 버전이 openssl과 관련하여 오래되었습니다. 터미널로 이동하여 버전을 테스트 할 수 있습니다.

python
>>> import ssl
>>> print ssl.OPENSSL_VERSION
OpenSSL 0.9.8zh 14 Jan 2016

위의 나쁜 버전입니다. 한 가지 수정은 새로운 버전의 python을 설치하는 것입니다. 가장 쉬운 방법은 여기에 설명 된대로자가 추출을 사용하는 것입니다 .

아래는 업그레이드 된 버전의 python에서 볼 수있는 것과 비슷합니다. 그런 다음 paypalrestsdk가 작동합니다.

python
>>> import ssl
>>> print ssl.OPENSSL_VERSION
OpenSSL 1.0.2h  3 May 2016

home brew를 사용하여 새 버전의 OpenSSL을 설치하는 것에 대한 링크는 hynek.me/articles/apple-openssl-verification-surprises 와 연결되는 기사를 가리키며 명령은 간단 brew install openssl합니다. 그러나 파이썬이 사용하는 버전을 반드시 변경하지는 않습니다.
— LarsH
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.