![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Заказной пост для
egorka: "Сим-карта может содержать какую-то хернюшку программную, которая появляется в меню моего телефона и может выполняться, если я с бодуна в нее ткну. Меню развлечений какое-то или еще какая рвота. :) Так вот вопрос. В каких кодах разработана эта фигнюшка, что она спокойно готова выполняться как на смартфоне нокия под симбианом так и под тупой мабилой от мотороллы на совсем другом процессоре, например?"
... и для
avnik: "Я подозреваю что там какой то аналог RPC --- команда с параметами скармливается по шине, и получается результат"
ОК, углубимся в детали того, что бывает в потрохах SIM-карты и как она взаимодействует с телефоном.
Как я уже говорил, SIM-карта представляет собой мелкий компьютер с ограниченой функциональностью и строго специфицированным внешним интерфейсом. Через этот интерфейс SIM-карту "дергает" телефон, который является для SIM-карты единственным окном во внешний мир.
Как правильно угадал
avnik, интерфейс между телефоном (ME) и SIM-картой представляет собой что-то вроде RPC с ограниченым набором функций. Если быть точным, то в базовом API SIM-карты GSM Phase 1 их (функций) всего 17 штук (раздел 8 стандарта GSM 11.11). Большая их часть отвечает за навигацию по памяти SIM-карты и модификацию значений EF (elementary files). Кроме этого есть еще функция "RUN GSM ALGORITHM" (выполнение пресловутых алгоритмов A3/A8) и функция "SLEEP", которая не используется в GSM Phase 2 :)
Естественно, что GSM-операторы очень быстро сообразили, что было бы очень неплохо иметь SIM-карты "не такие, как у всех". Это, типа, дает конкурентное преимущество и все такое. Опять же, таким образом можно облегчать глупым пользователям доступ к value-added сервисам. Теперь не прийдется запоминать, что секс по телефону живет по номеру XYZ - в меню телефона будет пункт "секс по телефону", который будет инициировать дозвон "куда надо".
И вот где-то в начале девяностых спецификация на интерфейс между SIM и ME была расширена и туда были добавлены функции, обеспечивающие работу того, что обычно называют термином "SIM Toolkit".
По-просту говоря, SIM Toolkit - это приложение (-ия), работающее на SIM-карте и взаимодействующие с ME по интерфейсу, описанному в GSM 11.14.
Такие приложения могут:
- показывать текст на экране ME
- инициировать посылку SMS/звонок/USSD-посылку на номер телефона, хранящийся на SIM-карте
- пискнуть в динамик
- вести диалог с пользователем ("Are you sure (Y/N)?")
- получать информацию извне с помощью SMS или Cell Broadcast и сохранять ее на SIM-карте
- предоставлять дополнительные меню, отображаемые ME
- модифицировать номера исходящих звонков или запрещать определенные звонки.
Учитывая, что специфицирован и стандартизирован только интерфейс SIM-ME, а сами приложения выполняются внутри SIM-карты, не имеет никакого значения, как именно и на чем они написаны.
Первые SIM-карты с STK содержали "статический" набор приложений, изменить которые можно было только поменяв саму SIM-карту. Понятное дело, что аппетит приходит во время еды, и очень скоро операторы поняли, что возможность менять STK "на ходу" - это наше всё. Но для реализации этой возможности надо было "открыть" процесс написания софта для SIM-карт и дать возможность независимым поставщикам писать приложения для SIM-карт, что явно было не по нраву производителям SIMок.
Решением стало появление SIM-карт, способных выполнять сильно обрезанную JVM (Java Virtual Machine) и создание спецификации JavaCard, позволившее третьим фирмам писать applet-ы для таких SIM-карт. В настоящий момент на рынке уже существует несколько моделей SIM-карт с немерянными объемами свободнй памяти - 32K или 64К, что позволяет разместить на них 2-3-4-5 апплетов.
PS
А для окончательного расширения горизонтов сознания поищите в Google-е слова "How to turn SIM card into Web Server" :)
Литература:
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
... и для
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
ОК, углубимся в детали того, что бывает в потрохах SIM-карты и как она взаимодействует с телефоном.
Как я уже говорил, SIM-карта представляет собой мелкий компьютер с ограниченой функциональностью и строго специфицированным внешним интерфейсом. Через этот интерфейс SIM-карту "дергает" телефон, который является для SIM-карты единственным окном во внешний мир.
Как правильно угадал
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
Естественно, что GSM-операторы очень быстро сообразили, что было бы очень неплохо иметь SIM-карты "не такие, как у всех". Это, типа, дает конкурентное преимущество и все такое. Опять же, таким образом можно облегчать глупым пользователям доступ к value-added сервисам. Теперь не прийдется запоминать, что секс по телефону живет по номеру XYZ - в меню телефона будет пункт "секс по телефону", который будет инициировать дозвон "куда надо".
И вот где-то в начале девяностых спецификация на интерфейс между SIM и ME была расширена и туда были добавлены функции, обеспечивающие работу того, что обычно называют термином "SIM Toolkit".
По-просту говоря, SIM Toolkit - это приложение (-ия), работающее на SIM-карте и взаимодействующие с ME по интерфейсу, описанному в GSM 11.14.
Такие приложения могут:
- показывать текст на экране ME
- инициировать посылку SMS/звонок/USSD-посылку на номер телефона, хранящийся на SIM-карте
- пискнуть в динамик
- вести диалог с пользователем ("Are you sure (Y/N)?")
- получать информацию извне с помощью SMS или Cell Broadcast и сохранять ее на SIM-карте
- предоставлять дополнительные меню, отображаемые ME
- модифицировать номера исходящих звонков или запрещать определенные звонки.
Учитывая, что специфицирован и стандартизирован только интерфейс SIM-ME, а сами приложения выполняются внутри SIM-карты, не имеет никакого значения, как именно и на чем они написаны.
Первые SIM-карты с STK содержали "статический" набор приложений, изменить которые можно было только поменяв саму SIM-карту. Понятное дело, что аппетит приходит во время еды, и очень скоро операторы поняли, что возможность менять STK "на ходу" - это наше всё. Но для реализации этой возможности надо было "открыть" процесс написания софта для SIM-карт и дать возможность независимым поставщикам писать приложения для SIM-карт, что явно было не по нраву производителям SIMок.
Решением стало появление SIM-карт, способных выполнять сильно обрезанную JVM (Java Virtual Machine) и создание спецификации JavaCard, позволившее третьим фирмам писать applet-ы для таких SIM-карт. В настоящий момент на рынке уже существует несколько моделей SIM-карт с немерянными объемами свободнй памяти - 32K или 64К, что позволяет разместить на них 2-3-4-5 апплетов.
PS
А для окончательного расширения горизонтов сознания поищите в Google-е слова "How to turn SIM card into Web Server" :)
Литература:
(no subject)
Date: 2006-11-13 09:39 am (UTC)Я в шоке =)
(no subject)
Date: 2006-11-13 10:06 am (UTC)(no subject)
Date: 2006-11-13 03:46 pm (UTC)(no subject)
Date: 2006-11-13 12:51 pm (UTC)(no subject)
Date: 2006-11-13 09:05 pm (UTC)(no subject)
Date: 2006-11-13 11:01 am (UTC)(no subject)
Date: 2006-11-13 12:44 pm (UTC)(no subject)
Date: 2006-11-14 07:29 am (UTC)Насколько я понял из этого докýмента, весь функционал, существенный для web-сервера, в конфигурации, которую ребята собрали, выполнялся все-таки не SIM-картой, а специальным proxy. SIM-карта же просто принимала, интерпретировала и отвечала на специально сформированные SMS-ки.
(no subject)
Date: 2006-11-23 12:33 am (UTC)(no subject)
Date: 2007-02-15 01:42 pm (UTC)очень интересует техника позволяющия слушать разговоры по моб телефону...
если есть информация о принципе её роботы и технической степини сложности с благодарностью прочитаю.
(no subject)
Date: 2009-05-17 01:17 pm (UTC)(no subject)
Date: 2010-11-25 02:46 am (UTC)Понизить протокол.
Date: 2010-12-17 06:06 am (UTC)то в процессе инициализации ME сообщает об этом SIM и она ME по этому
вопросу более не беспокоит.
Короче говоря нужно сделать так, чтобы мобильник не говорил SIM
что он умеет поддерживать SIM Toolkit.