اول، کمی زبان انگلیسی. آ "پیام" واحد ارتباط بین دو یا چند شرکت کننده در یک شبکه بلاک چین است. این می تواند حاوی هر نوع داده ای باشد و معمولاً برای دریافت تأیید دیجیتال از یک کاربر استفاده می شود.
A "معامله"از سوی دیگر، نوع خاصی از پیام است که شامل انتقال ارزش از یک شرکتکننده به شرکتکننده دیگر است. معمولاً شامل اطلاعاتی مانند آدرس فرستنده، آدرس گیرنده، مقدار ارز رمزنگاری شده در حال انتقال و امضای دیجیتالی است که مجوز فرستنده برای انتقال را ثابت می کند.
کاربران می توانند از قبل تراکنش های امضا را با استفاده از دستگاه های Ledger خود پاک کنند. همانطور که در این پست توضیح داده شده استو ما این روش خوب را با استفاده از همان اصول به پیامها نیز تعمیم دادهایم، در اینجا نحوه انجام آن آمده است.
چرا پیام ها را در web3 امضا می کنیم؟
بلاک چین ها بر اساس رمزنگاری کلید عمومی، جایی که کاربران دارای یک کلید عمومی و یک کلید خصوصی هستند که یک جفت را تشکیل می دهند. کلید عمومی هویت مالک را نشان میدهد و کلید خصوصی مخفی است و به آنها اجازه میدهد ثابت کنند که مالک جفت کلید هستند.
هنگام امضای یک پیام، از کلید خصوصی خود در الگوریتم امضا برای پیوند امضا به پیام و کلید عمومی استفاده می کنید. هیچ کس نمی تواند کلید خصوصی شما را استخراج کند یا یک امضای معتبر برای شما جعل کند. با این حال، هر کسی که کلید عمومی شما را بشناسد می تواند به راحتی تأیید کند که پیام توسط کلید خصوصی شما امضا شده است.
به طور خلاصه، این فرآیند و ایده مشابه امضای تراکنش ها است، با این تفاوت که ما در اینجا بر امضای پیام هایی تمرکز می کنیم که هدف متفاوتی را دنبال می کنند: کمک هزینه. ما پیامهایی را در برنامههای رمزنگاری امضا میکنیم تا رضایت کاربر را جمعآوری کنیم، درست مانند زمانی که در زندگی واقعی از امضای کتبی خود روی کاغذ استفاده میکنید. این نسخه رمزنگاری شده "امضای فیات" است.
اهمیت EIP-712
امضای پیام ها چیز جدیدی نیست. اکنون سالها است که میتوانیم پیامها را امضا کنیم، و این پیامها میتوانند شکلها و شکلهای متفاوتی داشته باشند که در طول زمان بهبود مییابند. در واقع، پیشنهاد بهبود اتریوم 191 (EIP-191) در سال 2016 ارائه شد و استانداردی را معرفی کرد که به پیامهای قابل خواندن توسط انسان اجازه میدهد که به صورت بومی توسط دستگاههای Ledger پشتیبانی میشود. با این حال، نقطه ضعف EIP-191 این است که استاندارد داده ها را ساختار نمی دهد. این فقط یک تار از طول نامحدود داده در انتهای پیام است که استفاده از آن را سخت می کند. در عمل، پیامها معمولاً خیلی طولانی هستند که کوتاه میشوند و در نتیجه کاربر اطلاعات کلیدی بالقوه را از دست میدهد. UX ضعیف
همانطور که در ابتدای پیشنهاد بهبود اتریوم 712 (EIP-712): «امضا دادهها یک مشکل حلشده است اگر تنها چیزی که به آن اهمیت میدهیم آزمایشهای بایت باشد. متأسفانه در دنیای واقعی ما به پیامهای معنادار پیچیده اهمیت میدهیم.» - من نمی توانستم بیشتر موافق باشم. از آنجایی که پیام ها برای انجام عملیات پیچیده تر رشد کردند، معرفی ساختارهای داده تایپ شده در پیام ها همانطور که در EIP-712 مشخص شده است یک تغییر خوشایند بود.
معنی این موضوع برای کاربران این است که اکنون توسعه دهندگان می توانند داده های موجود در پیام را تجزیه کنند و بدانند چه چیزی چیست که اکنون می تواند در معرض کاربر قرار گیرد. تجزیه به معنای توانایی خواندن مطالب است، زیرا می دانید ساختار آن چگونه است. این یک تغییر بازی از نظر تجربه کاربری است، اما همچنین از منظر امنیتی، زیرا اکنون میتوانم آنچه را که امضا میکنم تأیید کنم.
به عنوان یک توسعهدهنده اپلیکیشن، اگر از آلیس میخواهید که به شما اجازه خاصی در مورد محتوای کیف پول خود بدهد، باید در مورد این موضوع صریح باشید تا شانس خود را برای ادامه کار به حداکثر برسانید. اما این چیزی بیش از یک بهینه سازی نرخ تبدیل است.
اگر به امنیت و دفاع در یک محیط متخاصم فکر می کنید، بدیهی است که یک کلاهبردار آن پیام را تا حد امکان غیرشفاف می کند تا آلیس را فریب دهد تا آن عملیات مخرب را مجاز کند. شفافیت و توانایی آلیس برای بررسی مجدد آنچه که امضا می کند کاملاً ضروری است.
و اینجاست که EIP-712 وارد میشود. قبل از این EIP، پیامهای امضا شده یک رشته ششضلعی غیرشفاف بودند که با بافت کمی در مورد مواردی که پیام را تشکیل میدهند، به کاربر نمایش داده میشد.
آیا شما این را امضا می کنید؟ هیچ ایده ای دارید که در اینجا به چه چیزی اجازه می دهید؟
مشخصات EIP-712 ساختارهای دادهای تایپشده را برای پیامها معرفی میکند که به آنها اجازه میدهد توسط کیف پولها تجزیه شوند و به شیوهای کاربرپسند نمایش داده شوند تا آلیس تصمیمی آگاهانه بگیرد. علاوه بر این، این یک استاندارد و قابل همکاری در سراسر صنعت است: با پشتیبانی از EIP-712، پیام شما می تواند توسط Ledger، MetaMask، Rainbow، Argent، Coinbase Wallet تجزیه شود.
پشتیبانی Ledger برای EIP-712
اول از همه، روزهای خوش، دستگاههای لجر از پیامهای EIP-712 پشتیبانی میکنند و بهعنوان یک توسعهدهنده میتوانید دقیقاً نحوه نمایش پیامهای خود را در دستگاه کنترل کنید.
اساساً 3 سطح پشتیبانی از پیام ها در دستگاه های Ledger وجود دارد:
سطح 1: امضای کور
اگر باب، یک توسعهدهنده برنامه، از پیامهای EIP-712 استفاده نمیکند، باب اساساً از آلیس میخواهد تا یک رشته هگز ناخوانا را امضا کند: باب از آلیس میخواهد چیزی را امضا کند که حتی نمیتواند بخواند، این امضای کور.
سطح 2: امضای شفاف
با پیاده سازی یک پیام EIP-712، باب در حال برداشتن یک گام رو به جلو از رشته هگزا به محتوای قابل خواندن است. اکنون به آلیس اجازه میدهد محتوای پیام را بخواند، با این حال، چون محتوای کامل پیام را برای او نمایش میدهد، تشخیص اطلاعات کلیدی که با اطلاعات فنی ترکیب شدهاند دشوار است. شفاف است، اما هنوز مشخص نیست.
سطح 3: امضای پاک کردن
از آنجایی که دستگاه می تواند محتوای پیام را تجزیه کند، با نشان دادن اینکه چه چیزی و چگونه نمایش داده شود، می توانیم به امضای واضح دست یابیم. بنابراین، به شرطی که باب متادیتای مورد نیاز را تنظیم کند، این چیزی است که آلیس در دستگاه لجر خود می بیند:
خیلی بهتر از یک رشته شش گوش است، نه؟
نکته کلیدی دیگر این است که از آنجایی که در یک صفحه کاملا امن نمایش داده می شود، دستگاه جداگانه ای که نمی توان با آن دستکاری کرد، آلیس 100٪ مطمئن است که آنچه در آن دستگاه می بیند همان چیزی است که امضا می کند: هیچ بدافزار یا برنامه مخربی نمی تواند آنچه را که به او نمایش داده می شود تغییر دهد. اگر آنچه در دستگاه نمایش داده می شود با انتظارات او مطابقت نداشته باشد، می تواند ایمن بماند و امضای پیام را رد کند.
برای ارائه این UX بهبود یافته و امنیت بیشتر به کاربرانش، باب باید 2 کار را انجام دهد: مشخص کنید کدام فیلدها باید به کاربر نمایش داده شوند و یک نام نمایشی خوب و صریح برای آنها ارائه دهید.
اگر به عنوان یک توسعه دهنده می خواهید به باب بپیوندید و این کار را برای برنامه خود انجام دهید، شما تمام اسناد را در اینجا دارید، و اساساً به ایجاد یک درخواست کشش برای لیست سفید قرارداد شما در رجیستری دارایی dApps Ledger از طریق یک فایل JSON خلاصه می شود که شامل:
- انتخابگرهایی برای نشان دادن اینکه دستگاه باید کدام فیلدها را نشان دهد آلیس،
- هر انتخابگر را با یک نام نمایشی برچسب بزنید.
این لوازم آرایشی نیست، تمرین خوبی است
با قرار دادن قرارداد هوشمند خود در لیست سفید و نشان دادن اینکه چگونه دستگاههای Ledger میتوانند پیامهای شما را نمایش دهند، نه تنها تجربه کاربری را در هنگام تعامل با برنامه خود به طور قابل توجهی بهبود میبخشید، بلکه مهمتر از همه، از همه ما در برابر کلاهبرداری محافظت میکنید و به ایجاد عادات خوب در برنامه کمک میکنید. اکوسیستم وب 3
ما هرگز نباید چیزی را که نمی فهمیم امضا کنیم.
ما بدون شما نمی توانیم این کار را انجام دهیم، به ما کمک کنید تا هنجار را به طور واضح امضا کنیم.
- محتوای مبتنی بر SEO و توزیع روابط عمومی. امروز تقویت شوید.
- PlatoAiStream. Web3 Data Intelligence دانش تقویت شده دسترسی به اینجا.
- ضرب کردن آینده با آدرین اشلی. دسترسی به اینجا.
- خرید و فروش سهام در شرکت های PRE-IPO با PREIPO®. دسترسی به اینجا.
- منبع: https://www.ledger.com/blog/securing-message-signing
- :است
- :نه
- :جایی که
- $UP
- 1
- 2016
- 22
- 220
- a
- توانایی
- قادر
- درباره ما
- در مورد IT
- کاملا
- رسیدن
- در میان
- نشانی
- دشمن
- الگوریتم
- معرفی
- اجازه دادن
- اجازه دادن
- اجازه می دهد تا
- قبلا
- همچنین
- مقدار
- an
- و
- دیگر
- هر
- هر کس
- نرم افزار
- کاربرد
- تصویب
- هستند
- پول نقره
- AS
- دارایی
- At
- مجوز
- مستقر
- BE
- زیرا
- بوده
- قبل از
- شروع
- بودن
- بهتر
- میان
- بیت
- بلاکچین
- شبکه بلوچین
- فریب
- ساختن
- اما
- by
- CAN
- اهميت دادن
- تهیه کنید
- شانس
- تغییر دادن
- صراف
- واضح
- coinbase
- کیف پول Coinbase
- می آید
- عموما
- ارتباط
- پیچیده
- رضایت
- محتوا
- محتویات
- زمینه
- قرارداد
- کنترل
- تبدیل
- ایجاد
- کریپتو کارنسی (رمز ارزها )
- DApps
- داده ها
- روز
- تصمیم
- دفاع
- دقیق
- توسعه دهنده
- توسعه دهندگان
- دستگاه
- دستگاه ها
- مختلف
- دیجیتال
- نمایش دادن
- نمایش
- do
- مستندات
- نمی کند
- آیا
- پایین
- هر
- به آسانی
- اکوسیستم
- EIP
- پایان
- محیط
- ضروری است
- اساسا
- ethereum
- حتی
- جز
- انتظارات
- تجربه
- قرار گرفتن در معرض
- اضافی
- امنیت اضافی
- واقعیت
- زمینه
- پرونده
- تمرکز
- برای
- جعل
- فرم
- اشکال
- به جلو
- از جانب
- کامل
- کاملا
- بعلاوه
- بازی
- تغییر دهنده ی بازی
- جمع آوری
- دریافت کنید
- GIF
- رفتن
- خوب
- اعطا کردن
- دست
- خوشحال
- سخت
- آیا
- کمک
- کمک
- او
- اینجا کلیک نمایید
- HEX
- خود را
- چگونه
- اما
- HTTPS
- قابل خواندن انسان است
- i
- اندیشه
- هویت
- if
- اهمیت
- بهبود
- بهبود یافته
- بهبود
- بهبود
- in
- شامل
- نشان دادن
- نشان دادن
- صنعت
- اطلاعات
- اطلاع
- تعامل
- متقابل
- معرفی
- معرفی می کند
- معرفی
- IT
- اقلام
- پیوستن
- JPG
- json
- تنها
- کلید
- دانستن
- دفتر کل
- طول
- سطح
- زندگی
- ارتباط دادن
- کوچک
- طولانی
- ساخت
- ساخت
- نرم افزارهای مخرب
- روش
- مسابقه
- حداکثر عرض
- بیشینه ساختن
- معنی دار
- به معنی
- پیام
- پیام
- متاداده
- MetaMask
- گم
- مخلوط
- بیش
- نام
- بومی
- نیازهای
- شبکه
- هرگز
- جدید
- خوب
- نه
- اکنون
- of
- غالبا
- on
- ONE
- فقط
- مات
- عمل
- عملیات
- بهینه سازی
- or
- دیگر
- خارج
- روی
- خود
- جفت
- مقاله
- شرکت کنندگان
- اجازه
- چشم انداز
- افلاطون
- هوش داده افلاطون
- PlatoData
- نقطه
- فقیر
- ممکن
- بالقوه
- تمرین
- دقیقا
- از اصول
- خصوصی
- کلید خصوصی
- مشکل
- روند
- طرح پیشنهادی
- حفاظت
- ثابت كردن
- اثبات می کند
- ارائه
- ارائه
- عمومی
- کلید عمومی
- هدف
- نرخ
- خواندن
- واقعی
- زندگی واقعی
- دنیای واقعی
- رجیستری
- نشان دهنده
- درخواست
- ضروری
- نتیجه
- امن
- همان
- کلاهبرداری
- راز
- امن
- تیم امنیت لاتاری
- دیدن
- می بیند
- خدمت
- تنظیم
- اشکال
- او
- کوتاه
- باید
- نشان
- امضاء
- امضاء شده
- به طور قابل توجهی
- امضای
- پس از
- هوشمند
- قرارداد هوشمند
- So
- چیزی
- خاص
- مشخصات
- مشخص شده
- Spot
- استاندارد
- اظهار داشت:
- ماندن
- گام
- داستان
- رشته
- ساختار
- ساخت یافته
- ارسال
- چنین
- فوق العاده
- پشتیبانی
- پشتیبانی
- حمایت از
- گرفتن
- فن آوری
- قوانین و مقررات
- نسبت به
- که
- La
- شان
- آنها
- اینها
- آنها
- چیز
- اشیاء
- فکر می کنم
- این
- کسانی که
- اگر چه؟
- زمان
- به
- هم
- معاملات
- انتقال
- منتقل
- شفافیت
- شفاف
- دو
- نوع
- فهمیدن
- متاسفانه
- واحد
- نا محدود
- us
- استفاده کنید
- استفاده
- کاربر
- سابقه کاربر
- کاربر پسند
- کاربران
- با استفاده از
- معمولا
- ux
- ارزش
- بررسی
- از طريق
- کیف پول
- کیف پول
- می خواهم
- بود
- we
- Web3
- اکوسیستم Web3
- خوش آمد
- خوب
- بود
- چی
- چه شده است
- چه زمانی
- که
- لیست سفید
- WHO
- اراده
- با
- بدون
- جهان
- خواهد بود
- کتبی
- سال
- شما
- شما
- زفیرنت