Я хочу проверить подпись Wii в PHP. У меня есть 60 байтов открытого ключа в виде двоичных данных плюс 4 дополнительных байта. И я знаю, что это ECDSA (скорее всего, B-233). Я уже реализовал это в C, но интерпретатор PHP слишком медленный для моей реализации. Поэтому я вызываю внешний инструмент С для подтверждения подписи.
Но я хочу использовать openssl_verify($data,$sig,$pubkey)
. Моя проблема - третий параметр (открытый ключ). Поэтому я должен преобразовать информацию ECDSA плюс открытый ключ в принятый формат.
Есть идеи?
Прогресс
Я пробовал еще и создал ключи с разными алгоритмами (например, sect233k1, sect233r1). Мой план заключается в том, чтобы сгенерировать открытый ключ с моим ключом. Теперь я получаю сообщение об ошибке:
error:0906D06C:PEM routines:PEM_read_bio:no start line
Открытый ключ выглядит так:
-----BEGIN PUBLIC KEY-----
MFIwEAYHKoZIzj0CAQYFK4EEABoDPgAEAS+URvH1x1GXfTw6VZh8tLVPq3bgYwl8
g8OHtCKuADoZ8YayIHkJuYEqTJZBgI8YMX8FtrI8BOlBiBLF
-----END PUBLIC KEY-----