برخی اصطلاحات دیگه در رمز نگاری
متن ساده : اطلاعات اوليه كه هنوز رمز نگاری نشدن
متن رمزی : اطلاعاتی كه رمز نگاری شدن
الگوريتم رمز نگاری : الگوريتمی كه متن ساده رو به متن رمزی تبديل میکنه
كليد رمز : داده ايه كه الگوريتم رمز نگاری متن ساده رو به متن رمزی تبديل ميکنه و برعكس
رمز نگاری : فرايند تبديل متن ساده به متن رمزی
رمز گشايی : فرايند تبديل متن رمزی به متن ساده
متن ساده : اطلاعات اوليه كه هنوز رمز نگاری نشدن
متن رمزی : اطلاعاتی كه رمز نگاری شدن
الگوريتم رمز نگاری : الگوريتمی كه متن ساده رو به متن رمزی تبديل میکنه
كليد رمز : داده ايه كه الگوريتم رمز نگاری متن ساده رو به متن رمزی تبديل ميکنه و برعكس
رمز نگاری : فرايند تبديل متن ساده به متن رمزی
رمز گشايی : فرايند تبديل متن رمزی به متن ساده
👍5
رمزنگاری سخت افزاری یا Hardware Cryptography
الگوریتمهای رمزنگاری رو میتونیم هم به صورت سخت افزاری (به منظور سرعت بالاتر) و هم به صورت نرم افزاری (برای انعطاف پذیری بیشتر) پیاده سازی کرد روشهای جانشینی و جایگشتی میتونن با یک مدار ساده الکترونیکی پیاده سازی شن p-box ابزاری است که برای جایگشت بیتهای یک ورودی هشت بیتی کاربرد داره با سیم بندی و برنامه ریزی درونی این p-box قادره که هر گونه جایگشت بیتی رو عملاً با سرعتی نزدیک به سرعت نور انجام بده چرا که هیچ گونه محاسبهای لازم نیست وفقط تأخیر انتشار سیگنال وجود داره این طراحی از اصل کرکهف تبعیت میکنه یعنی : حمله کننده از روش عمومی جایگشت بیتها مطلّع هست اونچه که او از تون خبر نداره اونه که کدام بیت به کدام بیت نوشته میشه کلید رمز همینه
الگوریتمهای رمزنگاری رو میتونیم هم به صورت سخت افزاری (به منظور سرعت بالاتر) و هم به صورت نرم افزاری (برای انعطاف پذیری بیشتر) پیاده سازی کرد روشهای جانشینی و جایگشتی میتونن با یک مدار ساده الکترونیکی پیاده سازی شن p-box ابزاری است که برای جایگشت بیتهای یک ورودی هشت بیتی کاربرد داره با سیم بندی و برنامه ریزی درونی این p-box قادره که هر گونه جایگشت بیتی رو عملاً با سرعتی نزدیک به سرعت نور انجام بده چرا که هیچ گونه محاسبهای لازم نیست وفقط تأخیر انتشار سیگنال وجود داره این طراحی از اصل کرکهف تبعیت میکنه یعنی : حمله کننده از روش عمومی جایگشت بیتها مطلّع هست اونچه که او از تون خبر نداره اونه که کدام بیت به کدام بیت نوشته میشه کلید رمز همینه
👍4🔥3
به طور کلی یک پروتکل رمزنگاری مجموعهای از قواعد و روابط ریاضیه که چگونه ترکیب کردن الگوریتمهای رمز نگاری و استفاده از اونها به منظور ارائه یک سرویس رمزنگاری خاص در یک کاربرد خاص رو فراهم میسازه وظایف یک پروتکل رمزنگاری رو میتونیم بصورت کلی به دسته های زیر طبقه بندی کنیم :
معمولاً یک پروتکل رمزنگاری مشخص میکند که اطلاعات موجود در چه قالبی باید قرار بگیرن
چه روشی برای تبدیل اطلاعات به عناصر ریاضی باید اجرا شه
کدوم از الگوریتمهای رمزنگاری و با کدام پارامترها باید مورد استفاده قرار بگیرن
روابط ریاضی چگونه به اطلاعات عددی تبدیل شن
چه اطلاعاتی باید بین طرف ارسالکننده و دریافتکننده رد و بدل شه
چه مکانیسم ارتباطی برای انتقال اطلاعات مورد نیازه
به عنوان مثال میتوان به پروتکل تبادل کلید دیفی-هلمن برای ایجاد و تبادل کلید رمز مشترک بین دو طرف اشاره کرد
❤2
پروتکل تبادل کلید دیفی ، هلمن Diff
i-Hellman Key Exchange Algorithm
یک پروتکل رمزنگاریه که با استفاده از اون دو نفر یا دو سازمان میتونن بدون نیاز به هر گونه آشنایی از قبل یک کلید رمز مشترک ایجاد کنن و اون رو از طریق یک مسیر ارتباطی غیر امن بین خود تبادل کنن این پروتکل اولین روش عملی مطرح شده برای تبادل کلید رمز درمسیرهای ارتباطی غیر امنه و مشکل تبادل کلید رمز در رمزنگاری کلید متقارن رو اسون میکنه این پروتکل در سال 1976 توسط دو دانشمند رمزشناس به نام های ویتفیلد دیفی و مارتین هلمن طراحی شده و در قالب یک مقاله علمی منتشر شده مطرح شدن این پروتکل گام مهمی در معرفی و توسعه رمزنگاری کلید نامتقارن به حساب میاد
i-Hellman Key Exchange Algorithm
یک پروتکل رمزنگاریه که با استفاده از اون دو نفر یا دو سازمان میتونن بدون نیاز به هر گونه آشنایی از قبل یک کلید رمز مشترک ایجاد کنن و اون رو از طریق یک مسیر ارتباطی غیر امن بین خود تبادل کنن این پروتکل اولین روش عملی مطرح شده برای تبادل کلید رمز درمسیرهای ارتباطی غیر امنه و مشکل تبادل کلید رمز در رمزنگاری کلید متقارن رو اسون میکنه این پروتکل در سال 1976 توسط دو دانشمند رمزشناس به نام های ویتفیلد دیفی و مارتین هلمن طراحی شده و در قالب یک مقاله علمی منتشر شده مطرح شدن این پروتکل گام مهمی در معرفی و توسعه رمزنگاری کلید نامتقارن به حساب میاد
❤3
الگوریتم رمزنگاری Cryptography Algorithm
الگوریتم رمزنگاری به هر الگوریتم یا تابع ریاضی گفته میشه که به علت داشتن موارد خواص مورد نیاز در رمزنگاری در پروتکلهای رمزنگاری مورد استفاده قرار بگیره اصطلاح الگوریتم رمزنگاری یک مفهوم جامعه و لازم نیست هر الگوریتم از این دسته به طور مستقیم برای رمزگذاری اطلاعات مورد استفاده قرار بگیره بلکه صرفاً وجود کاربرد مربوط به رمزنگاری مد نظره در گذشته سازمانها و شرکتهایی که نیاز به رمزگذاری یا سرویسهای دیگر رمزنگاری داشتند الگوریتم رمزنگاری منحصر به فردی رو طراحی کردند به مرور زمان مشخص شد که گاهی ضعفهای امنیتی بزرگی در این الگوریتمها وجود داره که موجب اسون بودن شکسته شدن رمز میشه به همین دلیل امروزه رمزنگاری مبتنی بر پنهان داشتن الگوریتم رمزنگاری منسوخ شده و در روشهای جدید رمزنگاری فرض بر اینه که اطلاعات کامل الگوریتم رمزنگاری منتشر شده و اونی که پنهانه فقط کلید رمزه👍3
Serial Fishing
در روش سریال فیشینگ ما در واقع به دنبال کد های فعال سازی داخل خود نرم افزار میگردیم که به صورت ثابت داخل نرم افزار وجود داره و اونا رو پیدا میکنیم و به راحتی نرم افزار رو فعال سازی میکنیم امروزه این نوع روش فعال سازی زیاد استفاده نمیشه ولی هنوزم نرم افزار هایی هستن که به این صورت کرک میشن
در روش سریال فیشینگ ما در واقع به دنبال کد های فعال سازی داخل خود نرم افزار میگردیم که به صورت ثابت داخل نرم افزار وجود داره و اونا رو پیدا میکنیم و به راحتی نرم افزار رو فعال سازی میکنیم امروزه این نوع روش فعال سازی زیاد استفاده نمیشه ولی هنوزم نرم افزار هایی هستن که به این صورت کرک میشن
👍3
انواع روشهای رمزنگاری
روش های رمزنگاری رو در ساده ترین حالت ممکن به دو نوع رمزهای جانشینی و جایگشتی تقسیم بندی میکنیم در ادامه توضیحاتی رو در خصوص هر یک از این روش های رمزنگاری میگیم
رمزهاي جانشينی
يكي از كلماتی كه ممكنه در موسسه مالی باشد financial هست با توجه به اينكه كلمه financial حرف تكراري داره و (i) است به طوری كه چهار حرف ديگه بين دو اتفاق i وجود داره حروف تكراری در متن رمزی رو در اين فاصله پيدا می كنيم 12 مورد وجود داره كه در موقعيت هاي 6 و 15 و 27 و 31 و 42 و 48 و 56 و 66 و 70 و 71 و 76 و 82 است (از چپ به راست) فقط در دو تا از اينها يعني 31 و 42 كاراكتر بعدی (متناظر با n در متن ساده) در موقعيت مناسبي تكرار شده از اين دو تا فقط در موقعيت 31 حرف a در موقعيت درستی قرار داره بنابراین میفهمیم كه financial از موقعيت 30 شروع میشه پس با استفاده از تكرار آماری در متن انگليسی به راحتی میتونیم به كليد دسترسی پیدا کنیم
رمزهای جابجايی
روش های رمزنگاری رو در ساده ترین حالت ممکن به دو نوع رمزهای جانشینی و جایگشتی تقسیم بندی میکنیم در ادامه توضیحاتی رو در خصوص هر یک از این روش های رمزنگاری میگیم
رمزهاي جانشينی
در رمز جانشيني هر حرف يا گروهی از حروف به جای حرف يا گروهی از حروف ديگه قرار میگیرن تا پنهان سازی انجام بشخ در اين روش a به D ، b به E ، c به F ، ...... و z به C تبديل ميشن به عنوان مثال : عبارتattack به DWWDFN تبدیل میشه در مثال ها متن ساده با حروف كوچك و متن رمزی با حروف بزرگ مشخص میشه در این مثال کلید (k) برابر 3 هست که میتونه متغیر باشه هر سیستم رمزنگاری که در اون یک سمبل با سمبل دیگر جایگزین میشه اصطلاحا سیستم جانشینی تک حرفی گفته میشه که در اون کلید رمز یک رشته ی 26 حرفی هستمثال : طبق این الگو عبارت attack به متن QZZQEA تبديل میشه روش ديگه حدس زدن كلمه يا حروفه به عنوان مثال متن رمزی زير رو از يك موسسه مالی درنظر بگيريد(به صورت گروههای پنج كاراكتری دسته بندی شدن ):
متن ساده: a b c d e f g h I j k l m n o p q r s t u v w x y z
متن رمزي: Q W E R T Y U I O P A S D F G H J K L Z X C V B N
CTBMN BYCTC BTJDS QXBNS GSTJC BTSWX CTQTZ CQVUJ QJSGS TJQZZ MNQJS VLNSX VSZJU JDSTS JQUUS JUBXJ DSKSU JSNTK BGAQJ ZBGYQ TLCTZ BNYBN QJSW يكي از كلماتی كه ممكنه در موسسه مالی باشد financial هست با توجه به اينكه كلمه financial حرف تكراري داره و (i) است به طوری كه چهار حرف ديگه بين دو اتفاق i وجود داره حروف تكراری در متن رمزی رو در اين فاصله پيدا می كنيم 12 مورد وجود داره كه در موقعيت هاي 6 و 15 و 27 و 31 و 42 و 48 و 56 و 66 و 70 و 71 و 76 و 82 است (از چپ به راست) فقط در دو تا از اينها يعني 31 و 42 كاراكتر بعدی (متناظر با n در متن ساده) در موقعيت مناسبي تكرار شده از اين دو تا فقط در موقعيت 31 حرف a در موقعيت درستی قرار داره بنابراین میفهمیم كه financial از موقعيت 30 شروع میشه پس با استفاده از تكرار آماری در متن انگليسی به راحتی میتونیم به كليد دسترسی پیدا کنیم
رمزهای جابجايی
رمزهای جانشينی ترتيب نماد های متن ساده رو حفظ میكنن ولي اونا را تغيير میدن رمز های جابه جايی ترتيب حروف رو عوض میکنن ولی اونا رو را تغيير نمیدن
🔥3👍1
الگوريتمهای کليد متقارن یا Symmetric Key Algorithms
DES (Data Encryption Standard)
3DES
الگوريتمهای کليد نامتقارن (کليد عمومی) یا Asymmetric Key Algorithms
که داخل این رابطه D از E بسيار بسيار سخت تره بنابراین E رو نمیتونیم به سادگی کشف کنیم دیفی-هلمن و RSA نمونه ای از اين الگوريتمها هستند
رمز گذاری و رمز برداری با يک کليد انجام میشه از این دسته می تونیم روش های زیر رو نام ببریم
DES (Data Encryption Standard)
3DES
الگوريتمهای کليد نامتقارن (کليد عمومی) یا Asymmetric Key Algorithms
هر فرد يک کليد عمومی و يک کليد خصوصی داره که بر اساس قوانين زير عمل می کنن:
D(E(P))=P
که داخل این رابطه D از E بسيار بسيار سخت تره بنابراین E رو نمیتونیم به سادگی کشف کنیم دیفی-هلمن و RSA نمونه ای از اين الگوريتمها هستند
👍4
الگوریتم های رمزنگاری متقارن
یک الگوریتم متقارن از یک كلید برای رمزنگاری و از همون کلید برای رمزگشایی استفاده میکنه بیشترین شكل استفاده از این نوع رمزنگاری كه در كارتهای هوشمند و البته در بیشتر سیستمهای امنیت اطلاعات وجود داره Data Encryption Algorithm یا DEA هست كه بیشتر بعنوان DES شناخته میشه الگوریتم DES یک محصول دولت ایالات متحده است كه امروزه بعنوان یک استاندارد بینالمللی شناخته شده و بطور زیادی مورد استفاده قرار میگیره و کاربرد داره بلوک های 64 بیتی دیتا توسط یک كلید تنها كه معمولا 56 بیت طول داره رمزنگاری و رمزگشایی میشن الگوریتم DES از نظر محاسباتی ساده است
👍4
رمزنگاری DES
استاندارد رمزنگاری داده (DES) یک الگوریتم ریاضیه كه برای رمزنگاری و رمزگشایی اطلاعات كدشده باینری به كار میره رمزنگاری داده ها رو تبدیل به داده های نامفهومی به نام cipher میکنه رمزگشایی از cipher اون رو به داده های اصلی برمیگردونه الگوریتم ذکر شده هر دو عملیات رمزنگاری و رمزگشایی رو بر اساس یک عدد باینری به نام كلید مشخص میکنه داده ها تنها در صورتی قابل بازیابی از cipher هستند كه دقیقا از كلیدی كه برای رمزنگاری استفاده شده برای رمزگشایی استفاده بشه
استاندارد رمزنگاری داده (DES) یک الگوریتم ریاضیه كه برای رمزنگاری و رمزگشایی اطلاعات كدشده باینری به كار میره رمزنگاری داده ها رو تبدیل به داده های نامفهومی به نام cipher میکنه رمزگشایی از cipher اون رو به داده های اصلی برمیگردونه الگوریتم ذکر شده هر دو عملیات رمزنگاری و رمزگشایی رو بر اساس یک عدد باینری به نام كلید مشخص میکنه داده ها تنها در صورتی قابل بازیابی از cipher هستند كه دقیقا از كلیدی كه برای رمزنگاری استفاده شده برای رمزگشایی استفاده بشه
👍4
الگوریتم رمزنگاری :
کلید رمزنگاری :
الگوریتم DES منتشر شده شامل چندین تكرار از یک تغییر شكل ساده با استفاده از هر دو تكنیک جابجایی و جایگزینی هست این الگوریتم تنها از یک كلید برای encryption و decode استفاده میكنه و به همین جهت به اون رمزنگاری كلید اختصاصی میگن در این حالت حفظ كلید به صورت محرمانه توسط فرستنده و گیرنده پیغام خیلی اهمیت داره چون الگوریتم به صورت عمومی public در اختیار همگان هست و در صورت لو رفتن كلید هر كسی میتونه پیغام محرمانه رو ببینه به همین جهت در رمزنگاری DES معمولاً عمر كلید به اندازه عمر تراكنش هست
کلید رمزنگاری :
كلید DES یک توالی هشت بایتی است كه هر بایت شامل یک كلید هفت بیتی و یك بیت توازن هست در حین رمزنگاری الگوریتم DES متن اصلی رو به بلوک های 64 بیتی میشکنه این الگوریتم در هر زمان بر روی یک بلوک كار میکنه و اون رو از نصف شكسته و كاراكتر به كاراكتر رمزنگاری می كنه كاراكترها 16 بار تحت نظارت كلید تغییر شكل پیدا كرده و در نهایت یک متن رمزنگاری شده 64 بیتی تولید میشه كلید حاوی 56 بیت معنادار و هشت بیت توازن هست
الگوریتم رمزنگاری متقارن 3DES
با توجه به نقاط ضعف الگوریتم DES و اینکه تقویت بشه این الگوریتم 3DES معرفی شد الگوریتم 3DES بر مبنای الگوریتم DES طراحی شده است وجه تمایز الگوریتم 3DES در اجرای سه مرحله ای اون هست این الگوریتم از سه کلید مجزا برای رمزنگاری استفاده میکنه فرایند های رمزنگاری و رمزگشایی در این روش به روش زیر می باشد
فرایند رمزنگاری:
O=Ek3(Dk2(Ek1(I)))
I=Dk1(Ek2(Dk3(O)))
مستند FIPS46-3 ترکیب پیشنهادی زیر رو برای انتخاب کلیدهای K1, K2, K3 ارائه میده
با توجه به نقاط ضعف الگوریتم DES و اینکه تقویت بشه این الگوریتم 3DES معرفی شد الگوریتم 3DES بر مبنای الگوریتم DES طراحی شده است وجه تمایز الگوریتم 3DES در اجرای سه مرحله ای اون هست این الگوریتم از سه کلید مجزا برای رمزنگاری استفاده میکنه فرایند های رمزنگاری و رمزگشایی در این روش به روش زیر می باشد
فرایند رمزنگاری:
O=Ek3(Dk2(Ek1(I)))
1- متن مورد نظر بوسیله الگوریتم DES و کلید k1 رمزنگاری میشهفرایند رمزگشایی:
2 - خروجی مرحله اول توسط کلید k2 رمزگشایی میشه
3 - خروجی مرحله دوم توسط کلید k3 مجددا رمزنگاری میشه
I=Dk1(Ek2(Dk3(O)))
1 - متن رمزشده توسط کلید k3 رمزگشایی میشه
2 - خروجی مرحله اول توسط کلید k2 رمزنگاری میشه
3 - خروجی مرحله دوم توسط کلید k1 رمزنگاری میشه
خروجی مرحله سوم به عنوان متن اولیه قابل استفاده میشه با کمی بررسی میبینیم که فرایند رمزگشایی قرینه فرایند رمزنگاری هست
مستند FIPS46-3 ترکیب پیشنهادی زیر رو برای انتخاب کلیدهای K1, K2, K3 ارائه میده
1 - K1, K2, K3 مستقل از همدیگر انتخاب میشن
2 - K1, K2 بطور مستقل از هم انتخاب شده و K1=K3 هست
3- K1=K2=K3
❤5👍1🔥1
Radare2: The Reverse Engineering Tool You Need in Your Arsenal
https://medium.com/p/dd7460d0d391
https://medium.com/p/dd7460d0d391
Medium
Radare2: The Reverse Engineering Tool You Need in Your Arsenal
What is radare2?
❤5
دوستان خیلی ببخشید درگیر امتحانای دانشگاه هستم سرم شلوغه بعد امتحانا شروع میکنیم دوباره
❤🔥13❤4💩2🤝1
الگوریتم رمزنگاری CBC
ساده ترین شیوه ی زنجیره سازی بلوکهای رمز اونه که نتیجه ی رمزنگاری هر بلوک کوچیک در رمزنگاری بلوکهای بعدیه طبق این شیوه هر گونه تغییر یا جابجایی در یک بلوک باعث میشه که متن رمزگشایی شده از محل دستکاری به بلوکهای آشغال و بی معنی تبدیل بشه این روش به اختصار شیوه( CBC (Cipher Block Chaining یا شیوه زنجیره سازی بلوکهای رمز هست برای رمزنگاری اولین بلوک متن یک مقدار اولیه مشهور به IV در نظر گرفته میشه که از لحاظ طول دقیقاً هم اندازه با بلوک متنه به عبارت دیگر اولین بلوک متن با یک مقدار اولیه XOR میشه مقدار IV اصلا اهمیتی نداره و کاملا تصادفی انتخاب و به همراه داده ها (به صورت آشکار) ارسال میشه چرا که شاه کلید رمز مخفیه و بدون کلید هیچ چیزی از رمز خارج نمیشه
ساده ترین شیوه ی زنجیره سازی بلوکهای رمز اونه که نتیجه ی رمزنگاری هر بلوک کوچیک در رمزنگاری بلوکهای بعدیه طبق این شیوه هر گونه تغییر یا جابجایی در یک بلوک باعث میشه که متن رمزگشایی شده از محل دستکاری به بلوکهای آشغال و بی معنی تبدیل بشه این روش به اختصار شیوه( CBC (Cipher Block Chaining یا شیوه زنجیره سازی بلوکهای رمز هست برای رمزنگاری اولین بلوک متن یک مقدار اولیه مشهور به IV در نظر گرفته میشه که از لحاظ طول دقیقاً هم اندازه با بلوک متنه به عبارت دیگر اولین بلوک متن با یک مقدار اولیه XOR میشه مقدار IV اصلا اهمیتی نداره و کاملا تصادفی انتخاب و به همراه داده ها (به صورت آشکار) ارسال میشه چرا که شاه کلید رمز مخفیه و بدون کلید هیچ چیزی از رمز خارج نمیشه
👍5