CN109905237B - 通过移动站与蜂窝网络通信的方法 - Google Patents

通过移动站与蜂窝网络通信的方法 Download PDF

Info

Publication number
CN109905237B
CN109905237B CN201910054051.5A CN201910054051A CN109905237B CN 109905237 B CN109905237 B CN 109905237B CN 201910054051 A CN201910054051 A CN 201910054051A CN 109905237 B CN109905237 B CN 109905237B
Authority
CN
China
Prior art keywords
virtual
data
euicc
baseband processor
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910054051.5A
Other languages
English (en)
Other versions
CN109905237A (zh
Inventor
伊斯梅拉·瓦内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Simless Inc
Original Assignee
Simless Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Simless Inc filed Critical Simless Inc
Publication of CN109905237A publication Critical patent/CN109905237A/zh
Application granted granted Critical
Publication of CN109905237B publication Critical patent/CN109905237B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Telephone Function (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明涉及通过移动站与蜂窝网络通信的方法,该方法包括:在移动站中,设置物理连接至基带处理器的应用处理器,其中,物理连接有助于命令从由基带处理器承载的蜂窝调制解调器应用至应用处理器的安全传输;以及响应于从基带处理器接收一个或多个命令,通过在应用处理器上运行的移动应用与没有物理或电连接至所述基带处理器的虚拟可再编程通用集成电路芯片通信。

Description

通过移动站与蜂窝网络通信的方法
本申请是国际申请号为PCT/IB2016/050708、国际申请日为2016年2月10日、发明名称为“用于虚拟化可再编程的通用集成电路芯片的装置、方法以及系统”的PCT申请的中国国家阶段申请201680041546.9的分案申请,其全部内容结合于此作为参考。
技术领域
本发明的示例性实施方式主要涉及软件安全性、虚拟化以及电信领域,并且更具体地,涉及可再编程的通用集成电路芯片的软件的仿真技术。
背景技术
根据GSM协会(GSMA),每年全球部署超过50亿用户识别模块(SIM)。此外,根据各个行业报告,到2020年,所谓的物联网(IoT)中存在超过500亿的连接设备。通常通过被集成到这些IoT设备中的物理SIM卡而经由蜂窝网络促进对互联网的访问。
因此,希望将连接功能添加到设备中的OEM需要设计获知设备能力而捕获传感器数据并且与用于特定应用任务的远程服务器进行通信的应用。使用常规方法,这将要求获得物理SIM卡并且将物理SM卡集成到被制造的潜在数十亿设备中。这些物理SIM卡通常需要被集成到这些设备的印刷电路板(PCB)中的无线模块。无线模块与物理SIM将增加这样的设备的材料成本(BoM)。进一步地,OEM制造商需要寻找并且选择在将部署连接设备的地理区域上提供覆盖的移动网络运营商(MNO)。选择过程可以取决于诸如定价、网络质量、覆盖等各种参数。然而,由于全球存在数千个蜂窝网络运营商,且许多国家存在平均4个以上蜂窝网络运营商,所以对管理对这些设备的连接性访问的这些OEM和/或第三方实体来说,发现和选择过程迅速变得极具挑战性。第三方实体可以是拥有这些连接设备的企业或消费者,本文中可以互换地被称之为连接(或IoT)设备的所有者。
鉴于上述问题,在访问管理人与事物实质上时移动的全球市场中的连接设备的消费者和企业所面对的局部蜂窝网络时,存在明显的冲突。因为访问依赖于SIM卡的使用,所以因SIM卡的当前物理性质而扩大了这种冲突。
从标准的2FF卡(迷你SIM)至4FF卡(纳米SIM),现在SIM卡已经演化成MFF2形式因数,这主要用于机器到机器(M2M)应用。MFF2形式因数的引入及其到物联网(IoT)的后续更小迭代从根本上改变了IoT设备的制造与部署。
在2013年12月,作为移动运营商及有关公司的最大协会的GSMA基本上标准化了如何架构并且远程提供可再编程的SIM卡。由于标准化努力的结果,很快许多新的使用情况通过相互操作方式是可能的。这些使用情况包括能够在不物理改变SIM卡的情况下无缝地选择并且切换蜂窝网络。
尽管主要针对M2M设备开发了GSMA规范,然而,也没有任何事物阻碍本领域技术人员使用GSMA规范用于其他类型的连接设备。因此,这样做排除了在国际漫游情形或在具有多个蜂窝载波的局部地理区域中人与事物所面对的切换网络的当前冲突。这使得人与设备能够动态地改变蜂窝网络,以基于对价格、数据速度、网络质量等的优先级而提取移动通信需求的最佳值。
对于地方电信监管机构,虚拟SIM卡技术降低了切换网络的壁垒并且由此促进了健康与竞争性的电信发展前景,即,MNO与移动虚拟网络运营商(MVNO)在价格、服务质量以及创新方面进行竞争。
对于OEM,虚拟SIM卡技术在印刷电路板组装(PCBA)设计方面提供了更大的空间,从而允许整合附加的传感器或其他芯片部件并且由此优化PCB布局。还消除了“配套”环境中应对由MNO批准的各个SIM卡零售商的复杂性。
MNO也持久获得来自虚拟SIM卡技术的无限利益。因为M(V)NO服务发现、选择以及提供能够全在在“云”上远程实现,所以该技术有助于增强分布。因此,这样的移动应用有助于有效地使许多国家现行的冗余了解你的客户(KYC)程序流线化。而且,对于所有的M(V)NO,无论市场位置如何,该技术通过去除与管理物理SIM卡相关联的固有逻辑竞争性而能够消除采购、测试、认证以及分配物理SIM卡的成本。这就能够使得MNO将资本消费与管理精力更好地集中于网络能力、覆盖率、以及其他差异化服务。最后,该技术可以降低获取并且保持用户的当前成本,由此潜在地改进了M(V)NO的底线。
最后,虚拟SIM卡技术通过降低全球制造的SIM卡的整个量而可以提供重要的环境益处。仍然不清楚每年生产的数十亿SIM卡中的大多数是否仍不是不含卤素(因为卤素是有毒的腐蚀性的)的,这因此对人的健康和环境具有潜在的危害。
发明内容
本文中描述的示例性实施方式详述可用于完全仿真连接设备操作系统(其在连接设备的应用处理器上运行)中的可再编程嵌入式通用集成电路芯片(eUICC)的设备配置。更具体地,示例性实施方式示出了在片上系统的专用应用处理器上运行的片上虚拟(软件)eUICC。鉴于此,示例性实施方式可以结合于2015年9月17日提交的美国非临时专利申请号14/856,974及2015年11月6日提交的美国专利申请号14/934,310中之前描述的各个元件。将这两个申请的全部内容结合在此。
在通过连接设备(例如,用户设备或IoT设备)实现的示例性实施方式中,连接设备中的集成式蜂窝调制解调器被配置为使用简单的协议以与虚拟eUICC通信。该协议可以通过下列方式实现,即,允许蜂窝调制解调器零售商快速并且具有成本效益地支持其功能,并且进一步允许原设备制造商经由简单的空中固件(over-the-air)升级提供在该区域中已经部署的连接设备中的功能。
在第一示例性实施方式中,提供了一种移动站。移动站包括被配置为以多激活模式与多个蜂窝网络通信的调制解调器和至少一个天线。移动站进一步包括物理连接至基带处理器的应用处理器,其中,物理连接有助于命令从由基带处理器承载(host,管理)的蜂窝调制解调器应用至应用处理器的安全传输。此外,移动站包括存储计算机可执行指令的一个或多个存储器,当被执行时,计算机可执行指令将在应用处理器上运行的移动应用配置为响应于接收到来自基带处理器的命令而与没有物理或电连接至基带处理器的虚拟可再编程通用集成电路芯片(eUICC)通信。
在一些实施方式中,虚拟eUICC存储在应用处理器的受信任的执行环境(TEE)内。在一些该实施方式中,TEE使用一个或多个物理不可克隆功能(PUF)提供对虚拟eUICC的访问。在这点上,PUF中的至少一个可以包括生物信号源。
在一些中,生物信号源包括生物特征信息捕获元件,其中,通过生物特征信息捕获元件捕获用户提供的生物特征信息。在一些该实施方式中,生物特征信息捕获元件包括内置的指纹扫描仪或摄像机设备。
在一些实施方式中,当被执行时,计算机可执行指令进一步形成虚拟机的配置以承载虚拟的eUICC。在一些该实施方式中,当被执行时,计算机可执行指令通过进行下列操作而形成虚拟机的配置:利用用户提供的生物特征信息作为参数初始化虚拟机的数据存储模块以创建加密、解密、以及签名密钥;一旦每个设备被启动,则对数据存储模块进行加载;使用加密与解密密钥对与虚拟机相关联的数据进行加密和解密;使用签名密钥对与虚拟机相关联的数据进行数字签名;并且将数字签名的数据存储在存储内存中。在这点上,数字签名的数据可以包括GSM文件系统、一个或多个Java卡应用以及一个或多个网络认证密钥中的至少一个,其中,数字签名的数据被格式化成数据块。在一个实施方式中,存储内存将数据块保存在日志文件系统中。此外或可替代地,对数据进行数字签名包括:利用签名密钥对数据的校验和或哈希值进行签名。而且,对数据进行数字签名可以包括:计算数据的冗余校验值;并且利用随机密钥对冗余校验值进行签名。
在一些实施方式中,由远离移动站的设备承载虚拟的eUICC。
在一些实施方式中,基带处理器被编程为非电附接至虚拟的eUICC。在一些该实施方式中,非电附接可以包括由基带处理器发起的命令向应用处理器的传输。在这点上,应用处理器的无线电接口层可被配置为对命令进行解释并且将命令转发至虚拟的eUICC。
在一些实施方式中,虚拟eUICC被配置为接收来自基带处理器的间接请求并且生成对间接请求的响应。在一些该实施方式中,计算机可执行指令将应用处理器配置成经由应用处理器的无线电接口层与虚拟eUICC通信,无线电接口层被配置为接收针对间接请求生成的响应并且将生成的响应转发至基带处理器。
在另一示例性实施方式中,提供了一种用于通过包括调制解调器和至少一个天线的移动站以多激活模式与多个蜂窝网络通信的方法。方法包括:在移动站中,设置物理连接至基带处理器的应用处理器,其中,物理连接有助于命令从由基带处理器承载的蜂窝调制解调器应用至应用处理器的安全传输。方法进一步包括:响应于接收到来自基带处理器的命令,通过在应用处理器上运行的移动应用与没有物理或电连接至基带处理器的虚拟可再编程通用集成电路芯片(eUICC)通信。
在一些实施方式中,虚拟eUICC存储在应用处理器的受信任的执行环境(TEE)内。在一些该实施方式中,TEE使用一个或多个物理不可克隆功能(PUF)提供对虚拟eUICC的访问。关于这一点,PUF中的至少一个可以包括生物信号源。
在一些实施方式中,移动设备进一步包括生物特征信息捕获元件,并且其中,方法包括:使用生物特征信息捕获元件捕获用户提供的生物特征信息。在一些该实施方式中,生物特征信息捕获元件包括内置的指纹扫描仪或摄像机设备。
在一些实施方式中,方法包括:形成虚拟机的配置以承载虚拟的eUICC。关于这一点,形成虚拟机的配置包括使得:利用用户提供的生物特征信息作为参数初始化虚拟机的数据存储模块以创建加密、解密、以及签名密钥;一旦各个设备被启动,则对数据存储模块进行加载;使用加密与解密密钥对与虚拟机相关联的数据进行加密和解密;使用签名密钥对与虚拟机相关联的数据进行数字签名;并且将数字签名数据存储在存储内存中。例如,数字签名数据可以包括GSM文件系统、一个或多个Java卡应用以及一个或多个网络认证密钥中的至少一个,并且数字签名的数据可以被格式化成数据块。此外或可替代地,方法可以包括:将数据块保存在存储内存的日志文件系统中。
在一些实施方式中,对数据进行数字签名包括:利用签名密钥对数据的校验和或哈希值进行签名。在一些实施方式中,其中,对数据进行数字签名包括:计算数据的冗余校验值;并且利用随机密钥对冗余校验值进行签名。
在一些实施方式中,由远离移动站的设备承载虚拟的eUICC。
在一些实施方式中,方法进一步包括:通过移动站的基带处理器非电附接至虚拟的eUICC。在一些该实施方式中,非电附接可以包括由基带处理器发起的命令向应用处理器的传输。在这一点上,方法可以进一步包括:通过应用处理器的无线电接口层对命令进行解释;并且通过用处理器的无线电接口层将命令转发至虚拟的eUICC。
在一些实施方式中,虚拟的eUICC被配置为接收来自基带处理器的间接请求并且针对间接请求生成响应。在一些该实施方式中,通过应用处理器与虚拟eUICC通信包括:通过应用处理器的无线电接口层接收针对间接请求生成的响应;并且通过应用处理器的无线电接口层将生成的响应转发至基带处理器。
在又一示例性实施方式中,提供了一种移动站。移动站包括用于以多激活模式与多个蜂窝网络通信的装置、及物理连接至基带处理器的应用处理器,其中,物理连接有助于命令从由基带处理器承载的蜂窝调制解调器应用至应用处理器的安全传输。移动站进一步包括用于通过应用处理器并且响应于接收到来自基带处理器的命令而与没有物理或电连接至基带处理器的虚拟可再编程通用集成电路芯片(eUICC)通信的装置。
在一些实施方式中,虚拟eUICC存储在应用处理器的受信任的执行环境(TEE)内。在一些该实施方式中,TEE使用一个或多个物理不可克隆功能(PUF)提供对虚拟eUICC的访问。在这一点上,PUF中的至少一个可以包括生物信号源。
在一些实施方式中,生物信号源包括生物特征信息捕获元件,其中,通过生物特征信息捕获元件捕获用户提供的生物特征信息。例如,生物特征信息捕获元件可以包括内置的指纹扫描仪或摄像机设备。
在一些实施方式中,移动站包括用于形成虚拟机的配置以承载虚拟的eUICC的装置。在这一点上,用于形成虚拟机的配置的装置包括:利用用户提供的生物特征信息作为参数初始化虚拟机的数据存储模块以创建加密、解密、以及签名密钥的装置;用于一旦各个设备被启动使数据存储模块进行加载的装置;用于使用加密和解密密钥而对与虚拟机相关联的数据进行加密和解密的装置;用于使用签名密钥而对与虚拟机相关联的数据进行数字签名的装置;以及用于将数字签名数据存储在存储内存中的装置。
在一些该实施方式中,数字签名数据包括GSM文件系统、一个或多个Java卡应用以及一个或多个网络认证密钥中的至少一个,并且数字签名数据可以被格式化成数据块。此外或可替代地,存储内存将数据块保存在日志文件系统中。而且,在一些实施方式中,对与虚拟机相关联的数据进行数字签名包括:利用签名密钥对数据的校验和或哈希值进行签名。此外或可替代地,用于对与虚拟机相关联的数据进行数字签名的装置包括用于计算数据的冗余校验值的装置及用于利用随机密钥对冗余校验值进行签名的装置。
在一些实施方式中,由远离移动站的设备承载虚拟的eUICC。
在一些实施方式中,移动站进一步包括用于将基带处理器非电附接至虚拟eUICC的装置。在一些该实施方式中,非电附接可以包括由基带处理器发起的命令向应用处理器的传输。鉴于此,应用处理器可以进一步包括用于对命令进行解释的装置及用于将命令转发至虚拟eUICC的装置。
在一些实施方式中,虚拟eUICC被配置为接收来自基带处理器的间接请求并且针对间接请求生成响应。在一些该实施方式中,用于通过应用处理器与虚拟eUICC通信的装置包括用于接收针对间接请求生成的响应的装置及用于将生成的响应转发至基带处理器的装置。
此外,应当理解的是,本文中描述的实施方式可以利用生物特征信息而安全地配置在移动设备的应用中操作的Java卡虚拟机。
尽管在一些情形中受信任的执行环境(TEE)可以用于提供虚拟eUICC的安全容器,并且尽管近年来TEE支持设备已经得到广泛部署,然而,从开发者角度而言,其仍未得到充分利用并且仍是碎片式的。进一步地,存在TEE不可用的许多情形。
本文中描述的示例性实施方式提供了用于在受信任的执行环境不可用的情形下确保在应用处理器上运行的虚拟eUICC安全的配置。如下面更为详细公开的,示例性实施方式利用结合加密文件系统的生物特征信息来确保在应用处理器上运行的虚拟eUICC安全。该实施方式采用生物特征数据的不可克隆特性(例如,指纹、面部图像等)。在一些实施方式中,当要求端用户执行仅端用户已知的一组运动(例如,以特定模式摇动移动设备)时,这样的不可克隆特性还利用诸如加速计和/或陀螺仪数据等的其他传感器信息。
在另一示例性实施方式中,提供了一种移动站。移动站包括被配置为与多个蜂窝网络通信的调制解调器和至少一个天线。移动站进一步包括存储计算机可执行指令的一个或多个存储器,当被执行时,计算机可执行指令将在处理器上运行的移动应用配置为有助于调制解调器与没有物理或电连接至调制解调器的虚拟可再编程通用集成电路芯片(eUICC)之间的通信,其中,使用用户提供的生物特征信息保持虚拟eUICC的安全性。
在一些实施方式中,移动站包括生物特征信息捕获元件,其中,通过生物特征信息捕获元件捕获用户提供的生物特征信息。在一些该实施方式中,生物特征信息捕获元件包括内置的指纹扫描仪或摄像机设备。
在一些实施方式中,当被执行时,计算机可执行指令进一步形成虚拟机的配置以承载虚拟的eUICC。在一些该实施方式中,当被执行时,计算机可执行指令通过进行下列操作而形成虚拟机的配置:利用用户提供的生物特征信息作为参数来初始化虚拟机的数据存储模块以创建加密、解密以及签名密钥;一旦各个设备被启动,则对数据存储模块进行加载;使用加密与解密密钥对与虚拟机相关联的数据进行加密和解密;使用签名密钥对与虚拟机相关联的数据进行数字签名;并且将数字签名的数据存储在存储内存中。在这一点上,数字签名数据可以包括GSM文件系统、一个或多个Java卡应用以及一个或多个网络认证密钥中的至少一个,其中,数字签名数据被格式化成数据块。在一种实施方式中,存储内存将数据块保存在日志文件系统中。此外或可替代地,对数据进行数字签名包括:利用签名密钥对数据的校验和或哈希值进行签名。而且,对数据进行数字签名可以包括:计算数据的冗余校验值;并且利用随机密钥对冗余校验值进行签名。
在另一示例性实施方式中,提供了一种用于与多个蜂窝网络通信的方法。该方法包括:提供被配置为与多个蜂窝网络通信的具有调制解调器和至少一个天线的移动设备;并且将在处理器上运行的移动应用配置成有助于调制解调器与没有物理或电连接至调制解调器的虚拟可再编程通用集成电路芯片(eUICC)之间的通信,其中,使用用户提供的生物特征信息保持虚拟eUICC的安全性。
在一些实施方式中,移动设备进一步包括生物特征信息捕获元件,并且其中,方法包括:使用生物特征信息捕获元件捕获用户提供的生物特征信息。在一些该实施方式中,生物特征信息捕获元件包括内置的指纹扫描仪或摄像机设备。
在一些实施方式中,方法包括:形成虚拟机的配置以承载虚拟的eUICC。在这一点上,形成虚拟机的配置包括使得:利用用户提供的生物特征信息作为参数来初始化虚拟机的数据存储模块以创建加密、解密、以及签名密钥;一旦各个设备被启动,则对数据存储模块进行加载;使用加密与解密密钥对与虚拟机相关联的数据进行加密和解密;使用签名密钥对与虚拟机相关联的数据进行数字签名;并且将数字签名的数据存储在存储内存中。例如,数字签名数据可以包括GSM文件系统、一个或多个Java卡应用以及一个或多个网络认证密钥中的至少一个,并且数字签名的数据可以被格式化成数据块。此外或可替代地,该方法可以包括:将数据块保存在存储内存的日志文件系统中。
在一些实施方式中,对数据进行数字签名包括:利用签名密钥对数据的校验和或哈希值进行签名。在一些实施方式中,其中,对数据进行数字签名包括:计算数据的冗余校验值;并且利用随机密钥对冗余校验值进行签名。
在又一示例性实施方式中,提供了存储计算机可执行指令的一个或多个非暂时性计算机可读介质,当通过被配置为与多个蜂窝网络通信的具有调制解调器和至少一个天线的移动站被执行时,计算机可执行指令使移动站将在处理器上运行的移动应用配置为有助于调制解调器与没有物理或电连接至调制解调器的虚拟可再编程通用集成电路芯片(eUICC)之间的通信,其中,使用用户提供的生物特征信息保存虚拟eUICC的安全性。
在一些实施方式中,移动站进一步包括生物特征信息捕获元件,并且通过生物特征信息捕获元件捕获用户提供的生物特征信息。在这一点上,生物特征信息捕获元件包括内置的指纹扫描仪或摄像机设备。
在一些实施方式中,当通过移动站被执行时,计算机可执行指令进一步使移动站形成虚拟机的配置以承载虚拟的eUICC。在这一点上,当通过移动站被执行时,计算机可执行指令通过进行下列操作而使移动站形成虚拟机的配置:利用用户提供的生物特征信息作为参数初始化虚拟机的数据存储模块以创建加密、解密以及签名密钥;一旦各个设备被启动,则对数据存储模块进行加载;使用加密与解密密钥对与虚拟机相关联的数据进行加密和解密;使用签名密钥对与虚拟机相关联的数据进行数字签名;并且将数字签名的数据存储在存储内存中。在这一点上,数字签名数据可以包括GSM文件系统、一个或多个Java卡应用以及一个或多个网络认证密钥中的至少一个,并且数字签名数据可以被格式化成数据块。此外,存储内存可以将数据块保存在日志文件系统中。
在一些实施方式中,对数据进行数字签名包括:利用签名密钥对数据的校验和或哈希值进行签名。在一些实施方式中,对块进行数字签名包括:计算数据的冗余校验值;并且利用随机密钥对冗余校验值进行签名。
仅出于总结一些示例性实施方式之目的而提供上述发明内容,以提供对本发明的一些方面的基本理解。相应地,应当认识到,上述所述实施方式仅是实施例并且不应被解释为以任何方式缩小发明的范围或实质。应当认识到,发明的范围涵盖了除本文这些总结之外的许多潜在实施方式,下面将对其中的一些进行进一步地描述。
附图说明
在由此就一般性方面描述发明的示例性实施方式之后,现将参考不一定按比例绘制的所附附图,并且其中:
图1提供了根据本文描述的示例性实施方式的端到端虚拟SIM平台的高级系统概述;
图2A示出了根据本文描述的示例性实施方式的虚拟eUICC的示例性内部设备配置的概述;
图2B示出了本文描述的示例性实施方式的本文中预期的一种使用情况;
图2C示出了根据本文描述的示例性实施方式的其中虚拟eUICC由云供应商承载的附加系统配置;
图3示出了根据本文描述的示例性实施方式的虚拟eUICC的高级示图;
图4示出了根据本文描述的示例性实施方式的虚拟eUICC的内部软件架构;
图5示出了根据本文描述的示例性实施方式的请求命令(例如,拨打)的序列图;
图6示出了根据本文描述的示例性实施方式的用于传输未经请求命令(例如,接收呼叫)的序列图;
图7示出了根据本文描述的示例性实施方式的使用无受信任的执行环境(TEE)的虚拟eUICC的连接设备的配置的内部概述;
图8示出了根据本文描述的示例性实施方式的虚拟eUICC的高级示图;
图9示出了根据本文描述的示例性实施方式的虚拟eUICC的内部软件架构;
图10示出了根据本文描述的示例性实施方式的使用由端用户提供的生物特征信息的Java卡虚拟机(JCVM)设置的高级概述;
图11示出了根据本文描述的示例性实施方式的JCVM文件系统初始化的流程图;
图12示出了根据本文描述的示例性实施方式的关于JCVM在数据加载过程中的示例性处理流;以及
图13示出了根据本文描述的示例性实施方式的关于JCVM在数据更新过程中的示例性处理流。
具体实施方式
现下面将参考所附附图对一些实施方式进行更为全面的描述,其中一些但并非全部设想的实施方式被明确示出。确实,本文设想的发明可以许多不同的形式体现并且不应被解释为局限于本文中设定的实施方式;而是,这些实施方式被设置成使得本公开满足适用的法律要求。类似标号始终指类似元件。
如本文中限定的,“计算机可读存储介质”(指非暂时性物理存储介质(例如,易失性或非易失性存储器设备))能够区别于“计算机可读传输介质”(指电磁信号)。
应当理解的是,本文中描述的各软件操作可以通过诸如硬件、固件、处理器、电路、和/或与包括一个或多个计算机程序指令的软件的运行相关联的其他设备的各种装置实现。例如,本文描述的一个或多个程序可以通过计算机程序指令体现。在这一点上,体现所描述的程序的计算机程序指令可以由装置的存储器存储并且由装置的处理器执行。应当认识到,任何这样的计算机程序指令皆可以被加载到计算机或其他可编程装置(例如,硬件)中,以生产机器,从而使得所得的计算机或其他可编程装置实施指定的具体功能。这些计算机程序指令也可以存储在引导计算机或其他可编程装置以特定方式进行操作的计算机可读存储器(例如,计算机可读存储介质)中,从而使得存储在计算机可读存储器中的指令产生制造物品,该制造物品的执行实现指定的功能。计算机程序指令还可被加载到计算机或其他可编程装置中,以使在计算机或其他可编程装置上执行一系列的操作,以生成计算机执行处理,从而使得在计算机或其他可编程装置上执行的计算机程序指令促使执行用于实现指定功能的操作。
首先转向图1,示出了端到端虚拟SIM平台的高级系统概述。如图1所示,此处设想的实施方式使得单个设备能够使用存储在eUICC中的一系列虚拟SIM卡连接至多个不同的网络(例如,网络A至D)。进而,虚拟SIM卡管理平台(本文中被称之为MNO中心服务器)有助于提供(例如,购买、激活、去活以及删除等)虚拟SIM卡。虚拟SIM卡管理平台进一步和与对设备可用的若干网络相关联并且提供各种待售的虚拟SIM卡的各种MNO或MVNO通信。
在2015年9月17日提交的美国非临时专利申请14/856,974中,描述了能够使用多个并存eUICC将物理SIM卡的虚拟化的装置、系统以及一组方法。实现该构思的设备可以是诸如IoT设备的连接设备,或者在一些实施方式中,如2015年9月17日提交的美国非临时专利申请号14/856,974中公开的,设备可以是包括蜂窝电话或由用户另行操作的移动站。这些专利申请描述了示例性的移动站或者连接设备可以包括具有集成式可再编程的蜂窝网络连接的“无SIM(SIM-less)”片上系统(S2oC)。
本文中公开的示例性实施方式提供了该S2oC架构的扩展并且包括用于完全仿真在应用处理器上运行的连接设备操作系统中的eUICC的配置。更具体地,一些示例性实施方式包括在片上系统的专用应用处理器上运行的片上虚拟(即,基于软件的)eUICC。
传统架构连接基于硬件的eUICC与基带处理器(而非应用处理器)。进而,也可假设由基带处理器承载虚拟化的eUICC。然而,基带处理器并未配备多个存储器,这限制了在其上存储eUICC的能力。同样,传统上,基带处理器提供相对较小的物理足迹,由此降低了用于修改或添加新部件的能力。而且,通常,基带处理器必须经过国家机构认证(例如,在美国,经由PTCRB认证)。最后,基带处理器通常具有有限量的随机访问存储器,由此使得基带处理器操作的性能达到瓶颈。相应地,如本文中描述的,几个示例性实施方式将虚拟eUICC存储在应用处理器上。对于由应用处理器承载的虚拟eUICC,因为应用处理器具有更多随机访问存储器,所以这种变化能够将虚拟SIM供应时间从(如传统物理eUICC通常供应的)大约30秒或1分钟降低至1秒或2秒左右。本文中描述了支持eUICC位置的重新设计的一些示例性架构。如下面描述的,通过提高安全性功能还解决了在应用处理器中承载虚拟eUICC(例如,安全性问题)的预见缺陷。
如图2A所示,在连接设备的一些示例性实施方式中,基带处理器(BP)通过物理接口(例如,串行端口、专用总线等)连接至应用处理器(AP)。BP可以通过由蜂窝调制解调器零售商开发的标准驱动器而连接至物理eUICC。AP可以运行包括专用于管理虚拟eUICC内容的移动应用的优质UI OS(例如,安卓)。AP可以进一步包括允许连接设备安全地运行受信任的应用的受信任的执行环境(TEE)。这些受信任的应用可以访问正常对在AP中运行的其他应用可用的安全数据存储器。在这些实施方式中,可以将受信任的应用中的一种描述为虚拟eUICC,并且图3中提供了一个该虚拟eUICC的高级逻辑图。应当理解的是,在一些实施方式中,同一连接设备中可以存在多个虚拟的eUICC。如本文中示出的,在具有一个或多个虚拟eUICC的实施方式中,可以进一步再使用诸如上面公开的路由机制。
如图2A所示,元件202可以包括用于经由虚拟的eUICC驱动器协议进行通信的安全通道,元件204可以包括用于经由TEE内部API的安全数据存储访问的安全通道,并且元件206可以包括用于经由标准的文件系统(FS)API的基于密码的数据存储的安全通道。进一步地,元件208示出了AP–BP通信,其使用零售商的无线电接口层(RIL)经由标准和/或专有AT命令(例如,AT+CSIM、AT%VSIM等)进行通信。最后,元件210示出了经由SIM联盟API(例如,SEEK)的虚拟eUICC访问。
在一些实施方式中,存在连接设备与分开的连接设备之间可以进行通信的情况。例如,当用户将智能手机拿到到车辆中时,存在车辆包括蜂窝调制解调器和天线并且能够使用例如远程Sim访问配置文件(SAP)API与用户的智能手机进行通信的情况。在这样的实施方式中,本文中设定的虚拟eUICC构思仍可以以上面所示的方式进行操作。在图2B中示出了该设计,其中,连接设备(例如,用户的智能手机)经由元件212与分开的连接设备通信,其可以利用蓝牙TM或另一类型的短程通信技术。
现转向图4,示出了根据本文描述的示例性实施方式的虚拟eUICC的示例性内部软件架构。如图4所示,在一些实施方式中,虚拟eUICC基于Java卡虚拟机(JCVM)规范的优化实现方式并且由此支持防火墙的构思。虚拟eUICC可以包括运行Java卡应用的Java卡运行时环境(JCRE)(通常被称之为“小应用程序”)。JCRE是用于与虚拟eUICC进行通信的入口点。
在一些实施方式中,虚拟eUICC包括全球平台(GlobalPlatform)卡规范的实现方式,并且在该实施方式中,连接设备由此支持基本允许一组小应用程序的安全沙盒的安全域构思。
虚拟eUICC包括提供用于运行SIM、USIM以及ISIM等小的应用程序及网络运营商所使用的网络访问应用(NAA)的所必需的框架的ETSI/3GPP规范的实现方式。
虚拟eUICC可以进一步包括操作(leverage)安全域(Security Domain)配置以允许eUICC同时包含多个网络运营商的配置文件的自定义配置文件管理器小应用程序,诸如2015年9月17日提交的美国非临时专利申请号14/856,974中更为详细描述的配置文件管理器小应用程序等。
JCRE可以被配置为提供虚拟eUICC接口的实现方式(例如,S2OC_UICC_CONTROLLER.H)。因此,该接口被连接设备的无线电接口层(RIL)调用。RIL模块被配置为支持物理UICC和支持虚拟UICC两者。连接设备的端用户可以选择通过优质的OS UI(rich OSUI)(例如,设置app)使得eUICC可用。
一些示例性实施方式还使得RIL能够支持双SIM(或多SIM)配置,前提是蜂窝调制解调器支持此配置。实际上,本文中设定的一种实施方式可以应用于改型的双SIM双待机(DSDS)或双SIM双激活(DSDA)设备,从而向虚拟eUICC分配一个SIM卡槽,同时,基带处理器的固件被配置为考虑该配置。
如上所述,元件208示出了RIL经由AT命令(也被称之为Hayes命令集)与蜂窝调制解调器(即,基带处理器)通信的RIL。还应注意,能够使用提取AT命令的高级协议(例如,Qualcomm的MSM接口(QMI),其用于与Qualcomm移动站调制解调器通信的Qualcomm专有接口)。
自1981年已经使用AT命令,并且AT命令仍由被组合在一起、以产生诸如拨号、挂机、以及改变连接的参数等操作的完整命令的一系列短文本字符串构成。然而,许多零售商已经引进了扩基本AT命令的先进专有特征。例如在安卓中实现这些专有特征或任何标准AT命令要求OEM提供无线电接口层(RIL)接口(ril.h)的实现方式。为此,OEM提供专用于实现该接口的器蜂窝调制解调器零售商的库(ril.so)。
然而,已经观察到,RIL集成非常复杂并且程序员历来延续利用源代码中的AT命令,这产生了不灵活性。
在这一点上,该示例性实施方式可以进一步使用附加的AT命令而使得蜂窝调制解调器应用零售商的集成工作最小化。然而,对于该工作,蜂窝调制解调器应用零售商需要开发出一种能够使用AT命令与应用处理器上承载的外部虚拟eUICC进行通信的虚拟驱动器。一种这样的驱动器协议的实施例包括诸如下面表1中示出的命令。
表1
Figure BDA0001951825330000161
当蜂窝调制解调器应用启动时,通过AP通知虚拟eUICC连接至设备。例如,可以利用%VSIMLIST命令执行此通知。对于应用处理器,并且更具体地,对于RIL,该命令看似为未经请求的命令。RIL保存可用于设备的虚拟eUICC槽的列表。RIL将返回可用的虚拟eUICC的列表。
因此,蜂窝调制解调器应用(也被称之为受信任的基带客户端,尽管当被称之为蜂窝调制解调器应用时,明确将该元件描述为在专有基带处理器上运行)通过向RIL发送%VSIMRESET以“启动”虚拟的eUICC并且对其预配置的复位应答(ATR)数据进行检索而对虚拟eUICC进行检测。
当蜂窝网络请求对虚拟eUICC进行验证时,蜂窝调制解调器应用向RIL发送未经请求的命令,RIL将消息封装至虚拟eUICC。例如,对于2G网络验证,可以由经由%VSIMAPDU:1,14,”A0A40000027F20”明确选择GSM(DF GSM)的专用文件及请求运行标准的GSM算法%VSIMAPDU:1,42,”A088000010FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF FF"构成。经由AT%VSIMAPDU通过蜂窝调制解调器应用的请求命令接收对这些封装命令的响应。
现转向图5,提供示出了端用户使用指定的虚拟eUICC拨打电话的一系列事件的序列图。在操作502中,端用户使用拨号器App利用给定的虚拟SIM卡发起呼叫。在操作504中,RIL向蜂窝调制解调器应用发送请求命令,以拨通给定的移动号码。在操作506中,已经获知虚拟eUICC的存在的蜂窝调制解调器应用向RIL发送未经请求的命令。在操作508中,蜂窝调制解调器应用发送请求虚拟SIM卡的状态(例如,getSIMStatus())的命令,并且在操作510中,请求的响应指示虚拟SIM卡的状态(例如,SIM可用)并且提供国际移动用户识别码(IMSI)及与已识别的虚拟SIM卡相关联的集成电路卡ID(ICCID)。应当理解的是,可以周期性地执行操作508和510(并且因此可以在呼叫初始化处理之前执行),之后,可以通过蜂窝调制解调器应用缓存结果,以供后期使用。随后,在操作512中,蜂窝调制解调器应用使用与已识别的虚拟SIM卡相关联的IMSI对对应的网络进行ping操作。响应地,在操作514中,在虚拟SIM卡与网络之间进行标准的网络验证。在操作516中,可以通知用户呼叫的状态,最后,在操作518中,可以建立连接。
如图6所示,提供了描述用于通过指定的虚拟eUICC接收端用户的电话的一系列事件的序列图。在操作602中,网络可以对连接设备的蜂窝调制解调器应用进行ping操作。在操作604中,蜂窝调制解调器应用发送请求虚拟SIM卡的状态的命令(例如,get SIMStatus()),并且在操作606中,返回指示虚拟SIM卡的状态(例如,SIM可用)的请求响应。响应地,在操作608中,在虚拟SIM卡与网络之间可以进行标准的网络验证。在操作610中,蜂窝调制解调器应用可以向RIL发送未经请求的命令。随后,在操作612中,RIL可以返回未经请求的命令。在操作614中,用户可以通知有关呼叫的状态,最后,在操作616中,可以建立连接。
已经预见安全性将是将虚拟eUICC引进到行业中的许多反对者进行反对所参照的主要原因。然而,可以指出,金融行业已经允许消费者在移动设备上进行非常大量的金融交易,而不要求物理安全元件。进一步地,TEE看似快速变为虚拟eUICC可以操作的安全功能模块。在本文设定的一些示例性实施方式中,物理不可克隆功能(PUF)的使用为指定用于虚拟eUICC的预存TEE容器添加了另一层安全性。示例性PUF可以使用诸如生物特征数据等的噪音信号源。例如,在iPhone上,这可以包括使用指纹扫描仪以创建虚拟的eUICC。端用户可以下载包括已更新的蜂窝调制解调器应用和专用移动应用的新iOS固件升级。一旦由端用户完成注册处理,移动应用则可以触发由端用户使用的指纹扫描仪屏幕的启动。在生物匹配处理之后,虚拟eUICC被激活并且在其使用寿命期间仅可供特定的端用户使用。下面更为详细地描述增强安全性的生物特征信息的使用。
一旦固件升级或首次安装,蜂窝调制解调器应用可以进一步具有被加载到其中的PGP类似密钥。虚拟eUICC也可以利用其自身的PGP类似密钥被初始化。虚拟eUICC能够使用蜂窝调制解调器的PGP类似密钥将数据传输至蜂窝调制解调器处理器。相似地,应用处理器能够使用虚拟eUICC的PGP类似密钥向其发送数据。虚拟eUICC库可以是被预加载或远程安装到TEE中的受信任的应用。为了添加防止伪篡改层,也可以利用管理实体的私有认证对虚拟的eUICC软件进行签名。然后,要求管理实体(例如,MNO中心服务器)在使用之前激活虚拟的eUICC。也可以在新的管理操作(例如,安装新的数字SIM)时执行完整性校验。虚拟eUICC的激活机制基于JCRE与管理实体的服务器之间的相互验证会话。为了防止克隆,管理虚拟eUICC的实体提前对主机设备的IMEI进行检索并且将其存储在其虚拟eUICC主机的数据库中。然后,管理实体生成随机的虚拟eUICC ID(EID)并且将其链接至所述IMEI。还对蜂窝调制解调器的序列号进行检索。在首次启动和激活时,将这些参数反馈至JCRE。
以这种方式,示例性实施方式提供了用于虚拟化在应用处理器上运行并且通过基带处理器间接访问的eUICC的机制。应注意,如图2C所示,可以进一步扩展该配置,从而在云中运行虚拟的eUICC。具体地,与图2A中描述的布置相反,因为应用处理器自身并不承载虚拟的eUICC,所以该性质的云实施方式中不一定必须使用TEE和FS。而且,在云实施方式中,远程eUICC主机可以诸如通过使用硬件安全模块(HSM)或其他升级安全系统利用安全的数据中心存储关于虚拟eUICC的信息。相应地,应用处理器可以使用虚拟eUICC驱动器协议利用通道214与外部云主机进行通信,而非利用内部安全通道202与虚拟的eUICC进行通信。在该实施方式中,如果基于云的虚拟eUICC与启动配置文件不相关联,则通过建立支持与远程云进行通信的Wi-Fi连接可以有助于该通信,以执行Sanity校验并且对相关IMSI进行检索。如果存在与基于云的虚拟eUICC相关联的启动配置文件,零售商RIL则能够经由启动配置文件与云主机直接通信,以执行Sanity校验并且对相关IMSI进行检索。基于云的虚拟eUICC实施方式的实现通过减少应用处理器的负担而获得多项益处。而且,云主机的安全性比连接设备自身的安全性更为可靠,由此进一步降低了恶意一方对eUICC相关信息进行篡改的其余风险。在又一实施方式中,可以存在局部的虚拟eUICC以及远程承载的虚拟eUICC。
如上简述,可以利用生物特征信息向上述所述TEE(或基于云的)安全构思提供附加或替代层的安全性。例如,在一些示例性实施方式中,描述了针对受信任的执行环境(TEE)不可用的情形设想了可以利用生物特征信息确保在应用处理器上运行的虚拟eUICC的安全,如图7中所示的设计配置中所示。然而,应当理解的是,能够使用相似的机制进一步增强已经利用TEE的移动设备的安全性。以类似的方式,生物特征信息的使用能够增强访问外部虚拟eUICC主机(例如,云主机)的移动设备的安全性。在这些示例性情景的每个情景中,示例性实施方式可以结合加密文件系统利用生物特征信息而保证虚拟的eUICC的安全。因此,这样的实施方式能够通过依靠于生物特征数据(例如,指纹、面部图像等)的不可克隆特性保护eUICC的完整性。在一些实施方式中,这样的不可克隆特性也可以利用诸如加速计和/或陀螺仪数据等其他传感器信息,同时要求端用户执行仅端用户知道的一组运动(例如,以特定模式摇动移动设备)。
在这一点上,存在多种类型的生物特征数据源。在一些实施方式中,可以从内置的指纹扫描仪检索生物特征数据。在其他实施方式中,可以从内置的摄像机检索用于面部图像辨别的生物特征数据。本领域技术人员应该认识到,如何使用端用户的移动终端从端用户对附加类型的生物特征信息进行检索。
在端用户的移动设备承载虚拟的eUICC的实施方式中,端用户能够通过将固件更新下载到端用户的移动终端中而使用生物安全性,固件更新包括已更新的蜂窝调制解调器应用与专用移动应用及其相关联的虚拟eUICC。在端用户的注册过程(登记)中,移动应用触发生物特征信息检索处理。移动应用通过自动查询端用户的移动终端的功能而能够选择所利用的指定处理。
从内置的指纹扫描仪检索生物特征数据:指纹扫描仪是当代iPhone的储存元件,但是,其他基于OS的移动设备(安卓、Tizen、Windows等),包括三星的Galaxy设备,也可以提供指纹扫描仪。在一些实施方式中,向端用户呈现触摸指纹扫描仪的菜单。蜂窝设备的操作系统可以使用安全并且专用的“数据存储包体”系统,从而移动应用从不访问实际的生物特征信息,因为在标准配置菜单过程中,一旦设备首次启动,则向操作系统提供这样的信息。然而,通过操作系统向移动应用提供随机生成的签名。这样的随机生成的签名可以链接至安全地存储在专用“数据存储包体”中的实际指纹数据。
从内置的摄像机检索生物特征数据:当今,大多数的移动终端包括内置的摄像机,并且因此,iPhone、或几乎任何其他的基于OS设备(安卓、Tizen、Windows等)也可以利用使用从内置摄像机检索的生物特征数据的示例性终端。在这些实施方式中,向端用户呈现菜单以摄取其面部的各种图片。拍摄的特定图片可以由仅端用户知道的指定图案构成。在面部图像的捕获过程中,执行“现场(liveness)”检测。然后,面部图像然后可以被发送至远程服务器(即,管理实体)(其要求对Wi-Fi连接进行访问),因为从虚拟eUICC中尚不可使用蜂窝连接。另外,可以使用已经被配置为访问启动式蜂窝网络的另一物理eUICC。在所有情况下,远程服务器可以安全地存储面部图像并且将签名返回至移动应用。进而,该签名能够链接至面部图像的图案。
在示例性实施方式中,在生物捕获处理之后,可以请求端用户提供唯一的ID(例如,电子邮件地址)和私密密码。然后,还可以要求端用户提供唯一的管理识别编号。例如,在印度,该管理识别码可以是Aadhaar(由代表印度政府的印度唯一识别权威机构(UIAI)发行的12位数字的个人识别编号)。管理实体可以使用政府ID作为针对第三方数据库进行校验的参考。
应当理解的是,如本文中使用的术语“管理实体”指通常通过移动应用与虚拟eUICC进行通信的离线装置、外部服务器。例如,在一些实施方式中,管理实体可以包括MNOHUB服务器。管理实体用作虚拟eUICC的发行者并且因此具有远程管理虚拟eUICC的正确密钥。
然后,可以激活虚拟eUICC并且在其使用寿命期间仅对于捕获了生物签名的端用户是可用的。激活要求通过虚拟eUICC的JCRE对诸如虚拟eUICC ID、设备ID(例如,IMEI)、用户ID(例如,电子邮件)、密码(例如,字母数字混编的文本)、以及生物特征信息(例如,生物特征数据的签名)等附加配置参数进行检索。图8示出了该性质的虚拟eUICC的高级示图。与虚拟eUICC的其他相似示例性示图相比,在利用基于生物特征的安全性的示例性实施方式中,图8示出了虚拟eUICC存储在生物特征保护的文件系统中。进而,图9示出了该性质的虚拟eUICC的内部软件架构。
一旦固件升级或在初始安装过程中,蜂窝调制解调器应用可以进一步具有被加载到其中的PGP类似密钥。虚拟eUICC也利用其自身的PGP类似密钥被初始化。虚拟eUICC能够使用蜂窝调制解调器的PGP类似密钥将数据传输至蜂窝调制解调器处理器。相似地,应用处理器可以使用虚拟eUICC的PGP类似密钥将数据发送至eUICC。为了添加防伪篡改层,可以利用管理实体的私有认证对虚拟eUICC软件进行签名。
管理实体应在使用之前激活虚拟的eUICC。在诸如安装新的数字SIM卡等新的管理操作过程中,也应执行全完整性校验。虚拟eUICC的激活机制基于之前上面描述的性质的JCRE与管理实体之间的相互验证会话。为了防止克隆,管理实体可以提前对主机设备的IMEI进行检索并且将IMEI存储在虚拟eUICC的主机的数据库中。然后,管理实体可以生成随机的虚拟eUICC ID(EID)并且将其链接至所述IMEI。还应对蜂窝调制解调器的序列号进行检索。在首次启动并且激活时,将这些参数反馈至JCRE。如之前描述的,这些参数中还可以包括生物签名。
现将描述JCRE与JCVM一起工作、以确保虚拟eUICC的数据存储的安全和运行时执行的方式。
在启动时,JCRE将文件系统(FS)的加密/解密密钥(在下文中,被称为JCVM密钥)传递至JCVM。每次启动激活设备都需要该步骤。只要以合理的小尺寸(512KB–1024KB)保存JCVM FS存储器大小,加密/解密时间则不会影响系统的性能,并且由此保留无缝用户体验。
FS可以是利用生成的对称密钥进行加密的一个单一的相对小的文件。在该实施方式中,密钥可以基于256位的高级加密标准(AES)。换言之,虚拟机的实例具有其自身的专用存储器及完整性密钥。对于尝试克隆部署在各个蜂窝设备中的多个JCVM的攻击者,由于有目的地分散加密系统,所以计算资源变得非常昂贵。
利用完整性校验(校验和)对被下载到虚拟eUICC中的每个数字SIM进行签名。一旦对数字SIM进行加载,则对校验和进行确认,以确保数据完整性。
为了避免暴力攻击,虚拟eUICC可以被配置为使得虚拟机锁定自身,直至管理实体将其解锁。通过引进重试机制计数器保护JCRE的入口点被拒绝服务攻击,在进行固定次数的连续失败验证之后,重试机制计数器将临时禁止重试,直至管理实体再次重新激活重试。这样的重新激活可能要求端用户提供其包括经过生物验证处理的凭证。
还可以利用多因数验证方案。依靠于该方案的因素可以包括用户是谁(生物签名)、他们知道什么(用户名称、密码、以及政府发行的ID)、以及他们拥有什么(设备)。因此,使用下列式子生成JCVM密钥:JCVM密钥=f(生物签名、用户名称、密码、政府ID、设备ID、虚拟eUICC ID、蜂窝调制解调器ID)
无论何时端用户改变密码,JCVM对其密钥进行更新并且在重新存储之前将文件系统重新初始化。可以对移动应用进行编程,以周期性地强制用户改变密码,以帮助减少潜在的非法闯入问题。
利用这些约束来创建用于虚拟eUICC的安全容器:
1.安全存储器
2.防篡改
3.安全字节码
安全存储器:
通过将JCVM中限定的C++对象(主文件、专用文件、基本文件、Java卡小应用程序)串行化成利用随机生成的AES 256位密钥进行加密的一个文件(FS)而创建一个示例性的安全存储器。虚拟FS是使用具有初始化矢量的AES 256位密钥在RAM中运行的加密文件系统。物理FS是使用应用处理器可用的外部/内部存储系统的加密文件系统。还应采用文件的256位AES加密。所有的小应用程序对象及数据皆被串行化成FS。
防篡改:
引进虚拟eUICC的防篡改性质,以使得攻击者更难以对其进行修改。在一些实施方式中,还可以采用使得反工程较难的诸如模糊化等被动措施。为了使得软件的足迹最小化并且减少其潜在的性能影响,采用了防篡改实施方式,从而通过移动应用或管理实体执行完整性校验。
安全字节码:
JCVM字节码解释程序运行安全的字节码。这要求在将小应用程序远程地存储到虚拟eUICC中之前预处理小应用程序。通常,在服务器级通过管理实体执行预处理的机制。自动功能允许生成加密的字节码,然后,在将Java卡小应用程序安装在数字SIM内过程中,(经由移动应用)将加密的字节码远程地传输至虚拟的eUICC。为了能够解释这些字节码,一旦启动信息被提供至JCRE,则生成JCVM密钥。
现转向图10,提供使用由端用户提供的生物特征信息的示例性JCVM设置的高级概述的例图。端用户使用端用户的移动站捕获生物特征信息,并且该生物特征信息被中继给移动应用。
现转向图11,示例性流程图示出了JCVM文件系统初始化。例如,可以通过连接设备(例如,移动站)执行图11中描述的操作。在操作1102中,用户通过用户连接设备上的移动应用进行登记。该登记可以是端用户的注册处理的一部分并且可以触发生物特征信息检索处理。在操作1104中,连接设备确定当前是否存在文件系统。在文件系统不存在的实例中,在操作1106中,连接设备使用用户的检索的生物特征信息而加载(并且解密)物理文件系统,并且流程前进至操作1112,其中,经由虚拟的文件系统使用物理文件系统。可替代地,在文件系统不存在的实例中,流程前进至操作1108,其中,连接设备确定生物特征信息是否可用。如果不可用,流程则返回至操作1102。然而,如果可用,流程则前进至操作1110,其中,连接设备使用生物特征信息创建物理文件系统并且加载物理文件系统。随后,流程前进至操作1112,其中,经由虚拟的文件系统使用物理文件系统。
现转向图12,提供了示出JCVM在数据加载过程中的示例性处理流的序列图。在操作1202中,移动应用将已检索的生物特征信息传输至JCRE,以供端用户登录。在操作1204中,JCRE将FS加载请求传输至JCVM。在操作1206中,JCVM将生物特征信息传输至虚拟的FS。最后,在操作1208中,使用生物特征信息对物理FS进行解密。响应地,物理FS将指示操作1210中已经发生解密的消息传输回至虚拟的FS。在操作1212中,虚拟的FS将消息中继给JCVM。在操作1214中,JCVM则将消息传输至JCRE。最后,在操作1216中,将指示生物特征数据已被加载的确认从JCRE发送至移动应用。
应当理解的是,尽管图12中示出的操作描述了在一些实施方式中发生的操作的示例性序列,然而,基于实现系统的设计,存在略微的变化。例如,当移动设备利用TEE时,通过JCRE、JCVM与虚拟FS执行的操作可被压缩成使得将生物特征信息传输至TEE,然后,将生物特征信息直接传输至存储在TEE内的物理FS。相似地,响应性的传输可以是流线化的。
转向图13,提供了示出JCVM在数据更新过程中的示例性处理流的序列图。在操作1302中,无线电接口层将请求命令传输至JCRE。在操作1304中,JCRE处理请求命令并且将其分派至JCVM。在操作1306中,JCVM处理命令。接着,在操作1308中,JCVM基于命令的处理传输更新虚拟文件系统的指令。最后,在操作1310中,相应地,传输更新物理文件系统的指令。
如图12中示出的操作,图13中描述的操作可以基于实现系统的设计而改变。例如,当移动设备利用TEE时,通过JCRE、JCVM与虚拟的FS执行的操作可被压缩成使得将命令传输至TEE,然后,将命令直接传输至存储在TEE内的物理FS,并且相似地,响应可以是流线化的。
通过利用这些附加安全措施的组合,除TEE之外或甚至在缺少TEE的情况下,通过应用处理器还能够存储虚拟化的eUICC。以这种方式,可以使用生物特征信息来安全地配置在移动设备的应用处理器上操作的Java卡虚拟机来实现方法。
这些发明所属领域技术人员容易想到本文中设定的大名的许多改造及其他实施方式,即,具有上述描述及相关联附图中呈现的教导益处。因此,应当理解的是,发明并不局限于所公开的具体实施方式并且改造及其他实施方式旨在包括在所附权利要求的范围内。而且,尽管上述描述及相关联的附图在元件和/或功能的特定示例性组合的上下文中描述了示例性的实施方式,然而,应当认识到,在不背离所附权利要求的范围的情况下,通过可替代的实施方式可以提供元件和/或功能的不同组合。鉴于此,例如,如所附权利要求中的一些设定的,还设想了与上面这些明确描述的不同的元件和/或功能的组合。尽管本文中采用了指定的术语,然而,其仅以一般性和描述性意义使用并且并不用于限制性之目的。

Claims (18)

1.一种用于通过包括调制解调器和至少一个天线的移动站以多激活模式与多个蜂窝网络通信的方法,所述方法包括:
在所述移动站中,设置物理连接至基带处理器的应用处理器,其中,所述物理连接有助于命令从由所述基带处理器承载的蜂窝调制解调器应用至所述应用处理器的安全传输;以及
响应于从所述基带处理器接收一个或多个命令,通过在所述应用处理器上运行的移动应用经由无线电接口层与没有物理或电连接至所述基带处理器的虚拟可再编程通用集成电路芯片通信,其中,所述虚拟可再编程通用集成电路芯片存储在所述应用处理器的受信任的执行环境内。
2.根据权利要求1所述的方法,其中,所述移动站使用一个或多个物理不可克隆功能提供对所述虚拟可再编程通用集成电路芯片的访问。
3.根据权利要求2所述的方法,其中,所述物理不可克隆功能中的至少一个包括生物特征信号源。
4.根据权利要求3所述的方法,其中,所述生物特征信号源包括:
生物特征信息捕获元件,
其中,通过所述生物特征信息捕获元件捕获用户提供的生物特征信息。
5.根据权利要求4所述的方法,其中,所述生物特征信息捕获元件包括内置的指纹扫描仪或摄像机设备。
6.根据权利要求4所述的方法,进一步包括:
形成虚拟机的配置以承载所述虚拟可再编程通用集成电路芯片。
7.根据权利要求6所述的方法,其中,形成所述虚拟机的配置包括使得:
利用所述用户提供的生物特征信息作为参数初始化所述虚拟机的数据存储模块以创建加密密钥、解密密钥以及签名密钥;
一旦各个设备被启动,则对所述数据存储模块进行加载;
使用所述加密密钥与所述解密密钥对与所述虚拟机相关联的数据进行加密和解密;
使用所述签名密钥对与所述虚拟机相关联的数据进行数字签名;以及
将所述数字签名数据存储在存储内存中。
8.根据权利要求7所述的方法,
其中,所述数字签名数据包括GSM文件系统、一个或多个Java卡应用以及一个或多个网络认证密钥中的至少一个;并且
其中,所述数字签名数据被格式化成数据块。
9.根据权利要求8所述的方法,其中,所述存储内存将所述数据块保存在日志文件系统中。
10.根据权利要求7至9中任一项所述的方法,其中,对与所述虚拟机相关联的数据进行数字签名包括:利用所述签名密钥对所述数据的校验或哈希值进行签名。
11.根据权利要求7至9中任一项所述的方法,其中,对与所述虚拟机相关联的数据进行数字签名包括:
计算所述数据的冗余校验值;以及
利用随机密钥对所述冗余校验值进行签名。
12.根据权利要求7至9中任一项所述的方法,其中,由远离所述移动站的设备承载所述虚拟可再编程通用集成电路芯片。
13.根据权利要求1所述的方法,进一步包括:
通过所述移动站的所述基带处理器非电附接至所述虚拟可再编程通用集成电路芯片。
14.根据权利要求13所述的方法,其中,所述非电附接包括向所述应用处理器传输由所述基带处理器发起的命令。
15.根据权利要求14所述的方法,进一步包括:
通过所述应用处理器的无线电接口层对所述命令进行解释;以及
通过所述应用处理器的所述无线电接口层将所述命令转发至所述虚拟可再编程通用集成电路芯片。
16.根据权利要求7至9中任一项所述的方法,其中,所述虚拟可再编程通用集成电路芯片被配置为:
接收来自所述基带处理器的间接请求;以及
针对所述间接请求生成响应。
17.根据权利要求16所述的方法,其中,通过所述应用处理器与所述虚拟可再编程通用集成电路芯片通信包括:
通过所述应用处理器的无线电接口层接收针对所述间接请求生成的响应;以及
通过所述应用处理器的所述无线电接口层将所生成的响应转发至所述基带处理器。
18.根据权利要求7至9中任一项所述的方法,进一步包括:
响应于接收到来自所述基带处理器的一个或多个命令,与没有物理或电连接至所述基带处理器的一个或多个其他虚拟可再编程通用集成电路芯片通信。
CN201910054051.5A 2015-05-16 2016-02-10 通过移动站与蜂窝网络通信的方法 Active CN109905237B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562162740P 2015-05-16 2015-05-16
US62/162,740 2015-05-16
US201562171246P 2015-06-05 2015-06-05
US62/171,246 2015-06-05
CN201680041546.9A CN108028749B (zh) 2015-05-16 2016-02-10 用于虚拟化可再编程的通用集成电路芯片的装置、方法以及系统

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201680041546.9A Division CN108028749B (zh) 2015-05-16 2016-02-10 用于虚拟化可再编程的通用集成电路芯片的装置、方法以及系统

Publications (2)

Publication Number Publication Date
CN109905237A CN109905237A (zh) 2019-06-18
CN109905237B true CN109905237B (zh) 2021-12-28

Family

ID=55398347

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201910054051.5A Active CN109905237B (zh) 2015-05-16 2016-02-10 通过移动站与蜂窝网络通信的方法
CN201680041546.9A Active CN108028749B (zh) 2015-05-16 2016-02-10 用于虚拟化可再编程的通用集成电路芯片的装置、方法以及系统

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201680041546.9A Active CN108028749B (zh) 2015-05-16 2016-02-10 用于虚拟化可再编程的通用集成电路芯片的装置、方法以及系统

Country Status (4)

Country Link
EP (1) EP3298810A1 (zh)
CN (2) CN109905237B (zh)
HK (1) HK1252760A1 (zh)
WO (1) WO2016185293A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10516990B2 (en) 2014-09-17 2019-12-24 Simless, Inc. Apparatuses, methods and systems for implementing a trusted subscription management platform
US11172352B2 (en) 2014-09-17 2021-11-09 Gigsky, Inc. Apparatuses, methods, and systems for configuring a trusted java card virtual machine using biometric information
US11606685B2 (en) 2014-09-17 2023-03-14 Gigsky, Inc. Apparatuses, methods and systems for implementing a trusted subscription management platform
US10075841B2 (en) 2014-09-17 2018-09-11 Simless, Inc. Apparatuses, methods and systems for implementing a trusted subscription management platform
IT201800004046A1 (it) * 2018-03-28 2019-09-28 St Microelectronics Srl Procedimento per la personalizzazione di carte a circuito integrato, corrispondente sistema e prodotto informatico
CN109831775B (zh) * 2019-02-02 2021-12-03 华为数字技术(苏州)有限公司 一种处理器、基带芯片以及sim卡信息传输方法
CN113114607A (zh) * 2020-01-10 2021-07-13 中国移动通信有限公司研究院 一种终端设备
GB202002663D0 (en) * 2020-02-25 2020-04-08 Csl Dualcom Ltd Autonomous and resilient integrated circuit device
CN117528478A (zh) * 2022-07-29 2024-02-06 华为技术有限公司 一种虚拟用户识别卡的访问方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014018356A1 (en) * 2012-07-24 2014-01-30 Intel Corporation Providing access to encrypted data
CN103748906A (zh) * 2011-08-22 2014-04-23 诺基亚公司 传统终端中允许多sim的应用以及euicc的使用
CN103797827A (zh) * 2011-09-16 2014-05-14 诺基亚公司 用于访问虚拟智能卡的方法和装置
CN104396289A (zh) * 2012-05-11 2015-03-04 苹果公司 调配嵌入式用户身份模块

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7539175B2 (en) * 2004-11-19 2009-05-26 The Trustees Of Stevens Institute Of Technology Multi-access terminal with capability for simultaneous connectivity to multiple communication channels
US8819113B2 (en) * 2009-03-02 2014-08-26 Kaseya International Limited Remote provisioning of virtual machines
US8924715B2 (en) * 2010-10-28 2014-12-30 Stephan V. Schell Methods and apparatus for storage and execution of access control clients
US8494576B1 (en) * 2012-05-03 2013-07-23 Sprint Communications Company L.P. Near field communication authentication and validation to access corporate data
US8649770B1 (en) * 2012-07-02 2014-02-11 Sprint Communications Company, L.P. Extended trusted security zone radio modem
US8983447B2 (en) * 2012-08-14 2015-03-17 Qualcomm Incorporated Methods, systems and devices for dynamic HPLMN configuration
US8418230B1 (en) * 2012-08-28 2013-04-09 Netcomm Wireless Limited Apparatus and method for mobile communications and computing
US8898769B2 (en) * 2012-11-16 2014-11-25 At&T Intellectual Property I, Lp Methods for provisioning universal integrated circuit cards
US8959331B2 (en) * 2012-11-19 2015-02-17 At&T Intellectual Property I, Lp Systems for provisioning universal integrated circuit cards
CN103853590A (zh) * 2012-11-30 2014-06-11 华为技术有限公司 一种虚拟sim卡数据存储、删除的方法和设备
US8995966B2 (en) * 2012-12-05 2015-03-31 Google Technology Holdings LLC Radio interface layer design for smartphones
US8935746B2 (en) * 2013-04-22 2015-01-13 Oracle International Corporation System with a trusted execution environment component executed on a secure element
JP6214770B2 (ja) * 2013-07-25 2017-10-18 華為技術有限公司Huawei Technologies Co.,Ltd. モバイルネットワーク、サブスクリプションマネージャ、およびユーザ機器を動的に切り換えるための方法
EP3031195B1 (en) * 2013-08-05 2022-03-02 Nokia Technologies Oy Secure storage synchronization
US9749233B2 (en) * 2013-09-13 2017-08-29 Facebook, Inc. Techniques for smart data routing
US9411745B2 (en) * 2013-10-04 2016-08-09 Qualcomm Incorporated Multi-core heterogeneous system translation lookaside buffer coherency
US9208300B2 (en) * 2013-10-23 2015-12-08 At&T Intellectual Property I, Lp Apparatus and method for secure authentication of a communication device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103748906A (zh) * 2011-08-22 2014-04-23 诺基亚公司 传统终端中允许多sim的应用以及euicc的使用
CN103797827A (zh) * 2011-09-16 2014-05-14 诺基亚公司 用于访问虚拟智能卡的方法和装置
CN104396289A (zh) * 2012-05-11 2015-03-04 苹果公司 调配嵌入式用户身份模块
WO2014018356A1 (en) * 2012-07-24 2014-01-30 Intel Corporation Providing access to encrypted data

Also Published As

Publication number Publication date
CN108028749A (zh) 2018-05-11
WO2016185293A1 (en) 2016-11-24
HK1252760A1 (zh) 2019-05-31
CN109905237A (zh) 2019-06-18
CN108028749B (zh) 2019-01-22
EP3298810A1 (en) 2018-03-28

Similar Documents

Publication Publication Date Title
US10206097B2 (en) Apparatuses, methods and systems for configuring a trusted java card virtual machine using biometric information
CN109905237B (zh) 通过移动站与蜂窝网络通信的方法
US11172352B2 (en) Apparatuses, methods, and systems for configuring a trusted java card virtual machine using biometric information
US10516990B2 (en) Apparatuses, methods and systems for implementing a trusted subscription management platform
US8954067B2 (en) Method and apparatus for emulating a plurality of subscriptions
US9198026B2 (en) SIM lock for multi-SIM environment
US20200236533A1 (en) Apparatuses, methods and systems for virtualizing a reprogrammable universal integrated circuit chip
US9948641B2 (en) Method and devices for providing a subscription profile on a mobile terminal
US11051160B2 (en) Apparatuses, methods and systems for implementing a system-on-chip with integrated reprogrammable cellular network connectivity
KR20200017175A (ko) 전자 장치, 외부 전자 장치 및 외부 전자 장치의 eSIM 관리 방법
US11606685B2 (en) Apparatuses, methods and systems for implementing a trusted subscription management platform
WO2016075622A1 (en) Communication with plurality of cellular networks using cellular modem and virtual subscriber identity modules stored in software-based embedded universal integrated circuit card (euicc)
CN107079291B (zh) 用于个性化终端设备的安全元件的方法和系统
KR20170116069A (ko) 보안 요소의 운영방법
US20240129743A1 (en) Method for personalizing a secure element

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant