Как получить доступ к SIM-карте программно?
Просто любая старая GSM-совместимая SIM-карта (бонус для 3G USIM).
Я предполагаю, что мне нужно некоторое оборудование? Может ли кто-нибудь рекомендовать что-то дешевое для любителя, и что-то более профессиональное?
Я предполагаю, что будут полные документы API с h/w, так что, возможно, это должно быть помечено как "не связанное с программированием"? Извините, если да.
Любые хорошие URL-адреса или книги (я знаком со стандартами 3GPP).
Я не (черная шляпа) взломал, не волнуйся, просто не доволен подобными секретарями SIM-карты, Data Doctor Recovery и т.д., поэтому хотел бы закодировать свой собственный, но может превратить его в коммерческую или предлагать услуги программирования SIM-карты (восстановление данных с поврежденной карты и т.д.) в качестве боковой линии.
Обновление: в то время как мне больше всего интересно просто читать мои SMS-сообщения для резервного копирования, это может быть бонус, если кто-то знает о дешевой записи на SIM-карте (чтобы я мог создать резервную копию всей или части SIM-карты и восстановить ее позже)
Ответы
Ответ 1
Вы можете сделать это с помощью любого считывателя смарт-карт ПК /SC (и писателя, как указывали другие), и программы, которые могут читать и анализировать данные для вас.
- Разговор с картой осуществляется с помощью команд APDU (определенных в ISO-7816).
- Набор команд, используемый картами SIM (2G) и USIM (3G), отличается, поэтому вы должны помнить об этом
- Структура и формат файловой системы SIM-карты определяется в GSM 11.11 (для 2G) и ETSI TS 131.102 (для 3G) - вся эта документация общедоступна и доступна бесплатно
- SMS хранятся в файле EF SMS, его имя - 0x6F3C, его структура определена в разделе 10.5.3 стандарта GSM 11.11.
Прямые ответы на ваши вопросы:
- Здесь, где купите SIM-карту, нажмите "фото", чтобы увидеть фотографии устройства и скриншоты программного обеспечения.
- Диспетчер SIM-карты - это программа, которая делает все, что вы хотите (включая чтение SMS, восстановление SMS, попытайтесь восстановить удаленные SMS - если они все еще физически находятся на карте)
- A SDK для SIM-карты. Это DLL, которую вы можете загрузить и применить в своей программе. Эта вещь делает всю тяжелую работу для вас, все, что вам нужно, это создать графический интерфейс поверх нее.
Я один из людей из команды, которая создала SIM Manager и вышеупомянутый SDK.
Ответ 2
Вам наверняка понадобится считыватель смарт-карт и то, что я смог узнать, в значительной степени любой из них будет делать, потому что все они должны поддерживать стандартную функциональность. Они также оказались довольно дешевыми. Mine - OmniKey (не уверен, какая модель, потому что у меня ее нет сейчас).
Предполагая, что вы работаете под Windows, у Windows API есть функции, которые позволяют получить доступ к смарт-картам. Здесь - статья о CodeProject, которая более подробно описывает это как часть нескольких классов С#, которые дают вам доступ к кучу этого материала без необходимости болтаться с гайками и болтами. Я думаю, что приложение для примера парня специально предназначено для SIM-карт, поэтому, вероятно, это поможет.
Ответ 3
Там много продуктов и оборудования для чтения и записи SIM-карт, посмотрите http://forum.gsmhosting.com/vbb/f500/ на этом форуме, вы найдете много информация о сим-картах, мобильных телефонах.. один из самых больших ресурсов с 1999 года!
для аппаратных программистов вы можете создать свой собственный, как JDM или ICprog.. проверьте kiscan.net для получения некоторой информации..
Ответ 4
Вы можете использовать инструмент simLAB для чтения и редактирования почти любого файла SIM.
Он работает с каждым считывателем смарт-карт ПК /SC. Инструмент также позволяет вам резервировать файловую систему SIM.
Посмотрите https://github.com/kamwar/simLAB
Ответ 5