dastapov: (Default)
[personal profile] dastapov
Заказной пост для [livejournal.com profile] netch, [livejournal.com profile] aefimov и [livejournal.com profile] andrew_dashin: "Я так понимаю, что у каждой sim-карты есть свой ID, по котрому определяют что это именно та самая карта. Волнует меня вот что: могу ли я подменить программно этот ID?" и "Каналы сетей действительно шифрованы или это сказки?"

Короткий ответ: у каждой SIM-карты действительно есть уникальный ID, называемый IMSI (International Mobile Subscriber Identity). Теоретически (при использовании программируемых или инженерных SIM-карт) его можно изменять. Однако, IMSI не является authentication token-ом - для того, чтобы определить "что это та самая карта", используется challenge-response протокол. В качестве секретного ключа используется длинное секретное число, которое хранится в SIM-карте так, что его невозможно считать и/или изменить. При определенной доле удачи его можно попытаться вычислить и сделать дубликат SIM-карты, но если не повезет - можно лишиться SIM-карты.

Длинный ответ:

В процессе производства SIM-карт производитель заносит в ROM каждой карты случайное число, называемое "Ki" (Key for identification). Это число будет служить секретным ключем для данной SIM-карты. Когда SIM-карты доставляются мобильному оператору, с ними передаются данные о Ki каждой новый SIM-карты. Эти данные (в виде пар (IMSI, Ki)) заносят в "центр аутентификации" мобильной сети (AuC).

Когда мобильный телефон пытается зарегистрироваться в сети, его IMSI передается в AuC, который передает обратно случайное число (RAND). Дальше SIM-карта и AuC параллельно выполняют одно и то же вычисление: (SRES, Kc) = A3/A8(RAND, Ki), где "A3/A8" - название стандартных алгоритмов вычисления SRES (Signed RESponse) и Kc (Key for ciphering) соответственно.

Телефон передает вычисленное SIM-картой значение SRES обратно в AuC, который сравнивает его со своим SRES. Если результаты совпали, то SIM-карта - подлинная.



Вычисленное значение Kc сохраняется в AuC/HLR/VLR и энергонезависимой памяти SIM-карты до следующей регистрации карты в сети и используется для шифрования голосового траффика, идущего по радиоинтерфейсу. Насколько я помню, расшифровкой занимается BSC и дальше (по наземным каналам) голос идет оцифрованным, но нешифрованным (кажется, кодек называется gsm 06.10).

Почему так тяжело клонировать SIM-карту?
Во-первых, у SIM-карты нет интерфейса, по которому можно непосредственно считать или изменить "Ki". Есть интерфейс, позволяющий выполнить алгоритм A3 или A8, но он защищен от попыток собрать достаточно данных для вычисления Ki путем перебора (brute forceing-а) - если слишком часто вызывать эти функции в течении короткого интервала времени, то SIM-карта заблокируется (приведет сама себя в негодность), после чего ее останется только выкинуть. Для успешного брут-форсинга нужно около 20000-40000 вызовов, и то - при условии, что в SIM-картах используется стандартный алгоритм A3 или несущественно отличающиеся его разновидности.

Кроме того, большинство операторов используют свои собственные алгоритмы вместо стандартного A3, не публикуя принципы их работы.

В сумме это приводит к тому, что клонировать SIM-карту возможно, но очень-очень тяжело.

Литература:
(deleted comment)

(no subject)

Date: 2006-11-09 03:57 pm (UTC)
From: [identity profile] zhuk-s.livejournal.com
по запросу клиента оператор никак не может такие действия производить. Если может технически, то только по запросу соответсвующих служб/etc. Почему не делает такие запросы наша доблестная милиция, вопрос выходящий за рамки топика :)
Теоретически такая возможность должна быть. На практике - надо еще и реализовать эффективную систему запросов такого рода (и иметь ее технически: база данных всех сот с точным географическим положением, etc.)
Понятно, что определение будет в любом случае неточным, от нескольких километров в городе до десятков в поле.

(no subject)

Date: 2006-11-09 04:22 pm (UTC)
From: [identity profile] amazi.livejournal.com
ГТ раньше по заявлению блокировал ИМЕИ в своей сети.

(no subject)

Date: 2006-11-10 01:44 pm (UTC)
From: [identity profile] zhuk-s.livejournal.com
Блокировать и сказать местоположение - разные вещи.

(no subject)

Date: 2006-11-09 06:15 pm (UTC)
From: [identity profile] akshaal.livejournal.com
от нескольких километров в городе до десятков в поле.
Там меньше чем несколько км получается.

Например Точность определения — несколько сотен метров в центре Москвы и около километра на окраинах.

(no subject)

Date: 2006-11-09 06:17 pm (UTC)
From: [identity profile] akshaal.livejournal.com
Не знаю, что там подразумевается под окраинами, но когда пробовали находясь в одном из домов на ст. м. Текстильщики, дом в котором мы были оно определило.

(no subject)

Date: 2006-11-09 07:00 pm (UTC)
From: [identity profile] zhuk-s.livejournal.com
Я думаю, что это если есть насыщение микросотами, что далеко не всегда и не везде
На станции метро тоже точно определит, или в ресторане со своей миниБС.

(no subject)

Date: 2006-11-09 07:08 pm (UTC)
From: [identity profile] zhuk-s.livejournal.com
впрочем, подождем пока ADEpt расскажет подробней, чего гадать :)

(no subject)

Date: 2006-11-09 06:09 pm (UTC)
From: [identity profile] akshaal.livejournal.com
IMEI телефона можно поменять. По крайней мере для большей части Siemens'ов (может и для всех, но не уверен). Вот только заморачиваются ли этим на рынках продавцы - не знаю.

(no subject)

Date: 2006-11-10 08:19 am (UTC)
From: [identity profile] http://users.livejournal.com/_adept_/
Заморачиваются.

(no subject)

Date: 2006-11-10 08:21 am (UTC)

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