Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: хранение скрытых логов и файлов на SD карте
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > ARM, 32bit
Mikron
Добрый день

Я хочу хранить на флешке вместе с обычными файлами скрытые файлы, скрытые логи, читать их, перезаписывать
что если сделать так

ПК <-> stm32 с USB HOST + FatFs <-> microSD

за доступ к файлам, их видимость отвечал бы мк

я хоть в правильном направлении думаю?)
спасибо за помощь)
Canis Dirus
Цитата(Mikron @ Aug 19 2013, 19:56) *
Я хочу хранить на флешке вместе с обычными файлами скрытые файлы, скрытые логи, читать их, перезаписывать
что если сделать так
ПК <-> stm32 с USB HOST + FatFs <-> microSD
за доступ к файлам, их видимость отвечал бы мк

А просто атрибута hidden не хватит? От чтения в кардридере этот огород с микроконтроллером всё-равно не спасёт.
Mikron
Цитата(Canis Dirus @ Aug 19 2013, 18:06) *
А просто атрибута hidden не хватит? От чтения в кардридере этот огород с микроконтроллером всё-равно не спасёт.

а если использовать не microSD а флеш память K9F4G08U0A?
или между мк и microSD данные шифровать?

глупый вопрос, но ( атрибут hidden это где бы я не использовал свою флешку файл не увидят?

спасибо за помощь
firew0rker
Насколько скрытыми должны быть логи?
Чтобы увидеть файлы с атрибутом hidden, достаточно включить опцию "показывать скрытые файлы".
Если сделать 1 раздел на флешке для публичных файлов, 2й для приватных, и отформатировать 2й в ту файловую систему, которую не опознаёт комп, то неискушенный пользователь ничего не заметит. А от искушенных - только стеганография, google "steganographic file system".
Mikron
Цитата(firew0rker @ Aug 19 2013, 18:51) *
Насколько скрытыми должны быть логи?
Чтобы увидеть файлы с атрибутом hidden, достаточно включить опцию "показывать скрытые файлы".
Если сделать 1 раздел на флешке для публичных файлов, 2й для приватных, и отформатировать 2й в ту файловую систему, которую не опознаёт комп, то неискушенный пользователь ничего не заметит. А от искушенных - только стеганография, google "steganographic file system".

Спасибо за ответ

Такими чтобы я мог и дома воспользоваться флешкой и в институте т.е. на разных компьютерах, что бы никто о файлах не знал, а я мог свободно ими пользоваться, и если бы я потерял её никто бы не догадался ни о чем)

про steganographic file system сейчас загуглю, спасибо
Mikron
Вот еще вопрос возник, если взять обычную флешку, возможно ли изменить прошивку её мк так, чтобы реализовать какой-нибудь скрытый сектор
firew0rker
Под обычной понимаем USB-флешку? Тогда предлагаю начать с изучения документации на распространённые контроллера вроде AU6984 от Alcor и софта для них (AlcorMP). Врядли удастся изменить память программ контроллера. А изменить его конфигурацию так, чтобы ранее записанную информацию стало не видно (скрыть секторы), потом опять видно - почему бы и нет...
sherr
Если это SD/MMC то посмотреть hex-редактором пустые сектора после нулевого и до начала ФАТ-таблицы -
у меня на SD 2g / FAT16 - там 256 секторов = 128 КБ и писать туда низкоуровневыми функциями
типа Write_sector . Это видно только hex-редактором и удаляется только полным форматированием ...
Понимаю, что грязный хак и все же ... у меня так в самодельном Ё - буке закладки реализованы .
Если мало 128КБ - то подредактировать в МБР размер носителя, видимый ОС, и далее так же(правда здесь я не
уверен)
Mikron
Цитата(firew0rker @ Aug 20 2013, 06:03) *
Под обычной понимаем USB-флешку? Тогда предлагаю начать с изучения документации на распространённые контроллера вроде AU6984 от Alcor и софта для них (AlcorMP). Врядли удастся изменить память программ контроллера. А изменить его конфигурацию так, чтобы ранее записанную информацию стало не видно (скрыть секторы), потом опять видно - почему бы и нет...


Спасибо за помощь, тут вроде все оказалось довольно просто
с AlcorMP можно создать скрытый раздел, но появился еще такой вопрос

допустим я сделал самодельную флешку как в первом посте, она всегда ведет себя как ведомое устройство?
если я хочу перед началом обмена с компьютером запустить подпрограмму на мк флешки, которая бы запросила и записала на себя инфу том, куда когда её вставляли
или это вообще не возможно?

