Security News
New Python Packaging Proposal Aims to Solve Phantom Dependency Problem with SBOMs
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.
peero-server
Advanced tools
Websocket server which facilitates discovery between Peero client peers.
WebRTC peers are unable to connect to each other without exchanging connection data (IP adresses, etc). The way this exchange is performed is not a part of the WebRTC spec, so it's up to the developer to come up with a way to do this. There are already signaling servers which do exactly this, but Peero server is just a different type of implementation that's supposed to be simple and open source.
The only thing the server does is keep a list of online peers, and passes SDP data from one peer to another to make those peers connect. All communication between peers is strictly peer-to-peer. There is also an implementation of a Peero client, which connects to the server and available peers.
To run the server, you will need to have Node installed. The code is not available on npm, so you will have to pull/download it from Github. And then in command line:
> cd peero-server
> # install pm2 globally if it isn't installed already
> npm install pm2 -g
> pm2 pm2.config.js
A client can connect with the server on ws://localhost:8080
. You can read the PM2 documentation on how to work with the process manager.
You can copy .env.example
to a new .env
file to set some environment settings, for example:
NODE_ENV=production
WS_PORT=8000
The server works only with websocket requests. All messages passed from and to the server are serialized JSON/Javascript objects. For a client to connect to the server it needs to send a 'register' message:
{
type: 'register'
}
When the server receives that message, it will generate a UUIDv4 ID and send it to the client:
{
type: 'register',
data: { peerId: 'af988091-4454...' }
}
The server will simultaneously send messages to other connected clients to announce a new client:
{
type: 'announce',
data: { peerId: 'af988091-4454...' }
}
It will also send all currently connected clients to the new client:
{
type: 'peers',
data: {
peers: [
'6f01ab34-3a56...',
'72a4ad27-bde5...'
]
}
}
FAQs
Websocket server which facilitates discovery between Peero client peers.
The npm package peero-server receives a total of 3 weekly downloads. As such, peero-server popularity was classified as not popular.
We found that peero-server demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.
Security News
Socket CEO Feross Aboukhadijeh discusses open source security challenges, including zero-day attacks and supply chain risks, on the Cyber Security Council podcast.
Security News
Research
Socket researchers uncover how threat actors weaponize Out-of-Band Application Security Testing (OAST) techniques across the npm, PyPI, and RubyGems ecosystems to exfiltrate sensitive data.