< هذه مقاطع من مواضيع أعجبتني من مكتبة تعليمات فيجوال ستوديو 2010, أرجو أن تنال إعجابكم. المقالة الأساسية موجودة هنا>
تقوم (Sn.exe) أداة الاسم القوي بالمساعدة على تسجيل التجميعات مع أسماء قوية و توفير الخيارات لمفتاح الإدارة ثم إنشاء توقيع ومن ثم التحقق من صحة التوقيع.
يتم تثبيت اداة الاسم القوي تلقائياً مع Visual Studio, و لتشغيل الأداة استخدم موجه أوامر Visual Studio.. في موجه الأوامر، اكتب ما يلي:
sn [-quiet][option [parameter(s)]]
المعلمات
الخيار
الوصف
-c[csp]
يقوم بتعيين موفرخدمة التشفير الافتراضي الإنترنت (CSP)لاستخدامه في توقيع الاسم المميزحيث يتم تطبيق هذاالإعداد إلى الكمبيوتر بأكمله,و إذا لم تقم بتحديد اسم CSPفإن Sn.exeيقوم بمسح الإعداد الحالي.
-dالحاوية
يقوم بحذف حاويةالمفاتيح المحددة من الاسم القوي لـ (CSP).
-dassembly2 assembly1
يقوم بالتحقق مناختلاف تجميعين من قبل التوقيعو غالباً ما يُستخدم هذاكـعلامة بعد إعادة توقيع تجميع مع زوج مفاتيح مختلفة.
-eتجميعoutfile
يقوم باستخراجالمفتاح العام منتجميعو خزنه فيoutfile.
-h
يقوم بعرض بناءجملة الأمر والخيارات للأداة.
-iحاويةinfile
يقوم بثبيت زوجالمفاتيح منinfileفي حاوية المفاتيح المحددةحيث توجد حاوية المفاتيحفي الاسم القوي لـ CSP.
-k[keysize] outfile
يقوم بإنشاءمفتاح جديدبالحجم المحدد و يكتبه إلى الملف المحددحيث تتم كتابة مفتاح عامو خاص إلى الملف.
إذا لم تقمبتعيين حجم المفتاح فإنه يتم إنشاء مفتاح 1,024-بت بشكل افتراضي إذا كان لديك موفرالتشفير لـ Microsoftالمحسن المثبت و إلا يتم إنشاء مفتاح 512-بت.
المعلمةحجمالمفتاحتدعم أطوال المفتاح من 384 بت إلى 16.384 بت بتزايدات من 8 بت إذا كانلديك موفر التشفير لـ Microsoftالمحسن المثبتو التي تدعم أطوالالمفتاح من 384 بت إلى 512 بت بتزايدات من 8 بت إذا كان لديك موفر قاعدة التشفير لـ Microsoftالمحسن المثبت.
-m[y|n]
يقوم بتحديد ماإذا كان حاويات المفاتيح خاصة بالكمبيوتر أو خاصة بالمستخدم,و إذا حددتyفإن حاويات المفاتيح خاصة بالكمبيوتر,أما إذا حددتnفإن حاويات المفاتيح خاصة بالمستخدم,
و إذا لم يتمتحديد أي من yأو nفإن هذا الخيار يقوم بعرض الإعداد الحالي.
-oinfile[outfile]
يقوم باستخراجالمفتاح العام منinfileويخزنه في ملف .csvحيث توجد فاصلة تفصل كلبايت للمفتاح العامو يفيد هذا التنسيق في الترميز الثابت المشير إلى المفاتيح على أنهاصفائف تمت تهيئتها في التعليمات البرمجية للمصدر,و إذا لم تقم بتحديدoutfileفإن هذا الخيار يضع الإخراج على الحافظة.
ملاحظة
لا يقوم هذا الخياربالتحقق من أن الإدخال عبارة عن مفتاح عام فقط,و إذا كانinfileيحتوي على زوج مفاتيح مع مفتاح خاص فإنه يتم استخراجالمفتاح خاص أيضًا.
-pinfile outfile
يقوم باستخراجالمفتاح العام من زوج المفاتيح فيinfileويخزنه فيoutfileحيث يمكن استخدام هذا المفتاح العام لتأخير تسجيل تجميع باستخدامالخيارات/delaysign+و/keyfileلـ,و عندما يتم تأخير توقيع تجميع فإنه يتم تعيين المفتاح العام في وقتالتحويل البرمجي و يتم حجز مسافة في ملف التوقيع حتى يتم إضافتها لاحقاً عندما يعرفالمفتاح الخاص.
-pcحاويةoutfile
يقوم باستخراجالمفتاح العام من زوج المفاتيح فيحاويةويخزنه فيoutfile.
-Pb[y|n]
يقوم بتحديد ماإذا تم فرض سياسة التجاوز للاسم القوي,و إذا قمت بتحديدyفإنه لا يتم التحقق من الأسماء القوية ذات الثقة الكاملة للتجميعاتعندما تم تحميلها فيذات الثقة الكاملة,أما إذا قمت بتحديدnفإنه يتم التحقق من صحة الأسماءالقوية و لكن ليس اسم قوي معيّن,لكنلا يؤثر على التجميعات ذات الثقة الكاملةو يجب إجراء التحققالخاصة بك لاسم قوي مطابق.
إذا لم يتمتحديد أي منyأوnفإنهذا الخيار يقوم بعرض الإعداد الحالي.يكون الإعداد الافتراضيهوy.
ملاحظة
على أجهزة كمبيوتر 64-بتيجب عليك تعيين هذه المعلمة في 32-بت و 64-بت مثيلات Sn.exe.
-q[uiet]
يقوم بتحديدالوضع الهادئ الذي يمنع عرض رسائل النجاح.
-R[a]تجميعinfile
يقوم بإعادةتوقيع تجميع تم تأخير توقيعه أو موقع مسبقاً مع زوج المفاتيح فيinfile.
إذا تم استخدام-Raفإنه يتم إعادة حساب التجزئات لـجميع الملفات فيالتجميع.
-Rc[a]حاويةتجميعات
يقوم بإعادةتوقيع تجميع تم تأخير توقيعه أ, موقع مسبقاً مع زوج المفاتيح فيحاوية.
إذا تم استخدام-Rcaفإنه يتم إعادة حساب التجزئات لـجميع الملفات فيالتجميع.
-Rhتجميع
يقوم بإعادةحساب التجزئات لجميع الملفات في التجميع.
-t[p] infile
يقوم بعرض الرمزالمميز للمفتاح العام المخزن فيinfileبحيث إن محتوياتinfileيجب أن تكون عبارة عن مفتاح عام تم إنشاؤه مسبقًا من ملف زوجمفاتيح باستخدام-p,و لا تقم باستخدام الخيار-t [pلاستخراج الرمز المميز مباشرةً من ملف زوج مفاتيح.
يقوم Sn.exeبحساب الرمز المميز باستخدام دالة تجزئة من المفتاح العام,و لحفظ مسافة فإن وقتتشغيل اللغة العامة يقوم بتخزين الرموز المميزة للمفتاح العام في البيان كجزء منمرجع إلى تجمع آخر عندما يسجل تبعية إلى تجميع يحتوي على اسم قوي,و الخيار-tpيعرض المفتاح العام بالإضافة إلى الرمز المميز.
لاحظ أن هذاالخيار لا يتحقق من توقيع التجميع و لا ينبغي استخدامه لاتخاذ قرارات الثقةحيث يقوم فقط بعرضبيانات الرمز المميز للمفتاح العام الخام.
-T[p]تجميع
يقوم بعرض الرمزالمميز للمفتاح العام للتجميع,حيث إنتجميعيجب أن يكون اسم الملف الذي يحتوي على بيان التجميع.
يقوم Sn.exeبحساب الرمز المميز باستخدام دالة تجزئة من المفتاح العام,و لحفظ مسافة فإن وقتالتشغيل يقوم بتخزين الرموز المميزة للمفتاح العام في البيان كجزء من مرجع إلى تجمعآخر عندما يسجل تبعية إلى تجميع يحتوي على اسم قوي,و الخيار-Tpيعرض المفتاح العام بالإضافة إلى الرمز المميز.
لاحظ أن هذاالخيار لا يتحقق من توقيع التجميع و لا ينبغي استخدامه لاتخاذ قرارات الثقةحيث يقوم فقط بعرضبيانات الرمز المميز للمفتاح العام الخام.
-TSassemblyinfile
يقوم باختبارإشاراتassemblyالموقع أو الموقع بشكل جزئي مع زوجالمفاتيح فيinfile.
-TScassemblycontainer
يقوم باختبارإشاراتassemblyالموقع أو الموقع بشكل جزئي مع حاويةالمفاتيح فيcontainer.
-vتجميع
يقوم بالتحقق منالاسم القوي فيتجميعحيثتجميععبارة عن اسم الملف الذي يحتويعلى بيان تجميع.
-vfتجميع
يقوم بالتحقق منالاسم القوي في تجميعبعكس الخيارV-فإن-vfيفرضالتحقق حتى إذا كان معطّل باستخدام الخيار-Vr.
-Vl
يقوم بسردالإعدادات الحالية للتحقق من الاسم القوي على هذا الكمبيوتر.
-Vrassembly[userlist] [infile]
يقوم بتسجيلتجميعليتم تخطي التحقق من صحته,و بشكل اختياري يمكنكتحديد قائمة مفصولة بفواصل من أسماء المستخدمينو إذا قمت بتحديدinfileفإنه يبقى التحقق ممكّن و لكن المفتاح العام فيinfileيُستخدم في عمليات التحقق,و هكذا يمكن تحديدتجميعفي النموذج*،strongnameلتسجيل كافة التجميعات مع الاسم القوي المحددو يجب تحديدStrongnameكسلسلة أرقام ست عشرية تمثل النموذج الذي تم ترميزه بشكل مميزللمفتاح العام.راجع الخيارات-tو-tلعرضالرمز المميز للمفتاح العام.
تنبيه
قم باستخدام هذا الخيارفقط أثناء التطويرحيث يمكن إضافة تجميع إلى قائمة تخطي التحقق التي تنشئ ثغرةأمنية,وقد يقوم تجميع ضار باستخدام اسم التجميع المحدد بشكل كامل (اسم التجميع و الإصداروالثقافة ثم الرمز المميز للمفتاح العام) للتجميع الذي تم إضافته إلى قائمة تخطيالتحقق لزييف هويتهفهذا قد يسمح للتجميع الضار أن يتخطى التحقق أيضاً.
-Vuتجميع
لا تقم بتسجيلتجميعليتم تخطي التحقق من صحتهحيث تنطبق نفس القواعدلتجميع التسمية على-Vrالتي تنطبق إلى-Vu.
-Vx
يقوم بإزالةجميع إدخالات تخطي التحقق.
-?
يقوم بعرض بناءجملة الأمر والخيارات للأداة.
ملاحظة
كافة خيارات Sn.exeحساسة لحالة الأحرف و يجب أن تكتب بالضبط كما هو موضح لتعريفه بواسطةالأداة.
ملاحظات
تعتبر الخيارات -R و –Rc مفيدة مع التجميعات التي تم تأخير توقيعها, ففي هذا السيناريو قد تم تعيين المفتاح العام فقط في وقت التحويل البرمجي ثم تم تنفيذ التوقيع لاحقاً عندما تتم معرفة المفتاح الخاص.
أمثلة
يقوم الأمر التالي بإنشاء زوج مفاتيح عشوائية و جديدة ثم يخزنها في keyPair.snk.
sn -k keyPair.snk
يقوم الأمر التالي بتخزين المفتاح في keyPair.snk في الحاوية MyContainer في الاسم القوي لموفر خدمة التشفير (CSP).
sn -i keyPair.snk MyContainer
يقوم الأمر التالي باستخراج المفتاح العام من keyPair.snk ثم تخزينه في publicKey.snk.
sn -p keyPair.snk publicKey.snk
يقوم الأمر التالي بعرض المفتاح العام و الرمز المميز للمفتاح العام الموجود في publicKey.snk.
sn -tp publicKey.snk
يقوم الأمر التالي بالتحقق من التجميع MyAsm.dll.
sn -v MyAsm.dll
يقوم الأمر التالي بحذف MyContainer من موفر خدمة التشفير (CSP) الافتراضي.