то есть я хочу сказать когда флешку вставляют в usb порт, она получает от него какую-то аппаратную информацию? и если нет, то можно её как-то запросить?

большое спасибо
toweroff
Цитата(Mikron @ Aug 20 2013, 11:50) *
то есть я хочу сказать когда флешку вставляют в usb порт, она получает от него какую-то аппаратную информацию? и если нет, то можно её как-то запросить?

смотрите в сторону спецификации MassStorage Device на USB.org

но вообще - нет. Это хост спрашивает "кто ти, ара?" и флешка говорит, что вот такая я, по такому интерфейсу работаю, с такой конфигурацией, столько у меня контрольных точек и т.д. На более высоком уровне отдается информация о структуре логического диска (смотреть спецификацию SCSI). Сама флешка ни о чем (хмм.. вроде как) спрашивать хост не может


Mikron
Цитата(toweroff @ Aug 20 2013, 12:08) *
смотрите в сторону спецификации MassStorage Device на USB.org

но вообще - нет. Это хост спрашивает "кто ти, ара?" и флешка говорит, что вот такая я, по такому интерфейсу работаю, с такой конфигурацией, столько у меня контрольных точек и т.д. На более высоком уровне отдается информация о структуре логического диска (смотреть спецификацию SCSI). Сама флешка ни о чем (хмм.. вроде как) спрашивать хост не может

прочитал спецификацию на MassStorage
даа, что-то странная штука, действительно посылается только Command Block Wrapper, не содержащий никаких идентификаторов

