رمزنگاری چیست یا هنر پنهان کردن اطلاعات موضوعی است که مورد علاقه دولتها شرکتها و افراد می باشد. معمولا افراد می خواهند اطلاعات شخصی و حساسشان محرمانه و دور از دسترس دیگران باشد. شرکتها و سازمانها تمایل به حفظ اطلاعات کارمندان لیست مشتریها و اطلاعات تجاری خود دارند. دولتها نیز از رمزنگاری برای کمک به حفظ امنیت کشورشان استفاده می کنند.به افرادی که در زمینه توسعه و ایجاد کدهای رمز تخصص دارند رمز نگار یا Cryptographer می گویند.همچنین به افرادی که در زمینه شکستن ( باز کردن ) این کدها تخصص دارند تحلیلگر رمز یا Cryptanalyst می گویند.افرادی که در این بخش فعالیت می کنند از دانش قوی در زمینه ریاضی و کامپیوتر برخوردارند. آنها در دنیای خودشان زندگی می کنند و تمایلی به صحبت کردن راجع به کاری که میکنند ندارند.در دوره آموزش نتورک پلاس و در بخش امنیت شما با مبانی رمزنگاری آشنا می شوید داده ها باید حفظ شوند . اطلاعات شخصی شما می بایست از دسترسی های غیرمجاز و تخریبها حفاظت گردند.اولین روش حفاظت از داده ها رمزنگاری یا Cryptography است. رمز نگاری قدمتی به طول تاریخ بشر دارد. اولین سند رمز شده ای که کشف گردیده به 4000 سال پیش برمیگردد. این سند شامل ترجمه یک پیام از یک زبان به زبان دیگر با کاراکترهای جایگزین می باشد.
انواع رمز نگاری :
سه نوع رمز نگاری وجود دارد : فیزیکی – ریاضیاتی – کوانتومی
1 -رمزنگاری فیزیکی Physical Cryptography
روش های مختلفی دارد . عمومی ترین این روش عبارتیست از جابجایی یا جایگزینی حروف ( کاراکترها ) یا کلمات میباشد. این روش شامل یک حالت دیگری است که به آن Stenography گفته می شود. این روش علمی است که شامل پنهان سازی اطلاعات داخل اطلاعات دیگر است مانند یک تصویر.به طور کلی در رمز نگاری فیزیکی پردازش ریاضی روی متن صورت نمی گیرد.Cipher روشی است که برای کد کردن حروف ( کاراکترها ) برای پنهان کردن ارزش خود استفاده می شود. به فرآیند کد کردن یک پیام Ciphering گفته می شود.
2 – رمزنگاری ریاضی (Cryptography Mathematical )
از فرآیندها و پردازشهای ریاضی روی متن یا کاراکترها استفاده می کند. معروفترین این روش ادغام سازی یا همان Hashing است. در این روش یک محاسبه روی پیام انجام می شود و آنرا به یک مقدار عددی تبدیل می کند که به آن Hash Value گفته می شود. مثال :
هر کاراکتر را در 2 ضرب کن
مقادیر بدست آمده را با هم جمع کن
حاصل جمع را بر 10 تقسیم کن
Message : this
ASCII Value : 116 104 105 115
Calculated Values : 232 208 210 230
Hash value Calculation : ( 232+208+210+230)/10
Hash value : 88
این الگوریتم یک طرفه است و نمی توان از مقدار Hash به متن رسید.
3 – رمزنگاری کوانتومی (Cryptography Quantum )
روشی جدید در رمز نگاری می باشد.تا قبل از 2002 کاربرد آن در آزمایشگاهها و برخی مراکز امنیتی دولتی بود. در این روش پیام با استفاده از یکسری فوتون ارسال می گردد. اگر دریافت کننده ترتیب ( توالی ) و حال مثبت و منفی ( قطب مغناطیسی ) فوتون ها را بفهمد میتواند پیام را decode کند . در غیر اینصورت فوتون ها تغییر یافتده اند. این به گیرنده مفهماند که فرد یا افرادی پیام را شنیده اند. فرستنده پس از اطلاع از این موضوع Pattern ( قالب ) پیام را عوض کرده و شروع به ارسال مجدد پیام با یک سری جدیدی از فوتون ها می نماید. رمزنگاری کوانتومی بسیار پرهزینه است و کاربرد محمدودی دارد.
حملات به رمزنگاری
برخی از معروفترین روشهای شکستن کد ها عبارتند از :
Frequency Analysis
Algorithm Errors
Brute Force Attacks
Human Error
Social Engineering
الگوریتمهای رمز نگاری
3 روش اصلی برای کد کردن عبارتند از : Hashing – Symmetric – Asymmetric
الگوریتم های Hashing دو نوع اصلی دارد : SHA و MD
1 – الگوریتم SHA ( Secure Hash Algoritm )
یک طرفه است
یک کد 160 بیتی تولید می کند.
2 – الگوریتم( MD ( Message Digest :
یک الگوریتم یکطرفه است.
چندین نسخه دارد که مهمترین آنهاعبارتند از : MD2 ,MD4,MD5
یک کد 128 بیتی تولید می کند.
از hashing برای اطمینان از صحت اطلاعات استفاده می شود.
الگوریتمهای متقارن ( Symmetric )
یک کلید امنیتی تولید می کند. یک کلید اختصاصی دارد که برای بقیه افراد غیر مجاز قابل استفاده نیست. اگر این کلید ذر اختیار دیگران قرار گیرد و یا دزدیده شود کل فرآیند با شکست مواجه می شود.کلید بین فرستنده و گیرنده یکسان است. آموزش لینوکس ، انواع الگوریتمهای متقارن
1 – ( DES ( Data Encryption Standard
از سال 1970 ایجاد شده است.
استاندارد اصلی که در مراکز دولتی و صنعتی بکار میرود.
یک کلید 128 بیتی ایجاد می کند.
یک مطالعه اخیرا نشان داده است که یک سیستم فوق العاده قوی توانسیته است این الگوریتم را در حدود 2 سال بشکند.
2 –( AES ( Advanced Encryption Standard
جایگزین DES می باشد.
کلیدهای 128 و 192 و 256 بیتی تولید می کند.
توسط 2 نفر بنامهای Vincent Rijmen و Joan Damon طراحی شده است.
3 – 3DES
نسخه ارتقا یافته DES می باشد.
از DES امن تر می باشد و شکستن قفل آن بسیار مشکل است.
4 – CAST
توسط Carlisle Adams and Stafford Tavares طراحی شده است.
شرکتهای مایکروسافت و IBM از این الگوریتم استفاده میکنند.
کلیدهای 40 و 128 بیتی استفاده میکند.
5 – RC
توسط آزمایشگاههای RSA استفاده می شود.
طراح آن Ron Rivest می باشد.
انواع نسخه ها : RC5 , RC6
کلید 2048 بیتی تولید می کند.
6 – Blowfish
توسط سیستمهای Counterpane ایجاد گردیده است.
نویسنده اصلی آن Bruce Schneier می باشد.
نسخه بعدی آن Twoofish می باشد.
از کلیدهای 448 بیتی استفاده میکند.
7 –( IDEA ( International Data Encryption Algorithm
از کلید 128 بیتی استفاده میکند
به لحاظ سرعت و قبلیت شبیه الگوریتم DES می باشد ولی امن تر از آن است.
در( PGP ( Pretty Good Privacy ( امنیت در پست الکترونیک ) استفاده می شود.
الگوریتمهای نا متقارن ( Asymmetric Algorithm)
از 2 کلید برای code و decode کردن داده ها استفاده می کند. این کلیدها را Public key و Private key می گویند. Public برای کد کردن پیام توسط فرستنده و Private key برای رمزگشایی توسط گیرنده استفاده می شود.
انواع الگوریتمهای نامتقارن :
1 – RSA
طراحان آن Ron Rivest , Adi Shamir , Leonard Adleman می باشد.
هم برای امضای دیجیتال و هم برای SSL استفاده می شود.
2 – الگوریتم Diffie Helman
توسط 2 نفر بنامهای دکتر W.Diffie و دکتر M.E.Hellman توسعه یافته است.
3 –( ECC ( The Elliptic Curve Cryptosystem
شبیه الگوریتم RSA است.
در شبکه های وایرلس کاربرد دارد.
4 – EL Gamal
نام دیگر آن DSA است.
برای انتقال امضای دیجیتال و تبادل کلیدها استفاده می شود.
در سال 1985 ایجاد شده است.
حملات در رمزنگاری
1 – Attacking the key
2 - Attacking the Algorithm
3 – Intercepting the Transmission
4 – Birthday Attack
5 – Weak key Attack
6 – Mathematical Attack
VPN یک ارتباط امن بین 2 دستگاه یا شبکه است. این ارتباط می تواند از طریق اینترنت ، WAN و یا MAN و یا بصورت Point to Point باشد.3 نوع VPN وجود دارد :
1 – Intranet : ارتباط 2 نقطه ( از یک شزکت ) را با هم برقرار می کند. مثل ارتباط بین یک شعبه و دفتر مرکزی . این ارتباط را Site to Site یا LAN to LAN می گویند.
2 – Extra net : ارتباط بین یک سازمان با یک سازمان دیگر
3 – Remote Access : ارتباط کاربران یا دفاتر کوچک با یک شرکت.
یک ارتباط VPN میبایست 6 مورد زیر را برای امنیت داده ها رعایت کند :
( Confidentiality ( Packet/data integrity & data Authentication Origin
(Identity Validation (Authentication
(Encapsulation method (Control of Traffic using the VPN
Anto reply Protection
پیاده سازی VPN
روشهای پیاده سازی VPN و مقایسه بین آنها در ذیل آمده است :
1 –( GRE ( Generic Route encapsulation
2 –( PPTP ( Point to Point Tunneling Protocol
3 –( L2TP ( Layer 2 Tunneling Protocol
4 –( IPSEC ( IP Security
5 –( SSL ( Secure Socket Layer-CISCO’s solution is called WEBVPN