Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Цифровая подпись, C# 
:(
    Опции темы
g0Od
Дата 6.3.2006, 00:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 6.3.2006

Репутация: нет
Всего: нет



К примеру, у нас есть doc файл.
1) Можно ли средствами .NET посчитать контрльную сумму файла?
2) Можно ли --//-- сделать электронную подпись, чтобы через некоторое время можно было проверить изменялся файл или нет?

smile
PM MAIL   Вверх
arilou
Дата 6.3.2006, 01:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


Профиль
Группа: Экс. модератор
Сообщений: 2646
Регистрация: 15.7.2004
Где: город-герой Минск

Репутация: 21
Всего: 61



В дотнете есть такая штука, называется XML Digital Signature. С помощью применения различных криптографическтх алгоримтов дается возможность подписывать и проверять подпись у XML-файлов. А внутрь такого файла можно засунуть все, что угодно. Например hash от DOC'a. Подробнее смотри тут:

http://msdn.microsoft.com/library/default....tographyxml.asp


--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
mr.DUDA
Дата 6.3.2006, 10:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



Если речь идёт не только об XML файлах, то:
1) Контрольную сумму можно посчитать и вручную. Открываем файл BinaryReader'ом, читаем по байту подряд или через N (если файл большой), умножаем значение каждого байта на его позицию в файле и суммируем в long-овое значение. В конце концов получаем checksum.
2) Есть такой класс как FileSystemWatcher. Можно поставить его на отслеживание изменений хоть на всех дисках одновременно. Подробнее см. в MSDN.


--------------------
user posted image
PM MAIL WWW   Вверх
arilou
Дата 9.3.2006, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


Профиль
Группа: Экс. модератор
Сообщений: 2646
Регистрация: 15.7.2004
Где: город-герой Минск

Репутация: 21
Всего: 61



Цитата(mr.DUDA @ 6.3.2006, 10:43 Найти цитируемый пост)
Если речь идёт не только об XML файлах, то:

Речь идет о том, что в таком файле можно сохранить ту инфу, которую хочешь подписать, чтобы удостовериться, что она не изменилась.
Например, такой подход сработает, если тебе надо знать, изменился ли какой-нить Wordовский файл, или нет.

1. Считаем checksum файла Document.doc.
2. Записываем его как XML в файл Document.doc.signature
3. Подписываем этот файл с потомщью XML Digital Signature.
4. По необходимости проверяем, чтобы инфа в Document.doc.signature проходила обратную валидацию (что она не изменилась) и сравнивалась с текущим checksum Document.doc




--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0861 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.