اولین سوال: «آیا Splync ایمن است»
وقتی Splync به نسخه MVP خود رسید، برخی از دوستانم آن را در دنیای واقعی آزمایش کردند. آنها با ایمیل و رمز عبور خود ثبتنام کردند، پروژهها ایجاد کردند و هزینهها را اضافه کردند. همه چیز بهخوبی کار کرد، به جز چند باگ کوچک. اما اولین سوالی که پرسیدند درباره طراحی، ویژگیها یا سرعت نبود؛ بلکه درباره امنیت بود. آیا میتوانند به Splync برای ثبت هزینههای روزانه خود اعتماد کنند؟ این سوال منصفانه و مهمی است. دادههای مالی شخصی بسیار حساس هستند و هر اپلیکیشنی که با آنها کار میکند باید ایمن باشد.
Splync از HTTPS استفاده میکند، نه HTTP
Splync به اینترنت نیاز دارد تا به کاربران اجازه دهد دادهها را لینک کنند، پروژهها را به اشتراک بگذارند و هزینهها را در دستگاههای مختلف همگامسازی کنند. این به این معناست که هر شمارهای که ثبت میکنید و هر دکمهای که میزنید، قبل از رسیدن به سرور از طریق وب عبور میکند. بدون محافظت، هرکسی که در همان شبکه Wi-Fi نشسته باشد، میتواند بهطور خاموش آن ترافیک را تماشا کند. به همین دلیل است که Splync از HTTPS استفاده میکند، نه HTTP.
چرا HTTP امن نیست
HTTP (پروتکل انتقال ابرمتن) زمانی استاندارد برقراری ارتباط در اینترنت بود. اما ایراد بزرگی دارد: اطلاعات را بهصورت متن ساده ارسال میکند. تصور کنید اسرار خود را روی یک کارتپستال بنویسید بهجای اینکه آنها را در پاکت مهر و موم کنید. هرکسی که پست را دستکاری میکند - کارکنان پست، پیک، حتی یک غریبهای که از پنجره نگاه میکند - میتواند هر کلمه را بخواند. همین وضعیت برای اتصال «http» قدیمی در روزهای اولیه وب بود. کار میکرد، اما خصوصی نبود. HTTPS این مشکل را با مهر و موم کردن پیام شما درون یک پاکت رمزگذاری شده که فقط شما و سرور رسمی میتوانید آن را باز کنید، حل میکند.
چگونه HTTPS شما را محافظت میکند
وقتی Splync را باز میکنید، گوشی هوشمند شما و سرور ما شروع به صحبت میکنند - اما بلافاصله به یکدیگر اعتماد نمیکنند. ابتدا یک مراسم کوچک به نام دستدهی انجام میدهند. مثل دو غریبه که قبل از به اشتراک گذاشتن اسرار، کارتهای شناسایی را مبادله میکنند. در این دستدهی، گوشی شما گواهی دیجیتال سرور را بررسی میکند که ثابت میکند واقعاً Splync است و نه یک متقلب که تظاهر میکند ما هستیم. وقتی اعتماد برقرار شد، هر دو طرف بر روی یک کلید مخفی موقت توافق میکنند - نوعی رمز عبور که فقط برای این جلسه استفاده میشود.
دستدهی ارتباط امن را آغاز میکند
از آن لحظه، هر چیزی که ارسال میکنید - ورود شما، دادههای پروژه شما، هزینههای شما - با استفاده از آن کلید رمزگذاری میشود. اگر کسی بخواهد سیگنال را رهگیری کند، تنها کاراکترهای تصادفی را میبیند، مثل تلاش برای خواندن یک مکالمه فریاد زده شده در زیر آب. این همه بهطور خودکار، در میلیثانیهها، هر بار که برنامه را باز میکنید، اتفاق میافتد. هرگز آن را نمیبینید، اما HTTPS همیشه در محافظت است و مطمئن میشود که دادههای خصوصی شما خصوصی باقی میمانند. به همین دلیل ما آن را سپر نامرئی مینامیم: بهطور خاموش در پسزمینه کار میکند، اما بدون آن، اینترنت هنوز یک جهان کارتپستالی باز بود.
اگر یک اپلیکیشن از HTTPS استفاده نکند چه میشود؟
برای درک اهمیت HTTPS، صحنه سادهای را تصور کنید. در یک کافه نشستهاید، از قهوه لذت میبرید و در حال بررسی هزینههای خود در یک شبکه Wi-Fi عمومی هستید. بدون HTTPS، هر تپکردنی که انجام میدهید - ایمیل شما، رمز عبور شما، حتی نام پروژههای خصوصی - بهصورت متن ساده در هوا منتقل میشود. هرکسی در نزدیکی با ابزارهای پایهای میتواند آن اتصال را رهگیری کند و همه چیز را خط به خط بخواند. این نوع حمله به نام حمله مرد میانی شناخته میشود و در روزهای اولیه اینترنت، بهطور نگرانکنندهای رایج بود زیرا بیشتر وبسایتها اصلاً ترافیک خود را رمزگذاری نمیکردند.
چگونه بفهمیم یک سایت امن است
امروزه مرورگرها بهطور فعال به کاربران هشدار میدهند وقتی سایتی با HTTPS محافظت نمیشود. اگر آدرسی را دیدید که با "http://" شروع میشود، از وارد کردن اطلاعات حساس خودداری کنید - این به این معناست که اتصال رمزگذاری نشده است. همیشه بررسی کنید که URL با "https://" شروع میشود و نماد قفل کوچکی در کنار آن ظاهر میشود. آن «S» کوچک در HTTPS به معنای Secure است و همه تفاوتها را ایجاد میکند. به شما میگوید که دادههای شما با امنیت درون یک تونل رمزگذاری شده حرکت میکند، نه روی یک کارتپستال باز.
آیا میتوانید URL را در یک اپلیکیشن بررسی کنید؟
ممکن است بپرسید چگونه میتوان URL یک اپلیکیشن را بررسی کرد که معمولاً نامرئی است. اپلیکیشنهای مدرن به گونهای طراحی شدهاند که فقط از طریق درخواستهای امن HTTPS ارتباط برقرار کنند. توسعهدهندگان آدرس دقیق سرور را درون کد منبع اپلیکیشن مشخص میکنند و سیستم بهطور خودکار هر اتصال "http://" ناامنی را مسدود میکند. بهعنوان مثال، در iPhone، هر اپلیکیشنی باید بهطور پیشفرض از HTTPS استفاده کند. Apple این کار را از طریق چارچوبی به نام App Transport Security (ATS) اعمال میکند که هر ارتباط غیررمزگذاری شدهای را رد میکند، مگر اینکه توسعهدهنده بهطور صریح استثنا درخواست کند.
Splync با HTTPS امن است
گوشی هوشمند شما خود بهعنوان نگهبان عمل میکند و هر اتصالی که رمزگذاری نشده باشد را نمیپذیرد. بنابراین حتی اگر URL را نبینید، هر بار که Splync به سرور ما متصل میشود، از همان سپر نامرئی HTTPS عبور میکند. HTTPS جاده بین دستگاه شما و سرور ما را محافظت میکند. اما سرور خودمان چطور؟ در اینجاست که موضوع بعدی ما، SSH، وارد میشود.