получается я не могу никак распознать только к примеру свои два домашних компа, чтобы только на них самодельная флешка бы работала(

в голову приходит только совсем странный способ, вроде autorun, чтобы после запуска инфа присылалась(
firew0rker
Т.к. компы домашние, на них можно поставить свой драйвер, который пошлёт флешке нестандартный запрос на разблокировку её скрытой части.
toweroff
Цитата(firew0rker @ Aug 20 2013, 16:14) *
Т.к. компы домашние, на них можно поставить свой драйвер, который пошлёт флешке нестандартный запрос на разблокировку её скрытой части.

тоже вариант, кстати. Только для этого VID/PID цепляется свой драйвер, на других машинах будет работать стандартный
Canis Dirus
Цитата(firew0rker @ Aug 20 2013, 18:14) *
Т.к. компы домашние, на них можно поставить свой драйвер, который пошлёт флешке нестандартный запрос на разблокировку её скрытой части.

А если работа со скрытыми данными будет проводиться только на домашних машинах может проще будет не изобретать велосипед, а поставить TrueCrypt?
Цитата
Main features:
Creates a virtual encrypted disk within a file and mounts it as a real disk.
Encrypts an entire partition or storage device such as USB flash drive or hard drive.
Encrypts a partition or drive where Windows is installed (pre-boot authentication).
Encryption is automatic, real-time (on-the-fly) and transparent.
Parallelization and pipelining allow data to be read and written as fast as if the drive was not encrypted.
Encryption can be hardware-accelerated on modern processors.
Provides plausible deniability, in case an adversary forces you to reveal the password:
Hidden volume (steganography) and hidden operating system.
Mikron
Цитата(Canis Dirus @ Aug 21 2013, 10:04) *
А если работа со скрытыми данными будет проводиться только на домашних машинах может проще будет не изобретать велосипед, а поставить TrueCrypt?

да вот в том то и дело что может быть и нет, если бы можно было создать список usb портов, к примеру 1 институтский + домашние и без стороннего по использовать

сейчас поиграюсь с stm32f4discovery и sd
Mikron
Как вам такая идея:

при подключении флешки, сама флешка первое время выполняет роль другого компьютера в новой сети и у 127.0.0.1 запрашивает мак адрес
а по этому адресу уже можно идентифицировать комп

никакое стороннее программное обеспечение ведь не нужно?

Спасибо за помощь
firew0rker
Цитата(Mikron @ Aug 23 2013, 19:39) *
при подключении флешки, сама флешка первое время выполняет роль другого компьютера в новой сети и у 127.0.0.1 запрашивает мак адрес
а по этому адресу уже можно идентифицировать комп

никакое стороннее программное обеспечение ведь не нужно?


Плохая идея. Флешка подключается всё-таки не к Ethernet, а к USB. мак адрес, который она получит, будет адресом виртуального сетевого адаптера, сгенерированным ОС. Его можно произвольно менять. Если кто догадается, подставит какой надо адрес.
Стороннее программное обеспечение будет не нужно, если со стороны флешки эмулировать такой USB-Ethernet адаптер, драйвер которого уже есть в ОС.
А потом ещё надо будет реализовать сервер, чтобы качать файлы по виртуальной сети. МК потянет?
firew0rker
Как вам такая идея: использовать в качестве ключа к флешке RFID метку, носимую на себе?
http://www.rf-id.ru/rfid_equipment/57.html
Делают же RFID считыватели в формате флешки, например http://www.nordicid.com/eng/products/?grou...p;pid=54#pid=54
Только метка должна быть обязательно криптографически защищённой.
Mikron
Цитата(firew0rker @ Aug 26 2013, 06:23) *
Плохая идея. Флешка подключается всё-таки не к Ethernet, а к USB. мак адрес, который она получит, будет адресом виртуального сетевого адаптера, сгенерированным ОС. Его можно произвольно менять. Если кто догадается, подставит какой надо адрес.
Стороннее программное обеспечение будет не нужно, если со стороны флешки эмулировать такой USB-Ethernet адаптер, драйвер которого уже есть в ОС.
А потом ещё надо будет реализовать сервер, чтобы качать файлы по виртуальной сети. МК потянет?

а что если сделать так : взять схему из , которая определяется стандартными драйверами,
отпаять разъем, к нему припаять enc28j60 с stm32 (для того чтобы эмулировать модем не нашел библиотек у stm( да и сделать такую штуку самому сложно будет(

когда флешка включилась, определилась как сетевая карта, запросила инфу, записала её себе, инфа совпала, значит шина юсб переключается на прямую работу сmass storage stm32 и флеш памятью по spi, то есть не нужно качать файлы по виртуальной сети


про RFID метки спасибо за идею, но что-то мне кажется сложнее будет сделать с ними(

Спасибо за помощь
firew0rker
Эмулировать модем...
STM32F105/7, STM32F2 and STM32F4 USB on-the-go Host and device library (UM1021)
http://www.st.com/web/en/catalog/tools/FM1...SS1743/PF257882
В каталоге Project\USB_Device_Examples\VCP пример преобразователя интерфейсов USB-UART. Выбросить UART-часть, вставить ввод пароля. Добавить Mass Storage.
Ethrenet вообще лишний тогда.
Для ввода пароля не понадобится сторонний софт. Гипертерминал в винде есть.
andrewlekar
Цитата
Выбросить UART-часть, вставить ввод пароля. Добавить Mass Storage.

Да, вот этот вариант плюсую. Только это не эмуляция модема, а эмуляция последовательного порта.
Сделать композитное устройство и Mass Storage разблокировать после ввода пароля.
kan35
Было бы ясно зачем все это, может бы лучше что предложил или промолчал, но из имеющейся информации могу предложить такое решение.
Микроконтроллер разобьет флэшку на 2 части, но не стандартными фатовскими средствами, а аппаратно, как бы на 2 адресных пространства. Первая часть будет отформатирована стандартно, а вторая, ну например с секторами в обратном порядке (простые программы уже не соберут все в правильный порядок), При доступе по USB через STM32 было бы 2 логических диска, а при включении карты к компу виделся бы только один раздел.
Вижу только один нюанс: в компе будет видно, что карта бОльшего размера, чем говорит файловая система, но и скрытые файлы бы отняли место, так что хоть как будет понятно, что есть что то скрытое.
kolobok0
Цитата(Mikron @ Aug 19 2013, 17:56) *
..хочу хранить на флешке вместе с обычными файлами скрытые файлы,..


насколько скрытые - хз. может пойдё обычная NTFS+стримы???
RiseOfDeath
Цитата(Mikron @ Aug 20 2013, 04:03) *
Вот еще вопрос возник, если взять обычную флешку, возможно ли изменить прошивку её мк так, чтобы реализовать какой-нибудь скрытый сектор


Если целевая аудитория Windows пользователи - смело делайте два раздела - винда видит только первый раздел на флешке.

Иначе - оставьте капельку свободного места (сколько вам нужно) и с ним работайте. (что бы оно виделось как просто не отформатированная область). Еще более красивый вариант - Сделать два раздела и второй зашифровать. (тем же AES, ибо он довольно прост в реализации и не требует какой-либо "математики").
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.