10 منٹ

مقدمہ

بلا شک و شبہ اس ترقی یافتہ دور میں ڈیٹا کی حفاظت ہمارے لیے ایک بہت ہی اہم اور مشکل کام ہے، ڈیٹا کوئی بھی ہو چاہے وہ ہمارا ذاتی ڈیٹا ہو یا ہمارے بزنس سے متعلق کوئی بھی ڈیٹااس کی حفاظت ہمارے لیے ایک بہت ہی بڑی ذمہ داری ہے، اور ہم ہر گز یہ نہیں چاہیں گے کہ کوئی حکومت یا کوئی انجان شخص ہمارے ڈیٹا کو دیکھ سکے یا ہمارے ڈیٹا کا غلط استعمال کر سکے۔

تو ایسے میں ہم اپنے ڈیٹا کی حفاظت اور اسے محفوظ بنانے کے لیے کئی طرح کے اقدامات کرتے ہیں ان میں سے ایک انکرپشن (Encryption) اور دوسرا ہیشنگ (Hashing) ہے۔ بہت سے لوگوں کا خیال یہ ہے کی ہیشنگ اور انکرپشن دونوں ایک ہی چیز ہے، جبکہ ایسا نہیں ہے، انکرپشن اور ہیشنگ بالکل ایک جیسے نہیں ہیں، دونوں میں اتنا ہی فرق ہے جتنا آسمان والے اصلی چاند میں اور زمین پر موجود عاشقوں کے نقلی چاند میں۔ 😜

دونوں ہی ہمارے لیئے بہت ضروری ہیں، لیکن دونوں بالکل ایک جیسے نہیں ہوتے، آئیے آپ کو تفصیل سے انکرپشن اور ہیشنگ کا فرق بتاتا ہوں۔

دونوں میں بنیادی فرق

سب سے پہلے آپ CIA کو سمجھ لیں ، پریشان نہ ہوں آپ بس ا س کا مختصر سا مطلب سمجھ لیں، اس کی تفصیل میں جانے کی ضرورت نہیں۔ CIA تین لفظوں سے بنا ہے (C - I - A ) یہ انٹرنیٹ کی دنیا کا ایک قانون ہے، جس کی بنیاد پر ڈیٹا کی حفاظت، اس کی توثیق کی جاتی ہے، جس سے پتا چلے کہ ڈیٹا محفوظ ہے یا نہیں، اور ڈیٹا کے ساتھ کوئی چھیڑ چھاڑ تو نہیں ہوئی ہے۔

نام معنی تفصیل
C Confidentiality یہ اس بات کو یقینی بناتا ہے کی اگر ابوصارم نے سیف کو کوئی قیمتی ڈیٹا بھیجا ہے تو وہ صرف سیف ہی دیکھ پائے اور اس کا استعمال کر پائے، نہ کہ کوئی تیسرا بندہ (موڈی)
I Integrity یہ اس بات کو یقینی بناتا ہے اگر ابوصارم نے سیف کو ایک فائل بھیجی ہے، تو وہ فائل سیف کے پاس بالکل اصل حالت میں پہنچے جیسا کہ ابوصارم نے بھیجا ہے، نہ کہ بیچ میں تیسرے بندے موڈی نے فائل میں کچھ گڑبڑ کی ہو۔
A Availability یہ اس بات کو یقینی بناتا ہےکہ جو ڈیٹا سیف کو موصول ہوا ہے، وہ ضرورت کے وقت سیف کو مل سکے، ایسا نہ ہو کہ جب ضرورت پڑے تو ڈیٹا موجود تو ہو، لیکن اسے پانے کی صورت ہی نہ ہو، یعنی جہاں ڈیٹا رکھا ہے، وہاں تک پہنچنے کا کوئی راستہ ہی نہ ہو۔

امید ہے آپ نے CIA کو سمجھ لیا ہوگا، تو اب سوال یہ ہے کی انکرپشن اور ہیشنگ میں اس کا کیا کام؟؟ تو مختصر سا جواب یہ ہے اس CIA میں C اور I میں جو کام ہوتا ہے، وہ انکرپشن اور ہیشنگ کی مدد سے ہی ممکن ہے۔

( Confidentiality -> Encryption ) اور ( Integrity -> Hashing )

یہ ہے انکرپشن اور ہیشنگ میں بنیادی فرق، انکرپشن اس بات کو یقینی بناتا ہے کی ڈیٹا صرف اسکا اصل مالک ہی دیکھ سکے، اور ہیشنگ اس بات کو یقینی بناتا ہےکہ کسی فائل کے ساتھ کوئی چھیڑ چھاڑ تو نہیں کی گئی ہے۔

