Цифровая подпись и развертывание общедоступной сборки
Чтобы развернуть сборку в глобальном кэше сборок, надо, чтобы она имела цифровую подпись. Разработчики могут разместить сборку в глобальном кэше сборок, используя утилиту Gacutil.exe (Global Assembly Cache utility), Проводник Windows (Windows Explorer) с расширением оболочки Windows посредством просмотра кэша сборок, или Инструмент администрирования NET (.NET Admin Tool). Инсталляция общедоступных сборок на конкретной машине конечного пользователя должна быть сделана с помощью программы установки компонентов (системы) по выбору пользователя.
Процесс цифрового подписания сборки включает генерацию криптографической пары открытого и секретного ключа, вычисление хэш-кода сборки, шифровку хэш-кода с помощью секретного ключа, и запись в сборку зашифрованного хэш-кода вместе с открытым ключом.
Зашифрованный хэш-код и открытый ключ вместе составляют полную цифровую сигнатуру (подпись). Обратите внимание, что цифровая подпись (сигнатура) записана в зарезервированную область сборки, не участвующую в вычислении хэш-кода. Когда все это сделано, сборка может быть развернута в глобальном кэше сборок (GAC). Все указанные шаги выполняются тремя простыми инструментальными средствами: утилитой Strong Name (Strong Name utility – Sn.exe), компоновщиком сборок (Assembly Linker – Al.exe) и утилитой Global Assembly Cache (Global Assembly Cache utility – Gacutil.exe).
Чтобы скомпоновать, подписать в цифровой форме и развертывать общедоступную сборку, необходимо выполнить следующие шаги:
- Разработать и скомпоновать компонент.
- Сгенерировать пару открытого и секретного ключей.
- Вычислить хэш-код содержимого сборки.
- Зашифровать хэш-код, используя секретный ключ.
- Поместить зашифрованный хэш-код в декларацию.
- Поместить открытый ключ в декларацию.
- Поместить сборку в глобальный кэш сборок.
Конечно, шаг 1 обычно выполняется с помощью Visual Studio .NET. Шаги 2-6 представляют собой цифровое подписание. Шаг 2 выполняется с помощью утилиты Strong Name – Sn.exe. Шаги 3-6 выполняются с помощью Visual Studio .NET или компоновщика сборок – утилиты Assembly Linking – Al .exe ("l" – это "эль", а не "один"). Чтобы на шаге 7 поместить сборку в глобальный кэш сборок, применяется утилита Global Assembly Cache – Gacutil.exe, Проводник Windows (Windows Explorer), или Инструмент администрирования .NET (.NET Admin Tool).
— Регулярная проверка качества ссылок по более чем 100 показателям и ежедневный пересчет показателей качества проекта.
— Все известные форматы ссылок: арендные ссылки, вечные ссылки, публикации (упоминания, мнения, отзывы, статьи, пресс-релизы).
— SeoHammer покажет, где рост или падение, а также запросы, на которые нужно обратить внимание.
SeoHammer еще предоставляет технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Зарегистрироваться и Начать продвижение
Сейчас мы опишем первый шаг– создание компонента. Для целей демонстрации мы используем пример, подобный предыдущему примеру сборки SimpleComponent, но он называется SharedComponent, и будет развернут в глобальном кэше сборок. Сначала должен быть создан новый проект SharedComponent; для этого используется шаблон Managed C++ Class Library (Управляемый C++ на основе Библиотеки классов), причем нужно добавить следующий код:
//SharedComponent.срр #include "stdafx.h" // имеет fusing <mscorlib.dll> #include "SharedComponent.h" //SharedComponent.h using namespace System; // использование пространства имен Система; namespace SharedComponent // пространство имен SharedComponent { public _gc class SomeClass // класс сборщика мусора SomeClass { public: int AddEmUpdnt i, int j) { return i+j; } }; }