محتویات سایت
        برچسب های محبوب 








 
   آشنايی مختصر با Strong name
  توضيحات کوتاهی در زمينه strong name و فوايد استفاده از آن
   C#
   ۳۵۷۲۳
   این مقاله حاوی فایل ضمیمه نمی باشد
   رکسانا زاهدی
   ۱۳۸۷/۵/۴
نسخه قابل چاپ نسخه قابل چاپ

Strong name چیست؟

یک نوع نام اسمبلی دات نت است که برای منحصر بفرد نمودن آن در هنگام شناسایی اسمبلی استفاده می گردد. این نوع نام حاوی شماره ویرایش یا نسخه (Version) و انواع دیگر اطلاعات می باشد.
این نوع نامگذاری اجازه می دهد که نسخه های مختلف برنامه بدون اینکه مشکل خاصی به وجود بیاید به صورت همزمان و در کنار هم در Global assembly cache یا اصلاحا GAC وجود داشته باشند. یکی دیگر از دلایل استفاده از Strong name جلوگیری و حتی الامکان دشوارسازی نفوذ هکرها به داخل اسمبلی است.
یک Strong name از 5 بخش تشکیل می شود:
1-    نام ساده (simple name): شامل نام فایل (بدون پسوند) که در برگیرنده اسمبلی است.
2-    کلید عمومی (Public Key): کلید عمومی رمز گذاری با استفاده از الگوریتم RSA که به تشخیص شناسایی اعتبار اسمبلی کمک می کند.
3-    شماره ویرایش یا نسخه (Version)
4-    فرهنگ (Culture): استفاده کنندگان نهایی اسمبلی دارای چه زبان و فرهنگی هستند. مثلا neutral، انگلیسی – امریکایی یا en-US، فارسی – ایرانی یا fa-IR
5-    معماری پردازشگر (Processor Architecture): فرمت اسمبلی را تعریف می کند، مانند MSIL (زبان واسط یا intermediate language)  یا مثلا x86
نمونه ای از strong name به صورت زیر است:
Mini-Launcher, Version=0.3.612.24542, Culture=neutral, PublicKeyToken=ffa52ed9739048b4, ProcessorArchitecture=MSIL

فایل کلیدی Strong name چیست؟

این فایل که دارای پسوند snk  است، دربرگیرنده کلیدهای جفتی منحصربفرد عمومی و خصوصی می باشد (public & private). شما می توانید از این فایل کلیدی برای امضا نمودن اسمبلی خود به صورت دیجیتالی استفاده نمایید.
توجه داشته باشید که این نوع فایل ناامن است و مثلا کلید خصوصی آن در فایل snk به سادگی می تواند کشف شود.
برای محافطت از این فایل ویژوال استودیو می تواند آنرا رمزگذاری یا Encrypt نماید که به این ترتیب یک فایل با پسوند pfx
(Personal Information eXchange) ایجاد می شود.این فایل امن است، چرا که هر گاه کسی بخواهد به آن دست یابد، رمز عبور از وی خواسته می شود.

چگونگی ایجاد فایل کلیدی :

1-    در محیط ویژوال استودیو روی نام پروژه کلیک راست نمایید.
2-    برگه Signing را اتخاب کنید.
3-    گزینه sign the assembly  را انتخاب کنید.
4-    در کمبوباکس ظاهر شده گزینه New را انتخاب کنید.
5-    پنجره ای ظاهر می شود، در این پنجره، نام اسمبلی و رمز عبور دلخواه خود را وارد نمایید.