`
climber2002
  • 浏览: 64430 次
  • 性别: Icon_minigender_1
  • 来自: 法国
社区版块
存档分类
最新评论

谈谈OTA(1)

    博客分类:
  • OTA
阅读更多
以前还从来没写过技术类博客,今天新开一个栏目叫OTA,这三个字母就是我现在从事的工作了。OTA是Over the Air的缩写,我呢,就是做OTA服务器的。那么OTA到底是干什么的呢,它最主要的作用就是往你的SIM卡和手机动态安装一些程序或者更改一些配置,以前主要是用发短信的方式来做这件事,不过随着3G网络的到来,现在也会用BIP或者CATTP这些速度更快的协议对SIM卡发送信息了。我们平时发送的短信都是文本短信,这里的短信一般都是二进制短信,它里面封装了一个或多个APDU,手机收到短信后会把短信内容发给SIM卡,然后SIM卡会根据APDU来执行相应的操作,然后把结果返回。可能有一天你打开手机的时候,发现手机里怎么突然多了一个菜单或者手机里面的某些配置变了,这一般就是OTA在神不知鬼不觉的时候干的了。以前你要往SIM卡里面加点东西可能要跑一趟营业厅,但是现在不用了,一条短信就可以搞定。

今天首先介绍一些基本概念跟术语把,不过因为我主要做服务器端,对卡端也是在学习中,所以这些描述可能会有错误。首先谈谈SIM卡,SIM卡就是智能卡的一种,从它的全称Subscriber Identity Module也可以看出,它保存的主要是用户的身份信息,SIM卡里面基本就是一个非常小型的电脑,它有CPU, ROM,RAM和EEPROM等等。SIM卡里面也有文件的概念,是按文件夹的形式组织的,根目录叫做MF(Master File),目录叫DF(Dedicated File),文件叫做EF(Elementary File)。像你的短信,电话簿等等都是以文件的形式存在SIM卡中的。在2G时代SIM卡里面的操作系统跟应用基本上是分不开的,在3G时代操作系统跟应用分开了,也就是说卡里面不仅可以装通信有关的应用,还可以装跟银行等等有关的应用(当然只是技术上可行,真正实现还要这些公司相互协调)。这样的卡叫做USIM。如果描述的东西对2G3G卡都适用的时候,一般写成(U)SIM。

在手机里面有一个读卡器,读卡器跟(U)SIM卡之间是半双工、master-slave的通信方式,读卡器给卡发送一个APDU,也就是一个Command,然后卡执行这个APDU,然后返回一个成功或者失败的响应。然后手机发送下一个命令,就这样直到关机。

然后介绍几个术语,我们的手机号一般叫做MSISDN,在卡里面有一个文件保存了IMSI,在移动的服务器上保存了MSISDN和IMSI的对应关系,比如如果你的卡丢了,去移动补办一张新卡,移动只需要把新卡的IMSI跟你的MSISDN重新关联起来就行了,旧卡就作废了。在卡里面还有一个东西叫做KI,这就是你的手机卡的密钥了,它跟IMSI一起用来登录你的无线网络。看过《伯恩的身份》吗,里面伯恩复制一张手机卡主要就是复制两个东西:IMSI和KI,有了这两个东西,你就可以复制别人的SIM卡了。IMSI可以通过普通的APDU读出来,但是KI是读不出来的,如果要解密只能往卡上发大量的明文,然后根据KI加密后的密文进行比对来解出KI。 OK,扯的太远了,手机发送一条短信一般是发到短信中心(SMSC),然后短信中心转发给接收方。如果手机发送一条短信,这条短信就叫做MO(Mobile Originated),如果手机收到一条短信,这条短信就叫做MT(Mobile Terminated)。说了这么多,是不是很枯燥?好,要是有人有兴趣的话我下次再讲点^_^
7
1
分享到:
评论
2 楼 guaerjia 2009-09-10  
有兴趣,再多讲点吧
1 楼 xiasheng 2009-04-21  
不错了,希望能看到的你的后续文章,最好把它们之间的工作方式也细细描述一下

相关推荐

    ota_master.rar_OTA_OTA Master_ble_ble ota_ota 升级

    1. **BLE设备的无线升级烧录**: BLE设备广泛应用于各种低功耗IoT产品,如智能手表、健身追踪器、智能家居设备等。无线升级烧录是通过BLE协议实现的,它允许设备通过蓝牙连接接收新的固件文件,并进行安全验证和...

    两级OTA或Cascode OTA设计

    标题“两级OTA或Cascode OTA设计”所指向的知识点主要围绕差分放大器的一种特殊设计——运算跨导放大器(Operational Transconductance Amplifier,简称OTA)及其在模拟集成电路中的应用。OTA是一种可以将输入电压...

    Android OTA代码简单分析.doc

    Android OTA代码简单分析 Android OTA(Over-The-Air)升级是Android操作系统中的一种重要功能,允许设备远程升级固件,提高了设备的安全性和可靠性。本文将对Android OTA代码进行简单分析,涵盖OTA版本编译及包...

    20、ESP32的空中升级(OTA)1

    - **更新策略**:采用交替式升级策略,即在两个OTA分区(OTA_0和OTA_1)之间切换。首次升级时,目标App会被烧录到OTA_0分区,之后的升级会在两个分区之间轮流进行。 ### 知识点五:ESP32 Flash空间分区配置 - **...

    Android OTA升级流程

    Android OTA(Over-The-Air)升级流程是智能手机中一种常见的无线更新机制,允许设备通过移动网络或Wi-Fi连接下载并安装新版本的系统或应用程序。这个过程不仅涉及软件更新,还涉及到确保更新的安全性和正确性。以下...

    OTA升级流程1

    1. **接收升级信息**: 设备通过`colinkUpgradeRequestCb`回调函数接收到升级通知,其中包括`new_ver`(新版本信息)、`file_list`(固件相关信息)和`downloadUrl`(下载链接)。`file_list`包含了多个固件文件,...

    ESP32-OTA.zip 学习ESP32串口ota样例程序

    1. **什么是ESP32的串口OTA更新** ESP32的串口OTA允许开发者在设备部署后远程升级固件,无需物理接触设备。这种方法尤其适用于安装在难以触及位置或大量分布的设备。串口OTA通过UART(通用异步收发传输器)接口进行...

    BES OTA 升级 android源码

    1. **升级工具链**:用于构建和打包 OTA 更新的工具,如 `ota_from_target_files` 和 `incremental.sh`。 2. **签名工具**:如 `signapk.jar`,用于对升级包进行签名验证。 3. **升级服务**:在 Android 系统中...

    Google OTA机制介绍

    1. **OTA更新包结构**:OTA更新包通常包含一系列指令与数据,用于指导系统如何安装更新。这些包被精心设计成能够安全高效地更新设备上的操作系统和应用程序。 2. **恢复分区的作用**:设备上存在一个特殊的恢复分区...

    OTA7290B 数据手册

    1. **MIPI接口支持**: MIPI(Mobile Industry Processor Interface)是一种高速、低功耗的串行接口,用于移动设备和其他嵌入式系统的内部通信。OTA7290B支持MIPI接口,允许与各种MIPI兼容的设备进行高效的数据传输...

    telink 手机ota apk

    标题中的“telink 手机ota apk”指的是泰凌微电子公司提供的用于手机Over-the-Air(OTA)更新的应用程序。OTA更新是一种无线技术,允许设备通过网络接收软件更新、固件升级或应用程序的新版本,而无需通过USB线缆或...

    STM32F769_OTA_APP_stm32OTA_OTA_stm32otademo_STM32OTA升级_stm32wifi

    STM32F769_OTA_APP_stm32OTA_OTA_stm32otademo_STM32OTA升级_stm32wifi这个主题主要涉及STM32微控制器的空中更新(OTA)功能,利用WiFi连接从远程服务器下载固件升级包。STM32系列是意法半导体(STMicroelectronics...

    RT-Thread-OTA 用户手册 .pdf

    RT-Thread-OTA用户手册介绍了RT-Thread操作系统下的在线固件升级技术(Firmware Over-the-Air Technology, OTA),该技术允许开发者轻松实现对嵌入式设备固件的远程管理、升级和维护。手册中详细阐述了OTA技术的特点...

    ESP32 simple_ota_example

    1. 安装VSCODE和ESP-IDF插件,配置ESP-IDF开发环境。 2. 下载并编译ESP32的OTA示例代码。 3. 设置本地HTTP服务器,用以托管新固件的二进制文件。 4. 修改示例代码中的OTA服务器地址和端口,以便指向你的HTTP服务器。...

    OTA流程说明1

    OTA(Over-The-Air)是一种通过无线网络对设备进行固件升级的技术,广泛应用于物联网(IoT)领域,包括STM32这样的微控制器系统。在STM32的OTA流程中,涉及了多个关键组件和协议,以下是这个流程的详细解释: 1. **...

    C语言实现ota升级代码

    1. **文件下载**:OTA升级的第一步是下载新的固件或者软件包。这通常需要用到HTTP或FTP协议来从服务器获取文件。C语言中可以使用libcurl库来实现网络下载功能,它可以处理各种网络协议,并且提供了丰富的API供开发者...

    Android AB OTA系统1

    Android A/B OTA 系统详解 Android A/B OTA 系统是 Android 操作系统中的一种升级机制,旨在提高系统升级的成功率。该系统采用了双分区结构,分别为 A 分区和 B 分区,在升级过程中,保证至少有一个可正常运行的...

    ESP32 OTA升级双OTA分区无factory分区

    在ota升级的基础上,同时增加BLUFI蓝牙配网。 满足配网和升级的两个最基本的功能。

    Tlsr8258-OTA升级工具

    1. **固件打包**:将新的软件代码、配置文件等打包成适合空中传输的格式,确保数据完整性和安全性。 2. **升级流程管理**:提供升级过程的控制机制,如检查设备当前固件版本,确保只升级到更高版本,防止降级攻击。...

Global site tag (gtag.js) - Google Analytics