رمزگذاري يعني تبديل اطلاعات به يك شكل غير قابل فهم و انتقال آن و سپس برگرداندن اطلاعات رمز شده به حالت اوليه و قابل خواندن. عناصر مهمي كه در رمزگذاري مورد استفاده قرار مي‌‌گيرند به شرح زير مي‌‌باشد:

۱- معرفي و اصطلاحات

رمزنگاري علم کدها و رمزهاست. يک هنر قديمي است و براي قرنها بمنظور محافظت از پيغامهايي که بين فرماندهان، جاسوسان،‌ عشاق و ديگران ردوبدل مي‌شده، استفاده شده است تا پيغامهاي آنها محرمانه بماند.

هنگامي که با امنيت ديتا سروکار داريم، نياز به اثبات هويت فرستنده و گيرنده پيغام داريم و در ضمن بايد از عدم تغيير محتواي پيغام مطمئن شويم. اين سه موضوع يعني محرمانگي، تصديق هويت و جامعيت در قلب امنيت ارتباطات ديتاي مدرن قرار دارند و مي‌توانند از رمزنگاري استفاده کنند.

اغلب اين مساله بايد تضمين شود که يک پيغام فقط ميتواند توسط کساني خوانده شود که پيغام براي آنها ارسال شده است و ديگران اين اجازه را ندارند. روشي که تامين کننده اين مساله باشد “رمزنگاري” نام دارد. رمزنگاري هنر نوشتن بصورت رمز است بطوريکه هيچکس بغير از دريافت کننده موردنظر نتواند محتواي پيغام را بخواند.

رمزنگاري مخفف‌ها و اصطلاحات مخصوص به خود را دارد. براي درک عميق‌تر به مقداري از دانش رياضيات نياز است. براي محافظت از ديتاي اصلي ( که بعنوان plaintext شناخته مي‌شود)، آنرا با استفاده از يک کليد (رشته‌اي محدود از بيتها) بصورت رمز در مي‌آوريم تا کسي که ديتاي حاصله را مي‌خواند قادر به درک آن نباشد. ديتاي رمزشده (که بعنوان ciphertext شناخته مي‌شود) بصورت يک سري بي‌معني از بيتها بدون داشتن رابطه مشخصي با ديتاي اصلي بنظر مي‌رسد. براي حصول متن اوليه دريافت‌کننده آنرا رمزگشايي مي‌کند. يک شخص ثالت (مثلا يک هکر) مي‌تواند براي اينکه بدون دانستن کليد به ديتاي اصلي دست يابد، کشف رمز‌نوشته (cryptanalysis) کند. بخاطرداشتن وجود اين شخص ثالث بسيار مهم است.

رمزنگاري دو جزء اصلي دارد، يک الگوريتم و يک کليد. الگوريتم يک مبدل يا فرمول رياضي است. تعداد کمي الگوريتم قدرتمند وجود دارد که بيشتر آنها بعنوان استانداردها يا مقالات رياضي منتشر شده‌اند. کليد، يک رشته از ارقام دودويي (صفر و يک) است که بخودي‌خود بي‌معني است. رمزنگاري مدرن فرض مي‌کند که الگوريتم شناخته شده است يا مي‌تواند کشف شود. کليد است که بايد مخفي نگاه داشته شود و کليد است که در هر مرحله پياده‌سازي تغيير مي‌کند. رمزگشايي ممکن است از همان جفت الگوريتم و کليد يا جفت متفاوتي استفاده کند.

ديتاي اوليه اغلب قبل از رمزشدن بازچيني مي‌شود؛ اين عمل عموما بعنوان scrambling شناخته مي‌شود. بصورت مشخص‌تر، hash functionها بلوکي از ديتا را (که مي‌تواند هر اندازه‌اي داشته باشد) به طول از پيش مشخص‌شده کاهش مي‌دهد. البته ديتاي اوليه نمي‌تواند از hashed value بازسازي شود. Hash functionها اغلب بعنوان بخشي از يک سيستم تاييد هويت مورد نياز هستند؛ خلاصه‌اي از پيام (شامل مهم‌ترين قسمتها مانند شماره پيام، تاريخ و ساعت، و نواحي مهم ديتا) قبل از رمزنگاري خود پيام، ساخته ‌و hash مي‌شود.

1-1                   يک چک تاييد پيام (Message Authentication Check) يا MAC يک الگوريتم ثابت با توليد يک امضاء برروي پيام با استفاده از يک کليد متقارن است. هدف آن نشان دادن اين مطلب است که پيام بين ارسال و دريافت تغيير نکرده است. هنگامي که رمزنگاري توسط کليد عمومي براي تاييد هويت فرستنده پيام استفاده مي‌شود، منجر به ايجاد امضاي ديجيتال (digital signature) مي‌شود.

1-2                   Public Key يا كليد عمومي اعداد يا كلماتي كه با يك شخص يا سازمان در ارتباط مي‌‌باشد. كليد عمومي جزئي از جفت كليد عمومي/خصوصي مي‌‌باشد وبه صورت عمومي در دسترس كساني كه قصد انتقال اطلاعات رمز شده را دارند، مي‌‌باشد.

1-3                   Private Key يا كليد خصوصي اعداد يا كلماتي كه با يك شخص يا سازمان در ارتباط مي‌‌باشد. كليد خصوصي جزئي از جفت كليد عمومي/خصوصي مي‌‌باشد. كليد خصوصي فقط در دسترس مالك جفت كليد عمومي/خصوصي مي‌‌باشد و براي بازگشايي اطلاعاتي كه توسط كليد عمومي رمزگذاري شده استفاده مي‌‌شود.

1-4                   ايجادكننده هاي جفت كليد براي ايجاد يك جفت كليد عمومي و خصوصي طبق يك الگوريتم رمزگذاري مشخص استفاده مي‌‌شود.

1-5                   Key Factories براي تبديل كليد هاي نامشخص به كليدهاي مشخص به كار مي‌‌رود.

1-6                   Keystores بانكي كه براي مديريت تعدادي از كليد ها به كار مي‌‌رود.

1-7                   الگوريتم هاي رمزگذاري الگوريتم ها و روشهايي كه براي رمزگذاري اطلاعات به كار مي‌‌رود. RSA و DES نام دو تا از معروفترين الگوريتم ها مي‌‌باشد.