iDeal kassa site authenticatie

563 views
499 views

Published on

Externe maatwerk kassa voor iDeal betalingen, gekoppeld met intern company order systeem: de authenticatie bij communicatie stromen.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
563
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • iDeal kassa site authenticatie

    1. 1. iDeal kassa site authenticatie als geïmplementeerd door Rembert Oldenboom, Floating Point, 2009. Rembert Oldenboom www.floating-point.nl rembert@floating-point.nl
    2. 2. iDeal kassa site authenticatie als geïmplementeerd door Rembert Oldenboom, Floating Point, 2009. Authenticatie gebruikers Rembert Oldenboom www.floating-point.nl rembert@floating-point.nl
    3. 3. iDeal kassa site authenticatie als geïmplementeerd door Rembert Oldenboom, Floating Point, 2009. Authenticatie gebruikers Communicatie met bank Rembert Oldenboom www.floating-point.nl rembert@floating-point.nl
    4. 4. iDeal kassa site authenticatie als geïmplementeerd door Rembert Oldenboom, Floating Point, 2009. Authenticatie gebruikers Communicatie met bank Communicatie intern / extern Rembert Oldenboom www.floating-point.nl rembert@floating-point.nl
    5. 5. Authenticatie gebruikers
    6. 6. Authenticatie gebruikers Inlog via unieke URL zonder gebruikersnaam / wachtwoord
    7. 7. Authenticatie gebruikers Inlog via unieke URL zonder gebruikersnaam / wachtwoord Sessie persistance via cookies/session niet nodig
    8. 8. Authenticatie gebruikers Inlog via unieke URL zonder gebruikersnaam / wachtwoord Sessie persistance via cookies/session niet nodig Unieke URL beperkt geldig
    9. 9. Authenticatie gebruikers Inlog via unieke URL zonder gebruikersnaam / wachtwoord Sessie persistance via cookies/session niet nodig Unieke URL beperkt geldig Nieuwe URL wordt gemailed na ingeven van juiste ordernummer en email adres
    10. 10. Authenticatie gebruikers Inlog via unieke URL, zonder gebruikersnaam / wachtwoord
    11. 11. Authenticatie gebruikers Inlog via unieke URL, zonder gebruikersnaam / wachtwoord https://ideal.site.nl/token/ d063ed3ec6fe258f022361fb0fffea2a98722220
    12. 12. Authenticatie gebruikers Inlog via unieke URL, zonder gebruikersnaam / wachtwoord https://ideal.site.nl/token/ d063ed3ec6fe258f022361fb0fffea2a98722220 40 tekens met a..f en 0..9
    13. 13. Authenticatie gebruikers Inlog via unieke URL, zonder gebruikersnaam / wachtwoord https://ideal.site.nl/token/ d063ed3ec6fe258f022361fb0fffea2a98722220 40 tekens met a..f en 0..9 1,5 * 1048 verschillende tokens
    14. 14. Authenticatie gebruikers Inlog via unieke URL, zonder gebruikersnaam / wachtwoord https://ideal.site.nl/token/ d063ed3ec6fe258f022361fb0fffea2a98722220 40 tekens met a..f en 0..9 1,5 * 1048 verschillende tokens Token hashes staan in database
    15. 15. Authenticatie gebruikers URL beperkt geldig / vernieuwen
    16. 16. Authenticatie gebruikers URL beperkt geldig / vernieuwen URL is 36 uur geldig, setting LOGIN_TIMEOUT
    17. 17. Authenticatie gebruikers URL beperkt geldig / vernieuwen URL is 36 uur geldig, setting LOGIN_TIMEOUT Vernieuwen URL alleen na ingave email adres en boekingsnummer
    18. 18. Authenticatie gebruikers URL beperkt geldig / vernieuwen URL is 36 uur geldig, setting LOGIN_TIMEOUT Vernieuwen URL alleen na ingave email adres en boekingsnummer Geanonimiseerde database: geen email adres of andere naw wel boekingsnummer Identificatie met user identificatie hash (≠ login token)
    19. 19. Authenticatie gebruikers URL beperkt geldig / vernieuwen
    20. 20. Authenticatie gebruikers URL beperkt geldig / vernieuwen User identificatie hash, de database key:
    21. 21. Authenticatie gebruikers URL beperkt geldig / vernieuwen User identificatie hash, de database key: Concat email adres, boekingsnummer en secret code. Trim.
    22. 22. Authenticatie gebruikers URL beperkt geldig / vernieuwen User identificatie hash, de database key: Concat email adres, boekingsnummer en secret code. Trim. Bereken user identificatie hash met US Secure Hash Algorithm (sha1)
    23. 23. Authenticatie gebruikers URL beperkt geldig / vernieuwen User identificatie hash, de database key: Concat email adres, boekingsnummer en secret code. Trim. Bereken user identificatie hash met US Secure Hash Algorithm (sha1) Nu kunnen we authenticeren op email adres zonder dat het feitelijke email adres in de database staat.
    24. 24. Authenticatie gebruikers URL beperkt geldig / vernieuwen
    25. 25. Authenticatie gebruikers URL beperkt geldig / vernieuwen Na succesvolle identificatie: nieuwe login token maken
    26. 26. Authenticatie gebruikers URL beperkt geldig / vernieuwen Na succesvolle identificatie: nieuwe login token maken Concat email adres, boekingsnummer, secret code, openstaand bedrag, aanmaakdatum record en current time serial
    27. 27. Authenticatie gebruikers URL beperkt geldig / vernieuwen Na succesvolle identificatie: nieuwe login token maken Concat email adres, boekingsnummer, secret code, openstaand bedrag, aanmaakdatum record en current time serial Bereken token hash met US Secure Hash Algorithm (sha1)
    28. 28. Authenticatie gebruikers URL beperkt geldig / vernieuwen Na succesvolle identificatie: nieuwe login token maken Concat email adres, boekingsnummer, secret code, openstaand bedrag, aanmaakdatum record en current time serial Bereken token hash met US Secure Hash Algorithm (sha1) Email token hash naar ingegeven email adres
    29. 29. Communicatie met bank
    30. 30. Communicatie met bank XML Post forms (xmlrpc) met data, timeserial en:
    31. 31. Communicatie met bank XML Post forms (xmlrpc) met data, timeserial en: Fingerprint van eigen public key
    32. 32. Communicatie met bank XML Post forms (xmlrpc) met data, timeserial en: Fingerprint van eigen public key Tokencode, berekend uit:
    33. 33. Communicatie met bank XML Post forms (xmlrpc) met data, timeserial en: Fingerprint van eigen public key Tokencode, berekend uit: Concat enkele te verzenden velden en timeserial
    34. 34. Communicatie met bank XML Post forms (xmlrpc) met data, timeserial en: Fingerprint van eigen public key Tokencode, berekend uit: Concat enkele te verzenden velden en timeserial Maak hash met US Secure Hash Algorithm (sha1)
    35. 35. Communicatie met bank XML Post forms (xmlrpc) met data, timeserial en: Fingerprint van eigen public key Tokencode, berekend uit: Concat enkele te verzenden velden en timeserial Maak hash met US Secure Hash Algorithm (sha1) Encrypt met eigen private key
    36. 36. Communicatie intern/extern
    37. 37. Communicatie intern/extern XML Post forms (xmlrpc) met
    38. 38. Communicatie intern/extern XML Post forms (xmlrpc) met data
    39. 39. Communicatie intern/extern XML Post forms (xmlrpc) met data signature, opgebouwd uit:
    40. 40. Communicatie intern/extern XML Post forms (xmlrpc) met data signature, opgebouwd uit: concat velden en secret code
    41. 41. Communicatie intern/extern XML Post forms (xmlrpc) met data signature, opgebouwd uit: concat velden en secret code Maak signature met US Secure Hash Algorithm (sha1)
    42. 42. Communicatie intern/extern XML Post forms (xmlrpc) met data signature, opgebouwd uit: concat velden en secret code Maak signature met US Secure Hash Algorithm (sha1) Post return code bevat xml response data
    43. 43. Communicatie intern/extern XML Post forms naar xmlrpc server
    44. 44. Communicatie intern/extern XML Post forms naar xmlrpc server Meerdere data records mogelijk in xmlform
    45. 45. Communicatie intern/extern XML Post forms naar xmlrpc server Meerdere data records mogelijk in xmlform Per record bepaalt actieveld wat bedoeling ermee is
    46. 46. Communicatie intern/extern XML Post forms naar xmlrpc server Meerdere data records mogelijk in xmlform Per record bepaalt actieveld wat bedoeling ermee is Per record geeft xmlrpc server een response terug
    47. 47. Communicatie intern/extern XML Post forms naar xmlrpc server Meerdere data records mogelijk in xmlform Per record bepaalt actieveld wat bedoeling ermee is Per record geeft xmlrpc server een response terug Responses hebben zelfde xml opbouw
    48. 48. That’s all folks

    ×