Я попытался покопаться в исходниках питона, но там всё плохо.
Как минимум там нужно вычесть сделать сдвиг байтов.
А почему вы не можете поменять этот алгоритм? Просто подгонять код на PHP под испорченый код на питоне это какое-то извращение.
Не мой проект к сожалению, есть документация и все =( принципе я немного продвинулся в реализации. Если убрат update из алгоритма на питоне, то
hash_hmac('md5', '', 'secret') на php дает симетричный результат. Осталось понять как работает update...