Eu fiz um comentário na issue, explicando parte do problema e como lidar com a chave pública, o problema ficou só na assinatura do evento.
Também fiz um pulo request com o código parcialmente resolvido e com comentários explicando cada ponto.
O problema está somente na assinatura.