ڈاٹفسکیٹر کا استعمال کرتے ہوئے تخلیق کردہ ایپلی کیشنز کو ختم کرنا۔

جب صفحے کی تازہ کاری :
صفحہ تخلیق تاریخ :

خلاصہ

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

ہم یہاں ویژیول سٹوڈیو 2010 کا استعمال کرتے ہوئے اس کے بارے میں بات کر رہے ہیں، لیکن آپ 2005 اور 2008 میں بھی ڈاٹفسکیٹر استعمال کر سکتے ہیں۔

Dotfuscator を使用して作成したアプリケーションを難読化する

آپریٹنگ ماحول

معاون بصری سٹوڈیو ورژن

  • 2005
  • 2008
  • 2010

ویژیول سٹوڈیو ورژن چیک کریں

  • 2005
  • 2008
  • 2010

مادہ

ڈاٹفسکیٹر کے بارے میں

ڈاٹفسکیٹر ایک اوبفسکیشن ٹول ہے جو ماخذ کوڈ کو پڑھنا مشکل بناتا ہے جب اسے .نیٹ فریم ورک کے ساتھ لکھی گئی درخواستوں میں الگ کیا جاتا ہے۔ ڈاٹفسکیٹر مفت اور فیس کے عوض ویژیول اسٹوڈیو کے ساتھ آتا ہے۔

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

ڈاٹفسکیٹر کی مختلف خصوصیات، قیمتیں اور ایڈیشن ورژن پر منحصر ہیں، لہذا براہ کرم تفصیلات کے لیے درج ذیل ہوم پیج کا حوالہ دیں۔

اوبفسکیشن طریقہ کار

難読化していないアプリケーションの逆アセンブル結果

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

ان ناموں کو الجھانے اور الجھانے کے اقدامات کی وضاحت کرتا ہے۔

Dotfuscator Software Services

ویژیول سٹوڈیو میں ایپلی کیشن بنانا اور ایک ایکس فائل بنانا بالکل وہی ہے جو اسے بنانے کا عام طریقہ ہے۔

ایکس فائل بنانے اور بنانے کے بعد، ویژیول سٹوڈیو مینیو سے ٹولز منتخب کریں، اور پھر ڈاٹفسکیٹر سافٹ ویئر سروسز منتخب کریں۔

使用許諾契約書

جب آپ پہلی بار شروع کرتے ہیں تو "لائسنس معاہدہ" مکالمہ دائیں طرف کی شکل میں دکھائے گئے مطابق دکھایا جاتا ہے، لہذا مشمولات کو غور سے پڑھیں، چیک کریں "ہاں، میں لائسنس معاہدے سے اتفاق کرتا ہوں"۔ اور "ٹھیک ہے" بٹن پر کلک کریں۔

Dotfuscator Software Services

ڈاٹفسکیٹر سافٹ ویئر سروسز شروع ہوتی ہیں۔

入力アセンブリの追加

ایکس (یا ڈی ایل فائل) کو ختم کرنے کے لئے فی الحال کھلے منصوبے سے ہونا ضروری نہیں ہے۔

بائیں طرف درخت سے ان پٹ اسمبلیاں منتخب کریں، اور بٹن پر کلک کرنے کے لئے دائیں طرف ان پٹ اسمبلیوں پر کلک کریں۔

難読化する exe ファイル

وہ مسل منتخب کریں جو آپ کو ہٹنا ہے۔

追加したアセンブリ

منتخب ایکس مسل فہرست میں شامل کی گئی ہے۔ اگر آپ متعدد فائلوں کو ختم کرنا چاہتے ہیں تو انہیں شامل کرنے کے لیے دوسری لائن کے بعد "..." بٹن پر کلک کریں۔

プロジェクトのビルド

ایک بار جب آپ ایکس کو منتخب کر لیں تو آپ اوبفسیٹ کرنا چاہتے ہیں، ٹول بار سے بلڈ پروجیکٹ بٹن پر کلک کریں۔

プロジェクトの保存

اگر پروجیکٹ میں کوئی تبدیلی کی گئی ہے تو پروجیکٹ بچت تصدیقمکالمہ دکھایا جاتا ہے، لہذا محفوظ کرنے کے لیے "ہاں" پر کلک کریں۔

プロジェクトの保存場所指定

اس منصوبے کو "کہا جاتا ہے۔ ایکس ایم ایل" مسل. اوبفسکٹڈ ایکس فائل بھی اسی محل وقوع میں محفوظ کی جائے گی، لہذا .xml مسل کسی بھی فولڈر میں محفوظ کریں۔

ビルド

تعمیر شروع ہوگی اور مکمل ہونے تک انتظار کرے گی۔ نوٹ کریں کہ پروگرام جتنا بڑا ہوگا، اس کی تعمیر میں اتنا ہی زیادہ وقت لگے گا۔ اگر یہ دائیں طرف کی شکل کی طرح لگتا ہے, تعمیر مکمل ہو جاتا ہے.

پیغام کا میدان آسان نتائج دکھاتا ہے، جیسے تعمیر کی پیش رفت اور یہ کتنا مضطرب تھا۔

難読化結果

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

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

難読化したアセンブリ

اوبفسکیٹڈ ایکس فائلیں سیو پروجیکٹ میں محفوظ کردہ .xml فائلوں کے فولڈر میں بنائی گئی ہیں، جنہیں "ڈاٹفسکیٹڈ" کہا جاتا ہے اور اس میں بنائی گئی ہیں۔ ایکس فائل کے علاوہ ایک "نقشہ .xml" فائل بھی بنائی گئی ہے، لیکن یہ اوبفسکیشن کا نتیجہ ہے اور اسے استعمال نہیں کیا جانا چاہئے۔

難読化したアセンブリの実行時エラー

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

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

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

難読化の除外

اگر آپ کسی کلاس یا کسی اور چیز کو ختم نہیں کرنا چاہتے تو ڈوٹفسکیٹر کے بائیں طرف درخت سے نام تبدیل کریں اور درمیانی ٹیب سے خارج منتخب کریں۔

ہر نیم اسپیس، کلاس کا نام وغیرہ دائیں طرف فہرست میں دکھایا جائے گا، لہذا ان اشیاء کی جانچ کریں جو آپ نہیں کرنا چاہتے ہیں۔

یہاں، میں پہلے دکھائے جانے والے ونڈو کے کلاس نام کو تبدیل نہیں کرنا چاہتا، لہذا میں "مین ونڈو" چیک کرتا ہوں۔

難読化から除外されたクラス

جب آپ بلڈ کرتے ہیں، تو آپ دیکھ سکتے ہیں کہ مین ونڈوز میں کلاس نام کے تحت کوئی تبدیل شدہ نام نہیں ہے۔ (ایپ کلاس کو "اے" میں تبدیل کر دیا گیا ہے)

難読化したアセンブリの実行

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

難読化後の逆アセンブル

اگر آپ اوبفسکٹڈ ایکس فائل کو الگ کرتے ہیں، تو آپ دیکھ سکتے ہیں کہ کلاس کا نام اور طریقہ نام تبدیل کرکے "اے" یا "بی" کر دیا گیا ہے۔

لیکن ایک طرف کے طور پر. نیٹ فریم ورک لائبریریاں جیسے طبقاتی نام تبدیل کرنے کے تابع نہیں ہیں کیونکہ وہ اسمبلیاں ہیں جو پہلے ہی ونڈوز اور دیگر جگہوں پر نصب ہیں۔

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

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