dastapov: (Default)
[personal profile] dastapov
Заказной пост для [livejournal.com profile] egorka: "Сим-карта может содержать какую-то хернюшку программную, которая появляется в меню моего телефона и может выполняться, если я с бодуна в нее ткну. Меню развлечений какое-то или еще какая рвота. :) Так вот вопрос. В каких кодах разработана эта фигнюшка, что она спокойно готова выполняться как на смартфоне нокия под симбианом так и под тупой мабилой от мотороллы на совсем другом процессоре, например?"
... и для [livejournal.com profile] avnik: "Я подозреваю что там какой то аналог RPC --- команда с параметами скармливается по шине, и получается результат"

ОК, углубимся в детали того, что бывает в потрохах SIM-карты и как она взаимодействует с телефоном.

Как я уже говорил, SIM-карта представляет собой мелкий компьютер с ограниченой функциональностью и строго специфицированным внешним интерфейсом. Через этот интерфейс SIM-карту "дергает" телефон, который является для SIM-карты единственным окном во внешний мир.

Как правильно угадал [livejournal.com profile] 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" :)

Литература:

(no subject)

Date: 2006-11-13 09:39 am (UTC)
From: [identity profile] swizard.livejournal.com
> Решением стало появление SIM-карт, способных выполнять сильно обрезанную JVM (Java Virtual Machine)

Я в шоке =)

(no subject)

Date: 2006-11-13 10:06 am (UTC)
From: [identity profile] http://users.livejournal.com/_adept_/
Поищи в интернете "How to Turn a GSM SIM into a Web Server" ....

(no subject)

Date: 2006-11-13 03:46 pm (UTC)
From: [identity profile] faceted-jacinth.livejournal.com
В шоке =)

(no subject)

Date: 2006-11-13 12:51 pm (UTC)
From: [identity profile] zverik.livejournal.com
+ещё один в шоке %)

(no subject)

Date: 2006-11-13 09:05 pm (UTC)
kastaneda: (Default)
From: [personal profile] kastaneda
+1. Весьма удивлён.

(no subject)

Date: 2006-11-13 11:01 am (UTC)
From: [identity profile] ex-andrew-da576.livejournal.com
Ох, что может быть кастрированней чем j2me...

(no subject)

Date: 2006-11-13 12:44 pm (UTC)
From: [identity profile] http://users.livejournal.com/_adept_/
Рекомендую таки качнуть спецификацию JavaCard с Сана и увидеть, что такое действительно кастрированная java.

(no subject)

Date: 2006-11-14 07:29 am (UTC)
From: [identity profile] zexo.livejournal.com
А для окончательного расширения горизонтов сознания поищите в Google-е слова “How to turn SIM card into Web Server”

Насколько я понял из этого докýмента, весь функционал, существенный для web-сервера, в конфигурации, которую ребята собрали, выполнялся все-таки не SIM-картой, а специальным proxy. SIM-карта же просто принимала, интерпретировала и отвечала на специально сформированные SMS-ки.

(no subject)

Date: 2006-11-23 12:33 am (UTC)
From: [identity profile] egorfine.livejournal.com
мегаспасибо. опухнул на месте!

(no subject)

Date: 2007-02-15 01:42 pm (UTC)
From: (Anonymous)
привет!
очень интересует техника позволяющия слушать разговоры по моб телефону...
если есть информация о принципе её роботы и технической степини сложности с благодарностью прочитаю.

(no subject)

Date: 2009-05-17 01:17 pm (UTC)
From: (Anonymous)
в настоящее время многие вендоры SIM-карт уже выпускают их с объемом памяти 256К, что годиться уже для размещения "сносных" апплетов. на 32К разместить что-то кроме простой STK-меню или апплета присылающего настройки WAP/GPRS вряд ли возможно.

(no subject)

Date: 2010-11-25 02:46 am (UTC)
From: (Anonymous)
Есть ли возможность абененту "Выключить" дополнительную функциональность сим карты? Понизить её протокол.

Понизить протокол.

Date: 2010-12-17 06:06 am (UTC)
From: (Anonymous)
Если ME (читай телефон) не умеет поддерживать GSM 11.14 SIM Toolkit
то в процессе инициализации ME сообщает об этом SIM и она ME по этому
вопросу более не беспокоит.

Короче говоря нужно сделать так, чтобы мобильник не говорил SIM
что он умеет поддерживать SIM Toolkit.

Profile

dastapov: (Default)
Dmitry Astapov

May 2022

M T W T F S S
       1
2345678
9101112131415
161718 19202122
23242526272829
3031     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags