Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Пароль для доступа к файлу 
V
    Опции темы
TheSpecialOne
Дата 5.10.2012, 09:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Здравствуйте уважаемые программисты! Мне нужно сделать так, чтоб программа или пользователь могли получить доступ к чтению и записи, например, файла с расширением .txt или .dat, если известен код доступа. Возможно ли такое на С++?
PM MAIL   Вверх
Dem_max
Дата 5.10.2012, 09:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

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



Да, запоролить RAR архиватором.


--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
andra
Дата 5.10.2012, 10:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Организация работы с файлами средствами C

Объявление файла
    FILE *идентификатор;
Пример
    FILE *f;
Открытие файла:
    fopen(имя физического файла, режим доступа)
Режим доступа — строка, указывающая режим открытия файла файла и тип файла
Типы файла: бинарный (b); текстовый (t)
Значение    Описание
r    Файл открывается только для чтения
w    Файл открывается только для записи. Если соответствующий физический файл существует, он будет перезаписан
a    Файл открывается для записи в конец (для дозаписи) или создается, если не существует
r+    Файл открывается для чтения и записи.
w+    Файл открывается для записи и чтения. Если соответствующий физический файл существует, он будет перезаписан
a+    Файл открывается для записи в конец (для дозаписи) или создается, если не существует
PM MAIL WWW   Вверх
feodorv
Дата 5.10.2012, 10:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

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



andra, к чему это?
TheSpecialOne, файл можно зашифровать, при этом без пароля доступ к зашифрованному содержимому будет, а к расшифрованному - нет. Такой вариант устроит?


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
TheSpecialOne
Дата 5.10.2012, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(Dem_max @  5.10.2012,  09:36 Найти цитируемый пост)
Да, запоролить RAR архиватором.

А программа, знающая пароль, сможет такой файл разархивировать, внести изменения и снова заархивировать? Если да, то было бы неплохо пример кода увидеть.
  
Цитата(feodorv @  5.10.2012,  10:51 Найти цитируемый пост)
TheSpecialOne, файл можно зашифровать, при этом без пароля доступ к зашифрованному содержимому будет, а к расшифрованному - нет. Такой вариант устроит? 

Шифрование конечно же решит эту проблему, но разве нет более простых механизмов? Пользователь не должен получать доступ к содержимому файла, а программа должна получить доступ к чтению и модификации только если знает пароль (код доступа, ключ, свертку).

PM MAIL   Вверх
bsa
Дата 5.10.2012, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

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



Цитата(TheSpecialOne @  5.10.2012,  13:42 Найти цитируемый пост)
разве нет более простых механизмов?
нет
PM   Вверх
feodorv
Дата 5.10.2012, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

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



Цитата(TheSpecialOne @  5.10.2012,  13:42 Найти цитируемый пост)
Пользователь не должен получать доступ к содержимому файла, а программа должна получить доступ к чтению и модификации только если знает пароль (код доступа, ключ, свертку).

Гм. Могу предложить такую схему, которую, может быть, вообще и нельзя реализовать.
Заведите в системе особого пользователя, от его имени создайте директорию так, чтобы доступ к этой директории имел только этот пользователь (правда, всё равно администратор/root будут иметь доступ), в этой директории храните свой файл с доступом только этому пользователю. 
Тогда для доступа к чтению-записи файла программа как-то должна себя импесонифицировать с этим пользователем путём регистрации в системе с нужным логином/паролем.

Существуют ещё специализированные надстройки над файловыми системами (для NTFS такая надстройка точно существует), которые позволяют ограничить доступ к избранным файлам паролем. Но тогда у пользователя должна быть установлена такая надстройка.


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
TheSpecialOne
Дата 6.10.2012, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Спасибо за помощь, с этим вопросом я разобрался.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


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

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




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


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

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