ہیشنگ کیا ہے؟؟

ہیشنگ ایک ریاضیاتی فعل کی مدد سے متغیر لمبائی کے کسی بھی دیے گئے ڈیٹا کو حروف اور اعداد پر مشتمل ایک مقررہ سائز میں تبدیل کرنے کا عمل ہے، اور اس سے نکلنے والی ویلیو کو ہیش ویلیو کہا جاتا ہے۔اہم بات یہ ہے کی ہیشنگ ایک طرفہ کام کرتا ہے، مطلب یہ ہے کہ آپ کسی فائل یا کسی ڈیٹا کی ہیش ویلیو کو تو نکال سکتے ہیں، لیکن اگر آپ یہ چاہیں کہ آپ اس ہیش ویلیو سے اس اصل ڈیٹا کو پا لیں، تو یہ ممکن نہیں۔ کیوں کہ اس میں صرف ہیش کی ویلیو ہوتی ہے، نہ کہ اصل ڈیٹا، ہیشنگ ایک طریقہ کی سائن ہے، جو ہمیں فائل کے صحیح ہونے کی گواہی دیتا ہے۔

hashing_func

جیسے کہ آپ نے دیکھا جو I ہے اس میں ابوصارم نے سیف کو ایک فائل بھیجی (Nikah-Nama) جسکی ہیش ویلیو [abusarim-secure-hash-value]ہے، اب اگر کسی نے درمیان میں اس فائل کو پا لیا اور اس کے اندر کوئی تبدیلی کی یعنی اس فائل کے ساتھ کوئی چھیڑ چھاڑ کی تو ہیش ویلیو فوراً ہی تبدیل ہو جائے گی، جیسے اصل ہیش ویلیو ہے [abusarim-secure-hash-value] اب اگر کسی نے فائل کے ساتھ چھیڑ چھاڑ کی تو ہیش ویلیو ہو جائے گی [abusarim-not-secure-hash-value] جس سے سیف کو یہ معلوم ہو جائے گا کی اس فائل کے ساتھ چھیڑ چھاڑ ہوئی ہے، اور یہ اصل فائل نہیں ہے۔

ہیش ویلیو کی کچھ خاص صفات

  1. دیا گیا ڈیٹا صرف ایک مخصوص لمبائی کی ہیش ویلیو دیتا ہے، یہ اس بات پر منحصر ہے کی ہیشنگ کے لیئے کس فنکشن کا استعمال کیا گیا ہے۔
  2. اگر کئی طرح کے ڈیٹا کو ایک ساتھ دیا جائے تو سب کا اپنا الگ الگ ہیش بنتا ہے۔
  3. اگر کسی بھی فائل میں کوئی بھی تبدیلی ہوئی خواہ وہ ایک نقطے کی ہی کیوں نہ ہو، پوری کی پوری ہیش ویلیو ہی تبدیل ہو جائے گی۔
  4. ایک بار ہیشنگ ہو جانے کے بعد ہیشنگ سے اصل ڈیٹا کی طرف جانا ممکن نہیں۔

ہیش فنکشن کے اقسام

ہیشنگ فنکشن کے بہت سے اقسام ہیں، ان میں سے جو زیادہ تر استعمال کی جاتی ہیں ان کا ذکر یہاں کیا جا رہا ہے۔

ہیش تفصیل
MD 4 اس ہیش فنکشن کو رونالڈ ریوسٹ نے 1990 میں بنایا تھا، یہ 128 bit کی لمبائی پیش کرتا ہے۔ یہ حفاظت کے اعتبار سے کافی محفوظ نہیں تھا اس وجہ سے اب اسکا استعمال بند کر دیا گیا ہے۔
MD 5 یہ فنکشن پچھلے والے کا اپڈیٹیڈ ورزن ہے، اور آج بھی اسے استعمال کیا جاتا ہے۔
SHA اسے NSA کی طرف سے ڈیزائن کیا گیا ہے، جو 160 BIT کی ہیش ویلیو بناتا ہے۔ اس کےتین مختلف اقسام ہیں، SHA1/SHA2 لیکن ان دونوں کو کمزوریوں کی وجہ سے استعمال میں نہیں لیا جاتا ہے۔

اوربھی بہت سے ہیں، لیکن زیادہ تر ان ہی کا استعمال کیا جاتا ہے، جن کا ذکر ابھی کیا گیا۔

