Реализация secp256k1 (ECDSA) в PHP (для биткойнов) [закрыто]

Для увлеченных пользователей и / или близких: если вы считаете, что это не является темой для SO, пожалуйста, укажите мне другой сайт StackExchange, где этот вопрос был бы более уместным.

Как реализовать кривую ECDSAsecp256k1 в PHP?

Или скорее: есть какие-то решения - т.е. включаемые специализированные классы - уже сделано?

Я вижу, что есть много библиотек с открытым исходным кодом, классов и прочего, доступных для других языков (JavaScript, Python, ...), но ямы потратили целый день на поиски какого-нибудь / любого решения PHP и ...ничего такого!.

Это для моего биткойн-проекта иМне нужен способ, как сгенерировать открытый ключ из закрытого ключа ...а затем я хочу сгенерировать окончательный биткойн-адрес.

Я знаю, как генерировать закрытый ключ (Дон»не беспокойтесь о том, что это случайно или нет - здесь не проблема) иУ меня есть и 256-битные шестнадцатеричные и WIF нотации, Но следующий шаг: придуматьоткрытый ключ а затем окончательныйадрес биткойнаЭто своего рода проблема для меня, так как у меня буквально нулевой фон криптографии и я знаю, что решение состоит в том, чтобы каким-то образом использовать secp256k1.

Это то, что я до сих пор:

// Random bytes
// $private_key = bin2hex(openssl_random_pseudo_bytes(32));
// But using brainwallet.org style to have easy comparison
$passphrase = "correct horse battery staple";
$private_key = hash('sha256', $passphrase);
var_dump ("PrivKey: $private_key");
// Bitcoin::privKeyToWIF from github.com/mikegogulski/bitcoin-php
$wif = Bitcoin::privKeyToWIF($private_key); 
var_dump ("WIF PrivKey: $wif");
// And now I don't know where to even start ...

tl; dr Как реализовать это в PHP? (..а такжеprivKey->Публичных переоборудование перед этим)

http://i.stack.imgur.com/U2neg.png

Я знаю о ...

http://github.com/mikegogulski/bitcoin-php .. Что довольно аккуратно и имеет много полезных методов и способов контроляbitcoind через RPC, но, к сожалению, чистый метод PHP, который может обрабатыватьprivKey->Публичных Механизм отсутствует.http://bitcoinphp.com/ .. я не могне могу найти это там.расширение openssl в PHP, но, к сожалению, в документации OPENSSL-PHP упоминается только дайджест:ECDSA-с-SHA1'и поправь меня если яя не прав, но ямне нужноECDSA-с-SHA256', или что-то типа того (?)Я даже пытался преобразовать алгоритм изbitcoinjs.js, но с моим крипто-знанием я был не в состоянии извлечь суть чего-либо. Я просто нене понимаю эти кривые, их битовые операции и другие жуткие вещи.

ищу решение PURE PHP. Я'я не ищу использовать оболочку с запущенным bitcoind и затем анализировать JSON для пар ключей и затем ...

Почему нет кода, который мог бы полностью справиться с этим в PHP?ИЛИ ТАМ ?! :)

Ответы на вопрос(0)

Ваш ответ на вопрос