⑴ GSM中,A3,A5,A8算法的原理是什么
都是爱立信算法,A3是鉴权算法、A5是加密算法、A8是密钥算法,A3和A8主要是用于生成三参数组的。RAND+Ki通过A3生产SRES,通过A8生产KC,而A5是用于加密过程中,对信息加密的。
⑵ 一、GSM中,A3、A5、A8算法的原理是什么
GSM 的加密系统里面大致涉及三种算法,A3A5A8,这些并不特定指代什么算法,只是给出算法的输入和输出规范,以及对算法的要求,GSM 对于每种算法各有一个范例实现,理论上并没有限制大家使用哪种算法。但是世界上的设备商和运营商都是很懒得沟通的,看到既然有了范例实现,就都拿来用了,于是全世界的 SIM卡被 XX 了都一样拷法。说到这里就不能不简单介绍一下 SIM 卡 SIM 卡是一种智能卡片,里面有个非常简单的 CPU 和一点 NVRAM,可以存储和读出数据,还可以进行一些运算。卡里面有很多内容,不过我只介绍和加密相关的。每张 SIM 卡里面一般都存着一个全球唯一的标志号,叫做 IMSI,这个是用来唯一标识你 SIM 卡的,手机在开机时候会从卡里面读出这个号发给移动网络,移动那里有一个很大的数据库,描述了 IMSI 和手机号的对应关系,于是网络就知道你的手机号是多少了(如果你手机卡/B丢了去补,新补来的卡 IMSI 和原有的不同,而移动数据库那里将你原来的手机号指向新的 IMSI, 旧的卡就再也不能用了)除了 IMSI ,还有 16 个字节的密钥数据,这个数据是无法通过 SIM 卡的接口读出的, 通常称为 Ki, Ki在移动网络那边也保存了一份。在手机登录移动网络的时候,移动网络会产生一个 16 字节的随机数据通常称为 RAND发给手机,手机将这个数据发给 SIM 卡, SIM 卡用自己的密钥 Ki 和RAND 做运算以后,生成一个 4 字节的应答SRES发回给手机,并转发给移动网络,与此同时,移动网络也进行了相同算法的运算,移动网络会比较一下这两个结果是否相同,相同就表明这个卡是我发出来的,允许其登录。这个验证算法在GSM 规范里面叫做 A3,m 128 bit k 128 bit c32 bit,很显然,这个算法要求已知 m 和 k 可以很简单的算出 c ,但是已知 m 和 c 却很难算出k 。A3 算法是做在 SIM 卡里面的,因此如果运营商想更换加密算法,他只要发行自己的 SIM 卡,让自己的基站和 SIM 卡都使用相同的算法就可以了,手机完全不用换。在移动网络发送 RAND 过来的时候,手机还会让 SIM 卡对 RAND 和 Ki 计算出另一个密钥以供全程通信加密使用,这个密钥的长度是 64 bits 通常叫做 Kc生成 Kc 的算法是 A8 ,因为 A3 和 A8 接受的输入完全相同,所以实现者偷了个懒,用一个算法同时生成 SRES 和 Kc 。在通信过程中的加密就是用 Kc 了,这个算法叫做 A5 ,因为 A5 的加密量很巨大,而且 SIM 卡的速度很慢,因此所有通信过程中的加密都是在手机上面完成的,这样一来,除非天下所有 GSM 手机都至少支持一种相同的 A5 算法,否则就没法漫游了,这时候运营商和设备商的懒惰又体现出来了,全世界目前只有一种通用的 A5 算法,没有其他的,这个算法就是和 Kc 的 8 字节序列进行简单的循环 XOR,再和报文序号做个减法。上面只是简单的介绍 GSM 的加密通信过程,实际上 GSM 的操作比这个还要复杂一些,比如除了第一次登录时候用真正的 IMSI ,之后都是用商定的临时标识TMSI ,不过这个不是今天讨论的重点。下面就来说说为啥手机卡/B可以被复制。从前面的介绍里面我们知道,要完成一次登录过程,IMSI 和 Ki 是必不可少的,A3 算法也需要知道,这其中 IMSI 是直接可读的,但是 A3 算法和存在你的卡里面的数据,都是不知道的,手机只是简单的把 RAND 给 SIM 卡 SIM 卡把算好的数据返回。实际设备中使用的 A3 算法被作为高级商业机密保护起来。但是世界上没有不透风的墙,在 1998 还是 1999 年的时候,有人从哪里偷到了几页纸的相关文档,然后把这文档输入了电脑。后来这个文档落到了加州伯克力几个教授手里面。这个文档里面缺少一些东西,而且还有写错的地方,这几个牛教授们拿一个 SIM 卡比对了一阵子,把缺的补上了,错的也给修正了,于是这个算法就成为了世人皆知的秘密。这个算法又被叫做 Comp128 ,他同时生成 SRES 和Kc ,代码在这个文件里面。光有了算法还是不能够得到在 SIM 卡里面保存的 Ki 理论上面是可以把 SIM卡拆了,然后把芯片接到特殊设备上面来读出 Ki ,但是这个听起来就像用小刀在硬盘上面刻操作系统一样不靠谱。于是很多有志之士就开始了对 Comp128 算法的攻击,在一开始大家想到的肯定是穷举,不过这个 GSM 的设计者也想到了,SIM 卡里面有个逻辑是一共只能查询 216 次左右,之后卡会自杀,让 XX 者啥都得不到。因此研究者们试图在可以接受的次数之内通过构造特定明文和分析输出秘文来分析出 Ki 的值,结果还真被大家发现出来了一些。在下面这个 pdf 里面有一些相关的内容介绍,IBM 的一个小组甚至用 6 次查询就可以彻底解出Ki,当然现在外面卖的那种拷卡器肯定没有这么牛,但是看表现似乎都可以在几分钟之内 XX 。随着时间的推移,针对 Comp128 的 XX 算法越来越成熟,商用的卡复制设备也越来越多,运营商们终于坐不住了。很多运营商都开始发行 Comp128 v2 加密算法的卡了。这其中就包括中国移动,我看了一下论坛上面的帖子,大部分都是在反映 05 年的新卡基本都没法用 simscan 之类软件读出 Ki 。Comp128 v2 算法是GSM 协会在 v1 被攻破以后,迅速在 v1 上面修改得来的结果,据说比较好的解决了 v1 算法中的弱点,当然,这个算法像 v1 一样,还是不公布于众。。而且到现在也没有人公布出来。这样一来,基本就没法解了。现在网上面很多拷卡设备厂商说的正在研发 v2 解码,我觉得基本是扯淡,这个既要有足够内线,能从设备商那里盗窃到 v2 的算法库或者从其他位置盗窃到文档, 还要有足够数学实力,能够找出算法漏洞
⑶ gsm系统为什么要采用鉴权和加密措施
客户的鉴权与加密是通过系统提供的客户三参数组来完成的。客户三参数组的产生是在GSM系统的AUC(鉴权中心)中完成,每个客户在签约 (注册登记)时,就被分配一个客户号码(客户电话号码)和客户识别码(IMSI)。IMSI通过SIM写卡机写入客户SIM卡中,同时在写卡机中又产生一个对应此IMSI的唯一的客户鉴权键Ki,它被分别存储在客户SIM卡和AUC中。
⑷ 请教高手给我解释一下 GSM移动通信原理
1).频谱效率。由于采用了高效调制器、信道编码、交织、均衡和语音编码技术,使系统具有高频谱效率。
2).容量。由于每个信道传输带宽增加,使同频复用栽干比要求降低至9dB,故GSM系统的同频复用模式可以缩小到4/12或3/9甚至更小(模拟系统为7/21);加上半速率话音编码的引入和自动话务分配以减少越区切换的次数,使GSM系统的容量效率(每兆赫每小区的信道数)比TACS系统高3~5倍。
3).话音质量。鉴于数字传输技术的特点以及GSM规范中有关空中接口和话音编码的定义,在门限值以上时,话音质量总是达到相同的水平而与无线传输质量无关。
4).开放的接口。GSM标准所提供的开放性接口,不仅限于空中接口,而且报刊网络直接以及网络中个设备实体之间,例如A接口和Abis接口。
GSM MODEM5). 安全性。通过鉴权、加密和TMSI号码的使用,达到安全的目的。鉴权用来验证用户的入网权利。加密用于空中接口,由SIM卡和网络AUC的密钥决定。TMSI是一个由业务网络给用户指定的临时识别号,以防止有人跟踪而泄漏其地理位置。
6).与ISDN、PSTN等的互连。与其他网络的互连通常利用现有的接口,如ISUP或TUP等。
7).在SIM卡基础上实现漫游。漫游是移动通信的重要特征,它标志着用户可以从一个网络自动进入另一个网络。GSM系统可以提供全球漫游,当然也需要网络运营者之间的某些协议,例如计费。 GSM - 技术 2GSM系统的技术规范及其主要性能
GSM标准共有12章规范系列,即:01系列:概述 02系列:业务方面 03系列:网络方面 04系列:MS-BS接口和规约(空中接口第2、3层) 05系列:无线路径上的物理层(空中接口第1层) 06系列:话音编码规范 07系列:对移动台的终端适配 08系列:BS到MSC接口(A和Abis接口) 09系列:网络互连 10系列:暂缺 11系列:设备和型号批准规范 12系列:操作和维护
3GSM系统关键技术
工作频段的分配
1).工作频段
中国陆地公用蜂窝数字移动通信网GSM通信系统采用900MHz频段:
890~915(移动台发、基站收)
935~960(基站发、移动台收)
双工间隔为45MHz,工作带宽为25 MHz,载频间隔为200 kHz。
随着业务的发展,可视需要向下扩展,或向1.8GHz频段的GSM1800过渡,即1800MHz频段:
1710~1785(移动台发、基站收)
1805~1880(基站发、移动台收)
双工间隔为95MHz,工作带宽为75 MHz,载频间隔为200 kHz。
2).频道间隔
相邻两频道间隔为200kHz。 每个频道采用时分多址接入(TDMA)方式,分为8个时隙,即8个信道(全速率)。每信道占用带宽200 kHz/8=25 kHz。
将来GSM采用半速率话音编码后,每个频道可容纳16个半速率信道。
3)多址方案
GSM通信系统采用的多址技术:频分多址(FDMA)和时分多址(TDMA)结合,还加上跳频技术。
GSM在无线路径上传输的一个基本概念是:传输的单位是约一百个调制比特的序列,它称为一个“突发脉冲”。脉冲持续时间优先,在无线频谱中也占一有限部分。它们在时间窗和频率窗内发送,我们称之为间隙。精确地讲,间隙的中心频率在系统频带内间隔200 kHz安排(FDMA情况),它们每隔0.577ms(更精确地是15/26ms)出现一次(TDMA情况)。对应于相同间隙的时间间隔称为一个时隙,它的持续时间将作为一种时间单位,称为BP(突发脉冲周期)。
这样一个间隙可以在时间/频率图中用一个长15/26ms,宽200KHz的小矩形表示(见图)。统一地,我们将GSM中规定的200KHz带宽称为一个频隙。
4)在时域和频域中的间隙
在GSM系统中,每个载频被定义为一个TDMA帧,相当于FDMA系统的一个频道。每帧包括8个时隙(TS0-7)。每个TDMA帧有一个TDMA帧号。
TDMA帧号是以3小时28分53秒760毫秒(2048*51*26*8BP或者说2048*51*26个TDMA帧)为周期循环编号的。每2048*51*26个TDMA帧为一个超高帧,每一个超高帧又可分为2048个超帧,一个超帧是51*26个TDMA帧的序列(6.12秒),每个超帧又是由复帧组成。复帧分为两种类型。
26帧的复帧:它包括26个TDMA帧(26*8BP),持续时长120ms。51个这样的复帧组成一个超帧。这种复帧用于携带TCH(和SACCH加FACCH)。
51帧的复帧:它包括51个TDMA帧(51*8BP),持续时长3060/13ms。26个这样的复帧组成一个超帧。这种复帧用于携带BCH和CCCH。
5)无线接口管理
在GSM通信系统中,可用无线信道数远小于潜在用户数,双向通信的信道只能在需要时才分配。这与标准电话网有很大的区别,在电话网中无论有无呼叫,每个终端都与一个交换机相连。
在移动网中,需要根据用户的呼叫动态地分配和释放无线信道。不论是移动台发出的呼叫,还是发往移动台的呼叫,其建立过程都要求用专门方法使移动台接入系统,从而获得一条信道。在GSM中,这个接入过程是在一条专用的移动台--基站信道上实现的。这个信道与用于传送寻呼信息的基站――移动台信道一起称为GSM的公用信道,因为它同时携带发自/发往许多移动台的信息。相反地,在一定时间内分配给一单独移动台的信道称作专用信道。由于这种区别,可以定义移动台的两种宏状态:
空闲模式:移动台在侦听广播信道,此时它不占用任一信道。
专用模式:一条双向信道分配给需要通信的移动台,使它可以利用基础设施进行双向点对点通信。
接入过程使移动台从空闲模式转到专用模式。
4GSM信道
GSM中的信道分为物理信道和逻辑信道,一个物理信道就为一个时隙(TS),而逻辑信道是根据BTS与MS之间传递的信息种类的不同而定义的不同逻辑信道,这些逻辑信道映射到物理信道上传送。从BTS到MS的方向称为下行链路,相反的方向称为上行链路。
逻辑信道又分为两大类,业务信道和控制信道。
1). 业务信道(TCH):
用于传送编码后的话音或客户数据,在上行和下行信道上,点对点(BTS对一个MS,或反之)方式传播。
2). 控制信道:
用于传送信令或同步数据。根据所需完成的功能又把控制信道定义成广播、公共及专用三种控制信道,它们又可细分为:
a.保密措施
GSM系统在安全性方面有了显着的改进,GSM与保密相关的功能有两个目标:第一,包含网络以防止未授权的接入,(同时保护用户不受欺骗性的假冒);第二,保护用户的隐私权。
防止未授权的接入是通过鉴权(即插入的SIM卡与移动台提供的用户标识码是否一致的安全性检查)实现的。从运营者方面看,该功能是头等重要的,尤其在国际漫游情况下,被访问网络并不能控制用户的记录,也不能控制它的付费能力。
保护用户的隐私是通过不同手段实现时,对传输加密可以防止在无线信道上窃听通信。大多数的信令也可以用同样方法保护,以防止第三方了解被叫方是谁。另外,以一个临时代号替代用户标识是使第三方无法在无线信道上跟踪GSM用户的又一机制。GSMb.PIN码
这是一种简单的鉴权方法。
在GSM系统中,客户签约等信息均被记录在SIM卡中。SIM卡插到某个GSM终端设备中,便视作自己的电话机,通话的计费帐单便记录在此SIM卡名下。为防止盗打,帐单上产生讹误计费,在SIM卡上设置了PIN码操作(类似计算机上的Password功能)。PIN码是由4~8位数字组成,其位数由客户自己决定。如客户输入了一个错误的PIN码,它会给客户一个提示,重新输入,若连续3次输入错误,SIM卡就被闭锁,即使将SIM卡拔出或关掉手机电源也无济于事,必须向运营商申请,由运营商为用户解锁。
c.鉴权
鉴权的计算如下图所示。其中RAND是网络侧对用户的提问,只有合法的用户才能够给出正确的回答SRES。
RAND是由网络侧AUC的随机数发生器产生的,长度为128比特,它的值随机地在0~2128-1(成千上万亿)范围内抽取。
SRES称为符号响应,通过用户唯一的密码参数(Ki)的计算获取,长度为32比特。
Ki以相当保密的方式存储于SIM卡和AUC中,用户也不了解自己的Ki,Ki可以是任意格式和长度的。
A3算法为鉴权算法,由运营者决定,该算法是保密的。A3算法的唯一限制是输入参数的长度(RAND是128比特)和输出参数尺寸(SRES必须是32比特)。
d.加密
在GSM中,传输链路中加密和解密处理的位置允许所有专用模式下的发送数据都用一种方法保护。发送数据可以是用户信息(语音、数据……),与用户相关的信令(例如携带被呼号码的消息),甚至是与系统相关信令(例如携带着准备切换的无线测量结果的消息)。
加密和解密是对114个无线突发脉冲编码比特与一个由特殊算法产生的114比特加密序列进行异或运算(A5算法)完成的。为获得每个突发加密序列,A5对两个输入进行计算:一个是帧号码,另一个是移动台与网络之间同意的密钥(称为Kc),见图。上行链路和下行链路上使用两个不同的序列:对每一个突发,一个序列用于移动台内的加密,并作为BTS中的解密序列;而另一个序列用于BTS的加密,并作为移动台的解密序列。
d-1.帧号:
帧号编码成一连串的三个值,总共加起来22比特。
对于各种无线信道,每个突发的帧号都不同,所有同一方向上给定通信的每个突发使用不同的加密序列。
d-2.A5算法
A5算法必须在国际范围内规定,该算法可以描述成由22比特长的参数(帧号码)和64比特长参数(Kc)生成两个114比特长的序列的黑盒子。
d-3.密钥Kc
开始加密之前,密钥Kc必须是移动台和网络同意的。GSM中选择在鉴权期间计算密钥Kc;然后把密钥存贮于SIM卡的永久内存中。在网络一侧,这个“潜在”的密钥也存贮于拜访MSC/VLR中,以备加密开始时使用。
由RAND(与用于鉴权的相同)和Ki计算Kc的算法为A8算法。与A3算法(由RAND和Ki计算SRES的鉴权算法)类似,可由运营者选择决定。
d-4.用户身份保护
加密对于机密信息十分有效,但不能用来在无线路径上保护每一次信息交换。首先,加密不能应用于公共信道;其次,当移动台转到专用信道,网络还不知道用户身份时,也不能加密。第三方就有可能在这两种情况下帧听到用户身份,从而得知该用户此时漫游到的地点。这对于用户的隐私性来说是有害的,GSM中为确保这种机密性引入了一个特殊的功能。
在可能的情况下通过使用临时移动用户身份号TMSI替代用户身份IMSI,可以得到保护。TMSI由MSC/VLR分配,并不断地进行更换,更换周期由网络运营者设置。 GSM - 系统的组成移动交换子系统MSS完成信息交换、用户信息管理、呼叫接续、号码管理等功能。
基站子系统BSS
BSS系统是在一定的无线覆盖区中由MSC控制,与MS进行通信的系统设备,完成信道的分配、用户的接入和寻呼、信息的传送等功能。
移动台MS
MS是GSM系统的移动用户设备,它由两部分组成,移动终端和客户识别卡(SIM卡)。移动终端就是“机”,它可完成话音编码、信道编码、信息加密、信息的调制和解调、信息发射和接收。SIM卡就是“人”,它类似于我们现在所用的IC卡,因此也称作智能卡,存有认证客户身份所需的所有信息,并能执行一些与安全保密有关的重要信息,以防止非法客户进入网路。SIM卡还存储与网路和客户有关的管理数据,只有插入SIM卡后移动终端才能接入进网。
操作维护子系统
GSM子系统还包括操作维护子系统(OMC),对整个GSM网络进行管理和监控。通过它实现对GSM网内各种部件功能的监视、状态报告、故障诊断等功能。GSM GSM - 发展现状 20世纪80年代中期,当模拟蜂窝移动通信系统刚投放市场时,世界上的发达国家就在研制第二代移动通信系统。其中最有代表性和比较成熟的制式有泛欧GSM ,美国的ADC(D-AMPS)和日本的JDC(现在改名为PDC)等数字移动通信系统。在这些数字系统中,GSM的发展最引人注目。1991年GSM系统正式在欧洲问世,网络开通运行。GSM系列主要有GSM900、DCS1800和PCS1900三部分,三者之间的主要区别是工作频段的差异。蜂窝移动通信的出现可以说是移动通信的一次革命。其频率复用大大提高了频率利用率并增大系统容量,网络的智能化实现了越区转接和漫游功能,扩大了客户的服务范围,但上述模拟系统有四大缺点:各系统间没有公共接口;很难开展数据承载业务;频谱利用率低无法适应大容量的需求;安全保密性差,易被窃听,易做“假机”。尤其是在欧洲系统间没有公共接口,相互之间不能漫游,对客户造成很大的不便。GSM数字移动通信系统源于欧洲。早在1982年,欧洲已有几大模拟蜂窝移动系统在运营,例如北欧多国的NMT(北欧移动电话)和英国的TACS(全接入通信系统),西欧其它各国也提供移动业务。当时这些系统是国内系统,不可能在国外使用。为了方便全欧洲统一使用移动电话,需要一种公共的系统,1982年,北欧国家向CEPT(欧洲邮电行政大会)提交了一份建议书,要求制定900MHz频段的公共欧洲电信业务规范。在这次大会上就成立了一个在欧洲电信标准学会(ETSI)技术委员会下的“移动特别小组(Group Special Mobile)”,简称“GSM”,来制定有关的标准和建议书。中国自从1992年在嘉兴建立和开通第一个GSM演示系统,并于1993年9月正式开放业务以来,全国各地的移动通信系统中大多采用GSM系统,使得GSM系统成为目前中国最成熟和市场占有量最大得一种数字蜂窝系统。截至2002年11月,中国手机用户2亿,比2001年年底新增5509.2万。GSM系统有几项重要特点:防盗拷能力佳、网络容量大、手机号码资源丰富、通话清晰、稳定性强不易受干扰、信息灵敏、通话死角少、手机耗电量低。目前中国主要的两大GSM系统为GSM 900及GSM1800,由于采用了不同频率,因此适用的手机也不尽相同。不过目前大多数手机基本是双频手机,可以自由在这两个频段间切换。欧洲国家普遍采用的系统除GSM900和GSM1800另外加入了GSM1900,手机为三频手机。中国随着手机市场的进一步发展,现也已出现了三频手机,即可在GSM900\GSM1800\GSM1900三种频段内自由切换的手机,真正做到了一部手机可以畅游全世界。GSM早期来看,GSM900发展的时间较早,使用的较多,反之GSM1800发展的时间较晚。物理特性方面,前者频谱较低,波长较长,穿透力较差,但传送的距离较远,而手机发射功率较强,耗电量较大,因此待机时间较短;而后者的频谱较高,波长较短,穿透力佳。但传送的距离短,其手机的发射功率较小,待机时间则相应地较长。
紧急呼叫是GSM系统特有的一种话音业务功能。即使在GSM手机设置了限制呼出和没有插入用户识别卡(SIM)的情况下,只要在GSM网覆盖的区域内,用户仅需按一个键,便可将预先设定的特殊号码(如110、119、120等)发至相应的单位(警察局、消防队、急救中心等)。这一简化的拨号方式是为在紧急时刻来不及进行复杂操作而专门设计的。
⑸ GSM鉴权管理的安全性算法
GSM系统使用三种算法用于鉴权和加密的目的,这些处算法是A3,A5和A8。A3被用于鉴权,A8用于产生加密密钥以及A5用于加密。
算法A3和A8位于SIM卡模块和鉴权中心中,A5位于移动台和BTS中。
运营者开始使用安全功能之前,移动用户已经在鉴权中心被创建。以下是创建用户所需要的信息:
(1)用户的IMSI
(2)用户的Ki
(3)使用的算法版本
同样的信息也存储在移动用户的SIM卡中。GSM安全功能的基本原理是比较存储在网络中的数据和存储在用SIM卡中的数据。IMSI号码是移动用户的唯一识别码,Ki 是一个长度为32位十六进制数的鉴权密钥,A3和A8算法使用这些数字作为鉴权的基本参数。鉴权中心产生能用于一个事务处理期间、所有的安全性目的的信息。这个信息称为鉴权数据组。
鉴权数据组由三个数字组成:
(1)RAND
(2)SRES
(3)KC.
RAND是一个随机数,SRES(签字应答)是算法A3在一定源信息基础上产生的结果,KC 是A8在一定源信息的基础上产生的加密密钥。
鉴权数据组中的三个值彼此相互联系,即某个RAND和KC 通过某种算法总是产生某个SRES和一个KC 。
当VLR 拥有这类三个值的组合时,就可以启动移动用户的鉴权过程,VLR通过BSS以送随机数RAND至移动台中的SIM卡。由于SIM拥有和网络方产生数组使用的完全相同的算法,SIM收到的随机数通过算法应该产生与网络方产生的SRES值完全相同。如果鉴权数据中的SRES与移动如计算和发送的SRES一样的话,那么鉴权过程就成功了。
⑹ GSM的加密算法是什么啊
A3 算法(A3 Algorithm)是用于对全球移动通讯系统(GSM)蜂窝通信进行加密的一种算法。实际上,A3 和 A8 算法通常被同时执行(也叫做 A3/A8)。一个 A3/A8 算法在用户识别(SIM)卡和在 GSM 网络认证中心中执行。它被用于鉴别用户和产生加密语音和数据通信的密钥,正如在 3GPP TS 43.020(Rel-4 前的 03.20)定义的一样。尽管实例执行是可行的,但 A3 和 A8 算法被认为是个人 GSM 网络操作者的事情。