Skip to content

Commit

Permalink
README.md start
Browse files Browse the repository at this point in the history
  • Loading branch information
kehiy committed Jul 23, 2024
1 parent 780bd99 commit cb3e6d7
Show file tree
Hide file tree
Showing 4 changed files with 75 additions and 9 deletions.
45 changes: 45 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# امکانات پیاده سازی نوستر

این مخزن شامل ترجمه محتوایت مخزن اصلیه نیپ ها (امکانات پیاده سازی نوستر) میباشد.

لینک مخزن اصلی:
https://github.com/nostr-protocol/nips

# نوستر چیست؟

نوستر یک پروتکل طراحی شده برای سادگی و به هدف ایجاد یک شبکه اجتماعی جهانی سانسورناپذیز میباشد.

## ساده

پروتکل نوستر بر اساس اشیا ساده و منعطفی به اسم رویداد می باشد که بصورت JSON خام بر بستر شبکه منتقل میشود.

نوستر از استاندارد رمزنگاری elliptic-curve برای ایجاد کلید های عمومی و خصوصی و همچنین امضا های دیجیتالی استفاده میکند.

تنها پروتکل شبکه پشتیبانی شده پروتکل وب سوکت است که نوشتن کلاینت ها و رله های حدید را ساده تر میکند.

## نرمش پذیر (منعطف)

نوستر به دلیل تکیه نداشتن به تعداد محدودی سرور برای نگهداری و جابه جایی داده بسیار منعطف است. این پروتکل اجازه میدهد که کلاینت ها طی زمان به رله های مختلفی متصل شوند و رویداد های خود را منتشر کنند.


## سلامت بررسی پذیر

به دلیل استفاده نوستر از کلید های رمزنگاری بررسی درستی اینکه ایا پیام توسط کاربر مد نظر فرستاده شده ساده است.

همچون HTTP و TCP-IP نوستر هم یک پروتکل است. یک استاندارد ازاد که هرکسی میتواند ان را پیاده سازی کند.
نوستر یک نرم افزار یا یک سرویس که شما در ان نام نویسی کنید نیست.

## چرا به نوستر نیاز داریم؟

شبکه های اجتماعی به روش کلیدی گردش اطلاعات در جهان تبدیل شده اند. متاسفانه شبکه های اجتماعی کنونی ما دچار مشکل شده اند:

۱. از توجه کاربر برای فروش تبلیغات استفاده میشود.
۲. از روش های عجیب و غریب برای معتاد نگه داشتن شما استفاده میشود.
۳. بر اساس الگوریتمی تصمیم گرفته میشود چه محتوایی به شما نشان داده شود که شما نمیتوانید ان را ببینید یا تغییر دهید.
۴. آنها توانایی کامل بر اینکه چه کسی در شبکه فعالیت کند یا سانسور شود دارند.
۵. این شبکه های اجتماعی پر از هرزنامه و ربات ها هستند.

مقایسه نوستر با دیگر پروتکل های جایگزین شبکه های اجتماعی را ببینید:

https://nostr.com/comparisons

3 changes: 0 additions & 3 deletions src/SUMMARY.md

This file was deleted.

6 changes: 0 additions & 6 deletions src/chapter_1.md

This file was deleted.

30 changes: 30 additions & 0 deletions src/nip-01.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# نیپ شماره ۱

## روشنگری بنیادی روند پروتکل

`پیشنویس` ‍‍‍‍`بایسته(الزامی)`

این نیپ پروتکل آغازینی را میشناساند که باید توسط همه پیاده سازی شود. نیپ های تازه تر ممکن است زمینه ها پیام ها و یا قابلیت های دلخواهی به روند شناسانده شده (معرفی شده) در این نیپ بیفزایند.

## رویداد ها و امضا ها
هر کاربر یک جفت کلید دارد. امضا ها کلید های عمومی و رمزگذاری ها بر اساس استاندارد [Schnorr signatures standard for the curve `secp256k1`](https://bips.xyz/340) انجام میشود.

تنها شی (حالت داده) موجود ‍‍`رویداد` است که فرمت زیر را دارد:

```jsonc
{
"id": <32-bytes lowercase hex-encoded sha256 of the serialized event data>, // شناسه
"pubkey": <32-bytes lowercase hex-encoded public key of the event creator>, // کلید عمومی
"created_at": <unix timestamp in seconds>, // زمان ساخت شدن رویداد
"kind": <integer between 0 and 65535>, // نوع

"tags": [ // برچسب ها
[<arbitrary string>...],
// ...
],
"content": <arbitrary string>, // محتوا
"sig": <64-bytes lowercase hex of the signature of the sha256 hash of the serialized event data, which is the same as the "id" field> // امضا
}
```

برای محاسبه شناسه رویداد هش sha256 حالت سریالایز شده ان را محاسبه میکنیم.

0 comments on commit cb3e6d7

Please sign in to comment.