Сим ридер что это
Эта запись находится в рубриках: "Телефония". Вы можете комментировать здесь либо в любимой социальной сети.
Не будем особо подробно расписывать назначение сим ридера. Стоит только сказать, что с помощью SIM Reader / Writer можно считать информацию (прошивку или часть её) с SIM-карты и перепрошить (переписать считанную или имеющуюся информацию) multiSIM-карты. Устройство, собранное по схеме, позволяет находить необходимые коды Ki и IMSI для добавления уже существующих SIM-карт в multiSIM-карту. IMSI и Ki коды - это основные коды, которые идентифицируют сим-карту у оператора сотовой связи.
В схеме SIM reader использованы распространенные электронные компоненты, которые можно легко купить в любом электронном магазине. Этот SIM reader считывает информацию с сим-карт следующего характера: телефонная книга, SMS, IMSI, ICCID т.д. Вы можете использовать компьютерную программу SimScan v2.01 (ссылка на скачивание ниже) для взлома KI и IMSI, чтобы клонировать сим-карту или создать multiSIM. ВНИМАНИЕ! Создание клонов SIM-карт является противоправным деянием. Схема SIM reader приведена в ознакомительных целях. Администрация сайта xn--80a3afg4cq.xn--p1ai не несёт ответственности за действия радиолюбителей, применивших собранное устройство (SIM reader / writer) в нарушающих действующее законодательство РФ целях. Ладно, это лирическое отступление. Далее…
Питание собранного по схеме SIM reader производится за счет COM-порта компьютера и составляет 5 вольт. Проверить устройство можно “ответом на сброс” с помощью программы SimScan v2.01, используя кнопку “Тест” (ответом на сброс - ATR - answer to reset). Перед проверкой сим ридера подключите его к COM-порту, вставьте SIM карту в держатель и выберите правильный COM-порт и частоту кварцевого резонатора в настройках программы. Как правило, при качественной сборке и монтаже устройство работает сразу без какой-либо донастройки. Дополнительных драйверов не требуется.
В следующей статье расскажем подробнее, как клонировать SIM карты или создать multiSIM карту из нескольких имеющихся у вас сим карт.
Компания Gigabyte в начале сентября одновременно с анонсом своих новых материнских плат на 815 чипсете объявила о новом устройстве, а именно SIM Card Reader'е (SCR). Как следует из названия устройство предназначено для чтении информации с SIM карт, а подключается непосредственно к специальному разъему на материнской плате. Сегодня SCR поддерживается с помощью контроллера IT8712 от ITE такими материнскими платами Gigabyte как 6OXM7, 6OXM7E, 6OXM7E-1 и 6OMM7.
Внешне устройство представляет собой 3,5″ дисковод в который можно вставлять карты в специальном адаптере для SIM карт. Установка устройства в компьютер не вызывает проблем, за исключением того, что шлейф не очень длинный и установка в верхний 5″ отсек мидитауэра представляет определенные сложности. В остальном все очень просто и доступно.
При включении компьютера и правильном подключении SCR на его передней панели зажигается зеленый индикатор питания. Под ним располагается красного цвета индикатор который зажигается при операциях записи или чтения с SIM карты. Но для работы с устройством требуется установить программное обеспечение. На сегодняшний день существует только две программы, это PC Security Program и ITE GSM SIM Card Editor. Если первая программа служит для предотвращения несанкционированного доступа к компьютеру проверяя специальную карту при загрузке, то вторая позволяет редактировать SIM карту из вашего мобильного телефона на компьютере.
Для редактирования записей SIM карты требуется сначала установить ее в адаптер и установить ее в SCR. Затем запустить программу и все телефоны из памяти SIM карты будут показаны вам. Вы сможете удалять, редактировать и сохранять изменения сразу же на SIM карте. Удобно, что обновления происходят не моментально, а требуется подтвердить изменения для отредактированных позиций. От себя хочу отметить, что конечно же вводить имена и телефоны на компьютере удобнее, нежели на телефоне. С другой стороны вынимать каждый раз SIM карту из телефона и вставлять ее в SCR тоже не самый хороший способ занесения одного двух номеров в телефонную книгу.
Но такая функция как сохранения записей с SIM карты заслуживает внимания. Вы можете сохранить телефонную книгу в файле с расширением sim и затем установить ее на любую sim карту, что иногда бывает необходимо. Последняя доступная функция это редактирование PIN кода, а также его активация либо отключение.
За время использования устройства все SIM карты читались без проблем, но процесс это медленный и неторопливый, полная загрузка около 100 записей (даже пустых) занимает около 15-20 секунд. Сохранение не в пример более быстрая операция.
В реальной жизни пока ниша для таких устройств чрезвычайно мала и вряд ли многие кинутся покупать SCR, так как обычным пользователям он нужен время от времени.
С тех пор как человек научился накапливать, хранить и копировать информацию на разных типах носителей, самой актуальной задачей стала надежность хранения этой информации. К сожалению, такие устройства, как SIM-карты не могут похвастаться высокой прочностью и надежностью, поэтому часто приходится их менять, что крайне неудобно, если в они используются для записи СМС и телефонной книги, ведь в таком случае вся информация будет постоянно пропадать.
Однако, есть решение, которое позволит избежать этой проблемы и это - USB SIM Reader. Это устройство позволяет копировать информацию с сим-карты на ваш компьютер, тем самым сохраняя резервные копии необходимых данных на жестком диске вашего компьютера. Конечно, это не исправит ситуации, если вы забыли сделать свежий вариант резервной копии вашей базы данных, но в случае, если вы хотя бы 1 раз в неделю будете копировать информацию со своей сим-карты, то даже в случае потери телефона или поломки сим-карты, вы сможете отделаться «малой кровью». Восстановив резервную копию базы данных телефонных номеров и СМС.
Обычно это компактное устройство с разъемом для подключения к USB порту и отделением, в которое вставляется сим-карта. Также чаще всего в коробке с этим устройством поставляется диск, на котором предоставляются все необходимые драйвера и программное обеспечение. Некоторые варианты кардридеров при этом совмещают еще и возможность делать копии с SD карты, которая используется в мобильном телефоне для хранения программ, приложений, игр, медиафайлов и любых других типов файлов.
Размеры устройства всегда достаточно компактные, но могут быть и исключения в тех случаях, когда ридер совмещает в себе еще и дополнительные функции, неописанные выше. Чаще всего такие ридеры могут обслуживать привычные всем GSM-телефонам SIM-карты, но встречаются и модели, которые способны обрабатывать информацию с более совершенных карточек системы RUIM-карты, которые используются в телефонах, поддерживающих стандарт CDMA2000
После установки программного обеспечения необходимо подключить кардридер со вставленной сим-картой к компьютеру и запустить прилагающуюся в комплекте программу, через интерфейс которой и необходимо производить все действия по копированию информации, сохранения адресной книги или базы СМС.
Удобство работы этой системы неоспоримо, ведь вы можете копировать контакты с одной сим-карты на другую, если вы решили отказаться от использования старой сим-карты в пользу новой из-за более выгодных тарифов, или из-за других причин. Также вы можете использовать это устройство не только для создания резервных копий данных с сим-карты. Но даже и для создания мультисим-карт, которые включат в себя и ваш старый номер, который вы хотите оставить просто про запас. Если кто-то будет искать вас именно по нему, а ведь это порой так важно - не терять старых контактов, которые могут понадобиться вам по работе или просто, для дружеского общения.
f: не могу представить, как крусач может работать) Наши курсачи обычно пыляться где-то на полках
m: Вот у меня есть плата. К ней нужно подрубить сим-карту, и эта плата должна прочитать смс оттуда)
m: плата покупная, а вот программируем ее мы)
f: а нельзя смс с телефона прочитать?
— из жизни, орфография сохранена
Ну а если вам все-таки интересно узнать больше о сим-картах, протоколах передачи и их файловой структуре, прошу под кат. Ну и куда же без кода…
Начать стоит с того, что сим-карта является разновидностью смарт-карт, поэтому она полностью подчиняется стандарту ISO-7816. Я не буду говорить, какие выводы она имеет (об этом уже подробно говорили в предыдущей статье).
На процессор некоторых симок (если точнее — смарт-карт) можно подавать синхронизирующий сигнал до 20 МГц. Но ведь при включении симки терминал не знает ее параметров, поэтому общение начинается с, максимум, 4 МГц. Впоследствии, терминал узнает симку получше и может изменить параметры передачи.
К выводу I/O должен быть подключен pull-up резистор номиналом 20 КОм. В те моменты, когда терминалу и симке нечего сказать друг другу (т.е. они оба находятся в Z-состоянии) этот резистор обеспечит на выводе логическую единицу.
Активация сим-карты и последующий cold reset
Диаграмма довольно проста, cold reset начинается с момента времени Та. Стоит лишь отметить, что I/O управляется здесь только симкой. Терминал должен игнорировать любой сигнал на нем, пока RST в нуле. После симка обязана дать ответ (Answer to reset).
Деактивация
Определенных рамок времени здесь нет, I/O также управляется симкой.
У всех смарт-карт и, соответственно, сим-карт существует два типа протоколов передачи — побайтовый T0 и блочный T1. Я рассмотрю только Т0.
Сразу скажу, что T0 как две капли воды похож на UART (он используется в передаче по COM-порту). Но с небольшими оговорками. Начнем с самого начала.
Момент времени в протоколе T0 носит название элементарной единицы времени (etu), которая равна:
где F (коэффициент преобразования тактовых импульсов) и D (коэффициент регулирования скорости передачи битов) задаются исходя из ATR, а f – частота синхроимпульса для карты. По умолчанию, F = 372, а D = 1.
Передача на выводе I/O начинается с появлением стартового бита — спада с логической единицы. Время, отведенное каждому биту равно etu. Далее идут 8 битов данных, 1 бит четности и, как минимум, 2 стоповых бита. Временной отрезок между двумя стартовыми битами всегда должен быть больше или равен 12 etu и меньше или равен 9600 etu.
Как я уже говорил, симка посылает ATR после cold reset’a. Именно в нем содержится информация с рекомендуемым значением частоты синхронизации, списком поддерживающих протоколов передачи и т.д.
Самый первый байт в ATR — TS. Он показывает, какое кодирование применяется – прямое или инверсное.
Прямое кодирование: если TS равен HHLH HHLL, то высокий уровень напряжения в цепи I/O кодирует логическую единицу, а момент времени 2 на рисунке кодирует наименьший значимый бит. При таком кодировании значение байта TS равно 0x3B.
Обратное кодирование: если TS равен HHLL LLLL, то низкий уровень напряжения в цепи I/O кодирует логическую единицу, а H – логический ноль. Момент времени 2 на рисунке кодирует наибольший значимый бит. При таком кодировании значение байта TS равно 0x3F.
Остальные байты содержат служебную информацию, например, рекомендуемые значения F и D, влияющие на значение etu.
Команды делятся на два типа: Command Transport Data Unit (C-TPDU) и Response Transport Data Unit (R-TPDU), т.е. команда и ответ на нее. Команды всегда составляют пару: на любую команду, переданную на карту, карта ответит R-TPDU. R-TPDU всегда заканчивается статусным байтом, характеризующим успешность команды.
Структура C-TPDU:
Код | Длина | Описание | |
CLA | 1 | Класс инструкции | Заголовок |
INS | 1 | Код инструкции | |
P1 | 1 | Параметр инструкции 1 | |
P2 | 1 | Параметр инструкции 2 | |
Lc | 0 или 1 | Количество байтов в поле Data | |
Data | Lc | Данные команды | Тело |
Le | 0 или 1 | Максимальное количество байтов, ожидаемых в ответ |
Не все карты могут сразу принять заголовок и тело команды, в таком случае нужно послать сначала заголовок, дождаться ответного статусного байта, а затем слать тело команды.
Стоит отметить, что если мы ошиблись в каком-либо параметре команды, симка сообщит об этом в статусном байте, но она имеет право проигнорировать команду, если та была абсолютно некорректна (например, состояла из одного байта).
Структура R-TPDU:
Код | Длина | Описание |
Data | Lr | Данные ответа |
SW1 | 1 | Статусный байт 1 |
SW2 | 1 | Статусный байт 2 |
1. Master file (MF) — корень.
2. Dedicated files (DF) — обыкновенные папки.
3. Elementary files (EF) делятся на:
— Transparent EF — состоят из последовательности байтов,
— Linear fixed EF — состоят из последовательности записей одинакового размера,
— Cyclic EF — тоже самое, но при достижении конца файла, следующая запись начинается с нулевой записи, по кругу.
1) SELECT
До совершения операции над файлом необходимо сначала его выбрать. Вначале нужно выбрать папку DFTELECOM.
Отправка заголовка команды SELECT:
Ответ — статусный байт:
A4 (повторяет байт инструкции)
Отправка тела команды:
7F 10 (ID данной папки)
Схожим образом выбираем EFSMS.
2) READ RECORD
После того, как мы выбрали файл, содержащий все смс, можно попробовать прочитать одну из них.
Отправка заголовка команды READ RECORD:
A0 B2 01 04 B0 (01 — порядковый номер смс)
B2 07 07 91 97 62 92 90 90 F0 11 FF 04 81 21 43 00 08 FF 08 04 45 04 30 04 31 04 40 FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF 90 00
Возьмем слово «hi».
h | i | |
68 | 69 | Смотрим в UTF-8. |
0110 1000 | 0110 1001 | Преобразуем в двоичный код. |
1110 1000 | 0011 0100 | Дополняем старший байт младшими битами следующего байта. |
E8 | 34 | Именно так будет выглядеть «hi» в 7-битной кодировке. |
3) UPDATE RECORD
Отправка заголовка команды UPDATE RECORD:
A0 DC 02 04 B0 (02 — порядковый номер смс)
Ответ — статусный байт:
DC (повторяет байт инструкции)
Далее отправляется тело команды в соответствии с табл.3.
В качестве аппаратной реализации была выбрана ПЛИС Altera DE1, т.к. курсач сдавать надо это замечательная плата для небольших проектов. Весь проект писали я и Breaknus, на VHDL и C. Среды разработок — Quartus II и Eclipse.
Разъем сим-карты припаян к пяти проводам IDE-шины. Плата имеет внутренние pull-up резисторы.
Краткая схема работы проекта:
Для ввода/вывода данных был собран NIOS II процессор. После ввода команды в консоли NIOS’а, она преобразуется в шестнадцатеричный код и передается побайтово в vhdl-блок. В этом блоке команда передается согласно протоколу T0 на I/O симки. После приема ответа блок передает его в NIOS, и ответ выводится в NIOS консоль. Активация/деактивация карты выбирается переключателем на плате. Нужные временные рамки для активации/деактивации, а также частота синхронизации карты обеспечиваются vhdl-блоком.
Хочу выразить благодарность Сухинину Борису Михайловичу. Именно он познакомил нас с миром ПЛИС на замечательных лабораторных и находил время отвечать на наши вопросы.
1. ISO-7816 (Википедия)
2. ETSI TS 100 977 — Mobile Equipment (SIM-ME) Interface
3. ETSI TS 102 221 — UICC-Terminal interface
Адаптер для считывания sim-карт
Вашему вниманию представлена статья как собрать адаптер для считывания кодов IMSI & KI из сим-карт. (или подругому Сим-ридер или Sim Reader). Эти коды необходимы для опознавания симки сотовым оператором. Получив их с помощью адаптера, можно воспользоватся несколькими способами, чтобы ими сполна пользоваться.
1. Способ. Самый распространенный в крупных городах. Коды заносятся в специальную программируемую сим-карту - Silver карту (Gold карту, Green карту). Но для этого сначала её нужно прошить эмулятором Sim-Emu. Сделать это обычным ридером не возможно и нужно будет собрать программатор. Часто (почти всегда) в продаже имеются уже прошитые карты, и вам только потребуется занести считанные коды. Либо посредством Сим-меню телефона, либо Данным адаптером. Недостаток этого способа в том, что довольно сложно достать такую карту. Хотя можно заказать через интернет.
2. Способ. Этот способ касается только телефонов марки Siemens. Если вы обладатель такого телефона, то вам очень повезло. Коды заносятся прямо в прошивку телефона (эта тема отдельной статьи).
Изготовление Сим-ридера.
Прежде чем, написать статью, был перерыт весь интернет в поисках работающего сим-ридера. Существует много схем. Потом смотришь на форумы и понимаешь, что "у одного работает, у другого - не работает", хотя всё сделано правильно. Попробуем разобраться в чём же дело. Затем я наткнулся на одну схему
Она несколько отличается от Дежановской, даже почти не похожа. Её исправил и доработал замечательный человек Alex Taran (Mr.Alex), за что ему Огромное Спасибо. Главным образом была изменена схема задающего генератора, который стал стабильным. (на Siemens-club'е люди жаловались на то, что генератор по дежановской схеме не запускался). В этой схеме таких проблем нет.
Питание схемы осуществляется от COM-порта и от USB. Некоторые карточки потребляют больший ток, чем обычные, поэтому требуется дополнительное питание. Оно как раз и идёт от USB. Нехватка же тока выражается в самых различных проблемах: происходит зависание при сканировании, вылезает ошибка "Card don't send Answer To Reset!" и др. Поэтому рекомендую запитывать от USB.
Несколько слов о деталях
Как видно из рисунка, никаких дефицитных деталей нет. Особо хочу отметить использование микросхемы 74HC04. В принципе, её можно заменить на К561ЛН2 и на 74LS04. Раньше у меня стояла 561ЛН2, но когда попались новые карточки мтс и билайн, они отказывались сканироваться. Оказалось, что в микросхемах 561ЛН2 и подобных отсутствует сигнал ОК. При покупке 74HC04 все проблемы исчезли и по сей день.
Пару слов о кварцевом резонаторе. Лучше его оставить таким как в схеме. Но возможно применение и другого. Например на 6МГц, всё зависит от типа сим-карты, будет ли она работать на данной частоте. Естественно за счёт увеличения частоты, уменьшится время сканирования. Но ставить кварц выше 7МГц не рекомендуется, чтобы не \"сжечь\" карточку. Применение кварцов меньшего номинала возможно, но нужно учесть, есть ли в настройках программы для сканирования работа с данной частотой.
Транзистор можно заменить на любой маломощный n-p-n структуры, например на КТ315 или на КТ3102.
Резисторы любые, самые маленькие.
Крепление Сим-карты. Т.к. в моём случае карт-держателей в магазине не оказалось, контакты для крепления пришлось изготавливать самостоятельно. Покупается панелька (или ещё её называют "колодка") для микросхемы DIP-корпуса (короче, обычную), вынимают 6 ножек, подгибают как на рисунке и впаивают в плату. А саму симку прижимают прищепкой :). Если у Вас есть возможность приобрести фирменный сим-карт-держатель, то, возможно, придётся скорректировать разводку печатной платы.
Читайте также: