Compare commits

..

No commits in common. "v0.0.2-develop.2" and "v0.0.2-develop.1" have entirely different histories.

4 changed files with 10 additions and 9 deletions

View File

@ -1,3 +1 @@
## [0.0.2-develop.2](https://git.lumeweb.com/LumeWeb/peer-discovery-irc/compare/v0.0.2-develop.1...v0.0.2-develop.2) (2023-07-03)
## [0.0.2-develop.1](https://git.lumeweb.com/LumeWeb/peer-discovery-irc/compare/v0.0.1...v0.0.2-develop.1) (2023-07-01) ## [0.0.2-develop.1](https://git.lumeweb.com/LumeWeb/peer-discovery-irc/compare/v0.0.1...v0.0.2-develop.1) (2023-07-01)

5
npm-shrinkwrap.json generated
View File

@ -1,17 +1,18 @@
{ {
"name": "@lumeweb/peer-discovery-irc", "name": "@lumeweb/peer-discovery-irc",
"version": "0.0.2-develop.2", "version": "0.0.2-develop.1",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "@lumeweb/peer-discovery-irc", "name": "@lumeweb/peer-discovery-irc",
"version": "0.0.2-develop.2", "version": "0.0.2-develop.1",
"dependencies": { "dependencies": {
"@ctrl/irc": "^2.1.1", "@ctrl/irc": "^2.1.1",
"@lumeweb/libpeerdiscovery": "^0.1.0-develop.1", "@lumeweb/libpeerdiscovery": "^0.1.0-develop.1",
"@noble/curves": "^1.1.0", "@noble/curves": "^1.1.0",
"@noble/hashes": "^1.3.1", "@noble/hashes": "^1.3.1",
"b4a": "^1.6.4",
"json-stringify-deterministic": "^1.0.8" "json-stringify-deterministic": "^1.0.8"
}, },
"devDependencies": { "devDependencies": {

View File

@ -1,6 +1,6 @@
{ {
"name": "@lumeweb/peer-discovery-irc", "name": "@lumeweb/peer-discovery-irc",
"version": "0.0.2-develop.2", "version": "0.0.2-develop.1",
"main": "lib/index.js", "main": "lib/index.js",
"type": "module", "type": "module",
"repository": { "repository": {
@ -22,6 +22,7 @@
"@lumeweb/libpeerdiscovery": "^0.1.0-develop.1", "@lumeweb/libpeerdiscovery": "^0.1.0-develop.1",
"@noble/curves": "^1.1.0", "@noble/curves": "^1.1.0",
"@noble/hashes": "^1.3.1", "@noble/hashes": "^1.3.1",
"b4a": "^1.6.4",
"json-stringify-deterministic": "^1.0.8" "json-stringify-deterministic": "^1.0.8"
}, },
"files": [ "files": [

View File

@ -1,10 +1,11 @@
import type { Peer } from "@lumeweb/libpeerdiscovery"; import type { Peer } from "@lumeweb/libpeerdiscovery";
import { IrcClient } from "@ctrl/irc"; import { IrcClient } from "@ctrl/irc";
import jsonStringify from "json-stringify-deterministic"; import jsonStringify from "json-stringify-deterministic";
import b4a from "b4a";
import { ed25519 } from "@noble/curves/ed25519"; import { ed25519 } from "@noble/curves/ed25519";
import { ripemd160 } from "@noble/hashes/ripemd160"; import { ripemd160 } from "@noble/hashes/ripemd160";
import { sha256 } from "@noble/hashes/sha256"; import { sha256 } from "@noble/hashes/sha256";
import { bytesToHex, hexToBytes } from "@noble/hashes/utils"; import { bytesToHex } from "@noble/hashes/utils";
const hash160 = (data: Uint8Array) => ripemd160(sha256(data)); const hash160 = (data: Uint8Array) => ripemd160(sha256(data));
@ -37,7 +38,7 @@ export default async (
client.once("join", resolve); client.once("join", resolve);
}); });
client.say("#lumeweb", bytesToHex(pubkey)); client.say("#lumeweb", b4a.toBuffer(pubkey).toString("hex"));
return new Promise<Peer>((resolve, reject) => { return new Promise<Peer>((resolve, reject) => {
client.on("pm", async (from: string, text: string) => { client.on("pm", async (from: string, text: string) => {
@ -57,8 +58,8 @@ export default async (
const verifyPayload = jsonStringify(verifyData); const verifyPayload = jsonStringify(verifyData);
if ( if (
!ed25519.verify( !ed25519.verify(
hexToBytes(json.signature as string), b4a.from(json.signature, "hex"),
hexToBytes(verifyPayload), b4a.from(verifyPayload),
pubkey, pubkey,
) )
) { ) {