MatlabTips
892 subscribers
462 photos
72 videos
54 files
304 links
آموزش MATLAB با "استفاده از ویدئو و متن" در سطوح مبتدی تا پیشرفته
پاسخ به سوالات تخصصی:
@roholazandie
Download Telegram
Honare Ketab Nakhandan_362388.pdf
274.1 KB
هنر کتاب نخواندن (بهاالدین خرمشاهی) ۱۲ صفحه
یک مقاله بسیار کوتاه درباب روشهای کتاب خواندن و نخواندن
🔵رمزنگاری-3🔵
موضوع: امضای دیجیتال

همانطور که در بخش قبل هم متوجه شدید روش رمزنگاری ای که بیان شد یک مشکل بزرگ دارد و آن این است که چون کلید عمومی در دسترس همگان است همه می توانند برای شیرین پیام بفرستند هرچند تنها کسی که میتواند پیام ها را باز کند شیرین است. در واقع گویا هیچ راهی وجود ندارد که اصالت فرد مشخص شود. در دنیای واقعی برای اینکه متوجه بشویم یک پیام مربوط به شخص خاصی است از او میخواهیم که پای آن را امضا کند. همه می دانیم امضای هر شخص متعلق به خود اوست و باید طوری باشد که کپی کردن آن سخت باشد. هر چند، هرقدر هم امضای شما پیچیده باشد باز هم ممکن است افرادی باشند که با مهارت آن را جعل کنند. اما در دنیای دیجیتال چگونه میتوان امضا داشت؟

امضای دیجیتال روش های مختلفی دارد اما اینجا باز هم بر اساس الگوریتم RSA آن را توضیح می دهیم. در واقع برای امضای دیجیتال ما از چارچوب خود روش RSA خارج نمی شویم! فقط یک تفاوت کوچک وجود دارد. فرض کنید دو شخص به صورت مجزا برای شیرین پیام ارسال می کنند. شیرین پیام ها را باز میکند ولی نمی تواند متوجه شود که کدام یکی واقعا فرهاد است. از قضا هر دوی آن اشخاص از یک کلید عمومی استفاده می کنند.اما فقط یکی از آن ها می تواند واقعا ادعا کند که صاحب "کلید عمومی صحیح" است(فراموش نکنید دستیابی به کلید خصوصی از طریق کلید عمومی ناممکن است). کسی صاحب واقعی کلید عمومی است که کلید خصوصی جفت آن را هم داشته باشد. به همین خاطر شیرین از آن ها می خواهد برای اثبات ادعای خود یک پیام ساده مانند "من راست میگم" یا هر چیز دیگری که شیرین به آن ها دستور دهد را با کلید خصوصی خود رمز کنند بنابراین هر دو پیام خود را با کلید خصوصی خودشان رمز می کنند:
اینجا امضا صرفا یک عدد است. d1 کلید خصوصی واقعی فرهاد است و d2 کلید خصوصی مهاجم است که جعلی است. حالا شیرین می تواند با استفاده از کلید عمومی آنها متوجه شود که کدامیک راست میگویند برای این کار او به سادگی می تواند محاسبه کند که آیا امضا به توان کلید عمومی با عدد پیامی که به آن ها گفته بود هم نهشت هست یا خیر:
همانطور که میبینید شخص دوم دروغ گفته بود او واقعا کلید خصوصی مربوط به آن کلید عمومی که ادعا می کرد را نداشت چون امضایش با کلید عمومی ادعاییش نمیخواند.

گیج نشوید: دقت کنید که اینجا تفاوت ظریفی بین رمزنگاری و امضای دیجیتال وجود دارد. در رمزنگاری پیام ها با کلید عمومی رمز می شدند و با کلید خصوصی باز می شدند اما در امضای دیجیتال پیام ها با کلید خصوصی امضا می شوند و با کلید عمومی تایید می شوند.

باز هم یک جای داستان بالا میلنگد.فرض کنید هر کدام از اشخاص بالا از کلید عمومی متفاوتی استفاده کنند. اینجا هیچ راهی برای شیرین وجود ندارد که بداند کلید عمومی فرهاد کدام است. تنها چیزی که شیرین می تواند بفهمد این است که با فرض دانستن کلید عمومی فرهاد(به هر طریقی) می تواند آن را با حقه امضای دیجیتال تایید کند.

برای حل کردن این مشکل "زیرساخت کلید عمومی" (Public key infrastructure) پیشنهاد شده است. به عبارتی سازمان هایی در دنیا وجود دارند که به افراد، شرکت ها و بانک ها، گواهی دیجیتال (Digital certificate) می دهند. این سازمان ها در واقع مشخص می کنند هر کس چه کلید عمومی دارد. به این ترتیب شما به راحتی می توانید بروید و ببینید برای مثلا فرهاد چه کلید عمومی ثبت شده است. در یک مثال واقعی تر شما به دنبال مطمئن بودن کلید عمومی درگاه بانک هستید. برای این کار کافی است به گواهی دیجیتال آن سر بزنید و ببینید برای آن بانک چه کلید عمومی ثبت شده است. امروزه این کار به صورت اتوماتیک توسط مرورگر شما انجام می شود. شما هم ممکن است حالت های زیر را در مرورگر خود دیده باشید
در حالاتی که وبسایت به صورت قرمز یا زرد هستند (حتی با وجود اینکه از پروتکل امن (https) که مبتنی بر رمزنگاری نامتقارن است) استفاده می شود قابل اعتماد نیستند. زیرا آنها هیچ گواهی دیجیتالی ندارند. به طور مثال وبسایت شاپرک که بیشتر تراکنش های بانکی ایران از طریق آن انجام می شود به صورت زیر است(یک وبسایت کاملا امن که گواهی بین المللی کلید عمومی آن تایید شده است):
برای اینکه کلید عمومی شاپرک را ببینید. کافی است روی مرورگر خود کلیک راست کرده و گزینه inspect را انتخاب کنید سپس به بخش security بروید و بر روی View certificate کلیک کنید. در زیر میبینید که کلید عمومی شاپرک 2048 بیتی است و از الگوریتم RSA هم استفاده می کند.
الان متوجه میشوید که چرا دادن اطلاعاتتان مثل رمز عبور به وب سایت هایی که کلید عمومی معتبری ندارند، خطرناک است. کل این ماجرا در نگاه اول پیچاندن لقمه به دور سر بنظر می رسد اما بعد از مدتی تامل به ظرافت ها و هوش در طراحی این ساختار رمزنگاری پی میبرید. ساختاری که امنیت میلیارد ها تراکنش در طول روز را در سراسر جهان حفظ می کند.
در قسمت بعد به توضیح ساختار مهم ترین پول دیجیتال یعنی بیت کوین می رسیم.
در این پست هم مانند پست های دیگر @matlabtips به دل ریاضیات رمزنگاری بیت کوین می زنیم.
🔵چرا وقتی کمتر کار میکنیم کار بیشتری می کنیم🔵

زمانی این کار را شروع کردم که متوجه تعارضی عجیب در زندگی برخی افرادِ حقیقتاً خلاق شدم، افرادی مثل چارلز داروین، استفن کینگ و مایا آنجلو که به شدت هم دل‌مشغولِ کارشان بودند. ساعت کار این افراد در روز به‌حدی حیرت‌آور اندک است. این ایده که می‌توان آن‌قدرها کار نکرد ولی باز هم کارهای فوق‌العاده‌ای انجام داد به‌شدت مرا مجذوب خود کرده بود، به‌خصوص که من در سیلیکون وَلی و در روزگاری بزرگ شده‌ام که زیادْکاری در آن اَمری عادی است. به نظرم آمد که راز این موضوع نه‌فقط در نحوۀ کارکردنِ آن‌ها یا هوش ذاتی‌شان که در شیوۀ استراحتشان نیز نهفته است.

استراحت کردن الزاماً فعالیتی منفعل و بی‌تحرک نیست. آنچه معمولاً از استراحت در ذهن داریم این است: لَم‌دادن، نوشیدنِ مقداری نوشیدنی و پشت سر هم تماشاکردن چند قسمت از سریال «نارنجی همان سیاه است». اما، از نظر افراد موردمطالعۀ من، استراحت از آنچه ما از تمرینات ورزشی در ذهن داریم هم فعال‌تر و پرحرارت‌تر است

همیشه این کلیشه وجود داشته که دانشمندان، نویسندگان و دیگر افرادِ خلاقْ اهل ورزش نیستند یا ورزش‌کارانْ سبک‌مغز شمرده شده‌اند. این در حالی است که چنین فرضی حقیقتاً نابجاست. برای خودِ من هم جالب بود که بسیاری از آن‌هایی که درست استراحت‌کردن را آموخته‌اند به‌شکلی جدی به ورزش مشغول بودند.

من دریافتم که برایم مهم است که کارم را انجام دهم تا استراحت را به دست بیاورم.این یعنی، نسبت به زمانی که داشتم، به‌شدت بی‌رحم بودم و با کسی شوخی نداشتم. معنای دیگرش این بود که به خیلی چیزها نه می‌گفتم. اما الان چرت‌زدن‌هایم بیشتر شده؛ چرت‌زدن فقط برای بچه‌های چهارساله نیست، بلکه فعالیت ترمیمی فوق‌العاده‌ای است که بسیار هم اثربخش است. الان که در بانک منتظر می‌نشینم یا چند دقیقه وقت آزاد دارم آگاهانه‌تر با این زمان برخورد می‌کنم؛ به‌جای اینکه گوشی‌ام را دربیاورم و سَری به ایمیل‌هایم بزنم، ذهنم را آزاد می‌کنم. به‌نظرم این رویه ی خوبی است و فکر می‌کنم بیشتر از قبل توانسته‌ام آن لحظاتی را رقم بزنم که جرقه‌ای در ذهن انسان پدید می‌آید. و اینکه حالا دیگر همیشه با خودم دفترچه و خودکار دارم.

https://tarjomaan.com/interview/8331/
Forwarded from اتچ بات
کاش دلتنگی نیز نامِ کوچکی می‌داشت
تا به جانش می‌خواندی:
نامِ کوچکی
تا به مهر آوازش می‌دادی،
همچون مرگ
که نامِ کوچکِ زندگی‌ست
و بر سکّوبِ وداع‌اش به زبان می‌آوری
هنگامی که قطاربان
آخرین سوتش را بدمد
و فانوسِ سبز
به تکان درآید:
نامی به کوتاهیِ‌ آهی
که در غوغای آهنگینِ غلتیدنِ سنگینِ پولاد بر پولاد
به لب‌جُنبه‌یی بَدَل می‌شود:
به کلامی گفته و ناشنیده انگاشته
یا ناگفته‌یی شنیده پنداشته.

(موسیقی: فریبرز لاچینی، سپیدار)
🔵بیت کوین-1🔵

در این قسمت سعی می کنیم برای درک بیت کوین آن را بسازیم! یعنی سعی میکنیم قدم به قدم ویژگی های بیت کوین را اضافه کنیم تا به اصل آن برسیم.

برای خیلی از ماها پیش آمده است که بخواهیم حساب کتابهایی با دوستانمان انجام بدهیم. این بخصوص برای دوستانی که در خوابگاه بوده اند روشن تر است. یکی نان می خرد یکی مایع ظرفشویی و الخ. برای نگه داشتن حساب و کتابها معمولا از یک دفتر یا کاغذ استفاده می کنیم. اسم آن را "دفتر حساب" می گذاریم معمولا دفتر حساب ها به صورت زیر هستند.
آخر هر ماه هم افراد جمع می شوند و پس از حساب و کتاب برخی بدهکار و برخی بستانکار می شوند. در نهایت بدهکاران سهم بدهکاری شان را وسط می گذارند و بستانکارها سهم خود را بر می دارند. تا اینجای کار همه چیز خیلی خوب پیش می رود. اما فرض کنید یک نفر بین دوستان شما خیلی هم فرد قابل اعتمادی نیست اسم او پژمان است و برخی اوقات می رود و یک خط اضافه می کند که باید مثلا 2000 تومان علی به پژمان بدهد. برای اینکه چنین اتفاقی نیوفتد میتوان یک قرار داد گذاشت. هر کس که قرار است به دیگری پول بدهد باید جلوی آن را امضا کند. اینطوری مطمئن می شویم که آن فرد خودش از این تراکنش آگاه بوده است.

اما امضا کردن روش قابل اعتمادی نیست اگر پژمان قدری حرفه ای باشد براحتی می تواند امضای علی را جعل کند. اینجاست که می توان از امضای دیجیتال که در بخش قبل در مورد آن صحبت شد استفاده کرد. به این صورت که همه افراد یک کلید عمومی و خصوصی دارند. هرگاه یک تراکنش انجام می شود. می توان تراکنش را مثل یک پیام(رجوع کنید به پست مربوط به امضای دیجیتال) امضا کرد. بنابراین اگر علی باید 2000 تومان به پژمان بدهد باید آن را بنویسد سپس آن تراکنش را با کلید خصوصی خود امضا کند و عدد آن را روبروی تراکنش بنویسد. در این صورت هیچ راهی برای پژمان وجود ندارد که یک خط اضافه کند و امضا را انجام دهد چون کلید خصوصی علی را ندارد. آخر ماه که موقع حساب کتابهاست افراد برای مطمئن شدن از اعتبار این تراکنش ها کافی است صحت آن را با کلید عمومی شان که برای همه در دسترس است بسنجند.