ہیشنگ کا استعمال

  • جب آپ ڈیٹا کی ایک بڑی مقدار کا موازنہ کرنا چاہتے ہیں تو اس صورت میں ہیشنگ بہت مفید ہے۔ مختلف ڈیٹا کے لیے ہیش ویلیوز بنانا آسان ہے، جس کا مطلب ہے کہ ڈیٹا کے بجائے ہیشز کا موازنہ کرنا آسان ہے۔
  • ڈیٹا ہیش ہونے کے بعد ریکارڈ تلاش کرنا آسان ہے۔
  • ڈیجیٹل دستخط کی طرح ہیشنگ الگورتھم بھی کرپٹوگرافک ایپلی کیشنز میں استعمال ہوتا ہے۔
  • ڈیٹا بیس میں ڈیٹا ڈپلیکیشن سے بچنے کے لیے، ہیش بنا کر رکھ دیتے ہیں، جس سے ہمیں بہت آسانی ہو جاتی ہے، اور بہت سے مسئلے حل ہو جاتے ہیں۔

changed


انکرپشن کیا ہے؟؟

انکرپشن، ڈیٹا یا معلومات کو نہ پڑھے جانے والے فارمیٹ میں تبدیل کرنے کا عمل ہے جسے بعد میں صرف وہی شخص پڑھنے کے قابل ہو سکتا ہے جس کے پاس ڈیکرپٹ کرنے کی چابی ہو۔ انکرپشن ہیشنگ کے بالکل الٹ ہے، جیسا کہ ابھی آپ نے پڑھا کی ہیشنگ صرف ایک طرفہ عمل ہے، یعنی کسی فائل کی ہیش تو بن سکتی ہے، لیکن اس ہیش سے فائل نہیں، لیکن انکرپشن میں جب آپ کسی فائل پر انکرپشن کرتے ہیں، تو اس کے بعد آپ اس انکرپشن ہوئی فائل سے اصل فائل بھی نکال سکتے ہیں، بس شرط یہ ہے کی اس کی اصل چابی آپ کے پاس موجود ہو۔ انکرپشن کے اس حصہ کو انکرپشن اور ڈیکرپشن (Encryption & Decryption) کہتے ہیں۔

enc

یہ آپ کی حساس معلومات کو سائبر حملہ آور یا کسی اور کی طرف سے غیر مجاز رسائی سے بچانے میں مدد کرتا ہے جسے اس تک رسائی کا حق نہیں ہے۔ ڈیٹا سیکیورٹی حاصل کرنے کا یہ ایک مؤثر طریقہ ہے، جہاں وصول کنندہ کے پاس خفیہ کردہ معلومات کو ڈکرپٹ کرنے اور پڑھنے کے لیے سیکیورٹی کلید کی ضرورت ہوتی ہے۔ نیز، انکرپٹڈ ڈیٹا کو سائفر ٹیکسٹ کہا جاتا ہے، جب کہ جو ڈیٹا انکرپٹ حالت میں نہیں ہوتا ہے اسے سادہ متن (Plane Text) کہا جاتا ہے۔

انکرپشن کے اقسام

انکرپشن کے بھی کئی اقسام ہے، لیکن دو کا ذکر یہاں کیا جا رہا ہے۔

  1. سیمٹرک انکرپشن (Symmetric Encryption)

اس انکرپشن میں جس چابی سے ڈیٹا کو انکرپٹ کیا ہے، اسی چابی سے اس ڈیٹا کو ڈیکرپٹ بھی کیا جائے گا، مطلب اگر ابوصارم نے سیف کو ایک فائل بھیجی ہے انکرپٹ کر کے، تو سیف کواس فائل کو ڈیکرپٹ کرنے کے لیے وہی چابی چاہئے جس چابی سے ابوصارم نے فائل کو انکرپٹ کیا ہے۔

sym


2.اسیمٹرک انکرپشن (Asymmetric Encryption)

یہ تھوڑا مزیدار ہے، اس انکرپشن میں انکرپشن کی (Encryption Key)الگ اور ڈیکرپشن کی(Decreption Key) الگ الگ چابی(Key) ہوتی ہے۔

