понедельник, мая 30, 2005

Кто ищет тот всегда найдёт!

Давно искал я подобный ресурс! Что бы в одном месте была собрана вся документация по GSM/UMTS/3G, её можно было просматривать по интересующим меня темам и скачивать без регистрации!!! Таки нашёл!!! Это библиотека стандартов группы 3GPP - http://www.3gpp.org/specs/numbering.htm !!! Счастью нет предела!

суббота, мая 28, 2005

По аллеям мы пройдёмся

Изучил документацию по SIM Application ToolKit (SAT). Сила. Такого навоять можно! Лишь бы памяти в процессоре хватило. А не хватит - перейду на ATMega, благо такие карточки всё ещё выпускают и продают. В ATMega в два раза больше памяти, да и скорость можно побольше задействовать. Пока вырисовывается что на основе SAT можно сделать NetMonitor (мощность сигнала, локальные данные), автоматическое переключение на выбранный по умолчанию "любимый" номер (сценарий: переключил телефон на более выгодного опсоса, позвонил, положил трубку в карман, а она автоматически через 30 секунд вернётся на любимый номер), а для CallBack (отправка SMS на специальный номер с последующим отзвоном и соединением с загранкой) - так просто рай (надо Зебра Телеком предложить)! Привязку к определённой базовой станции уже и сейчас можно реализовать, даже и без SAT, не помню кого это интересовало. Так же можно сделать и автоматический переход на номер с более низкими тарифами на указанном направлении (типичный LCR - Least Cost Routing), надо только прогнать тесты и разобраться какие телефоны это поддерживают. Кого-то интересовала защита ключей при потере телефона? Можно сделать! Вопрос времени :-)

Написал примитивный скелет для SAT: на сегодня при включении телефона выводится сообщение "Fun", треннируюсь с BER-TLV, многовато кодов. Начало положено.

В первую очередь хочу сделать систему меню для ввода ключей и для выбора используемого номера, потом на очереди автоматическое переключение на любимый номер, за ним - NetMonitor и LCR. Обязательно надо написать дополнительные процедуры общения тела с симкой, на бОльшей скорости, поднять скорость для начала до 8 МГц, после этого можно плавно переползти на ATMega и поднять скорость до 16 МГц. Там глядишь руки дойдут до противоугонного сервиса - зануление всех ключей по приходу специальной SMS.

Из срочных дел остаётся распотрошить прошивку внешнего EEPROM'а и сверить её сожержимое со всеми рекомендациями, а то Phase2+ в ручную включать надоело.
Приятно - есть чем заняться!

воскресенье, мая 22, 2005

Аскетичный интерфейс FunProm


Аскетичный интерфейс FunProm.

суббота, мая 21, 2005

Как прошить FunCard?

Лучше всего для этого подходят разработки группы Who-Cares (создатели FunCard):
  • Оригинальный программатор FanCard Programmer Light (на 3 резисторах!!!) для параллельного порта - FC_PRG_LIGHT_106.7z
  • Оригинальное програмное обеспечение FunProm для работы с выше указанным программатором - funprom251.7z (для Windows) и funprog-1.0.0.7z (для Linux, исходники которые надо откомпилировать)

Специализированное программное обеспечение просто в настройке и удобно в использовании - при старте програма спросит адрес параллельного порта куда подключён программатор, затем надо указать три файла, необходимые для прошивки FunCard:

  1. Flash file - файл с прошивкой для флэша микроконтроллера
  2. Int. eeprom - файл с прошивкой для EEPROM микроконтроллера
  3. Ext. eeprom - файл с прошивкой для внешнего EEPROM

Для сборки программатора вам понадобятся:

  1. 3 резистора по 100 ом
  2. Печатная плата (принципиальная схема, рисунок печатной платы и прочее собрано в файле FC_PRG_LIGHT_106.7z)
  3. Разъём DB-25
  4. Разъём для подключения к FunCard

Утверждают, что можно обойтись без резисторов, но я не проверял, т.к. всегда пользовался FunCard Programmer Light.

пятница, мая 20, 2005

К нам пришли шефы

Кто сказал что в Новосибирске SuperSim.NET??? Вас обманули!

Только сегодня Александр из SuperSim.NET выразил готовность оказать поддержку проекту FunSIM и помог оборудованием - сим картой Fun4!!! Спасибо. Приятно осознавать, что у пректа появился первый спонсор.

Ссылка на этот ресурс будет расположена на основной странице проекта в самое ближайшее время.

четверг, мая 19, 2005

План профилактических мероприятий №20050519

