From 8bef0e9d79ebb4b11f8fd2bea11dc8f1668bc9d0 Mon Sep 17 00:00:00 2001 From: Jeff Thibault Date: Fri, 22 Jul 2022 12:45:14 -0400 Subject: [PATCH] add that events from future are unacceptable --- 22.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/22.md b/22.md index 1cd21204..df5da822 100644 --- a/22.md +++ b/22.md @@ -6,18 +6,18 @@ Unacceptable Event `created_at` time `draft` `optional` `author:jeffthibault` -Relays may support notifying clients that the event they published has an unacceptable `created_at` time. A relay will will consider the `created_at` time unacceptable if the `created_at` time is more than **[limit]** before the event was received by the relay. +Relays may support notifying clients that the event they published has an unacceptable `created_at` time. A relay will consider the `created_at` time unacceptable if the `created_at` time is more than **[limit]** before the event was received by the relay (in the past) OR if the `created_at` time is later than the time the event was received by the relay (in the future). -If a relay supports this NIP, the relay SHOULD send the client a `NOTICE` message saying the event was not stored because the timestamp was too old. +If a relay supports this NIP, the relay SHOULD send the client a `NOTICE` message saying the event was not stored because the `created_at` time was unacceptable. Client Behavior --------------- -Clients SHOULD use the `supported_nips` field to learn if a relay supports event `created_at` checks. +Clients SHOULD use the `supported_nips` field to learn if a relay supports event `created_at` time checks. Motivation ---------- -The motivation for this NIP is to prevent clients from saying they published an event *significantly* earlier than they actually did. +The motivation for this NIP is to prevent clients from saying they published an event *significantly* earlier than they actually did or saying they published an event in the future. -The event `created_at` field is just a unix timestamp (integer) so one could set it to a time in the past. For example, the `created_at` field could be set to a time 10 years ago even though it was created today and it could still be a valid event. This NIP aims to set a maximum amount of time elapsed between when an event was created and when it was *actually* published. +The event `created_at` field is just a unix timestamp (integer) so one could set it to a time in the past or future. For example, the `created_at` field could be set to a time 10 years ago even though it was created today and it could still be a valid event. One could also set the `created_at` field to a time 10 years in the future and it could still be a valid event. This NIP aims to set a maximum amount of time elapsed between when an event was created and when it was *actually* published and prevent events from being from the future.