generated from persianccbook/booktemplates
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
75 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 | ||
|
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 حالت سریالایز شده ان را محاسبه میکنیم. |