Последовательность операций по проверке работоспособности новой прошивки:
  1. Прошить Fun card тремя файлами.
  2. Подключить карт-ридер, запустить Woron_Scan, установить карточку.
  3. Дважды нажать кнопку Rst (с 2-3 секундным интервалом).
  4. Убедиться что ответ карты в последнем случае начинается на 3B, записать ответ карты.
  5. Нажать на кнопочку ICC, записать ответ карты.
  6. Нажать на кнопочку IMSI, появится диалог ввода PIN, ввести 1111, записать ответ карточки.
  7. Нажать на кнопочку Ki, появится далог, нажать Start, появится диалог ввода PIN, ввести 1111, дождаться успешного завершени извлечения пар, записать их, закрыть диалог по извлечению Ki.
  8. В меню Tasks выбрать ADN management, в появившемся окне нажать Read ADN from Card, дожаться завершения сканирования, в статусе основного окна Woron_Scan записать значение Total ADN records: XXX, на карте нет никаких телефонов в записной книжке - введите произвольные данные и нажмите Write ADN to Card, дождидесь завершения операции.
  9. Выньте карточку из карт-ридера, подождите не менее 25 секунд, вставьте в карт-ридер и повторно считайте записную книжку. Убедитесь что данные не были искажены.
  10. При наличии редактора SMS сообщений на SIM карте - проверьте хранение SMS сообщений аналогично процедуре проверки работоспособности записной книжки.
  11. Сообщите мне все записанные данные и ваши наблюдения в ходе тестирования.

Большие манёвры

Выкладываю новую прошивку для тестирования - funsim20050519.7z. В ней очень много нового, смотрите в предыдущей публикации (про олешек).

В данной прошивке должны работать адресная книга, SMSки, GSM a3a8.

Я изменил названия файлов:

  • flash.hex - файл для прошивки флэша микроконтроллера
  • int_epp.hex - файл для прошивки еепрома микроконтроллера
  • ext_epp.hex - файл для прошивки внешнего еепрома

Сразу оговорюсь, что файл для внешнего еепрома подойдёт для любой карты от Fun2 до Fun6 (Fun7 невозможно обрезать до размеров симки), со временем будет конфиггуратор и для более ёмких карт будет возможно полностью использовать их объём.

Вам понадобятся следующие данные:

  • PIN: 1111 (четыре единицы)
  • PUK: 11111111 (восемь единиц)

Данная прошивка не предназначена для использования в телефоне.

WinExplorer и Dexter

Всё началось с того, что на днях меня спросили - "Где можно скачать последнюю версию WinExplorer'а?"

Напомню, WinExplorer позволяет общаться со смарт картой и выполнять разнообразные скрипты, чем собственно меня и привлекает.

Заход к Гоголю показал что исторический сайт Dexter'а (автора программы) расположен по адресу www.geocities.com/winexplorer/ , но там глухо и темно.

Следующий поиск выявил статью на сайте компании DirectTV (спутниковое телевидение на Америки, ретранслирует пару русско-язычных каналов), из которой выяснилось, что DirectTV подала в суд на Dexter'а за создание программы WinExplorer (программа кроме всего прочего позволяет обслуживать пиратские карточки для спутникового телевидения).

Приведу текст статьи (оригинал доступен по ссылке):
Winexplorer's Dexter faces Directv lawsuit // 2004-09-17
The well known author of popular programs such as WinExplorer and BasicU is now looking at facing the wrath of DirecTV's corporate lawyers. It appears that DirecTV is going full force at "Dexter" for DMCA violations. Court documents implicates Dexter of authoring WinExplorer and BasicU for none other than DirecTV piracy.

My guess is that at the end Directv will be looking for the information of the dealers who bought all the private keys of him and it will be quite easy to track it down since all the business was done using PayPal.

I wish you good luck Dexter!!!!!!!

Зная как потом будет невозможно найти эту программу поискал, на всякий случай, где её можно скачать. Судя по всему, последняя версия - это v.5.0, файл WinExpl5.0.zip.

Придётся переходить на Smart Card ToolSet от SCard SOFT.

Классификация Fun card

Что бы не забыть и не запутаться:
  • FunCard-2 a.k.a. Purple Card (Atmel AT90S8515A + EEPROM 24LC64)
  • FunCard-3 a.k.a. Prussian Card (Atmel AT90S8515A + EEPROM 24LC128)
  • FunCard-4 a.k.a. Prussian-2 Card (Atmel AT90S8515A + EEPROM 24LC256)
  • FunCard-5 a.k.a. Prussian-3 Card (Atmel AT90S8515A + EEPROM 24LC512)
  • FunCard-6 a.k.a. Prussian-4 Card (Atmel AT90S8515A + EEPROM 24LC1024)
  • FunCard-7 a.k.a. Prussian-5 Card (Atmel AT90S8515A + EEPROM 2x24LC1028)

Мы поедем, мы помчимся на оленях утром ранним...

