الگوریتم رمزنگاری مد نظر خودتون رو انتخاب کنید، متن و کلید رمزنگاری رو وارد کنید و روی رمزنگاری و یا رمزگشایی کلیک کنید.
CipherText یک ابزار آموزشی برای درک عملی مفاهیم رمزنگاری متن در علوم کامپیوتر است. این ابزار به کاربران اجازه میدهد پیامهای متنی خود را با استفاده از الگوریتمهای مختلف رمزنگاری تبدیل به دادههای غیرقابل خواندن کنند و سپس با استفاده از همان کلید، فرآیند رمزگشایی را مشاهده کنند.
در دنیای دیجیتال امروز، تقریباً تمام ارتباطات مهم ما با استفاده از رمزنگاری محافظت میشوند. هنگامی که از یک وبسایت امن استفاده میکنیم، پیامی در یک پیامرسان ارسال میکنیم، یا حتی زمانی که یک پرداخت آنلاین انجام میدهیم، الگوریتمهای رمزنگاری در پشت صحنه در حال محافظت از اطلاعات ما هستند.
هدف CipherText این است که این مفاهیم را به صورت ساده و قابل مشاهده ارائه دهد. کاربران میتوانند با چند الگوریتم کلاسیک و مدرن کار کنند، تفاوت آنها را ببینند و بهتر درک کنند که چگونه متن ساده (Plaintext) به متن رمز شده (Ciphertext) تبدیل میشود.
در بسیاری از دانشگاههای جهان، مفاهیم رمزنگاری به عنوان بخشی از دروس علوم کامپیوتر و امنیت اطلاعات تدریس میشوند. یکی از شناختهشدهترین دورههای آموزشی در این حوزه، دوره معروف CS50 از دانشگاه هاروارد است که مفاهیم پایه علوم کامپیوتر، امنیت اطلاعات و الگوریتمها را آموزش میدهد.
در ایران نیز تلاشهایی برای برگزاری این دوره انجام شده است. اگر علاقهمند هستید درباره این دوره بیشتر بدانید میتوانید به وبسایت CS50x Urmia مراجعه کنید. این وبسایت اطلاعات مربوط به برگزاری دوره CS50x در شهر ارومیه را ارائه میدهد.
پروژه CipherText با الهام از همین رویکرد آموزشی ساخته شده است تا دانشجویان، برنامهنویسان و علاقهمندان امنیت سایبری بتوانند به شکل عملی با مفاهیم رمزنگاری آشنا شوند.
این پروژه توسط بهراد قاسمی توسعه داده شده است و هدف آن ایجاد یک ابزار آموزشی ساده برای درک مفاهیم رمزنگاری در علوم کامپیوتر است.رمز سزار (Caesar Cipher) یکی از قدیمیترین و سادهترین روشهای رمزنگاری در تاریخ است. این روش به ژولیوس سزار، فرمانده و سیاستمدار مشهور روم باستان، نسبت داده میشود. گفته میشود که او برای ارسال پیامهای نظامی محرمانه از این روش استفاده میکرد تا اگر پیام به دست دشمن افتاد، محتوای آن به راحتی قابل خواندن نباشد.
ایده اصلی Caesar Cipher بسیار ساده است: هر حرف از متن اصلی با حرفی دیگر که چند موقعیت جلوتر در الفبا قرار دارد جایگزین میشود. مقدار این جابجایی را «کلید» یا Shift مینامند.
برای مثال اگر مقدار شیفت برابر با 3 باشد:
A → D B → E C → F
به همین ترتیب تمام حروف متن با همین مقدار جابجا میشوند. فرض کنید متن اصلی (Plaintext) این باشد:
HELLO
اگر مقدار شیفت 3 باشد، متن رمز شده (Ciphertext) به صورت زیر خواهد شد:
KHOOR
برای رمزگشایی کافی است همان مقدار شیفت را در جهت معکوس اعمال کنیم. یعنی اگر در رمزنگاری 3 واحد جلو رفتهایم، در رمزگشایی 3 واحد به عقب برمیگردیم.
از نظر امنیتی، Caesar Cipher بسیار ضعیف محسوب میشود زیرا فقط 25 کلید ممکن دارد (در الفبای انگلیسی). بنابراین یک مهاجم میتواند با امتحان تمام حالتها (Brute Force) متن اصلی را پیدا کند.
با وجود ضعف امنیتی، این الگوریتم اهمیت آموزشی بالایی دارد و یکی از بهترین مثالها برای درک مفهوم رمزنگاری جایگزینی (Substitution Cipher) است.
رمز ویژنر (Vigenère Cipher) یک روش رمزنگاری کلاسیک و پیشرفتهتر نسبت به Caesar Cipher است. این الگوریتم در قرن شانزدهم توسعه یافت و برای مدت طولانی به عنوان یکی از امنترین روشهای رمزنگاری شناخته میشد.
برخلاف رمز سزار که از یک شیفت ثابت استفاده میکند، Vigenère Cipher از یک کلید متنی بهره میبرد که باعث میشود مقدار جابجایی برای هر حرف متفاوت باشد.
فرض کنید متن اصلی و کلید به صورت زیر باشند:
Plaintext: HELLO Key: KEY
کلید به اندازه متن تکرار میشود:
KEYKE
سپس هر حرف متن اصلی با حرف متناظر از کلید ترکیب میشود. این کار باعث از بین رفتن الگوهای تکراری میشود و امنیت رمز را افزایش میدهد.
این رمز برای چند قرن به عنوان «رمز غیرقابل شکستن» شناخته میشد، اما بعدها با روشهایی مانند تحلیل فرکانسی و آزمون کاسیسکی شکسته شد.
از نظر آموزشی، Vigenère Cipher اهمیت زیادی دارد زیرا نقش کلید پیچیده را در افزایش امنیت سیستمهای رمزنگاری نشان میدهد.
XOR Cipher یکی از سادهترین روشهای رمزنگاری دیجیتال است که بر اساس عملگر منطقی XOR در منطق بولی و علوم کامپیوتر کار میکند.
0 XOR 0 = 0 1 XOR 1 = 0 0 XOR 1 = 1 1 XOR 0 = 1
در این روش، هر بایت از متن اصلی با یک بایت از کلید XOR میشود و نتیجه آن متن رمز شده را تشکیل میدهد.
ویژگی مهم XOR این است که همان عملیات برای رمزنگاری و رمزگشایی استفاده میشود:
Plaintext XOR Key = Ciphertext Ciphertext XOR Key = Plaintext
اگر کلید کوتاه باشد و تکرار شود، این روش امنیت بالایی ندارد. اما اگر کلید تصادفی و هماندازه پیام باشد (One-Time Pad)، از نظر نظری امنیت کامل خواهد داشت.
XOR در بسیاری از الگوریتمهای مدرن، پروتکلهای امنیتی و حتی بدافزارها استفاده میشود.
Rail Fence Cipher یک الگوریتم رمزنگاری از نوع جابجایی (Transposition Cipher) است. در این روش، حروف تغییر نمیکنند بلکه فقط ترتیب آنها عوض میشود.
متن به صورت زیگزاگ در چند خط نوشته میشود که تعداد خطوط به عنوان کلید عمل میکند.
H O L E L W R D L O
سپس حروف هر خط به ترتیب خوانده میشوند و متن رمز شده ساخته میشود.
این رمز امنیت بالایی ندارد، اما برای آموزش تفاوت بین Substitution Cipher و Transposition Cipher بسیار ارزشمند است.
AES یکی از مهمترین الگوریتمهای رمزنگاری مدرن است که در سال 2001 توسط مؤسسه NIST به عنوان استاندارد رسمی انتخاب شد.
AES یک الگوریتم متقارن است و دادهها را در بلوکهای 128 بیتی پردازش میکند. طول کلید میتواند یکی از حالتهای زیر باشد:
مراحل اصلی AES شامل SubBytes، ShiftRows، MixColumns و AddRoundKey است که چندین بار تکرار میشوند تا امنیت بالا ایجاد شود.
AES در فناوریهایی مانند HTTPS، رمزنگاری دیسکها، VPN و پیامرسانهای امن استفاده میشود و به دلیل امنیت و سرعت بالا، یکی از ستونهای اصلی امنیت دیجیتال مدرن است.
CipherText توسط بهراد قاسمی (Behrad Ghasemi) توسعه داده شده است. او یکی از فعالان حوزه فناوری، آموزش برنامهنویسی و توسعه سیستمهای نرمافزاری است و در حوزههای مختلفی از جمله آموزش علوم کامپیوتر، هوش مصنوعی و توسعه پروژههای فناوری فعالیت داشته است.
بهراد قاسمی از همبنیانگذاران و مدرسین دوره آموزشی CS50 در ارومیه است. این دوره با الهام از دوره مشهور علوم کامپیوتر دانشگاه هاروارد برگزار میشود و هدف آن آموزش مفاهیم پایه برنامهنویسی، الگوریتمها و علوم کامپیوتر به دانشجویان و علاقهمندان این حوزه است.
او همچنین سابقه فعالیت به عنوان مدیر فناوری اطلاعات (IT Manager) در شرکت دانشبنیان فناوران عطر کوروش را در کارنامه خود دارد. علاوه بر این، به عنوان عضو دپارتمان هوش مصنوعی در شرکت دانشبنیان لکو در پروژههای مرتبط با فناوریهای نوین فعالیت داشته است.
در حوزه کسبوکار بینالمللی نیز او به عنوان مدیر اجرایی شرکت جبل القمر للواسط تجاریه در شهر دبی فعالیت میکند و در زمینه توسعه همکاریهای تجاری و فناوری مشارکت دارد.
بهراد قاسمی نویسنده کتاب آموزشی برنامهنویسی پایتون با عنوان «آخرین بازمانده در سیاره زایلوس» نیز هست. این کتاب با هدف آموزش برنامهنویسی به شیوهای داستانی و جذاب نوشته شده است تا یادگیری مفاهیم برنامهنویسی برای مخاطبان سادهتر و لذتبخشتر شود.
او همچنین به عنوان مدرس در پژوهشسرا فعالیت دارد و در زمینه آموزش برنامهنویسی و فناوری به دانشآموزان و علاقهمندان تدریس میکند. در حال حاضر نیز دانشجوی رشته مهندسی برق در دانشگاه سراسری ارومیه است.
هدف او از توسعه پروژههایی مانند CipherText، فراهم کردن ابزارهای آموزشی ساده و کاربردی برای یادگیری علوم کامپیوتر، امنیت سایبری و فناوریهای نوین است.