حفظ کلید خصوصی نزد خود، برای کسبوکارهایی با دادههای حیاتی همچون عرضهکنندگان خدمات آنلاین مالی، کارگزاریها، بانکها و استارتآپهای حوزهی Fintech از دغدغههای اساسی است. گاهی موانع قانونی یا حتا فنی سبب میشوند تا برخی از این مشتریان نتوانند کلید خصوصی خود را در اختیار شبکه توزیع محتوا (CDN) قرار دهند.
ابر آروان با درک این چالش و دغدغهی مشتریان خود، قابلیت اوپن سسمی (openSesame) را تولید و عرضه کرده است تا بدون دریافت کلید خصوصی (Private Key) از این مشتریان خاص، ارتباطی امن بر بستر TLS را با حفظ و تضمین بیشترین سرعت و امنیت، برای آنان فراهم کند.
اوپن سسمی (openSesame) ابر آروان، فرآیند TLS handshake را بهگونهای تقسیم میکند که بخش بزرگ این فرآیند در سرورهای لبه ابر آروان انجام شود و مرحلهای از این فرآیند که مربوط به بررسی کلید خصوصی است، به سرور اصلی میزبان سایت که کلید خصوصی روی آن قرار دارد، ارجاع شود.
در نتیجه، مشتریان مالی و بانکی میتوانند با کمک قابلیت اوپن سسمی (openSesame) از تمامی خدمات ابر آروان همچون شتابدهی، خدمات DDoS Protection و برقراری ارتباطی امن با مشتریان برمبنای TLS استفاده کنند، بدون آنکه نیازی به در اختیار گذاشتن کلید خصوصی خود در اختیار سرورهای لبه ابر آروان داشته باشند.
ابر آروان توانسته بهکمک تغییراتی که در Nginx و OpenSSL انجام داده است، همچنین توسعهی ابزاری متعلق به خود، کاری کند که مرحلهی مربوط به بررسی Private Key، بهشکل remote و با ارتباط با سرور اصلی میزان سایت (origin server) انجام شود و از این راه نیازی به دریافت Private Key از مشتریان استفاده کننده از خدمت اوپن سسمی (openSesame) ابر آروان نباشد
لازمهی برقراری ارتباطی امن با کمک اوپن سسمی (openSesame)، برقراری امنیت ارتباط میان سرورهای ابر آروان و سرور اصلی میزبان سایت است. سرور اصلی میزبان سایت که دارندهی کلید خصوصی است، میتواند این کلید را در اختیار هر شخص درخواستکنندهای، قرار دهد. پس ضروری است مطمین شویم که این کلید نه در اختیار همه، که تنها در اختیار سرورهای لبه ابر آروان قرار بگیرد.
بهشکل خلاصه عملکرد OpenSesame در زیر آمده است:
کاربر با استفاده از شبکهی Anycast ابر آروان به نزدیکترین سرور لبه ابر آروان متصل میشود و pre master secret رمزنگاری شده با کلید عمومی (Public Key) را برای سرور لبه ارسال میکند.
سرور لبه ابر آروان این پیام را به همراه گواهینامهی خود برای سرور اصلی میزبان سایت ارسال میکند. سرور اصلی با دریافت این پیام پس از تایید هویت سرور ابر آروان، پیام رمزنگاری شدهی حاوی pre master secret را رمزگشایی و این رمز را از طریق تونلی امن برای سرور لبه ابر آروان ارسال میکند.
سرور لبه با دستیابی به pre master secret، کلید نشست (session key) را بهدست میآورد و ارتباط امن میان سرور لبه و کاربر بر بستر HTTPS برقرار میشود.
در ویدیوی زیر صابر مسگری، کدسالار ابر آروان و عضو تیم توسعهدهندهی اوپن سسمی (openSesame)، با زبانی ساده به توضیح عملکرد این قابلیت میپردازد.
وظیفهی ابر آروان سرعت بخشیدن به سایتها و دسترسی کاربران به محتوای سایتها در کمترین زمان ممکن است. این امر برای سایتهایی که از خدمت اوپن سسمی (openSesame) ابر آروان نیز استفاده میکنند، صدق میکند.
به بیان بهتر، سرعت دسترسی به محتوای سایتی که از خدمت اوپن سسمی (openSesame) ابر آروان استفاده میکند باید بهاندازهی سرعت بارگذاری سایتی باشد که از این خدمت بهره نمیگیرد. توزیع جغرافیایی سرورهای ابر آروان در دیتاسنترهای مختلف به این نیاز پاسخ میدهد. همانطور که در تصویر زیر میبینید، با استفاده نکردن از خدمات CDN ، تمام درخواستها از هر نقطهای از دنیا باید بهسمت سرور اصلی میزبان سایت فرستاده شوند که فاصلهی جغرافیایی میان کاربر و سرور اصلی میزبان سایت، تاثیر بهسزایی در مدت زمان یا به بیانی تاخیر دسترسی به محتوای سایت خواهد داشت.
هنگام استفاده از خدمت CDN، با توزیع محتوای وبسایت در سرورهای لبهی ابر آروان در دیتاسنترهای مختلف، به درخواست کاربران از نزدیکترین دیتاسنتر به آنها پاسخ داده میشود. در نتیجه، پاسخ کاربر با کمترین تاخیر ممکن داده خواهد شد.
هنگام استفاده از اوپن سسمی (openSesame) نیز این امر کاملن صادق است. به این معنا که ارتباط بازدیدکنندگان سایت، بهجای سرور اصلی میزبان سایت با سرورهای لبه ابر آروان است و آنها در کمترین زمان ممکن از نزدیکترین دیتاسنتر پاسخ خود را دریافت میکنند.همانطور که در تصویر زیر نشان داده شده، تنها ارتباط کمی طولانیتر مربوط به تک ارتباطی میان سرور لبه ابر آروان و سرور اصلی میزبان سایت در فرآیند TLS handshake است.
با توجه به دو تصویر بالا، با استفاده نکردن از CDN ابر آروان، ارتباط TLS میان بازدیدکننده و سرور اصلی میزبان سایت، نیازمند دو رفت و برگشت (roundtrip) است. اما در حالت استفاده از خدمت اوپن سسمی (openSesame) ابر آروان، ارتباط میان بازدیدکنندهی سایت با سرور لبه ابر آروان در کوتاهترین زمان ممکن انجام میشود و ارتباط TLS میان سرور لبه ابر آروان و سرور اصلی میزبان سایت نیز تنها نیازمند یک رفت و برگشت است. به این ترتیب باز هم تاخیر دسترسی بازدیدکنندهی سایت به محتوا در کمترین زمان ممکن انجام میشود.
دلیل نیاز تنها به یک رفت و برگشت (roundtrip)، برقراری ارتباطی دایمی میان سرور لبه ابر آروان و سرور اصلی میزبان سایت است. سرور لبه ابر آروان پس از یکبار برقراری ارتباط با سرور اصلی میزبان سایت، این ارتباط را حفظ میکند و درخواست بازدیدکنندگان بعدی از راه این ارتباط برقرار شده از قبل، پاسخ داده میشود.