An old project that I did not code is using the KDF3 algorithm, but I struggle to find an explanation about the way this key derivation algorithm works. I know that this algorithm is part of the ISO-18033-2:2006, but it is pretty expensive.

Can someone explain it to me ?

  • 1
    $\begingroup$ Some suggestions: 1) if you have to maintain compatibility, ask your employer to buy the standard from your national standardization organ, or you can try local libraries where there often is a section for inter/intra-national standards and academic journals. 2) Consider functionally replace the component with better alternatives such as ECIES (available for free from secg.org) or Curve-25519/448 (tools.ietf.org/html/rfc7748). $\endgroup$ – DannyNiu Feb 14 at 9:41
  • $\begingroup$ Thanks for your suggestion. I do not plan to modify the current implementation. the algorithm is implemented on an embedded system with not much horsepower, so I don't think that asymmetric/ECC cryptography would be a good idea. $\endgroup$ – Bastien Feb 14 at 10:36
  • 1
    $\begingroup$ There seems to be a well written version in BASIC (of all things) here. And here it is in Python. Looks similar, but pay attention to the pAmt and it's size; I'm not 100% if that's correct in the Python code. $\endgroup$ – Maarten Bodewes Feb 14 at 13:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.