Yasha Profile picture
برنامه نویس ممکلت;
Nov 22 10 tweets 2 min read
همیشه فکر می‌کردم وقتی ۵ سال برنامه نویسی کنم احتمالا بعدش یه برنامه نویس خفن می‌شم. اما نشدم. توی این رشته توییت خیلی صادقانه از اشتباهاتم توی این ۵ سال می‌نویسم.
#رشتو ۱- من الگوریتم و ساختمان داده رو دست کم گرفتم، این مبحث چون خیلی خشک بود همیشه پشت گوش انداختم. اگه زمان برگرده عقب روزانه یه ساعت مرتبا وقت می‌ذارم واسه سوال الگوریتمی حل کردن و یاد گرفتن ساختمان داده‌ها. این کار مثل اینه که شمشیرت رو دائم تیز کنی.
Aug 28 5 tweets 1 min read
الان که داشتم درباره تلگرام می‌خوندم متوجه یه چیز عجیبی شدم. تلگرام یه زیرساخت غیرمتمرکز خیلی جالبی داره، دیتاسنترهاش رو توی کشورهای مختلفی که قوانین قضایی متفاوتی داره پخش کرده. تمام دیتایی که نگه‌داری می‌کنه رمز میشن و کلیدهای رمزنگاری هم به بخش‌های مختلفی تیکه تیکه شده
#رشتو و توی دیتاسنترها پخش شده. تلگرام میگه هیچ کدوم از دیتاسنترها کلید رو به شکل کامل نداره و حالا یه تحت یه پروتکلی اینا دیتاسنترهای توزیع‌شده باهمدیگه کار می‌کنن. حالا چرا اینکار رو انجام داده؟ جالبیش اینجاست. این باعث میشه که یه کشور واحد نتونه به تنهایی تلگرام رو مجبور به دادن
Aug 22 6 tweets 2 min read
با کمک صفا (@safasafari3 ) روی الگوریتمش فکر کردیم و از دفی‌هیلمن به هیبرید (RSA و AES) تغییرش دادیم. الان تقریبا شبیه TLS کار می‌کنه و سرور نمی‌تونه اتک MitM بزنه. مکانیزمش رو می‌نویسم لطفا اگه مشکلی داره بگید بهترش کنیم. اول از همه برای هر کاربر یه جفت کلید RSA ساخته میشه و کلیدهای عمومی توی سرور ذخیره میشن. کاربر باب لینک خودش رو که شامل نام‌کاربری و هش کلید‌عمومی خودش میشه رو به آلیس میده. آلیس لینک رو باز می‌کنه و کلید‌عمومی باب رو از سرور می‌خونه. حالا میاد هش کلیدعمومی باب رو حساب می‌کنه و