سب سے پہلے ابوصارم اپنی ایک پبلک اور پرائیوٹ چابی بنائیں گے، جسے (Pub Key / Priv Key) کہا جاتا ہے، ٹھیک اسی طرح سیف بھی اپنی ایک پبلک اور پرائیوٹ چابی بنائیں گے۔ اب کسی فائل کو بھیجنے سے پہلے ابوصارم اپنی پبلک چابی کو سیف کو بھیج دیں گے اور ویسے ہی سیف اپنی پبلک چابی کو ابوصارم کو بھیج دیں گے اور دونوں ہی ایک دوسرے کی پبلک چابی کو اپنی اپنی پرائیویٹ چابی سے ملا دیں گے، اس سے دونوں کے پاس ایک نئی چابی بن جائے گی، اور اس چابی کو دونوں اپنے اپنے پاس رکھیں گے۔ اب جب ابوصارم کو سیف کے پاس کوئی فائل بھیجنی ہو تو ابوصارم اس تیسری چابی جو ابوصارم کی پرائیویٹ اور سیف کی پبلک چابی سے مل کر بنی ہے، اس سے اس فائل کو انکرپٹ کریں گے، اور سیف اگر اس فائل کو دیکھنا چاہیں تو وہ اس فائل کو ڈیکرپٹ کرنے کے لیے اس چابی کا استعمال کریں گے جو سیف کی پرائیویٹ چابی اور ابوصارم کی پبلک چابی سے مل کر بنی ہے۔

asy

امید ہے آپ سمجھ گئے ہوں گے، اسے سمجھنا سمجھانا تھوڑا مشکل ہے، لیکن پھر بھی میں نے پوری کوشش کی ہے کہ جتنا آسانی سے اسے لکھ اور سمجھا سکوں۔؛)

انکرپشن کا استعمال

انکرپشن کی بنیادی وجہ ڈیٹا کو کسی بھی غیر مجاز رسائی سے بچانا ہے۔ انٹرنیٹ پر دیئے گئے نیٹ ورک کے ذریعے پیغام بھیجنے کے دوران انکرپشن سیکیورٹی کو بڑھانے میں مدد کرتا ہے۔ انکرپشن سیکیورٹی کے عناصر کو حاصل کرنے میں مدد کرتا ہے جیسے:

  • رازداری : خفیہ کردہ پیغام کو مطلوبہ فریق کے علاوہ کوئی بھی پڑھ یا تبدیل نہیں کر سکتا۔
  • محدود رسائی: صارفین کو ڈیٹا دیکھنے اور ہینڈل کرنے کے لیے مکمل رسائی نہیں ہے، جس سے ڈیٹاکو مینیج کرنا آسان ہو جاتا ہے۔ یہاں تک کہ اگر پیغام لیک ہو جاتا ہے، تو یہ جاننا آسان ہو جائے گا کہ اس کا ذمہ دار کون ہے، اور یہ سیکورٹی کی خلاف ورزیوں کے دوران بھی مددگار ہے۔
  • تصدیق: پیغام کہاں سے آیا ہے اس کا پتہ لگانا آسان ہے۔

اس کے علاوہ، کچھ مشہور انکرپشن الگورتھم AES اور PGP ہیں۔ یہاں، AES ایک ہم آہنگ خفیہ کاری الگورتھم کی ایک مثال ہے، جبکہ PGP ایک غیر متناسب خفیہ کاری الگورتھم کی مثال ہے۔

خلاصہ

اس کا خلاصہ یہ ہے کہ ہیشنگ اور انکرپشن، ڈیٹا انکوڈنگ کے مقاصد کے لیے ہیں، اس لیے ڈیٹا کو کسی بھی غیر مجاز ادارے جیسے سائبر کریمینلز کے ذریعے غلط استعمال نہیں کیا جا سکتا اور ہم نے یہ بھی جانا کہ دونوں ایک دوسرے سے بالکل مختلف ہیں۔ اگر دوسرے لفظوں میں کہیں تو، ہیشنگ ترمیمات (فائل کے ساتھ چھیڑ چھاڑ) کا پتہ لگا کر مواد کی سالمیت (ڈیٹا کی حفاظت) کو درست کرنے کے لیے ہے، جب کہ انکرپشن سیکیورٹی اور ڈیٹا کی رازداری کو برقرار رکھنے کے لیے ڈیٹا کوانکرپٹ کرنے میں مدد کرتا ہے۔

امید ہے آپ کو میرا یہ چھوٹا سا بلاگ پسند آیا ہو گا، ابھی اور بھی بہت کچھ معلومات آپ کے ساتھ شئیر کرنی ہیں، لیکن بلاگ کافی لمبا ہو گیا ہے شاید؟ خیر امید ہے آپ کو اس سے بہت ساری جانکاریاں ملی ہوں گی، بس دعاؤں میں یاد رکھیں، اور اگر اس قسم کی اور معلومات چاہتے ہیں تو ہمارے ٹیلی گرام چینل ضروری معلومات میں شامل ہو سکتے ہیں۔

Copied