
Security News
vlt Launches "reproduce": A New Tool Challenging the Limits of Package Provenance
vlt's new "reproduce" tool verifies npm packages against their source code, outperforming traditional provenance adoption in the JavaScript ecosystem.
Double-headed HTTP
Hydra works, but is pretty rough and unfinished. The the eventual aim is to make it possible to:
i.e. both the client and server can push and pull. In particular, HTTP clients running on the server can issue requests like
DELETE http://client16b759c4/item/78
to a HTTP proxy running NodeJS, and have then tunnelled to the browser via a WebSocket.
At the moment, HTTP requests can be passed back and forth, and there's simple browser-based code for both HTTP servers and HTTP clients. WebSocket-tunnelled HTTP requests can't be chunked or streamed (in either direction), though the client can respond out of order (messages have an id).
This has been tested in Chrome and Firefox on OS X. Chrome supports websockets natively; Firefox requires a Flash "shim".
For the server:
Download and install NodeJS.
Download and install node.ws.js (a
server-side WebSockets implementation for NodeJS) to the parent directory
of node-hydra
.
Start the server:
$ node run.js Static Httpd listening at http://127.0.0.1:8080/ Hydra: WebSocket server listening at http://127.0.0.1:8082 Hydra: Httpd server listening at http://127.0.0.1:8081
For the client:
node-hydra
.Client-initiated requests:
In Google Chrome, load http://127.0.0.1:8080/.
In the JavaScript console, enter:
http.createClient('GET', 'http://beebo.org/', function(res) { console.log(res); });
This arranges for the server to request http://beebo.org, and return the contents via the WebSocket. The console should show the traffic moving back and forth.
Server-initiated requests:
On the server, enter
$ export CLIENTID="client611851c0" $ export http_proxy="http://127.0.0.1:8081/" $ curl -s -i -X GET "http://$CLIENTID/" $ curl -s -i -d 'Michael' -X PUT "http://$CLIENTID/" $ curl -s -i -X GET "http://$CLIENTID/"
where `client611851c0` is the client id.
Clem
, and the second and third should
return Michael
. This uses the sample server in hello.js
.FAQs
Hydra is a NodeJS light-weight library for building distributed computing applications such as microservices
The npm package hydra receives a total of 634 weekly downloads. As such, hydra popularity was classified as not popular.
We found that hydra 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
vlt's new "reproduce" tool verifies npm packages against their source code, outperforming traditional provenance adoption in the JavaScript ecosystem.
Research
Security News
Socket researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
Research
The Socket Research Team discovered a malicious npm package, '@ton-wallet/create', stealing cryptocurrency wallet keys from developers and users in the TON ecosystem.