mirror of
https://github.com/nbd-wtf/nostr-tools.git
synced 2025-12-08 16:28:49 +00:00
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b271d6c06b |
1
event.js
1
event.js
@@ -48,7 +48,6 @@ export function validateEvent(event) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function verifySignature(event) {
|
export function verifySignature(event) {
|
||||||
if (!validateEvent(event)) return false
|
|
||||||
return secp256k1.schnorr.verify(event.sig, event.id, event.pubkey)
|
return secp256k1.schnorr.verify(event.sig, event.id, event.pubkey)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
export function matchFilter(filter, event) {
|
export function matchFilter(filter, event) {
|
||||||
if (filter.id && event.id !== filter.id) return false
|
if (filter.id && event.id !== filter.id) return false
|
||||||
if (filter.kind && event.kind !== filter.kind) return false
|
if (typeof filter.kind === 'number' && event.kind !== filter.kind) return false
|
||||||
if (filter.author && event.pubkey !== filter.author) return false
|
|
||||||
if (filter.authors && filter.authors.indexOf(event.pubkey) === -1)
|
if (filter.authors && filter.authors.indexOf(event.pubkey) === -1)
|
||||||
return false
|
return false
|
||||||
if (
|
if (
|
||||||
|
|||||||
2
index.js
2
index.js
@@ -4,6 +4,7 @@ import {relayPool} from './pool'
|
|||||||
import {
|
import {
|
||||||
getBlankEvent,
|
getBlankEvent,
|
||||||
signEvent,
|
signEvent,
|
||||||
|
validateEvent,
|
||||||
verifySignature,
|
verifySignature,
|
||||||
serializeEvent,
|
serializeEvent,
|
||||||
getEventHash
|
getEventHash
|
||||||
@@ -15,6 +16,7 @@ export {
|
|||||||
relayConnect,
|
relayConnect,
|
||||||
relayPool,
|
relayPool,
|
||||||
signEvent,
|
signEvent,
|
||||||
|
validateEvent,
|
||||||
verifySignature,
|
verifySignature,
|
||||||
serializeEvent,
|
serializeEvent,
|
||||||
getEventHash,
|
getEventHash,
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "nostr-tools",
|
"name": "nostr-tools",
|
||||||
"version": "0.15.0",
|
"version": "0.15.1",
|
||||||
"description": "Tools for making a Nostr client.",
|
"description": "Tools for making a Nostr client.",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
|||||||
5
relay.js
5
relay.js
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
import 'websocket-polyfill'
|
import 'websocket-polyfill'
|
||||||
|
|
||||||
import {verifySignature} from './event'
|
import {verifySignature, validateEvent} from './event'
|
||||||
import {matchFilters} from './filter'
|
import {matchFilters} from './filter'
|
||||||
|
|
||||||
export function normalizeRelayURL(url) {
|
export function normalizeRelayURL(url) {
|
||||||
@@ -93,7 +93,8 @@ export function relayConnect(url, onNotice = () => {}, onError = () => {}) {
|
|||||||
let event = data[2]
|
let event = data[2]
|
||||||
|
|
||||||
if (
|
if (
|
||||||
(await verifySignature(event)) &&
|
validateEvent(event) &&
|
||||||
|
verifySignature(event) &&
|
||||||
channels[channel] &&
|
channels[channel] &&
|
||||||
matchFilters(openSubs[channel], event)
|
matchFilters(openSubs[channel], event)
|
||||||
) {
|
) {
|
||||||
|
|||||||
Reference in New Issue
Block a user