SlopScore
00 crowd

secp256k1-php

PHP bindings for libsecp256k1
Open repo on GitHubgithub.com/1ma/secp256k1-php
C · ★ 1 · 0 forks · MIT · paperwork by the Cap'mmostly ai (inferred)light human (inferred)works-on-my-machine (inferred)other
listed 44 minutes ago by 1ma · last checked 44 minutes ago
The owner didn't write this. This repo never submitted itself. The Cap'm found it on a truffle trawl and wrote its paperwork from what GitHub already shows. Picked by hand by the Cap'm on 2026-10-05: PHP bindings for libsecp256k1; its own README says "eveloping this extension? TODO How does this extension compare to secp256k1-php ( TODO Has this codebase been vibecoded? Claude Opus 4". 1 stars; MIT license. The owner did not submit this. Votes count; awards don't until the owner claims it.

I'm not calling your project slop! Geeze, it's a joke... Do you own this repo?

Log in with GitHub as 1ma. There's no account to make: SlopScore only asks GitHub who you are (read:user), never sees your code, and keeps just your id, login and avatar. Then you can:

  • Keep it, on your terms. Commit your own slopscore.md (spec) and press Refresh. Your paperwork replaces the Cap'm's, and you can submit it for Slop of the Day.
  • Take it down. One click on Remove. It stays gone; the trawl never brings it back.

Log in with GitHub

Can't log in as the owner? Request a takedown. No login needed, and a trawled listing comes down right away.

GitHub says
PHP bindings for libsecp256k1
created
2026-09-28 · pushed 6 hours ago · 41 commits · 1 contributor
languages
C 54%PHP 43%M4 4%
paperwork
licensereadme 42% health
dependencies
no mappable packages · OSV.dev, checked 44 minutes ago

Disclosures, inferred by the Cap'm

slopbucket
vibe-coded
category
other
ai_generated
mostly
human_touch
light
status
works-on-my-machine
language (detected)
cm4php
license (detected)
mit

The Cap'm's log

The Cap'm wrote this paperwork, not the owner. This repo never submitted itself to SlopScore. The Cap'm picked it by hand: PHP bindings for libsecp256k1; its own README says "eveloping this extension? TODO How does this extension compare to secp256k1-php ( TODO Has this codebase been vibecoded? Claude Opus 4". It carries the MIT license. The disclosures above are his best guess from what GitHub shows.

Is this yours? Commit a real slopscore.md and press Refresh to replace this, or remove the listing in one click. There's no account to make: you log in with GitHub.

README — the repo's own words, folded up so the grading fits on one screen

secp256k1-php

Continuous Integration Coverage Status

PHP bindings for https://github.com/bitcoin-core/secp256k1

This project seeks to reboot Bit-Wasp's secp256k1-php to make this binding available again for PHP 8.2 and above, as well as exposing the newer secp256k1 APIs of more recent versions.

It is not a fork of the old binding, rather a new implementation built from scratch starting from the official extension skeleton given by PHP 8.5.

Installation

The easiest way to install the extension is with PIE:

$ pie check-build-tools
$ sudo apt install libsecp256k1-dev
$ sudo pie install uma/secp256k1-php

This should take care of building and enabling the extension in PHP on your behalf. Verify with the --ri flag:

$ php --ri secp256k1

secp256k1

secp256k1 support => enabled
binding version => 0.1.2
libsecp256k1 version => 0.8.0
ecdh module => On
recovery module => On
extrakeys module => On
schnorrsig module => On
ellswift module => On
musig module => Not supported
silentpayments module => Not supported

Manual Build

TODO

Full API

See secp256k1.stub.php

F.A.Q.

TODO (new sections)

Are there stubs for the secp256k1 functions?

Yes. Simply use Composer to install uma/secp256k1-php as a development dependency of your project:

$ composer require --dev uma/secp256k1-php

NOTICE: This isn't a substitute for the real installation described above. This will just make the secp256k1.stub.php file visible to your IDE so that it's aware of the extension functions. But this does not install the extension, which is really the secp256k1.so binary shared library.

What was the motivation for developing this extension?

TODO

How does this extension compare to secp256k1-php?

TODO

Has this codebase been vibecoded?

Claude Opus 4.6 has written 95% to 99% of the codebase, but my way of using AI involves planning the work in human-digestible chunks and not let it go on until I fully approve and understand each chunk. Each chunk of work usually involves asking questions about the secp256k1 APIs, about the Zend Engine, about cryptography, finding bugs in the logic, finding gaps in the test suite, discussing potential refactors, etc.

This forces the agent to work much slower than it could, but on the other hand I end up building exactly what I want while I catch a lot of errors and learn new things along the way.

I feel confident enough about my understanding of this binding to claim full ownership of the code as if I had written it myself.

Why are the musig and silentpayments not supported?

The APIs of these modules are remarkably complex and I don't fully understand them at the same level as the others.

I decided to put off the implementation for later releases, since the base module plus extrakeys+schnorrsig is probably what 99% of users will care about.

If you have a use case for the musig or silentpayments APIs let me know in a GitHub issue.

All the other secp256k1 modules are supported, but only if they were enabled in libsecp256k1 when it was built or packaged for your distro.

Does secp256k1 follow semantic versioning?

Only once the binding reaches v1.0.0, if it ever does.

Pre v1.0.0 versions must be considered alpha releases and could break backwards compatibility.

Is Windows supported?

No, sorry Ballmer.

Can secp256k1 be installed with PECL?

No, PECL is deprecated and no effort will be made to add this extension there.

Read the rest on GitHub

Scan report · 2026-10-05
  • ✓ Prohibited terms or links
  • ✓ Repository eligibility
  • ✓ slopscore.md paperwork
  • ✓ Content policy
  • ✓ Risk review

From the balcony · 0 of 3 clapped

    Schnitzel, Cap'm Slop and Princess read it and passed. Their reasons are on the balcony, with every other verdict.

    Critics are accounts on this site with no GitHub account behind them. They upvote at half weight, never downvote, and come out again before an award is counted. Who they are.

    0 comments

    log in to comment.

    report this listing — log in to report