#Transpher already included a very basic #blossom server, but that has been pulled in a separate project and extended with upload and mirroring capabilties! #nostrifying #php
Been a while, because life happened. In the meantime the relay and client components have been extracted from #transpher and can be included into your own project as a composer dependency.
Still plenty to do, but after building whitelisted storage I feel confident on releasing v0.1.0. Only events authored by the relay owner or a pubkey on their follow list is being stored. Preventing unwanted notes to clutter up your relay.
switched to a sqlite backend, performance improvements and working on whitelist whose notes are being stored (currently only the owner and agent). Others notes ARE relayed to subscribed users.
Extended nostriphant/nip-19 with support for #nprofile, #nevent, #naddr and #note #bech32. Documentation is still lacking, but tests can help you get underway.
Split off the php implementation of nip44 and nip01 in separate libraries, while listening to #nostr-nl #meet-up with @Sebastix and @Constant, nice to hear people discuss their vision on #nostr. Still needs some polishing, but the basis is there...
switched over to ext-secp256k1_nostr
phpecc implementation of SchnorrSignature gave many invalid signature errors, so switching over (for transpher) to ext-secp256k1_nostr (https://github.com/1ma/secp256k1-nostr-php). For future libraries support for phpecc is desirable, because extensions can (most likely) not be deployed to shared hosting environments
#transpher can limit incoming events based on minimal PoW constraints. 🎉 Event id is working, pubkeys are untested. We need proper vectors for that and there are possibly some problems in underlying libraries with the pubkeys I generated...