ogone: use iso-8859-15 encoding for signature (#44150)

This commit is contained in:
Frédéric Péters 2020-06-17 07:51:45 +02:00
parent 6c81d9733d
commit 6ebcd4c674
2 changed files with 4 additions and 4 deletions

View File

@ -496,7 +496,7 @@ class Payment(PaymentCommon):
values = [u'%s=%s' % (a, b) for a, b in values if a in keep and b]
tosign = key.join(values)
tosign += key
tosign = force_byte(tosign)
tosign = force_byte(tosign, encoding='iso-8859-1')
hashing = getattr(hashlib, algo)
return hashing(tosign).hexdigest().upper()

View File

@ -79,7 +79,7 @@ class OgoneTests(TestCase):
'cn': u'Usér', 'ncerror': u'0',
'trxdate': u'10/24/16', 'acceptance': u'test123',
'currency': u'eur', 'amount': u'7.5',
'shasign': u'3EE0CF69B5A8514962C9CF8A545861F0CA1C6891'}
'shasign': u'CA4B3C2767B5EFAB33B9122A5D4CF6F27747303D'}
# uniformize to utf-8 first
for k in data:
data[k] = eopayment.common.force_byte(data[k])
@ -96,7 +96,7 @@ class OgoneTests(TestCase):
'&CARDNO=XXXXXXXXXXXX9999&ED=0118'
'&CN=Miha%EF+Serghe%EF&TRXDATE=10%2F24%2F16'
'&PAYID=3011228911&NCERROR=0&BRAND=MasterCard'
'&IP=80%2E12%2E92%2E47&SHASIGN=435D5E36E1F4B17739C1054FFD204218E65C15AB'
'&IP=80%2E12%2E92%2E47&SHASIGN=C429BE892FACFBFCE5E2CC809B102D866DD3D48C'
)
response = ogone_backend.response(backend_response)
assert response.signed
@ -121,7 +121,7 @@ class OgoneTests(TestCase):
'pm': 'bank transfer',
'currency': u'eur',
'amount': u'7.5',
'shasign': u'0E35F687ACBEAA6CA769E0ADDBD0863EB6C1678A'
'shasign': u'944CBD1E010BA4945415AE4B16CC40FD533F6CE2',
}
# uniformize to utf-8 first
for k in data: