一、GSM网络概述

1、安全机制

  • 认证用户,防止未授权接入
  • 对空中接口传输加密,防止无线信道上用户信息被窃听
  • SIM卡独立于终端,管理用户信息
  • 在空中接口上以临时身份标识用户,防止用户被跟踪

  但是GSM的缺陷已经逐渐暴露。

2、GSM网络结构

  • 两个主要组成部分:

  固定网络基础结构(固话网络)

  移动基站

  • 按功能,GSM系统中的模块划分为四个部分:

  网络与交换子系统NSS

  基站子系统BSS

  移动台MS

  公众网络PN

  MS <------> BSS <------> NSS <------> PN

3、GSM网络的安全要求

  • GSM的两个主要安全目标:

  防止未授权接入、用户身份倍假冒(通过用户鉴权)

  保护用户隐私(通过传输加密、信令加密)

二、GSM网络的安全体系结构

1、GSM网络的安全体系结构

  • 安全特征主要集中在无线接入部分
  • GSM引入以下安全功能:

  SIM卡和PIN码实现对SIM卡的访问控制;

  网络对用户身份认证和会话密钥,防止非授权接入;

  无线链路加密;

  隐藏用户身份。

  • GSM系统的安全体系结构,有3层组成:

  第一层:认证层,采用挑战-响应机制

  第二层:会话密钥生成层

  第三层:加密层

  • GSM中,设计用户鉴权和机密的主要安全算法有:

  A3:产生认证码SRES

  A5:产生会话密钥

  A8:加密用户数据和信令数据

  • GSM中,系统主要安全参数和算法分布:

  SIM卡:IMSI、KI、TMSI/LAI、PIN、K、Kc、A3、A8

  ME:TMEI、A5

  HLR/AuC:IMSI、K、RAND、SRES、Ki、A3、A8

  MSC/VLR:TMSI/LAI、IMSI、K、认证向量(RAND、SRES、Ki)

  BST:A5

  EIR:IMEI

2、GSM系统的加密

  • 在 GSM 系统中 , 用户数据和信令信息的加密是通过加密算法A5行的
  • A5算法版本:

  A5/0:非加密算法

  A5/1:弱版本  

  A5/2:强加密算法

  • 加解密过程:

  MS与网络端协商使用A5版本

  BSS/MSC/VLR向MS发送特殊明文MMM

  MS上开始加密MMM,并将密文发送给BSS,同时开始解密

  若BSS端正确解密来自MS的密文,则BSS端开始解密

  • A5算法:

  两个参数:初始密钥,TDMA序号COUNT

  产生:一组114bit的密钥流K,其中一个用于加密,另一个用于解密。

  实现地点:MS端的移动设备,BSS端的BTS

3、GSM系统中的会话密钥生成

  • 在GSM系统中 , 会话密钥 Kc 是在用户认证时产生的 , 产生Kc的算法称为A8算法。
  • A8算法:

  Kc = A8(Ki,RAND)

  两个入口参数:用户秘密认证密钥Ki、随机数RAND

  一个出口参数:会话密钥Kc

  实现地点:MS端的SIM卡,固定网络端的AuC

三、GSM网络的身份认证

  • 激活用户鉴权的情况:

  VLR/HLR中用户相关的信息被更改

  用户请求网络服务

  在MSC/VLR重启后第一次访问网络

1、用户接入身份认证

  • 用户鉴权过程:

  (1)用户识别

    找出发起鉴权请求的用户的身份,来提取关于该用户的秘密参数。

    用户识别号码分为三种:

       国际移动设备号 ( IMEI)

       国际移动用户号 ( IMSI)

       临时移动用户号 ( TMSI ) 

    过程:

      用户首次启动或进入新区域

      当地交换机给予一个随机号码作为临时用户号

      从用户归属地的HLR中取得IMSI,并保存IMSI与TMSI在拜访位置寄存器VLR中

      MS把TMSI存入SIM卡的EEPROM中 

      MS发起鉴权请求时,发送ISMI、TSMI给BSS,BSS根据其找出该用户对应密钥Ki

  (2)用户鉴权

    过程:

    网络端从AuC获取用户Ki,利用随机数发生器产生RAND,经无线信道发送到MS,同时AuC根据RAND、Ki利用A3产生认证码SRES,并和Kc、RAND用A8产生    认证向量(SRES,Kc,RAND),该向量送往BSS保存

    在 MS 端 , SIM 卡在 接收到挑战 RAND 后提取内部存储的 Ki 和算法 A3 计算出应答信号 S RES′ , 随后将 SRES′通过无线信道发送给基站基站在接收到应答 信    号 SRES′后与从 AuC 传来的认证向量中的
    SRES 比较 , 如果二者一致, 则判明用户合法 , 鉴权通过 ; 否则鉴权失败, 中止二者通信过程。鉴权通过的用户可以用 A8 算法计算出会话密钥 Kc, 并使用 A5 算    法进行加密通信

    从 GSM 系统的用户鉴权过程可以看到 , 网络认证的其实是 SI M 卡的身份 , 而并非用户本身 , 因此合法用户必须保证 SI M 卡不丢失。SI M 卡则通 过 P IN 和     PUK 来鉴 别其持有者身份的合法性  

    

移动通信安全——GSM安全体系的更多相关文章

  1. 普通硬件就能破解GSM A5加密算法

    如果你还在使用基于早期信号标准的GSM手机,那么你最好在使用手机的过程中小心一点了.因为根据国外媒体的最新报道,安全研究专家通过测试发现,他们只需要使用三张NVIDIA GeForce GTX690显 ...

  2. GPRS GPRS(General Packet Radio Service)是通用分组无线服务技术的简称,它是GSM移动电话用户可用的一种移动数据业务,属于第二代移动通信中的数据传输技术

    GPRS 锁定 本词条由“科普中国”百科科学词条编写与应用工作项目 审核 . GPRS(General Packet Radio Service)是通用分组无线服务技术的简称,它是GSM移动电话用户可 ...

  3. 如何利用 LTE/4G 伪基站+GSM 中间人攻击攻破所有短信验证

    这次公开课请来的嘉宾对自己的简介是: 连续创业失败的创业导师:伪天使投资人:某非知名私立大学创办人兼校长:业余时间在本校通信安全实验室打杂. 自从他在黑客大会上演讲<伪基站高级利用技术——彻底攻 ...

  4. CORBA(Common Object Request Broker Architecture,公共对象请求代理体系结构,通用对象请求代理体系结构)是由OMG组织制订的一种标准的面向对象应用程序体系规范

    CORBA(Common Object Request Broker Architecture,公共对象请求代理体系结构,通用对象请求代理体系结构)是由OMG组织制订的一种标准的面向对象应用程序体系规 ...

  5. ISO/IEC 27001 信息安全管理体系认证

    一. 信息安全管理体系标准业务介绍 1. 背景介绍 信息作为组织的重要资产,需要得到妥善保护.但随着信息技术的高速发展,特别是Internet的问世及网上交易的启用,许多信息安全的问题也纷纷出现:系统 ...

  6. 我的翻译--GSMem:通过GSM频率从被物理隔离的计算机上窃取数据

    抽象概念 AG网络是指在物理上与公共互联网断开的网络.虽然近几年人们验证了入侵这类网络系统的可行性,但是从这种网络上获取数据仍然是一个有挑战的任务.在本文中,我们介绍GSMem,它是一个可以在蜂窝数据 ...

  7. Windows认证体系解读

    目录 Windows认证方式 Windows本地认证 NTLM认证方式(工作组环境中) wiresharek抓包NTLMv2,使用Hashcat爆破 NTLM认证方式(域环境中) Kerberos认证 ...

  8. [systemtap手记]debian体系安装过程

    Debian体系,本人测试用机 Ubuntu 11.10 uname -r 查看原本的内核版本为 3.0.0-12-generic 第一步: 安装systemtap包 $ sudo apt-get i ...

  9. BPM体系文件管理解决方案分享

    一.方案概述 企业管理在很大程度上是通过文件化的形式表现出来,体系文件管理是管理体系存在的基础和证据,是规范企业管理活动和全体人员行为,达到管理目标的管理依据.对与公司质量.环境.职业健康安全等体系有 ...

随机推荐

  1. Google Code Jam Africa 2010 Qualification Round Problem A. Store Credit

    Google Code Jam Qualification Round Africa 2010 Problem A. Store Credit https://code.google.com/code ...

  2. 用python slearning类库实现数据挖掘(python3.x)

    Summary of test0 data : source data source code : in test0 file reference : - Reference Website / - ...

  3. Hive伪分布式下安装

    本安装过程只作为个人笔记用,非标准教程,请酌情COPY.:-D Hive下载 下载之前,需先查看兼容的Hadoop版本,并安装hadoop,参考 http://www.cnblogs.com/yong ...

  4. HDU 4704 Sum (2013多校10,1009题)

    Sum Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total Submi ...

  5. 字符串转base64,base64转字符串

    [JavaScript原生提供两个Base64相关方法] btoa():字符串或二进制值转为Base64编码 atob():Base64编码转为原来的编码 备注:利用这两个原生方法,我们来封装一下,标 ...

  6. 搞定android多点触摸模拟

    原理在android 创建多点触摸虚拟设备,然后往设备写模拟数据可以

  7. jsp:include 动作指令 与 include 指令

    include动作指令可以在JSP页面中动态包含一个文件,这与include指令不同,前者可以动态包含一个文件,文件的内容可以是静态的文件也可以是动态的脚本,而且当包含的动态文件被修改的时候JSP引擎 ...

  8. Webstorm实时编译SASS和LESS

    Webstorm自带一个File Watchers功能,设置一下,即可实时编译SASS,LESS等 菜单:File->Settings->左栏Tools下的File Watchers,按右 ...

  9. Netty框架

    Netty框架新版本号:3.0.2.GA,于2008年11月19日公布.Netty项目致力于提供一个异步的.事件驱动的网络应用框架和工具,用于高速开发可维护的.高性能的.高扩展性的server和cli ...

  10. 免sudo使用docker命令

    背景 因为使用的是sudo安装docker,所以会导致一个问题.以普通用户登录的状况下,在使用docker images时必须添加sudo,那么如何让docker免sudo依然可用呢?于是开始搜索解决 ...