Довольно успешно удалось поработать над проектом:
  • написал функцию sleep(), это должно улучшить совместимость со старым оборудованием (Phase 1)
  • откорректировал общедоступные исходники a3a8 что бы вписывались в логику эмулятора
  • исправил ошибку в проверке длины ответа карточки (response) - "не равно" заменил на "строго больше", должно исправить отключение телефона на 26 секунде (описано OlegFUN@KievSAT)
  • исправил принципиальную ошибку из-за которой не работала адресная книга - короткий буфер, нужно минимум 22 символа, а буфер был всего лишь 20.
  • включил оптимизацию компилятора, без неё код уже не влезал в микропроцессор, надеюсь что ещё осталось около тысячи свободных слов.
  • сделал наброски тестовых последовательностей с Вороном
  • вставил в прошивку ICCID от Доктора

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

среда, мая 18, 2005

Доктор прописал...

На днях был вынужден обратиться к специалисту - то лапы ломит, то хвост отваливается, то телефон в сети не регистрируется. Доктор@KievSAT прописал:

Rx:
ICCID: 8938003991423865948
IMSI: 08 29 55 30 50 32 30 55 49
Ki: 77 D8 B4 63 3D 81 25 17 83 75 72 A3 F5 15 5E 33
принимать при прошивке телефона, запивать пином в четыре единицы, возможен пук 11111111.

Лекарство помогает, эффект потрясающий!

На правах пэ-ара: Доктор подарил живые данные, которые с сегодняшнего дня будут введены провайдером №1 во всех версиях пришивки FunSIM. Спасибо, Доктор!

вторник, мая 17, 2005

Отключил компаратор

С целью экономии электроэнергии отключил компаратор. Сделал новый набор для тестирования (funsim_alpha20050517.7z). Стоит проверить на отклик ATR и если у кого есть возможность посмотреть на потребляемый ток этой прошивки и сравнить с предыдущей. Очень интересно увидеть конкретные цифры потребления на холостом ходу после RST (у меня к сожалению нечем померить).

Второй независимый результат (Fun 4)

Карта Fun 4, софт Woron Scan 1.09, скорость 9600, устройство Phoenix, ATR: 2A 4F 4D 45 47 41 5F 4D 4F 44 45 32 20 22 50 68 6F 65 (направильный ответ, посмотреть на наличие такой последовательности в коде).

Затем софт SimScan 2.01, ATR правильный, а затем еще раз Woron Scan 1.09: И вот такой результат: The real speed is 9600.. There is a card in Phoenix device: ATR правильный.

понедельник, мая 16, 2005

Первый независимый результат

Карта Fun 2, скорость 16457, устройство Phoenix, софт Ворон - работает.

Альфа 20050515

Нужны первые тестеры.

Сделал интерфейс общения карты с телефоном, надо проверить.

В архиве (funsim_alpha20050515.7z) находятся два файла - один для микропроцессора, другой для EEPROMа. Напомню - все бывшие ключи, настройки и прочее будет стёрто на fun карте, так что не забудте о резервной копии.

После прошивки fun card надо проверить в Вороне (или аналогичном софте) отклик карты на ATR и выслать мне. Пока больше ничего не должно работать (хотя обращение к EEPROM написано и может работать редактирование адресной книги и SMS сообщений).

Ни в коем случае не вставляйте карточку в телефон.

Алгоритм a3a8 пока не реализован, на его месте стоит молчаливая заглушка.

воскресенье, мая 15, 2005

Новая секция - Спонсоры

Пришёл к выводу что если у кого-то возникнет желание передать мне в безвоздмездное пользование несколько Fun card то такого человека надо отблагодарить упоминанием на сайте. Вот и сделал новую секцию - спонсоры.

Спонсоры


Проекту могут пригодиться спонсоры. На сегодняшний день мне бы очень пригодились несколько разных Fun card (только Punch!!!). Ваше имя будет указано в секции спонсоров, если есть магазин - будет указан в соответствующей секции. Деньгами помогать пока не надо. Готов выслушать альтернативные предложения.

План действий

Написал план действий на ближайшее будущее, можно его расценивать как ТЗ:

План действий



  1. Написание аналога функций Send()/Receive()

  2. Реализация отклика карты на ресет ATR

  3. Тестирование (карта должна успешно проходить инициализацию и отвечать ATR)

  4. Реализация PPS

  5. Тестирование (затруднительно - не хватает информации какие сотовые телефоны пользуются PPS, придётся ограничиться тестированием в WinExplorer или Smart Lab)

  6. Написание аналога функций extee_startCondition() extee_stopCondition() extee_sendByte() extee_receiveByte()

  7. Написание функции возврата ATR из внешнего ЕПРОМ

  8. Тестирование (должна работать с Вороном на предмет доступа и редактирования адресной книги и SMS сообщений)

  9. Написание аналога функции a3a8

  10. Тестирование (генеральная проверка функционирования эмулятора - должен полноценно работать хоть в одном телефоне)

  11. Написание режима экономии электроэнергии (не забыть про 1892 цикла ожидания до отключения)

  12. Написание обработки обращений по прерываниям

  13. Написание библиотеки для SAT

  14. Элементарная реализация SAT

  15. Тестирование SAT (телефон должен показыват меню и выполнять элементарные функции по взаимодействию с карточкой эмулятора).

Дизассемблирование a3a8

Похоже что мне понадобится помошь лишь с дизассемблированием функции a3a8(). Всё остальное можно будет написать с нуля. Алло, мы ищем таланты! Кто разберётся с этой функцией?

Много искал в интернете и читал. Потом - писал.

Последнюю пару дней много рыскал по интернету и много читал. Рыскал в основном по сайту AvrFreaks (http://www.avrfreaks.net), там опубликовано множество разных схем и программ по использованию микроконтроллеров AVR. Почерпнул очень много интересного для себя, а именно - появились идеи как самому реализовать функции Send()/Receive(), ответственные за связь эмулятора с телефоном. В идеальном случае за неделю смогу их реализовать. Где-то нашёл документацию по протоколу обмена данными между телефоном и сим картой, это ISO 7816-3: Electronic Signals and Transmission Protocols, выложил на сайте. Похоже что у меня есть всё необходимое для работы по подключению сим карты к телефону.

За одно наткнулся на примеры кода по использованию I2C (так и не понял - это тот же самый SPI или всё же это разные вещи?), код читабелен, хорошо откоментирован. Надо вдумчиво почитать описание микросхемы памяти AT24C** и можно браться за дело.

Набросал черновик технического задания (план работы + план проводимых тестирований).

На первое время цели и задачи определены, можно смело браться за работу!

суббота, мая 14, 2005

Обновления на книжной полке

Добавил на книжную полку три документа


  1. Техническая спецификация ISO 7816-1: Physical Charcteristics of Integrated Circuit Cards (ISO7816-1.7z)

  2. Техническая спецификация ISO 7816-2: Dimensions and Location of the Contacts (ISO7816-2.7z)

  3. Техническая спецификация ISO 7816-3: Electronic Signals and Transmission Protocols (ISO7816-3.7z)

Наибольший интерес представляет последний - в нём описан протокол обменя данными между устройством и картой (протоколы To, T1, ATR, PPS).

Так же может пригодиться документ "Обмен данными со смарт-картой ISO 7816-3" (http://www.hackersrussia.ru/Cards/ASyncro/ISO7816-3.php)

пятница, мая 13, 2005

Архиватор 7-zip

Сегодня меня уже спросили - чем распаковывать файлы с расширением 7z (в самом низу страницы указано чем распаковывать, где взять, даже кнопочка прилеплена).

Отвечаю: архиватором 7-zip, http://www.7-zip.org/ru/.

Предвидя последующие вопросы спешу ответить, что архиватор мне нравится тем что предлагает лучший алгоритм сжатия на сегодняшний день, а самое главное написан соотечественником - Игорем Павловым.

Есть версия для Windows и для Linux.

Новый раздел - Магазины

Сделал новый раздел - магазины, ведь надо знать где купить необходимое оборудование, будь то карточку эмулятора или программатор.

Магазины



  1. Магазин "Хочу!" на KievSAT - программаторы и карточки, г. Киев, оплата электронным переводом, доставка по Украине и ближнему зарубежью.

  2. SmartCard - програматоры, карточки, г. Санкт-Петербург, доставка по России и за её пределы, оплата наличными, безналичными, Western Union, Web Money.

  3. MegaSIM - программматоры, карточки и переходник на 2 SIM карты, г. Москва, оплата наличными, оплата электронным переводом, безналичным банковским переводом, наложенным платежом по почте, наличными в офисе, доставка по Москве, России и СНГ.

четверг, мая 12, 2005

Обновления на сайте

Добавил 3 файла:
funsim_bin.z - файлы для прошивки микропроцессора, кандидаты на дизассемблирование
funsim_doc.z - документация по установке, конфигурировнию и спользованию эмулятора
funsim_src.z - неполный исходный код, отсутствуют многочисленные фрагменты, возможно потеряны все файлы на ассемблере

Добавил ссылку:
IDA Pro - наиболее популярный инструментарий дизассемблирования

среда, мая 11, 2005

Открыт веб сайт

FunSIM - эмулятор SIM на Fun card

Положено начало сбору всей доступной информации об эмуляторах SIM на Fun card.