KR101934601B1 - Secure device data records - Google Patents

Secure device data records Download PDF

Info

Publication number
KR101934601B1
KR101934601B1 KR1020137010760A KR20137010760A KR101934601B1 KR 101934601 B1 KR101934601 B1 KR 101934601B1 KR 1020137010760 A KR1020137010760 A KR 1020137010760A KR 20137010760 A KR20137010760 A KR 20137010760A KR 101934601 B1 KR101934601 B1 KR 101934601B1
Authority
KR
South Korea
Prior art keywords
network
ddr
secure
processor
service
Prior art date
Application number
KR1020137010760A
Other languages
Korean (ko)
Other versions
KR20130114663A (en
Inventor
그레고리 쥐. 롤리
알리레자 래시니아
마이클 제이. 사빈
제임스 라빈
Original Assignee
헤드워터 리서치 엘엘씨
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 헤드워터 리서치 엘엘씨 filed Critical 헤드워터 리서치 엘엘씨
Publication of KR20130114663A publication Critical patent/KR20130114663A/en
Application granted granted Critical
Publication of KR101934601B1 publication Critical patent/KR101934601B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)
  • Telephone Function (AREA)

Abstract

보안 디바이스 데이터 기록(DDR)들이 제공된다. 일부 실시예들에서, 보안 DDR들을 위한 시스템은 무선 네트워크을 이용한 무선 통신을 위한 무선 통신 디바이스의 프로세서와 그 프로세서에 연결되고 지시를 그 프로세서에 제공하도록 구성되는 메모리를 포함하고, 여기서 프로세서는 보안 실행 환경으로 구성되고, 그리고 보안 실행 환경은: 무선 네트워크를 이용한 무선 통신 디바이스의 서비스 사용을 모니터링하고; 무선 네트워크를 이용한 무선 통신 디바이스의 모니터링된 서비스 사용의 복수의 디바이스 데이터 기록들을 발생시키도록 구성되고, 각 디바이스 데이터 기록은 고유의 시퀀스 순서 식별자와 관련된다. 일부 실시예들에서, 보안 실행 환경은 어플리케이션 프로세서에서, 모뎀 프로세서에서, 및/또는 가입자 식별 모듈(SIM)에 위치된다.Secure Device Data Records (DDR) are provided. In some embodiments, a system for secure DDRs includes a processor of a wireless communication device for wireless communication using a wireless network, and a memory coupled to the processor and configured to provide instructions to the processor, And the security enforcement environment comprises: monitoring the service usage of the wireless communication device using the wireless network; And to generate a plurality of device data records of the monitored service usage of the wireless communication device using the wireless network, wherein each device data record is associated with a unique sequence sequence identifier. In some embodiments, the secure execution environment is located in an application processor, in a modem processor, and / or in a subscriber identity module (SIM).

Figure R1020137010760
Figure R1020137010760

Description

보안 디바이스 데이터 기록{SECURE DEVICE DATA RECORDS}Security Device Data Recording {SECURE DEVICE DATA RECORDS}

본 발명은 보안 디바이스 데이터 기록에 관한 것이다.The present invention relates to secure device data recording.

매스마켓 디지털 통신 및 콘텐츠 배포의 출현으로, 무선 네트워크, 케이블 네트워크 및 디지털 가입자 회선(DSL) 네트워크와 같은, 많은 접속 네트워크가 사용자 용량의 부담을 받는데, 예컨대 EVDO(Evolution-Data Optimized), 고속 패킷 접속(HSPA: High Speed Packet Access), LTE(Long Term Evolution), 와이맥스(WiMax: Worldwide Interoperability for Microwave Access), 및 와이파이(Wi-Fi: Wireless Fidelity) 무선 네트워크에 있어서 점점 더 사용자 용량이 제약된다. 무선 네트워크 용량이 다중입출력(MIMO)과 같은 새로운 더 높은 용량의 무선 라디오 접속 기술로 증가하고 더 많은 주파수 스펙트럼이 미래에 사용됨에도 불구하고, 이 용량 증가는 커지는 디지털 네트워킹 수요를 충족시키는데 필요한 것보다 더 적을 것이다.With the advent of mass market digital communications and content distribution, many access networks, such as wireless networks, cable networks and digital subscriber line (DSL) networks, are burdened with user capacity, such as Evolution-Data Optimized (EVDO) (HSPA), Long Term Evolution (LTE), Worldwide Interoperability for Microwave Access (WiMax), and Wi-Fi (Wireless Fidelity) wireless networks. Although the wireless network capacity is increasing with new higher capacity wireless radio access technologies such as multiple input / output (MIMO) and more frequency spectrum is used in the future, this capacity increase is more than necessary to meet the growing digital networking demand I will write.

유사하게, 케이블 및 DSL과 같은, 와이어 라인 접속 네트워크가 사용자 당 더 높은 평균 용량을 가질 수 있음에도, 와이어 라인 사용자 서비스 소비 습관은, 이용 가능한 용량을 빨리 소비하고 전반적인 네트워크 서비스 경험을 열화시킬 수 있는 매우 높은 대역폭 어플리케이션을 향하는 추세이다. 서비스 제공업자 비용의 일부 구성요소가 증가하는 대역폭과 함께 올라가기 때문에, 이 추세 또한 서비스 제공업자 수익에 부정적으로 영향을 미칠 것이다.Similarly, although wireline access networks, such as cable and DSL, may have a higher average capacity per user, wireline user service consumption habits are very likely to consume the available capacity quickly and degrade the overall network service experience Trend toward high bandwidth applications. This trend will also negatively impact service provider revenues as some components of service provider costs rise with increasing bandwidth.

본 발명은 다양한 방법들로 구현될 수 있는데, 프로세스; 장치; 시스템; 물질의 조성; 컴퓨터 판독 가능한 저장 매체에 구성된 컴퓨터 프로그램 제품; 및/또는 프로세서에 연결된 메모리에 저장되거나/되고 메모리에 의해 제공되는 명령을 실행하도록 구성된 프로세서와 같은, 프로세서를 포함한다. 본 명세서에서, 이러한 구현들 또는 발명이 취할 수 있는 임의의 다른 형태는 기술들로서 언급될 수 있다. 일반적으로, 설명된 프로세스의 단계들의 순서는 발명의 범위 내에서 변경될 수 있다. 다르게 언급되지 않는다면, 과제를 수행하기 위해 구성되는 것으로 설명되는 프로세서 또는 메모리와 같은 구성요소는 주어진 시간에 과제를 수행하도록 일시적으로 구성된 일반적인 구성요소 또는 과제를 수행하기 위해 제조되는 특정 구성요소로서 구현될 수 있다. 본원에서 사용된 바와 같이, "프로세서"라는 용어는, 컴퓨터 프로그램 명령과 같이, 데이터를 처리하도록 구성된 하나 이상의 디바이스, 회로 및/또는 프로세싱 코어(processing core)를 말한다.The present invention can be implemented in a variety of ways, including processes; Device; system; Composition of matter; A computer program product configured on a computer readable storage medium; And / or a processor, such as a processor, configured to execute instructions stored and / or provided by memory coupled to the processor. In this specification, any other forms that these implementations or inventions may take may be referred to as techniques. In general, the order of the steps of the described process may vary within the scope of the invention. Unless otherwise stated, components such as a processor or memory, which are described as being configured to perform the task, may be implemented as a general component or a component that is constructed to perform the task temporarily configured to perform a task at a given time . As used herein, the term " processor " refers to one or more devices, circuits, and / or processing cores configured to process data, such as computer program instructions.

본 발명의 다양한 실시예들은 다음의 상세한 설명과 첨부한 도면에서 설명된다.
도 1은 일부 실시예에 따른 진보된 무선 서비스 플랫폼 단대단(end-to-end) DDR 보고 및 처리 시스템의 하이 레벨 도표를 나타낸다.
도 2는 일부 실시예에 따른 DDR 펌웨어를 부팅, 실행 및 업데이트하기 위한 프로세스를 나타낸다.
도 3은 일부 실시예에 따른 APU 구현에서 보안 내장된 DDR 프로세서를 위한 아키텍쳐를 나타낸다.
도 4는 일부 실시예에 따른 모뎀 버스 드라이버와 함께 APU 구현에서 보안 내장된 DDR 프로세서를 위한 다른 아키텍쳐를 나타낸다.
도 5는 일부 실시예에 따른 모뎀 버스 드라이버와 함께 APU 구현에서 보안 내장된 DDR 프로세서를 위한 다른 아키텍쳐를 나타낸다.
도 6은 일부 실시예에 따른 MPU 구현에서 보안 내장된 DDR 프로세서를 위한 아키텍쳐를 나타낸다.
도 7은 일부 실시예에 따른 MPU 구현에서 보안 내장된 DDR 프로세서를 위한 다른 아키텍쳐를 나타낸다.
도 8은 일부 실시예에 따른 APU에서 보안 내장된 DDR 프로세서와 MPU 구현에서 데이터 경로 보안 검증기(DPSV)를 위한 아키텍쳐를 나타낸다.
도 9는 일부 실시예에 따른 가입자 식별 모듈(SIM)에서 보안 내장된 DDR 프로세서와 MPU 구현에서 데이터 경로 보안 검증기(DPSV)를 위한 아키텍쳐를 나타낸다.
도 10은 일부 실시예에 따른 가입자 식별 모듈(SIM)에서 보안 내장된 DDR 프로세서와 MPU 구현에서 데이터 경로 보안 검증기(DPSV)를 위한 다른 아키텍쳐를 나타낸다.
도 11은 일부 실시예에 따른 가입자 식별 모듈(SIM)에서 보안 내장된 DDR 프로세서와 MPU 구현에서 데이터 경로 보안 검증기(DPSV)를 위한 다른 아키텍쳐를 나타낸다.
도 12는 일부 실시예에 따른 보안 부팅 시퀀스 흐름도를 나타낸다.
도 13은 일부 실시예에 따른 보안 및 비보안 메모리 영역들 사이에서 DDR 서비스 프로세서 메일박스 메시지들을 통과시키기 위한 기능적 도표를 나타낸다.
도 14는 일부 실시예에 따른 DDR 프로세서 서비스 제어기 세션 인증 및 검증을 위한 흐름도를 나타낸다.
도 15는 일부 실시예에 따른 디바이스 지원형 서비스(DAS)를 구현하기 위한 보안 디바이스 데이터 기록들에 대한 흐름도를 나타낸다.
도 16은 일부 실시예에 따른 진보된 무선 서비스 플랫폼 단대단 DDR 보고 및 처리 시스템을 나타낸다.
Various embodiments of the present invention are described in the following detailed description and the accompanying drawings.
1 illustrates a high-level diagram of an advanced wireless service platform end-to-end DDR reporting and processing system in accordance with some embodiments.
Figure 2 illustrates a process for booting, executing and updating DDR firmware in accordance with some embodiments.
Figure 3 illustrates an architecture for a secure embedded DDR processor in an APU implementation in accordance with some embodiments.
Figure 4 illustrates another architecture for a secure embedded DDR processor in an APU implementation with a modem bus driver in accordance with some embodiments.
Figure 5 illustrates another architecture for a secure embedded DDR processor in an APU implementation with a modem bus driver in accordance with some embodiments.
6 illustrates an architecture for a secure embedded DDR processor in an MPU implementation in accordance with some embodiments.
Figure 7 illustrates another architecture for a secure embedded DDR processor in an MPU implementation in accordance with some embodiments.
8 illustrates an architecture for a secure embedded DDR processor in an APU and a data path security verifier (DPSV) in an MPU implementation in accordance with some embodiments.
9 illustrates an architecture for a secure embedded DDR processor in a subscriber identity module (SIM) and a data path security verifier (DPSV) in an MPU implementation according to some embodiments.
10 illustrates another architecture for a secure embedded DDR processor in a Subscriber Identity Module (SIM) according to some embodiments and a data path security verifier (DPSV) in an MPU implementation.
Figure 11 illustrates another architecture for a secure embedded DDR processor in a Subscriber Identity Module (SIM) and a data path security verifier (DPSV) in an MPU implementation in accordance with some embodiments.
12 shows a flowchart of a secure boot sequence in accordance with some embodiments.
FIG. 13 illustrates a functional diagram for passing DDR Service Processor mailbox messages between secure and non-secure memory areas according to some embodiments.
Figure 14 illustrates a flow diagram for DDR processor service controller session authentication and verification according to some embodiments.
15 shows a flow diagram for secure device data records for implementing a Device Supported Services (DAS) in accordance with some embodiments.
16 illustrates an advanced wireless service platform end-to-end DDR reporting and processing system in accordance with some embodiments.

본 발명의 하나 이상의 실시예들의 상세한 설명은 본 발명의 원리를 설명하는 첨부의 도면들과 함께 아래에서 제공된다. 본 발명은 이러한 실시예들과 관련하여 설명되지만, 본 발명은 어떠한 실시예로도 제한되지 않는다. 본 발명의 범위는 청구범위에 의해서만 제한되고 발명은 많은 대안들, 변형들 및 균등물들을 포함한다. 다수의 특정한 세부사항들이 본 발명에 대한 철저한 이해를 제공하기 위해 다음 설명에 나타난다. 이러한 상세들은 예시의 목적을 위해 제공되고 본 발명은 이러한 특정 상세들의 일부 또는 전부가 없어도 청구범위에 따라 실시될 수 있다. 명확성을 위해, 발명과 관련된 기술 분야에서 알려진 기술적 자료는 발명이 불필요하게 모호하게 되지 않도록 상세하게 설명되지 않는다.The detailed description of one or more embodiments of the invention is provided below with the accompanying drawings, which illustrate the principles of the invention. While the invention will be described in conjunction with such embodiments, the invention is not limited to any embodiment. The scope of the invention is to be limited only by the claims and the invention includes many alternatives, modifications and equivalents. Numerous specific details are set forth in the following description to provide a thorough understanding of the present invention. These details are provided for the purposes of illustration and the invention may be practiced in accordance with the claims, without any or all of these specific details. For clarity, technical data known in the art relating to the invention are not described in detail in order not to unnecessarily obscure the invention.

일부 실시예들에서, 보안 디바이스 데이터 기록(Device Data Record, DDR)들이 제공된다. 일부 실시예들에서, 디바이스 지원형 서비스를 위한 보안 DDR들이 제공된다. 일부 실시예들에서, 디바이스 지원형 서비스를 위한 보안 DDR들은 무선 통신 디바이스의 서비스 사용 모니터링(예를 들어, 소스 주소, 포트 주소, 목적지 주소, 목적지 포트 및 프로토콜의 5-투플에 기초하는 바와 같은, 네트워크 서비스 사용의 펌웨어 기반 모니터링)을 위해 제공된다. 일부 실시예들에서, 디바이스 지원형 서비스를 위한 보안 DDR들은 무선 연결과 다른 입력/출력(I/O) 연결 또는 무선 통신 디바이스의 포트들의 서비스 사용 모니터링(예를 들어, 소스 주소, 포트 주소, 목적지 주소, 목적지 포트 및 프로토콜의 5-투플에 기초하는 바와 같은, 네트워크 서비스 사용의 펌웨어 기반 모니터링)을 위해 제공된다. 일부 실시예들에서, 보안 DDR들을 위한 시스템은: 무선 네트워크를 이용한 무선 통신을 위한 무선 통신 디바이스의 프로세서로서, 이러한 프로세서는 보안 실행 환경으로 구성되고 보안 실행 환경은 무선 네트워크를 이용한 무선 통신 디바이스의 서비스 사용을 모니터링하고; 무선 네트워크를 이용한 무선 통신 디바이스의 모니터링된 서비스 사용의 복수의 디바이스 데이터 기록들을 생성시키도록 구성되며, 각 디바이스 데이터 기록은 고유한 시퀀스 순서 식별자와 관련되는 것인, 프로세서; 및 프로세서에 연결되어 프로세서에 명령을 제공하도록 구성되는 메모리를 포함한다. 일부 실시예들에서, 보안 DDR들을 위한 시스템은: 무선 네트워크를 이용한 무선 통신을 위한 무선 통신 디바이스의 프로세서로서, 이러한 프로세서는 보안 실행 환경으로 구성되고, 보안 실행 환경은: 광역 무선 네트워크(예를 들어, 2G, 3G, 4G 등), WiFi 네트워크 또는 연결, USB 네트워크 또는 연결, 이더넷 네트워크 또는 연결, 파이어와이어(Firewire) 연결, 블루투스 연결, 근거리 통신(NFC) 연결 또는 다른 I/O 연결 또는 포트를 포함하면서 이들에 제한되지 않는 디바이스를 위한 I/O 연결들 및 네트워크들 중 하나 이상을 이용한 무선 통신 디바이스의 서비스 사용을 모니터링하도록 구성되고; 무선 네트워크를 이용한 무선 통신 디바이스의 모니터링된 서비스 사용의 복수의 디바이스 데이터 기록들을 생성시키며, 각 디바이스 데이터 기록은 고유한 시퀀스 순서 식별자와 관련되는 것인, 프로세서; 및 프로세서에 연결되어 프로세서에 명령을 제공하도록 구성된 메모리를 포함한다. 일부 실시예들에서, 보안 DDR 프로세서를 포함하는 보안 실행 환경은 어플리케이션 프로세서, 모뎀 프로세서 및/또는 가입자 식별 모듈(subscriber identity module, SIM)에 위치된다.In some embodiments, secure device data records (DDR) are provided. In some embodiments, secure DDRs for device-supported services are provided. In some embodiments, secure DDRs for device-supported services may be used to monitor service usage of a wireless communication device (e.g., based on a source address, a port address, a destination address, a destination port, Based monitoring of the use of network services). In some embodiments, the secure DDRs for device-aided services may be used for monitoring the service usage of the ports of the wireless communication device (e.g., source address, port address, destination Based monitoring of the use of network services, such as those based on a 5-tuple of addresses, destination ports and protocols. In some embodiments, the system for secure DDRs comprises: a processor of a wireless communication device for wireless communication using a wireless network, wherein the processor is configured as a secure execution environment and the secure execution environment comprises a wireless communication device service Monitoring usage; A processor configured to generate a plurality of device data records of a monitored service usage of a wireless communication device using a wireless network, wherein each device data record is associated with a unique sequence sequence identifier; And a memory coupled to the processor and configured to provide instructions to the processor. In some embodiments, the system for secure DDRs comprises: a processor of a wireless communication device for wireless communication using a wireless network, wherein the processor is configured with a security execution environment, the security execution environment comprising: a wide area wireless network , 2G, 3G, 4G, etc.), WiFi network or connection, USB network or connection, Ethernet network or connection, Firewire connection, Bluetooth connection, NFC connection or other I / And to monitor service usage of the wireless communication device using one or more of the networks and I / O connections for devices not limited to them; A plurality of device data records of a monitored service usage of a wireless communication device using a wireless network, each device data record being associated with a unique sequence sequence identifier; And a memory coupled to the processor and configured to provide instructions to the processor. In some embodiments, a secure execution environment including a secure DDR processor is located in an application processor, a modem processor and / or a subscriber identity module (SIM).

대부분의 설명된 실시예들에서, 보안 디바이스 데이터 기록 처리 시스템은 디바이스로의 광역 무선 네트워크 연결(예를 들어, 2G, 3G, 또는 4G 연결) 또는 광역 무선 모뎀(예를 들어, 2G, 3G 또는 4G 모뎀) 상에서 진행하는 통신 상에서 작용한다. 당업자가 이해하는 바와 같이, 보안 디바이스 데이터 기록 처리 시스템은 하나 이상의 부가적 I/O 네트워크들, 연결들, 포트들 또는 모뎀들(예를 들어, WiFi 네트워크, 연결, 포트 또는 모뎀; USB 네트워크, 연결, 포트 또는 모뎀; 이더넷 네트워크, 연결, 포트 또는 모뎀; 파이어와이어 네트워크, 연결, 포트 또는 모뎀; 블루투스 네트워크, 연결, 포트 또는 모뎀; 근거리 통신(NFC) 네트워크, 연결, 포트 또는 모뎀; 또는 다른 I/O 연결, 포트 또는 모뎀) 상에서 진행하는 통신들 상에서 또한 작용할 수 있다.In most of the described embodiments, the secure device data record processing system may include a wide area wireless network connection (e.g., a 2G, 3G, or 4G connection) or a wide area wireless modem (e.g., 2G, 3G, or 4G) Modem). As will be appreciated by those skilled in the art, the secure device data record processing system may include one or more additional I / O networks, connections, ports or modems (e.g., a WiFi network, connection, port or modem; , A port or modem, an Ethernet network, a connection, a port or a modem, a FireWire network, a connection, a port or a modem, a Bluetooth network, a connection, a port or a modem, a local area network (NFC) network, O connections, ports, or modems).

일부 실시예들에서, 보안 DDR들을 위한 시스템은, 무선 네트워크를 이용한 무선 통신을 위한 무선 통신 디바이스의 프로세서로서, 이러한 프로세서는 보안 실행 환경으로 구성되고, 보안 실행 환경은 무선 네트워크(그리고 가능하게는 디바이스를 위한 하나 이상의 부가적 I/O 연결들)를 이용한 무선 통신 디바이스의 서비스 사용을 모니터링하고; 무선 네트워크(그리고 아마도 디바이스를 위한 하나 이상의 부가적 I/O 연결들)를 이용한 무선 통신 디바이스의 모니터링된 서비스 사용의 복수의 디바이스 데이터 기록들을 생성시키도록 구성되며, 각 디바이스 데이터 기록은 디바이스 데이터 기록에 의해 포괄되는 서비스 사용 간격에 대한 서비스 사용의 내역보고(accounting)를 제공하는 순차적 디바이스 데이터 기록을 가지는 디바이스 데이터 기록들의 순서화된 시퀀스 중 하나이고, 각 디바이스 데이터 기록은 보안된 고유한 시퀀스 순서 식별자와 관련되는 것인, 프로세서; 및 프로세서에 연결되어 프로세서에 명령을 제공하도록 구성되는 메모리를 포함한다. 이러한 방법으로, 디바이스 무선 접속 네트워크 연결(또는 다른 I/O 포트 통신 연결)에 대한 통신 활동은 추가의 처리를 위해 네트워크 서버에 안전하게 모니터링되고 보고되어 디바이스 접속 서비스 정책들이 적절하게 집행되는지 여부를 판단하거나, 또는 디바이스 작동 환경에서 악성 소프트웨어가 네트워크(또는 다른 I/O 연결 또는 포트)를 접속하는지를 판단한다. 일부 실시예들에서, 보안 DDR 프로세서 환경을 포함하는 보안 실행은 어플리케이션 프로세서에, 모뎀 프로세서에, 및/또는 가입자 식별 모듈(SIM)에 위치된다.In some embodiments, a system for secure DDRs is a processor of a wireless communication device for wireless communication using a wireless network, wherein the processor is configured as a secure execution environment, the secure execution environment comprises a wireless network (and possibly a device One or more additional I / O connections for the wireless communication device); Each device data record being configured to generate a plurality of device data records of a monitored service usage of a wireless communication device using a wireless network (and possibly one or more additional I / O connections for the device) Wherein each device data record is one of an ordered sequence of device data records having sequential device data records that provide historical accounting of service usage for a service usage interval encompassed by each device data record associated with a secured unique sequence sequence identifier Gt ;; < / RTI > And a memory coupled to the processor and configured to provide instructions to the processor. In this way, the communication activity for the device wireless access network connection (or other I / O port communication connection) can be securely monitored and reported to the network server for further processing to determine whether the device access service policies are enforced appropriately , Or whether the malicious software in the device operating environment connects to the network (or other I / O connection or port). In some embodiments, a security implementation that includes a secure DDR processor environment is located in an application processor, a modem processor, and / or a subscriber identity module (SIM).

일부 실시예들에서, 추가 분석과 처리를 위해 네트워크 서버로 보안 디바이스 데이터 기록들을 전달하기 위한 통신 채널은 보안 메시지 수신 피드백 루프를 포함하고, 만일 보안 메시지 피드백 루프가 중단된다면, 디바이스 환경 보안 오류 조건이 검출되어 작동된다. 일부 실시예들에서, 디바이스 데이터 기록의 순서화된 시퀀스는 서명된 또는 암호화된 통신 채널을 이용하여 서비스 제어기로 전달된다. 일부 실시예들에서, 서비스 제어기는 디바이스 데이터 기록들을 관찰하여 디바이스 기반 접속 네트워크(또는 다른 I/O 연결들 또는 포트들) 접속 정책을 따르는지를 판단하게 된다. 일부 실시예들에서, 서비스 제어기는 또한 디바이스 데이터 기록들의 순서화된 시퀀스의 무결성을 관찰하여 디바이스 데이터 기록들이 무단 조작되거나 또는 누락되는지를 판단하게 된다. 일부 실시예들에서, 만일 서비스 프로세서가 디바이스 데이터 기록들이 무단 조작되거나 또는 누락되지 않았다고 판단한다면, 서비스 제어기는 서명된 또는 암호화된 디바이스 데이터 기록 수신 메시지를 반송한다. 일부 실시예들에서, 만일 서비스 프로세서가 디바이스 데이터 기록들이 무단 조작되거나 또는 누락되었다고 판단한다면, 서비스 제어기는 오류 메시지를 반송하거나 또는 표시되거나 암호화된 디바이스 데이터 기록 수신 메시지를 반송하지 않는다. 일부 실시예들에서, 만일 보안 DDR들을 위한 시스템이 서비스 제어기로부터 오류 메시지를 수신하거나, 또는 일정 시간의 기간 내에서 또는 일정 수의 전송된 디바이스 데이터 기록들 내에서 또는 처리된 일정량의 통신 정보 내에서 표시되거나 암호화된 디바이스 데이터 기록 수신 메시지를 수신하지 않는다면, (i) 디바이스 설정 오류 메시지는 보안 관리자 또는 서버로 전달을 위해 생성될 수 있거나, 또는 (ii) 무선 통신 디바이스를 위한 하나 이상의 무선 네트워크 연결들(또는 다른 I/O 연결 또는 포트)은 차단되거나 또는 소정의 일련의 안전한 목적지로 제한된다. 이러한 방법으로, 만일 디바이스 서비스 프로세서, 디바이스 작동 환경, 디바이스 작동 시스템 또는 디바이스 소프트웨어가 예상되는 정책 또는 허용되는 정책을 따르지 않는 무선 네트워크(또는 다른 I/O 포트) 접속 서비스 사용 특성들을 만드는 방법으로 무단 조작된다면, 디바이스 설정 오류 메시지가 생성될 수 있고 또는 디바이스 무선 네트워크 접속(또는 다른 I/O 연결 접속)이 제한되거나 차단될 수 있다. 이러한 실시예들은 디바이스 기반 네트워크 접속(또는 I/O 컨트롤) 정책을 보안함에 있어 유용할 수 있고 또한 무단 조작되는 디바이스 소프트웨어 또는 디바이스에 존재하는 임의의 악성 소프트웨어(malware)를 식별함에 있어 유용할 수 있다. 일부 실시예들에서, 무선 네트워크 접속(또는 다른 I/O 접속)에서의 규제는 제한된 수의 네트워크 목적지 또는 자원으로 접속을 일으켜서 디바이스 설정 오류 상황의 추가적 분석 또는 문제 해결을 가능하게 하기에 충분하다.In some embodiments, the communication channel for communicating secure device data records to a network server for further analysis and processing includes a secure message reception feedback loop, and if the secure message feedback loop is interrupted, a device environment security error condition Detected and operated. In some embodiments, the ordered sequence of device data recording is communicated to the service controller using a signed or encrypted communication channel. In some embodiments, the service controller observes device data records to determine if it complies with a device based access network (or other I / O connections or ports) access policy. In some embodiments, the service controller also observes the integrity of the ordered sequence of device data records to determine whether device data records are tampered with or are missing. In some embodiments, if the service processor determines that the device data records are tampered with or not missing, the service controller returns a signed or encrypted device data record receive message. In some embodiments, if the service processor determines that device data records are tampered with or missing, the service controller does not return an error message or return the displayed or encrypted device data record receive message. In some embodiments, if the system for secure DDRs receives an error message from a service controller, or if it receives an error message within a period of time or within a certain number of transmitted device data records or within a predetermined amount of processed communication information (I) a device setup error message may be generated for delivery to a security manager or server, or (ii) one or more wireless network connections for a wireless communication device (Or other I / O connections or ports) are blocked or limited to a predetermined set of secure destinations. In this way, unauthorized manipulation (such as by creating a wireless network (or other I / O port) connection service usage characteristics in which the device service processor, device operating environment, device operating system or device software does not conform to expected or permitted policies A device configuration error message may be generated or a device wireless network connection (or other I / O connection connection) may be restricted or blocked. These embodiments may be useful in securing a device based network connection (or I / O control) policy and may also be useful in identifying any malicious software present in unauthorized device software or devices . In some embodiments, regulation in a wireless network connection (or other I / O connection) is sufficient to allow a connection to a limited number of network destinations or resources to allow further analysis or troubleshooting of device configuration error conditions.

디바이스 지원형 서비스(DAS)를 제공하기 위한 다양한 기술들은, 사실상 본원에서 참조로 포함된, 미국 공개 출원 제2010/0192212호인 "AUTOMATED DEVICE PROVISIONING AND ACTIVATION"이라는 제목으로 2009년 3월 2일 출원되어, 동시 계류 중인 미국 특허 출원 제12/380,780호(변호인 목록 번호 RALEP007), 미국 공개 출원 번호 제2010/0197266호인 "DEVICE ASSISTED CDR CREATION, AGGREGATION, MEDIATION AND BILLING"이라는 제목으로 2010년 1월 27일 출원되어, 동시 계류 중인 미국 특허 출원 제12/695,019호(변호인 목록 번호 RALEP022) 및 미국 공개 출원 번호 제2010/0199325호인 "SECURITY TECHNIQUES FOR DEVICE ASSISTED SERVICES"라는 제목으로 2010년 1월 27일 출원되어, 동시 계류 중인 미국 특허 출원 제12/694,445호(변호인 목록 번호 RALEP025)에서 설명되었다.Various techniques for providing a device-assisted service (DAS) are described in U.S. Application No. 2010/0192212, entitled " AUTOMATED DEVICE PROVISIONING AND ACTIVATION " filed on March 2, 2009, Filed January 27, 2010 under the title "DEVICE ASSISTED CDR CREATION, AGGREGATION, MEDIATION AND BILLING", U.S. Published Patent Application No. 12 / 380,780 (Attorney Docket Number RALEP007), U.S. Published Application No. 2010/0197266 Filed January 27, 2010, entitled " SECURITY TECHNIQUES FOR DEVICE ASSISTED SERVICES ", co-pending U.S. Patent Application No. 12 / 695,019 (Attorney Docket No. RALEP022) and U.S. Published Application No. 2010/0199325, No. 12 / 694,445 (Attorney Docket Number RALEP025).

일부 실시예들에서, DDR 프로세서는 다양한 실시예들에 관하여 본원에서 설명된 바와 같이 무선 통신 디바이스들을 위해(예를 들어, 휴대폰, 스마트 폰, 랩탑, PDA, 게임 디바이스, 음악 디바이스, 태블릿, 컴퓨터, 및/또는 무선 통신 접속을 가지는 임의의 다른 디바이스와 같은, 무선 통신 디바이스들을 위한 무선 네트워크 서비스 사용을 위한 디바이스 지원형 서비스(DAS)의 구현을 돕기 위해) 제공된다. 일부 실시예들에서, 보안 DDR 프로세서(예를 들어, 보안 실행 환경에서 구현/실행됨)가 제공된다. 일부 실시예들에서, DDR 프로세서는 본원에서 설명된 다양한 기술들을 이용하여 안전하게 된다. 일부 실시예들에서, DDR 프로세서는 DDR 생성기를 포함한다. 일부 실시예들에서, DDR 프로세서는 DDR을 생성시킨다. 일부 실시예들에서, DDR 프로세서는 네트워크 요소(예를 들어, 서비스 제어기, DDR 네트워크 저장 시스템, 및/또는 다른 네트워크 요소)에 DDR들을 보고한다. 일부 실시예들에서, 보안 DDR 프로세서는 서비스 프로세서와 같은 디바이스 요소/기능에 DDR들을 보고하는데, 서비스 프로세서는 네트워크 요소에 전달되는 보고(예를 들어, 또는 프로세서 보고들)에서 DDR들을 집계한다(예를 들어, 그리고 다른 서비스 사용 및/또는 다른 정보를 포함할 수 있다). 일부 실시예들에서, DDR뿐만 아니라 서비스 프로세서 보고가 생성되고 네트워크 요소로 전달된다. 일부 실시예들에서, DDR 프로세서는 본원에서 설명된 다양한 기술들을 이용하여 안전하게 된다.In some embodiments, the DDR processor may be used for wireless communication devices (e.g., cellular phones, smart phones, laptops, PDAs, gaming devices, music devices, tablets, computers, (DAS) for use with wireless network services for wireless communication devices, such as a wireless network, and / or any other device having a wireless communication connection. In some embodiments, a secure DDR processor (e.g., implemented / executed in a secure execution environment) is provided. In some embodiments, the DDR processor is secured using various techniques described herein. In some embodiments, the DDR processor includes a DDR generator. In some embodiments, the DDR processor generates DDR. In some embodiments, a DDR processor reports DDRs to a network element (e.g., a service controller, DDR network storage system, and / or other network element). In some embodiments, a secure DDR processor reports DDRs to a device element / function, such as a service processor, which aggregates DDRs in reporting (e.g., or processor reports) delivered to the network element And may include other service usage and / or other information). In some embodiments, service processor reports as well as DDR are generated and forwarded to network elements. In some embodiments, the DDR processor is secured using various techniques described herein.

일부 실시예들에서, DDR들은 다양한 실시예들과 관련하여 본원에서 설명된 바와 같은 디바이스 지원형 및/또는 디바이스 기반형 모니터링된 서비스 사용(특정 시간 간격 및/또는 이벤트와 같은 다양한 기준에 기초함)을 포함한다. 일부 실시예들에서, DDR들은 주기적으로 보고된다. 일부 실시예들에서, DDR들은 이벤트 및/또는 네트워크 요소(예를 들어, 서비스 제어기 또는 다른 네트워크 요소/기능)로부터 요청에 기초하여 보고된다. 일부 실시예들에서, DDR들은 디바이스 서비스 프로세서(예를 들어, 또는 다른 디바이스 요소/기능)로 전달되고, 디바이스 서비스 프로세서는 이러한 DDR들을 집계하고 이러한 DDR들을 포함하는 서비스 사용 보고들을 주기적으로 제공하거나 또는 요청 및/또는 이벤트에 기초하여 이러한 서비스 사용 보고들을 제공한다. 일부 실시예들에서, 각 DDR은 고유의 식별자(예를 들어, 고유한 시퀀스 식별자)를 포함한다. 일부 실시예들에서, 잃어버린 DDR은 고유한 식별자를 이용하여 검출될 수 있다(예를 들어, 각 DDR과 관련된 시퀀스 카운트 및/또는 시간 스탬프 정보는, 시퀀스 카운트 및/또는 시간 스탬프 정보를 이용하여 판단되는, 예컨대 잃어버린, 지연되는 및/또는 위해되는 디바이스 데이터 기록인, 잠재적으로 의심스러운 서비스 사용 이벤트의 검출을 가능하게 하고, 응답성/보정 행동들이 본원에서 설명되는 바와 같이, 의심스러운 서비스 사용 이벤트의 검출 시에 수행될 수 있다). 일부 실시예들에서, 만일 DDR이 일정한 시간 간격 내에서 수신되지 않는다면, 접속 제어기가 활성화되어 DDR들이 적절하게 생성되어 보고될 때까지 네트워크 접속을 제한하게 된다(예를 들어, 서비스 제어기와 같은 네트워크 요소가 디바이스로 킵 얼라이브(keep alive) 신호를 보내 디바이스로부터 적절하게 생성되고 검증된 DDR들의 수신을 확인하기 위한 제한시간 간격을 구현하게 되고, 그리고 만일 킵 얼라이브 신호가 특정 시간 간격 내에 수신되지 않는다면, 디바이스 기반의 보안된 접속 제어기 는 제한된 네트워크 접속 제어 기능을 구현할 수 있다).In some embodiments, the DDRs may be configured to support device-supported and / or device-based monitored service usage (based on various criteria such as specific time intervals and / or events) as described herein in connection with various embodiments, . In some embodiments, DDRs are reported periodically. In some embodiments, DDRs are reported based on a request from an event and / or a network element (e.g., a service controller or other network element / function). In some embodiments, the DDRs are delivered to a device service processor (e.g., or other device element / function), and the device service processor aggregates these DDRs and periodically provides service usage reports including these DDRs And provides these service usage reports based on requests and / or events. In some embodiments, each DDR includes a unique identifier (e.g., a unique sequence identifier). In some embodiments, the lost DDR may be detected using a unique identifier (e.g., the sequence count and / or time stamp information associated with each DDR may be determined using sequence count and / or timestamp information) Enable the detection of potentially suspicious service usage events, e.g., device data records that are lost, delayed, and / or harmed, and enable the response / corrective actions to be performed on suspicious service usage events Can be performed at the time of detection). In some embodiments, if the DDR is not received within a certain time interval, the access controller is activated to limit network access until the DDRs are properly generated and reported (e.g., a network element such as a service controller Sends a keep alive signal to the device to implement a timeout interval to confirm receipt of properly generated and verified DDRs from the device and if the keepalive signal is not received within a certain time interval, Based secured connection controller may implement limited network access control functionality).

일부 실시예들에서, DDR 네트워크 저장 시스템은 다양한 실시예들과 관련하여 본원에서 설명된 바와 같이 제공된다. 일부 실시예들에서, DDR 네트워크 저장 시스템과 DDR 조정 기능(예를 들어, DDR 기록들 및/또는 DDR 보고들 또는, CDR, 마이크로 CDR, 및/또는 IPDR 또는 다른 서비스 사용 보고들과 같은 다른 디바이스 및/또는 네트워크 기반의 서비스 사용 보고들을 조정)을 포함하는 서비스 제어기가 제공된다. 일부 실시예들에서, 네트워크 기반 조정 기능은 하나 이상의 네트워크 기반 서비스 사용 척도로 DDR들(예를 들어, 집계된 DDR들 및/또는 DDR 보고들)을 조정한다. 일부 실시예들에서, 네트워크 기반 조정 기능은 둘 이상의 네트워크 기반 서비스 사용 척도로 DDR들을 조정한다. 일부 실시예들에서 네트워크 기반 조정 기능은 둘 이상의 네트워크 기반 서비스 사용 척도(예를 들어, NBS 및/또는 QoS 및/또는 다른 네트워크 기반 서비스 사용 척도와 같은 트래픽 관련 이벤트를 포함하는 CDR, FDR, IPDR, DPI 기반 척도들)로 DDR들을 조정한다. 일부 실시예들에서, 네트워크 기반 조정 기능은 둘 이상의 디바이스 기반 서비스 사용 척도들을(예를 들어, NBS 및/또는 QoS와 같은, 트래픽 관련 이벤트를 포함하는 DDR들, 서비스 프로세서 보고들, 및/또는 다른 디바이스 기반 서비스 사용 척도들을) 네트워크 기반 서비스 사용 척도로 조정한다. 일부 실시예들에서, 네트워크 기반 조정 기능은 둘 이상의 디바이스 기반 서비스 사용 척도들을 둘 이상의 네트워크 기반 서비스 사용 척도로 조정한다. 일부 실시예들에서, 네트워크 기반 조정 기능은 둘 이상의 디바이스 기반 서비스 사용 척도들을 조정하고, 여기서 디바이스 기반 서비스 사용 척도들 중 하나는 보안되고(예를 들어, 보안 DDR들을 위해서와 같이 본원에서 설명된 다양한 기술들에 기초하여 보안된 것으로 및/또는 신뢰되는 것으로 여겨짐) 다른 디바이스 기반 서비스 사용 척도들 중 하나 이상은 보안되지 않는다(예를 들어, 보안 실행 환경에서 구현되지 않는 서비스 프로세서에 의해 생성되는 서비스 프로세서 보고들과 같이, 완벽하게 신뢰되지는 않음). 일부 실시예들에서, 조정 기능은, 상이한 디바이스 및 네트워크 기반 다양한 서비스 사용 척도들에 사용되는 시간 척도 간격, 척도의 단위 및/또는 다른 상이한 기준과 같은 다양한 상이한 보고 포맷에 기초하여 조정한다.In some embodiments, a DDR network storage system is provided as described herein in connection with various embodiments. In some embodiments, the DDR network storage system and other devices, such as DDR tuning functions (e.g., DDR records and / or DDR reports or CDR, micro CDR, and / or IPDR or other service usage reports, ≪ / RTI > and / or coordinating network-based service usage reports). In some embodiments, the network-based coordination function coordinates DDRs (e.g., aggregated DDRs and / or DDR reports) with one or more network-based service utilization metrics. In some embodiments, the network-based coordination function coordinates DDRs with two or more network-based service usage metrics. In some embodiments, the network-based coordination function may include at least two of the network-based service usage metrics (e.g., CDRs, FDRs, IPDRs, and / or the like), including traffic-related events such as NBS and / or QoS and / DPI-based measures). In some embodiments, the network-based coordination function may be configured to provide service to a plurality of device-based service utilization metrics (e.g., DDRs including traffic related events, such as NBS and / or QoS, service processor reports, and / Device-based service usage metrics) to a network-based service usage metric. In some embodiments, the network-based coordination function coordinates two or more device-based service usage metrics into two or more network-based service usage metrics. In some embodiments, the network-based coordination function coordinates two or more device-based service usage metrics, where one of the device-based service usage metrics is secured (e.g., One or more of the other device-based service usage metrics are not secure (e.g., considered to be secured and / or trusted based on technologies) As reported, not fully trusted). In some embodiments, the coordination function adjusts based on various different reporting formats, such as time scale intervals, units of measure, and / or other different criteria used for different device and network based various service usage measures.

일부 실시예들에서, 보안 접속 제어기는 다양한 실시예들과 관련하여 본원에서 설명된 바와 같이 제공된다. 일부 실시예들에서, DDR 프로세서는 보안 접속 제어기를 포함한다. 일부 실시예들에서, 보안 접속 제어는 디바이스가 적절하게 보안 DDR들을 생성시키고 보고할 때까지 및/또는 보고하지 않는다면 DAS가 있는 무선 통신 디바이스는 네트워크 접속을 열지 않음을 확실하게 한다.In some embodiments, a secure connection controller is provided as described herein with respect to various embodiments. In some embodiments, the DDR processor includes a secure connection controller. In some embodiments, the secure connection control ensures that the wireless communication device with the DAS will not open the network connection unless the device is properly reporting and / or reporting secure DDRs.

일부 실시예들에서, DDR 프로세서는 다양한 실시예들과 관련하여 본원에서 설명된 바와 같이 보안되는 네트워크 비지 상태(network busy state, NBS) 모니터링과 보고 기능을 포함한다. 일부 실시예들에서, 네트워크 요소는 동일한 섹터로부터 및/또는 서비스 인근의 다양한 섹터들로부터 하나 이상의 무선 통신 디바이스들로부터 수신되는 NBS 정보를 집계하고 동일한 네트워크 비지 상태 규칙들(예를 들어, 접속 제어, 과금(charging) 및 통지)을 설정하고 및/또는 기존 NBS 규칙들을 적절하게 변화시킨다. In some embodiments, the DDR processor includes secured network busy state (NBS) monitoring and reporting functions as described herein with respect to various embodiments. In some embodiments, the network element aggregates NBS information received from one or more wireless communication devices from the same sector and / or from various sectors near the service and uses the same network busy status rules (e.g., connection control, Charging and notification) and / or changing existing NBS rules accordingly.

일부 실시예들에서, 보안된 부팅 시퀀스가 제공된다. 일부 실시예들에서, 보안된 부팅 시퀀스는 무선 통신 디바이스로 개방 네트워크 접속 제어를 제공하기 전에 DDR 프로세서가 보안되고 DDR들을 적절하게 생성시키는 것을 확실하게 한다. 일부 실시예들에서, 보안된 부팅 시퀀스는 보안된 부팅 시퀀스가 완료될 때까지 네트워크 접속을 제한하도록 보안 접속 제어기를 사용하는 것을 포함한다. 일부 실시예들에서, 보안 부팅 시퀀스는 DDR ACK 및 수신 프레임들을 확인하는 것을 포함한다.In some embodiments, a secure boot sequence is provided. In some embodiments, the secure boot sequence ensures that the DDR processor is secured and appropriately generates DDRs before providing open network access control to the wireless communication device. In some embodiments, the secure boot sequence includes using a secure connection controller to limit network connections until the secure boot sequence is complete. In some embodiments, the secure boot sequence includes identifying the DDR ACK and the received frames.

일부 실시예들에서, 무선 네트워크를 이용한 무선 통신을 위한 무선 통신 디바이스의 프로세서가 제공되어, 프로세서는 보안 소프트웨어 또는 펌웨어 명령 실행 환경으로 구성되고, 보안 소프트웨어 또는 펌웨어 명령 실행 환경에서의 프로그램은: 무선 네트워크를 이용한 무선 통신 디바이스의 서비스 사용을 모니터링하고; 무선 네트워크를 이용한 무선 통신 디바이스의 모니터링된 서비스 사용의 복수의 디바이스 데이터 기록(DRR)들을 생성시키도록 구성되고, 디바이스 데이터 기록들은 모니터링된 서비스 사용을 위한 보안 디바이스 데이터 기록들이고, 각 디바이스 데이터 기록은 디바이스 데이터 기록에 의해 포괄되는 서비스 사용 간격에 대한 서비스 사용의 내역보고를 제공하는 각 순차적 디바이스 데이터 기록을 가지는 디바이스 데이터 기록들의 순서화된 시퀀스 중 일부를 형성하고, 각 디바이스 데이터 기록은 또한 보안된 고유한 시퀀스 순서 식별자와 관련된다.In some embodiments, a processor of a wireless communication device for wireless communication using a wireless network is provided, wherein the processor is configured with a security software or firmware instruction execution environment, wherein the program in the security software or firmware instruction execution environment comprises: Monitoring service usage of the wireless communication device using the wireless communication device; Wherein the device data records are secure device data records for use of a monitored service and each device data record is configured to generate a plurality of device data records (DRRs) for a monitored service usage of a wireless communication device using a wireless network, Wherein each device data record forms part of an ordered sequence of device data records having each sequential device data record providing a history of service usage for a service usage interval covered by the data record, Associated with the sequence identifier.

일부 실시예들에서, 디바이스 데이터 기록들의 시퀀스는 디바이스가 네트워크에서 활성화된 동안에는 디바이스 서비스 사용에 대해 인접되고 중단되지 않는 보고를 만든다. 일부 실시예들에서, 보안 소프트웨어 또는 펌웨어 명령 실행 환경 내의 프로그램에 의해 모니터링되는 데이터 경로를 통해서만 네크워크가 접속될 수 있도록 보안 소프트웨어 또는 펌웨어 명령 실행 환경이 위치되고 구성된다. 일부 실시예들에서, 보안 소프트웨어 또는 펌웨어 명령 실행 환경은 모뎀 프로세서(예를 들어, MPU)에 위치된다. 일부 실시예들에서, 보안 소프트웨어 또는 펌웨어 명령 실행 환경은 어플리케이션 프로세서(예를 들어, APU)에 위치된다. 일부 실시예들에서, 보안 소프트웨어 또는 펌웨어 명령 실행 환경은 가입자 식별 모듈(SIM)(예를 들어, SIM 카드)에 위치된다. 일부 실시예들에서, 보안 소프트웨어 또는 펌웨어 명령 실행 환경은 APU, MPU 및/또는 SIM의 조합에 위치된다In some embodiments, the sequence of device data records makes a report that is contiguous and uninterrupted for device service usage while the device is active in the network. In some embodiments, the security software or firmware instruction execution environment is located and configured such that the network can be accessed only through the data path monitored by the program in the security software or firmware instruction execution environment. In some embodiments, the security software or firmware instruction execution environment is located in a modem processor (e.g., MPU). In some embodiments, the security software or firmware instruction execution environment is located in an application processor (e.g., an APU). In some embodiments, the security software or firmware instruction execution environment is located in a subscriber identity module (SIM) (e.g., a SIM card). In some embodiments, the security software or firmware instruction execution environment is located in a combination of APU, MPU, and / or SIM

일부 실시예들에서, 디바이스 데이터 기록들은, 암호화, 디지털 서명 및 무결성 확인(integrity check) 중 하나 이상을 이용하는 것과 같이, 본원에서 설명된 다양한 암호화 기술들을 이용하여 보안된다.In some embodiments, device data records are secured using various encryption techniques described herein, such as using one or more of encryption, digital signature, and integrity check.

일부 실시예들에서, 보안 실행 환경에 위치된 DDR 프로세서는 네트워크 요소(예를 들어, 서비스 제어기) 내에서와 같이, 디바이스 데이터 기록 저장 기능에 디바이스 데이터 기록들의 시퀀스를 전달하도록 구성되고, 고유의 시퀀스 식별자와 조합하여 복수의 보안 디바이스 데이터 기록들은 하나 이상의 사용 기록들이 저장 기능으로 전송되는 데이터 기록들의 시퀀스에서 무단 조작되거나 또는 그로부터 누락되는지를 식별하기 위한 추적 가능성을 제공한다. 일부 실시예들에서, 고유한 시퀀스 식별자는 다음 중 하나 이상을 포함한다: 시퀀스 카운트, 시간 스탬프, 시작 시간 지시자, 중지 시간 지시자, 근접한 시간 간격 식별자 및 기록의 시작 또는 끝에서 총 사용 카운트, 기준 시간 또는 기록의 시작 또는 끝에서 경과 시간.In some embodiments, a DDR processor located in a secure execution environment is configured to communicate a sequence of device data records to a device data record store function, such as in a network element (e.g., a service controller) In combination with the identifier, the plurality of secure device data records provide traceability for identifying whether one or more usage records are tampered with or missing from the sequence of data records transmitted to the storage function. In some embodiments, the unique sequence identifier comprises one or more of the following: a sequence count, a time stamp, a start time indicator, a stop time indicator, Time interval identifier and the total usage count at the beginning or end of the recording, the reference time, or the elapsed time from the beginning or end of the recording.

일부 실시예들에서, 새로운 디바이스 데이터 기록의 생성은 다음 중 하나 이상에 의해 판단된다: 소정의 시간, 경과 기간, 최종 보고 이후 경과 기간, 최종 보고 이후 경과 기간의 최대 한계, 한 가지 양태 이상의 총 데이터 사용량, 최종 보고 이후 한 가지 양태 이상의 데이터 사용량, 최종 보고 이후 한 가지 양태 이상의 데이터 사용량에 대한 최대 한계, DDR을 생성시키는 요구, 전송 전에 DDR 정보를 포함하거나 처리하기 위해 요구되는 메모리 또는 저장 매체의 최대량에 대한 한계, 디바이스 전원 온 또는 오프, 모뎀 또는 디바이스 서브시스템 전원 온 또는 오프, 모뎀 또는 디바이스 서브시스템 절전 상태 진입 또는 종료, 네트워크 요소 또는 서버로 디바이스 또는 디바이스 서브시스템 인증, 또는 하나 이상의 서비스 사용 활동들 또는 서비스 사용 기록 무단 조작 또는 사기 이벤트의 감지 또는 새로운 네트워크 비지 상태 및/또는 QoS 트래픽 이벤트로의 이행에 의해 유발되는 감지된 이벤트.In some embodiments, the creation of a new device data record is determined by one or more of the following: a predetermined time, an elapsed period, an elapsed period since the last report, a maximum limit of elapsed time since the last report, Usage, amount of data usage after one or more aspects of the end report, maximum limit for one or more aspects of data usage since the last report, request to generate DDR, maximum amount of memory or storage media required to contain or process DDR information before transmission Device power on or power off, modem or device subsystem power on or off, modem or device subsystem power state entry or exit, device or device subsystem authentication to a network element or server, or one or more service usage activities Or service history Detected events triggered by unauthorized tampering or detection of fraudulent events or by transition to new network busy status and / or QoS traffic events.

일부 실시예들에서, DDR 프로세서, 서비스 프로세서, 또는 다른 디바이스 기반 요소/기능은 다음 중 하나 이상에 기초하여 DDR들을 전송한다: 최대 시간 증가, 최대 서비스 사용 증가, 서비스 프로세서로부터 폴링(polling) 및/또는 서비스 제어기로부터 폴링. 일부 실시예들에서, DDR 전송의 최대 시간 증가는 일단 서비스 제어기 인증이 이루어지면 탈취되는 서비스가 최소화되거나 없게 보장하도록 설정된다. 일부 실시예들에서, 네트워크 서비스 활동의 한정된 세트의 적어도 일부는, 일단 서비스 제어기가 서비스 프로세서로 인증하고 보안 DDR 생성기의 적절한 작동을 따르면 디바이스의 네트워크 접속능력을 운영하는 데 필요한 서비스 제어기 또는 다른 네트워크 요소들로의 접속을 포함한다. 일부 실시예들에서, 네트워크 서비스 활동들의 한정된 세트의 적어도 일부는 디바이스에 대한 접속 특권을 인증하기 위해 로밍(roaming) 네트워크 프로세스를 시작하는 데 필요한 최소 세트의 로밍 네트워크 서비스 활동으로의 접속을 포함한다. 일부 실시예들에서, 네트워크 서비스 활동들의 한정된 세트의 적어도 일부는 디바이스에 대한 접속 특권을 인증하기 위해 기업 네트워크 프로세스를 시작하는 데 필요한 최소 세트의 로밍 네트워크 서비스 활동으로의 접속을 포함한다. 일부 실시예들에서, 네트워크 서비스 활동들의 한정된 세트의 적어도 일부는 디바이스에 대한 접속 특권을 인증하기 위해 MVNO 네트워크 프로세스를 시작하는 데 필요한 최소 세트의 로밍 네트워크 서비스 활동으로의 접속을 포함한다. 일부 실시예들에서, 서비스 활동들의 보다 자유로운 세트의 적어도 일부는 로밍 네트워크에서 이용 가능한 서비스의 적어도 서브세트에 접속하기 위해 이용 가능한 것이다. 일부 실시예들에서, 서비스 활동들의 보다 자유로운 세트의 적어도 일부는 MVNO 네트워크에서 이용 가능한 서비스의 적어도 서브세트에 접속하기 위해 이용 가능한 것이다. 일부 실시예들에서, 서비스 활동들의 보다 자유로운 세트의 적어도 일부는 기업 네트워크에서 이용 가능한 서비스의 적어도 서브세트에 접속하기 위해 이용 가능한 것이다.In some embodiments, a DDR processor, service processor, or other device-based element / function transmits DDRs based on one or more of the following: increased maximum time, increased maximum service usage, polling from service processor and / Or polling from the service controller. In some embodiments, the maximum time increase in the DDR transmission is set to ensure that the service being seized once service controller authentication is established is minimized or eliminated. In some embodiments, at least some of the limited set of network service activities may be handled by a service controller or other network element that is required to operate the device ' s network connectivity capabilities once the service controller authenticates with the service processor and follows proper operation of the secure DDR generator Lt; / RTI > In some embodiments, at least a portion of the limited set of network service activities includes a connection to a minimum set of roaming network service activities necessary to initiate a roaming network process to authenticate a connection privilege for the device. In some embodiments, at least a portion of the limited set of network service activities includes a connection to a minimum set of roaming network service activities necessary to initiate a corporate network process to authenticate a connection privilege to the device. In some embodiments, at least a portion of the limited set of network service activities includes a connection to a minimum set of roaming network service activities necessary to initiate an MVNO network process to authenticate connection privileges for the device. In some embodiments, at least a portion of a more liberal set of service activities is available to connect to at least a subset of the services available in the roaming network. In some embodiments, at least a portion of a more liberal set of service activities is available to access at least a subset of the services available in the MVNO network. In some embodiments, at least some of the more liberal set of service activities is available for accessing at least a subset of the services available in the corporate network.

일부 실시예들에서, 디바이스 데이터 기록 서비스 사용 정보는 다음 중 하나 이상의 측정을 포함한다: 음성 서비스(예를 들어, VOIP) 사용 기록들; 문자 서비스 사용 기록들; 데이터 네트워크 서비스 사용 기록들; 데이터 네트워크 흐름 데이터 기록들; 데이터 네트워크 일반 목적, 전체 또는 집단 서비스 사용 기록들; 원단 목적지에 의해 적어도 일부 분류되는 서비스 사용; IP 주소 또는 ATM 주소와 같은 3계층 네트워크 통신 정보에 의해 적어도 일부 분류되는 서비스 사용 기록들; IP 주소와 포트 조합들과 같은 4계층 네트워크 통신 정보에 의해 적어도 일부 분류되는 서비스 사용; 네트워크 기반 FDR, CDR 또는 IPDR와 같은 네트워크 기반 흐름 데이터 기록들에 비교할만한 데이터 네트워크 서비스 사용 기록들; 시각에 의해 적어도 일부 분류되는 서비스 사용; 지리적 위치에 의해 적어도 일부 분류되는 서비스 사용; 디바이스의 능동 네트워크 서비스에 의해 적어도 일부 분류되는 서비스 사용; 디바이스에 연결된 로밍 네트워크에 의해 적어도 일부 분류되는 서비스 사용; 네트워크 비지 상태 또는 네트워크 혼잡에 의해 적어도 일부 분류되는 서비스 사용; QoS에 의해 적어도 일부 분류되는 서비스 사용; 서버명, 도메인 이름, URL, 리퍼러 호스트(referrer host) 또는 어플리케이션 서비스 흐름 정보와 같은 7계층 네트워크 통신 정보에 의해 적어도 일부 분류되는 서비스 사용 기록들; TCP, UDP, DNS, SMTP, IMAP, POP, FTP, HTTP, HTML, VOIP와 같은 네트워크 통신 프로토콜에 의해 적어도 일부 분류되는 서비스 사용; 어플리케이션 이름 또는 운영 체계에 의해 부여된 어플리케이션 식별자 또는 어플리케이션 획득이나 요청 서비스에 고유한 또 다른 어플리케이션 식별자(예를 들어, 안드로이드 기반 디바이스에서 안드로이드 사용자 ID와 같은, 디바이스 사용자 식별자)에 의해 적어도 일부 분류되는 서비스 사용; 및 서비스 활동에 의해 적어도 일부 분류되는 서비스 사용.In some embodiments, the device data recording service usage information comprises one or more of the following measurements: voice services (e.g., VOIP) usage logs; Text service usage records; Data network service usage records; Data network flow data records; Data network general purpose, full or collective service usage records; Use of services that are at least partially classified by fabric destination; Service usage records classified at least in part by three-layer network communication information such as an IP address or an ATM address; Use of services that are at least partially classified by 4-layer network communication information, such as IP address and port combinations; Data network service usage records comparable to network based flow data records such as network based FDR, CDR or IPDR; Use of services at least partially classified by time of day; Use of services that are at least partially classified by geographic location; Use of services that are at least partially classified by the active network service of the device; Use of services that are at least partially classified by the roaming network connected to the device; Use of services that are at least partially classified by network busy status or network congestion; Use of services at least partially classified by QoS; Service usage records that are at least partially classified by seven-layer network communication information such as a server name, a domain name, a URL, a referrer host, or application service flow information; Use of services that are at least partially classified by network communication protocols such as TCP, UDP, DNS, SMTP, IMAP, POP, FTP, HTTP, HTML, and VOIP; A service that is at least partially classified by the application name or application identifier granted by the operating system or by another application identifier unique to the application acquisition or request service (e.g., a device user identifier, such as an Android user ID on an Android-based device) use; And use of services that are at least partially classified by service activity.

일부 실시예들에서, 보안 실행 환경에 위치된 DDR 프로세서는 디바이스 데이터 기록들을 네트워크 요소(예를 들어, 네트워크에 위치된 저장 기능)로 전송하도록 구성된다. 일부 실시예들에서, 보안 실행 환경에 위치된 DDR 프로세서는 보안 소프트웨어 또는 펌웨어 명령 실행 환경과 네트워크에 위치된 저장 기능(예를 들어, 서비스 제어기와 같은 네트워크 요소) 사이에서 보안 통신 채널을 제공하도록 구성되고, 통신 채널 보안 프로토콜은 보안 디바이스 데이터 기록(DDR)들을 무단 조작하는 것을 방지하도록 구성된다. 일부 실시예들에서, 보안 실행 환경에 위치된 DDR 프로세서는 네트워크 요소(예를 들어, 서비스 제어기)로 인증 시퀀스 또는 프로세스를 수행하도록 구성되는데, 보안 디바이스 데이터 기록 시퀀스 개시 메시지는 인증 프로토콜 교체 시퀀스가 뒤따르는 네트워크 목적지로 보내져 보안 데이터 기록들을 전송하기 전에 네트워크 요소를 인증하게 된다.In some embodiments, a DDR processor located in a secure execution environment is configured to transmit device data records to a network element (e.g., a storage function located on a network). In some embodiments, a DDR processor located in a secure execution environment is configured to provide a secure communication channel between a security software or firmware instruction execution environment and a storage function (e.g., a network element such as a service controller) located in the network , And the communication channel security protocol is configured to prevent unauthorized operation of secure device data records (DDRs). In some embodiments, a DDR processor located in a secure execution environment is configured to perform an authentication sequence or process with a network element (e.g., a service controller), wherein the secure device data write sequence initiation message includes an authentication protocol replacement sequence It is sent to the following network destination to authenticate the network element before sending the security data records.

일부 실시예들에서, 보안 실행 환경에 위치된 DDR 프로세서는 다음을 수행하도록 구성된다: 네트워크 요소로(예를 들어 보안 채널을 통해) 디바이스 데이터 기록 시퀀스 송신; 이용 가능한 네트워크 목적지의 소정의 서브세트로의 네트워크 접속 제한을 위한 보안 접속 제어기 구현; 신뢰되는 네트워크 요소로부터(예를 들어, 네트워크 요소로부터 직접 또는 네트워크 요소로부터 보안 실행 환경에서의 DDR 프로세서로 보안 메시지를 전달하는 디바이스의 다른 기능으로부터) 보안 메시지 수신; 만일 하나 이상의 보안 디바이스 데이터 기록들의 수령을 인정하거나 또는 접속 네트워크 인증 시퀀스를 인정하는 승인된(예를 들어, 적절하게 보안되고 구성된) 메시지가 수신되면, 보안 접속 제어기는 네트워크로의 제한되지 않은 또는 덜 제한된 접속을 허용; 만일 하나 이상의 보안 디바이스 데이터 기록들의 수령을 인정하거나 접속 네트워크 인증 시퀀스를 인정하는 승인된 메시지가 수신되지 않는다면, 하나 이상의 보안 디바이스 데이터 기록들의 수령을 인정하거나 접속 네트워크 인증 시퀀스를 인정하는 승인된 메시지가 수신될 때까지 보안 접속 제어기는 네트워크 목적지 또는 기능들의 소정의 세트로의 접속을 제한. In some embodiments, a DDR processor located in a secure execution environment is configured to: send a device data write sequence (e.g., via a secure channel) to a network element; A secure access controller implementation for network access restriction to a predetermined subset of available network destinations; Receiving a security message from a trusted network element (e.g., from a network element directly or from a network element to a DDR processor in a secure execution environment); If an acknowledged (e.g., appropriately secured and configured) message is received that acknowledges receipt of one or more secure device data records or acknowledges the access network authentication sequence, then the secure connection controller may send an unrestricted or less Allow limited access; If acknowledging receipt of the one or more secure device data records or acknowledging the access network authentication sequence is not received, acknowledgment of receipt of one or more secure device data records or acknowledgment of the access network authentication sequence is received The secure connection controller limits access to the network destination or a predetermined set of functions.

일부 실시예들에서, 보안 실행 환경에 위치된 DDR 프로세서는 네트워크 목적지 또는 기능들의 소정의 세트로의 접속을 제한하는 접속 제어기로 구성되는데, 만일 소정의 최대 시간 양이, 하나 이상의 보안 디바이스 데이터 기록들 또는 인증 시퀀스의 제1 메시지 인정 수령이 보안 실행 환경에 있는 DDR 프로세서에 의해 수신되는 시간과 하나 이상의 보안 디바이스 데이터 기록들 또는 인증 시퀀스의 제2 메시지 인정 수령이 보안 실행 환경에 있는 DDR 프로세서에 의해 수신되는 시간 사이; 또는 하나 이상의 보안 디바이스 데이터 기록들이 보안 실행 환경에 있는 DDR 프로세서에 의해 전송되는 시간과 하나 이상의 보안 디바이스 데이터 기록들 또는 인증 시퀀스의 메시지 인정 수령이 보안 실행 환경에 있는 DDR 프로세서에 의해 수신되는 시간 사이를 통과한다면 접속을 제한하고; 그렇지 않다면 접속 제어기가 네트워크로의 제한되지 않은 또는 덜 제한된 접속을 허용한다.In some embodiments, a DDR processor located in a secure execution environment is configured with an access controller that restricts access to a network destination or a predetermined set of functions, if the predetermined maximum amount of time is less than one Or the time at which the first message acknowledgment of the authentication sequence is received by the DDR processor in the secure execution environment and the second message acknowledgment of the at least one secure device data records or authentication sequence is received by the DDR processor in the secure execution environment Between the time being; Or between the time at which one or more secure device data records are transmitted by the DDR processor in the secure execution environment and the time at which one or more secure device data records or message recognition receipt of the authentication sequence is received by the DDR processor in the secure execution environment Restrict access if it passes; Otherwise the access controller allows unrestricted or less restrictive connections to the network.

일부 실시예들에서, 보안 실행 환경에 위치된 DDR 프로세서는 디바이스 데이터 기록을 우선 디바이스 상에 위치된 제2 프로그램 기능으로 전송함으로써 디바이스 데이터 기록을 네트워크에 위치된 디바이스 데이터 기록 저장 기능으로 전달하도록 구성되며, 디바이스 데이터 기록을 디바이스 상에 위치된 제2 프로그램 기능으로 전송하고 나서 네트워크에 위치된 디바이스 데이터 기록 저장 기능으로 전달한다. 일부 실시예들에서, 보안 실행 환경에 위치된 DDR 프로세서는 보안 디바이스 데이터 기록 시퀀스에 부가하여 제2 서비스 사용 보고 시퀀스를 제공하도록 구성된다. 일부 실시예들에서, 다른 클라이언트(client) 기능/요소(예를 들어, 서비스 프로세서 기능/요소 또는 에이전트(agent))는 보안 디바이스 데이터 기록 시퀀스에 부가하여 제2 서비스 사용 보고 시퀀스를 제공하도록 구성된다. 일부 실시예들에서, 제2 서비스 사용 보고 시퀀스는 보안 디바이스 데이터 기록들과 적어도 부분적으로 다른 서비스 사용 분류를 포함한다. 일부 실시예들에서, 디바이스 데이터 사용 분류 사이의 차이는 하나의 기록이 다음 중 하나 이상을 포함하는 것을 적어도 일부 포함한다: 어플리케이션 정보, 7계층 네트워크 정보, 서비스 흐름 관련 정보, 사용자 정의 입력 정보, 네트워크 비지 상태 정보, 능동 네트워크 정보 또는 다른 기록이 포함하지 않는 기타 정보.In some embodiments, the DDR processor located in the secure execution environment is configured to forward the device data record to the device data record store function located on the network by first sending the device data record to the second program function located on the device , Transfers the device data record to the second program function located on the device, and then transfers it to the device data record storage function located in the network. In some embodiments, the DDR processor located in the secure execution environment is configured to provide a second service usage reporting sequence in addition to the secure device data writing sequence. In some embodiments, another client function / element (e.g., service processor function / element or agent) is configured to provide a second service usage report sequence in addition to the secure device data write sequence . In some embodiments, the second service usage report sequence includes a service usage classification that is at least partially different from the secure device data records. In some embodiments, the difference between the device data usage classifications includes at least in part a record that includes one or more of the following: application information, 7th layer network information, service flow related information, user defined input information, Busy status information, active network information, or other information not included in other records.

일부 실시예들에서, 보안 실행 환경에 위치된 DDR 프로세서는 디바이스 데이터 기록 시퀀스와 제2 디바이스 데이터 기록 시퀀스를 두 기록들의 단순화된 조정을 허용하는 방식으로 전송하도록 구성된다. 일부 실시예들에서, 보안 실행 환경에 위치된 DDR 프로세서는 하나 이상의 제2 서비스 사용 보고들에 의해 포괄되는 측정 구간 시작 시간과 중지 시간의 근사 정렬 및 하나 이상의 보안 디바이스 데이터 기록들에 의해 포괄되는 측정 구간을 제공하는 방식으로 제2 서비스 사용 보고 시퀀스를 제공하도록 구성된다.In some embodiments, a DDR processor located in a secure execution environment is configured to transmit a device data write sequence and a second device data write sequence in a manner that allows for simplified adjustment of two writes. In some embodiments, a DDR processor located in a secure execution environment may include an approximate alignment of measurement interval start and stop times encompassed by one or more second service usage reports, and a measurement encompassed by one or more secure device data records And to provide a second service usage report sequence in a manner that provides a duration.

일부 실시예들에서, 보안 실행 환경에 위치된 DDR 프로세서는: 무선 통신 네트워크를 이용한 무선 통신 디바이스의 서비스 사용을 모니터링하는 것에 기초하여, 네트워크 성능의 특성 평가를 생성 및 기록하고; 네트워크 성능의 특성 평가를 분석하고 그 성능 특성 평가를 디바이스가 겪는 네트워크의 성능 수준 또는 혼잡 수준을 요약 형태로 나타내는 하나 이상의 네트워크 성능 통계로 줄이고; 서로 다른 시간에 생성되는 네트워크 성능 통계들의 시퀀스를 포함하는 복수의 네트워크 성능 보고 메시지들을 생성시키고; 여기서 네트워크 성능 보고 메시지들은 보안된 네트워크 성능 보고들이며; 그리고 보안된 네트워크 성능 보고들을 네트워크에 위치된 저장 기능으로 전송하도록 구성된다.In some embodiments, the DDR processor located in the secure execution environment is configured to: generate and record a characterization of the network performance based on monitoring the service usage of the wireless communication device using the wireless communication network; Analyzing a characterization evaluation of the network performance and reducing the performance characterization evaluation to one or more network performance statistics summarizing the performance level or congestion level of the network undergoing the device; Generate a plurality of network performance report messages including a sequence of network performance statistics generated at different times; Wherein the network performance report messages are secured network performance reports; And to send secure network performance reports to a storage function located in the network.

일부 실시예들에서, 각 무선 디바이스가 보안 디바이스 데이터 기록 생성기를 포함하는 복수의 무선 통신 디바이스들을 통한 무선 통신에서 무선 네트워크를 이용한 무선 통신을 위한, 디바이스 데이터 기록 저장소 및 처리 기능으로서 구성된 네트워크 디바이스의 프로세서로서, 여기서 네트워크 디바이스의 프로세서는 추가로: 복수의 보안 디바이스 데이터 기록 프로세서의 각각 및 네트워크 디바이스 사이의 개별 보안 통신 채널들을 제공하고, 여기서 통신 채널 보안 프로토콜은 디바이스 데이터 기록들을 무단 조작함이 감지될 수 있도록 구성되고; 보안 디바이스 데이터 기록 프로세서들 각각으로부터 복수의 디바이스 데이터 기록들을 보안 통신 채널을 통해 수신하고, 여기서 복수의 보안 디바이스 데이터 기록들은 무선 네트워크를 이용한 무선 통신 디바이스의 모니터링된 서비스 사용에 대한 서비스 사용 기록들이고, 각 디바이스 데이터 기록은 디바이스 데이터 기록에 의해 포괄되는 서비스 사용 구간에 걸쳐 서비스 사용의 중단 없는 내역보고를 제공하는 각각의 순차적 디바이스 데이터 기록으로 디바이스 데이터 기록들의 순서화된 시퀀스의 일부를 형성하고, 디바이스 데이터 기록들의 시퀀스는 디바이스 서비스 사용의 근접하고 중단 없는 보고를 형성하고, 그리고 각 디바이스 데이터 기록은 고유의 시퀀스 순서 식별자와 관련되고; 각 디바이스에 대한 디바이스 데이터 기록 시퀀스가 저장되는 디바이스 데이터 기록 저장 기능을 제공하고; 각 디바이스에 대해, 서비스 사용 기록에서의 정보가 보안 통신 채널 프로토콜에 따라 적절하게 구성되었는지를 확인함으로써 하나 이상의 디바이스 데이터 레코드들이 위해되었는지 판단하기 위해 디바이스 데이터 기록들의 저장된 시퀀스를 분석하고; 각 디바이스에 대해, 전체 시퀀스에 대한 보안 근접 시퀀스 식별자들이 그 시퀀스에 모두 존재하는지를 판단함에 의해 하나 이상의 디바이스 데이터 기록들이 디바이스로부터 원래 전송되는 디바이스 데이터 기록 시퀀스로부터 제거되거나 차단되었는지를 판단하고; 그리고 만일 임의의 디바이스 데이터 기록들이 위해되었거나, 지연되었거나 또는 제거되었다면, 네트워크 접속을 제한하기 위해 그 디바이스에 대해 사기 감지 오류 플래그를 설정하고, 또한 네트워크 장치 또는 네트워크 관리자가 추가 조치를 취하게 신호를 전송하도록 구성된다.In some embodiments, each wireless device is configured as a device data record store and processing function for wireless communication over a wireless network in a wireless communication with a plurality of wireless communication devices including a secure device data record generator, as, Wherein the processor of the network device further provides: separate security communication channels between each of the plurality of secure device data write processors and the network device, wherein the communications channel security protocol is configured to allow unauthorized tampering of the device data records to be detected Being; Receiving a plurality of device data records from each of the secure device data write processors over a secure communication channel, wherein the plurality of secure device data records are service usage records for the monitored service usage of the wireless communication device using the wireless network, Device data recording forms part of an ordered sequence of device data records with each sequential device data record providing uninterrupted historical reporting of service usage over a service usage period encompassed by device data recording, The sequence forms a close and uninterrupted report of the use of the device service, and each device data record is associated with a unique sequence order identifier; Providing a device data write storage function in which a device data write sequence for each device is stored; Analyzing the stored sequence of device data records to determine, for each device, whether the one or more device data records have been compromised by verifying that the information in the service usage record is properly configured according to the secure communication channel protocol; Determining, for each device, whether one or more device data records have been removed or blocked from the device data write sequence originally transmitted from the device by determining whether security proximity sequence identifiers for the entire sequence are all present in the sequence; And if any of the device data records have been forged, delayed, or removed, a fraud detection error flag is set for that device to limit network access, and a signal is also sent by the network device or network administrator to take further action .

일부 실시예들에서, 디바이스 데이터 기록 시퀀스에 포함된 보안 디바이스 데이터 기록들은 보안 디바이스 데이터 기록이 생성된 시간에 네트워크 성능 또는 혼잡을 특징짓는 보안 네트워크 성능 보고를 포함한다. 일부 실시예들에서, 디바이스 데이터 기록 시퀀스는 서비스 사용 청구서를 계산하기 위해 사용되는 비즈니스 로직 또는 규칙들에서 입력 인자를 형성하는 서비스 사용의 기록으로서 적어도 일부 사용된다. 일부 실시예들에서, 디바이스 데이터 기록 시퀀스는 하나 이상의 디바이스 접속 네트워크 서비스 정책들이 적절하게 집행되고 있는지 판단하기 위해 사용되는 비즈니스 로직 또는 규칙들에서 입력 인자를 형성하는 서비스 사용의 기록으로서 적어도 일부 사용된다. 일부 실시예들에서, 디바이스 데이터 기록 시퀀스는 최종 사용자 서비스 사용 통지 메시지, 서비스 사용 통지 디스플레이 또는 서비스 구매 메시지 트리거 이벤트(trigger event)를 업데이트함에 있어 입력 인자를 형성하는 서비스 사용의 기록으로서 적어도 일부 사용된다.In some embodiments, the secure device data records included in the device data write sequence include a secure network performance report that characterizes network performance or congestion at the time the secure device data record was created. In some embodiments, the device data write sequence is used at least in part as a record of service usage that forms an input factor in business logic or rules used to compute a service usage invoice. In some embodiments, the device data write sequence is used at least in part as a record of service usage forming an input factor in business logic or rules used to determine if one or more device access network service policies are being enforced appropriately. In some embodiments, the device data write sequence is used at least in part as a record of service usage forming an input factor in updating an end user service use notification message, a service usage notification display, or a service purchase message trigger event .

일부 실시예들에서, 네트워크 디바이스 프로세서는 보안 디바이스 데이터 기록 생성기로부터 디바이스 데이터 기록을 수신한 후 그 디바이스 데이터 기록을 전달하는 제2 디바이스 프로그램 기능으로부터 디바이스 데이터 기록 시퀀스를 수신하도록 또한 구성된다. 일부 실시예들에서, 네트워크 디바이스 프로세서는 제2 디바이스 프로그램 기능으로부터 제2 서비스 사용 데이터 기록 시퀀스를 수신하도록 또한 구성된다. 일부 실시예들에서, 두 개의 디바이스 데이터 기록 시퀀스들은 동일한(또는 대략적으로 동일하거나 중첩하는) 시간 범위에 대해 적어도 일부 상이한 서비스 사용 분류(예를 들어, 분류 파라미터의 사용; 3/4계층 및/또는 7계층)를 가진다. 일부 실시예들에서, 네트워크 디바이스 프로세서는 두 개의 데이터 기록 시퀀스를 비교하고 서비스 사용 보고들의 두 개의 시퀀스가 허용 가능한 공차 한계 이내에서 서로 일치하는지를 판단하도록 또한 구성된다.In some embodiments, the network device processor is further configured to receive a device data write sequence from a secure device data record generator, and to receive a device data write sequence from a second device program function that transfers the device data write. In some embodiments, the network device processor is further configured to receive a second service use data write sequence from the second device program function. In some embodiments, the two device data write sequences may include at least some different service usage classifications (e.g., use of classification parameters; 3/4 hierarchy and / or class hierarchy) for the same (or approximately the same or overlapping) 7 layers). In some embodiments, the network device processor is also configured to compare two data writing sequences and to determine whether the two sequences of service usage reports match each other within an allowable tolerance limit.

일부 실시예들에서, 보안 디바이스 데이터 기록(들)은 DDR 보고에 포함되는 서비스 프로세서로부터 수신되는 5-투플(tuple) 분류 정보(예를 들어, 소스 주소, 포트 주소, 목적지 주소, 목적지 포트, 및 프로토콜)와 함께 해당 7계층 분류 정보(예를 들어, 도메인 이름, 어플리케이션 식별자, HTTP 정보, 연관 분류, 및/또는 본원에서 설명된 기타 정보)를 수반할 수 있고, 예를 들어, 본원에서 설명된 다양한 기술들을 이용하여, 서비스 사용 조정 및/또는 검증을 돕기 위해 서비스 제어기(예를 들어, 또는 다른 네트워크 요소)로 전송될 수 있다. 일부 실시예들에서, 7계층 분류 정보와 5-투플 분류 정보를 이용한 서비스 사용 조정 및/또는 검증 작업 중 하나 이상은 클라이언트 근처에서(예를 들어, 보안 실행 영역에서) 수행된다. 일부 실시예들에서, 7계층 분류 정보와 5-투플 분류 정보를 이용한 서비스 사용 조정 및/또는 검증 작업 중 하나 이상은 클라이언트 근처에서(예를 들어, 보안 실행 영역에서) 수행되고, 그리고 7계층 분류 정보와 5-투플 분류 정보를 이용한 서비스 사용 조정 및/또는 검증 작업 중 하나 이상은 네트워크에서(예를 들어, 서비스 제어기와 같은, 하나 이상의 네트워크 요소에서) 수행된다.In some embodiments, the secure device data record (s) may include 5-tuple classification information (e.g., source address, port address, destination address, destination port, and destination address) received from the service processor included in the DDR report (E.g., domain name, application identifier, HTTP information, association classifications, and / or other information described herein) along with corresponding seven-tier classification information (e.g., May be sent to a service controller (e.g., or other network element) to assist in service usage coordination and / or verification, using various techniques. In some embodiments, one or more of the service usage reconciliation and / or verification operations using the 7-tier classification information and the 5-tuple classification information is performed near the client (e.g., in the secure execution area). In some embodiments, one or more of the service usage reconciliation and / or verification operations using the 7-tier classification information and the 5-tuple classification information is performed near the client (e.g., in the secure execution domain) One or more of the service usage adjustment and / or verification operations using the information and the 5-tuple classification information is performed in the network (e.g., in one or more network elements, such as a service controller).

일부 실시예들에서, 대조 기준의 일부는 서비스 사용 보고들의 두 시퀀스들이 보고된 네트워크 성능 수준 또는 네트워크 혼잡 수준에서 일치하는지를 판단하는 것이다. 일부 실시예들에서, 공차 한계는 두 개의 데이터 기록 시퀀스들에 의해 포괄되는 사용 구간에 걸친 총 데이터 사용에 기초한다. In some embodiments, a portion of the verification criteria is to determine whether the two sequences of service utilization reports are consistent with reported network performance levels or network congestion levels. In some embodiments, the tolerance limit is based on total data usage over a usage period covered by two data recording sequences.

일부 실시예들에서, 네트워크 디바이스 프로세서는 보안 디바이스 데이터 기록 시퀀스에서 하나 이상의 분류 카테고리에 대한 서비스 사용과 조정될 수 있는 제2 서비스 사용 기록 시퀀스에서 하나 이상의 분류 카테고리에 대한 서비스 사용의 양을 식별하도록 또한 구성된다. 일부 실시예들에서, 분류 카테고리 조정에서의 기준은 서비스 사용 보고들의 두 시퀀스가 보고된 네트워크 성능 수준 또는 네트워크 혼잡 수준들에서 일치하는지를 판단하는 것을 포함한다.In some embodiments, the network device processor is further configured to identify an amount of service usage for one or more classification categories in a second service usage recording sequence that can be coordinated with service usage for one or more classification categories in the secure device data writing sequence do. In some embodiments, the criteria in the classification category adjustment include determining whether two sequences of service usage reports are consistent in reported network performance levels or network congestion levels.

일부 실시예들에서, 네트워크 디바이스 프로세서는 보안 디바이스 데이터 기록 시퀀스에서 알려진 서비스 사용 분류와 조정될 수 없는 제2 서비스 사용 기록 시퀀스로부터 서비스 사용의 양을 식별하도록 또한 구성된다. 일부 실시예들에서, 분류 카테고리 조정에서의 기준은 서비스 사용 보고들의 두 시퀀스가 보고된 네트워크 성능 수준 또는 네트워크 혼잡 수준들에서 일치하는지를 판단하는 것을 포함한다.In some embodiments, the network device processor is also configured to identify an amount of service usage from a second service usage record sequence that can not be reconciled with a known service usage classification in the secure device data writing sequence. In some embodiments, the criteria in the classification category adjustment include determining whether two sequences of service usage reports are consistent in reported network performance levels or network congestion levels.

일부 실시예들에서, 최소 공차 한계는 보안 디바이스 데이터 기록 시퀀스에서 하나 이상의 분류 카테고리들과 일치 또는 연관될 수 있는 제2 서비스 사용 기록 시퀀스에서 하나 이상의 분류 카테고리들에 대한 서비스 사용의 양, 상대량 또는 퍼센트에 기반을 둔다. 일부 실시예들에서, 최소 공차 한계가 만족되지 않을 때 네트워크 접속을 제한하도록 그 디바이스에 대한 사기 감지 오류 플래그가 설정되고 또한 네트워크 장치 또는 네트워크 관리자가 추가 조치를 취하도록 신호를 전송한다.In some embodiments, the minimum tolerance limit is a quantity of service usage for one or more classification categories in a second service usage recording sequence that may be consistent with or associated with one or more classification categories in the secure device data recording sequence, It is based on percentages. In some embodiments, a fraud detection error flag is set for the device to limit network access when the minimum tolerance limit is not met, and the network device or network manager also sends a signal to take further action.

일부 실시예들에서, 최대 공차 한계는 보안 디바이스 데이터 기록 시퀀스에서 하나 이상의 분류 카테고리들과 일치 또는 연관될 수 없는 제2 서비스 사용 기록 시퀀스에서 하나 이상의 분류 카테고리에 대한 서비스 사용의 양, 상대량 또는 퍼센트에 기반을 둔다. 일부 실시예들에서, 최대 공차 한계가 초과될 때, 네트워크 접속을 제한하도록 그 디바이스에 대한 사기 감지 오류 플래그가 설정되고 또한 네트워크 장치들 또는 네트워크 관리자가 추가 조치를 취하도록 신호를 전송한다.In some embodiments, the maximum tolerance limit may be determined based on the amount of service usage, the relative amount or percentage of service usage for one or more classification categories in the second service use recording sequence that can not be matched or associated with one or more classification categories in the secure device data recording sequence . In some embodiments, when the maximum tolerance limit is exceeded, a fraud detection error flag is set for the device to limit network access and the network devices or network manager sends a signal to take further action.

일부 실시예들에서, 네트워크 디바이스 프로세서는 보안 디바이스 데이터 기록 시퀀스에 의해 포괄되는 서비스 사용 보고가, 준비되도록 의도된 하나 이상의 디바이스 서비스 사용 집행 정책들과 소정의 공차 한계들 이내에서 일치하는지를 판단하도록 또한 구성된다. 일부 실시예들에서, 만일 공차 한계들이 초과된다면 네트워크 접속을 제한하도록 그 디바이스에 대한 사기 감지 오류 플래그가 설정되고 또한 네트워크 장치 또는 네트워크 관리자가 추가 조치를 취하도록 신호를 전송한다. 일부 실시예들에서, 네트워크 디바이스 프로세서는 제2 디바이스 서비스 사용 보고 시퀀스에 의해 포괄되는 서비스 사용 보고가, 준비되도록 의도된 하나 이상의 디바이스 서비스 사용 집행 정책들과 소정의 공차 한계들 이내에서 일치하는지를 판단하도록 또한 구성된다. 일부 실시예들에서, 만일 공차 한계들이 초과된다면 네트워크 접속을 제한하도록 그 디바이스에 대한 사기 감지 오류 플래그가 설정되고 또한 네트워크 장치 또는 네트워크 관리자가 추가 조치를 취하도록 신호를 전송한다.In some embodiments, the network device processor is further configured to determine whether a service usage report encompassed by the secure device data write sequence is within predetermined tolerance limits with one or more device service usage enforcement policies intended to be prepared do. In some embodiments, if the tolerance limits are exceeded, the fraud detection error flag for the device is set to limit network access and the network device or network manager sends a signal to take further action. In some embodiments, the network device processor is configured to determine whether a service usage report encompassed by the second device service usage report sequence matches within one or more device service usage enforcement policies intended to be prepared within certain tolerance limits Respectively. In some embodiments, if the tolerance limits are exceeded, the fraud detection error flag for the device is set to limit network access and the network device or network manager sends a signal to take further action.

일부 실시예들에서, 네트워크 디바이스 프로세서는 보안 소프트웨어 또는 펌웨어 명령 실행 환경에서 작동하는 다중 디바이스 프로그램들 각각에 하나 이상의 보안 메시지들을 제공하도록 또한 구성되는데, 여기서 보안 메시지들은 하나 이상의 보안 디바이스 데이터 기록들의 수령을 인정하거나 또는 접속 네트워크 인증 시퀀스를 인정한다. 일부 실시예들에서, 네트워크 디바이스 프로세서는, 각 디바이스에 대해, 네트워크 디바이스 프로세서로부터 보안 소프트웨어 또는 펌웨어 명령 실행 환경에서 작동하는 프로그램으로의 메시지에서 특정된 또는 소정의 기간 동안 제한되지 않거나 또는 덜 제한된 네트워크 접속을 허용하도록 보안 소프트웨어 또는 펌웨어 명령 실행 환경에서 작동하는 프로그램들에 직접 또는 내재적으로 명령하는 일련의 보안 메시지들을 전송하도록 또한 구성된다. 일부 실시예들에서, 네트워크 디바이스 프로세서는, 각 디바이스에 대해, 네트워크 목적지 또는 기능들의 소정의 세트로의 네트워크 접속을 제한하도록 보안 소프트웨어 또는 펌웨어 명령 실행 환경에서 작동하는 프로그램에 명령하는 보안 메시지를 전송하도록 또한 구성된다.In some embodiments, the network device processor is also configured to provide one or more security messages to each of the multi-device programs operating in the security software or firmware instruction execution environment, wherein the security messages include receiving one or more secure device data records Or acknowledge the access network authentication sequence. In some embodiments, the network device processor is configured to perform, for each device, an unrestricted or less restrictive network connection for a specified or predetermined period of time in a message from a network device processor to a program operating in a security software or firmware command execution environment To send a series of security messages directing or implicitly issuing commands to programs operating in the security software or firmware command execution environment to permit the security software or firmware command execution environment. In some embodiments, the network device processor is configured to send, for each device, a security message instructing a program operating in the security software or firmware command execution environment to limit network access to a network destination or a predetermined set of functions Respectively.

일부 실시예들에서, 보안 네트워크 비지 상태(NBS) 모니터링과 보고가 제공된다. 일부 실시예들에서, 보안 NBS 모니터링과 보고는 NBS 과금과 제어 집행을 용이하게 한다. 일부 실시예들에서, 무선 네트워크를 이용한 무선 통신을 위한 무선 통신 디바이스의 프로세서는 보안 소프트웨어 또는 펌웨어 명령 실행 환경으로 구성되고, 보안 실행 환경에서의 DDR 프로세서는: 무선 네트워크를 이용한 무선 통신 디바이스의 서비스 사용을 모니터링하고; 무선 통신 네트워크를 통한 무선 통신 디바이스의 서비스 사용의 모니터링에 기초하여, 네트워크 성능의 특성 평가를 생성 및 기록하고; 네트워크 성능의 특성 평가를 분석하고 그 성능 특성 평가를 디바이스가 겪는 네트워크의 성능 수준 또는 혼잡 수준의 표시를 제공하는 하나 이상의 네트워크 성능 통계로 줄이고; 서로 다른 시간에 생성되는 네트워크 성능 통계들의 시퀀스를 포함하는 복수의 네트워크 성능 보고 메시지를 생성시키고; 네트워크 성능 보고 메시지는 보안된 네트워크 성능 보고들이며; 그리고 보안된 네트워크 성능 보고들을 네트워크에 위치된 저장 기능으로 전송하도록 구성된다.In some embodiments, secure network busy status (NBS) monitoring and reporting is provided. In some embodiments, secure NBS monitoring and reporting facilitates NBS billing and control enforcement. In some embodiments, a processor of a wireless communication device for wireless communication using a wireless network is comprised of a security software or firmware instruction execution environment, and the DDR processor in a secure execution environment comprises: ≪ / RTI > Generate and record a characterization of network performance based on monitoring of service usage of the wireless communication device over the wireless communication network; Analyzing a characterization of the network performance and reducing the performance characteristic rating to one or more network performance statistics that provide an indication of the performance level or congestion level of the network the device is experiencing; Generate a plurality of network performance report messages including a sequence of network performance statistics generated at different times; The network performance report message is a secure network performance report; And to send secure network performance reports to a storage function located in the network.

일부 실시예들에서, 네트워크 비지 상태 또는 네트워크 혼잡의 척도는 다음 중 하나 이상을 관찰함에 의해 형성된다: 네트워크 접속 시도들의 횟수, 접속 성공 횟수, 접속 실패 횟수, 접속 시도와 접속 성공 사이의 딜레이(delay), 네트워크 처리량(throughput) 데이터 속도, 데이터 오류율, 패킷 오류율, 패킷 반복률, 일방향 또는 양방향 딜레이, 일방향 또는 양방향 딜레이 지터(jitter), TCP 트래픽 백 오프(traffic back off) 파라미터, TCP 윈도우(window) 파라미터, 모뎀 채널 품질, 모뎀 채널 파워, 모뎀 채널 신호 대 잡음비, 모뎀 OTA(over the air) 데이터 속도, 또는 네트워크 처리량 데이터 속도 대 모뎀 OTA 데이터 속도, 및 디바이스가 연결되는 네트워크의 서브네트워크.In some embodiments, the measure of network busy status or network congestion is formed by observing one or more of the following: a number of network connection attempts, a number of connection successes, a number of connection failures, a delay between a connection attempt and a connection success ), Network throughput data rate, data error rate, packet error rate, packet repetition rate, one-way or bi-directional delay, one-way or two-way delay jitter, TCP traffic back off parameter, TCP window parameter , Modem channel quality, modem channel power, modem channel signal-to-noise ratio, modem over the air data rate, or network throughput data rate versus modem OTA data rate, and the subnetwork of the network to which the device is connected.

일부 실시예들에서, 서비스 사용의 척도는 디바이스 사용자의 서비스 사용에 의해 생성되는 네트워크 트래픽을 관찰함으로부터 얻어진다. 일부 실시예들에서, 서비스 사용의 척도는: 디바이스와 네트워크 기능 사이에서 하나 이상의 네트워크 트래픽 시퀀스를 통신하는 것; 및 네트워크 성능의 특성 평가를 생성하고 기록하기 위해 네트워크 트래픽 시퀀스를 포함하는 서비스 사용 모니터링의 서브세트를 사용하는 것으로부터 얻어진다.In some embodiments, the measure of service use comes from observing network traffic generated by the use of a device user's service. In some embodiments, the measure of service use is: communicating one or more network traffic sequences between the device and the network function; And a subset of service usage monitoring that includes a network traffic sequence to generate and record a characterization of network performance.

일부 실시예들에서, 각 무선 디바이스가 보안 네트워크 성능 기록 생성기를 포함하는 복수의 무선 통신 디바이스를 통한 무선통신에서 무선 네트워크를 이용한 무선 통신을 위한, 디바이스 보안 네트워크 성능 기록 저장소 및 처리 기능으로서 구성되는 네트워크 디바이스의 프로세서는: 복수의 보안 네트워크 성능 기록 생성기들 각각과 네트워크 디바이스 사이의 개별 보안 통신 채널을 제공하고, 여기서 통신 채널 보안 프로토콜은 보안 네트워크 성능 기록을 무단 조작함이 감지될 수 있도록 구성되고; 보안 네트워크 성능 기록 생성기들 각각으로부터 복수의 보안 네트워크 성능 기록들을 보안 통신 채널을 통해 수신하고, 여기서 복수의 보안 네트워크 성능 기록은 디바이스가 겪는 네트워크의 성능 수준 또는 혼잡 수준의 표시를 제공하는 네트워크 성능 통계이고; 각 디바이스에 대한 보안 네트워크 성능 기록 시퀀스가 저장되는 디바이스 보안 네트워크 성능 기록 기능을 제공하고; 각 디바이스가 연결되는 네트워크의 서브 네트워크를 결정하고, 서브 네트워크에 대한 성능 수준 또는 혼잡 수준의 전체 특성 평가를 판단하기 위해 동일 서브 네트워크에 연결된 복수의 디바이스들로부터 수신되는 보안 네트워크 성능 기록들을 분석하며, 네트워크에 연결된 다른 서브 네트워크들에 대한 성능 수준 또는 혼잡 수준의 전체 특성 평가를 판단하기 위해 동일 작업을 수행하고; 특성 평가된 각 서브 네트워크에 대한 성능 수준 또는 혼잡 수준의 전체 특성 평가의 결과들을 저장하고, 저장된 결과들을 다른 네트워크 디바이스들 또는 기능들에서 이용 가능하도록 하고; 그리고 만일 임의의 디바이스 데이터 기록이 위해되었거나, 지연되었거나 또는 제거되었다면, 네트워크 접속을 제한하기 위해 그 디바이스에 대해 사기 감지 오류 플래그를 설정하고 그리고 또한 네트워크 장치 또는 네트워크 관리자가 추가 조치를 취하게 신호를 전송하도록 구성된다.In some embodiments, each wireless device is configured as a device security network performance record store and processing function for wireless communication over a wireless network in a wireless communication via a plurality of wireless communication devices including a secure network performance record generator The processor of the device: providing a separate secure communication channel between each of the plurality of secure network performance record generators and the network device, wherein the communication channel security protocol is configured such that unauthorized tampering of the secure network performance record can be detected; Receiving a plurality of secure network performance records from each of the secure network performance record generators over a secure communication channel, wherein the plurality of secure network performance records are network performance statistics providing an indication of the level of performance or congestion level of the network experienced by the device ; Providing a device security network performance recording function in which a secure network performance recording sequence for each device is stored; Analyzing security network performance records received from a plurality of devices connected to the same subnetwork to determine a subnetwork of the network to which each device is connected and to evaluate an overall characteristic evaluation of the performance level or congestion level for the subnetwork, Performing the same operation to determine an overall characteristic evaluation of a performance level or a congestion level for other subnetworks connected to the network; Store the results of the overall characterization of the performance level or congestion level for each sub-network that has been characterized, and make stored results available to other network devices or functions; And if any of the device data records have been forged, delayed, or removed, set a fraud detection error flag for that device to restrict network access and also signal the network device or network administrator to take further action .

일부 실시예들에서, 네트워크 성능 특성 평가 시스템이 제공된다. 일부 실시예들에서, 네트워크 성능 특성 평가 시스템은 무선 네트워크를 이용한 무선 통신을 위한 무선 통신 디바이스의 프로세서를 포함하고, 여기서 그 프로세서는 보안 소프트웨어 또는 펌웨어 명령 실행 환경으로 구성되며, 보안 소프트웨어 또는 펌웨어 명령 실행 환경에서 프로그램은: 디바이스와 네트워크 디바이스 사이에서 복수의 트래픽 시퀀스들을 통신하고, 여기서 트래픽 시퀀스들은 보안되며; 그리고 다음 중 하나 이상에 기초한 각 트래픽 시퀀스를 개시하도록 구성된다: 소정의 시간 또는 시간 간격, 디바이스에서 일어나고 네트워크 디바이스로부터 전달되는 메시지에 대한 응답으로서 일어나는 서비스 사용 이벤트 또는 서비스 사용 조건; 그리고 보안 실행 환경에서 프로그램과 보안 통신하는 네트워크 디바이스의 프로세서(예를 들어, DDR 프로세서)는: 무선 네트워크를 이용한 무선 통신 디바이스의 서비스 사용 사이의 복수의 보안 트래픽 시퀀스들을 모니터링하고; 보안 트래픽 시퀀스들의 모니터링 결과들을 이용하여, 네트워크 성능의 특성 평가를 생성 및 기록하고; 네트워크 성능의 특성 평가를 분석하고 그 성능 특성 평가를 디바이스가 겪는 네트워크의 성능 수준 또는 혼잡 수준의 표시를 제공하는 하나 이상의 네트워크 성능 통계들로 줄이고; 서로 다른 시간에 생성되는 네트워크 성능 통계들의 시퀀스를 포함하는 복수의 네트워크 성능 보고들을 생성시키도록 구성되며; 여기서, 네트워크 성능 보고들은 네트워크 성능 보고 저장 기능에 저장되고; 그리고 네트워크 성능 보고 저장 기능은 다른 네트워크 디바이스 또는 기능들에서 이용 가능하도록 된다.In some embodiments, a network performance characterization system is provided. In some embodiments, the network performance characterization system comprises a processor of a wireless communication device for wireless communication over a wireless network, wherein the processor is configured with security software or a firmware command execution environment, In the environment, the program: communicates a plurality of traffic sequences between the device and the network device, wherein the traffic sequences are secured; And initiate each traffic sequence based on one or more of the following: a predetermined time or time interval, a service usage event or service usage condition that occurs in response to a message that occurs in the device and is delivered from the network device; And a processor (e. G., A DDR processor) of a network device that communicates securely with the program in a secure execution environment, comprising: monitoring a plurality of secure traffic sequences between the service use of the wireless communication device using the wireless network; Using the monitoring results of the secure traffic sequences to generate and record a characterization of network performance; Analyzing a characterization of the network performance and reducing its performance characterization to one or more network performance statistics that provide an indication of the level of performance or congestion level of the network the device is experiencing; And generate a plurality of network performance reports comprising a sequence of network performance statistics generated at different times; Here, the network performance reports are stored in the network performance report storage function; And the network performance report storage function is made available to other network devices or functions.

일부 실시예들에서, DDR들은 다음의 활동들 중 하나 이상에 적용된다: 서비스 청구, 서비스 제어, 및/또는 접속 제어; 서비스 사용 측정(예를 들어, 서비스 사용의 사기 저항성 및 확장성 디바이스 측정); 모니터링된 서비스 사용 검증; 서비스 사용 제어 정책들이 디바이스 상에서 적절하게 구현되는지 검증; 그리고 성능 모니터링 및/또는 측정의 소스(source).In some embodiments, DDRs apply to one or more of the following activities: service billing, service control, and / or access control; Service usage measurements (e.g., fraud resistance and scalable device measurements of service use); Validation of monitored service usage; Verify that service usage control policies are properly implemented on the device; And source of performance monitoring and / or measurement.

일부 실시예들에서, DDR들은 설정된 시간 간격에 기초하여; 설정된 사용 크기(예를 들어, 버퍼 크기 한계 또는 디바이스에 대해 미리 정의된 크기 한계 또는 다른 기준)에 기초하여; 모뎀 리소스들이 미리 정의된 임계점(예를 들어, 메모리 부족 또는 메모리의 허용 한계 사용에 접근과 같은, 사용 임계점)에 도달할 때; 무선 통신 디바이스의 어플리케이션 프로세서에서 실행되는 서비스 프로세서로부터의 요청에 응답하여; 서비스 제어기로부터 요청에 응답하여(예를 들어, 직접적으로 또는 간접적으로 무선 통신 디바이스의 어플리케이션/범용 프로세서에서 실행되는 서비스 프로세서를 통하여) 네트워크 요소로 데이터를 전달한다.In some embodiments, DDRs are based on a set time interval; Based on a set usage size (e.g., a buffer size limit or a predefined size limit or other criteria for the device); When modem resources reach a predefined threshold (e.g., a usage threshold, such as an out-of-memory or access to memory usage limit); In response to a request from a service processor executing in an application processor of the wireless communication device; In response to a request from a service controller (e.g., directly or indirectly through the service processor running on the application / general purpose processor of the wireless communication device) to the network element.

일부 실시예들에서, 조정 프로세스는 복수의 디바이스 데이터 기록들과 모니터링된 무선 통신 디바이스에 대한 서비스 프로세서 사용 보고들을 조정하기 위해 제공되어 모니터링된 무선 통신 디바이스들 각각에 대한 보고된 서비스 사용을 검증하게 되는데, 다음 중 하나 이상을 포함한다: 복수의 모니터링된 무선 통신 디바이스 각각으로부터 수신된 디바이스 데이터 기록들, 및 미리 정의된 시간 간격에 대한, 또는 각 수신된 서비스 프로세서 사용 보고와 관련 디바이스 데이터 기록들에 대한 비교에 기초한, 또는 미리 정의된 서비스 사용 양/집단 사용 양에 기초한, 또는 미리 정의된 시간 간격에 기초한, 또는 서비스 정책 검증 설정에 기초한 서비스 프로세서 사용 보고들 조정; 모니터링된 무선 통신 디바이스가 무단 조작되거나 위해되지 않았는지(예를 들어, 없어진, 변경된, 지연된 및/또는 조정되지 않은 DDR들 또는 수신된 마이크로 CDR들 및 DDR들 사이의 공차를 넘는 불일치) 검증; 모니터링된 무선 통신 디바이스의 서비스 사용이 관련 서비스 정책 및/또는 서비스 계획을 따르는지 검증; 모니터링된 무선 통신 디바이스가 시간의 기간(예를 들어, QoS, NBS, 쓰로틀링(throttling)) 동안 관련 서비스 정책/서비스 계획의 트래픽 제어 정책을 적절하게 구현하였는지 검증; 모니터링된 무선 통신 디바이스들 각각에 대해, 수신된 복수의 디바이스 데이터 기록들과 서비스 프로세서 사용 보고들을 이용하여 수신된 서비스 사용 척도의 정확도 검증; 및 공차 한계를 이용한 조정. 일부 실시예들에서, 공차 한계(예를 들어, 고정된 양, 퍼센트 기반)은 동기화된 모니터링된 시간 기간 동안 수신된 디바이스 데이터 기록들과 서비스 프로세서 사용 보고들 사이의 편차를 설명하고, 다음 중 하나 이상을 포함한다: 서비스 공급자 설정 공차, 수신된 디바이스 데이터 기록들에서 분류되지 않은 서비스 사용 및/또는 알려진 서비스 활동들과 연관될 수 없는 서비스 사용에 대한 조정 프로세스에서 설정된 공차, 컨텐츠 배포 네트워크 서비스에 대한 재지정(redirected) 서비스 사용 활동들 및/또는 기타 가능한 차이 및/또는 변형들.In some embodiments, the coordination process is provided to coordinate service processor usage reports for a plurality of device data records and monitored wireless communication devices to verify reported service usage for each of the monitored wireless communication devices , Device data records received from each of the plurality of monitored wireless communication devices, and device data records for each predefined time interval, or for each received service processor usage report and associated device data records Adjustment of service processor usage reports based on a comparison or based on a predefined amount of service usage volume / population usage, based on predefined time intervals, or based on service policy verification settings; Verifying that the monitored wireless communication device has not been tampered with or tampered with (e.g., a discrepancy that has crossed the tolerance between missing, changed, delayed and / or unadjusted DDRs or received micro CDRs and DDRs); Verifying that the service usage of the monitored wireless communication device complies with the relevant service policy and / or service plan; Verifying that the monitored wireless communication device has properly implemented the traffic control policy of the associated service policy / service plan for a period of time (e.g., QoS, NBS, throttling); For each of the monitored wireless communication devices, verifying the accuracy of the received service usage metric using the received plurality of device data records and service processor usage reports; And adjustment using tolerance limits. In some embodiments, the tolerance limit (e.g., fixed amount, percent based) describes the deviation between the received device data records and the service processor usage reports during the synchronized monitored time period, The tolerance set for the service provider setting tolerance, the unclassified service usage in the received device data records and / or the coordination process for service usage that can not be associated with known service activities, Redirected service usage activities and / or other possible differences and / or variations.

일부 실시예들에서, 조정 엔진은 다음 중 하나 이상을 수행한다: 시간 경과(예를 들어, 훈련 기간, 휴리스틱스를 이용한 주기적 개선)에 따른 동기화 오류들 또는 트래픽 분류 오류들을 설명하는 하나 이상의 패턴들 판단; 수신된 디바이스 데이터 기록들이 정책 서비스 사용 활동들(예를 들어, 역 DNS 룩업, 화이트 리스트, 웹 크롤러(web crawler))내에서 적절하게 연관되는 지 판단; 수신된 복수의 디바이스 데이터 기록들에 대해 서비스 프로세서 분류(예를 들어, 마이크로 CDR/uCDR에서 보고된 바와 같은, 7계층 서비스 사용 활동 분류)와 유사한 분류 작업을 수행하고 나서, 수신된 복수의 디바이스 데이터 기록들 사용을 서비스 프로세서에 의해 사용되는 서비스 사용 활동 분류들로 그룹화; 각 서비스 활동 분류에 대해 서비스 프로세서 사용 보고들의 서비스 사용 척도들을 판단하고 나서, 수신된 디바이스 데이터 기록들의 서비스 사용 척도들을 분류함으로써 검증될 수 있는 각 서비스 사용 활동의 퍼센트 판단; 예를 들어, DDR들과 패킷 분류를 위한 역 DNS의 사용으로 임계점 기반 비교 기술들을 이용하여 조정을 위한 적응성 주변 기술들 구현, 그리고 나서 호스트 후원 서비스 대 ALL 화이트 리스트 호스트 이름, 호스트 후원 서비스 대 모든 알려지지 않은 호스트 이름, 호스트 후원 서비스 대 동기화 오류 공차에 대해 허용된 사용의 비율을 이용하여, (허용 가능한 오류 퍼센트와) 비교 수행 및 가능한 사기 시나리오 식별; 다음의 분류된 서비스들 중 하나 이상에 대한 조정 수행: 후원되는 서비스들, 사용자(예를 들어, 개방 접속) 서비스들, 통신사업자 서비스들, 서비스 계획 분류 정의의 일부인 네트워크 보호 서비스들(예를 들어, 백그라운드로서 분류될 수 있고, 따라서 전경(foreground)/최우선 순위 서비스들에 대한 네트워크 대역폭/자원들을 보호하기 위해 지연될 수 있는 서비스들); 및 제3 서비스 사용 척도(예를 들어, 네트워크 기반 CDR, FDR 및/또는 IPDR)를 이용한 조정. 일부 실시예들에서, 보안 디바이스 데이터 기록(들)은 DDR 보고에 포함되는 서비스 프로세서로부터 수신되는 5-투플(tuple) 분류 정보(예를 들어, 소스 주소, 포트 주소, 목적지 주소, 목적지 포트, 및 프로토콜)와 함께 해당 7계층 분류 정보(예를 들어, 도메인 이름, 어플리케이션 식별자, HTTP 정보, 연관 분류, 및/또는 본원에서 설명된 기타 정보)를 수반할 수 있고, 예를 들어, 본원에서 설명된 다양한 기술들을 이용하여, 서비스 사용 조정 및/또는 검증을 돕기 위해 서비스 제어기(예를 들어, 또는 다른 네트워크 요소)로 전송될 수 있다.In some embodiments, the coordination engine performs one or more of the following: one or more patterns describing synchronization errors or traffic classification errors due to time lapse (e.g., training period, periodic improvement using heuristics) judgment; Determining whether received device data records are properly associated within policy service usage activities (e.g., reverse DNS lookup, whitelist, web crawler); Performs classification operations similar to those of the service processor classification (for example, the seven-layer service use activity classification as reported in the micro CDR / uCDR) for a plurality of received device data records, Grouping the use of records into service usage activity classes used by the service processor; Determining a percentage of each service usage activity that can be verified by determining service usage metrics of service processor usage reports for each service activity classification and then classifying service usage metrics of received device data records; For example, implementation of adaptive peripherals for coordination using threshold-based comparison techniques with the use of DDRs and reverse DNS for packet classification, and then host-sponsored services versus ALL whitelist host names, host-sponsored services versus all known Perform a comparison (with an acceptable error percentage) and identify possible fraud scenarios, using a percentage of the allowed use for host name, host-sponsored service-to-synchronization fault tolerance; Perform coordination on one or more of the following classified services: Supported services, user (eg, open access) services, carrier services, network protection services that are part of the service plan classification definition Services that can be classified as background and thus can be delayed to protect network bandwidth / resources for foreground / high priority services); And third service usage metrics (e.g., network-based CDRs, FDRs, and / or IPDRs). In some embodiments, the secure device data record (s) may include 5-tuple classification information (e.g., source address, port address, destination address, destination port, and destination address) received from the service processor included in the DDR report (E.g., domain name, application identifier, HTTP information, association classifications, and / or other information described herein) along with corresponding seven-tier classification information (e.g., May be sent to a service controller (e.g., or other network element) to assist in service usage coordination and / or verification, using various techniques.

일부 실시예들에서, DDR들은 소스 주소, 포트 주소, 목적지 주소, 목적지 포트 및 프로토콜(예를 들어, 인바운드 및 아웃바운드)을 포함하는 5-투플 분류 정보 및 바이트 카운트 중 하나 이상을 포함하며, 공차 한계는 다음 중 하나 이상을 설명한다: 사용 측정 차이들, 시간 동기화 차이 및/또는 DDR 프로세서 분류자에서 이용할 수 없는 정보의 장점을 가지고 서비스 프로세서에 의해 분류되는 정보(예를 들어, 어플리케이션 정보, 연관 정보, DDR 프로세서에서 단순 분류 구현/알고리즘 등). 일부 실시예들에서, 서비스 프로세서 사용 보고들은 수신된 디바이스 데이터 기록들에 포함되지 않는 7계층 모니터링된 서비스 사용 정보(예를 들어, 도메인 이름, 어플리케이션 식별자, HTTP 정보, 연관 분류, 및/또는 본원에서 설명된 기타 정보) 중 하나 이상을 포함하고, 수신된 디바이스 데이터 기록들의 일부 퍼센트만이 서비스 사용 활동과 연관된 트래픽으로서 식별되고, 그리고 각 서비스 사용 활동에 대해, 활동에 의해 변하는 분류되지 않는 트래픽에 대한 허용이 제공되고(예를 들어, CNN이 매우 다양한 중에는 아마존은 "닫힘"), 모든 분류되지 않은 허용들의 총합은 총 분류되지 않은 수신된 디바이스 데이터 기록들 정보를 초과하지 않고, 제1 시간 간격에 대한 공차를 완화시키고 제2 시간 간격에 대한 공차를 엄격하게 하며, 여기서 제2 시간 간격은 제1 시간 간격보다 더 길다. 일부 실시예들에서, 보안 디바이스 데이터 기록(들)은 DDR 보고에 포함되는 서비스 프로세서로부터 수신되는 5-투플(tuple) 분류 정보(예를 들어, 소스 주소, 포트 주소, 목적지 주소, 목적지 포트, 및 프로토콜)와 함께 해당 7계층 분류 정보(예를 들어, 도메인 이름, 어플리케이션 식별자, HTTP 정보, 연관 분류, 및/또는 본원에서 설명된 기타 정보)를 수반할 수 있고, 예를 들어, 본원에서 설명된 다양한 기술들을 이용하여, 서비스 사용 조정 및/또는 검증을 돕기 위해 서비스 제어기(예를 들어, 또는 다른 네트워크 요소)로 전송될 수 있다.In some embodiments, the DDRs include one or more of a source address, a port address, a destination address, a destination port, and a 5-tuple classification information and a byte count including a protocol (e.g., inbound and outbound) The limitations describe one or more of the following: information that is classified by the service processor (e.g., application information, association (s)) with the benefit of measurement differences, time synchronization differences, and / or information not available in the DDR processor classifier Information, simple classification implementations / algorithms in DDR processors, etc.). In some embodiments, the service processor usage reports include 7-layer monitored service usage information (e.g., domain name, application identifier, HTTP information, association classification, and / Other information described), and only a percentage of the received device data records are identified as traffic associated with the service usage activity, and for each service usage activity, for each unclassified traffic varied by activity (E.g., " closed " for a very wide variety of CNNs), the sum of all unclassified permissions does not exceed the total unclassified received device data records information, To relax the tolerance for the second time interval and to tighten the tolerance for the second time interval, It is longer than the first time interval. In some embodiments, the secure device data record (s) may include 5-tuple classification information (e.g., source address, port address, destination address, destination port, and destination address) received from the service processor included in the DDR report (E.g., domain name, application identifier, HTTP information, association classifications, and / or other information described herein) along with corresponding seven-tier classification information (e.g., May be sent to a service controller (e.g., or other network element) to assist in service usage coordination and / or verification, using various techniques.

진보된 무선 서비스 플랫폼 (Advanced Wireless Services Platform ( AWSPAWSP ))

일부 실시예들에서, 진보된 무선 서비스 플랫폼(AWSP)이 제공된다. 다양한 실시예들에 관하여 본원에서 설명된 바와 같이, 일부 실시예들에서, AWSP는 기존 서비스를 지원하는 개량된 네트워킹 기술 플랫폼을 제공하고 또한 무선 네트워크(예를 들어, 4G, 3G 및/또는 2G 네트워크)에 대한 다양한 새로운 인터넷과 데이터 서비스 용량을 가능하게 한다. 다양한 실시예들에 관하여 본원에서 설명된 바와 같이, 일부 실시예들에서, AWSP를 구현하기 위해 무선 디바이스, 프로세서(들), 펌웨어(예를 들어, 다양한 실시예들에 관하여 본원에서 설명된 바와 같은 DDR 펌웨어) 및 소프트웨어는 무선 네트워크 서비스 정책에서 과금, 접속 제어 및 서비스 통지를 위한 개량된 역할을 제공한다.In some embodiments, an Advanced Wireless Services Platform (AWSP) is provided. As described herein with respect to various embodiments, in some embodiments, the AWSP provides an improved networking technology platform that supports existing services and also provides a wireless network (e.g., a 4G, 3G and / or 2G network Enabling a variety of new Internet and data service capacities. As described herein with respect to various embodiments, in some embodiments, a wireless device, processor (s), firmware (e. G., As described herein with respect to various embodiments) DDR firmware) and software provide an improved role for billing, access control and service notification in wireless network service policies.

다양한 실시예에 관하여 본원에서 설명된 바와 같이, 일부 실시예들에서, AWSP는 소비자, 기업, 및 사물지능통신(machine to machine) 시장을 위한 광범위 서비스, 디바이스, 및 어플리케이션을 지원한다. 일부 실시예들에서, AWSP는 다음을 포함하는, 다양한 디바이스 유형들을 지원한다: 4G 및 3G 스마트폰, 4G 및 3G 피처폰, 4G 및 3G USB 동글(dongle) 및 카드, 4G-to-WiFi 및 3G-to-WiFi 브릿지(bridge) 디바이스, 4G 및 3G 노트북 및 넷북 컴퓨터 디바이스, 4G 및 3G 슬레이트 컴퓨터 디바이스, 4G 및 3G 가전 디바이스(예를 들어, 카메라, 개인 네비게이션 디바이스, 음악 플레이어, 및 가정용 전력계) 및 사물지능통신 디바이스(예를 들어, 지리적 위치 추적 디바이스, 주차 요금 징수기 및 자동 판매기와 같은, 최소 사용자 인터페이스(UI) 용량을 가지는 다양한 유형의 소비자 및 산업용 디바이스).As described herein with respect to various embodiments, in some embodiments, the AWSP supports a wide range of services, devices, and applications for the consumer, enterprise, and machine to machine markets. In some embodiments, AWSP supports a variety of device types, including 4G and 3G smartphones, 4G and 3G feature phones, 4G and 3G USB dongles and cards, 4G-to-WiFi and 3G to-WiFi bridge devices, 4G and 3G notebook and netbook computer devices, 4G and 3G slate computer devices, 4G and 3G consumer devices (e.g., cameras, personal navigation devices, music players, Various types of consumer and industrial devices with minimal user interface (UI) capacity, such as geo-location tracking devices, parking bill collectors, and vending machines.

일부 실시예들에서, AWSP는 디바이스 데이터 기록(DDR) 프로세서를 포함한다. 일부 실시예들에서, DDR 프로세서는 AWSP 순응 프로세서(예를 들어, 프로세서 또는 ASWP와 호환성 있고, ASWP를 지원하고, 예컨대 무선 통신사업자 AWSP 칩셋 인증 프로그램을 통해서 AWSP 승인 및/또는 인증된 프로세서의 세트)내에서 보안 하드웨어 실행 환경으로 통합되는 펌웨어를 포함한다. 다양한 실시예들에 관하여 본원에서 설명된 바와 같이, 일부 실시예들에서, AWSP 순응 프로세서는, 프로세서가 AWSP 상에서 적절한 서비스 전달 자격을 갖도록 인증된다.In some embodiments, the AWSP includes a device data record (DDR) processor. In some embodiments, the DDR processor may be an AWSP compliant processor (e.g., a processor or a set of AWSP certified and / or certified processors that are compatible with the ASWP, support ASWP, e.g., through a wireless carrier AWSP chipset authentication program) Lt; RTI ID = 0.0 > hardware < / RTI > execution environment. As described herein with respect to various embodiments, in some embodiments, the AWSP compliant processor is authenticated such that the processor has the appropriate service delivery qualification on the AWSP.

일부 실시예들에서, DDR 펌웨어 개발 도구(DDR Firmware Developer? Kit, DDR FDK)가 제공된다. 일부 실시예들에서, DDR FDK는 펌웨어 코드(예를 들어, C 언어로 쓰여짐), 상세한 DDR 프로세서 사양, 상세한 칩셋 보안 실행 환경(SEE) 사양, DDR 프로세서 칩셋 테스트 기준, 및 DDR 프로세서 칩셋 인증 절차를 포함한다. 예를 들어, 승인된 칩셋 파트너는 DDR 펌웨어를 승인 또는 인증된 프로세서(들)(예를 들어, AWSP 칩셋 인증 프로그램 하에서 승인 또는 인증된 칩셋)을 위한 칩셋 인증 디바이스(Chipset Certification Device, CCD)로 통합시킬 수 있다. 일부 실시예들에서, CCD는 AWSP 칩셋 인증 프로그램에 제출된 칩셋을 포함하는 스마트폰/피처폰 디바이스를 위한 승인된 칩셋 파트너 칩셋 보드 지원 패키지(Board Support Package, BSP)를 포함한다. 일부 실시예들에서, CCD는 AWSP 칩셋 인증 프로그램에 제출된 승인된 칩셋 파트너 칩셋을 포함하는 스마트폰/피처폰 디바이스를 포함한다. 일부 실시예들에서, 다양한 운영체계들(OS)이 지원된다(예를 들어, 리눅스, 안드로이드, 애플, 마이크로소프트, 팜/HP, 심비안, 및/또는 다양한 기타 운영 체계 및/또는 플랫폼).In some embodiments, a DDR Firmware Developer ' kit (DDR FDK) is provided. In some embodiments, the DDR FDK may include firmware code (eg written in C), detailed DDR processor specifications, detailed chipset security implementation environment (SEE) specifications, DDR processor chipset test criteria, and DDR processor chipset authentication procedures . For example, an approved chipset partner may integrate DDR firmware into a Chipset Certification Device (CCD) for approved or certified processor (s) (e.g., a chipset approved or authorized under the AWSP chipset certification program) . In some embodiments, the CCD includes an approved Chipset Partner Chipset Board Support Package (BSP) for a smartphone / feature phone device that includes chipsets submitted to the AWSP chipset authentication program. In some embodiments, the CCD includes a smartphone / feature phone device that includes an approved chipset partner chipset submitted to an AWSP chipset authentication program. In some embodiments, various operating systems (OS) are supported (e.g., Linux, Android, Apple, Microsoft, Palm / HP, Symbian, and / or various other operating systems and / or platforms).

일부 실시예들에서, 개량된 기능성은 서비스 프로세서(SP) 커널(kernel) 프로그램과 어플리케이션의 통합을 포함한다. 일부 실시예들에서, DDR 펌웨어에 더하여, 서비스 프로세서 소프트웨어 개발 도구(SP SDK)가 제공된다. 다양한 실시예들에 관하여 본원에서 설명되는 바와 같이 일부 실시예들에서, SP SDK는 SP SDK 커널 프로그램과 어플리케이션 소프트웨어를 디바이스 OEM으로 통합하기 위한 소프트웨어와 상세 정보를 포함한다. 일부 실시예들에서, 승인된 칩셋 파트너 CCD는 무선 통신사업자의 네트워크 상에서 작동을 위해 인증된 상호 간에 받아 들일 수 있는 WWAN 무선 모뎀 칩셋을 이용하여 무선 통신사업자의 3G(EVDO/UMTS) 네트워크 또는 무선 통신사업자의 4G LTE 네트워크 중 어느 하나에 연결된다.In some embodiments, the improved functionality includes the integration of a service processor (SP) kernel program and an application. In some embodiments, in addition to the DDR firmware, a service processor software development tool (SP SDK) is provided. In some embodiments, as described herein with respect to various embodiments, the SP SDK includes software and detailed information for integrating the SP SDK kernel program and application software into the device OEM. In some embodiments, the approved chipset partner CCD may be coupled to a wireless carrier's 3G (EVDO / UMTS) network or wireless communication using a mutually acceptable WWAN wireless modem chipset certified for operation on a wireless carrier's network Lt; RTI ID = 0.0 > LTE < / RTI >

DDRDDR 프로세서 개요 Processor overview

일부 실시예들에서, DDR 프로세서는 어플리케이션 프로세서 유닛(APU) 또는 모뎀 프로세서 유닛(MPU) 중 어느 하나에 내장된 보안 펌웨어 내에서 구현된다. 일부 실시예들에서, DDR 프로세서는 제조 시에 OEM에 의해 설치되는 디바이스 펌웨어 구축의 일부로서 제공된다. 일부 실시예들에서, DDR 프로세서는 들어오고 나가는 IP 패킷을 모니터링하고 다양한 통계들(예를 들어, 디바이스 데이터 기록들(DDR))을 수집한다. 일부 실시예들에서, DDR은, 일부에서, IP 흐름을 따라 소비되는 서비스 사용 또는 전송되는 데이터의 양의 기록이다. 일부 실시예들에서, IP 흐름은 소스 주소, 목적지 주소, 소스 포트, 목적지 포트, 및 프로토콜 유형에 의해 특정된다. 일부 실시예들에서, 서비스 디바이스 데이터 기록은 해당 7계층 분류 정보(예를 들어, 도메인 이름, 어플리케이션 식별자, HTTP 정보, 연관 분류, 및/또는 본원에서 설명되는 다른 정보)를 서비스 프로세서로부터 수신되는 IP 흐름(예를 들어, 소스 주소, 포트 주소, 목적지 주소, 목적지 포트 및 프로토콜)과 일치시키는 것을 또한 수반할 수 있다. 일부 실시예들에서, DDR들은 또한, 다양한 실시예들과 관련하여 본원에서 설명된 바와 같이, 네트워크 서비스 사용을 위한 분류의 다른 유형을 포함한다. 일부 실시예들에서, DDR들은 또한, 다양한 실시예들과 관련하여 본원에서 설명된 바와 같이, 네트워크 서비스 사용과 관련한 또는 그에 기초한 다양한 통계들을 또한 포함한다. 일부 실시예들에서, DDR들은, 다양한 실시예들과 관련하여 본원에서 설명된 바와 같이, 다양한 서비스 사용 내역보고, 접속 제어, 및 서비스 정책 집행 검증 기능들을 위한 홈과 로밍 네트워크 조건에서 2G, 3G, 및 4G 무선 네트워크에서 사용된다.In some embodiments, the DDR processor is implemented within security firmware embedded in either an application processor unit (APU) or a modem processor unit (MPU). In some embodiments, the DDR processor is provided as part of the device firmware build that is installed by the OEM at the time of manufacture. In some embodiments, the DDR processor monitors incoming and outgoing IP packets and collects various statistics (e.g., device data records (DDR)). In some embodiments, the DDR is, in part, a record of the amount of data being used or transmitted that is consumed along the IP flow. In some embodiments, the IP flow is specified by a source address, a destination address, a source port, a destination port, and a protocol type. In some embodiments, the service device data record includes information about the corresponding seven-layer classification information (e.g., domain name, application identifier, HTTP information, association classifications, and / or other information described herein) (E. G., Source address, port address, destination address, destination port and protocol). In some embodiments, DDRs also include other types of classifications for network service use, as described herein with respect to various embodiments. In some embodiments, DDRs also include various statistics based on or related to network service usage, as described herein with respect to various embodiments. In some embodiments, the DDRs may be configured to support 2G, 3G, and 3G in a home and roaming network conditions for various service usage history reporting, access control, and service policy enforcement verification functions, as described herein with respect to various embodiments. And 4G wireless networks.

도 1은 일부 실시예들에 따른 진보된 무선 서비스 플랫폼 단대단(end-to-end) DDR 보고 및 처리 시스템의 하이 레벨 도표를 나타낸다. 도 1에서, APU 칩셋 또는 MPU 칩셋으로 DDR 프로세서(예를 들어, DDR 프로세서 펌웨어 및/또는 기능성)를 안전하게 설치하기 위한 네 개의 DDR 구현 선택들이 나타내어진다. 이러한 세 개의 선택들 각각은 아래에서 높은 수준으로 그리고 다음 절에서 더 자세하게 설명된다.1 illustrates a high-level diagram of an advanced wireless service platform end-to-end DDR reporting and processing system in accordance with some embodiments. In Figure 1, four DDR implementation choices are shown for securely installing a DDR processor (e.g., DDR processor firmware and / or functionality) into an APU chipset or MPU chipset. Each of these three choices is described in greater detail below and in more detail in the next section.

일부 실시예들에서, 무선 통신 디바이스는 보안 실행 환경에서 DDR 프로세서(114)를 포함한다. 일부 실시예들에서, DDR 프로세서(114)는 다양한 실시예와 관련하여 본원에서 설명된 바와 같이 DDR 생성기 기능(예를 들어, 디바이스의 다른 요소/기능으로 및/또는 서비스 제어기(122)와 같은 네트워크 요소/기능으로 보고될 수 있는, 보안 DDR들을 생성시키기 위한 기능)을 포함한다. 다양한 아키텍쳐들이 보안 실행 환경에서 DDR 프로세서를 구현하기 위해 제공된다.In some embodiments, the wireless communication device includes a DDR processor 114 in a secure execution environment. In some embodiments, the DDR processor 114 may be coupled to a DDR generator function (e.g., to another element / function of the device and / or to a network such as the service controller 122) as described herein with respect to various embodiments. Function to generate secure DDRs, which may be reported as element / function. Various architectures are provided to implement DDR processors in secure execution environments.

디바이스 아키텍쳐(101)는 도시된 바와 같이 데이터 경로 보안 구역(140) (예를 들어, 어플리케이션/범용 프로세서 유닛(APU)에 위치)에서 DDR 프로세서(114)를 포함한다. 어플리케이션 프로그램(130)은 서비스 프로세서 어플리케이션 프로그램(112)을 이용하여 모니터링(예를 들어, 서비스 사용 기반 모니터링)된다. 커널 프로그램(132)은 서비스 프로세서 커널 프로그램(113)을 이용하여 모니터링된다. 운영 체계(OS)(134)는 모뎀 버스 드라이버 및 물리적 버스(142)를 통해 임의의 네트워크 접속을 위해 DDR 프로세서(114)에 의해 모니터링되는, 네트워크 접속을 위한 네트워크 스택(stack)(136) 위에 위치한다. 도시된 바와 같이, 3G 또는 4G 무선 네트워크 접속은 3G 또는 4G 모뎀(150)을 통해 3G 또는 4G 네트워크들(104)로 각각 제공된다. 이러한 디바이스 아키텍쳐 및 유사한 디바이스 아키텍쳐들은 아래에서 더 자세히 본원에서 설명된다.The device architecture 101 includes a DDR processor 114 in a data path secure area 140 (e.g., located in an application / general purpose processor unit (APU)) as shown. The application program 130 is monitored (e.g., service usage based monitoring) using the service processor application program 112. The kernel program 132 is monitored using the service processor kernel program 113. An operating system (OS) 134 is located over a network stack 136 for network connection, monitored by a DDR processor 114 for any network connection via a modem bus driver and physical bus 142 do. As shown, a 3G or 4G wireless network connection is provided via 3G or 4G modem 150 to 3G or 4G networks 104, respectively. These device architectures and similar device architectures are described in more detail below.

디바이스 아키텍쳐(102)는 도시된 바와 같이 데이터 경로 보안 구역(143) (예를 들어, 모뎀 프로세서 유닛(MPU)에 위치)에서 DDR 프로세서(114)를 포함한다. 디바이스 아키텍쳐(102)에서는 데이터 경로 보안 구역(143)이 3G 또는 4G 모뎀(151)에서 위치되는 것을 제외하고는 디바이스 아키텍쳐(102)는 디바이스 아키텍쳐(101)와 유사하다. 모뎀(151)을 경유하고 모뎀 버스 드라이버 및 물리적 버스(149)와 모뎀 I/O(156)을 통한 네트워크 통신은 모뎀 데이터 경로 및 신호 처리(154)를 통한 임의의 네트워크 접속을 위한 DDR 프로세서(114)를 이용하여 모니터링된다. 이러한 디바이스 아키텍쳐 및 유사한 디바이스 아키텍쳐는 아래에서 더 자세히 본원에서 설명된다.The device architecture 102 includes a DDR processor 114 in a data path security zone 143 (e.g., located in a Modem Processor Unit (MPU)) as shown. In the device architecture 102, the device architecture 102 is similar to the device architecture 101 except that the data path secure area 143 is located in a 3G or 4G modem 151. [ Network communication via the modem 151 and modem bus driver and physical bus 149 and modem I / O 156 is performed by a DDR processor 114 (not shown) for any network connection via modem data path and signal processing 154 ). ≪ / RTI > These device architectures and similar device architectures are described in more detail below.

디바이스 아키텍처(103)는 도시된 바와 같이 데이터 경로 보안 구역(145) (예를 들어, APU 또는 다른 프로세서/메모리, 예컨대 SIM 카드에서 위치)에서 DDR 프로세서(114)를 포함한다. 디바이스 아키텍쳐(103)에서는 APU 모뎀 버스 드라이버 및 물리적 버스가 보안 구역에 있을 필요가 없고 대신에 데이터 경로 보안 검증기(152)가 MPU에 있는 데이터 경로 보안 구역(147)에서 포함되어 APU내의 DDR 프로세서(114)에 의해 모니터링되는 트래픽으로만 네트워크 접속을 제한하게 되는 것을 제외하고는 디바이스 아키텍쳐(103)는 디바이스 아키텍쳐(101)와 유사하다. 이러한 디바이스 아키텍쳐 및 유사한 디바이스 아키텍쳐는 아래에서 더 자세히 본원에서 설명된다.The device architecture 103 includes a DDR processor 114 in a data path secure area 145 (e.g., located in an APU or other processor / memory, e.g., a SIM card) as shown. The device architecture 103 does not require the APU modem bus driver and the physical bus to be in the secure zone and instead the data path security verifier 152 is included in the data path security zone 147 in the MPU to enable the DDR processor 114 The device architecture 103 is similar to the device architecture 101 except that it restricts network connections only to traffic monitored by the device architecture 101. [ These device architectures and similar device architectures are described in more detail below.

디바이스 아키텍쳐(103A)는 도시된 바와 같은 데이터 경로 보안 구역(918)(예를 들어, SIM(913)에 위치)에서 DDR 프로세서(114)를 포함한다. 디바이스 아키텍쳐(103A)에서는, 디바이스 아키텍쳐(103)에서와 같이, 두 개의 데이터 경로 보안 구역들이 있는 것을 제외하고는 디바이스 아키텍쳐(103A)는 디바이스 아키텍쳐들(101 및 102)와 유사하다. 데이터 경로 보안 구역(143)은 3G 또는 4G 모뎀(151)에 위치되고, 데이터 경로 보안 구역(918)은 SIM(913)에 위치된다. 디바이스 아키텍쳐(103A)는, 모뎀 버스 드라이버 및 물리적 버스(149)가 보안 구역에 있을 필요가 없고, 대신에 데이터 경로 보안 검증기(152)가 MPU에 있는 데이터 경로 보안 구역(143)에서 포함되어 SIM(913) 내의 DDR 프로세서(114)에 의해 모니터링되는 트래픽으로만 네트워크 접속을 제한하게 된다. 이러한 디바이스 아키텍쳐 및 유사한 디바이스 아키텍쳐들은 아래에서 더 자세히 본원에서 설명된다. 디바이스 아키텍쳐(103A)는 통신사업자가 DDR 프로세서 기능성에 대한 완전한 제어를 갖게 할 수 있는데, 이는 SIM이 디바이스에서 "통신사업자-소유의" 실체인 것으로 산업에서 고려되기 때문이다.The device architecture 103A includes a DDR processor 114 in a data path secure area 918 (e.g., located in the SIM 913) as shown. In the device architecture 103A, as in the device architecture 103, the device architecture 103A is similar to the device architectures 101 and 102 except that there are two data path security zones. The data path security zone 143 is located in the 3G or 4G modem 151 and the data path security zone 918 is located in the SIM 913. The device architecture 103A does not require the modem bus driver and the physical bus 149 to be in the secure zone and instead the data path security verifier 152 is included in the data path secure area 143 in the MPU, The network connection is limited only to the traffic monitored by the DDR processor 114 in the network 913. These device architectures and similar device architectures are described in more detail below. The device architecture 103A allows a service provider to have complete control over DDR processor functionality because the SIM is considered an industry "carrier-owned" entity in the device.

당업자에 의해 인식되는 바와 같이, DDR 프로세서는(114)는 네트워크 접속을 집행하기 위해 동반 MPU를 가지는 임의의 다른 기능적 프로세서의 보안 구역에서 내장될 수 있다. DDR 프로세서(114)가 내장될 수 있는 이러한 기능적 프로세서들은, 예를 들어, 비디오 프로세서들, 오디오 프로세서들, 디스플레이 프로세서들, 위치(예를 들어, GPS) 프로세서들 및 다른 특별 목적의 프로세서들뿐만 아니라, 디지털 신호 프로세서들(DSP), 마이크로 프로세서들과 같은 범용 목적 프로세서들 등을 포함한다.As will be appreciated by those skilled in the art, the DDR processor 114 may be embedded in the secure area of any other functional processor having a companion MPU for enforcing network connectivity. These functional processors in which the DDR processor 114 may be embedded include, for example, video processors, audio processors, display processors, location (e.g., GPS) processors and other special purpose processors , Digital signal processors (DSP), general purpose processors such as microprocessors, and the like.

일부 실시예들에서, 서비스 제어기(122)가 도시된 바와 같이 제공된다. 일부 실시예들에서, 서비스 제어기(122)는 AWSP 네트워크 서버 클라우드 시스템으로서 제공된다. 일부 실시예들에서, 서비스 제어기(122)는 다음 중 하나 이상을 수행하도록 사용되는 AWSP 네트워크 서버 클라우드 시스템으로서 제공된다: 디바이스 서비스 사용 보고들을 수집; 디바이스 기반 네트워크 서비스 정책의 임의의 양태들을 관리; 네트워크(예를 들어, 무선 네트워크(들))에서 다양한 베이스 스테이션들을 위한 네트워크 비지 상태(NBS) 확인; 디바이스(들)(예를 들어, 무선 통신 디바이스(들))에서 구성된 사용자 통지 및 서비스 계획 선택 UI 프로세스들을 관리; 및 서비스 사기 검출의 임의의 양태들을 관리. 일부 실시예들에서, 서비스 제어기(122)는 도시된 바와 같이 보안 DDR 처리, 사용 조정 및 사기 검출 기능(124)을 포함한다. 일부 실시예들에서, 서비스 제어기(122)는 모니터링된 서비스 사용(예를 들어, 처리되고 조정된 보안 DDR들에 기초하여 조정된 서비스 사용)을 네트워크 서비스 사용 보고 시스템(180)으로 전달한다. 일부 실시예들에서, 보고된 서비스 사용은 집계되어 (예를 들어, 보고된 서비스 사용에 대해 청구하기 위한) 네트워크 청구시스템(190) 으로 전달된다.In some embodiments, a service controller 122 is provided as shown. In some embodiments, the service controller 122 is provided as an AWSP network server cloud system. In some embodiments, the service controller 122 is provided as an AWSP network server cloud system that is used to perform one or more of the following: collecting device service usage reports; Managing any aspects of the device based network service policy; Network busy status (NBS) confirmation for various base stations in a network (e.g., wireless network (s)); Managing user notification and service plan selection UI processes configured in the device (s) (e.g., wireless communication device (s)); And managing any aspects of service fraud detection. In some embodiments, the service controller 122 includes secure DDR processing, use coordination and fraud detection 124 as shown. In some embodiments, the service controller 122 forwards the monitored service usage (e.g., coordinated service usage based on processed and coordinated secure DDRs) to the network service usage reporting system 180. In some embodiments, reported service usage is aggregated and delivered to network billing system 190 (e.g., for billing for reported service usage).

일부 실시예들에서, 서비스 제어기(122)는 AWSP 시스템의 다양한 디바이스 기반 요소들과 통신한다. 일부 실시예들에서, 서비스 제어기(122)는 다음을 포함하여 AWSP 시스템의 다양한 디바이스 기반 요소들과 통신한다: DDR 프로세서(114)와 서비스 프로세서. 일부 실시예들에서, 서비스 프로세서(112)는 어플리케이션 서비스 프로세서(112)(예를 들어, 어플리케이션 스페이스 또는 프레임워크 스페이스 프로그램)와 커널 서비스 프로세서(113)(예를 들어, 커널 스페이스 또는 드라이버 스페이스 프로그램)를 포함한다. 일부 실시예들에서, 어플리케이션 서비스 프로세서(112)와 커널 서비스 프로세서(113)는 디바이스(예를 들어, 무선 통신 디바이스)의 어플리케이션 프로세서 유닛(APU)에서의 OS 파티션에서 실행 또는 수행한다. 일부 실시예들에서, 서비스 프로세서는 일반적으로 보안 실행 영역에 있지 않다.In some embodiments, the service controller 122 communicates with various device-based elements of the AWSP system. In some embodiments, the service controller 122 communicates with various device-based elements of the AWSP system, including the DDR processor 114 and the service processor. In some embodiments, the service processor 112 may include an application service processor 112 (e.g., an application space or a framework space program) and a kernel service processor 113 (e.g., a kernel space or a driver space program) . In some embodiments, application service processor 112 and kernel service processor 113 execute or execute in an OS partition in an application processor unit (APU) of a device (e.g., a wireless communication device). In some embodiments, the service processor is typically not in a secure execution area.

일부 실시예들에서, 서비스 프로세서는, 다양한 실시예들과 관련하여 본원에서 설명된 바와 같이, 네트워크 비지 상태(NBS) 정보를 수집하는 것, 서비스 사용 분류 및 보고, 어떤 네트워크 서비스 정책 집행 기능, 및/또는 어떤 사용자 통지 기능 및 로밍 접속 정책 집행 기능을 포함하는 통신사업자 네트워크를 위한 다양한 기능들을 수행한다. 일부 실시예들에서, 서비스 프로세서는 또한 어떻게 사용자에게 최적화된 서비스, 정보 및/또는 내용을 제공하는 지를 판단함에 있어 통신사업자(예를 들어, 무선 네트워크 서비스 또는 다른 서비스들을 위한 서비스 제공자)를 도와주는 디바이스 서비스 사용 정보를 기록하고 보고한다.In some embodiments, the service processor may be configured to collect network busy status (NBS) information, service use classification and reporting, some network service policy enforcement functions, and / or other functions, as described herein with respect to various embodiments. / RTI > and / or any user notification function and roaming access policy enforcement function. In some embodiments, the service processor may also be configured to assist a service provider (e.g., a service provider for wireless network services or other services) in determining how to provide optimized services, information, and / Record and report device service usage information.

일부 실시예들에서, DDR 프로세서(114)는 DDR들을 서비스 제어기(122)로 전달한다. 일부 실시예들에서, DDR 프로세서(114)는 DDR들을 인터넷, 통신사업자 네트워크 및/또는 다른 네트워크롤 경유하여 서비스 제어기(122)로 전달한다. 일부 실시예들에서, DDR 프로세서(114)는 DDR들을 서비스 제어기(122)로 직접적으로 전송하지 않고, 대신에 DDR 프로세서(114)는 DDR들을 서비스 프로세서로 전달한다. 이제 서비스 프로세서는 DDR들을 서비스 제어기(122)로, 일부 실시예들에서는, 부가적 서비스 사용 보고들 및/또는 다른 서비스 정책 관리 및 서비스 프로세서에 의해 생성되거나 수신되는 사용자 통지 통신들과 함께 전달하거나 중계한다.In some embodiments, the DDR processor 114 forwards the DDRs to the service controller 122. In some embodiments, the DDR processor 114 communicates the DDRs to the service controller 122 via the Internet, the carrier network, and / or other network rolls. In some embodiments, the DDR processor 114 does not direct the DDRs to the service controller 122, but instead the DDR processor 114 forwards the DDRs to the service processor. The service processor may now forward the DDRs to the service controller 122, in some embodiments, with additional service usage reports and / or other service policy management and user notification communications generated or received by the service processor, do.

예를 들어, APU OS 실행 환경은 일반적으로 서비스 프로세서가 OS 및/또는 시스템 내의 다른 보안 요소에 의해 보호될 수 있더라도 안전하다고 여겨지거나 신뢰되지는 않는다. 또한, DDR 프로세서(114)와 서비스 프로세서 사이의 네트워크 데이터 경로는 안전하다거나 신뢰되는 것으로 여겨지지 않고 서비스 프로세서와 서비스 제어기(122) 사이의 데이터 경로 또한 마찬가지이다. 따라서, 일부 실시예들에서, DDR 프로세서(114)와 서비스 제어기(122)는 암호 기술을 사용하여 DDR 프로세서(114)로부터 서비스 제어기(122)에 이르는 보안 링크를 제공하게 된다. 일부 실시예들에서, DDR 프로세서(144)는 다양한 실시예들과 관련하여 본원에서 설명된 바와 같이 다양한 구현들과 기술들에 기초하여 안전하고 신뢰되는 것으로 여겨지게 된다. 일부 실시예들에서, 서비스 사용 모니터링과 네트워크 데이터 경로에서 DDR 프로세서(114)에 의해 수행되는 제어를 보안하기 위한, 그리고 DDR 프로세서(114)로부터 서비스 제어기(122)로 DDR 보고 채널을 보안하기 위한 다양한 기술들이 다양한 실시예와 관련하여 본원에서 설명된다.For example, the APU OS runtime environment is generally not considered trusted or trusted even though the service processor may be protected by the OS and / or other security elements in the system. Also, the network data path between the DDR processor 114 and the service processor is not considered safe or reliable and the data path between the service processor and the service controller 122 is also the same. Thus, in some embodiments, the DDR processor 114 and the service controller 122 use cryptographic techniques to provide a secure link from the DDR processor 114 to the service controller 122. In some embodiments, the DDR processor 144 is considered to be secure and trusted based on various implementations and techniques as described herein with respect to various embodiments. In some embodiments, a variety of services for monitoring service usage and for securing control performed by the DDR processor 114 in the network data path and for securing the DDR reporting channel from the DDR processor 114 to the service controller 122 Techniques are described herein in connection with various embodiments.

일부 실시예들에서, DDR 프로세서(114) 내의 보안 접속 제어기 기능은 아래에서 설명되는 바와 같이 채용되어 만일 DDR 흐름이 무단 조작되거나 차단된다면 DDR 프로세서(114)에 의해 관리되는 디바이스 네트워크 접속 데이터 경로 연결은 서비스 제어기(12)와의 DDR 프로세서(114) 통신을 관리하도록 요구되는 그러한 네트워크 목적지만으로 제한되는 것을 확실히 하게 된다. 일부 실시예들에서, DDR 프로세서(114) 내의 접속 제어기 기능은 서비스 제어기(122)로부터 피드백을 수신하여 접속을 제한하거나 또는 완전 접속을 허용하게 된다. 예를 들어, 제한된 접속 리스트(예를 들어, 호스트 이름의 리스트, IP 주소, 및/또는 접속 리스트를 위한 다른 식별자)는 본원에서 더 자세히 설명되는 바와 같이 DDR 프로세서 SEE 내에서 미리 통합관리되거나 또는 보안 경로를 통해 구성될 수 있다. In some embodiments, the secure connection controller functionality within the DDR processor 114 is employed as described below, so that if the DDR flow is tampered with or blocked, then the device network connection data path connection managed by the DDR processor 114 But only to those network destinations that are required to manage DDR processor 114 communications with the service controller 12. In some embodiments, the connection controller function in the DDR processor 114 receives feedback from the service controller 122 to limit the connection or allow full access. For example, a restricted contact list (e.g., a list of host names, IP addresses, and / or other identifiers for a contact list) may be pre-integrated within the DDR processor SEE, as described in more detail herein, Path < / RTI >

일부 실시예들에서, 보안, 믿을 수 있는, 그리고 신뢰되는 DDR 프로세서(114)로부터의 DDR 전송은 다음을 포함하는 DDR 보고 기술들에 의해 제공된다: (1) DDR 프로세서 펌웨어는 보안 실행 환경(SEE)에서 안전하게 로딩되고 실행된다; (2) DDR 프로세서에서 무선 모뎀 안테나 연결(예를 들어, 3G 또는 4G 네트워크 모뎀 안테나 연결) 사이의 데이터 경로는 사기 소프트웨어 또는 펌웨어가 DDR 프로세서 데이터 경로 처리를 피해가는 데이터 경로들을 형성하는 것을 방지하도록 보안된다; (3) DDR 프로세서(114)로부터 서비스 제어기(122)로 전송되는 DDR들은 그것들을 무단 조작되거나 또는 재실행되는 것으로부터 보호하는 방법들로 무결성이 확인되고; 그리고 (4) DDR 프로세서(114)와 고유의 DDR 보고 시퀀스 식별자들 및 인증 세션 킵 얼라이브 타이머들과 결합된 서비스 제어기(122) 사이의 인증 프로세스가 DDR 프로세서(114)와 서비스 제어기(122) 사이의 보안 연결을 유지하고 검증하기 위해 사용된다. 예를 들어, 만일 보안 세션 또는 DDR 프로세서(114)와 서비스 제어기(122) 사이의 DDR 기록들의 흐름이 중단되는 경우, 이후 DDR 프로세서(114)에서 보안 접속 제어 기능은 네트워크 목적지로의 모뎀 데이터 경로에 접속을 제한할 수 있어서 DDR 프로세서(114)와 서비스 제어기(122) 사이의 보안적으로 인증된 세션을 다시 설정할 필요가 있게 된다.In some embodiments, DDR transmission from a secure, reliable, and trusted DDR processor 114 is provided by DDR reporting techniques including: (1) DDR processor firmware is a secure execution environment (SEE ); ≪ / RTI > (2) The data path between the DDR processor and the radio modem antenna connection (eg, 3G or 4G network modem antenna connection) is secured by a security to prevent the fraud software or firmware from forming data paths that bypass the DDR processor data path processing do; (3) the DDRs transmitted from the DDR processor 114 to the service controller 122 are integrity checked by methods that protect them from unauthorized manipulation or replay; And (4) an authentication process between the DDR processor 114 and the service controller 122 associated with the unique DDR reporting sequence identifiers and the authentication session keep-alive timers is performed between the DDR processor 114 and the service controller 122 Used to maintain and verify secure connections. For example, if the flow of DDR records between the secure session or the DDR processor 114 and the service controller 122 is interrupted, then the secure connection control function at the DDR processor 114 may be directed to the modem data path to the network destination It may be necessary to reestablish a secure authenticated session between the DDR processor 114 and the service controller 122. [

일부 실시예들에서, DDR 프로세서(114)는 또한 다양한 실시예들과 관련하여 본원에서 유사하게 설명된 바와 같은 보안 네트워크 비지 상태 모니터링 기능(예를 들어, NBS 모니터링)을 포함한다. 일부 실시예들에서, NBS 모니터링은 다양한 네트워크과 모뎀 성능 파라미터들을 로그 및 보고하고 또한 네트워크 비지 상태(NBS)로서 본원에서 언급된 네트워크 혼잡의 척도를 계산하고 보고한다. 일부 실시예들에서, NBS는 주어진 측정 시간 간격에 대해 주어진 베이스 스테이션 섹터에서의 네트워크 혼잡의 수준을 나타내는 척도이다. 일부 실시예들에서, 이러한 정보 모두는 서비스 프로세서(112)를 통해 서비스 제어기(122)로 전송되는 DDR 메시지 보고들의 일부인 네트워크 비지 상태 보고(NBSR)에 포함된다.In some embodiments, the DDR processor 114 also includes a secure network busy status monitoring function (e.g., NBS monitoring) as similarly described herein in connection with various embodiments. In some embodiments, the NBS monitoring logs and reports various network and modem performance parameters and also calculates and reports a measure of network congestion referred to herein as network busy status (NBS). In some embodiments, the NBS is a measure of the level of network congestion in a given base station sector for a given measurement time interval. In some embodiments, all of this information is included in the network busy status report (NBSR), which is part of the DDR message reports sent to the service controller 122 via the service processor 112.

보안 이미지 프로그래밍, 보안 부팅, 보안 실행 및 보안 펌웨어 Secure Image Programming, Secure Boot, Secure Execution, and Security Firmware 업데이트의Of the update 개요 summary

일부 실시예들에서, DDR 프로세서 시스템은 어플리케이션 프로세서 유닛(APU) 또는 모뎀 칩셋 내에 전용 보안 실행 환경(SEE)을 포함한다. 일부 실시예들에서, SEE는 본원에서 설명된 바와 같은 DDR들의 보안의, 신뢰되는 발생을 가능하게 한다. 일부 실시예들에 따른 SEE의 기본적 기능성은 아래에서 설명된다.In some embodiments, the DDR processor system includes a dedicated security enforcement environment (SEE) within an application processor unit (APU) or modem chipset. In some embodiments, the SEE enables a trusted occurrence of security of the DDRs as described herein. The basic functionality of SEE according to some embodiments is described below.

일부 실시예들에서, SEE는 임의의 외부 프로그램, 버스 또는 디바이스 포트에 의해 접속될 수 없는 보안 메모리 실행 파티션(partition)이다. 일부 실시예들에서, 보안 메모리 실행 파티션은 코드 스페이스와 데이터 스페이스를 포함한다. 일부 실시예들에서, 보안 부팅 로더(secure boot loader)는 SEE 내에서 실행한다. 일부 실시예들에서, SEE에서 실행하도록 허용되는 다른 코드 이미지들만이, 서명이 보안 부팅 로더에 의해 검증된 디지털 사인된 이미지를 의미하는, 보안 이미지들이다. 일부 실시예들에서, 디바이스 제조 시에, 보안 부팅 로더는 온-칩(on-chip) SEE에서 비휘발성 메모리로 프로그램된다. 예를 들어, 보안 부팅 로더는 비휘발성 메모리로부터 보안 이미지를 꺼내어 그것을 신뢰되고 보안된 방법으로 SEE에 설치할 수 있다. 일부 실시예들에서, 보안 부팅 로더는 SEE로 이미지를 로딩할 수 있는 유일한 요소이다.In some embodiments, the SEE is a secure memory execution partition that can not be accessed by any external program, bus, or device port. In some embodiments, the secure memory execution partition includes a code space and a data space. In some embodiments, a secure boot loader runs within the SEE. In some embodiments, only the other code images allowed to run in the SEE are secure images, where the signature signifies a digitally signed image that has been verified by the secure boot loader. In some embodiments, at the time of device fabrication, the secure boot loader is programmed into non-volatile memory on an on-chip SEE. For example, a secure boot loader can retrieve a secure image from non-volatile memory and install it in SEE in a trusted and secure way. In some embodiments, the secure boot loader is the only element that can load images into the SEE.

일부 실시예들에서, DDR 프로세서(114)는 보안 이미지로서 구현된다. 보안 부팅 로더를 이용하여 SEE로의 DDR 프로세서 이미지의 설치가 아래에서 설명된다. 다른 보안 이미지들은 본원에서 설명된 바와 같은 실시예들의 관점에서 당업자들에게 명백한 바와 같이 유사하게 설치될 수 있다.In some embodiments, the DDR processor 114 is implemented as a secure image. The installation of a DDR processor image to SEE using a secure boot loader is described below. Other secure images may be similarly installed as will be apparent to those skilled in the art in view of embodiments as described herein.

일부 실시예들에서, DDR 프로세서 이미지는 디바이스 OEM에 의해 디지털적으로 서명된다. 예를 들어, 보안 부팅 로더는 부팅 로더 검증 키를 이용하여 서명을 검증할 수 있고 서명이 무효라면 이미지를 거부할 수 있다. 일부 실시예들에서, 부팅 로더 검증 키는 보안 부팅 로더 이미지 내에 내장된 2048-비트 RSA 퍼블릭 키이다.In some embodiments, the DDR processor image is digitally signed by the device OEM. For example, the secure boot loader can verify the signature using the boot loader verification key, and reject the image if the signature is invalid. In some embodiments, the boot loader verification key is a 2048-bit RSA public key embedded within the secure boot loader image.

일부 실시예들에서, 서명된 DDR 프로세서 이미지는 온-칩 비휘발성 메모리에 저장된다. 일부 실시예들에서, 서명된 DDR 프로세서 이미지는 오프-칩 비휘발성 메모리에 저장된다(예를 들어, 칩셋의 온-칩 저장 용량이 이러한 이미지를 저장하기에 너무 제한된 경우).In some embodiments, the signed DDR processor image is stored in an on-chip non-volatile memory. In some embodiments, the signed DDR processor image is stored in off-chip nonvolatile memory (e.g., if the on-chip storage capacity of the chipset is too limited to store such images).

도 2는 일부 실시예들에 따라 DDR 펌웨어를 부팅하고, 실행하고 업데이트하기 위한 프로세스를 나타낸다. 도 2에서 도시된 바와 같이, (210)에서, 디바이스가 부팅하면, 보안 부팅 로더는 비휘발성 메모리로부터 DDR 프로세서 이미지를 꺼내고, SEE에서 그것을 인스톨하고, 그리고 그것을 실행한다. 일부 실시예들에서, 인스톨 중, 그리고 실행 전에, 보안 부팅 로더는 부팅 로더 검증 키를 이용하여 DDR 프로세서 이미지의 디지털 서명을 검증한다. 만일 서명이 무효라면, 실행은 일어나지 않고 오류 메시지는 서비스 프로세서를 통해 서비스 제어기로 전송되고, 보안 부팅 로더는 다양한 실시예들과 관련하여 본원에서 설명된 바와 같이, 미리 저장된 이미지로 폴백(fall back)을 시도한다.Figure 2 illustrates a process for booting, executing, and updating DDR firmware in accordance with some embodiments. As shown in FIG. 2, at 210, when the device boots, the secure boot loader retrieves the DDR processor image from the non-volatile memory, installs it in the SEE, and executes it. In some embodiments, during installation and before execution, the secure boot loader verifies the digital signature of the DDR processor image using the boot loader verification key. If the signature is invalid, no action is taken and the error message is sent to the service controller via the service processor, and the secure boot loader may fall back to the pre-stored image, as described herein with respect to various embodiments. .

일부 실시예들에서, 비보안 OS 스택 요소들로부터 DDR 프로세서에 의해 모니터링되고 제어되는 모뎀(들)로의 데이터 경로는 SEE로 통과해야 하고 도 2의 (220)에서 도시된 바와 같이, DDR 프로세서에 적용 가능하게 만들어져야 한다. 일단 모뎀을 위한 전용의 OS 스택 데이터가 SEE 메모리로 전달되면, 보안 DDR 프로세서 프로그램은 다양한 실시예들과 관련하여 본원에서 설명된 바와 같은 모뎀을 위한 전용데이터를 분석하고 이러한 데이터 상에서 작동한다. 일부 실시예들에서, DDR 프로세서는 SEE로부터 모뎀 데이터 경로로 보안 데이터 인터페이스를 포함하여 SEE를 피할 수 있는(예를 들어, DDR 프로세서에 의한 검출 및/또는 모니터링을 피하는) 임의의 데이터 경로가 없도록 한다. 보안 실행 파티션 및 데이터 인터페이스 솔루션의 예들은 신뢰되는 API, ARM Trust Zone, Intel Smart&Secure 또는, 예컨대 특정 칩셋들을 위한 칩셋 공급자로부터 맞춤형 솔루션 또는 소유권이 있는 특정한 솔루션을 포함한다.In some embodiments, the data path from the non-secure OS stack elements to the modem (s) monitored and controlled by the DDR processor must pass through the SEE and is applicable to the DDR processor, as shown in FIG. 2 (220) . Once the dedicated OS stack data for the modem is delivered to the SEE memory, the secure DDR processor program analyzes and manipulates dedicated data for the modem as described herein with respect to various embodiments. In some embodiments, the DDR processor includes a secure data interface from the SEE to the modem data path to ensure that there is no data path that can avoid SEE (e.g., avoid detection and / or monitoring by the DDR processor) . Examples of secure execution partitions and data interface solutions include trusted APIs, ARM Trust Zone, Intel Smart & Secure or a custom solution or proprietary solution from, for example, a chipset provider for specific chipsets.

일부 실시예들에서, 통신 채널(예를 들어, DDR 메일 박스)은, 도 2에서의 (230)에서 나타낸 바와 같이, SEE에서 DDR 프로세서 프로그램 실행과 비보안 OS 환경(예를 들어, 어플리케이션 스페이스 또는 사용자 스페이스)에서 실행하는 서비스 프로세서 어플리케이션 프로그램 사이의 통신을 제공한다. DDR 메일 박스를 제공하기 위한 예시 기술들은 DMA 채널, APU와 MPU 사이의 모뎀 버스 드라이버(예를 들어, USB 인터페이스) 내의 논리 채널(예를 들어, 종점), 및 APU와 MPU 사이의 이미 빠져나간 논리 채널의 꼭대기에서의 피기백(piggyback) 채널을 이용한 공유 메모리를 포함한다.In some embodiments, a communication channel (e.g., a DDR mailbox) may include a DDR processor program execution in the SEE and a non-secure OS environment (e. G., An application space or user Space) of the service processor application program. Exemplary techniques for providing a DDR mailbox include a DMA channel, a logical channel (e.g., an endpoint) within the modem bus driver (e.g., USB interface) between the APU and the MPU, And a shared memory using a piggyback channel at the top of the channel.

일부 실시예들에서, DDR 프로세서 펌웨어 이미지는, 도 2에서의 (240)에서 나타낸 바와 같이, 업데이트된다. 일부 실시예들에서, DDR 프로세서 펌웨어 이미지는 디바이스 OEM에 제공된 칩셋 비휘발성 메모리 펌웨어 이미지의 OTA(over the air) 및 OTN(over the network) 업데이트(들)를 위한 칩셋 공급자에 의해 지원되는 OEM 프로세스를 이용하여 업데이트된다. 일부 실시예들에서, DDR 프로세서는 파워 세이브 상태로부터 빠져 나올 때, 초기 전력 상승 사이클 중 및/또는 다운로드가 보안 방법으로 수행될 수 있는 임의의 다른 시간들에서 보안 부팅 로더에 의해 로딩되는 다른 칩셋 보안 펌웨어 드라이버들과 함께 저장된다. 일부 실시예들에서, DDR 프로세서는, 현재 작동 중에 있는 한 이미지와 새로 다운로드되는 이미지인(예를 들어, 각 이미지는, 0.5MB 또는 다른 크기 한계와 같은, 특정 최대 크기일 수 있다), 적어도 두 이미지들을 수용하기에 충분한 비휘발성 메모리 스페이스를 요구한다. 일부 실시예들에서, 보안 부팅 로더는 일단 다운로드가 완료되면 새로운 이미지를 이용하기 위한 펌웨어 이미지 스위치를 포함한다. 예를 들어, 이미지 스위치 기능은 폴백 시스템을 포함할 수 있어서 만일 새로운 이미지가 유효하지 않은 서명을 가지거나 또는 만일 새로운 이미지가 각 이미지 내에서 포함된 수정 횟수에 의해 표시되는 바로서 현재 이미지 보다 더 오래된 것이라면 현재 이미지로 전환시키게 된다. 현재 이미지는 적어도 새로운 이미지가 보안 부팅 로더에 의해 수용될 때까지 유지될 수 있다.In some embodiments, the DDR processor firmware image is updated, as indicated at 240 in FIG. In some embodiments, the DDR processor firmware image includes an OEM process supported by the chipset provider for OTA (over the air) and over the network update (s) of the chipset nonvolatile memory firmware image provided to the device OEM . In some embodiments, the DDR processor may be configured to perform the following functions when exiting the power save state: during an initial power-up cycle and / or at any other times when the download can be performed in a secure manner, It is stored with firmware drivers. In some embodiments, a DDR processor may be configured to store one image that is currently in operation and a newly downloaded image (e.g., each image may be a certain maximum size, such as 0.5 MB or other size limits) Volatile memory space sufficient to accommodate images. In some embodiments, the secure boot loader includes a firmware image switch for using the new image once the download is complete. For example, the image switch function may include a fallback system so that if the new image has an invalid signature or if the new image is older than the current image as indicated by the number of modifications contained within each image If it is, it will switch to the current image. The current image may be maintained until at least the new image is accepted by the secure boot loader.

DDRDDR 프로세서 구현  Processor implementation 실시예의Example 개요 summary

DDR 프로세서는 다양한 실시예들에 따라 본원에서 설명된 바와 같이, APU 구현, MPU 구현, 및 APU/MPU 결합 구현에서 포함되어 있는 보안 내장된 DDR 펌웨어(예를 들어, AWSP 칩셋에서)를 위한 서로 다른 구성들을 이용하여 제공될 수 있다. 당업자들은 보안 내장된 DDR 펌웨어를 제공하기 위한 유사하고 다양한 다른 보안 파티션 구성들이 본원에서 설명된 다양한 실시예들의 관점에서 제공될 수 있음을 또한 인식할 것이다.The DDR processor may be implemented as a separate processor for the secure embedded DDR firmware (e.g., in the AWSP chipset) included in the APU implementation, the MPU implementation, and the APU / MPU combined implementation, as described herein in accordance with various embodiments. May be provided using configurations. Those skilled in the art will also appreciate that similar and various other secure partition configurations for providing secure embedded DDR firmware may be provided in view of the various embodiments described herein.

일부 실시예들에서, DDR 프로세서는, DDR 프로세서(114)와 모뎀 버스 드라이버 및 물리적 버스(142)가 도 1에서 나타낸 바와 같이 데이터 경로 보안 구역(140)에서 구현되는 디바이스 아키텍쳐(101)에 나타낸 APU 구현과 같은, APU 칩셋 SEE 및 비휘발성 메모리로의 통합을 이용하여 제공된다. DDR 프로세서는 모뎀 드라이버 데이터 경로 처리 기능 바로 아래 그리고 모뎀 버스 드라이버 데이터 경로 처리 기능(예를 들어, 일반적으로 USB 드라이버, SDIO 드라이버, 또는 유사한 버스 드라이버 기능) 바로 위의 2G, 3G, 또는 4G 모뎀 데이터 경로 상에서 안전하게 구현된다. 예를 들어, 이러한 접근법을 이용하여, 모뎀 버스 드라이버를 통한 그리고 2G, 3G, 또는 4G 네트워크 모뎀을 통한 DDR 프로세서 아래의 전체 데이터 경로는 DDR 프로세서 데이터 경로 처리를 피하는 데이터 경로를 방지하도록 보안될 수 있다.In some embodiments, the DDR processor is coupled to a DDR processor 114 and a modem bus driver and a physical bus 142, such as the APUs shown in the device architecture 101, implemented in the data path secure area 140, Lt; / RTI > chipset SEE and non-volatile memory, such as the implementation of the APU chipset. The DDR processor is connected directly to the 2G, 3G, or 4G modem data path directly below the modem driver data path processing function and directly above the modem bus driver data path processing function (for example, USB drivers, SDIO drivers, or similar bus driver functions in general) Lt; / RTI > For example, using this approach, the entire data path through the modem bus driver and under a DDR processor via a 2G, 3G, or 4G network modem can be secured to prevent data paths that avoid DDR processor data path processing .

일부 실시예들에서, DDR 프로세서는, DDR 프로세서(114)와 모뎀 데이터 경로 및 신호 처리(154)가 도 1에서 나타낸 바와 같이 데이터 경로 보안 구역(143)에서 구현되는 디바이스 아키텍쳐(102)에 나타낸 MPU 구현과 같은, 2G, 3G, 또는 4G MPU 칩셋 SEE와 비휘발성 메모리로의 통합을 이용하여 제공된다. DDR 프로세서는 모뎀 버스 드라이버 및 논리 채널 인터페이스 바로 아래의 2G, 3G, 또는 4G 모뎀 데이터 경로 상에서 안전하게 구현된다. 예를 들어, 이러한 접근법을 이용하여, 2G, 3G, 또는 4G 네트워크까지의 DDR 프로세서 아래의 전체 데이터 경로는 DDR 프로세서 데이터 경로 처리를 피하는 데이터 경로들을 방지하도록 보안된다.In some embodiments, the DDR processor is coupled to the DDR processor 114 and to the MPUs 102 shown in the device architecture 102 in which the modem data path and signal processing 154 are implemented in the data path secure area 143, Implementation using 2G, 3G, or 4G MPU chipset SEE and integration into non-volatile memory. The DDR processor is implemented securely on the 2G, 3G, or 4G modem data path directly below the modem bus driver and logical channel interface. For example, using this approach, the entire data path under a DDR processor to a 2G, 3G, or 4G network is secured to prevent data paths that avoid DDR processor data path processing.

일부 실시예들에서, DDR 프로세서는, DDR 프로세서(114)가 데이터 경로 보안 구역(145)에서 구현되고, 데이터 경로 보안 검증기(152)와 모뎀 데이터 경로 및 신호 처리(154)가 도 1에서 나타낸 바와 같이 데이터 경로 보안 구역(147)에서 구현되는 디바이스 아키텍쳐(103)에 나타낸 APU 및 MPU 구현과 같은, APU 칩셋 SEE와 비휘발성 메모리로의 통합을 이용하여 제공된다. DDR 프로세서는 OS 스택 아래 및 모뎀 버스 드라이버 위 어딘가에서 2G, 3G, 또는 4G 모뎀 데이터 경로 상에서 안전하게 구현된다. 예를 들어, 이러한 접근법을 이용하여, 모뎀 버스 드라이버를 통해 그리고 2G, 3G, 또는 4G 네트워크 모뎀을 통해 DDR 프로세서 아래의 전체 데이터 경로를 보안하기 보다는, DDR 프로세서와 모뎀 무선 네트워크 접속 연결 사이의 데이터 경로가 DDR 프로세서와 데이터 경로 보안 검증기(DPSV)(152) 기능 사이로 스트리밍되는 데이터를 무결성 검증함으로써 보안된다. 적절하게 설명되는 그리고 무결성 검증되는 임의의 데이터 경로 정보는 무선 네트워크 연결로 또는 연결로부터 전달되지 않는다. 예를 들어, 이러한 접근법은 DDR 프로세서 그 자체 외에 APU 펌웨어, 하드웨어, 및 데이터 경로 요소들을 보안할 필요성을 없앤다.In some embodiments, the DDR processor may be implemented in a DDR processor 114 such that the DDR processor 114 is implemented in the data path security zone 145 and the data path security verifier 152 and modem data path and signal processing 154 are implemented as shown in FIG. As well as the integration into the APU chipset SEE and non-volatile memory, such as the APU and MPU implementations shown in the device architecture 103 implemented in the data path security zone 147. The DDR processor is securely implemented on the 2G, 3G, or 4G modem data path below the OS stack and somewhere above the modem bus driver. For example, using this approach, rather than securing the entire data path under the DDR processor through the modem bus driver and through a 2G, 3G, or 4G network modem, the data path between the DDR processor and the modem wireless network connection connection Is secured by verifying the integrity of the data streamed between the DDR processor and the Data Path Security Verifier (DPSV) 152 functions. Any data path information that is properly described and verified is not communicated to or from the wireless network connection. For example, this approach eliminates the need to secure APU firmware, hardware, and data path elements in addition to the DDR processor itself.

어플리케이션application 프로세서 상에서의On the processor 내장된  Built-in DDRDDR 프로세서 구현 Processor implementation

일부 실시예들에서, 어플리케이션 프로세서 유닛(APU)(예를 들어, 스마트폰 APU 또는 기타 무선 통신 디바이스 APU) 내에 DDR 프로세서를 내장하여 서비스 사용 모니터링 및 다중 무선 모뎀들에 대한 접속 제어를 제공하는 무선 네트워크 데이터 경로(예를 들어, 2G/3G/4G 무선 네트워크 데이터 경로 또는 다른 디바이스 I/O 연결 또는 포트)에서 단일 보안 DDR 프로세서 위치를 제공한다. 또한, APU 구현 접근법은 WAN 모뎀 부품들 또는 기술을 반드시 가질 필요가 없는 APU 칩셋 공급자들이 본원에서 설명되는 다양한 AWSP 기술들을 따르는 솔루션들을 구현하도록 할 수 있다. 또한, APU 구현 접근법은 일반적으로 본원에서 설명되는 바와 같은(예를 들어, 임의의 MPU 구현들에서 제공하도록 더 복잡하게 될 수 있는) APU 구현들을 위한 OTA 및 OTN 펌웨어 업데이트들을 일반적으로 보다 더 쉽게 허용한다. 많은 개시된 실시예들은 DDR이 하나 이상의 광역망 네트워크들, 연결들 또는 모뎀들을 통한 통신 흐름에 작용하는 DDR APU 구현들을 기술한다. 당업자들에 의해 인식되는 바와 같이, 보안 디바이스 데이터 기록 처리 시스템을 위한 APU 실시예들은 정확히 하나 이상의 추가적인 I/O 네트워크들, 연결들, 포트들, 또는 모뎀들(예를 들어, WiFi 네트워크, 연결, 포트 또는 모뎀; USB 네트워크, 연결, 포트, 또는 모뎀; 이더넷 네트워크, 연결, 포트, 또는 모뎀; 파이어와이어 네트워크, 연결, 포트 또는 모뎀; 블루투스 네트워크, 연결, 포트, 또는 모뎀; 근거리 통신(NFC) 네트워크, 연결, 포트, 또는 모뎀; 또는 다른 I/O 연결, 포트, 또는 모뎀) 상에서 진행되는 통신들에 작용할 수도 있다.In some embodiments, a DDR processor may be embedded within an application processor unit (APU) (e.g., a smartphone APU or other wireless communication device APU) to provide service access monitoring and access control to multiple wireless modems. Provides a single secure DDR processor location on the data path (e.g., a 2G / 3G / 4G wireless network data path or other device I / O connection or port). In addition, the APU implementation approach may allow APU chipset vendors that do not necessarily have WAN modem components or technologies to implement solutions that follow various AWSP technologies as described herein. In addition, the APU implementation approach generally allows OTA and OTN firmware updates for APU implementations (e.g., which may be more complex to provide in any MPU implementations) as generally described herein do. Many disclosed embodiments describe DDR APU implementations in which a DDR acts on a communication flow through one or more wide area networks, connections, or modems. As will be appreciated by those skilled in the art, APU embodiments for a secure device data record processing system may be implemented using one or more additional I / O networks, connections, ports, or modems (e.g., a WiFi network, A Bluetooth network, a connection, a port, or a modem, an Ethernet network, a connection, a port or a modem, a FireWire network, a connection, a port or a modem, , Connections, ports, or modems; or other I / O connections, ports, or modems).

도 1에서 나타낸 바와 같은 디바이스 아키텍쳐(101)를 참조하면, DDR 프로세서는 위에서 설명된 바와 같이 APU 칩셋 SEE와 비휘발성 메모리에 내장된다. DDR 프로세서 SEE와 함께, 데이터 경로 보안 구역(140)으로 나타낸 보안 데이터 경로 환경은 DDR 프로세서(114) 및 모뎀 버스 드라이버 및 물리적 버스(142)를 포함한다. 예를 들어, 모뎀까지의 물리적 버스 및 모뎀 버스 드라이버가 DDR 프로세서(114)를 피해 가도록 시도하는 사기성 소프트웨어 또는 펌웨어에 대해 보안된다면(예를 들어, 그렇지 않으면 접속 불가능하다면), 모뎀 그 자체(예를 들어, 3G 모뎀 또는 4G 모뎀(150))는 보안될 필요 없다. 특히, DDR 프로세서(114)는 모뎀 드라이버 데이터 경로 처리 기능 바로 아래에 그리고 모뎀 버스 드라이버 데이터 경로 처리 기능(예를 들어, 일반적으로 USB 드라이버, SDIO 드라이버 또는 유사한 버스 드라이버 기능) 바로 위의 2G, 3G, 또는 4G 모뎀 데이터 경로에서 안전하게 구현된다. 일부 실시예들에서, 모뎀 버스 드라이버 및 2G, 3G, 또는 4G 모뎀을 통한 DDR 프로세서(114) 아래의 전체 데이터 경로는 DDR 프로세서 데이터 경로 처리를 피해 가는 데이터 경로들을 방지하도록 보안된다. 일부 실시예들에서, 디바이스 네트워크 연결 상의 디바이스로부터 또는 데이터 경로 처리 기능을 통한 I/O 포트(예를 들어, 일반적으로 USB 드라이버, SDIO 드라이버, 이더넷 드라이버, 파이어와이어 드라이버, WiFi 드라이버, 블루투스 드라이버, 또는 근거리 통신 드라이버)로부터 전달되는 모든 정보가 DDR 프로세서 블록을 통해 통과함에 따라 관찰되거나(그리고 정책을 적용하도록 처리될 수 있음), 분류되거나 또는 보고된다. 따라서, 일부 실시예들에서, 모뎀 버스 드라이버는 DDR SEE에서 또는 그 자체의 SEE에서 보안되거나, 또는 모뎀 버스 드라이버 코드와 데이터 경로는 DDR 프로세서(114)를 피해 갈 수 있는 APU의 소프트웨어 또는 펌웨어로 접속이 불가능해야한다.Referring to the device architecture 101 as shown in FIG. 1, the DDR processor is embedded in the APU chipset SEE and non-volatile memory as described above. In conjunction with the DDR processor SEE, the secure data path environment represented by data path security section 140 includes a DDR processor 114 and a modem bus driver and physical bus 142. For example, if the physical bus to the modem and the modem bus driver are secured (e.g., if not otherwise accessible) to fraudulent software or firmware attempting to bypass the DDR processor 114, the modem itself For example, a 3G modem or 4G modem 150) need not be secured. In particular, the DDR processor 114 is located directly below the modem driver data path processing function and above the 2G, 3G, or even above the modem bus driver data path processing functions (e.g., USB drivers, SDIO drivers or similar bus driver functions in general) Or 4G modem data path. In some embodiments, the entire data path under the modem bus driver and the DDR processor 114 via the 2G, 3G, or 4G modem is secured to prevent data paths that bypass the DDR processor data path processing. In some embodiments, an I / O port (e.g., a USB driver, an SDIO driver, an Ethernet driver, a FireWire driver, a WiFi driver, a Bluetooth driver, (And may be processed to enforce the policy), as classified as being passed through the DDR processor block, or reported. Thus, in some embodiments, the modem bus driver may be secured in the DDR SEE or in its own SEE, or the modem bus driver code and data path may be accessed by software or firmware of the APU that may bypass the DDR processor 114 This should not be possible.

도 3은 일부 실시예들에 따라 APU 구현에서 보안 내장된 DDR 프로세서를 위한 아키텍쳐를 나타낸다. 특히, 도 3은 일부 실시예에 따라 APU 기반 솔루션 내에서의 주요 기능 요소들을 나타내고, 여기서 DDR 프로세서(114)는 다른 APU 보안 프로그램들과 함께 APU의 SEE에 있고, 서비스 프로세서 어플리케이션 프로그램(112)으로의 DDR 프로세서의 통신 채널은 공유 메일박스(예를 들어, 공유 메모리)를 경유한다. 또한, 도 3은 다운로드가 완료된 것으로 여겨지기 전에 모든 보안 코드들이 검증된 제1 디지털 서명임을 보증하도록 (예를 들어, 소프트웨어 다운로드를 위해) 보안 부팅 코드가 존재하는 비휘발성 메모리에 대한 인터페이스를 보여준다. 일부 실시예들에서, 데이터 경로는 분리된 인터페이스이며, 여기서 데이터 프레임들이 DDR 프로세서를 위한 보안 환경으로 전송되어 접속되고 제한된 또는 제한되지 않는 네트워크 접속의 제어 외에도 DDR 사용 척도를 실행하게 된다. Figure 3 illustrates an architecture for a secure embedded DDR processor in an APU implementation in accordance with some embodiments. 3 illustrates, in accordance with some embodiments, key functional elements within an APU-based solution, where the DDR processor 114 is in the SEE of the APU with other APU security programs, and the service processor application program 112 Lt; / RTI > of the DDR processor is via a shared mailbox (e. G., Shared memory). Figure 3 also shows the interface to a non-volatile memory in which there is a secure boot code (e.g., for software download) to ensure that all security codes are the verified first digital signature before the download is considered complete. In some embodiments, the data path is a separate interface, where the data frames are sent to the secure environment for the DDR processor to perform a DDR usage metric, in addition to control of network connections that are connected and limited or unrestricted.

도 3을 참조하면, APU는 APU 칩셋 어플리케이션 프로그램(302), APU 칩셋 커널 프로그램(304), 및 APU 보안 실행 환경(306)으로서 나타낸 보안 실행 환경(SEE)으로 논리적으로 분할될 수 있다. APU 보안 실행 환경(306)은 (예를 들어, 본원에서 설명된 바와 같은, 보안 통신 기술들을 이용하여) 네트워크 요소/기능(예를 들어, 서비스 제어기(122) 및/또는 다른 요소(들)/기능(들))과 통신한다. 일부 실시예들에서, 보안 프로그램 비휘발성(NV) 메모리(340)는 OS/OEM 보안 디바이스 시스템 프로그램 파일들(342), 보안 DDR 프로세서 프로그램 파일들(346), 및 APU 보안 디바이스 시스템 프로그램 파일들(348)을 포함하는데, 이들은 본원에서 설명된 바와 같이 코드 실행이 일어날 수 있기 전에 SEE 메모리로 다운로드될 APU 보안 실행 환경(SEE)(306)에 있는 보안 부팅 로더에 의해 꺼내질 수 있다.3, an APU may be logically partitioned into an APU chipset application program 302, an APU chipset kernel program 304, and a Security Execution Environment (SEE) represented as an APU security enforcement environment 306. The APU security enforcement environment 306 may include a network element / function (e.g., service controller 122 and / or other element (s) / service (e.g., Function (s)). In some embodiments, the secure program nonvolatile (NV) memory 340 includes OS / OEM secure device system program files 342, secure DDR processor program files 346, and APU secure device system program files 348, which may be retrieved by a secure boot loader in the APU Security Execution Environment (SEE) 306 to be downloaded into SEE memory before code execution can occur as described herein.

APU 칩셋 어플리케이션 프로그램(302)은 사용자 어플리케이션 프로그램들(130), (예를 들어, 본원에서 설명된 바와 같은, 커널에서 구현될 필요 없는 다양한 서비스 프로세서 기능들을 실시하기 위한) 서비스 프로세서 어플리케이션 프로그램(112), 및 OEM 어플리케이션 프로그램들(310)을 포함한다. APU 칩셋 커널 프로그램들(304)은 OEM 커널 프로그램(312), (예를 들어 본원에서 설명된 바와 같이 커널에서 바람직하게 구현되는 다양한 서비스 프로세서 기능들을 실시하기 위한) 서비스 프로세서 커널 프로그램(113), APU 시스템 커널 프로그램(314), 및 APU 디바이스 드라이버들와 기타 BSP 커널 프로그램들(316)을 포함한다. 또한 나타낸 바와 같이, OS(134)는 당업자에게 명백한 바와 같이 사용자/어플리케이션 스페이스 및 커널 스페이스 구현 부분들을 포함한다. 네트워크 접속(예를 들어, 3G 또는 4G 무선 네트워크 접속)이 나타낸 바와 같이 커널 스페이스(304)에 있는 APU 네트워크 스택 디바이스 드라이버(318)를 통해 통신된다.The APU chipset application program 302 includes user application programs 130, a service processor application program 112 (e.g., for implementing various service processor functions that are not required to be implemented in the kernel, as described herein) , And OEM application programs 310. The APU chipset kernel programs 304 include an OEM kernel program 312, a service processor kernel program 113 (e.g., for implementing various service processor functions that are preferably implemented in the kernel as described herein), an APU A system kernel program 314, and APU device drivers and other BSP kernel programs 316. As also shown, OS 134 includes user / application space and kernel space implementation portions, as will be apparent to those skilled in the art. Is communicated via the APU network stack device driver 318 in the kernel space 304 as indicated by the network connection (e.g., 3G or 4G wireless network connection).

APU SEE(306)는 보안 DDR 프로세서 프로그램들(326), APU 보안 디바이스 시스템 프로그램들(예를 들어, 모뎀 버스 드라이버, 모뎀 드라이버)(328), 및 OS/OEM 보안 디바이스 시스템 프로그램들(330)을 실행/저장하기 위한 보안 실행 메모리(322)를 포함한다. 또한 APU SEE(306)는 본원에서 설명된 바와 같이 보안 DDR 프로세서 프로그램들(326) 및/또는 보안 실행 메모리(322) 내의 다른 보안 프로그램들을 검증하기 위한 프로그램 서명 검증기(332)를 포함한다. APU SEE(306)는 또한 나타낸 바와 같은 NV 메모리 I/O(334)를 포함한다. APU SEE(306)는 또한 본원에서 설명된 바와 같은 보안 실행 부팅 프로세스들과 보안 업데이트 프로세스들을 구현하기 위한 보안 실행 부팅 로더 및 업데이터(예를 들어, 보안 온-보드 NVRAM)(336)를 포함한다.The APU SEE 306 may include security DDR processor programs 326, APU security device system programs (e.g., modem bus driver, modem driver) 328, and OS / And a security execution memory 322 for execution / storage. The APU SEE 306 also includes a program signature verifier 332 for verifying secure DDR processor programs 326 and / or other security programs in the secure execution memory 322 as described herein. The APU SEE 306 also includes an NV memory I / O 334 as shown. APU SEE 306 also includes a secure execution boot loader and updater (e.g., a secure on-board NVRAM) 336 for implementing secure execution boot processes and security update processes as described herein.

일부 실시예들에서, 임의의 사용자 또는 커널 모드 어플리케이션들 또는 서비스들을 위한 네트워크 데이터 경로(324)는 APU 네트워킹 스택 디바이스 드라이버(318)로부터 전달되고 보안 DDR 프로세서 프로그램들(326)을 이용하여 모니터링된다.In some embodiments, the network data path 324 for any user or kernel mode applications or services is delivered from the APU networking stack device driver 318 and monitored using secure DDR processor programs 326. [

본원에서 더 설명된 바와 같이, 보안 DDR 프로세서 프로그램들(326)은 DDR 메일박스 데이터(320)를 통해 나타내어진 바와 같은 DDR 메일 박스 기능 및 통신 채널을 이용하여 서비스 프로세서 어플리케이션 프로그램(112)과 통신한다. 일부 실시예들에서, DDR 메일 박스 기능은 본원에서 설명된 바와 같은 다양한 기술들을 이용하여 보안 통신 채널을 제공한다. 일부 실시예들에서, DDR 메일 박스 기능은 서비스 프로세서 어플리케이션 프로그램(112)에 대한 모니터링된 네트워크 서비스 사용을 위해 보안 DDR 프로세서 프로그램(326)을 이용하여 생성되는 보안 DDR들을 전달하도록 사용된다. 일부 실시예들에서, 서비스 프로세서 어플리케이션 프로그램(112)은 서비스 제어기(122)와 같은 네트워크 요소/기능에 보안 DDR들을 전달한다. 일부 실시예들에서, 서비스 프로세서 어플리케이션 프로그램(112)은 서비스 프로세서 보고를 가지는 보안 DDR들(예를 들어, 본원에서 설명된 바와 같이, 어플리케이션 기반 모니터링/7계층 또는 어플리케이션 계층 기반 모니터링과 같은, 서비스 프로세서 어플리케이션 프로그램(112) 및/또는 서비스 프로세서 커널 프로그램들(113)에 기초한 모니터링된 서비스 사용에 기초하는 디바이스 기반 마이크로-CDR/uCDR를 포함함)을 서비스 제어기(122)와 같은 네트워크 요소/기능으로 전달한다. 일부 실시예들에서, 서비스 프로세서 어플리케이션 프로그램(112)은 (예를 들어, 서비스 제어기 또는 다른 네트워크 요소/기능들에 의해 두 개의 DAS 지원형 서비스 사용 척도들에 기초하여 디바이스 지원형 서비스 사용 모니터링의 조정을 촉진시키는) 중첩되고/되거나 공통된 시간 기간들/간격들에 대한 서비스 프로세서 보고를 가지는 보안 DDR들을 전달한다. As further described herein, the secure DDR processor programs 326 communicate with the service processor application program 112 using a DDR mailbox function and a communication channel as indicated via the DDR mailbox data 320 . In some embodiments, the DDR Mailbox function provides a secure communication channel using various techniques as described herein. In some embodiments, the DDR Mailbox function is used to deliver secure DDRs generated using the secure DDR processor program 326 for use with the monitored network service for the service processor application program 112. In some embodiments, the service processor application program 112 delivers secure DDRs to network elements / functions such as the service controller 122. In some embodiments, the service processor application program 112 may be a secure DDRs with service processor reporting (e.g., application-based monitoring / 7-tier or application layer based monitoring, as described herein) (Including device-based micro-CDR / uCDR based on the use of monitored services based on application program 112 and / or service processor kernel programs 113) to a network element / function such as service controller 122 do. In some embodiments, the service processor application program 112 may be configured to monitor (e.g., adjust) the device-assisted service usage monitoring based on two DAS-enabled service usage metrics by a service controller or other network element / And / or security DDRs with service processor reports for overlapping and / or common time periods / intervals.

도 4는 일부 실시예들에 따라 모뎀 버스 드라이버와 함께 APU 구현에서 보안 내장된 DDR 프로세서를 위한 다른 아키텍쳐를 나타낸다. 특히, 도 4는 DDR 프로세서(114)가 어떻게 모뎀 버스 드라이버(428)(예를 들어, 2G, 3G 또는 4G 모뎀 버스 드라이버)와 함께 APU 보안 작동 환경에서 구현될 수 있는지를 더 자세히 나타낸다. DDR 프로세서(114)는 모뎀 버스 드라이버(428)(예를 들어, USB 드라이버/제어기)로 및 그로부터 전송되는 IP 패킷을 모니터링하는데, 이는 나타낸 바와 같이 2G/3G/4G 모뎀(440)을 이용한 무선 접속을 위한 모뎀 버스(432)로의 보안 데이터 경로(430)를 통한 무선 네트워크 접속을 제공한다. 일부 실시예들에서, DDR 프로세서(114)는 디바이스 I/O 드라이버(예를 들어, 일반적으로 USB 드라이버, 2G/3G/4G 모뎀 드라이버, SDIO 드라이버, 이더넷 드라이버, 파이어와이어 드라이버, WiFi 드라이버, 블루투스 드라이버 또는 근거리 통신 드라이버)로 및 그로부터 전송되는 IP 패킷을 모니터링하고, 이는 보안 DDR 데이터 경로 처리 또는 모니터링으로 데이터 경로를 통한 디바이스 I/O 접속을 제공한다.Figure 4 illustrates another architecture for a secure embedded DDR processor in an APU implementation with a modem bus driver in accordance with some embodiments. In particular, FIG. 4 illustrates in more detail how the DDR processor 114 may be implemented in an APU security operating environment with a modem bus driver 428 (e.g., a 2G, 3G or 4G modem bus driver). The DDR processor 114 monitors the IP packets sent to and from the modem bus driver 428 (e.g., a USB driver / controller), which may include a wireless connection using a 2G / 3G / 4G modem 440 Lt; RTI ID = 0.0 > 430 < / RTI > In some embodiments, the DDR processor 114 may include a device I / O driver (e.g., a USB driver, a 2G / 3G / 4G modem driver, an SDIO driver, an Ethernet driver, a FireWire driver, a WiFi driver, Or near-field communication driver) and provides IP I / O connectivity through the data path to secure DDR data path processing or monitoring.

위에서 유사하게 설명한 바와 같이, 보안 실행 부팅 로더 및 업데이터(336)는 비휘발성(NV) 메모리(334)로부터, DDR 보안 실행 메모리(420)로서 나타낸, SEE 내의 실행 메모리로 DDR 프로세서(114)와 모뎀 버스 드라이버 이미지들을 로딩하여 (예를 들어, 보안 프로그램 서명 검증기(332)를 이용하여 코드 서명 검증 후에)실행하게 된다. DDR 프로세서(114) 및 모뎀 버스 드라이버 이미지와 다른 보안 이미지들은 모두 실행되기 전에 서명 검증될 보안 부팅 로드의 일부이다.The secure execution boot loader and updater 336 may read from the nonvolatile (NV) memory 334 the DDR processor 114 and the modem 338 as execution memory in the SEE, represented as the DDR secure execution memory 420, Bus driver images (e.g., after code signature verification using secure program signature verifier 332). The DDR processor 114 and the modem bus driver image and other secure images are all part of the secure bootload to be signed before being executed.

나타낸 바와 같이, DDR 프로세서는 2G, 3G 또는 4G 모뎀 데이터 경로에 따라 있고, OS 스택과 2G, 3G 또는 4G 네트워크 사이의 모든 트래픽은 DDR 프로세서(114)에 의해 모니터링된다. DDR 프로세서 OS 스택 데이터 경로 인터페이스(424)는 커널 내의 DDR 보안 실행 환경(SEE)(420)과 비보안 OS 스택 사이를 연결하도록 제공된다. 또한, DDR 프로세서 모뎀 데이터 경로 인터페이스(426)는 DDR 프로세서(114)를 모뎀 버스 드라이버(428)에 의해 공급되는 모뎀 데이터 경로와 유사하게 연결하도록 제공된다. 일부 실시예들에서, 데이터 경로 선상에서 제공되고 단순히 클론/모니터링/드롭 기능이 아닌, DDR 프로세서(114)는 접속 제어기 기능을 또한 구현하여, 본원에서 설명되는 바와 같이, 예를 들어 DDR 보고들이 무단 조작되거나 서비스 제어기(122)에 도달하는 것으로부터 차단되는 경우 또는 DDR 프로세서(114)가 무단 조작되거나 서비스 프로세서(112)가 무단 조작되는 경우에, 네트워크 접속의 무결성을 유지하게 된다.As shown, the DDR processor is on a 2G, 3G, or 4G modem data path, and all traffic between the OS stack and the 2G, 3G, or 4G network is monitored by the DDR processor 114. The DDR processor OS stack data path interface 424 is provided to connect between the DDR Secure Execution Environment (SEE) 420 in the kernel and the non-secure OS stack. The DDR processor modem data path interface 426 is also provided to couple the DDR processor 114 similarly to the modem data path provided by the modem bus driver 428. In some embodiments, the DDR processor 114, which is provided on the data path line and is not merely a clone / monitoring / drop function, may also implement the access controller function, for example, as described herein, The integrity of the network connection is maintained when the DDR processor 114 is manipulated or blocked from reaching the service controller 122 or when the service processor 112 is tampered with.

또한 나타낸 바와 같이, DDR 프로세서 메일박스 인터페이스(422)는 보안 DDR SEE(420) 및 비보안 서비스 프로세서 어플리케이션(112) 사이의 DDR 메일박스 데이터(320)을 통과시키기 위한 메일박스 기능을 구현하도록 제공된다. 본원에서 설명된 다양한 실시예들의 관점에서 당업자에게 명백한 바와 같이, DDR 메일박스 기능은 다양한 방법으로 구현될 수 있다.As also shown, the DDR processor mailbox interface 422 is provided to implement a mailbox function for passing DDR mailbox data 320 between the secure DDR SEE 420 and the insecure service processor application 112. As will be apparent to those skilled in the art in view of the various embodiments described herein, the DDR mailbox functionality may be implemented in a variety of ways.

일부 실시예들에서, DDR 프로세서 및 USB 드라이버는 DDR 보안 실행 메모리(420)와 같은, 어플리케이션 프로세서 칩셋 상의 보안 환경에서 실행한다. 일부 실시예들에서, 보안 환경은 어떠한 인증되지 않은 능력도 DDR 프로세서 코드 또는 모뎀 버스 드라이버/제어기 코드(예를 들어, USB 드라이버/제어기 또는 다른 디바이스 I/O 드라이버/제어기, 예컨대 2G/3G/4G 모뎀 드라이버/제어기, SDIO 드라이버/제어기, 이더넷 드라이버/제어기, 파이어와이어 드라이버/제어기, WiFi 드라이버/제어기, 블루투스 드라이버/제어기 또는 근거리 통신 드라이버/제어기)를 대체하거나 변경하지 않는 것을 보장한다. 일부 실시예들에서, 보안 환경은 DDR 프로세서로부터 물리적 모뎀 버스 드라이버(예를 들어, USB 포트, 이더넷 포트, 파이어와이어 포트, WiFi 포트, 블루투스 포트, NFC 포트, 또는 다른 I/O 버스 포트)로의 데이터 경로가 보안 환경 밖의 펌웨어로부터 분리되는 것을 또한 보장한다. 즉, 보안 환경 밖의 어떠한 펌웨어도 DDR 프로세서에 의한 통계의 정밀한 수집에 영향을 줄 수 없다. 일부 실시예들에서, 보안 환경은, 키(key)와 같은, 민감한 암호 저장소에 접속하는 DDR 프로세서 이외에는 코딩 능력이 없음을 더 보장한다. 예를 들어, 이는 디버그(debug) 모니터링 및/또는 다른 모니터링/접속 활동들 또는 기술들로부터 민감한 저장소를 보호하는 것을 포함한다. 당업자에게 명백한 바와 같이, 단순한 DDR 프로세서가 아닌, APU 펌웨어는 보안되어야 하고 인증되지 않은 접속을 허용하도록 활용될 수 있는 오류(bug) 또는 취약점을 포함하지 말아야 한다. 예를 들어, 통상의 공격은, 공격자가 확인되지 않은 버퍼가 그 경계를 초과하도록 하는 입력을 선택하는, 버퍼 오버플로우(buffer overflow)이어서, 이는 공격자가 활용할 수 있는 의도되지 않는 행동을 초래한다.In some embodiments, the DDR processor and the USB driver run in a secure environment on the application processor chipset, such as DDR secure execution memory 420. In some embodiments, the secure environment may include any unauthorized capability such as DDR processor code or modem bus driver / controller code (e.g., USB driver / controller or other device I / O driver / controller such as 2G / 3G / 4G Modem driver / controller, SDIO driver / controller, Ethernet driver / controller, FireWire driver / controller, WiFi driver / controller, Bluetooth driver / controller or local communication driver / controller). In some embodiments, the secure environment includes data from a DDR processor to a physical modem bus driver (e.g., a USB port, an Ethernet port, a FireWire port, a WiFi port, a Bluetooth port, an NFC port, or another I / O bus port) It also ensures that the path is isolated from firmware outside the secure environment. That is, no firmware outside the security environment can affect the precise collection of statistics by the DDR processor. In some embodiments, the secure environment further ensures that there is no coding capability other than a DDR processor accessing a sensitive cryptographic store, such as a key. This includes, for example, protecting sensitive storage from debug monitoring and / or other monitoring / connection activities or techniques. As will be apparent to those skilled in the art, rather than a simple DDR processor, the APU firmware should be secure and should not contain any bugs or vulnerabilities that could be exploited to allow unauthorized access. For example, a typical attack is a buffer overflow, in which an attacker chooses an input that causes an unconfirmed buffer to cross the boundary, resulting in an unintended behavior that an attacker can exploit.

상술한 바와 같은 이러한 요구사항들을 만족시키기 위해 사용될 수 있는 APU 칩셋 SEE 구현 기술들의 다양한 예들이 있다. 예를 들어, 업그레이드 가능한 (예를 들어, DDR 프로세서를 포함하는) 펌웨어를 가지는 통상적인 CPU가 제공될 수 있다. 펌웨어는 비휘발성(NV) 메모리에 저장될 수 있으며, 또는 새로운 또는 업그레이드된 펌웨어로 다시 프로그래밍/업데이트 될 수 있는 플래시 메모리에 저장될 수 있다. 펌웨어는 제조 시에 설치될 수 있고 그리고 설계에 의해 순응 보안 환경을 제공한다. 엄격한 품질 보증 시험은 오류들이 보안 환경을 위해하기 위한 수단을 제공하기 않을 것 같음을 보장하기 위해 필요하다. 새로운 펌웨어 이미지는 유효한 디지털 서명을 가져야만 설치를 위해 받아들여질 수 있다. 버전 제어 확인은 더 오래된 버전들로 되돌아가는 것을 방지하기 위해 포함될 수 있다. 서명과 버전을 유효하게 하는 펌웨어는 업그레이드가 가능할 수도 있는 펌웨어에 있다. 다른 예로서, ARM Trustzone 또는 Intel Smart&Secure(예를 들어, 또는 잠재적으로 공급자 맞춤형 보안 환경 CPU 분할 기술들을 포함하는 다른 적절한 대체물)와 같은, 보안 분할된 CPU가 제공될 수 있다. DDR 프로세서, 모뎀 버스 드라이버(예를 들어, USB 드라이버/제어기 또는 2G/3G/4G 모뎀 드라이버/제어기, SDIO 드라이버/제어기, 이더넷 드라이버/제어기, 파이어와이어 드라이버/제어기, WiFi 드라이버/제어기, 블루투스 드라이버/제어기 또는 근거리 통신 드라이버/제어기와 같은 다른 디바이스 I/O 드라이버/제어기) 및 임의의 개재 코드(intervening code)가, Trustzone의(예를 들어, Smart&Secure의) 보안 모드와 같은 보안 파티션에서 실행될 수 있다. 보안 부팅 절차는 DDR 프로세서, 모뎀 버스 드라이버(예를 들어, USB 드라이버/제어기 또는 2G/3G/4G 모뎀 드라이버/제어기, SDIO 드라이버/제어기, 이더넷 드라이버/제어기, 파이어와이어 드라이버/제어기, WiFi 드라이버/제어기, 블루투스 드라이버/제어기 또는 근거리 통신 드라이버/제어기와 같은 다른 디바이스 I/O 드라이버/제어기) 및 임의의 개재 코드가 디지털적으로 서명된 버전 제어된 코드 이미지에 포함될 수 있는 요건을 강요한다. 이러한 접근법에서, 하드웨어 방화벽은 민감한 암호 저장소를 보통의 모드 펌웨어로부터 보호할 수 있다. 또한, 하드웨어 방화벽은 보통의 모드 펌웨어가 DDR 프로세서와 물리적 모뎀 버스 드라이버(예를 들어, USB 포트) 사이의 데이터 경로를 무단 조작할 수 없음을 보장하여, 본원에서 설명된 바와 같이 서비스 사용 척도 데이터 및/또는 통계들의 수집에 대한 간섭을 방지한다.There are various examples of APU chipset SEE implementation techniques that can be used to satisfy these requirements as described above. For example, a conventional CPU with firmware that is upgradeable (e.g., including a DDR processor) may be provided. The firmware may be stored in non-volatile (NV) memory or may be stored in flash memory which may be reprogrammed / updated with new or upgraded firmware. Firmware can be installed at the time of manufacture and provides a compliant security environment by design. Strict quality assurance testing is necessary to ensure that errors are not likely to provide a means for a secure environment. The new firmware image must have a valid digital signature before it can be accepted for installation. Version control checks may be included to prevent returning to older versions. Firmware that enables signatures and versions is in firmware that may be upgradeable. As another example, secure partitioned CPUs may be provided, such as ARM Trustzone or Intel Smart & Secure (e.g., or other suitable alternative including potentially provider-customized secure environment CPU partitioning techniques). DDR processor, modem bus driver (eg USB driver / controller or 2G / 3G / 4G modem driver / controller, SDIO driver / controller, Ethernet driver / controller, FireWire driver / controller, WiFi driver / controller, Controller or other device I / O driver / controller such as a local communication driver / controller) and any intervening code may be executed in a secure partition, such as Trustzone's (for example, Smart & Secure) security mode. The secure boot procedure can be performed using a DDR processor, a modem bus driver (eg USB driver / controller or 2G / 3G / 4G modem driver / controller, SDIO driver / controller, Ethernet driver / controller, FireWire driver / controller, WiFi driver / , Another device I / O driver / controller such as a Bluetooth driver / controller or a local communications driver / controller) and any intervening code may be included in the digitally signed version controlled code image. In this approach, hardware firewalls can protect sensitive crypto storage from normal mode firmware. The hardware firewall also ensures that normal mode firmware can not tamper with the data path between the DDR processor and the physical modem bus driver (e.g., a USB port), so that service usage metrics and / / / ≪ / RTI >

도 5는 일부 실시예들에 따른 모뎀 버스 드라이버와 함께 APU 구현에서 보안 내장된 DDR 프로세서를 위한 다른 아키텍쳐를 나타낸다. 특히, 도 5는, 2G/3G 또는 4G 모뎀(410)를 위한 APU 스택 드라이버가 도 5에서 나타낸 바와 같이 APU 커널 스페이스(404) 대신에 DDR 보안 실행 메모리(420)에 위치되는 것을 제외하고는 도 4와 유사하다.Figure 5 illustrates another architecture for a secure embedded DDR processor in an APU implementation with a modem bus driver in accordance with some embodiments. In particular, Figure 5 shows that the APU stack driver for the 2G / 3G or 4G modem 410 is located in the DDR secure execution memory 420 instead of the APU kernel space 404 as shown in Figure 5 4.

모뎀 프로세서에서 내장된 Built-in modem processor DDRDDR 프로세서 구현 Processor implementation

일부 실시예들에서, MPU 구현에서, DDR 프로세서는 다른 보안 모뎀 데이터 경로 처리 코드 및 하드웨어 기능들을 가지는 모뎀 프로세서에 있다. 예를 들어, MPU 기반 보안 DDR 프로세서 구현에서, 일단 모뎀 버스 드라이버 인터페이스 아래의 데이터 경로가 보안되면, DDR 프로세서를 피해감으로써 네트워크에 도달하는 데이터 경로를 만들기 위해 디바이스를 해킹하기가 상대적으로 어렵다. 또한, 일부 MPU 칩셋 패밀리들에 대해서는, ARM Trust Zone 및 Intel Smat&Secure와 같은, 표준 하드웨어 보안 파티션 특성들을 가지지 않는 일부 APU 패밀리들에서 동일한 기능들을 구현하는 것과 비교 시, 보안 실행 환경, 보안 부팅 로더 및 보안 비휘발성 메모리를 구현하는 것이 더 간단할 수 있다. 또한, MPU 구현은 APU 구현의 경우에서 보다 OS 커널 구축과는 상호작용을 덜 가질 수 있다. MPU 구현이 있는 일부 실시예들에서, DDR 프로세서(114)는 2G, 3G, 또는 4G 모뎀과 같은 무선 광역 네트워크 모뎀에, 또는 USB 모뎀, 이더넷 모뎀, 파이어와이어 모뎀, WiFi 모뎀, 블루투스 모뎀, 근거리 통신 모뎀, 또는 다른 I/O 모뎀과 같은 지역 또는 개인 영역 모뎀에 있게 된다. 많은 설명된 실시예들은 무선 광역 네트워크 모뎀으로 MPU 구현하기 위함이지만, 당업자에게 명백한 바와 같이, 다른 I/O 디바이스 모뎀들을 포함하는 다른 변형예들이 본 개시물의 범위로부터 벗어남 없이 가능하다.In some embodiments, in an MPU implementation, the DDR processor is in a modem processor with other secure modem data path processing code and hardware functions. For example, in an MPU-based secure DDR processor implementation, once the data path under the modem bus driver interface is secured, it is relatively difficult to hack the device to create a data path to reach the network by avoiding the DDR processor. In addition, for some MPU chipset families, compared to implementing the same functions in some APU families that do not have standard hardware security partition characteristics, such as ARM Trust Zone and Intel Smat & Secure, the security execution environment, secure boot loader, and security Implementing non-volatile memory can be simpler. Also, the MPU implementation may have less interaction with the OS kernel build than with the APU implementation. In some embodiments with MPU implementations, the DDR processor 114 may be coupled to a wireless wide area network modem, such as a 2G, 3G, or 4G modem, or to a modem such as a USB modem, an Ethernet modem, a FireWire modem, a WiFi modem, Modem, or other I / O modem. While many of the described embodiments are for implementing MPUs in a wireless wide area network modem, other variations, including other I / O device modems, as will be apparent to those skilled in the art are possible without departing from the scope of the present disclosure.

그러나, MPU DDR 프로세서 구현에서 모뎀 프로세서 환경은 APU 솔루션과 동일한 성능과 보안 실행 메모리 스페이스를 가지는 CPU를 구비하지 않을 수 있다. 이러한 명백한 단점은 코드 메모리 크기가 작고 CPU 성능 요구는 통상적으로 비교적 낮은 전력 모뎀 프로세서 칩셋 CPU들에 적합하도록 DDR 프로세서 펌웨어를 설계하고 최적화함에 의해 완화될 수 있다. 또한, 상술한 바와 같이, OTA 및 OTN 업데이터 프로세스는 임의의 APU 칩셋 공급자 및 그들의 OEM들에 의해 얻어지는 것 보다 더 복잡할 수 있다.However, in the MPU DDR processor implementation, the modem processor environment may not have a CPU with the same performance and secure execution memory space as the APU solution. This obvious disadvantage can be mitigated by designing and optimizing the DDR processor firmware so that the code memory size is small and the CPU performance requirements are typically suitable for relatively low power modem processor chipset CPUs. Also, as described above, the OTA and OTN Updater processes may be more complex than those obtained by any APU chipset provider and their OEMs.

도 6은 일부 실시예들에 따른 MPU 구현에서 보안 내장된 DDR 프로세서를 위한 아키텍쳐를 나타낸다. 특히, 도 6은 내장된 DDR 프로세서와 DDR 프로세서로부터 데이터 경로 보안 구역의 네트워크까지 모뎀 데이터 경로를 포함하는 MPU 구현을 나타낸다. 이러한 접근법에서, DDR 프로세서(114)는 보안 실행 환경(SEE)(604)과 모뎀 칩셋(예를 들어, 3G 또는 4G MPU 칩셋)의 보안 실행 메모리(630)에 내장된다. 나타낸 바와 같이, 사기성 소프트웨어 또는 펌웨어가 DDR 프로세서를 피해갈 수 없도록 보장하기 위해, 데이터 경로 보안 구역은 DDR 프로세서와 안테나 사이에서 일어나는 모뎀 데이터 경로 처리 및 모뎀 신호 처리를 따르는 DDR 프로세서(114)를 포함한다. 일부 실시예들에서, DDR 프로세서(114)는 모뎀 버스 드라이버(610)와 논리 채널 인터페이스 바로 아래의 3G 또는 4G 모뎀 데이터 경로에서 안전하게 구현되고, 3G 또는 4G 네트워크로의 DDR 프로세서(114) 아래 전체 데이터 경로는 DDR 프로세서 데이터 경로 처리를 피해 가는 데이터 경로들을 방지하도록 보안된다.Figure 6 illustrates an architecture for a secure embedded DDR processor in an MPU implementation in accordance with some embodiments. In particular, Figure 6 shows an MPU implementation that includes a modem data path from a built-in DDR processor and a DDR processor to a network of data path secure areas. In this approach, the DDR processor 114 is embedded in the secure execution memory (SEE) 604 and the secure execution memory 630 of the modem chipset (e.g., 3G or 4G MPU chipset). As shown, to ensure that fraudulent software or firmware can not bypass the DDR processor, the data path security zone includes a DDR processor 114 that follows modem data path processing and modem signal processing taking place between the DDR processor and the antenna . In some embodiments, the DDR processor 114 is securely implemented in the 3G or 4G modem data path directly below the modem bus driver 610 and the logical channel interface, The path is secured to prevent data paths from bypassing the DDR processor data path processing.

상술한 APU 기반 접근법과 유사하게, 도 6은 모뎀 기반 솔루션 내에서의 주요한 기능 블록들을 보여주는데, 모뎀 기반 솔루션에서 DDR 프로세서(114)는 네트워크 데이터 경로(632)를 통한 모뎀의 SEE 모니터링 서비스 사용에, 다른 보안 모뎀 코드(634)를 따라, DDR 모뎀 네트워킹 프로토콜 코드(636) 아래, 및 DDR 모뎀 데이터 경로 처리(638) 아래에 있게 되고, 서비스 프로세서 어플리케이션 프로그램으로의 DDR 프로세서의 통신 채널은 (예를 들어, USB 종점에 의해 서비스되는)공유 메일박스를 경유한다. 이러한 인터페이스는 별도의 논리 통신 채널을 사용하거나 또는 APU와 MPU 사이의 이미 존재하는 논리 통신 채널의 상부에 피기백(piggyback)될 수 있다. 일부 실시예들에서, DDR 메일박스 데이터(320)의 수령이 서비스 프로세서 어플리케이션 코드이다. Similar to the APU-based approach described above, FIG. 6 illustrates the major functional blocks within a modem-based solution where the DDR processor 114 is responsible for using the modem's SEE monitoring service over the network data path 632, Under the DDR modem networking protocol code 636, and under the DDR modem data path processing 638, along with other secure modem code 634, and the communication channel of the DDR processor to the service processor application program (e.g., , Served by a USB endpoint). This interface may be piggybacked on top of an existing logical communication channel between the APU and the MPU using a separate logical communication channel. In some embodiments, the receipt of DDR mailbox data 320 is a service processor application code.

도 6에서 또한 나타낸 바와 같이, 보안 부팅 코드가 존재하는 (예를 들어, 소프트웨어/펌웨어 다운로드/업데이트를 위한) 비휘발성 메모리에 대한 인터페이스는 모든 보안 코드들이 다운로드가 완료되는 것으로 여겨지기 전에 검증되는 첫번째 디지털 서명임을 보장한다. 데이터 경로는 제한되는 또는 제한되지 않는 네트워크 접속을 제어하는 것 이외에 접속을 하여 DDR 사용 척도를 수행하도록 데이터 프레임들이 DDR 프로세서를 위한 보안 환경으로 전송되는 분리된 인터페이스이다.As also shown in FIG. 6, the interface to the non-volatile memory (e.g., for software / firmware download / update) where the secure boot code resides is the first one that is verified before all security codes are considered to be complete It is a digital signature. The data path is a separate interface where data frames are sent to the secure environment for the DDR processor to make connections and perform DDR usage metrics in addition to controlling limited or unrestricted network connections.

모뎀 칩셋 비보안 실행 환경(602)은 모뎀 버스 통신 드라이버(610)를 포함한다. 일부 실시예들에서, 모뎀 데이터 경로 트래픽(622)을 위한 그리고 DDR 모뎀 데이터 경로 처리(624) 상부에서의 논리 통신 채널이 또한 제공된다. 일부 실시예들에서, 모뎀 제어 설정들 및 상태 보고를 위한 논리 통신 채널(612), 모뎀 상태 데이터(614), 모뎀 제어 데이터(616), 모뎀 진단 데이터(618), 및 기타 비보안된 모뎀 기능들(620)이 또한 제공된다.The modem chipset non-secure execution environment 602 includes a modem bus communication driver 610. In some embodiments, a logical communication channel for modem data path traffic 622 and above the DDR modem data path processing 624 is also provided. In some embodiments, a logical communication channel 612 for modem control settings and status reporting, modem status data 614, modem control data 616, modem diagnostic data 618, and other unsecured modem functions (620) is also provided.

도 7은 일부 실시예들에 따라 MPU 구현에서 보안 내장된 DDR 프로세서를 위한 다른 아키텍쳐를 나타낸다. 특히, 도 7은 3G 또는 4G 모뎀 네트워크 처리와 신호 처리를 통한 데이터 경로가 DDR 프로세서 이외의 소프트웨어 또는 펌웨어로부터의 접속으로부터 안테나까지 보안이 되는 MPU 보안 작동 환경에서 DDR 프로세서(114)가 어떻게 구현되는지를 나타낸다. 일부 실시예들에서, 보안 부팅 로더 프로세스는 상술한 바와 유사하게 작동한다.Figure 7 illustrates another architecture for a secure embedded DDR processor in an MPU implementation in accordance with some embodiments. In particular, Figure 7 illustrates how the DDR processor 114 is implemented in an MPU security operating environment in which the data path through the 3G or 4G modem network processing and signal processing is secured from the connection from the software or firmware other than the DDR processor to the antenna . In some embodiments, the secure boot loader process operates similarly to that described above.

나타낸 바와 같이, APU 칩셋 어플리케이션 프로그램들(702)은, 본원에서 설명된 바와 유사하게 서비스 프로세서 어플리케이션 프로그램(112)으로 전달되는 DDR 메일박스 데이터(710)를 포함한다. 나타낸 바와 같이 APU 칩셋 커널 프로그램(704)은, 3G/4G 모뎀을 위한 APU 스택 인터페이스(712), 다른 모뎀들을 위한 APU 스택 인터페이스(714), 및 모뎀 버스(718)를 통한 모뎀 칩셋 비보안 실행 환경(706)의 3G 또는 4G 모뎀 버스 드라이버(722)로의 통신을 위한 3G 또는 4G 모뎀 버스 드라이버(716)와 함께, 서비스 프로세서 커널 프로그램(113)을 포함한다.As shown, the APU chipset application programs 702 include DDR mailbox data 710 that is communicated to the service processor application program 112 similar to that described herein. As shown, the APU chipset kernel program 704 includes an APU stack interface 712 for a 3G / 4G modem, an APU stack interface 714 for other modems, and a modem chipset non- And a 3G or 4G modem bus driver 716 for communicating with the 3G or 4G modem bus driver 722 of the service processor kernel program 706.

일부 실시예들에서, DDR 프로세서(114)는 다양한 실시예들과 관련하여 본원에서 설명된 바와 유사하게 보안 네트워크/서비스 사용 척도 및/또는 접속 제어를 감안한 데이터 경로를 따른다. 일부 실시예들에서, DDR 프로세서 OS 스택 데이터 인터페이스(IE)(728)는 DDR 보안 실행 환경(SEE)과 모뎀 칩셋 비보안 실행 환경(706)의 (잠재적) 비보안 모뎀 버스 드라이버 인터페이스(722) 사이를 연결하도록 제공된다. 또한 나타낸 바와 같이, DDR 프로세서 모뎀 데이터 경로 인터페이스(730)는 DDR 프로세서(114)를 DDR 및 안테나 사이에서 일어나는 모뎀 데이터 경로 처리 및 모뎀 신호 처리(740)로 유사하게 연결하도록 제공된다. 본원에서 설명된 바와 같이, DDR은 데이터 경로 선상에 있고 단순히 클론/모니터링/드롭 기능이 아닌데, 이는 DDR 보고들이 무단 조작되거나 서비스 제어기에 도달하는 것으로부터 차단되는 경우, 또는 DDR 프로세서가 무단 조작되거나 서비스 프로세서가 무단 조작되는 경우에 DDR 프로세서가 또한 일부 실시예들에 따라 접속 제어기 기능을 구현하여 네트워크 접속의 무결성을 유지하기 때문이다.In some embodiments, the DDR processor 114 follows a data path that takes into account the security network / service usage metrics and / or connection controls similar to those described herein with respect to various embodiments. In some embodiments, the DDR processor OS stack data interface (IE) 728 is coupled between the DDR Secure Execution Environment (SEE) and the (potentially) unsecured modem bus driver interface 722 of the modem chipset non-secure execution environment 706 Lt; / RTI > As also shown, the DDR processor modem data path interface 730 is provided to similarly connect the DDR processor 114 to the modem data path processing and modem signal processing 740 occurring between the DDR and the antenna. As described herein, DDR is on the data path and is not simply a clone / monitoring / drop function, as it is possible that DDR reports are unauthorized or blocked from reaching the service controller, This is because the DDR processor also implements the access controller functionality according to some embodiments in case the processor is tampered with, thereby maintaining the integrity of the network connection.

또한 나타낸 바와 같이, 메일박스 기능은 보안 DDR SEE(725)와 비보안 서비스 프로세서 어플리케이션 프로그램(112) 사이에의 데이터를 통과시키도록 제공된다. 특히, DDR 프로세서 메일박스 인터페이스(IF)(724)는, 모뎀 칩셋 비보안 실행 환경(706)에 위치하는 DDR 메일박스(720)와 통신한다. DDR 메일박스 데이터(710)는, 나타낸 바와 같이 모뎀 버스 드라이버(722)와 모뎀 버스(718)를 경유하는 모뎀 통신 경로를 통해 제공되는, 비보안 서비스 프로세서 어플리케이션 프로그램(112)에 제공되는 것으로 나타내어진다. DDR 프로세서 메일박스 인터페이스(IF)(724)는 DDR 프로세서(114)와 통신하고 DDR SEE(725)에 위치하게 된다. 본원에서 설명된 다양한 실시예들의 관점에서 당업자들에게 명백한 바와 같이, 메일박스 기능은 다양한 방법으로 구현될 수 있다. 다양한 APU 기반 실시예들과 관련하여 상술한 바와 같이, 일부 실시예들에 따라, 보안 영역은 DDR 프로세서 아래의 모든 데이터 경로 처리 단계들을 포함하고, 모뎀을 통해 DDR 프로세서를 피해 가는 네트워크로의 어떤 데이터 경로도 없다.As also shown, the mailbox function is provided to pass data between the secure DDR SEE 725 and the insecure service processor application program 112. In particular, the DDR processor mailbox interface (IF) 724 communicates with the DDR mailbox 720 located in the modem chipset non-secure execution environment 706. The DDR mailbox data 710 is shown to be provided to the insecure service processor application program 112, which is provided via a modem communication path via modem bus driver 722 and modem bus 718 as shown. The DDR processor mailbox interface (IF) 724 communicates with the DDR processor 114 and is located in the DDR SEE 725. As will be apparent to those skilled in the art in view of the various embodiments described herein, the mailbox functionality may be implemented in a variety of ways. As described above in connection with various APU based embodiments, in accordance with some embodiments, the secure area includes all data path processing steps under the DDR processor, and any data to the network that bypasses the DDR processor via the modem There is no route.

일부 실시예들에서, DDR 프로세서는, APU 기반 실시예들에 관하여 위에서 설명한 바와 유사하게 MPU 기반 실시예들의 보안 환경에서 실행한다. 일부 실시예들에서, 보안 환경은 인증되지 않은 능력이 DDR 프로세서 코드를 교체하거나 변경하지 않도록 보장한다. 일부 실시예들에서, 보안 환경은 또한 DDR 프로세서로부터 안테나까지의 데이터 경로가 보안 환경 밖의 펌웨어로부터 분리됨을 또한 보장한다. 즉, 보안 환경 밖의 어떤 펌웨어도 DDR 프로세서에 의한 통계들의 정확한 수집에 영향을 줄 능력을 가지지 않는다. 일부 실시예들에서, 보안 환경은, 키와 같은 민감한 암호 저장소에 접속하는 능력이 DDR 프로세서 이외의 코드에는 없음을 더 보장한다. 예를 들어, 이는 디버그 모니터링 및/또는 다른 모니터링/접속 작동들 또는 기술들로부터 민감한 저장소를 보호하는 것을 포함할 수 있다. 당업자에게 또한 명백한 바와 같이, 단지 DDR 프로세서만이 아닌, MPU 펌웨어는 보안되어야 하며, 인증되지 않은 접속을 허용하도록 활용될 수 있는 오류 또는 취약점을 포함하지 않아야 한다. 예를 들어, 통상의 공격은, 공격자가 확인되지 않은 버퍼가 그 경계를 초과하도록 하는 입력을 선택하는, 버퍼 오버플로우(buffer overflow)이어서, 이는 공격자가 활용할 수 있는 의도되지 않는 행동을 초래한다.In some embodiments, the DDR processor executes in a secure environment of MPU-based embodiments similar to that described above with respect to APU-based embodiments. In some embodiments, the secure environment ensures that unauthorized capabilities do not replace or alter the DDR processor code. In some embodiments, the secure environment also ensures that the data path from the DDR processor to the antenna is isolated from firmware outside the secure environment. That is, no firmware outside the security environment has the capability to influence the accurate collection of statistics by the DDR processor. In some embodiments, the security environment further ensures that the ability to access sensitive cryptographic storage, such as keys, is not present in code other than the DDR processor. For example, this may include protecting sensitive storage from debug monitoring and / or other monitoring / access operations or techniques. As will also be apparent to those skilled in the art, the MPU firmware, rather than just the DDR processor, must be secure and should not contain any errors or vulnerabilities that could be exploited to allow unauthorized access. For example, a typical attack is a buffer overflow, in which an attacker chooses an input that causes an unconfirmed buffer to cross the boundary, resulting in an unintended behavior that an attacker can exploit.

MPU 실시예들에서 보안 실행 환경(SEE) 구현의 예는 APU 실시예에서 다양한 보안 실행 환경(SEE) 구현에 대해 위에서 유사하게 설명된 예들을 포함한다.An example of a Security Execution Environment (SEE) implementation in MPU embodiments includes those similarly described above for various Security Execution Environment (SEE) implementations in an APU embodiment.

모뎀 modem 프로세서 상에서의On the processor 데이터 경로 보안 검증기와  Data Path Security Verifier 결합된Combined 어플리케이션application 프로세서 상에서의On the processor 내장된  Built-in DDRDDR 프로세서 구현 Processor implementation

일부 실시예들에서, DDR 프로세서는 SEE APU 칩셋에 내장되고, 데이터 경로 보안 검증기(DPSV)는 도 1의 디바이스 아키텍쳐(103)에서 나타낸 바와 같이, MPU 칩셋에 내장된다. 예를 들어, DPSV는 암호화 기술들을 이용하여 보안 DDR 프로세서 및 모뎀 네트워크 안테나 연결 사이의 보안되고 신뢰된 데이터 경로를 얻도록 할 수 있다. 이는 사기성 소프트웨어 또는 펌웨어와 모뎀 버스, 물리적 모뎀 버스, 및 DPSV 요소 위의 모뎀 데이터 경로 요소를 보안할 필요가 없는 네트워크 사이의 데이터 연결을 방지한다. DDR 프로세서와 DPSV 사이의 보안 통신 채널을 설정함으로써, 보안 채널 결합이 만들어져서, 사기성 소프트웨어 또는 펌웨어가 성공적으로 모뎀버스 인터페이스로 접속하여 DDR 프로세서를 피해 가는 경우에도 DDR 프로세서에 의해 안전하게 처리되는 네트워크 데이터 경로 흐름들 만이 무선 접속 네트워크로의 3G 또는 4G 모뎀 연결에 도달할 수 있게 된다. 사기성 소프트웨어 또는 펌웨어가 DDR 프로세서를 피해 가고 모뎀과 의도된 비보안 데이터 경로 정보를 통신하는 경우에, DPSV는 DDR 프로세서에 의해 처리되지 않고 암호적으로 보안되지 않은 네트워크 데이터 경로들을 차단한다.In some embodiments, the DDR processor is embedded in the SEE APU chipset and the data path security verifier (DPSV) is embedded in the MPU chipset, as shown in the device architecture 103 of FIG. For example, the DPSV may use encryption techniques to obtain a secure and reliable data path between a secure DDR processor and a modem network antenna connection. This prevents deceptive software or firmware and data connections between the modem bus, the physical modem bus, and the networks that do not need to secure the modem data path elements on the DPSV elements. By establishing a secure communication channel between the DDR processor and the DPSV, a secure channel combination is created so that the network data path that is securely handled by the DDR processor, even if the deceptive software or firmware successfully connects to the modem bus interface to bypass the DDR processor Only flows can reach a 3G or 4G modem connection to the wireless access network. When fraudulent software or firmware bypasses the DDR processor and communicates unsolicited data path information intended for the modem, the DPSV blocks network data paths that are not processed by the DDR processor and are not cryptographically secured.

도 8은 일부 실시예들에 따른 APU에서 보안 내장된 DDR 프로세서와 MPU 구현에서의 데이터 경로 보안 검증기(DPSV)를 위한 아키텍쳐를 나타낸다. 특히, 도 8에서 나타낸 바와 같이, DDR 프로세서(114)는 APU 칩셋 SEE에 내장되며, 그리고 데이터 경로 보안 검증기(DPSV)(836)로서 본원에서 언급되는 제2 비교 펌웨어 이미지가 MPU 칩셋 SEE(예를 들어, 3G 또는 4G MPU 칩셋 SEE)에 내장된다. 또한 나타낸 바와 같이, 사기성 소프트웨어 또는 펌웨어가 DDR 프로세서를 피해 갈 수 없도록 하기 위해, 두 개의 데이터 경로 보안 구역이 있는데, 하나는 DDR 프로세서만을 포함하고 두 번째는 DDR과 안테나 사이에서 일어나는 모뎀 데이터 경로 처리 및 모뎀 신호 처리를 따르는 DPSV를 포함한다(예를 들어, 이러한 제2 데이터 경로 보안 구역은 DDR 프로세서의 모뎀만의 구현의 것과 유사함).Figure 8 illustrates an architecture for a secure embedded DDR processor in an APU and a data path security verifier (DPSV) in an MPU implementation in accordance with some embodiments. 8, the DDR processor 114 is embedded in the APU chipset SEE and a second comparison firmware image referred to herein as a data path security verifier (DPSV) 836 is stored in the MPU chipset SEE For example, 3G or 4G MPU chipset SEE). As also shown, there are two data path security zones to prevent fraudulent software or firmware from escaping the DDR processor, one containing the DDR processor only and the second containing the modem data path processing between the DDR and the antenna, (E.g., such a second data path security zone is similar to that of a modem-only implementation of a DDR processor).

상술한 바와 같이, 이러한 접근법은 APU 3G 또는 4G 모뎀 버스 드라이버 및 물리적 버스에 대한 보안을 요구하지 않는다. 예를 들어, 일부 벤더들 및/또는 칩셋 공급자들(예를 들어, AWSP APU 칩셋 공급자들)은 두 개의 펌웨어 이미지들 및 두 개의 데이터 경로 보안 구역을 만드는 것이 DDR 프로세서 SEE와 모뎀 안테나 연결 사이의 데이터 경로를 보안하는 것보다 더 쉽다고 생각할 수 있다. APU 구현 기반 접근법과 비교하여, APU에 대한 펌웨어는 다소 단순화되고 모뎀 버스 드라이버 및 물리적 버스를 보안하는 것이 포함된 보안 설계 작업을 없앨 수 있다. MPU 구현 기반 접근법과 비교하여, 모뎀 펌웨어는 또한 단순화된다. 예를 들어, 일부 APU 칩셋 아키텍쳐에서, 모뎀 버스 드라이버, 모뎀 물리적 버스, 및 모뎀 그 자체를 통한 DDR 프로세서로부터의 데이터 경로를 보안하는 것이 어려울 수 있다. 또한, 일부 MPU 칩셋에서, 상술한 바와 유사하게, MPU에서 요구되는 보안 펌웨어 프로그램 이미지의 크기를 단순화시키거나 줄여줄 필요가 있을 수 있다. 더 단순하고 더 작은 펌웨어가 요구되는 업데이트의 빈도수를 줄여주거나 또는 아마도 그것들을 함께 제거할 수 있다. 본원에서 설명된 APU DDR 프로세서 및 MPU DPSV 구현의 접근법은 MPU에서 요구되는 펌웨어를 DPSV까지로 줄여준다. 이는 DDR 프로세서에 의한 더 복잡한 데이터 경로 처리가 APU 상에서 구현되게 하며, 여기서 (i) 보안 펌웨어 실행 메모리는 일반적으로 더 크고 CPU 성능은 일반적으로 더 높으며, 그리고 (ii) 펌웨어 업데이트 시스템은 일반적으로 더 성능이 좋고 보다 유연하다. 그러나, APU DDR 프로세서 및 MPU DPSV 구현 접근법에도 또한 문제점이 있다. 주요 문제점은 펌웨어가 일반적으로 무선 네트워크 칩셋(MPU) 및 디바이스 어플리케이션 프로세서(APU) 칩셋 모두에 내장되어야 한다는 것이다.As noted above, this approach does not require security for the APU 3G or 4G modem bus driver and the physical bus. For example, some vendors and / or chipset providers (e.g., AWSP APU chipset providers) may be required to create two firmware images and two data path security zones to provide data between the DDR processor SEE and the modem antenna connection You can think of it as easier than securing the path. Compared to the APU implementation-based approach, the firmware for the APU is somewhat simplified and eliminates the security design work involved in securing the modem bus driver and the physical bus. Compared to the MPU implementation-based approach, modem firmware is also simplified. For example, in some APU chipset architectures, it may be difficult to secure the data path from the DDR processor through the modem bus driver, the modem physical bus, and the modem itself. Also, in some MPU chipsets, it may be necessary to simplify or reduce the size of the security firmware program image required by the MPU, similar to the above. Simpler and smaller firmware can reduce the frequency of updates that are required or perhaps remove them together. The APU DDR processor and MPU DPSV implementation approach described herein reduces the firmware required by the MPU to DPSV. This allows more complex data path processing by the DDR processor to be implemented on the APU where (i) the security firmware execution memory is generally larger and the CPU performance is generally higher, and (ii) the firmware update system is generally more capable This is good and more flexible. However, the APU DDR processor and MPU DPSV implementation approach also has problems. The main problem is that the firmware is typically embedded in both the wireless network chipset (MPU) and the device application processor (APU) chipset.

도 8에서 나타낸 바와 같이, 제1 SEE(810)는 APU 칩셋 상에 구현되는데, 이는 본원에서 설명된 바와 유사하게 OS 스택 데이터 경로 인터페이스 및/또는 모뎀 데이터 경로 인터페이스(818)를 이용하여, 2G/3G/4G 모뎀(806)을 위한 APU 스택 드라이버로부터의 통신을 안전하게 모니터링하기 위한 DDR 프로세서(114)를 포함한다. 제2 SEE(832)는 MPU 칩셋 상에 구현되는데, 데이터 경로 보안 검증(DPSV) 프로그램(836)을 포함한다. DPSV(836)는 나타낸 바와 같이 모뎀을 위한 데이터 경로 위에 있다. 예를 들어, DPSV 기능은 매우 단순할 수 있다: DPSV(836)는 단지 DDR 프로세서(114)에 의해 처리되고 인정되는 데이터 경로 정보를 단지 통과시킨다. DPSV(836)는 DDR 프로세서(114)에 연결되어 DDR 프로세서 데이터 경로의 비밀 세션 키를 알고 DDR 프로세서(114)로부터 인정을 수신할 수 있게 된다. 어떻게 DDR 프로세서(114)가 보안 데이터 경로 채널을 DPSV(836)에 결속시키는지에 대한, 그리고 어떻게 DPSV(836)가 모든 3G 또는 4G 모뎀 네트워크 서비스 사용이 적절하게 모니터링되고 처리되는 지를 보장하는지에 대한 다양한 기술들이 본원에서 제공된다.8, a first SEE 810 is implemented on the APU chipset, which is similar to that described herein, using the OS stack data path interface and / or the modem data path interface 818 to provide 2G / And a DDR processor 114 for securely monitoring communications from the APU stack driver for the 3G / 4G modem 806. A second SEE 832 is implemented on the MPU chipset, which includes a data path security verification (DPSV) program 836. The DPSV 836 is on the data path for the modem as shown. For example, the DPSV function can be very simple: the DPSV 836 only passes data path information that is processed and acknowledged by the DDR processor 114. The DPSV 836 is coupled to the DDR processor 114 to know the secret session key of the DDR processor data path and to receive acknowledgment from the DDR processor 114. How DDR processor 114 binds the secure data path channel to DPSV 836 and how DPSV 836 ensures that all 3G or 4G modem network service usage is properly monitored and processed Techniques are provided herein.

APU SEE(810)를 참조하면, 다양한 실시예들과 관련하여 본원에서 유사하게 설명된 바와 같이, 프로그램 서명 검증기(820), 비휘발성 메모리 I/O(822) 및 보안 실행 부팅 로더 및 업데이터(824)가 포함된다. APU SEE(810)는 또한 DDR 보안 실행 메모리(812)를 포함한다. DDR 보안 실행 메모리(812)는 나타낸 바와 같이 OS 스택 데이터 경로 인터페이스(816) 및 모뎀 버스 드라이버(826)을 경유한 모뎀 버스(818)로의 데이터 경로 통신들을 위한 모뎀 데이터 경로 인터페이스(818)를 통해 데이터 경로를 모니터링하기 위한 DDR 프로세서(114)를 포함한다. DDR 보안 실행 메모리(812)는 또한, 나타낸 바와 같이 그리고 본원에서 설명된 바와 유사하게, DDR 프로세서(114)로부터 서비스 프로세서 어플리케이션 프로그램(112)으로의 DDR 메일박스 데이터(810)를 제공하기 위한 DDR 프로세서 메일박스 인터페이스를 포함한다. 유사하게, DPSV(836)는 통신 채널로서 DPSV 메일박스 인터페이스(842)를 사용하여 DDR 프로세서(114)를 인증하고 둘 사이의 메시지 무결성 확인을 위해 사용되는 비밀 세션 키를 설정하게 된다. DDR 프로세서(114)와 DPSV(836) 사이의 보안 연결을 구현하기 위한 다양한 기술들이 본원에서 설명된다.Referring to APU SEE 810, a program signature verifier 820, a non-volatile memory I / O 822, and a secure execution boot loader and updater 824, as described herein similarly with respect to various embodiments, ). The APU SEE 810 also includes a DDR security enforcement memory 812. The DDR secure execution memory 812 is coupled to the data bus 812 via a modem data path interface 818 for data path communications to the modem bus 818 via the OS stack data path interface 816 and the modem bus driver 826, And a DDR processor 114 for monitoring the path. The DDR secure execution memory 812 also includes a DDR processor 810 for providing DDR mailbox data 810 from the DDR processor 114 to the service processor application program 112 as shown and as described herein. And a mailbox interface. Similarly, the DPSV 836 authenticates the DDR processor 114 using the DPSV mailbox interface 842 as a communication channel and establishes a secret session key that is used for message integrity verification between the two. Various techniques for implementing a secure connection between the DDR processor 114 and the DPSV 836 are described herein.

일부 실시예들에서, DDR 프로세서는, APU 기반 실시예들과 관련하여 상술한 바와 유사하게, APU 기반 실시예들의 보안 환경에서 실행한다. 일부 실시예들에서, 보안 환경은 DDR 프로세서 코드를 대체하거나 변경하는 어떠한 인증되지 않은 능력도 보장하지 않는다. 일부 실시예들에서, 보안 환경은 키와 같은, 민감한 암호 저장소에 접속하는 능력이 DDR 프로세서 이외의 코드에는 없다는 것을 또한 보장한다. 예를 들어, 이는 디버그 모니터링 및/또는 다른 모니터링/접속 활동들 또는 기술들로부터 민감한 저장소를 보호하는 것을 포함할 수 있다. 당업자에게 또한 명백한 바와 같이, DDR 프로세서만이 아닌, APU 펌웨어는 보안되어야 하고 비인증된 접속을 허용하도록 활용될 수 있는 오류들 또는 취약점들을 포함하지 않아야 한다. 예를 들어, 통상의 공격은, 공격자가 확인되지 않은 버퍼가 그 경계를 초과하도록 하는 입력을 선택하는, 버퍼 오버플로우이어서, 이는 공격자가 활용할 수 있는 의도되지 않는 행동을 초래한다.In some embodiments, the DDR processor executes in a secure environment of APU-based embodiments, similar to that described above in connection with APU-based embodiments. In some embodiments, the secure environment does not guarantee any unauthorized capability to replace or change the DDR processor code. In some embodiments, the secure environment also ensures that the ability to access sensitive cryptographic storage, such as keys, is not present in code other than the DDR processor. This may include, for example, protecting sensitive storage from debug monitoring and / or other monitoring / connection activities or techniques. As will also be apparent to those skilled in the art, the APU firmware, rather than only the DDR processor, should be free of errors or vulnerabilities that may be exploited to allow secure and unauthorized access. For example, a typical attack is a buffer overflow in which an attacker chooses an input that causes an unconfirmed buffer to exceed its boundary, resulting in an unintended behavior that an attacker can exploit.

유사하게, 일부 실시예들에서, DPSV는 보안 환경에서 실행한다. 일부 실시예들에서, 보안 환경은 DPSV 코드를 대체하거나 변경하는 어떠한 비인증된 능력도 보장하지 않는다. 일부 실시예들에서, 보안 환경은 키와 같은, 민감한 암호 저장소에 접속하는 능력이 DPSV 이외의 코드에는 없다는 것을 또한 보장한다. 일부 실시예들에서, 보안 환경은 DPSV의 적절한 암호 기능들과 인터페이스하는 임의의 코드 또는 DPSV 및 DDR 프로세서 사이의 통신들을 위한 능력이 없음을 더 보장한다. 예를 들어, 이는 디버그 모니터링 및/또는 다른 모니터링/접속 활동들 또는 기술들로부터 민감한 저장소를 보호하는 것을 포함할 수 있다. 당업자에게 또한 명백한 바와 같이, DPSV만이 아닌, MPU 펌웨어는 보안되어야 하고 비인증된 접속을 허용하도록 활용될 수 있는 오류들 또는 취약점들을 포함하지 않아야 한다. 예를 들어, 통상의 공격은, 공격자가 확인되지 않은 버퍼가 그 경계를 초과하도록 하는 입력을 선택하는, 버퍼 오버플로우이어서, 이는 공격자가 활용할 수 있는 의도되지 않는 행동을 초래한다.Similarly, in some embodiments, the DPSV runs in a secure environment. In some embodiments, the secure environment does not guarantee any unauthorized capability to replace or change the DPSV code. In some embodiments, the secure environment also ensures that the ability to connect to a sensitive cryptographic store, such as a key, is not present in code other than DPSV. In some embodiments, the secure environment further ensures that there is no code to interface with the appropriate cryptographic functions of the DPSV or the ability to communicate between the DPSV and the DDR processor. This may include, for example, protecting sensitive storage from debug monitoring and / or other monitoring / connection activities or techniques. As will also be apparent to those skilled in the art, the MPU firmware, other than only the DPSV, should be secure and should not contain any errors or vulnerabilities that could be exploited to allow unauthorized access. For example, a typical attack is a buffer overflow in which an attacker chooses an input that causes an unconfirmed buffer to exceed its boundary, resulting in an unintended behavior that an attacker can exploit.

일부 실시예들에서, APU는 본원에서 설명된 바와 같이 APU SEE에서 보안되는, DDR 프로세서 기능을 포함하는 데이터 경로 프로세서(DPP)를 포함한다. 일부 실시예들에서, APU DPP는 또한 다른 서비스 모니터링, 제어, 및 통지 기능들을 포함한다. 일부 실시예들에서, 모뎀은 APU DPP 및 모뎀 네트워크 데이터 경로 사이의 경로를 보안하는 데이터 경로 보안 검증기(DPSV)를 포함하여, 다른 소프트웨어, 펌웨어, 버스, 또는 포트들이 모뎀으로 접속함에도 불구하고 DPP 만이 모뎀에 상으로 전송할 수 있게 된다. 일부 실시예들에서, 모뎀 DPSV는 본원에서 설명된 기술들 및/또는 본원에서 설명된 다양한 실시예들의 관점에서 당업자에게 명백한 바와 같은 유사하거나 다른 기술들 중 하나 이상에 의해 APU DPP로 연결된다. 예를 들어, APU DPP는 디바이스 상에서 소프트웨어, 펌웨어, 버스 또는 포트들이 피해 갈 수 없는 모뎀 네트워크 연결로의 보안된 데이터 경로에 제공될 수 있다. 이는 하드웨어 디자인을 통한 하드웨어에 내장된 데이터 경로일 수 있거나 또는 APU DPP 아래의 모든 데이터 경로 요소들을 위한 보안 펌웨어 또는 소프트웨어 실행 환경으로 보안된 데이터 경로일 수 있다. APU DPP 및 모뎀은 공개 키(public key) 및/또는 디지털 증명을 교환하고 이후 상호 인증을 위한 키 교환 프로세스를 실행하여 그 결과 메시지 무결성 확인을 위한 기초로서 사용될 비밀 공유 세션 키가 된다.In some embodiments, the APU includes a data path processor (DPP) that includes DDR processor functionality, secured in the APU SEE as described herein. In some embodiments, the APU DPP also includes other service monitoring, control, and notification functions. In some embodiments, the modem includes a Data Path Security Verifier (DPSV) that secures the path between the APU DPP and the modem network data path so that only DPPs are allowed to communicate with other software, firmware, buses, So that it can be transmitted to the modem. In some embodiments, the modem DPSV is coupled to the APU DPP by one or more of similar or other techniques as will be apparent to those skilled in the art in view of the techniques described herein and / or the various embodiments described herein. For example, the APU DPP can be provided on a secure data path to a modem network connection where the software, firmware, bus or ports on the device can not be avoided. This may be a data path embedded in the hardware through hardware design or it may be a secured data path to a security firmware or software execution environment for all data path elements under the APU DPP. The APU DPP and the modem exchange public keys and / or digital certificates and then execute a key exchange process for mutual authentication, resulting in a secret shared session key to be used as a basis for message integrity verification.

일단 비밀 공유 세션 키가 APU DPP 및 DSPV 사이에서 설정되면, APU DPP는 세션 키를 이용하여 전송될 각 프레임에서 무결성 확인을 첨부하고 모뎀은 세션 키를 이용하여 무결성 확인을 승인한다. 모뎀은 전송될 유효한 무결성 확인을 갖는 프레임만을 허용하고, 유효한 무결성 확인을 포함하지 않는 프레임들을 차단하는데, 이는 APU DPP에 의해 처리되는 프레임들만이 전송됨을 의미한다. 유사하게, 모뎀 DPSV는 세션 키를 이용하여 각 수신된 프레임에 대해 무결성 확인을 첨부하게 되고, APU DPP는 세션을 이용하여 더 높은 계층(예를 들어, 어플리케이션 계층, 등)으로 전송되기 전에 무결성 확인을 승인하게 된다.Once a secret sharing session key is established between the APU DPP and the DSPV, the APU DPP attaches an integrity confirmation in each frame to be transmitted using the session key, and the modem acknowledges the integrity confirmation using the session key. The modem only allows frames with valid integrity checks to be sent and blocks frames that do not contain valid integrity checks, meaning that only frames processed by the APU DPP are transmitted. Similarly, the modem DPSV uses the session key to attach an integrity check for each received frame, and the APU DPP uses the session to verify integrity before being sent to a higher layer (e.g., application layer, etc.) .

일부 실시예들에서, DPSV 및 DPP 사이의 모뎀 하향흐름 데이터 경로 메시지들이 배열된다. 일부 실시예들에서, APU DPP 상향흐름 메시지는 하향흐름 시퀀스 정보를 포함하여 APU DPP가 모든 하향흐름 패킷을 수신하는 것을 모뎀 DPSV가 확인할 수 있게 되고, 그렇지 않다면, 모뎀 DPSV는 APU DPP에 알릴 수 있고, 서비스 제어기에 알릴 수 있고/있거나 접속을 제한 및/또는 다른 적절한 작동과 같은 조치를 취할 수 있다.In some embodiments, modem downlink flow data path messages between the DPSV and the DPP are arranged. In some embodiments, the APU DPP upflow message may include the downstream flow sequence information so that the modem DPSV can verify that the APU DPP receives all downstream packets, otherwise the modem DPSV can inform the APU DPP , Inform the service controller and / or take action, such as limiting the connection and / or other appropriate operations.

일부 실시예들에서, APU DPP는 보안 DDR들을 생성시키며 다양한 실시예들과 관련하여 본원에서 설명된 바와 같이 배열되고 보안된 방법으로 DDR들을 서비스 제어기로 전달한다.In some embodiments, the APU DPP generates secure DDRs and communicates the DDRs to the service controller in an arranged and secured manner as described herein in connection with various embodiments.

일부 실시예들에서, 서비스 프로세서 어플리케이션 및/또는 서비스 프로세서 커널 프로그램은 어떤 소켓/흐름들이 어떤 어플리케이션들에 속하는지에 대해 APU DPP에 알려(예를 들어, 어플리케이션 기반 서비스 사용 모니터링, 청구, 및/또는 제어를 위한 어떤 어플리케이션들과 관련이 있을 수 있거나 있어야 하는지) APU DPP는 어떤 어플리케이션이 과금, 트래픽 제어, 및/또는 사용자 통지 정책들에 대한 어플리케이션 분류 태그를 돕기 위해 트래픽을 생성하거나 수신하는 지를 알게 된다.In some embodiments, the service processor application and / or the service processor kernel program may inform the APU DPP about which sockets / flows belong to which applications (e.g., monitoring, billing, and / or controlling application- APU DPP knows which applications are generating or receiving traffic to assist with application classification tags for billing, traffic control, and / or user notification policies.

일부 실시예들에서, APU DPP는 다양한 기능들을 수행한다. 일부 실시예들에서, APU DPP는 DDR 프로세서 기능들을 수행할 수 있다. APU DPP는 과금 에이전트(Charging Agent, CA) 및/또는 정책 결정 에이전트(Policy Decision Agent, PDA)의 임의의 또는 모든 서비스 모니터링 기능들을 수행할 수 있다. APU DPP는 모든 네트워크 트래픽을 산출할 수 있어서, 일부 예들에서, 본원에서 설명된 바와 같이 어플리케이션 및/또는 목적지, NBS, 시각, 능동 네트워크, 및/또는 다양한 다른 기준들에 의해 트래픽을 분류한다. APU DPP는 과금 기록들을 생성시킬 수 있다. APU DPP는 과금 기록을 서비스 제어기(예를 들어, 또는 다른 네트워크 과금 기능) 및/또는 디바이스 통지 UI로 전달할 수 있다.In some embodiments, the APU DPP performs various functions. In some embodiments, the APU DPP may perform DDR processor functions. The APU DPP may perform any or all of the service monitoring functions of a Charging Agent (CA) and / or a Policy Decision Agent (PDA). The APU DPP can calculate all network traffic and, in some instances, classify traffic by application and / or destination, NBS, time of day, active network, and / or various other criteria as described herein. APU DPP can generate accounting records. The APU DPP may forward the accounting records to a service controller (e.g., or other network billing function) and / or a device notification UI.

일부 실시예들에서, APU DPP는 접속 제어기 기능들을 수행한다. 예를 들어, APU DPP는 서비스 프로세서 어플리케이션 및/또는 커널 프로그램에 어플리케이션 또는 목적지를 허용하거나 차단/제거 또는 배경화하도록 지시할 수 있다. 서비스 프로세서 어플리케이션 및/또는 커널 프로그램은 네트워크로의 어플리케이션 접속을 조작함으로써 또는 어플리케이션 프로그램 부팅/시작 시퀀스를 차단함으로써 또는 어플리케이션을 중단/재개함으로부터 어플리케이션을 허용/차단 또는 배경화할 수 있다. 서비스 프로세서 어플리케이션 및/또는 커널 프로그램은 OS(예를 들어, 안드로이드 활동 관리 및/또는 서비스 관리 기능)에서 어플리케이션 관리 기능들을 다시 프로그래밍하거나 차단함으로써 차단 기능을 수행할 수 있다. APU DPP는 서비스 프로세서 어플리케이션/커널 프로그램에 어플리케이션 및/또는 트래픽을 제어하도록 지시하거나 또는 DPP에서 직접적으로 트래픽을 제어한다. APU DPP는 다양한 실시예들과 관련하여 본원에서 설명된 바와 같이 정책 집행 기능을 수행할 수 있다.In some embodiments, the APU DPP performs access controller functions. For example, the APU DPP may instruct the service processor application and / or the kernel program to allow or block / remove or background applications or destinations. A service processor application and / or a kernel program may allow / block or background applications by manipulating application connections to the network or by blocking application program boot / start sequences, or by suspending / resuming applications. The service processor application and / or the kernel program may perform blocking functions by reprogramming or blocking application management functions in the OS (e.g., Android activity management and / or service management functions). The APU DPP instructs the service processor application / kernel program to control the application and / or traffic, or the DPP directly controls the traffic. The APU DPP may perform policy enforcement functions as described herein with respect to various embodiments.

일부 실시예들에서, APU DPP는 NBS 모니터링 기능 및/또는 보고 기능들을 수행할 수 있다. 예를 들어, APU DPP는 NBS, 모뎀 성능 파라미터, 링크에 포함된 네트워크 자산 및/또는 지리적 위치 정보를 검출할 수 있다.In some embodiments, the APU DPP may perform NBS monitoring and / or reporting functions. For example, the APU DPP may detect NBS, modem performance parameters, network assets included in the link, and / or geographical location information.

일부 실시예들에서, APU DPP는 "보안" 핑-루프(ping-loop) 시스템으로 네트워크로부터 네트워크 시간을 얻어 네트워크 시간 스탬프가 차단되거나 지연되지 않음을 검증한다. 예를 들어, APU DPP가 신뢰성 있는 지역 시계를 가지거나 혹은 보고가 시작되고/되거나 중단될 때 마다 핑-루프를 수행할 수 있다.In some embodiments, the APU DPP obtains network time from the network with a " secure " ping-loop system to verify that the network time stamp is not blocked or delayed. For example, the APU DPP can perform a ping-loop whenever it has a reliable local clock or whenever reporting is started and / or stopped.

APU DDR 프로세서 및 MPU DPSV 실시예들에서 보안 실행 환경(SEE) 구현의 예들은 APU 실시예들에서 다양한 보안 실행 환경(SEE) 구현을 위해 위에서 설명한 바와 유사한 예들을 포함한다. 특정 예들은 또한 아래에서 열거된다. 예시적인 상업적으로 구입 가능한 APU 예시는 다음을 포함한다: TPM 서포트를 포함하는 Intel Trusted Execution Technology를 가지는 Intel Atom(예를 들어, Z5xx, Z6xx, D4xx, D5xx 시리즈) 기반 솔루션들; 및 ARM Trusted Zone Architecture를 가지는 ARM 기반 솔루션들. 예시적인 APU 상세 요구사항 또한 일반적인 하드웨어 보안 블록들(예를 들어, AES, DES, RSA, Diffie-Hellman, SHA 및 랜덤 생성기)을 포함할 수 있다. 예시적인 상업적으로 구입 가능한 MPU 다음을 포함한다: EVDO 칩셋 기반 솔루션들(예를 들어, 많은 일반적인 하드웨어 암호 블록들을 가지는 ARM Trusted Zone Architecture를 포함하는, ARM11-기반 CPU 아키텍쳐); HSPA 칩셋 기반 솔루션들(예를 들어, 많은 일반적인 하드웨어 암호 블록들을 가지는 ARM Trusted Zone Architecture를 포함하는, Snapdragon/ARM 기반 CPU 아키텍쳐); 및 LTE 칩셋 기반 솔루션들(많은 일반적인 하드웨어 암호 블록들을 가지는 ARM Trusted Zone Architecture를 포함하는, Snapdragon/ARM 기반 CPU 아키텍쳐).Examples of Security Execution Environment (SEE) implementations in the APU DDR processor and MPU DPSV embodiments include examples similar to those described above for various Security Execution Environment (SEE) implementations in APU embodiments. Specific examples are also listed below. Exemplary commercially available APU examples include: Intel Atom (e.g., Z5xx, Z6xx, D4xx, D5xx series) based solutions with Intel Trusted Execution Technology including TPM support; And ARM-based solutions with ARM Trusted Zone Architecture. Exemplary APU detailed requirements may also include generic hardware security blocks (e.g., AES, DES, RSA, Diffie-Hellman, SHA and random generator). Exemplary commercially available MPUs include: EVDO chipset based solutions (e.g., an ARM11-based CPU architecture, including ARM Trusted Zone Architecture with many common hardware cipher blocks); HSPA chipset based solutions (eg Snapdragon / ARM based CPU architecture, including ARM Trusted Zone Architecture with many common hardware cipher blocks); And LTE chipset-based solutions (Snapdragon / ARM-based CPU architecture, including ARM Trusted Zone Architecture with many common hardware cipher blocks).

도 9는 일부 실시예들에 따라 MPU 구현에서 가입자 식별 모듈(SIM) 및 데이터 경로 보안 검증기(DPSV)에서 보안 내장된 DDR 프로세서를 위한 아키텍쳐를 나타낸다. 특히, 도 9에서 나타낸 바와 같이, DDR 프로세서(114)는 SIM SEE(918)에 내장되며, 그리고 데이터 경로 보안 검증기(DPSV)(936)는 MPU 칩셋 SEE(932) (예를 들어, 3G 또는 4G MPU 칩셋 SEE)에 내장된다. 메일박스 기능을 포함하는, 본원에서 유사하게 설명된 것들과 같은 APU로부터의 데이터 통신들은, 나타낸 바와 같이 모뎀과 SIM 버스(912)를 이용하는 SIM 버스 드라이버(911)를 이용하여 통신한다.9 illustrates an architecture for a secure embedded DDR processor in a Subscriber Identity Module (SIM) and a Data Path Security Validator (DPSV) in an MPU implementation in accordance with some embodiments. 9, the DDR processor 114 is embedded in the SIM SEE 918 and the data path security verifier (DPSV) 936 is coupled to the MPU chipset SEE 932 (e.g., 3G or 4G MPU chipset SEE). Data communications from the APU, such as those similarly described herein, including the Mailbox function, communicate using the SIM bus driver 911 using the modem and SIM bus 912 as shown.

도 9에서 나타낸 바와 같이, 제1 SEE(918)은 SIM(913)에서 구현되는데, 이는 모뎀과 SIM 버스(912)로부터 SIM 버스 드라이버(916)로, 본원에서 설명된 바와 유사하게 OS 스택 데이터 경로 인터페이스(924) 및/또는 모뎀 데이터 경로 인터페이스(926)를 이용하여, 통신을 안전하게 모니터링하기 위한 DDR 프로세서(114)를 포함한다. 메일박스 기능은 나타낸 바와 같이 DDR 프로세서 메일박스 인터페이스(922), DDR 메일박스 데이터(914) 및 DDR 메일박스 데이터(910)를 이용하여 본원에서 설명된 바와 유사하게 제공된다.9, a first SEE 918 is implemented in the SIM 913, which is connected to the SIM bus driver 916 from the modem and the SIM bus 912 to the OS stack data path < RTI ID = 0.0 > Interface 924 and / or a modem data path interface 926 to monitor communications securely. The Mailbox function is provided similar to that described herein using a DDR Processor Mailbox Interface 922, DDR Mailbox Data 914, and DDR Mailbox Data 910, as shown.

도 9에서 또한 나타낸 바와 같이, 모뎀 및 3G/4G 모뎀 버스 드라이버(934)에 대한 SIM 버스(913)를 통해 3G/4G 모뎀 데이터 경로 및 신호 처리 요소(928)까지의 데이터 경로 통신은 본원에서 설명된 바와 같은 모뎀 SIM 데이터 보안 검증기(936)를 이용하여 모니터링된다. 모뎀 SIM 데이터 보안 검증기(936)는 나타낸 바와 같이 모뎀 칩셋/MPU(930)의 모뎀 칩셋 SEE(932)에서 구현된다. 부가적으로, 메시지 무결성 확인을 위한 기초로서 사용되는 비밀 세션 키의 설정과 인증을 위해 SIM 내에서 DDR 프로세서가 될 최종 목적지설정인 APU에 통신 채널을 제공하는 DPSV 메일박스(842)가 있다.The data path communication to the 3G / 4G modem data path and signal processing element 928 via the SIM bus 913 to the modem and the 3G / 4G modem bus driver 934, as also shown in FIG. 9, Lt; RTI ID = 0.0 > SIM < / RTI > data security verifier 936 as described above. The modem SIM data security verifier 936 is implemented in the modem chipset SEE 932 of the modem chipset / MPU 930 as shown. Additionally, there is a DPSV mailbox 842 that provides a communication channel to the APU, which is the final destination setting in the SIM to be the DDR processor, for setting up and authenticating the secret session key used as the basis for message integrity verification.

일부 실시예들에서, SIM은 SIM SEE에서 보안되는 DDR 기능을 내장한 데이터 경로 프로세서(DPP)를 포함한다. 예를 들어, SIM DPP는 다른 서비스 모니터링, 제어 및 통지 기능들을 또한 포함할 수 있다. 일부 실시예들에서, 모뎀은, SIM DPP와 모뎀 네트워크 데이터 경로 사이의 경로를 보안하여 다른 소프트웨어, 펌웨어, 버스들 또는 포트들이 모뎀에 접속을 하더라도 DPP만이 모뎀 상에서 전송할 수 있게 하는 데이터 경로 보안 검증기(DPSV)를 포함한다.In some embodiments, the SIM includes a data path processor (DPP) with embedded DDR functionality secured in the SIM SEE. For example, the SIM DPP may also include other service monitoring, control and notification functions. In some embodiments, the modem includes a data path security verifier (e.g., a data path security verifier) that allows the DPP to transmit on the modem even if other software, firmware, busses, or ports connect to the modem by securing the path between the SIM DPP and the modem network data path DPSV).

일부 실시예들에서, 모뎀 DPSV는 본원에서 설명된 다양한 실시예들의 관점에서 당업자에게 명백한 바와 같은 다음의 기술들 및/또는 유사하거나 다른 기술들 중 하나에 의해 SIM DPP에 연결된다.In some embodiments, the modem DPSV is connected to the SIM DPP by one of the following techniques and / or similar or other techniques as will be apparent to those skilled in the art in view of the various embodiments described herein.

예를 들어, SIM DPP는 디바이스에서의 소프트웨어, 펌웨어, 버스들 또는 포트들이 피할 수 없는 모뎀 네트워크 연결로의 보안된 데이터 경로에서 제공될 수 있다. 보안된 데이터 경로는 SIM DPP 아래의 모든 데이터 경로 요소들에 대한 보안 펌웨어 또는 소프트웨어 실행 환경으로 보안되는 하드웨어 디자인 또는 데이터 경로를 통한 하드웨어에 내장된 데이터 경로일 수 있다. 일부 실시예들에서, DPSV(936) 및 DDR 프로세서(114) 사이의 통신은 본원에서 설명된 것들과 같이, 다양한 보안 통신 기술들을 이용하여 보안된다. 일부 실시예들에서, DPSV는 고유의 비밀/공개 키 쌍 및 그 공개 키가 진짜임을 증명하는 디지털 증명(cert)을 가진다. DDR 프로세서는 고유의 비밀/공개 키 쌍 및 그 공개 키가 진짜임을 증명하는 디지털 증명(cert)을 가진다. DPSV와 DDR 프로세서는 공개 키와 증명을 교환하여, 서로 인증하고 공유된 비밀 세션 키를 초래하는 키 교환 프로세스를 실행한다. DDR 프로세서는 디바이스 OS 네트워킹 스택으로부터 상향흐름 네트워크 데이터 흐름들을 수신하고, 세션 키를 이용하여, DDR 프로세서는 DPSV로 전송한 각 상향흐름 데이터 메시지에 무결성 확인을 첨부한다. DPSV는 DDR 프로세서로부터 유효한 무결성 확인을 가지지 않는 임의의 상향흐름 데이터 경로 정보를 차단하고, 그것이 유효하지 않은 상향흐름 데이터를 수신하고 있다는 것을 DDR 프로세서에 알림으로써, DDR 프로세서가 가능한 사기 이벤트를 서비스 제어기에 알릴 수 있다. DPSV는 하향흐름 네트워크 데이터 흐름을 수신하고, 세션 키를 이용하여, 그것이 DDR 프로세서로 전송하는 각 하향흐름 데이터 메시지에 무결성 확인을 첨부한다. 각 하향흐름 데이터 메시지는, 예를 들어, 배열되어 데이터 메시지는 DDR 프로세서에 의해 검출됨 없이 차단되거나 재실행될 수 없다. 만일, DDR 프로세서가 유효하지 않은 무결성 확인을 가진 하향흐름 데이터 메시지를 수신한다면, DDR 프로세서는 메시지를 거부하고 가능한 사기 이벤트를 서비스 제어기에 알린다. DDR 프로세서는 그것이 DPSV에 전송하는 다음 상향흐름 데이터 메시지에서 각각의 거부되지 않은 하향흐름 데이터 메시지를 인정한다. DPSV가 하향흐름 데이터 메시지 인정을 수신하는 것을 중단한다면, 그것은 하향흐름 네트워크 데이터 흐름들을 차단하고 DDR 프로세서에 알려 DDR 프로세서가 가능한 사기 이벤트를 서비스 제어기에 알리게 된다. DDR 프로세서는 다양한 실시예와 관련하여 본원에서 설명된 바와 같은 서비스 프로세서에 의해 서비스 제어기로 DDR 보고들을 안전하게 전송한다.For example, a SIM DPP may be provided in a secured data path to a modem network connection where software, firmware, busses or ports on the device are inevitable. The secured data path may be a data path embedded in the hardware through a hardware design or data path secured with security firmware or software execution environment for all data path elements under the SIM DPP. In some embodiments, communication between the DPSV 936 and the DDR processor 114 is secured using various secure communication technologies, such as those described herein. In some embodiments, the DPSV has a unique secret / public key pair and a digital certificate (cert) that verifies that the public key is genuine. The DDR processor has a unique secret / public key pair and a digital certificate certifying that the public key is authentic. DPSV and DDR processors exchange public keys and certificates to authenticate each other and execute a key exchange process that results in a shared secret session key. The DDR processor receives upstream network data flows from the device OS networking stack and uses the session key to attach an integrity check to each upflow data message sent by the DDR processor to the DPSV. The DPSV intercepts any upward flow data path information that does not have a valid integrity check from the DDR processor and informs the DDR processor that it is receiving invalid upstream data so that the DDR processor can send fraud events to the service controller Can be informed. The DPSV receives the downlink network data flow and attaches an integrity check to each downflow data message it sends to the DDR processor using the session key. Each downlink flow data message is, for example, arranged such that the data message can not be blocked or replayed without being detected by the DDR processor. If the DDR processor receives a downflow data message with an invalid integrity check, the DDR processor rejects the message and notifies the service controller of possible fraud events. The DDR processor acknowledges each unacknowledged downflow data message in the next upflow data message it sends to the DPSV. If the DPSV stops receiving downstream data message acknowledgments, it blocks downstream network data flows and informs the DDR processor that the DDR processor is aware of possible fraud events to the service controller. The DDR processor securely transmits DDR reports to the service controller by the service processor as described herein in connection with various embodiments.

일부 실시예들에서, DPSV와 DPP 사이의 모뎀 하향흐름 데이터 경로 메시지들이 배열된다. 일부 실시예들에서, SIM DPP 상향흐름 메시지들은 하향흐름 시퀀스 정보를 포함하여 모뎀 DPSV가 SIM DPP가 모든 하향흐름 패킷들을 수신하게 됨을 확정할 수 있게 되며, 그렇지 않은 경우 모뎀 DPSV가 SIM DPP에 알리고, 서비스 제어기에 알리고, 및/또는 제한 접속 또는 다른 적절한 작동(들)과 같은 작동을 취할 수 있게 된다.In some embodiments, the modem downstream flow data path messages between the DPSV and the DPP are arranged. In some embodiments, the SIM DPP upflow messages include downstream flow sequence information so that the modem DPSV can determine that the SIM DPP will receive all downstream packets, otherwise the modem DPSV informs the SIM DPP, Inform the service controller, and / or take action, such as a limited connection or other appropriate operation (s).

일부 실시예들에서, SIM-MPU 인터페이스는 물리적 인터페이스(예를 들어, 버스)이다. 일부 실시예들에서, SIM-MPU 인터페이스는 논리적 인터페이스(예를 들어, 신뢰되지 않는 APU를 경유함)이다. 일부 실시예들에서, SIM은 임의의 디바이스 처리 요소(예를 들어, SIM, 비디오 프로세서, 오디오 프로세서, 디스플레이 프로세서 등)에 내장된 논리적으로 독립 보안 하드웨어 모듈(예를 들어, 보안 실행 환경의 일부)이다. In some embodiments, the SIM-MPU interface is a physical interface (e.g., bus). In some embodiments, the SIM-MPU interface is a logical interface (e.g., via an untrusted APU). In some embodiments, the SIM is a logically independent security hardware module (e.g., part of a secure execution environment) embedded in any device processing element (e.g., SIM, video processor, audio processor, to be.

일부 실시예들에서, SIM 및 MPU 교환은 몇 가지 구성요소들을 포함한다. 일부 실시예들에서, MPU 및 SIM 각각은 증명이 있는 그들 자체의 공개/비밀 암호화 키 쌍을 가진다. 일부 실시예들에서, MPU 및 SIM은 키 교환 프로토콜을 이용하여 키들을 교환한다. 일부 실시예들에서, 이러한 키 교환은 MPU와 SIM 사이의 물리적 버스 상에서 일어난다. 일부 실시예들에서, 이러한 키 교환은 논리적 버스(예를 들어 신뢰되지 않는 APU를 경유함)를 통해 일어난다. 이러한 키 교환 프로토콜은 기술 분야에서 잘 알려져 있고 본원에서 설명되지는 않았다. 일부 실시예들에서, MPU와 SIM이 증명들을 이용하여 상호간에 인증된 키들을 가진 후, 그것들이 공유 세션 키를 설정한다. 일부 실시예들에서, MPU 및 SIM은 전송 카운트 값을 0으로, 수신 카운트 값을 0으로, 최대 전송 카운트 값을 정수 N으로, 그리고 최대 수신 카운트 값을 정수 M으로 초기화한다. 일부 실시예들에서, M과 N의 값은 동일하다. 일부 실시예들에서, M과 N의 값은 구현-의존적이고 MPU의 수신에 기초하여 판단될 수 있고 패킷 처리 능력을 전송한다. 예를 들어, M을 3으로 N을 2로 선택함에 의해, SIM 블록은 세 개 이하의 수신된 패킷 후에 그리고 늦어도 두 개의 전송된 패킷 이후에 MPU로부터 ACK 프레임을 얻을 것으로 예상한다; 그렇지 않은 경우 SIM은 사기가 발생했다고 판단하고 네트워크 요소에 알린다.In some embodiments, the SIM and MPU exchanges include several components. In some embodiments, the MPU and SIM each have their own public / secret encryption key pair with proof. In some embodiments, the MPU and SIM exchange keys using a key exchange protocol. In some embodiments, this key exchange occurs on the physical bus between the MPU and the SIM. In some embodiments, this key exchange occurs via a logical bus (e.g., via an untrusted APU). Such key exchange protocols are well known in the art and have not been described herein. In some embodiments, the MPU and the SIM have mutually authenticated keys using the certificates, then they establish a shared session key. In some embodiments, the MPU and SIM initialize the transfer count value to zero, the receive count value to zero, the maximum transfer count value to the integer N, and the maximum receive count value to the integer M. In some embodiments, the values of M and N are the same. In some embodiments, the values of M and N are implementation-dependent and can be determined based on the reception of the MPU and transmit packet processing capability. For example, by choosing M = 3 and N = 2, the SIM block expects to get an ACK frame from the MPU after three or fewer received packets and after at least two transmitted packets; Otherwise, the SIM determines that fraud has occurred and informs the network element.

일부 실시예들에서, MPU는 SIM 처리 요구사항들을 줄이기 위해 전송 프레임의 관련 부분만을 각 나가는 패킷을 위한 SIM으로 전송한다. 일부 실시예들에서, 전송 프레임들의 관련 부분은 헤더(header), 전송 카운트, 및 무결성 확인을 포함한다. 일부 실시예들에서, 헤더는 소스와 목적지 주소, 소스와 목적지 포트들, 프로토콜 태그, 및 바이트 패킷 길이 중 하나 이상과 같은 정보를 포함한다. 일부 실시예들에서, 전송 카운트는 전송된 프레임들을 세고 각 전송 프레임들로 증가들을 센다. 일부 실시예들에서, 무결성 확인은 세션 키, 헤더 및 전송 카운트 중 하나 이상을 해싱(hashing)함에 의해 판단된다.In some embodiments, the MPU sends only the relevant portion of the transmission frame to the SIM for each outgoing packet to reduce SIM processing requirements. In some embodiments, the relevant portion of the transmission frames includes a header, a transmission count, and an integrity check. In some embodiments, the header includes information such as one or more of a source and destination address, source and destination ports, a protocol tag, and a byte packet length. In some embodiments, the transmission counts the transmitted frames and counts increments with each transmission frame. In some embodiments, integrity verification is determined by hashing at least one of a session key, a header, and a transfer count.

일부 실시예들에서, MPU는 또한 수신 프레임의 관련 부분만을 각 들어오는 패킷을 위한 SIM으로 전송한다. 일부 실시예들에서, 수신 프레임들의 관련 부분은 헤더(header), 전송 카운트, 및 무결성 확인을 포함한다. 일부 실시예들에서, 헤더는 전송 프레임 헤더(예를 들어, 소스 및 목적지 주소, 소스와 목적지 포트들, 프로토콜 태그, 및 바이트 패킷 길이 중 하나 이상)와 동일하다. 일부 실시예들에서, 수신은 각 수신된 프레임으로 증가를 센다. 일부 실시예들에서, 무결성 확인은 세션 키, 헤더 및 전송 카운트 중 하나 이상을 해싱함에 의해 판단된다.In some embodiments, the MPU also transmits only the relevant portion of the received frame to the SIM for each incoming packet. In some embodiments, the relevant portion of the received frames includes a header, a transmission count, and an integrity check. In some embodiments, the header is the same as a transport frame header (e.g., one or more of source and destination addresses, source and destination ports, protocol tag, and byte packet length). In some embodiments, reception counts an increase in each received frame. In some embodiments, integrity verification is determined by hashing at least one of a session key, a header, and a transfer count.

일부 실시예들에서, 프레임 인정(예를 들어, ACK)는 최대 전송 카운트, 최대 수신 카운트, 및 무결성 확인의 합이다. 일부 실시예들에서, 최대 전송 카운트는 (전송 카운트 + N)으로 설정되는데, 여기서 전송 카운트는 가장 최근 전송 프레임으로부터의 전송 카운트이다. 일부 실시예들에서, 최대 수신 카운트는 (수신 카운트 + M)으로 설정되는데, 여기서 수신 카운트는 가장 최근 수신된 프레임으로부터의 수신 카운트이다. 일부 실시예들에서, 무결성 확인은 세션 키, 최대 전송 카운트 및 최대 수신 카운트 중 하나 이상의을 해싱함에 의해 판단된다. In some embodiments, the frame acknowledgment (e.g., ACK) is the sum of the maximum transmission count, the maximum reception count, and the integrity check. In some embodiments, the maximum transfer count is set to (transfer count + N), where the transfer count is the transfer count from the most recent transfer frame. In some embodiments, the maximum reception count is set to (reception count + M), where the reception count is the reception count from the most recently received frame. In some embodiments, integrity verification is determined by hashing at least one of a session key, a maximum transmission count, and a maximum reception count.

일부 실시예들에서, MPU와 SIM 사이의 인터페이스는 논리적 채널(예를 들어, 신뢰되지 않는 APU를 경유)이다. 일부 실시예들에서, 전송 측면에서 APU는 SIM을 전송 프레임 헤더(예를 들어, 소스 및 목적지 주소, 소스와 목적지 포트들, 프로토콜 태그, 및 바이트 패킷 길이 중 하나 이상)만으로 전송한다. 일부 실시예들에서, SIM은 APU로 전송 카운트, 최대 수신 카운트(예를 들어, 수신 카운트 + M) 및 무결성 확인을 반송한다. 일부 실시예들에서, SIM은 매 전송된 프레임을 위한 전송 카운트의 값을 증가시킨다. 일부 실시예들에서, SIM은 세션 키, 헤더 및 전송 프레임 카운트 및 최대 수신 카운트 중 하나 이상을 해싱함에 의해 무결성 확인을 판단한다. 일부 실시예들에서, APU는 헤더와 프레임 본체를 SIM-전달 전송 카운트, 최대 수신 카운트 및 무결성 확인에 첨부하고 그 결과를 MPU에 전송한다. 일부 실시예들에서, MPU는 무결성 확인을 한번에 통과하는 프레임들만을 전송한다. 이러한 실시예들에서, MPU는 최대 전송 카운트를 사용하지 않을 수 있다.In some embodiments, the interface between the MPU and the SIM is a logical channel (e. G., Via an untrusted APU). In some embodiments, in terms of transmission, the APU transmits the SIM only in a transport frame header (e.g., one or more of source and destination addresses, source and destination ports, protocol tag, and byte packet length). In some embodiments, the SIM returns a transfer count, a maximum receive count (e.g., receive count + M), and an integrity check to the APU. In some embodiments, the SIM increases the value of the transfer count for each transmitted frame. In some embodiments, the SIM determines integrity verification by hashing at least one of a session key, a header and a transmission frame count, and a maximum reception count. In some embodiments, the APU attaches the header and frame body to the SIM-delivery transfer count, maximum receive count and integrity check and sends the result to the MPU. In some embodiments, the MPU transmits only frames that pass integrity confirmation at one time. In these embodiments, the MPU may not use the maximum transfer count.

일부 실시예들에서, MPU와 SIM 사이의 인터페이스는 논리적 채널(예를 들어, 신뢰되지 않는 APU를 경유)이다. 일부 실시예들에서, 수신 측면에서 MPU는 APU로 헤더(예를 들어, 소스 및 목적지 주소, 소스와 목적지 포트들, 프로토콜 태그, 및 바이트 패킷 길이 중 하나 이상), 수신 카운트, 무결성 확인 및 프레임 본체를 전송한다. 일부 실시예들에서, 수신 카운트는 매 수신된 패킷에 대해 증가된다. 일부 실시예들에서, 무결성 확인은 세션 키, 헤더 및 수신 카운트 중 하나 이상을 해싱함에 의해 판단된다. 일부 실시예들에서, APU는 헤더(예를 들어, 소스 및 목적지 주소, 소스와 목적지 포트들, 프로토콜 태그, 및 바이트 패킷 길이 중 하나 이상), 수신 카운트, 및 무결성 확인만을 SIM으로 전송한다. 일부 실시예들에서, MPU는 SIM 확인 피드백을 얻기 전에 하나 보다 많은 수신 프레임을 처리할 수 있다. 일부 실시예들에서, SIM ACK 프레임(예를 들어, 최대 수신 카운트의 표시)가 본원에서 설명된 바와 같이 프레임으로 피기백된다.In some embodiments, the interface between the MPU and the SIM is a logical channel (e. G., Via an untrusted APU). In some embodiments, the MPU on the receive side receives a header (e.g., one or more of source and destination addresses, source and destination ports, protocol tags, and byte packet length), receive count, . In some embodiments, the reception count is incremented for each received packet. In some embodiments, integrity verification is determined by hashing at least one of a session key, a header, and a reception count. In some embodiments, the APU transmits only the header (e.g., source and destination addresses, source and destination ports, protocol tag, and / or byte packet length), receive count, and integrity confirmation to the SIM. In some embodiments, the MPU may process more than one received frame before obtaining the SIM acknowledgment feedback. In some embodiments, a SIM ACK frame (e.g., a representation of a maximum received count) is piggybacked into a frame as described herein.

일부 실시예들에서, MPU는 전체 데이터 프레임을 SIM으로 전송하고, SIM은 무결성 확인을 첨부하여 전송 측면과 수신 측면에서 승인되도록 한다. 일부 실시예들에서, DSPV 엔진은 무결성 확인을 데이터 프레임들에 추가하고 그들을 SIM에 전송한다. 이러한 실시예들에서, SIM은 APU와 인터페이스하고, SIM(DDR 프로세서)는 데이터 교환의 중간에 있게 된다.In some embodiments, the MPU sends the entire data frame to the SIM, which allows the SIM to be acknowledged in terms of transmission and reception with integrity confirmation attached. In some embodiments, the DSPV engine adds integrity checks to the data frames and sends them to the SIM. In these embodiments, the SIM interfaces with the APU, and the SIM (DDR processor) is in the middle of data exchange.

일부 실시예들에서, 각 전송 프레임에서, MPU는 전송 카운트를 증가시키고 그 값을 가장 최근 프레임 인정으로부터 얻어지는 바와 같은 최대 전송 카운트의 값과 비교한다. 일부 실시예들에서, 만일 전송 카운트가 최대 전송 카운트보다 크다면, MPU는 SIM이 유효한 전송 프레임 데이터를 수신하지 않았음을 판단한다. 일부 실시예들에서, MPU는 SIM이 유효한 전송 프레임 데이터를 수신하지 않았다고 판단한 후 사기가 발생했음을 네트워크 요소(예를 들어, 서비스 제어기와 같은 신뢰되는 전체)에 알린다.In some embodiments, in each transmission frame, the MPU increases the transmission count and compares the value with a value of the maximum transmission count as obtained from the most recent frame acknowledgment. In some embodiments, if the transmission count is greater than the maximum transmission count, the MPU determines that the SIM has not received valid transmission frame data. In some embodiments, the MPU notifies the network element (e.g., a trusted whole, such as a service controller) that fraud has occurred after determining that the SIM has not received valid transmission frame data.

일부 실시예들에서, 만일 MPU가 프레임 인정에서 유효하지 않은 무결성 확인을 검출한다면, 또는 SIM이 전송 프레임에서 유효하지 않은 무결성 확인을 검출한다면, MPU 또는 SIM은 악의적 행위가 일어남을 판단한다. 일부 실시예들에서, MPU 또는 SIM이 악의적 행위가 일어남을 판단할 때, MPU 또는 SIM은 네트워크 요소(예를 들어, 서비스 제어기와 같은 신뢰되는 전체)로 사기가 발생했음을 알린다. 일부 실시예들에서, 만일 MPU 또는 SIM이 악의적 행위가 일어남을 판단하지 않았다면, SIM은 전송 프레임으로부터 헤더를 이용하여 DDR 데이터 컬렉션(collection)을 업데이트하고 네트워크 요소로 결과들을 보고한다.In some embodiments, if the MPU detects an integrity check that is not valid in frame acknowledgment, or if the SIM detects an integrity check that is not valid in the transmission frame, the MPU or SIM determines that a malicious action has occurred. In some embodiments, when the MPU or SIM determines that a malicious action has occurred, the MPU or SIM informs the network element (e.g., the trusted whole, such as a service controller) that fraud has occurred. In some embodiments, if the MPU or SIM has not determined malicious behavior to occur, the SIM updates the DDR data collection using the header from the transmission frame and reports the results to the network element.

일부 실시예들에서, 각 수신 프레임에서, MPU는 수신 카운트를 증가시키고 그 값을 가장 최근 프레임 인정으로부터 얻어지는 바와 같은 최대 전송 카운트의 값과 비교한다. 일부 실시예들에서, 만일 수신 카운트가 최대 수신 카운트보다 크다면, MPU는 SIM이 유효한 수신 프레임 데이터를 수신하지 않았음을 판단한다. 일부 실시예들에서, MPU는 SIM이 유효한 수신 프레임 데이터를 수신하지 않았음을 판단한 후 사기가 발생했음을 네트워크 요소(예를 들어, 서비스 제어기와 같은 신뢰되는 전체)에 알린다.In some embodiments, in each received frame, the MPU increases the reception count and compares the value with the value of the maximum transmission count as obtained from the most recent frame acknowledgment. In some embodiments, if the reception count is greater than the maximum reception count, the MPU determines that the SIM has not received valid received frame data. In some embodiments, the MPU determines that the SIM has not received valid received frame data and then notifies the network element (e.g., the trusted whole, such as a service controller) that fraud has occurred.

일부 실시예들에서, 만일 MPU가 프레임 인정에서 유효하지 않은 무결성 확인을 검출한다면, 또는 만일 SIM이 수신 프레임에서 유효하지 않은 무결성 확인을 검출한다면, MPU 또는 SIM은 악의적 행위가 일어남을 판단한다. 일부 실시예들에서, MPU 또는 SIM이 악의적 행위가 일어남을 판단할 때, MPU 또는 SIM은 네트워크 요소(예를 들어, 서비스 제어기와 같은 신뢰되는 전체)로 사기가 발생했음을 알린다. 일부 실시예들에서, 만일 MPU 또는 SIM이 악의적 행위가 일어남을 판단하지 않았다면, SIM은 수신 프레임으로부터 헤더를 이용하여 DDR 데이터 컬렉션을 업데이트하고 네트워크 요소로 결과들을 보고한다.In some embodiments, if the MPU detects an integrity check that is not valid in the frame acknowledgment, or if the SIM detects an invalid integrity check in the received frame, the MPU or SIM determines that a malicious action has occurred. In some embodiments, when the MPU or SIM determines that a malicious action has occurred, the MPU or SIM informs the network element (e.g., the trusted whole, such as a service controller) that fraud has occurred. In some embodiments, if the MPU or SIM has not determined that malicious activity has occurred, the SIM updates the DDR data collection using the header from the received frame and reports the results to the network element.

일부 실시예들에서, SIM DPP는 보안 DDR들을 생성시키고 보안 DDR들을 다양한 실시예들과 관련하여 본원에서 설명된 바와 같이 배열되고 안전한 방법으로 서비스 제어기로 전달한다.In some embodiments, the SIM DPP generates secure DDRs and communicates secure DDRs to the service controller in an arranged and secure manner as described herein in connection with various embodiments.

일부 실시예들에서, 서비스 프로세서 어플리케이션 및/또는 서비스 프로세서 커널 프로그램은 SIM DPP에 어느 소켓/흐름들이 어느 어플리케이션에 속하는지를 알려서 SIM DPP가 어느 어플리케이션이 과금, 트래픽 제어 및 통지 정책을 위한 어플리케이션 분류 태그에서 돕기 위해 트래픽을 생성시키거나 수신하는 지를 알게 된다.In some embodiments, the service processor application and / or the service processor kernel program may inform the SIM DPP which sockets / flows belong to which application so that the SIM DPP knows which application is in the application classification tag for billing, traffic control and notification policy You will know whether to generate or receive traffic to help.

일부 실시예들에서, SIM DPP는 본원에서 설명된 바와 같이, 다양한 기능들을 수행한다. 예를 들어, SIM DPP는 DDR 프로세서 기능들을 수행할 수 있다. SIM DPP는 임의의 또는 모든 과금 보조(CA) 및/또는 정책 결정 보조(PDA)의 서비스 모니터링 기능들을 수행할 수 있다. SIM DPP는 네트워크로 모든 트래픽을 세고, 일부 경우들에서, 어플리케이션 및/또는 목적지, NBS, 시각(time of day, TOD), 능동 네트워크, 및/또는 다양한 다른 기준에 의해 트래픽을 분류한다. SIM DPP는 과금 기록들을 생성시킬 수 있다. SIM DPP는 과금 기록들을 서비스 제어기(예를 들어, 또는 다른 네트워크 과금 기능) 및/또는 디바이스 통지 UI로 전달할 수 있다.In some embodiments, the SIM DPP performs a variety of functions, as described herein. For example, SIM DPP can perform DDR processor functions. The SIM DPP can perform service monitoring functions of any or all of the billing assistant (CA) and / or policy decision aid (PDA). The SIM DPP counts all traffic to the network and, in some cases, classifies traffic by application and / or destination, NBS, time of day (TOD), active network, and / or various other criteria. SIM DPP can generate accounting records. The SIM DPP may forward accounting records to a service controller (e.g., or other network billing function) and / or a device notification UI.

다른 예로서, SIM DPP는 다양한 접속 제어기 기능들을 수행할 수 있다. SIM DPP는 서비스 프로세서 어플리케이션 및/또는 커널 프로그램에 어플리케이션 또는 목적지를 허용하거나 차단/제거 또는 배경화하도록 지시할 수 있다. 서비스 프로세서 어플리케이션 및/또는 커널 프로그램은 네트워크로의 어플리케이션 접속을 조작함에 의해 또는 어플리케이션 프로그램 부팅/시작 시퀀스를 차단함으로써 또는 어플리케이션을 중단/재개함으로부터 어플리케이션을 허용하거나 차단/제거 또는 배경화할 수 있다. 서비스 프로세서 어플리케이션 및/또는 커널 프로그램은 OS(예를 들어, 안드로이드 구동 관리 및/또는 서비스 관리 기능)에서 어플리케이션 관리 기능들을 다시 프로그래밍하거나 차단함으로써 차단 기능을 수행할 수 있다. 예로서, SIM DPP는 서비스 프로세서 어플리케이션 및/또는 커널 프로그램에 어플리케이션 및/또는 트래픽을 제어하도록 지시하거나 또는 DPP에서 직접적으로 트래픽을 제어한다. SIM DPP는 본원에서 설명된 바와 같이 정책 집행 기능을 또한 수행할 수 있다.As another example, the SIM DPP can perform various access controller functions. The SIM DPP may instruct the service processor application and / or the kernel program to allow or block / remove or background applications or destinations. The service processor application and / or the kernel program may allow, block, remove or background applications by manipulating application connections to the network, by blocking application program boot / start sequences, or by suspending / resuming applications. The service processor application and / or the kernel program may perform blocking functions by reprogramming or blocking application management functions in the OS (e.g., Android drive management and / or service management functions). By way of example, the SIM DPP instructs the service processor application and / or the kernel program to control the application and / or traffic, or directly controls the traffic in the DPP. The SIM DPP may also perform policy enforcement functions as described herein.

또 다른 예로서, SIM DPP는 NBS 모니터링 및/또는 보고 기능들을 수행할 수 있다. SIM DPP는 NBS, 모뎀 성능 파라미터, 링크에 포함된 네트워크 자산, 및 지리적 위치를 검출할 수 있다.As another example, the SIM DPP may perform NBS monitoring and / or reporting functions. The SIM DPP can detect NBS, modem performance parameters, network assets included in the link, and geographic location.

또 다른 예로서, SIM DPP는 "보안" 핑-루프 시스템으로 네트워크로부터 네트워크 시간을 얻을 수 있어서 네트워크 시간 스탬프가 차단되고 지연되지 않음을 입증하게 된다. 예를 들어, SIM DPP는 지역의 신뢰성 있는 시계를 가지거나 또는 보고가 시작되고/되거나 중단되는 핑-루프 각 시간을 수행할 수 있다.As another example, the SIM DPP can obtain network time from the network with a " secure " ping-loop system, thereby proving that the network time stamp is blocked and not delayed. For example, a SIM DPP may have a local reliable clock or perform a ping-loop each time a report is started and / or stopped.

도 10은 일부 실시예들에 따라 MPU 구현에서 가입자 식별 모듈(SIM)과 데이터 경로 보안 검증기(DPSV)에서 보안 내장된 DDR 프로세서를 위한 다른 아키텍쳐를 나타낸다. 일부 어플리케이션에서, SIM 카드와 같이, APU 또는 MPU 칩 셋에 부착하는 독립 형 칩셋에 DDR 프로세서를 위치시키는 것이 바람직할 수 있다. 도 10은 일부 실시예에 따른 그러한 구현을 나타낸다. 예를 들어, 내장된 DDR 프로세서는 3G 또는 4G 무선 모뎀 칩셋에서 구현되는 데이터 경로 보안 검증기(DPSV)와 결합되는 스마트폰 APU 칩셋에서 구현될 수 있다. 10 illustrates another architecture for a secure embedded DDR processor in a subscriber identification module (SIM) and a data path security verifier (DPSV) in an MPU implementation in accordance with some embodiments. In some applications, it may be desirable to place the DDR processor in a stand-alone chipset that attaches to the APU or MPU chipset, such as a SIM card. Figure 10 illustrates such an implementation in accordance with some embodiments. For example, the embedded DDR processor can be implemented in a smartphone APU chipset combined with a Data Path Security Verifier (DPSV) implemented in a 3G or 4G wireless modem chipset.

일부 실시예들에서, DDR 프로세서와 모뎀 DPSV 사이의 하드웨어 또는 펌웨어 보안 데이터 경로는 도 10에서 나타낸 바와 같이 요구되지 않는데, 여기서 DDR 프로세서는 APU에서 데이터 경로 논리 채널 전달 기능을 제공함에 의해 그리고 SIM 데이터 버스 상에서의 연결을 위해 서비스 제어기와 DDR 프로세서 사이의 메일박스 데이터 통신 기능을 제공함에 의해 SIM 카드(예를 들어, 또는 다른 독립 형 보안 칩셋)에서 구현된다. 또한, 서비스 제어기로의 DDR 프로세서 보고는 하드웨어 지원형 보안 실행 환경(SEE)에서 보안되는 APU에서의 시스템 요소 어느 것과도 보안되지 않을 수 있다.In some embodiments, a hardware or firmware security data path between the DDR processor and the modem DPSV is not required, as shown in FIG. 10, where the DDR processor is enabled by providing the data path logical channel transfer function in the APU, (E. G., Or other stand-alone security chipset) by providing mailbox data communication between the service controller and the DDR processor for connection on the SIM card. In addition, the DDR processor report to the service controller may not be secure with any of the system elements in the APU secured in the hardware-assisted security execution environment (SEE).

도 10을 참조하면, 보안 DDR 프로세서(114)는 도 9와 관련하여 위에서 유사하게 설명한 바와 같이, 나타낸 바처럼 SIM에 있는 SIM 보안 실행 환경(1040)의 DDR 보안 실행 메모리(1042)에 위치된다. APU의 아키텍쳐는 도 9와 관련하여 위에서 나타내고 설명한 바와 유사한데, 다만 모뎀 버스 전달 기능으로의 APU SIM (1012) 및 APU 버스 드라이버 기능(1014)이 도 10에서 나타낸 바와 같이 APU 칩셋 커널 프로그램(1004)에 부가된다. 보안 DPSV(1026)는, 도 9와 관련하여 위에서 설명한 바와 유사하게, 3G/4G 모뎀 데이터 경로 및 신호 처리 요소들(1028)을 이용하여 3G/4G 모뎀 버스 드라이버로부터의 통신을 모니터링하기 위한 모뎀의 모뎀 칩셋 SEE(1024)에 위치된다. 그러나, 도 9와 비교하여 도 10에서는, MPU 및 SIM이 독립 통신 버스들을 통해 APU와 통신하는 분리 하드웨어 또는 칩셋들이다. 특히, MPU는 나타낸 바와 같이 APU 모뎀 버스 드라이버(1014)로의 3G/4G 모뎀 버스 드라이버(1022) 및 모뎀 버스 전달 기능(1012)으로의 APU SIM을 이용하여 모뎀 버스(1018)를 경유해서 APU와 통신한다. SIM은 SIM 버스 드라이버(1032)를 이용하여 SIM 버스 드라이버(1010)로 SIM 버스(1016)를 통해 APU와 통신한다. 또한, DPSV는 연결이 APU 내에서 설정된 SIM에서 DDR 프로세서(114)를 인증하기 위한 통신 채널로서 DPSV 메일박스(842)를 사용한다. 나타낸 바와 같이 APU는 두 개의 통신 채널들을 가진다: DDR 프로세서가 있는 제1 통신 채널 및 DPSV가 있는 제2 통신 채널.Referring to FIG. 10, the secure DDR processor 114 is located in the DDR secure execution memory 1042 of the SIM security enforcement environment 1040 in the SIM as shown above, similarly as described above with respect to FIG. The architecture of the APU is similar to that shown and described above with respect to FIG. 9 except that the APU SIM 1012 and the APU bus driver function 1014 to the modem bus transfer function are located in the APU chipset kernel program 1004, as shown in FIG. . The secure DPSV 1026 may also include a modem for monitoring communications from the 3G / 4G modem bus driver using the 3G / 4G modem data path and signal processing components 1028, similar to that described above in connection with FIG. Is located in the modem chipset SEE 1024. However, compared to FIG. 9, in FIG. 10, the MPU and SIM are separate hardware or chipsets that communicate with the APU via independent communication buses. In particular, the MPU communicates with the APU via the modem bus 1018 using the APU SIM to the 3G / 4G modem bus driver 1022 and modem bus transfer function 1012 to the APU modem bus driver 1014 as shown do. The SIM communicates with the APU via the SIM bus 1016 to the SIM bus driver 1010 using the SIM bus driver 1032. [ The DPSV also uses the DPSV mailbox 842 as a communication channel for authenticating the DDR processor 114 in the SIM where the connection is established within the APU. As shown, the APU has two communication channels: a first communication channel with a DDR processor and a second communication channel with a DPSV.

일부 실시예들에서, 제1 논리 통신 채널은 APU에서 서비스 프로세서 DDR 메일 박스(910)와 SIM에서의 DDR 메일박스(1034) 사이에서 SIM 버스(1016) 상에서 만들어지고, 이는 나타낸 바와 같이 SIM 버스 드라이버(1032)로의 DDR 메일박스 데이터(1034)에 대한 DDR 프로세서 메일박스 인터페이스(1044)를 이용하여 서비스 프로세서(예를 들어, 서비스 프로세서 어플리케이션 프로그램(112) 및/또는 서비스 프로세서 커널 프로그램(113))와 DDR 프로세서(114) 사이의 통신을 지원한다. 제2 논리 데이터 채널은 OS 네트워킹 스택 및 DDR 프로세서(114) 사이의 SIM 버스(1016) 상에서 만들어지고, 그리고 이는 또한 나타낸 바와 같이 SIM 버스 드라이버(1032)에 대한 OS 스택 데이터 경로 인터페이스(1046)를 이용하여 3G 또는 4G 네트워크와의 모든 OS 네트워킹 스택 통신을 위해 의도되는 논리 채널이다. 제3 논리 통신 채널은 SIM DDR 프로세서(114) 및 모뎀 DPSV(1026) 사이에 만들어진다. 나타낸 바와 같이, 제3 논리 통신 체널은 SIM 상에 위치한 SIM 버스 인터페이스(예를 들어, SIM 버스 드라이버(1032)에 대한 모뎀 데이터 경로 인터페이스), APU 상에 위치한 SIM 버스 드라이버(1010), APU 상에 위치한 모뎀 버스 전달 기능(1012)에 대한 SIM, APU 상에 위치한 모뎀 버스 드라이버(1014), 및 모뎀 상에 위치한 모뎀 버스 인터페이스(1022) 사이에 데이터를 전달함으로써 형성된다.In some embodiments, a first logical communication channel is created on the SIM bus 1016 between the service processor DDR mailbox 910 in the APU and the DDR mailbox 1034 in the SIM, (E.g., the service processor application program 112 and / or the service processor kernel program 113) using the DDR processor mailbox interface 1044 for the DDR mailbox data 1034 to the service processor 1032, DDR < / RTI > A second logical data channel is created on the SIM bus 1016 between the OS networking stack and the DDR processor 114 and which also uses the OS stack data path interface 1046 for the SIM bus driver 1032 as shown Is a logical channel intended for all OS networking stack communications with 3G or 4G networks. A third logical communication channel is created between the SIM DDR processor 114 and the modem DPSV 1026. As shown, the third logical communication channel includes a SIM bus interface (e.g., a modem data path interface to the SIM bus driver 1032) located on the SIM, a SIM bus driver 1010 located on the APU, A modem for the modem bus transfer function 1012 located, a modem bus driver 1014 located on the APU, and a modem bus interface 1022 located on the modem.

일부 실시예들에서, DPSV(1026)와 DDR 프로세서(114) 사이의 통신은 본원에서 설명된 바와 같이, 다양한 보안 통신 기술들을 이용하여 보안된다. 일부 실시예들에서, DPSV는 고유의 비밀/공개 키 쌍 및 그 공개 키가 진짜임을 증명하는 디지털 증명(cert)을 가진다. DDR 프로세서는 고유의 비밀/공개 키 쌍 및 그 공개 키가 진짜임을 증명하는 디지털 증명(cert)을 가진다. DPSV 및 DDR 프로세서는 공개 키들 및 증명들을 교환하여, 서로를 인증하는 키 교환 프로세스를 실행하고 공유된 비밀 세션 키를 초래한다. DDR 프로세서는 디바이스 OS 네트워킹 스택으로부터 상향흐름 네트워크 데이터 흐름들을 수신하고, 세션 키를 이용하여, DDR 프로세서는 DPSV에 전송하는 각 상향흐름 데이터 메시지로 무결성 확인을 첨부한다. DPSV는 DDR 프로세서로부터 유효한 무결성 확인을 가지지 않는 임의의 상향흐름 데이터 경로 정보를 차단하고, 그것이 유효하지 않은 상향흐름 데이터를 수신하고 있음을 DDR 프로세서에 알림으로써, DDR 프로세서가 가능한 사기 이벤트를 서비스 제어기에 알릴 수 있다. DPSV는 하향흐름 네트워크 데이터 흐름을 수신하고, 세션 키를 이용하여, DPSV는 DDR 프로세서로 전송하는 각 하향흐름 데이터 메시지로의 무결성 확인을 첨부한다. 각 하향흐름 데이터 메시지는, 예를 들어, 배열되어 데이터 메시지는 DDR 프로세서에 의해 검출됨 없이 차단되거나 재실행될 수 없다. 만일, DDR 프로세서가 유효하지 않은 무결성 확인을 가진 하향흐름 데이터 메시지를 수신한다면, DDR 프로세서는 메시지를 거부하고 가능한 사기 이벤트를 서비스 제어기에 알린다. DDR 프로세서는 DPSV에 전송한 다음 상향흐름 데이터 메시지에 있는 각각의 거부되지 않은 하향흐름 데이터 메시지를 인정한다. DPSV가 하향흐름 데이터 메시지 인정을 수신하는 것을 중단한다면, 그것은 하향흐름 네트워크 데이터 흐름들을 차단하고 DDR 프로세서에 알려 DDR 프로세서가 가능한 사기 이벤트를 서비스 제어기에 알리게 된다. DDR 프로세서는 다양한 실시예와 관련하여 본원에서 설명된 바와 같은 서비스 프로세서에 의해 서비스 제어기로 DDR 보고들을 안전하게 전송한다.In some embodiments, the communication between the DPSV 1026 and the DDR processor 114 is secured using various secure communication techniques, as described herein. In some embodiments, the DPSV has a unique secret / public key pair and a digital certificate (cert) that verifies that the public key is genuine. The DDR processor has a unique secret / public key pair and a digital certificate certifying that the public key is authentic. The DPSV and DDR processors exchange public keys and certificates to perform a key exchange process to authenticate each other and result in a shared secret session key. The DDR processor receives upstream network data flows from the device OS networking stack and uses the session key to attach an integrity check to each upflow data message that the DDR processor sends to the DPSV. The DPSV intercepts any upward flow data path information that does not have a valid integrity check from the DDR processor and notifies the DDR processor that it is receiving invalid upstream data, Can be informed. The DPSV receives the downlink network data flow, and using the session key, the DPSV attaches an integrity check to each downstream data message that it sends to the DDR processor. Each downlink flow data message is, for example, arranged such that the data message can not be blocked or replayed without being detected by the DDR processor. If the DDR processor receives a downflow data message with an invalid integrity check, the DDR processor rejects the message and notifies the service controller of possible fraud events. The DDR processor acknowledges each unacknowledged downflow data message in the upflow data message after sending it to the DPSV. If the DPSV stops receiving downstream data message acknowledgments, it blocks downstream network data flows and informs the DDR processor that the DDR processor is aware of possible fraud events to the service controller. The DDR processor securely transmits DDR reports to the service controller by the service processor as described herein in connection with various embodiments.

일부 실시예들에서, DDR 프로세서로부터 서비스 제어기로 전송되는 DDR들은 무단 조작되거나 재실행될 수 없는 방법으로 무결성 확인되고 배열된다. DDR 프로세서와 고유의 DDR 보고 시퀀스 식별자와 인증 세션 킵-얼라이브 타이머의 세트와 결합된 서비스 제어기 사이의 인증 프로세스는 DDR 프로세서와 서비스 제어기 사이의 보안 연결을 유지하고 확인하기 위해 사용된다. 만일 DDR 프로세서와 서비스 제어기 사이의 DDR 기록의 보안 세션 또는 흐름이 중단된다면, DDR 프로세서에서 접속 제어 기능은 네트워크 목적지로의 3G 또는 4G 모뎀 데이터 경로의 접속을 제한하여 DDR과 서비스 제어기 사이에서 안전하게 인증된 세션을 재설정할 필요가 있게 된다.In some embodiments, the DDRs transmitted from the DDR processor to the service controller are integrity checked and arranged in a manner that can not be tampered with or redone. The authentication process between the DDR processor and the service controller coupled with the unique DDR reporting sequence identifier and the set of authentication session keep-alive timers is used to maintain and verify the secure connection between the DDR processor and the service controller. If the security session or flow of DDR records between the DDR processor and the service controller is interrupted, the access control function in the DDR processor will restrict access to the 3G or 4G modem data path to the network destination, You will need to reset the session.

도 11은 일부 실시예들에 따른 MPU 구현에서 가입자 식별 모듈(SIM)과 데이터 경로 보안 검증기(DSPV)에서 보안 내장된 DDR 프로세서를 위한 다른 아키텍쳐를 나타낸다. 도 11은, 나타낸 바와 같이 SIM 데이터 경로 인터페이스(1110)가 MPU에서의 3G 또는 4G 모뎀 버스 드라이버(934)를 가지는 SIM으로부터의 직접 통신을 위해 제공되는 것을 제외하고는 도 9와 유사하다. 메일박스 기능을 포함하는 APU로 본원에서 유사하게 설명된 것들과 같이, SIM 통신들은 모뎀 버스 드라이버(911)와 3G 또는 4G 모뎀을 위한 APU 스택 인터페이스(906)를 통해 APU와 통신하기 위해 모뎀 버스(1112)를 이용하여 3G 또는 4G 모뎀 버스 드라이버(934)로 SIM 데이터 경로 인터페이스(1110)를 이용하여 통신한다. Figure 11 illustrates another architecture for a secure embedded DDR processor in a Subscriber Identity Module (SIM) and a Data Path Security Verifier (DSPV) in an MPU implementation in accordance with some embodiments. 11 is similar to FIG. 9, except that the SIM data path interface 1110 is provided for direct communication from a SIM with a 3G or 4G modem bus driver 934 in the MPU, as shown. The SIM communications may communicate with the APU through the modem bus 911 to communicate with the APU via the APU stack interface 906 for the 3G or 4G modem and the modem bus driver 911, 1112 to the 3G or 4G modem bus driver 934 using the SIM data path interface 1110. [

일부 실시예들에서, DDR 프로세서의 다양한 다른 위치들을 포함하는 다양한 다른 아키텍쳐들이 본원에서 설명되는 실시예들의 관점에서 이제는 당업자들에게 명백하게 될 이러한 기술들 또는 유사한 기술들을 이용하여 제공될 수 있다.In some embodiments, various other architectures, including various other locations of a DDR processor, may be provided using these or similar techniques which will now become apparent to those skilled in the art in view of the embodiments described herein.

일부 실시예들에서, DDR 프로세서 및/또는 DPSV의 다양한 다른 위치들을 포함하는 다양한 다른 아키텍쳐들이 본원에서 설명되는 실시예들의 관점에서 이제는 당업자들에게 명백하게 될 이러한 기술들 또는 유사한 기술들을 이용하여 제공될 수 있다.In some embodiments, various other architectures, including various other locations of a DDR processor and / or DPSV, may be provided using these or similar techniques, which will now become apparent to those skilled in the art in view of the embodiments described herein have.

예를 들어, DDR 프로세서(예를 들어, 및/또는 서비스 프로세서의 다양한 보안된 요소들)는 네트워크 스택에서 더 높은 수준의 네트워크 접속 정책 집행을 포함하는 다양한 다른 위치들에서(예를 들어, 다양한 보안 작동 환경에서) 위치될 수 있다. 특히, 하드웨어 보안 없이 서비스 프로세서에 의해 수행되는 임의의 기능들은 하드웨어 보안된 실행 메모리에 위치될 수 있다. 이러한 기능들은 3G와 4G 네트워크 데이터 경로 처리 및 사용 보고 기능들, 3G와 4G 네트워크 어플리케이션 접속 관리 및 사용 보고 기능들 및 3G와 4G 서비스 사용자 통지 및 고객 활동 상태 기능들을 포함할 수 있다.For example, a DDR processor (e.g., various secured elements of a service processor and / or the like) may be deployed in various other locations, including higher level network access policy enforcement in the network stack Operating environment). In particular, any functions performed by the service processor without hardware security may be located in hardware secured execution memory. These features may include 3G and 4G network data path processing and usage reporting functions, 3G and 4G network application access management and usage reporting functions, and 3G and 4G service user notification and customer activity status functions.

도 16은 보안 실행 환경(데이터 경로 보안 구역(140) 또는 SEE로서 도 16에 언급된)이 보안 서비스 프로세서 요소들(1604)을 포함하는 실시예를 나타낸다. 도 16은 #1 부터 #N 까지 숫자 표시된 다양한 디바이스 I/O 포트들(예를 들어, 2G, 3G, 4G, WiFi, 이더넷, USB, 파이어와이어, 블루투스 및 NFC를 포함할 수 있고 이들에 제한되지 않는)을 위한 많은 I/O 모뎀들(250)을 나타낸다. 모뎀 버스 드라이버 및 물리적 계층 버스(142)는 보안 실행 환경(데이터 경로 보안 구역(140))에서 위치되어, 보안 실행 환경은 보안 서비스 프로세서 요소들(1604)과 보안 서비스 프로세서 요소들(1604) 및 디바이스 I/O 포트들 사이의 데이터 경로를 보호한다. 일부 실시예들에서, 보안 서비스 프로세서 요소(1604)는 악성 소프트웨어(malware) 또는 인증되지 않은 사용자 무단 조작 또는 구성 변경으로부터 보호되기를 원하는 서비스 프로세서의 일부를 포함하고, 정책 집행에 대한 책임 있는 보안 서비스 프로세서 요소들, I/O 포트 통신 활동 모니터링 및 보고, I/O 포트 통신 제어 또는 트래픽 제어, 어플리케이션 활동 모니터링, 어플리케이션 제어, 어플리케이션 접속 제어 또는 트래픽 제어, 네트워크 목적지 모니터링 및 보고, 네트워크 목적지 접속 제어 또는 트래픽 제어, 및 디바이스 환경 모니터링 및 무결성 검증을 포함하지만 이들에 제한되지 않는다. 네트워크 스택(136)은 또한 보안 실행 환경에서 도 16에서 나타내어지지만, 보안 서비스 프로세서 요소들(1604) 및 I/O 모뎀들(250)에서 모니터링 지점 아래의 데이터 경로가 보안된다면(예를 들어, 비인증된 데이터 경로 접속이 이용 가능하거나 허용되지 않는), 일반적으로 모든 네트워크 스택 기능들이 보안 실행 환경에서 구현될 필요는 없다. 도 16에서 나타낸 실시예들에서, 보안 서비스 프로세서 요소들(1604)은 네트워크 스택(136)과 상호작용하여 다양한 I/O 포트 활동 모니터링을 구현하고 본원에서 설명되는 기능들을 제어하게 된다. 비보안 서비스 프로세서 요소들(1602)은 또한 사용자 인터페이스 요소들에 포함되지만 이에 제한되지 않는다.16 illustrates an embodiment in which a security enforcement environment (referred to in FIG. 16 as a data path security zone 140 or SEE) includes security service processor elements 1604. FIG. Figure 16 may include various device I / O ports (e.g., 2G, 3G, 4G, WiFi, Ethernet, USB, FireWire, Bluetooth and NFC) numbered from # 1 to #N O < / RTI > modems 250 for a < / RTI > The modem bus driver and physical layer bus 142 are located in a secure execution environment (data path security zone 140) such that the secure execution environment includes security service processor elements 1604 and security service processor elements 1604 and devices Protects the data path between the I / O ports. In some embodiments, the security service processor element 1604 includes a portion of a service processor that desires to be protected from malware or unauthorized user tampering or configuration changes, Elements, I / O port communication activity monitoring and reporting, I / O port communication control or traffic control, application activity monitoring, application control, application access control or traffic control, network destination monitoring and reporting, network destination access control or traffic control , And device environment monitoring and integrity verification. The network stack 136 is also shown in FIG. 16 in a secure execution environment, but if the data path under the monitoring point in the security service processor elements 1604 and I / O modems 250 is secured (e.g., Data path connections are not available or allowed), generally not all network stack functions need to be implemented in a secure execution environment. In the embodiments shown in FIG. 16, the security service processor elements 1604 interact with the network stack 136 to implement various I / O port activity monitoring and control functions described herein. Non-secured service processor elements 1602 are also included in user interface elements, but are not limited thereto.

일부 실시예들에서, 보안 실행 환경 구분 기술을 이용하여, 많은 부분들 또는 전체 서비스 프로세서 기능성이 APU 또는 MPU에서의 하드웨어 보안된 실행 환경들에서 구현된다. 일부 실시예들에서, 보안 CPU 구분 기술을 이용하여, 많은 부분들 또는 전체 서비스 프로세서 기능성이 APU 또는 MPU에서의 하드웨어 보안된 실행 환경들에서 구현된다. 예시적 실시예로서, 보안 실행 환경 내에서 실행될 수 있는 서비스 프로세서 기능들은: 하나 이상의 2G, 3G 또는 4G 네트워크(및/또는 이더넷, WiFi, USB, 파이어와이어, 블루투스 또는 NFC와 같은 다른 I/O 포트들)를 위한 정책 관리와 같은 보안 실행 환경에서 저장된 정책 지시들의 세트에 따른 정책 집행 작동을 포함하는데, 여기서 정책 관리는 어플리케이션 접속 관리, 어플리케이션 트래픽 처리, 어플리케이션 접속 모니터링 및 보고, 또는 어플리케이션 접속 서비스 내역보고 및 보고를 포함할 수 있다. 다른 예시적 실시예로서, 보안 실행 환경 내에서 실행될 수 있는 보안 서비스 프로세서 요소 기능들은 정책이 보안 실행 환경에서 저장된 정책 지시들의 세트에 따라 어플리케이션들을 차단, 허용 또는 조절할 지를 특정하는 하나 이상의 어플리케이션들을 위한 정책을 관리하는 것을 포함한다. 다른 예시적 실시예로서, 보안 실행 환경 내에서 실행될 수 있는 보안 서비스 프로세서 요소 기능들은 정책이 어플리케이셔 활동 모니터링 및 보고 또는 작동 환경 모니터링 및 보고(예를 들어, 보안 상태 또는 디바이스 작동 환경에서 악성 소프트웨어의 존재를 모니터링)을 포함하는 하나 이상의 어플리케이션들을 위한 정책을 관리하는 것을 포함한다. 다른 예시적 실시예로서, 보안 실행 환경 내에서 실행될 수 있는 보안 서비스 프로세서 요소 기능들은 웹사이트, 도메인, URL, IP 및/또는 TCP 주소, 서버 이름, 다른 디바이스들 또는 콘텐츠 소스를 포함할 수 있는 하나 이상의 네트워크 목적지들 또는 리소스들을 위한 정책을 관리하는 것을 포함하는데, 여기서 정책은 접속 관리, 트래픽 제어, 접속 모니터링 또는 접속 서비스 내역보고를 포함한다. 다른 예시적 실시예로서, 보안 실행 환경 내에서 실행될 수 있는 보안 서비스 프로세서 요소 기능들은 하나 이상의 로밍 접속 네트워크들을 위한 정책을 관리하는 것을 포함한다. 다른 예시적 실시예로서, 보안 실행 환경 내에서 실행될 수 있는 보안 서비스 프로세서 요소 기능들은 하나 이상의 2G, 3G, 4G 및/또는 다른 I/O 포트들을 포함하는 하나 이상의 디바이스 I/O 연결들에서 통신 활동을 모니터링하고 보고하는 것을 포함한다. 일부 실시예들에서, 보안 실행 환경 내에서 실행될 수 있는 보안 서비스 프로세서 요소 기능들은 하나 이상의 2G, 3G, 4G 및/또는 다른 I/O 포트들을 포함하는 하나 이상의 디바이스 I/O 연결들에서 통신 활동을 모니터링, 분류(예를 들어 I/O 포트 활동과 관련하여 어플리케이션 및/또는 네트워크 목적지를 식별하는 것) 및 보고하는 것을 포함한다. 일부 실시예들에서, 네트워크에 위치되는 서비스 제어기는 본원에서 설명되는 바와 같이 보안 통신 링크를 통해 보안 서비스 프로세서 요소로 그것들을 전달함에 의해 보안 실행 환경에서 저장되는 정책 지시들의 세트를 제공한다. 일부 실시예들에서, 보고를 포함하는 이러한 정책 집행 작동은 보안 통신 링크를 통해 네트워크에 위치되는 서비스 제어기로의 보고를 그 보고들의 추가 처리를 위해 본원에서 설명되는 바와 같은 보안 실행 환경으로 전송하는 것을 포함한다. 일부 실시예들에서, 보안 통신 링크를 통해 네트워크에 위치되는 서비스 제어기로의 보고를 보안 실행 환경으로 전송하는 것은 본원에서 설명된 바와 같이 인증된 보안 시퀀싱 및 수령 프로토콜을 포함할 수 있다.In some embodiments, using security run-time partitioning techniques, many portions or the entire service processor functionality is implemented in hardware-secured execution environments at the APU or MPU. In some embodiments, using secure CPU segmentation techniques, many portions or the entire service processor functionality is implemented in hardware-secured execution environments at the APU or MPU. As an illustrative example, service processor functions that may be executed within a secure execution environment include: one or more 2G, 3G or 4G networks (and / or other I / O ports such as Ethernet, WiFi, USB, FireWire, Bluetooth or NFC Policy management for a set of policy instructions stored in a secure execution environment, such as policy management for application access management, application traffic handling, application access monitoring and reporting, or application access service history reporting And reporting. As another illustrative embodiment, security service processor element functions that may be executed within a secure execution environment include policies for one or more applications that specify whether the policy is to block, allow, or control applications according to a set of policy instructions stored in the secure execution environment . ≪ / RTI > As another illustrative embodiment, security service processor element functions that may be executed within a secure execution environment include those in which the policy includes application activity monitoring and reporting or operational environment monitoring and reporting (e.g., in a secure state or device operating environment, ≪ / RTI > monitoring the presence of one or more applications). In another exemplary embodiment, the security service processor element functions that may be executed within the secure execution environment include one that may include a web site, domain, URL, IP and / or TCP address, server name, other devices, Managing policies for the above network destinations or resources, wherein the policies include connection management, traffic control, connection monitoring, or access service history reporting. In another exemplary embodiment, the security service processor element functions that may be executed within the secure execution environment include managing policies for one or more roaming access networks. As another exemplary embodiment, the security service processor element functions that may be executed within a secure execution environment may include communication activity in one or more device I / O connections, including one or more 2G, 3G, 4G and / or other I / And monitoring and reporting the results. In some embodiments, the security service processor element functions that may be executed within the secure execution environment include communication activities in one or more device I / O connections, including one or more 2G, 3G, 4G and / or other I / Monitoring, classification (e.g., identifying applications and / or network destinations in connection with I / O port activity), and reporting. In some embodiments, a service controller located in a network provides a set of policy instructions stored in a secure execution environment by passing them over a secure communication link to a secure service processor element as described herein. In some embodiments, such policy enforcement operations, including reporting, may include sending a report to a service controller located on the network over a secure communications link to a secure execution environment as described herein for further processing of the reports . In some embodiments, sending a report to a security enforcement entity, which is located in a network via a secure communication link, to a security enforcement environment may include authenticated security sequencing and receipt protocols as described herein.

다른 예시적 실시예로서, 보안 실행 환경 내에서 실행될 수 있는 보안 서비스 프로세서 요소 기능들은 다음 중 하나 이상을 포함할 수 있다: (i) 2G, 3G 및 4G 어플리케이션 접속 정책들(예를 들어, 허용, 차단, 조절, 이후 전송을 위한 연기, 주어진 QoS 수준을 적용) 또는 서비스 사용 내역보고(및/또는 이더넷, WiFi, USB, 파이어와이어, 블루투스 또는 NFC와 같은, 하나 이상의 다른 I/O 포트들에 의한 어플리케이션 접속을 위한 내역보고) 중 하나 이상을 서로 다르게 관리하는 어플리케이션들의 그룹 또는 특정 어플리케이션과 관련되는 트래픽을 식별하는 보안 어플리케이션 관리자, (ii) 어플리케이션의 작동 시도를 식별하고, 어플리케이션 정책들의 세트에 기초하여 어플리케이션이 작동하는 것을 허용할지 또는 어플리케이션이 작동하는 것을 허용하지 않을지를 판단하는 보안 어플리케이션 관리자, (iii) 3G 및 4G 어플리케이션 접속(및/또는 어플리케이션 접속 또는 하나 이상의 다른 I/O 포트들을 위한 서비스 사용 내역보고)을 서비스 제어기에 의해 설정되는 네트워크 접속 정책과 디바이스에서 판단되는 네트워크 비지 상태에 따라 서로 다르게 관리하는 보안 어플리케이션 관리자, 및 (iv) 어플리케이션 식별자, 3/4계층 목적지 뿐만 아니라 7계층 목적지 및 네트워크 비지 상태에 따라 분류되고 처리되는 3G 및 4G 네트워크 트래픽. 일부 실시예들에서, 이러한 서비스 프로세서 기능들을 보안하는 것은 다음에 의해 증가될 수 있다: (i) 서비스 프로세서가 스택 처리의 더 낮은 수준들을 위해 설명된 해킹 및 악성 소프트웨어로부터 유사한 보호 수준을 얻도록 본원에서 설명된 다양한 작동 환경 기술들로 보안 실행 환경을 구성하는 것(예를 들어, 본원에서 설명된 DDR 프로세서 SEE 구현들), (ii) DDR 프로세서(예를 들어, 및/또는 서비스 프로세서의 요소들)와 모뎀 안테나 연결 사이의 데이터 경로를 디바이스 악성 소프트웨어에 의해 무단 조작하거나 피해가지 않도록 보호하는 것 또는 보안하는 것, 그리고 (iii) 충분한 보안 또는 보호되는 메모리 그리고 더 복잡한 데이터 경로 처리 기능들을 실행하기 위해 충분한 보안 실행 환경 CPU 사이클을 제공하는 것.As another exemplary embodiment, the security service processor element functions that may be executed within the secure execution environment may include one or more of the following: (i) 2G, 3G, and 4G application access policies (e.g., (E.g., by blocking one or more other I / O ports, such as blocking, adjusting, deferring for later transmission, applying a given QoS level), or service usage history (and / or Ethernet, WiFi, USB, FireWire, Bluetooth or NFC) A security application manager that identifies traffic associated with a particular application or a group of applications that manage one or more of the applications (e.g., historical reports for application access); (ii) Whether to allow the application to work or to allow the application to work (Iii) 3G and 4G application access (and / or application access, or service usage history reporting for one or more other I / O ports) to a network access policy and device set by the service controller (Iv) 3G and 4G network traffic classified and handled according to 7-tier destination and network busy status, as well as application identifiers, 3/4 tier destinations. In some embodiments, securing these service processor functions may be increased by: (i) enabling the service processor to obtain a similar level of protection from the described hacking and malicious software for lower levels of stack processing, (E. G., The DDR processor SEE implementations described herein) with the various operating environment techniques described in U.S. Pat. ) And modem antenna connections to protect or guard against unauthorized tampering or tampering with the device's malicious software and (iii) to implement sufficient security or protected memory and more complex data path handling functions Provide sufficient security execution environment CPU cycles.

일부 실시예들에서, 네트워크 기반 서비스 제어기 및 광역 접속 네트워크로 연결되는 디바이스에 있는 보안 실행 환경에서 작동하는 디바이스 기반 보안 서비스 프로세서 요소 사이의 보안 통신이 하나 이상의 I/O 포트들(예를 들어, 2G, 3G, 4G, 이더넷, WiFi, USB, 파이어와이어, 블루투스 또는 NFC를 포함하고 이들로 제한되지 않는 I/O 포트)을 위한 보안 서비스 프로세서 요소 I/O 활동 모니터 기록들의 보안(또는 신뢰되는) 전달을 위해 사용되고, 여기서 보안 통신은 보안 메시지 수령 피드백 루프를 포함한다. 일부 실시예들에서, 만일 보안 메시지 피드백 루프가 중단된다면, 보안 서비스 프로세서 요소 보안 통신 채널 오류 조건이 검출되고 작동된다. 일부 실시예들에서, 보안 서비스 프로세서 요소 I/O 활동 보고의 순서화된 시퀀스는 서명된 또는 암호화된 통신 채널을 이용하여 서비스 제어기로 전달되고, 만일 순서화된 시퀀스가 중단되거나 무단 조작된다면, 디바이스 보안 서비스 프로세서 요소 보안 통신 채널 오류 조건이 검출되고 작동된다. 일부 실시예들에서, 서비스 제어기는 보안 서비스 프로세서 요소 I/O 활동 보고들의 순서화된 시퀀스의 무결성을 관찰하여 디바이스 데이터 기록들이 무단 조작되거나 또는 누락되는지를 판단하게 된다. 일부 실시예들에서, 만일 보안 서비스 프로세서 요소가 I/O 활동 모니터링 기록들이 무단 조작되거나 또는 누락되지 않음을 판단한다면, 서비스 제어기는 서명된 또는 암호화된 I/O 활동 모니터링 기록 수령 메시지를 반송한다. 일부 실시예들에서, 만일 보안 서비스 프로세서 요소가 I/O 활동 모니터링 기록들이 무단 조작되거나 또는 누락되었음을 판단한다면, 서비스 제어기는 오류 메시지를 반송하거나 또는 서명된 또는 암호화된 I/O 활동 모니터링 기록 수령 메시지를 반송하지 않는다. 일부 실시예들에서, 만일 보안 서비스 프로세서 요소가 서비스 제어기로부터 오류 메시지를 수신하거나, 또는 서명된 또는 암호화된 I/O 활동 모니터링 기록 수령 메시지를 일정 기간 내에 또는 일정 수의 전송된 I/O 활동 모니터링 기록들 이내에서 또는 일정 양의 처리된 통신 정보 이내에서 수신하지 않는다면, (i) 디바이스 구성 오류 메시지는 보안 관리자 또는 서버로 전달을 위해 생성되고, 및/또는 (ii) 무선 네트워크 연결들 또는 다른 I/O 연결들 또는 무선 통신 디바이스의 포트들 중 하나 이상이 안전한 목적지의 소정의 세트로 차단되거나 또는 제한된다. 이러한 방법으로, 만일 디바이스 보안 서비스 프로세서 요소, 디바이스 작동 환경, 디바이스 작동 시스템, 또는 디바이스 소프트웨어가 예상되는 정책 또는 허용되는 정책을 따르지 않는 무선 네트워크 또는 I/O 포트 접속 서비스 사용 특성들을 만드는 방법으로 무단 조작된다면, 디바이스 구성 오류 메시지가 생성될 수 있거나, 또는 디바이스 무선 네트워크 접속 또는 다른 I/O 연결 접속이 제한되거나 차단될 수 있다. 이러한 실시예들은 디바이스 기반 네트워크 접속(또는 I/O 제어) 정책들을 보안함에 있어 유용할 수 있고 그리고 무단 조작되는 디바이스 소프트웨어 또는 디바이스에 존재하는 임의의 악성 소프트웨어를 식별함에 있어 또한 유용할 수 있다. 일부 실시예들에서, 무선 네트워크 접속들 또는 다른 I/O 접속들에서 제한은 제한된 수의 네트워크 목적지로의 접속 또는 디바이스 구성 오류 조건의 추가적 분석 또는 문제 해결을 허용하기에 충분한 리소스를 일으킨다.In some embodiments, secure communication between a device-based security service processor element operating in a secure execution environment in a network-based service controller and a device connected to a wide area access network is performed by one or more I / O ports (e.g., 2G (Or I / O ports including, but not limited to, 3G, 4G, Ethernet, WiFi, USB, FireWire, Bluetooth or NFC) Where the secure communication includes a secure message receipt feedback loop. In some embodiments, if the secure message feedback loop is interrupted, a security service processor element secure communication channel error condition is detected and activated. In some embodiments, the ordered sequence of security service processor element I / O activity reporting is communicated to the service controller using a signed or encrypted communication channel, and if the ordered sequence is interrupted or tampered with, Processor element security The communication channel error condition is detected and activated. In some embodiments, the service controller observes the integrity of the ordered sequence of security service processor element I / O activity reports to determine whether device data records are tampered with or are missing. In some embodiments, if the security service processor element determines that the I / O activity monitoring records are tampered with or not missing, the service controller returns a signed or encrypted I / O activity monitoring log receipt message. In some embodiments, if the security service processor element determines that the I / O activity monitoring records are unauthorized manipulation or missing, the service controller either returns an error message or receives a signed or encrypted I / O activity monitoring record receipt message . In some embodiments, if the security service processor element receives an error message from the service controller, or receives a signed or encrypted I / O activity monitoring log receipt message within a certain period of time or a certain number of transmitted I / O activity monitoring (I) a device configuration error message is generated for delivery to a security manager or a server, and / or (ii) the wireless network connections or other I / O connections or one or more of the ports of the wireless communication device are blocked or limited to a predetermined set of secure destinations. In this way, if a device security service processor element, a device operating environment, a device operating system, or a device software does not comply with expected or permitted policies, A device configuration error message may be generated, or a device wireless network connection or other I / O connection connection may be restricted or blocked. These embodiments may be useful in securing device based network connection (or I / O control) policies and may also be useful in identifying any malicious software present in device software or devices that are tampered with. In some embodiments, the restriction in wireless network connections or other I / O connections results in a resource sufficient to allow additional analysis or troubleshooting of a limited number of network destinations or device configuration error conditions.

일부 실시예들에서, 보안 실행 환경 내에서 실행하는 그리고 보안 메시지 수령 피드백 루프를 포함하는 보안 통신 링크를 통해 서비스 제어기와 통신하는 보안 서비스 프로세서 요소는 디바이스 어플리케이션 및/또는 I/O 포트 활동을 관찰하고, 다음 디바이스 활동 보고들 중 하나 이상을 생성시킨다: 서비스 사용 보고들, 서비스 사용 분류를 포함하는 서비스 사용 보고들, 어플리케이션 서비스 사용 보고들, 네트워크 목적지 서비스 사용 보고들, 네트워크 유형 식별자들을 포함하는 서비스 사용 보고들, 위치 식별자들을 포함하는 서비스 사용 보고들, 어플리케이션 접속 모니터링 보고들, 어플리케이션 접속 서비스 내역보고들, 어플리케이션 활동 모니터링 보고들, 디바이스 구동 환경 모니터링 보고들.In some embodiments, a security service processor element executing in a secure execution environment and communicating with a service controller via a secure communication link comprising a secure message receipt feedback loop may observe the device application and / or I / O port activity , Generates one or more of the following device activity reports: service usage reports, service usage reports including service usage classifications, application service usage reports, network destination service usage reports, service usage including network type identifiers Service usage reports including location identifiers, application access monitoring reports, application access service history reports, application activity monitoring reports, device driven environment monitoring reports.

일부 실시예들에서, 보안 실행 환경 내에서 실행하는 그리고 보안 메시지수령 피드백 루프를 포함하는 보안 통신 링크를 통해 서비스 제어기와 통신하는 보안 서비스 프로세서 요소는 디바이스 어플리케이션 및/또는 I/O 포트 활동을 관찰하고, 로밍 네트워크 서비스 사용 보고를 생성시킨다.In some embodiments, a security service processor element executing in a secure execution environment and communicating with a service controller via a secure communication link comprising a secure message receipt feedback loop may observe the device application and / or I / O port activity , And generates a roaming network service usage report.

일부 실시예들에서, 서비스 제어기는 보안 서비스 프로세서 요소 I/O 활동 기록들을 관찰하여 디바이스가 서비스 제어기 정책 조건에 따르는지를 판단하게 된다. 일부 실시예들에서, 디바이스가 서비스 제어기 정책 조건을 따르는지 여부를 판단하는 것은 디바이스 보안 서비스 프로세서 요소는 디바이스 정책을 적절하게 구현하는 것임을 검증하는 것을 포함한다. 일부 실시예들에서, 검증되는 디바이스 정책은 네트워크 접속 서비스 정책 집행 세트이다. 일부 실시예들에서, 검증되는 디바이스 정책은 네트워크 접속 서비스 계획 정책 집행 세트를 포함하는 네트워크 접속 서비스 정책 집행 세트이고, 하나 이상의 네트워크 접속 제어 또는 트래픽 제어를 위한 정책들의 세트, 네트워크 어플리케이션 제어, 네트워크 목적지 제어, 네트워크 과금 또는 내역보고, 및 네트워크 서비스 사용 통지를 포함한다. 일부 실시예들에서, 검증되는 디바이스 정책은 디바이스 어플리케이션 활동이 소정의 정책들의 세트와 일치하는지 여부(예를 들어, 네트워크 또는 다른 I/O 포트들에 접속하는 어플리케이션들이 모두 허용된 어플리케이션들인지를 판단하거나 또는 네트워크 또는 다른 I/O 포트들에 접속하는 어플리케이션들이 예상되는 정책 행동에 따라 행동하는지를 판단하는 것)이다. 일부 실시예들에서, 디바이스 정책 검증은 디바이스가 승인된 또는 승인되지 않은 네트워크들에 접속하는지를 포함한다. 일부 실시예들에서, 디바이스 정책 검증은 디바이스가 하나 이상의 허용된 무선 연결들 또는 다른 I/O 포트들을 통해 특정 내용을 통신하는지 또는 허용되지 않는 하나 이상의 무선 네트워크들 또는 I/O 포트들에 대해 특정 내용을 통신하는지를 포함한다. 일부 실시예들에서, 디바이스 정책 검증은 디바이스가 하나 이상의 무선 연결들 또는 다른 I/O 포트들 상에서 허용된 보안 링크를 통해 특정 내용을 통신하는지 또는 비보안의 링크상에서 특정 내용을 통신하는지를 포함한다. 일부 실시예들에서, 디바이스 정책 검증은 디바이스가 허용된 위치로부터 또는 허용되지 않은 위치로부터 통신하는지 여부를 포함한다. 일부 실시예들에서, 디바이스 정책 검증은 디바이스 작동 환경에 임의의 악성 소프트웨어 또는 오류 구동 조건이 없음을 디바이스 작동 환경 모니터링 보고들이 표시하는지 아닌지를 포함한다.In some embodiments, the service controller observes security service processor element I / O activity logs to determine if the device complies with service controller policy conditions. In some embodiments, determining whether a device complies with a service controller policy condition includes verifying that the device security service processor element is properly implementing a device policy. In some embodiments, the device policy to be verified is a network access service policy enforcement set. In some embodiments, the device policy to be verified is a network access service policy enforcement set that includes a network access service plan policy enforcement set and is a set of policies for one or more network access control or traffic control, network application control, network destination control , Network billing or history reporting, and network service usage notification. In some embodiments, the verified device policy may be used to determine whether the device application activity matches a predetermined set of policies (e.g., whether the applications connecting to the network or other I / O ports are all permitted applications Or to determine whether applications connecting to the network or other I / O ports behave according to expected policy behavior). In some embodiments, the device policy verification includes whether the device is connected to authorized or unauthorized networks. In some embodiments, device policy validation may be performed to determine whether a device communicates specific content over one or more allowed wireless connections or other I / O ports, or for a particular one or more wireless networks or I / And whether the content is communicated. In some embodiments, device policy validation includes whether a device communicates a particular content over a secure link that is allowed on one or more wireless connections or other I / O ports, or communicates a particular content on a non-secure link. In some embodiments, device policy verification includes whether the device is communicating from an allowed location or from an unacceptable location. In some embodiments, the device policy verification includes whether or not the device operating environment monitoring reports indicate that there is no malicious software or faulting condition in the device operating environment.

일부 실시예들에서, 보안 서비스 프로세서 요소들(1604)은 SIM 카드에 위치되는 보안 실행 환경(데이터 경로 보안 구역(140)) 내에서 구현된다. 도 9, 10, 및 11을 참조하여 설명된 다양한 실시예들과 관련 설명들은, 당업자들에 의해 이해되는 바와 같이, 보안 서비스 프로세서 요소들에 의해 단순하게 DDR 프로세서(114)를 대체함에 의해 그리고 실시예 설명들을 조정함에 의해 SIM 카드에서 보안 서비스 프로세서 요소들(1604)의 구현을 용이하게 한다. 이는 복잡한 디바이스 광역 네트워크 접속 제어 또는 과금 기능들이, 다양한 보안 서비스 프로세서 요소 실시예들의 문맥에서 설명되는 바와 같이, 네트워크 작동자에 의해 제어되고 분배될 수 있는 SIM 카드에서 구현되도록 허용한다. In some embodiments, the security service processor elements 1604 are implemented within a secure execution environment (data path security zone 140) located on the SIM card. The various embodiments and related discussions described with reference to Figures 9, 10, and 11 can be implemented by replacing the DDR processor 114 simply by security service processor elements, as understood by those skilled in the art, Facilitates the implementation of security service processor elements 1604 in the SIM card by adjusting the example descriptions. This allows complex device wide area network access control or billing functions to be implemented in a SIM card that can be controlled and distributed by a network operator, as described in the context of various security service processor element embodiments.

추가적 실시예들은 DDR 프로세서 기능적 작동들의 다양한 양태를 위해 이제 제공된다.Additional embodiments are now provided for various aspects of DDR processor functional operations.

DDRDDR 펌웨어 설치, 보안  Firmware installation, security 크리덴셜Credentials 구성 및  Configuration and 업데이트update

도 12는 일부 실시예들에 따른 보안 부팅 시퀀스 흐름도를 나타낸다. 일부 실시예들에서, (1202)에서 리셋(reset) 및/또는 파워 업하면, 시스템(예를 들어, 어느 것에서나 DDR이 무선 통신 디바이스에서 내장되는 APU, SIM 및/또는 MPU)은 (1204)에서 보안 부팅을 실행함(예를 들어, 보안 부팅 코드를 실행함)에 의해 시작한다. 보안 부팅의 일부로서, 초기화 루틴은 시스템 파라미터들을 구성하도록(예를 들어, HW/펌웨어 방화벽 메모리와 같은, 보안 영역을 보장하도록 등록을 구성하도록) 수행되어 보안/보통 영역 경계 및 인터페이스를 수립한다. 보안 부팅 코드는 또한 모든 다른 펌웨어/소프트웨어에 숨겨지는 신뢰의 근원으로 접속을 가진다. (1206)에서, 공개 키 증명 승인 단계가 수행되는데 여기서 보안 부팅이 그 자신의 공개 키를(예를 들어, 해싱(hashing) 기술을 이용하여) 다운로드하고 검증하여 (1206)에서 모든 보안 코드의 공개 키를 다운로드하게 된다. (1208)에서, 보안 부팅은 다운로드로 진행하고 보통의 소프트웨어 루틴이 다운로드되도록 허용하기 전에 모든 보안 소프트웨어 패키지(예를 들어, DDR 생성기를 포함하는 DDR 프로세서를 포함)의 디지털 서명을 검증/승인한다. 예를 들어, 이는 신뢰의 근원에서 만들어지는 신뢰의 체인을 사용하여 수행될 수 있다. (1210)에서, 보안 부팅은 모든 서명들이 적절하게 승인되었는지를 판단한다. 만일 임의의 디지털 서명이 실패한다면, 보안 부팅은 (1202)에서 나타낸 바와 같이(예를 들어, 감시 타이머(watch dog timer)가 만료되는) 리셋될 때까지 및/또는 플랫폼이 새로운 이미지로 급히 전송될 때까지 (1212)에서 나타낸 바와 같은 휴지 상태에서 순환되어 유지된다. 만일 모든 디지털 서명이 적절하게 승인된다면, 보안 부팅은 (1214)에서 다른 다운로드(예를 들어, 어플리케이션을 포함하는)로 진행한다. 보통의 작동은 진행하고 보안 부팅은 (1216)에서 완료된다. (1218)에서 새로운 이미지가 있는지가 판단된다. 만일 없다면 보통의 작동이 (1216)에서 계속된다. 새로운 보안 소프트웨어 이미지가 다운로드될 때(예를 들어, 이미지가 "보안" 플래그 세트로 플래시 메모리의 새로운 영역에 저장된다) 시스템은 새로운 이미지(예를 들어, 플래그에 기초하여)를 읽는 보안 부팅을 가지기 위해 리셋 상태로 되돌아갈 수 있고 그것이 현재 이미지로 되기 전에 이미지의 디지털 서명을 승인할 수 있다.12 shows a flowchart of a secure boot sequence in accordance with some embodiments. In some embodiments, the system (e.g., any APU, SIM and / or MPU in which the DDR is embedded in the wireless communication device) 1204 is reset and / or powered up at 1202, By executing a secure boot (for example, by executing a secure boot code). As part of the secure boot, the initialization routine is performed to configure the system parameters (e.g., to configure the registry to secure the secure domain, such as HW / firmware firewall memory) to establish secure / normal domain boundaries and interfaces. The secure boot code also has a connection as a source of trust hidden in all other firmware / software. At step 1206, a public key authentication step is performed where the secure boot downloads and verifies its own public key (e.g., using a hashing technique) Key. At 1208, the secure boot proceeds with the download and verifies / authorizes the digital signature of all security software packages (e.g., including the DDR processor including the DDR generator) before allowing the normal software routines to be downloaded. For example, this may be done using a chain of trust that is made at the origin of trust. At 1210, the secure boot determines if all signatures are properly authorized. If any of the digital signatures fails, the secure boot may be initiated as indicated at 1202 (e.g., the watch dog timer expires) and / or until the platform is urgently transferred to the new image And is maintained in a rest state as shown at 1212 until no. If all of the digital signatures are properly authorized, the secure boot proceeds from 1214 to another download (e.g., including the application). Normal operation proceeds and a secure boot is completed at 1216. It is determined in step 1218 whether there is a new image. If not, normal operation continues at 1216. When a new security software image is downloaded (e.g., an image is stored in a new area of flash memory with a " security " flag set), the system has a secure boot to read a new image (e.g., based on the flag) It can return to the reset state and accept the digital signature of the image before it becomes the current image.

서비스 프로세서 및 Service processor and DDRDDR 프로세서 사이의 메일박스 통신 채널 Mailbox communication channel between processors

도 13은 일부 실시예들에 따른 보안 및 비보안 메모리 영역들 사이에 DDR 서비스 프로세서 메일박스 메시지들을 통과시키기 위한 기능적 도표를 나타낸다. 일부 실시예들에서, DDR 프로세서(1314)와 서비스 프로세서(1312) 사이의 논리 통신 채널이 보안 DDR 메시지들(예를 들어, DDR 메시지 묶음)을 서비스 제어기로(예를 들어, 서비스 프로세서의 통신 에이전트를 경유) 전송하기 위해 제공된다. 일부 실시예들에서, 이러한 논리 통신 채널은 DDR 메일박스 데이터 기능적 요소/블록으로서 본원에서 설명된 다양한 실시예들에서 언급되었다. 예를 들어, 구현의 편리를 위해, DDR 프로세서는 그 자체의 IP 주소를 가지지 않아서 그것의 메시지를 이러한 논리 채널을 이용하여 서비스 프로세서를 통해 서비스 제어기로 전송하기만 할 수 있다고 추정된다. 논리 채널은, 보통 영역 공유 메모리(1310)로서 나타내어진, 공유 메모리(예를 들어, 보통 영역) 아키텍쳐에 기초할 수 있다. 다양한 실시예들과 관련하여 본원에서 설명된 바와 같이, DDR 메시지들은 암호화되고 오직 서비스 제어기에 의해 해독될 수 있다. 이러한 논리 채널은 새로운 DDR 소프트웨어 업데이트를 전송하도록 서비스 제어기를 위해 또한 사용될 수 있다.FIG. 13 illustrates a functional diagram for passing DDR Service Processor mailbox messages between secure and non-secure memory areas in accordance with some embodiments. In some embodiments, the logical communication channel between the DDR processor 1314 and the service processor 1312 may be used to communicate secure DDR messages (e.g., DDR message bundles) to the service controller (e.g., Via a network). In some embodiments, such logical communication channels have been mentioned in the various embodiments described herein as DDR mailbox data functional elements / blocks. For example, for ease of implementation, it is assumed that the DDR processor does not have its own IP address and can only use its logical channel to send its message through the service processor to the service controller. The logical channel may be based on a shared memory (e. G., Normal domain) architecture, represented generally as area shared memory 1310. [ As described herein with respect to various embodiments, the DDR messages are encrypted and can only be decrypted by the service controller. This logical channel can also be used for the service controller to transmit new DDR software updates.

DDR 프로세서가 APU에 위치되는 일부 실시예들에서, 공유 메모리는 APU의 직접 메모리 접속(DMA) 엔진을 이용하여 서비스 프로세서와 DDR 프로세서 둘 다를 통해 접속될 수 있다.In some embodiments in which the DDR processor is located in the APU, the shared memory may be connected through both the service processor and the DDR processor using the direct memory access (DMA) engine of the APU.

DDR 프로세서가 MPU에 위치되는 일부 실시예들에서, 모뎀 인터페이스는 이러한 요구사항을 만족시키기 위해 추가 논리 채널(예를 들어, 2G/3G/4G를 위한 USB 종점)을 지원하도록 제공된다. 일부 실시예들에서, 논리 채널은 기존의 구성과 APU와 MPU 사이에서 제어 채널을 제공하는 상태 채널의 꼭대기에서 피기백된다.In some embodiments where the DDR processor is located in the MPU, the modem interface is provided to support additional logical channels (e.g., USB endpoints for 2G / 3G / 4G) to meet these requirements. In some embodiments, the logical channel is piggybacked on top of the existing configuration and status channel providing the control channel between the APU and the MPU.

DDRDDR 프로세서 기록 생성기 Processor Record Generator

일부 실시예들에서, DDR 기록은 측정 기간을 포괄한다. 측정 기간들은 일반적으로 기간들 사이에 트래픽 없이 인접한데, 다음 기간은 현재 기간이 끝난 직후에 시작하는 것을 의미한다. 기간의 시작에서, 모든 이전 DDR들은 삭제된다. 기간 중 DDR들의 표는 커지는데, 각 관찰된 IP 흐름이 표에서 항목을 만들기 때문이다. 기간은 DDR 저장소가 미리 정의된 한계값을 초과하거나 DDR 보고가 서비스 프로세서에 의해 요청될 때 종료한다. 아직 서비스 프로세서 어플리케이션으로 전송되지 않은 DDR 데이터는 파워 사이클과 배터리 힘이 있는 동안 메모리에 남아 있는다.In some embodiments, the DDR record covers the measurement period. Measuring periods are generally adjacent without periods of traffic between periods, which means that the next period begins immediately after the end of the current period. At the beginning of the period, all previous DDRs are deleted. During the period, the table of DDRs grows because each observed IP flow makes entries in the table. The period ends when the DDR store exceeds a predefined limit or DDR reporting is requested by the service processor. DDR data that has not yet been sent to the service processor application remains in memory during power cycles and battery power.

일부 실시예들에서, 측정 기간의 끝에서, DDR 보고는 DDR 프로세서에 의해 준비되고 서비스 프로세서로 전송된다. 예를 들어, 다양한 보안 통신 및/또는 암호 기술들은 보고의 내용이 비밀로 유지됨을 보장하고 DDR 보고를 임의의 무단 조작함이 서비스 제어기에 의해 검출될 것임을 보장하도록 사용될 수 있다.In some embodiments, at the end of the measurement period, the DDR report is prepared by the DDR processor and transmitted to the service processor. For example, various secure communication and / or cryptographic techniques may be used to ensure that the content of the report is kept confidential and that any unauthorized manipulation of the DDR report will be detected by the service controller.

일부 실시예들에서, 보고는 또한 측정 기간의 시작과 끝을 식별하는 시간 스탬프들을 포함한다. 시간 스탬프는 서비스 제어기와의 주기적인 핸드셰이크를 통해 보정되고 확인되어 DDR 프로세서 시간 기반이 바뀌지 않음을 보장하게 된다. 데이터 압축은 보고의 크기를 최소화시키기 위해 사용된다.In some embodiments, the report also includes time stamps that identify the beginning and end of the measurement period. The time stamp is calibrated and verified through a periodic handshake with the service controller to ensure that the DDR processor time base is unchanged. Data compression is used to minimize the size of the report.

일부 실시예들에서, 각 DDR 보고 메시지는 임의의 DDR들이 시퀀스로부터 차단되는지 여부를 서비스 제어기가 판단하도록 허용하는 고유의 시퀀스 식별자를 포함한다. 보고는 서비스 제어기로 다음의 진행을 위해 서비스 프로세서에 의해 저장된다. 서비스 프로세서에 의해 저장되는 데이터는 파워 사이클과 배터리 힘이 있는 동안 메모리에 남아 있는다.In some embodiments, each DDR reporting message includes a unique sequence identifier that allows the service controller to determine whether any DDRs are blocked from the sequence. The report is stored by the service processor for further processing to the service controller. Data stored by the service processor remains in the memory during power cycles and battery power.

일부 실시예들에서, DDR 프로세서는 서비스 제어기로 전송되는 서비스 프로세서(예를 들어, 서비스 프로세서 내의 통신 에이전트)로 보안 DDR 사용 보고가 전송되는 모뎀에 위치하게 된다.In some embodiments, the DDR processor is located in a modem where a secure DDR usage report is sent to a service processor (e.g., a communications agent in the service processor) that is sent to the service controller.

DDRDDR 프로세서 접속 제어기 Processor connection controller

도 14는 일부 실시예들에 따라 DDR 프로세서 서비스 제어기 세션 인증 및 검증을 위한 흐름도를 나타낸다. 일부 실시예들에서, DDR 프로세서는 접속 제어기 기능(예를 들어, 접속 제어기)을 포함한다. 일부 실시예들에서, 리셋 및/또는 파워-업 시, 접속 제어기와 같은, DDR 프로세서 접속 제어 기능은 네트워크 접속을 제한한다(예를 들어, 단지 소수의 미리 구성된 IP 주소 및/또는 임의의 통신사업자/무선 서비스 공급자 서비스들을 포함하는 호스트 이름으로).Figure 14 illustrates a flow diagram for DDR processor service controller session authentication and verification in accordance with some embodiments. In some embodiments, the DDR processor includes an access controller function (e.g., a connection controller). In some embodiments, at reset and / or power-up, a DDR processor connection control function, such as a connection controller, limits network access (e.g., only a small number of preconfigured IP addresses and / / Host name that includes wireless service provider services).

일부 실시예들에서, 접속 제어기는 서비스 프로세서가 DDR들을 서비스 제어기로 정확하게 전달하는 것을 보장한다. 만일 DDR 흐름이 차단되거나 무단 조작된다면, 적절한 DDR들의 흐름이 복구될 때까지 접속 제어기는 셀룰러(예를 들어, 또는 관리되는 WiFi) 무선 네트워크 접속을 차단한다. 일부 실시예들에서, 네트워크 접속 제한은 네트워크 작동자에 의해 유지되고 관리되는 네트워크 접속 서비스들을 가지는 네트워크들에 단지 적용된다. 예를 들어, 이러한 기능은 네트워크 작동자에 의해 관리되지 않는 WiFi 접속에 대해서는 디스에이블 될 수 있다.In some embodiments, the access controller ensures that the service processor accurately communicates the DDRs to the service controller. If the DDR flow is interrupted or tampered, the access controller blocks the cellular (e.g., or managed WiFi) wireless network connection until the proper DDR flow is restored. In some embodiments, the network access restriction is only applied to networks having network access services maintained and managed by the network operator. For example, these functions may be disabled for WiFi connections that are not managed by the network operator.

일부 실시예들에서, 일단 모뎀이 AAA를 통해 인증되면(예를 들어, PPP 세션을 경유), 초기 파워 업 이후 및/또는 파워 세이브(power save)로부터 복구 이후, 접속 제어기는 개방 접속을 허용하기 위해 그것이 서비스 제어기로부터 피드백을 얻을 때까지 제한된 네트워크 접속(예를 들어, IP 주소/호스트 이름의 세트 및/또는 다른 기준에 기초하여)으로 제한한다. 또한, 트래픽이 구동되고 DDR 프로세서가 DDR 기록/보고들을 전송하는 동안, 개방 접속을 허용하도록 보안 DDR ACK 프레임들을 수신할 것으로 지속적으로 예상하고, 그렇지 않으면 제한 접속 상태로 다시 들어가게 된다.In some embodiments, once the modem is authenticated via AAA (e.g., via a PPP session), after initial power-up and / or after recovery from a power save, (E.g., based on a set of IP addresses / host names and / or other criteria) until it gets feedback from the service controller. Also, while traffic is running and the DDR processor is transmitting DDR records / reports, it is constantly expected to receive secure DDR ACK frames to allow open access, otherwise it will re-enter the restricted access state.

이제 도 14와 관련하여, 리셋 및/또는 초기 파워 업 또는 파워 세이브 모드 이후의 파워 업에서, 프로세스가 (1402)에서 나타낸 바와 같이 시작한다. (1404)에서, 접속 제어기는 제한된 흐름들로(예를 들어, 보안 영역 내에서 구성되거나 미리 구성됨) 네트워크 접속을 제한한다. (1406)에서, 접속 제어기는 서비스 제어기로부터 개방 네트워크 접속으로의 피드백을 기다린다. (1408)에서, 피드백이 서비스 제어기로부터 수신되는지 여부가 판단된다. 그렇지 않다면, 프로세스는 (1406)으로 되돌아가 서비스 제어기로부터의 피드백을 계속해서 기다린다. 만일 피드백이 수신된다면(예를 들어, 그리고 보안된 서비스 제어기 피드백이, 본원에서 설명된 바와 같이 적절하게 검증되고/되거나 승인되면), 접속 제어기는 네트워크 접속을 열고 DDR 보고들은 (1410)에서 전송되기 시작한다. (1412)에서, DDR ACK 프레임이 이러한 DDR 보고(들)에 대한 응답으로 수신되는지 여부가 판단된다. 그렇지 않다면, 프로세스는 (1404)로 되돌아 가고 네트워크 접속은 제한된다. 만일 DDR ACK 프레임이 수신된다면(예를 들어, 그리고 보안된 DDR ACK 프레임이, 본원에서 설명된 바와 같이 적절하게 검증되고/되거나 승인되면), 접속 제어기는 (1414)에서 계속해서 개방 네트워크 접속을 유지하고 DDR 보고들을 전송한다.Referring now to FIG. 14, at reset and / or power-up after the initial power-up or power-save mode, the process begins as indicated at 1402. At 1404, the connection controller limits network connections to limited flows (e.g., configured or preconfigured within a secure area). At 1406, the connection controller waits for feedback from the service controller to the open network connection. At 1408, it is determined whether feedback is received from the service controller. If not, the process returns to 1406 and continues to wait for feedback from the service controller. If feedback is received (e.g., and the secured service controller feedback is properly verified and / or approved as described herein), the access controller opens the network connection and the DDR reports are sent at 1410 Start. At 1412, it is determined whether a DDR ACK frame is received in response to such DDR report (s). If not, the process returns to 1404 and the network connection is restricted. If a DDR ACK frame is received (e.g., and the secure DDR ACK frame is properly verified and / or approved as described herein), the access controller continues to maintain an open network connection at 1414 And transmits DDR reports.

DDRDDR 프로세서 네트워크 비지 상태( Processor network busy status ( NBSNBS ) ) 모니터링monitoring

일부 실시예들에서, 네트워크 비지 상태(NBS) 모니터링은 저장, 네트워크 혼잡 분석, 및/또는 서비스 과금을 위해 서비스 제어기로 네트워크 비지 상태(예를 들어, 또는 네트워크 혼잡 상태)에서 정보를 모니터링하고, 기록하고, 및/또는 안전하게 보고하는, 그리고 정책 안전 목적을 제어하는 DDR 프로세서에서의 보안 펌웨어 프로그램 요소이다. 예를 들어, NBS 모니터링은 SEE 안의 다음의 기능들 중 하나 이상을 수행할 수 있다: 능동 네트워크 정보(예를 들어, 능동 네트워크 유형, 홈/로밍, 현재의 통신사업자, 베이스 스테이션, 및/또는 베이스 스테이션 섹터)를 기록(log); 네트워크 접속 시도들 및 성공들을 모니터링; 네트워크 속도를 모니터링; 왕복 지연 시간을 모니터링; 패킷 오류율을 모니터링; 모뎀 성능 파라미터(예를 들어 RF 채널, RF 신호 강도 및 다양성, SNR, 원래 모뎀 비트율, 원래의 모뎀 비트 오류율, 및/또는 채널 대역폭)를 모니터링 네트워크의 비지 상태를 분류하는 알고리즘을 구현; 및 DDR들 내의 네트워크 비지 상태 이력을 보고.In some embodiments, network busy status (NBS) monitoring may be used to monitor information in a network busy state (e.g., or in a network congested state) to a service controller for storage, network congestion analysis, and / And / or securely reporting, and controlling policy security objectives. For example, NBS monitoring can perform one or more of the following functions in SEE: active network information (e.g., active network type, home / roaming, current carrier, base station, and / or base Station sector); Monitor network access attempts and successes; Monitoring network speed; Monitoring round trip delay time; Monitoring packet error rate; Implementing an algorithm to classify busy status of the monitoring network to modem performance parameters (e.g., RF channel, RF signal strength and diversity, SNR, original modem bit rate, original modem bit error rate, and / or channel bandwidth); And network busy status history within DDRs.

DDRDDR 프로세서와 서비스 제어기 간의 보안 통신 채널의 연결 및 보안 Connection and security of secure communication channel between processor and service controller

일부 실시예들에서, DDR 프로세서와 서비스 제어기 사이의 보안 통신 채널을 연결하고 보안하는 것이 아래에서 설명되는 바와 같이 제공된다. DDR 프로세서는 고유의 비밀/공개 키 쌍과 그 공개 키가 진짜임을 증명하는 디지털 증명(cert)을 가진다. 서비스 제어기는 고유의 비밀/공개 키 쌍을 가진다. 그것의 공개 키는 잘 알려져 있고 DDR 프로세서 코드 이미지에 포함된다. DDR 프로세서는 그것의 공개 키와 증명을 서비스 제어기로 전송하고, 그 둘은 서로를 인증하고 공유된 비밀 세션 키를 초래하는 키 교환 프로세스를 실행한다. DDR 프로세서는 세션 키를 이용하여 그것이 서비스 제어기로 전송하는 DDR 보고들을 암호화하고 그것이 서비스 제어기로 전송하는 메시지에 무결성 확인을 첨부하게 된다. 서비스 제어기는 세션 키를 이용하여 그것이 DDR 프로세서로 전송하는 메시지에 무결성 확인을 첨부하게 된다.In some embodiments, connecting and securing a secure communication channel between the DDR processor and the service controller is provided as described below. The DDR processor has a unique secret / public key pair and a digital certificate (cert) that proves that the public key is genuine. The service controller has its own secret / public key pair. Its public key is well known and included in the DDR processor code image. The DDR processor sends its public key and credentials to the service controller, which in turn executes a key exchange process that authenticates each other and results in a shared secret session key. The DDR processor uses the session key to encrypt the DDR reports it sends to the service controller and to attach an integrity check to the message it sends to the service controller. The service controller uses the session key to attach an integrity check to the message it sends to the DDR processor.

본원에서 설명된 다양한 실시예들의 관점에서 당업자에게 명백하게 될 것인 바와 같이, 다양한 다른 보안 통신 및 암호 기술들은 DDR 프로세서와 서비스 제어기 사이의 보안 통신을 연결하고 보안함을 위해 제공하도록 사용된다.As will be apparent to those skilled in the art in view of the various embodiments described herein, various other secure communication and encryption techniques are used to provide for secure connection and connection of secure communications between the DDR processor and the service controller.

APUAPU // MPUMPU 구현에서  In the implementation DDRDDR 프로세서와  Processor and DPSVDPSV 간의 보안 통신 채널의 연결 및 보안 Connection and security of secure communication channel between

일부 실시예들에서, DDR 프로세서와 APU/MPU 구현에서 DPSV 사이의 보안 통신 채널을 연결하고 보안하는 것이 아래에서 설명되는 바와 같이 제공된다. DPSV는 고유의 비밀/공개 키 쌍과 그 공개 키가 진짜임을 증명하는 디지털 증명(cert)을 가진다. DDR 프로세서는 고유의 비밀/공개 키 쌍과 그 공개 키가 진짜임을 증명하는 디지털 증명(cert)을 가진다. DPSV와 DDR 프로세서는 공개 키들과 증명들을 교환하여, 서로를 인증하고 공유된 비밀 세션 키를 초래하는 키 교환 프로세스를 실행한다. DDR 프로세서는 디바이스 OS 네트워킹 스택으로부터 상향흐름 네트워크 데이터 흐름들을 수신하고, 세션 키를 이용하여, 그것이 DPSV로 전송하는 각 상향흐름 데이터 메시지로 무결성 확인을 첨부한다. DPSV는 DDR 프로세서로부터 유효한 무결성 확인을 가지지 않는 상향흐름 데이터 경로 정보를 차단하고 DDR 프로세서가 서비스 제어기에 가능한 사기 이벤트를 알릴 수 있도록 유효하지 않은 상향흐름 데이터를 수신하는 것을 DDR 프로세서에 알린다. DPSV는 하향흐름 네트워크 데이터 흐름들을 수신하고, 세션 키를 이용하여, 그것이 DDR 프로세서에 전송하는 각 하향흐름 데이터 메시지에 무결성 확인을 첨부한다. 각 하향흐름 데이터 메시지는 배열되어 데이터 메시지가 DDR 프로세서에 의해 검출됨 없이 차단되거나 재실행될 수 없게 된다. 만일 DDR 프로세서가 유효하지 않은 무결성 확인을 가지는 하향흐름 데이터 메시지를 수신한다면, DDR 프로세서는 메시지를 거부하고 가능한 사기 이벤트를 서비스 제어기에 알린다. DDR 프로세서는 그것이 DPSV에 전송하는 다음 상향흐름 데이터 메시지에서 각각의 거부되지 않는 하향흐름 데이터 메시지를 인정한다. DPSV가 하향흐름 데이터 메시지 인정을 수신하는 것을 멈춘다면, 그것이 하향흐름 네트워크 데이터 흐름들을 차단하고 DDR 프로세서에 알려 DDR 프로세서가 서비스 제어기에 가능한 사기 이벤트를 알릴 수 있게 된다. DDR 프로세서는 본원에서 설명되는 바와 같이 서비스 프로세서에 의해 DDR 보고들을 서비스 제어기로 안전하게 전송한다. DDR 프로세서로부터 서비스 제어기로 전송되는 DDR들은 무단 조작되거나 재실행될 수 없는 방법으로 무결성 확인이 되고 배열된다. 고유의 DDR 보고 시퀀스 식별자들의 세트 및 인증 세션 킵 얼라이브 타이머와 결합된 서비스 제어기와 DDR 프로세서 사이의 인증 프로세스는 DDR 프로세서와 서비스 제어기 사이의 보안 연결을 유지하고 확인하도록 사용된다. 만일 DDR 프로세서와 서비스 제어기 사이의 DDR 기록들의 보안 세션 또는 흐름이 중단된다면, DDR 프로세서에서 접속 제어기 기능은 네트워크 목적지로의 2G, 3G 또는 4G 모뎀 데이터 경로의 접속을 제한하여 DDR과 서비스 제어기 사이에서 안전하게 인증되는 세션을 재설정할 필요가 있게 된다.In some embodiments, connecting and securing a secure communication channel between a DDR processor and a DPSV in an APU / MPU implementation is provided as described below. The DPSV has a unique secret / public key pair and a digital certificate (cert) that proves that the public key is genuine. The DDR processor has a unique secret / public key pair and a digital certificate (cert) that proves that the public key is genuine. The DPSV and DDR processor exchange the public keys and certificates to perform a key exchange process that authenticates each other and results in a shared secret session key. The DDR processor receives upstream network data flows from the device OS networking stack and uses the session key to attach an integrity check to each upflow data message it sends to the DPSV. The DPSV intercepts the upstream flow data path information that does not have a valid integrity check from the DDR processor and informs the DDR processor that it is receiving invalid upstream data so that the DDR processor can notify the service controller of possible fraud events. The DPSV receives downlink network data flows and attaches an integrity check to each downflow data message it sends to the DDR processor using the session key. Each downlink flow data message is arranged such that the data message can not be blocked or replayed without being detected by the DDR processor. If the DDR processor receives a downflow data message with an invalid integrity check, the DDR processor rejects the message and notifies the service controller of possible fraud events. The DDR processor acknowledges each un-denied downstream data message in the next upflow data message it sends to the DPSV. If the DPSV stops receiving downflow data message acknowledgment, it blocks downstream network data flows and informs the DDR processor that the DDR processor is able to notify the service controller of possible fraud events. The DDR processor securely transmits the DDR reports to the service controller by the service processor as described herein. DDRs transmitted from a DDR processor to a service controller are integrity checked and arranged in a way that can not be tampered with or redone. A set of unique DDR reporting sequence identifiers and an authentication session between the service controller and the DDR processor coupled with the authentication session keep alive timer are used to maintain and verify a secure connection between the DDR processor and the service controller. If a secure session or flow of DDR records between the DDR processor and the service controller is interrupted, the access controller function in the DDR processor will restrict access to the 2G, 3G or 4G modem data path to the network destination, It becomes necessary to reset the authenticated session.

본원에서 설명된 다양한 실시예들의 관점에서 당업자에게 명백한 바와 같이, 다양한 다른 보안 통신 및 보안 기술들은 DDR 프로세서와 APU/MPU 구현에서의 DPSV 사이의 보안 통신 채널을 연결하고 보안함을 위해 제공하기 위해 사용될 수 있다.As will be apparent to those skilled in the art in view of the various embodiments described herein, various other secure communication and security technologies may be used to provide and secure a secure communication channel between the DDR processor and the DPSV in the APU / MPU implementation .

DDRDDR 프로세서의  Processor OEMOEM 프로그래밍을 위한 보안 요구사항들 Security Requirements for Programming

일부 실시예들에서, DDR 프로세서를 위한 코드 서명하는 것이 제공된다. 특히, DDR 프로세서 코드 이미지는 디바이스 OEM에 의해 디지털적으로 서명된다. 서명은 보안 부팅 로더 코드 이미지 내에 내장된 고정된 공개 키를 이용하여 보안 부팅 로더에 의해 검증된다. 이는 OEM이 고정된 서명 키의 비밀을 유지하는 보안 코드-서명 기능을 구동하는 보안 요구사항을 시행한다. OEM은 인증된 인원만이 코드 서명 기능에 접속할 수 있음을, 그리고 그들이 정당한 DDR 프로세서 이미지들을 위해서만 그렇게 함을 보장한다.In some embodiments, code signing for a DDR processor is provided. In particular, the DDR processor code image is digitally signed by the device OEM. The signature is verified by the secure boot loader using a fixed public key embedded within the secure boot loader code image. This enforces security requirements that drive the security code-signing function in which the OEM maintains the confidentiality of a fixed signing key. OEMs ensure that only authorized personnel can access code signing functionality and that they do so only for legitimate DDR processor images.

일부 실시예들에서, DDR 디바이스 비밀 키를 위한 무작위 시드(seed)가 제공된다. 특히, 디바이스 제조 시, DDR 디바이스 키로 불리는 비밀/공개 키 쌍이 부여된다. DDR 디바이스 키는 각 디바이스에 고유하고 서비스 제어기에 보안 통신 링크를 수립하도록 사용된다. 예를 들어, DDR 디바이스 키는 1024-비트 모듈러스(modulus), 1024-비트 베이스(base), 및 128-비트 비밀 지수(private exponent)를 가지는 디피-헬먼(Diffie-Hellman) 키 쌍일 수 있다. DDR 디바이스 키(DDR 디바이스 비밀 키)의 비밀 지수는 각 디바이스에 고유하고, 예를 들어 SEE에서 온-칩 비휘발성 메모리(예를 들어, OTP 메모리)의 128 비트에 저장된다. 모듈러스 및 베이스는 모든 디바이스들에 공통이고 DDR 프로세서 이미지 내에 내장된다. DDR 디바이스 키(예를 들어, DDR 디바이스 공개 키)의 공개 부분은 영구적으로 저장되지 않는다: 대신에, 모듈러스, 베이스 및 비밀 지수를 이용하여 DDR 프로세서에 의해 계산된다. DDR 프로세서는 디바이스가 공장에서 초기화되고 테스트되는 동안 실행되는 공장 초기화 루틴을 포함한다. 공장 초기화 루틴은 DDR 디바이스 비밀 키를 생성시키고 그것을 SEE의 비휘발성 메모리로 프로그램한다. DDR 디바이스 비밀 키는 결코 디바이스를 떠나지 않고 DDR 프로세서로만 접속 가능하다. 공장 초기화 루틴은 DDR 디바이스 공개 키를 계산하고 그것을 공장 시험기로 전송한다. 예를 들어, 공장 시험기는 128-비트 무작위 스트링(string)을 제공할 수 있어서 DDR 디바이스 비밀 키를 생성시키는 시드로서 공장 초기화 루틴에 의해 사용된다. 이는 공장 시험기가 고품질 무작위 비트 소스로의 접속을 포함하거나 가지는 것을 요청한다. 다양한 적절한 방법들은, 하드웨어 무작위 소스의 출력으로 시드되는 FIPS 140-2("결정적 무작위 수 생성기")처럼, 사용될 수 있다.In some embodiments, a random seed for the DDR device secret key is provided. In particular, when manufacturing a device, a secret / public key pair called a DDR device key is granted. The DDR device key is unique to each device and is used to establish a secure communication link to the service controller. For example, a DDR device key may be a Diffie-Hellman key pair with a 1024-bit modulus, a 1024-bit base, and a 128-bit private exponent. The secret exponent of the DDR device key (DDR device secret key) is unique to each device and is stored, for example, in 128 bits of on-chip nonvolatile memory (e.g., OTP memory) in the SEE. The modulus and bass are common to all devices and are embedded within the DDR processor image. The open portion of a DDR device key (e.g., DDR device public key) is not permanently stored: instead, it is calculated by the DDR processor using modulus, base and secret exponent. The DDR processor includes a factory initialization routine that is executed while the device is initialized and tested at the factory. The factory initialization routine generates the DDR device secret key and programs it into the nonvolatile memory of the SEE. The DDR device secret key never connects to the DDR processor without leaving the device. The factory initialization routine computes the DDR device public key and sends it to the factory tester. For example, a factory tester can provide a 128-bit random string that is used by the factory initialization routine as a seed to generate a DDR device secret key. This requires the factory tester to include or have a connection to a high quality random bit source. Various suitable methods may be used, such as FIPS 140-2 (" deterministic random number generator "), which is seeded with the output of a hardware random source.

일부 실시예들에서, 디바이스 제조 시에, DDR 디바이스 증명이라 불리는 디지털 증명이 디바이스에 부여된다. DDR 디바이스 증명은 각 디바이스에 고유하고 서비스 제어기로 보안 통신 링크를 수립하도록 사용된다. DDR 디바이스 증명의 내용은 DDR 디바이스 공개 키를 포함한다. DDR 디바이스 증명은 증명 권한을 발급함에 의해 서명되고, 서명은 보안 링크를 설립할 때 서비스 제어기에 의해 검증된다. DDR 디바이스 증명은 민감한 정보가 아니고, 예를 들어 온-칩 또는 오프-칩 비휘발성 메모리 중 어느 것에 저장될 수 있다. OEM은 공장 초기화 루틴에 의해 내보내지는 DDR 디바이스 공개 키를 위해 DDR 디바이스 증명을 발급하고, 이는 OEM이 증명 권한(CA)을 작동하거나 그에 접속을 가지는 보안 요구사항을 시행한다. 만일 OEM이 외부로부터의 CA에 접속하도록 선택한다면, OEM의 주요 의무는 인증된 인원만이 증명을 요구할 수 있고, 그리고 그들이 FI 루틴에 의해 정당하게 내보내지는 DDR 디바이스 공개 키들을 가지는 디바이스를 위해서만 그렇게 함을 보장하는 것이다. 만일 OEM이 CA를 작동하도록 선택한다면, OEM은 CA의 보안을 유지하는 부가적 의무를 가지는데, 특히 증명을 서명하는 CA의 고정된 키의 비밀을 유지한다.In some embodiments, at the time of device fabrication, a digital certificate called a DDR device certificate is given to the device. The DDR device credentials are unique to each device and are used to establish a secure communication link with the service controller. The contents of the DDR device certificate include the DDR device public key. The DDR device certificate is signed by issuing a certificate authority, and the signature is verified by the service controller when establishing the secure link. The DDR device credentials are not sensitive information, and may be stored, for example, in either on-chip or off-chip non-volatile memory. The OEM issues a DDR device certificate for the DDR device public key that is exported by the factory initialization routine, which implements the security requirements that the OEM operates or has access to. If the OEM chooses to connect to the CA from outside, the OEM's primary obligation is that only authenticated personnel can request proof and do so only for devices with DDR device public keys that are legitimately exported by the FI routine . If the OEM chooses to operate the CA, the OEM has an additional obligation to maintain the security of the CA, especially the CA's fixed key that signs the certificate.

본원에서 설명된 다양한 실시에들의 관점에서 당업자에게 명백한 바와 같이, 다양한 다른 보안 기술들은 DDR 프로세서를 위한 OEM 프로그래밍을 위해 사용되거나 요구될 수 있다.As will be apparent to those skilled in the art in view of the various implementations described herein, various other security technologies may be used or desired for OEM programming for DDR processors.

도 15는 일부 실시예에 따른 디바이스 지원형 서비스(DAS)를 구현함을 위해 보안 디바이스 데이터 기록들을 위한 흐름도를 나타낸다. (1502)에서, 프로세스가 시작된다. (1504)에서, 무선 네트워크를 이용한 무선 통신 디바이스의 서비스 사용이 모니터링된다(예를 들어, 예컨대 보안 DDR들을 구현함을 위해 본원에서 설명되는 다양한 기술들을 포함하는, DAS 클라이언트 기반 모니터링 기술들을 이용함). (1506)에서, 무선 네트워크를 이용한 무선 통신 디바이스의 모니터링된 서비스 사용의 보안 디바이스 데이터 기록들이 생성된다. 일부 실시예들에서, 각 디바이스 데이터 기록은 디바이스 데이터 기록에 의해 포괄되는 서비스 사용 간격에 대한 서비스 사용의 내역보고를 제공하는 각 순차적 디바이스 데이터 기록을 가지는 디바이스 데이터 기록들의 순서화된 시퀀스 중 하나이고, 각 디바이스 데이터 기록은 보안된 고유의 시퀀스 순서 식별자와 관련된다. (1508)에서, 디바이스 데이터 기록(DDR)들은 본원에서 설명된 다양한 조정 및 검증 기술들을 이용하여 조정되고 검증된다. 예를 들어, DDR들은 고유의 시퀀스 순서 식별자(예를 들어, 그리고 다양한 실시예들에 대해 본원에서 설명된 바와 같은, 다양한 다른 무결성 확인 기반 기술들)를 이용하여 검증될 수 있다. 다른 예로서, DDR들은, 다양한 실시예들과 관련해 본원에서 설명된 바와 같이, 서비스 프로세서 보고들(예를 들어, 7계층 분류 보고들)과 비교함에 의해, 및/또는 네트워크 기반 서비스 사용 보고들(예를 들어, CDR 또는 IPDR와 같은, 네트워크 흐름 기록들)과 비교함에 의해 다른 서비스 사용 보고들로 조정될 수 있다. (1510)에서, 프로세스는 종료된다(예를 들어, 그리고 계속되는 서비스 사용 모니터링을 위해 반복할 수 있다).15 illustrates a flow diagram for secure device data writes for implementing Device Supported Services (DAS) in accordance with some embodiments. At step 1502, the process begins. (E.g., using DAS client-based monitoring techniques, including various techniques described herein for implementing, for example, secure DDRs). At 1506, secure device data records of the monitored service usage of the wireless communication device using the wireless network are generated. In some embodiments, each device data record is one of an ordered sequence of device data records having each sequential device data record providing a history of service usage for a service usage interval encompassed by the device data record, The device data record is associated with a secured unique sequence sequence identifier. At 1508, device data records (DDRs) are adjusted and verified using various tuning and verification techniques described herein. For example, DDRs can be verified using a unique sequence sequence identifier (e.g., various other integrity verification based techniques, as described herein for various embodiments). As another example, the DDRs can be configured to compare service processor reports (e.g., 7-tier classification reports) and / or network-based service usage reports (e.g., 7-tier classification reports), as described herein with respect to various embodiments For example, network flow records, such as CDR or IPDR, to other service usage reports. At 1510, the process is terminated (e. G., Can be repeated for continued service usage monitoring).

예시적 서비스 정책 검증 조합들Exemplary service policy validation combinations

일부 실시예들에서, 통신 디바이스는 다음을 포함한다: 적어도 하나는 광역 네트워크 연결 포트인, 하나 이상의 통신 I/O 포트들; 디바이스 통신 활동 정책을 저장하는 저장소; 사용자 어플리케이션 소프트웨어에 의해 접속 가능하지 않은 보안 실행 환경; 보안 환경에서 실행하도록, 하나 이상의 디바이스 I/O 포트들에서 디바이스 데이터 통신 활동을 모니터링하도록, 디바이스 정책 집행 클라이언트가 디바이스 통신 활동 정책을 적절하게 구현함을 검증하기에 적합한 정보를 제공하는 디바이스 통신 활동의 양태를 요약하는 디바이스 데이터 기록을 생성시키도록, 그리고 광역 네트워크 연결 포트에 대한 신뢰되는 통신 링크를 경유하여 디바이스 데이터 기록을 네트워크 요소로 전달하도록 구성되는, 하나 이상의 보안 데이터 경로 처리 에이전트; 및 하나 이상의 보안 데이터 경로 처리 에이전트와 디바이스 사용자 어플리케이션 소프트웨어에 의해 접속될 수 없는 하나 이상의 I/O 포트들 사이의 신뢰되는 데이터 경로. 일부 실시예들에서, 데이터 경로에서의 데이터 무단 조작 또는 개조가 검출가능하기 때문에 데이터 경로는 신뢰된다. 일부 실시예들에서, 데이터 경로에서 중간 요소들은 검출 없이 데이터를 개조하거나 무단 조작할 수 없다. 일부 실시예들에서, 데이터 경로는 그 경로 상에서 전송되는 데이터가 서명되었기 때문에 신뢰된다. 일부 실시예들에서, 하나 이상의 보안 데이터 경로 처리 에이전트와 하나 이상의 I/O 포트들 사이의 신뢰되는 데이터 경로가 암호화에 의해 통신을 보안하도록 또한 구성된다.In some embodiments, the communication device includes: one or more communication I / O ports, at least one of which is a wide area network connection port; A repository for storing device communication activity policies; A secure execution environment that is not accessible by user application software; To monitor device data communication activity at one or more device I / O ports so that the device policy enforcement client performs the device communication enforcement policy in a secure environment. One or more secure data path processing agents configured to generate a device data record summarizing an aspect and to forward device data records to a network element via a trusted communications link to a wide area network connection port; And a trusted data path between one or more secure data path processing agents and one or more I / O ports that can not be accessed by the device user application software. In some embodiments, the data path is trusted because data tampering or modification in the data path is detectable. In some embodiments, intermediate elements in the data path can not be modified or tampered with data without detection. In some embodiments, the data path is trusted because the data being transmitted on that path is signed. In some embodiments, a trusted data path between one or more secure data path processing agents and one or more I / O ports is also configured to secure communication by encryption.

일부 이러한 실시예들에서, 신뢰되는 통신 링크는 보안 메시지 수령 피드백 루프를 포함한다.In some such embodiments, the trusted communication link includes a secure message receipt feedback loop.

일부 실시예들에서, 하나 이상의 보안 데이터 경로 처리 에이전트들은 하나 이상의 디바이스 I/O 포트들의 접속을 제한하도록 또한 구성되고, 만일 보안 메시지 수령 피드백 루프가 오류를 나타내면, 하나 이상의 보안 데이터 경로 처리 에이전트는 하나 이상의 디바이스 I/O 포트들의 접속을 제한한다. 일부 실시예들에서, 하나 이상의 디바이스 I/O 포트들을 위한 접속의 제한은 보안 메시지 수령 피드백 루프 오류 조건이 존재할 경우 오류 처리 서비스를 디바이스에 제공하도록 구성되는 네트워크 요소로 통신을 허용한다.In some embodiments, the one or more secure data path processing agents are also configured to limit the connection of one or more device I / O ports, and if the secure message accept feedback loop indicates an error, Limit the connection of the above device I / O ports. In some embodiments, the restriction of the connection for one or more device I / O ports allows communication to a network element that is configured to provide an error handling service to the device if there is a security message receipt feedback loop error condition.

일부 실시예들에서, 통신 디바이스는 네트워크 요소로부터 디바이스 통신 활동 정책을 수신한다. 일부 실시예들에서, 디바이스 통신 활동 정책은 어플리케이션 활동 모니터링 정책을 포함한다. 일부 실시예들에서, 디바이스 통신 활동 정책은 네트워크 목적지, 주소 또는 리소스 모니터링 정책을 포함한다.In some embodiments, the communication device receives a device communication activity policy from a network element. In some embodiments, the device communication activity policy includes an application activity monitoring policy. In some embodiments, the device communication activity policy includes a network destination, address, or resource monitoring policy.

일부 실시예들에서, 디바이스 정책 집행 클라이언트가 디바이스 통신 활동 정책을 적절하게 구현하는 것을 검증하기에 적합한 정보는 하나 이상의 디바이스 I/O 포트들을 위한 통신 활동 기록들을 포함한다.In some embodiments, the information suitable for the device policy enforcement client to verify that it properly implements the device communication activity policy includes communication activity records for one or more device I / O ports.

일부 실시예들에서, 보안 실행 환경과 하나 이상의 보안 데이터 경로 처리 에이전트들은 어플리케이션 프로세서에 의해 제어되는 보안 실행 파티션에 위치된다. 일부 실시예들에서, 보안 실행 환경과 하나 이상의 보안 데이터 경로 처리 에이전트들은 운영 체계 또는 보안 구획 소프트웨어에 의해 제어되는 보안 실행 파티션에 위치된다. 일부 실시예들에서, 보안 실행 환경과 하나 이상의 보안 데이터 경로 처리 에이전트들은 모뎀 프로세서에 의해 제어되는 보안 실행 파티션에 위치된다. 일부 실시예들에서, 보안 실행 환경과 하나 이상의 보안 데이터 경로 처리 에이전트들은 SIM 카드에 위치된다.In some embodiments, the secure execution environment and the one or more secure data path processing agents are located in a secure execution partition controlled by the application processor. In some embodiments, the secure execution environment and the one or more secure data path processing agents are located in a secure execution partition controlled by the operating system or security compartment software. In some embodiments, the secure execution environment and the one or more secure data path processing agents are located in a secure execution partition controlled by the modem processor. In some embodiments, a secure execution environment and one or more secure data path processing agents are located on the SIM card.

일부 실시예들에서, 광역 네트워크는 무선 네트워크이고, 디바이스 정책 집행 클라이언트가 디바이스 통신 활동 정책을 적절하게 구현하는 것을 검증하기에 적합한 정보는 무선 네트워크 서비스 사용 기록들을 포함한다.In some embodiments, the wide area network is a wireless network, and the information suitable for the device policy enforcement client to verify that it properly implements the device communication activity policy includes wireless network service usage records.

일부 실시예들에서, 광역 네트워크는 무선 네트워크이고, 디바이스 통신 활동 정책은 무선 네트워크를 위한 네트워크 접속 제어 정책을 포함한다. 일부 이러한 실시예들에서, 무선 네트워크 접속 제어 정책은 디바이스에서 작동하는 하나 이상의 어플리케이션을 위한 하나 이상의 제어 정책들의 세트이다. 일부 실시예에서, 무선 네트워크 접속 제어 정책은 무선 네트워크 상에서 접속 가능한 하나 이상의 네트워크 목적지들, 주소들 또는 리소스들을 위한 하나 이상의 특정 접속 제어 정책들의 세트이다. 일부 실시예들에서, 무선 네트워크는 로밍 네트워크이고, 네트워크 접속 제어 정책은 디바이스 로밍 네트워크 연결 조건에 특정되고 홈 네트워크 연결 조건과 다른 정책들을 정의한다.In some embodiments, the wide area network is a wireless network and the device communication activity policy includes a network access control policy for the wireless network. In some such embodiments, the wireless network access control policy is a set of one or more control policies for one or more applications operating on the device. In some embodiments, the wireless network access control policy is a set of one or more specific access control policies for one or more network destinations, addresses or resources accessible on the wireless network. In some embodiments, the wireless network is a roaming network, and the network access control policies are specific to device roaming network connection conditions and define policies different from home network connection conditions.

일부 실시예들에서, 광역 네트워크는 무선 네트워크이고 디바이스 통신 활동 정책은 무선 네트워크를 위한 네트워크 접속 서비스 사용 내역보고 정책을 포함한다. 일부 이러한 실시예들에서, 네트워크 접속 서비스 사용 내역보고 정책은 디바이스에서 작동하는 하나 이상의 어플리케이션을 위한 하나 이상의 서비스 사용 내역보고 정책들의 세트이다. 일부 실시예들에서, 네트워크 접속 서비스 사용 내역보고 정책은 무선 네트워크에 대해 접속 가능한 하나 이상의 네트워크 목적지, 주소 또는 리소스들을 위한 하나 이상의 서비스 사용 내역보고 정책들의 세트이다. 일부 실시예들에서, 무선 네트워크는 로밍 네트워크이고, 네트워크 접속 서비스 사용 내역보고 정책은 디바이스 로밍 네트워크 연결 조건에 특정되고 홈 네트워크 연결 조건과 다른 서비스 사용 내역보고 정책들을 정의한다. 일부 이러한 실시예들에서, 디바이스 통신 활동 정책은 디바이스 사용자로부터 접속 네트워크 서비스 비용 인정 또는 지불 표시를 요구하는 것과 사용자가 서비스 비용 인정 또는 지불 표시를 제공하지 않는다면 디바이스 로밍 네트워크 접속 권한을 제한하는 것을 포함한다.In some embodiments, the wide area network is a wireless network and the device communication activity policy includes a network access service usage history reporting policy for a wireless network. In some such embodiments, the network access service usage history reporting policy is a set of one or more service usage history reporting policies for one or more applications operating on the device. In some embodiments, the network access service usage history reporting policy is a set of one or more service usage reporting policies for one or more network destinations, addresses, or resources accessible to the wireless network. In some embodiments, the wireless network is a roaming network, and the network access service usage history reporting policy is specific to device roaming network connection conditions and defines home network connection conditions and other service usage history reporting policies. In some such embodiments, the device communication activity policy includes requesting access network service cost recognition or payment indication from the device user and limiting the device roaming network access rights if the user does not provide a service cost recognition or payment indication .

일부 실시예들에서, 네트워크 시스템은 다음을 포함한다: 디바이스 통신 활동 정책을 저장하도록 구성된 메모리; 하나 이상의 보안 데이터 경로 처리 에이전트에 대한 광역 네트워크 상에서의 신뢰되는 통신 링크; 디바이스 정책 집행 클라이언트에 대한 광역 네트워크 상에서의 통신 링크; 및 다음으로 구성되는 정책 검증 프로세서, (i) 디바이스 데이터 기록들을 저장하도록 구성되고, (ii) 신뢰되는 통신 링크 상에서 통신 디바이스로부터 디바이스 데이터 기록들을 수신하도록 구성되고, 디바이스 데이터 기록들은 디바이스 정책 집행 클라이언트가 디바이스 통신 활동 정책을 적절하게 구현함을 검증하기에 적합한 정보를 제공하는 디바이스 통신 활동의 양태를 요약하는 정보를 포함하고, (iii) 디바이스 정책 집행 클라이언트가 디바이스 통신 활동 정책을 적절하게 구현하는 지를 판단하도록 디바이스 데이터 기록에서 포함된 정보를 분석하도록 구성되고, 그리고 (iv) 그 분석이 디바이스 정책 집행 클라이언트가 디바이스 통신 활동 정책을 적절하게 구현하지 않음을 나타낸다면 오류 처리 작동을 취하도록 구성된다.In some embodiments, the network system includes: a memory configured to store a device communication activity policy; A trusted communication link over a wide area network to one or more secure data path processing agents; A communication link over a wide area network to a device policy enforcement client; And a policy verification processor configured to: (i) store device data records, (ii) receive device data records from a communication device over a trusted communication link, (Iii) determining whether the device policy enforcement client properly implements the device communication activity policy; and (iii) determining whether the device communication enforcement client properly implements the device communication activity policy. And (iv) the analysis is configured to take an error handling action if the device policy enforcement client indicates that it does not properly implement the device communication activity policy.

일부 이러한 실시예들에서, 신뢰되는 통신 링크는 보안 메시지 수령 피드백 루프를 포함한다. 일부 실시예들에서, 네트워크 시스템은 오류 조건이 보안 메시지 수령 피드백 루프로 존재할 경우, 관리 또는 오류 추적 시스템에 대한 오류 조건을 표시할 때 그리고 오류를 분석하거나 디바이스 사용자에게 오류 메시지를 제공하도록 디바이스와 통신할 때를 검출하는 오류 처리 프로세서를 더 포함한다.In some such embodiments, the trusted communication link includes a secure message receipt feedback loop. In some embodiments, the network system communicates with the device when an error condition exists in the secure message receipt feedback loop, when displaying an error condition for the management or error tracking system, and when analyzing the error or providing an error message to the device user And an error processing processor for detecting when the error occurs.

일부 실시예들에서, 네트워크 시스템은 디바이스 통신 활동 정책을 디바이스로 전달한다. 일부 실시예들에서, 디바이스 통신 활동 정책은 어플리케이션 활동 모니터링 정책을 포함한다. 일부 실시예들에서, 디바이스 통신 활동 정책은 네트워크 목적지, 주소 또는 리소스 모니터링 정책을 포함한다.In some embodiments, the network system communicates device communication activity policies to the device. In some embodiments, the device communication activity policy includes an application activity monitoring policy. In some embodiments, the device communication activity policy includes a network destination, address, or resource monitoring policy.

일부 실시예들에서, 디바이스 정책 집행 클라이언트가 디바이스 통신 활동 정책을 적절하게 구현하는 지를 검증하기에 적합한 정보는 하나 이상의 디바이스 I/O 포트들을 위한 통신 활동 기록들을 포함한다.In some embodiments, the information suitable for verifying that a device policy enforcement client properly implements a device communication activity policy includes communication activity records for one or more device I / O ports.

일부 실시예들에서, 광역 네트워크는 무선 네트워크이고, 디바이스 정책 집행 클라이언트가 디바이스 통신 활동 정책을 적절하게 구현하는 지를 검증하기에 적합한 정보는 디바이스 무선 네트워크 서비스 사용 기록들을 포함한다.In some embodiments, the wide area network is a wireless network, and the information suitable for verifying that the device policy enforcement client properly implements the device communication activity policy includes device wireless network service usage records.

일부 실시예들에서, 광역 네트워크는 무선 네트워크이고, 디바이스 통신 활동 정책은 무선 네트워크를 위한 네트워크 접속 제어 정책을 포함한다. 일부 이러한 실시예들에서, 무선 네트워크 접속 제어 정책은 디바이스에서 작동하는 하나 이상의 어플리케이션들을 위한 하나 이상의 제어 정책들의 세트이다. 일부 실시예들에서, 무선 네트워크 접속 제어 정책은 무선 네트워크에 대해 접속 가능한 하나 이상의 네트워크 목적지들, 주소들 또는 리소스들을 위한 하나 이상의 특정 접속 제어 정책들의 세트이다. 일부 실시예들에서, 무선 네트워크는 로밍 네트워크이고 네트워크 접속 제어 정책은 디바이스 로밍 네트워크 연결 조건에 특정하고 홈 네트워크 연결 조건과 다른 정책들을 정의한다.In some embodiments, the wide area network is a wireless network and the device communication activity policy includes a network access control policy for the wireless network. In some such embodiments, the wireless network access control policy is a set of one or more control policies for one or more applications operating in the device. In some embodiments, the wireless network access control policy is a set of one or more specific access control policies for one or more network destinations, addresses or resources accessible to the wireless network. In some embodiments, the wireless network is a roaming network and the network access control policy is specific to the device roaming network connection conditions and defines policies different from home network connection conditions.

일부 실시예들에서, 광역 네트워크는 무선 네트워크이고, 디바이스 통신 활동 정책은 무선 네트워크를 위한 네트워크 접속 서비스 사용 내역보고 정책을 포함한다. 일부 이러한 실시예에서, 네트워크 접속 서비스 사용 내역보고 정책은 디바이스에서 작동하는 하나 이상의 어플리케이션을 위한 하나 이상의 서비스 사용 내역보고 정책들의 세트이다. 일부 실시예들에서, 네트워크 접속 서비스 사용 내역보고 정책은 무선 네트워크에 대해 접속 가능한 하나 이상의 네트워크 목적지들, 주소들 또는 리소스들을 위한 하나 이상의 서비스 사용 내역보고 정책들의 세트이다. 일부 실시예들에서, 무선 네트워크는 로밍 네트워크이고 네트워크 접속 서비스 사용 내역보고 정책은 디바이스 로밍 네트워크 연결 조건에 특정하고 홈 네트워크 연결 조건과 다른 서비스 사용 내역보고 정책들을 정의한다. In some embodiments, the wide area network is a wireless network and the device communication activity policy includes a network access service usage history reporting policy for the wireless network. In some such embodiments, the network access service usage history reporting policy is a set of one or more service usage history reporting policies for one or more applications operating on the device. In some embodiments, the network access service usage history reporting policy is a set of one or more service usage reporting policies for one or more network destinations, addresses or resources accessible to the wireless network. In some embodiments, the wireless network is a roaming network and the network access service usage history reporting policy specifies device roaming network connection conditions and defines home network connection conditions and other service usage history reporting policies.

수령 피드백 루프를 이용한 예시적 조합Example combination using an incoming feedback loop

일부 실시예들에서, 통신 디바이스는 다음을 포함한다: 적어도 하나는 광역 네트워크 연결 포트인, 하나 이상의 I/O 포트들; 사용자 어플리케이션 소프트웨어에 의해 접속할 수 없는 보안 실행 환경; (i) 보안 환경에서 실행하도록, (ii) 하나 이상의 디바이스 I/O 포트들에 대해 통신 활동을 모니터링하도록, (iii) 디바이스 I/O 포트 통신 활동의 양태를 요약하는 디바이스 데이터 기록을 생성시키도록, (iv) 광역 네트워크 연결 포트에 대한 신뢰되는 통신 링크를 경유하여 디바이스 데이터 기록을 네트워크 요소로 전달하도록, 그리고 신뢰되는 통신 링크는 보안 메시지 수령 피드백 루프를 포함하고, 하나 이상의 보안 데이터 경로 처리 에이전트들은 네트워크 요소로 성공적으로 전송되고 그에 의해 검증되는 데이터 기록들을 위한 네트워크 요소로부터 성공적 전송 수령을 수신하는, (v) 전송된 디바이스 데이터 기록들과 네트워크 요소로부터 수신되는 성공적인 전송 수령을 추적하도록, 그리고 (vi) 만일 하나 이상의 성공적 전송 수령이 신뢰되는 통신 링크상에서 네트워크 요소로 디바이스 데이터 기록을 전송한 후에 특정 이벤트 간격 내에서 대응하는 전송된 디바이스 데이터 기록들을 위해 수신되지 않는다면, 하나 이상의 I/O 포트들의 접속을 제한하도록, 구성되는 하나 이상의 보안 데이터 경로 처리 에이전트들; 및 하나 이상의 보안 데이터 경로 처리 에이전트들과 디바이스 사용자 어플리케이션 소프트웨어에 의해 접속될 수 없는 하나 이상의 I/O 포트들 사이의 보안 데이터 경로. 일부 이러한 실시예들에서, 하나 이상의 디바이스 I/O 포트들에 대한 접속의 제한은 보안 메시지 수령 피드백 루프 오류 조건이 존재할 경우 통신 디바이스가 디바이스에 오류 처리 서비스를 제공하도록 구성되는 네트워크 요소와 통신하게 한다. 일부 이러한 실시예들에서, 특정 이벤트 간격은 기간, 많은 전송된 기록들, 또는 많은 네트워크 요소와의 통신을 포함한다.In some embodiments, the communication device comprises: one or more I / O ports, at least one of which is a wide area network connection port; A security execution environment that can not be accessed by user application software; (i) to run in a secure environment, (ii) to monitor communication activity for one or more device I / O ports, (iii) to generate device data records summarizing aspects of device I / O port communication activity , (iv) communicate the device data record to the network element via a trusted communication link to the wide area network connection port, and the trusted communication link comprises a secure message receipt feedback loop, wherein one or more secure data path processing agents (V) track successful data transmissions received from the network element and the transmitted device data records, and (vi) ) If one or more successful transmission receipt One or more secure data path processing configured to limit the connection of one or more I / O ports if not received for corresponding transmitted device data records within a particular event interval after transferring the device data record to a network element on the network Agents; And a secure data path between one or more secure data path processing agents and one or more I / O ports that can not be accessed by the device user application software. In some such embodiments, the restriction of connection to one or more device I / O ports allows the communication device to communicate with a network element that is configured to provide an error handling service to the device if there is a security message receipt feedback loop error condition . In some such embodiments, the specific event interval includes a period, a number of transmitted records, or communication with many network elements.

일부 실시예들에서, 보안 실행 환경 및 하나 이상의 보안 데이터 경로 처리 에이전트들은 어플리케이션 프로세서에 의해 제어되는 보안 실행 파티션에 위치된다. 일부 실시예들에서, 보안 실행 환경 및 하나 이상의 보안 데이터 경로 처리 에이전트들은 모뎀 프로세서에 의해 제어되는 보안 실행 파티션에 위치된다. 일부 실시예들에서, 보안 실행 환경 및 하나 이상의 보안 데이터 경로 처리 에이전트들은 SIM 카드에 위치된다.In some embodiments, the secure execution environment and the one or more secure data path processing agents are located in a secure execution partition controlled by the application processor. In some embodiments, the secure execution environment and the one or more secure data path processing agents are located in a secure execution partition controlled by the modem processor. In some embodiments, a secure execution environment and one or more secure data path processing agents are located on the SIM card.

일부 실시예들에서, 디바이스 데이터 기록에서 요약되는 디바이스 I/O 포트 통신 활동의 양태는 디바이스 어플리케이션 접속 활동의 요약을 포함한다. 일부 실시예들에서, 디바이스 데이터 기록에서 요약되는 디바이스 I/O 포트 통신 활동의 양태는 디바이스 네트워크 접속 활동의 요약을 포함한다. 일부 실시예들에서, 디바이스 데이터 기록에서 요약되는 디바이스 I/O 포트 통신 활동의 양태는 디바이스 내용 통신 활동의 요약을 포함한다.In some embodiments, aspects of the device I / O port communication activity summarized in the device data record include a summary of device application connection activity. In some embodiments, aspects of the device I / O port communication activity summarized in the device data record include a summary of device network connection activity. In some embodiments, aspects of the device I / O port communication activity summarized in the device data record include a summary of device content communication activity.

일부 실시예들에서, 네트워크 시스템은 다음을 포함한다: 디바이스 데이터 기록들을 수신하기 위한 하나 이상의 보안 데이터 경로 처리 에이전트들로의 광역 네트워크에 대한 신뢰되는 통신 링크로서, 디바이스 데이터 기록들은 디바이스 I/O 포트 통신 활동의 양태의 요약을 포함하고, 신뢰되는 통신 링크는 보안 메시지 수령 피드백 루프를 포함하고 네트워크 기반 시스템은 성공적 전송 수령을 네트워크 기반 시스템에 의해 성공적으로 수신되고 그에 의해 검증되는 데이터 기록들을 위한 하나 이상의 보안 데이터 경로 처리 에이전트로 전송하는, 신뢰되는 통신 링크; 그리고 디바이스 데이터 기록들을 저장하기 위한 저장 시스템. 일부 실시예들에서, 네트워크 시스템은 오류 조건이 보안 메시지 수령 피드백 루프로 존재할 경우, 그리고 오류를 검출한 후, 관리 또는 오류 추적 시스템으로 오류 조건을 표시할 때를 검출하는 오류 처리 프로세서를 더 포함한다. 일부 실시예들에서, 네트워크 시스템은 오류 조건을 분석하거나 또는 디바이스 사용자에게 오류 메시지를 제공하기 위해 오류 조건 중에 디바이스와 통신하는 시스템을 포함한다.In some embodiments, the network system includes: a trusted communication link to a wide area network to one or more secure data path processing agents for receiving device data records, wherein the device data records are stored in a device I / O port Wherein the trusted communication link comprises a secure message receipt feedback loop and the network based system includes a summary of aspects of the communication activity for one or more A trusted communication link transmitting to the secure data path processing agent; And a storage system for storing device data records. In some embodiments, the network system further includes an error handling processor that detects when an error condition exists in the secure message receipt feedback loop, and after detecting an error, when the error condition is indicated by the management or error tracking system . In some embodiments, the network system includes a system for communicating with a device during an error condition to analyze an error condition or to provide an error message to a device user.

일부 실시예들에서, 네트워크 시스템은 디바이스 데이터 기록 분석기를 더 포함하는데, 디바이스 데이터 기록 분석기는: (i) 허용 가능한 디바이스 I/O 포트 통신 거동을 포함하는 디바이스 I/O 포트 통신 활동 정책을 저장하도록, (ii) I/O 포트 통신 활동 정책과 디바이스 데이터 기록들을 비교하도록, 및 (iii) I/O 포트 통신 활동 정책에서 특정된 거동 제한의 밖에 있는 I/O 포트 통신 활동을 디바이스 데이터 기록들이 표시할 때 I/O 포트 활동 오류 조건을 선언하도록 구성된다. In some embodiments, the network system further comprises a device data record analyzer that is configured to: (i) store a device I / O port communication activity policy that includes an acceptable device I / O port communication behavior , (ii) compare I / O port communication activity policies with device data records, and (iii) display device data records indicating I / O port communication activities outside the behavior limits specified in the I / O port communication activity policy The I / O port activity error condition.

일부 실시예들에서, 디바이스 데이터 기록에서 요약되는 디바이스 I/O 포트 통신 활동의 양태는 디바이스 어플리케이션 접속 활동의 요약을 포함한다. 일부 실시예들에서, 디바이스 데이터 기록에서 요약되는 디바이스 I/O 포트 통신 활동의 양태는 디바이스 네트워크 접속 활동의 요약을 포함한다. 일부 실시예들에서, 디바이스 데이터 기록에서 요약되는 디바이스 I/O 포트 통신 활동의 양태는 디바이스 내용 통신 활동의 요약을 포함한다.In some embodiments, aspects of the device I / O port communication activity summarized in the device data record include a summary of device application connection activity. In some embodiments, aspects of the device I / O port communication activity summarized in the device data record include a summary of device network connection activity. In some embodiments, aspects of the device I / O port communication activity summarized in the device data record include a summary of device content communication activity.

SIMSIM 카드를 이용한 예시적 조합 Example combinations using cards

일부 실시예들에서, 통신 디바이스는 다음을 포함한다: 적어도 광역 네트워크 연결 포트를 포함하는 하나 이상의 통신 I/O 포트들; 디바이스 통신 활동 정책을 저장하기 위한 저장소; 및 SIM 카드로서, (i) 사용자 어플리케이션 소프트웨어에 의해 접속 가능하지 않은 보안 실행 환경, (ii) 보안 실행 환경에서 실행하도록, 그리고 디바이스 통신 활동 정책을 집행하기 위해 하나 이상의 I/O 포트들로의 디바이스 데이터 경로 통신에서 작동하도록 구성되는 하나 이상의 보안 데이터 경로 처리 에이전트들, 및 (iii) 하나 이상의 보안 데이터 경로 처리 에이전트들로부터 하나 이상의 I/O 포트 모뎀들로 데이터 경로 통신을 위한 신뢰되는 데이터 경로 링크로서, 하나 이상의 I/O 포트 모뎀들은 사용자 어플리케이션 소프트웨어에 의해 접속 가능하지 않은 보안 모뎀 프로세서 실행 환경을 포함하는, 신뢰되는 데이터 경로 링크로 구성되는, SIM 카드. 일부 실시예들에서, 하나 이상의 보안 데이터 경로 처리 에이전트들은 광역 네트워크 연결 포트들에 대해 네트워크 요소로의 신뢰되는 통신 링크로 또한 구성된다.In some embodiments, the communication device includes: one or more communication I / O ports, including at least a wide area network connection port; A repository for storing device communication activity policies; (I) a security execution environment that is not accessible by user application software, (ii) a device that is configured to execute in a secure execution environment and to communicate with a device to one or more I / O ports One or more secure data path processing agents configured to operate in data path communications, and (iii) a trusted data path link for data path communications from one or more secure data path processing agents to one or more I / O port modems Wherein the one or more I / O port modems are configured with a trusted data path link that includes a secure modem processor execution environment that is not accessible by user application software. In some embodiments, one or more secure data path processing agents are also configured with trusted communication links to network elements for wide area network connection ports.

일부 이러한 실시예들에서, 디바이스 통신 활동 정책은 디바이스 I/O 포트 통신 보고 정책이고, 하나 이상의 보안 데이터 경로 처리 에이전트들은: (i) 하나 이상의 I/O 포트들에서 수행되는 통신 활동을 모니터링 및/또는 보고하도록, (ii) 통신 활동을 요약하는 디바이스 데이터 기록을 만들도록, 그리고 (iii) 디바이스 데이터 기록들을 신뢰되는 통신 링크 상에서 네트워크 요소로 전송하도록 또한 구성된다. 일부 실시예들에서, 통신 활동의 모니터링 및/또는 보고는 데이터 사용을 모니터링하는 것을 포함한다. 일부 실시예들에서, 데이터 사용의 모니터링 및/또는 보고는 데이터 사용과 관련되어 접속되는 네트워크 목적지의 분류를 포함한다. 일부 실시예들에서, 데이터 사용의 모니터링 및/또는 보고는 데이터 사용을 생성시키는 디바이스 어플리케이션의 분류를 포함한다. 일부 실시예들에서, 통신 활동을 모니터링하는 것은 로밍 서비스 사용을 모니터링하는 것을 포함한다. 일부 실시예들에서, 통신 활동을 모니터링하는 것은 하나 이상의 QoS 등급들을 위한 서비스 사용을 모니터링하는 것을 포함한다. 일부 실시예들에서, 통신 활동을 모니터링하는 것은 음성 사용을 모니터링하는 것을 포함한다.In some such embodiments, the device communication activity policy is a device I / O port communication reporting policy, and the one or more secure data path processing agents are configured to: (i) monitor and / or monitor communication activity performed on one or more I / (Ii) make a device data record summarizing communication activity, and (iii) transmit device data records to the network element on a trusted communication link. In some embodiments, monitoring and / or reporting of communication activity includes monitoring data usage. In some embodiments, the monitoring and / or reporting of data usage includes a classification of network destinations to be connected in association with data usage. In some embodiments, the monitoring and / or reporting of data usage includes a classification of device applications that generate data usage. In some embodiments, monitoring communication activity includes monitoring roaming service usage. In some embodiments, monitoring communication activity includes monitoring service usage for one or more QoS classes. In some embodiments, monitoring communication activity includes monitoring voice usage.

일부 실시예들에서, 서비스 프로세서는 어플리케이션 정보를 디바이스 에이전트로부터 수집하도록 또한 구성된다.In some embodiments, the service processor is also configured to collect application information from the device agent.

일부 실시예들에서, 디바이스 통신 활동 정책은 디바이스 I/O 포트 통신 제어 정책이고 서비스 프로세서는: (i) 하나 이상의 I/O 포트들에서 수행되는 통신 활동을 모니터링하도록, 그리고 (ii) 하나 이상의 I/O 포트들에서 I/O 포트 통신 정책을 집행하도록 또한 구성된다.In some embodiments, the device communication activity policy is a device I / O port communication control policy and the service processor is configured to: (i) monitor communication activity performed at one or more I / O ports; and (ii) Lt; RTI ID = 0.0 > I / O < / RTI >

일부 실시예들에서, 통신 제어 정책은 하나 이상의 네트워크 목적지를 위한 제어 정책을 특정한다. 일부 실시예들에서, 통신 제어 정책은 하나 이상의 디바이스 어플리케이션을 위한 제어 정책을 특정한다. 일부 실시예들에서, 통신 제어 정책은 로밍 네트워크를 위한 제어 정책을 특정한다. 일부 실시예들에서, 통신 제어 정책은 QoS 서비스 등급을 위한 제어 정책을 특정한다.In some embodiments, the communication control policy specifies a control policy for one or more network destinations. In some embodiments, the communication control policy specifies a control policy for one or more device applications. In some embodiments, the communication control policy specifies a control policy for the roaming network. In some embodiments, the communication control policy specifies a control policy for the QoS class of service.

일부 실시예들에서, 하나 이상의 보안 데이터 처리 에이전트들 및 하나 이상의 I/O 포트 모뎀들 사이의 신뢰되는 데이터 경로 통신은 서명에 의해 또는 공유 키로 암호화함에 의해 보안된다. 일부 실시예들에서, 하나 이상의 보안 데이터 경로 처리 에이전트들은 광역 네트워크 연결 포트에 대해 네트워크 요소로의 신뢰되는 통신 링크로 또한 구성되고, 공유되는 키는 네트워크 요소로부터 얻어진다. In some embodiments, trusted data path communications between one or more secure data processing agents and one or more I / O port modems are secured by signing or by encrypting with a shared key. In some embodiments, the one or more secure data path processing agents are also configured with a trusted communication link to the network element for the wide area network connection port, and the shared key is obtained from the network element.

비록 앞에서의 실시예들이 이해의 명확성을 위해 다소 자세히 설명되었지만, 발명은 제공된 상세한 사항들로 제한되지 않는다. 발명을 구현하는 많은 대안적인 방식들이 있다. 개시된 실시예들은 예시적이고 제한적이지 않다.Although the foregoing embodiments have been described in some detail for purposes of clarity of understanding, the invention is not limited to the details provided. There are many alternative ways of implementing the invention. The disclosed embodiments are illustrative and not restrictive.

Claims (28)

네트워크 시스템으로,
복수의 이동 최종 사용자 디바이스 중 적어도 제1이동 최종 사용자 디바이스에 적용가능한 디바이스 통신 활동 정책을 저장하도록 구성되는 메모리;
복수의 이동 최종 사용자 디바이스 각각과 서비스 제어기 사이에 별도의 보안 데이터 채널들을 유지하고, 각 디바이스에서 동작하는 보안 디바이스 데이터 기록(Device Data Record, DDR) 발생기에 의해 발생되는 DDR의 각 시퀀스를 각 채널을 통해 수신하기 위한 서비스 제어기로, 각 DDR 시퀀스는 각 이동 최종 사용자 디바이스의 데이터 통신 활동용 보안 DDR 발생기에 의해 실행되는 정보를 포함하는 것인, 서비스 제어기; 및
정책 검증 프로세서를 포함하되,
상기 정책 검증 프로세서는, 제1이동 최종 사용자 디바이스를 위해,
분석 결과를 만들기 위해, 제1이동 최종 사용자 디바이스의 보안 DDR 발생기에 의해 발생되는 DDR의 시퀀스의 하나 이상 수신된 DDR로부터의 데이터 통신 활동 정보를 분석하고,
예상되지 않는 정책 행동을 나타내는 분석 결과에 기초하여, 제1이동 최종 사용자 디바이스가 장치 통신 활동 정책에 따라 작동하는지 또는 작동하였는지를 판단하고,
제1이동 최종 사용자 디바이스가 장치 통신 활동 정책에 따라 작동하지 않거나 작동하지 않았다고 판단하면, 오류 처리 작동을 시작하도록 구성되는 것을 특징으로 하는 네트워크 시스템.
As a network system,
A memory configured to store a device communication activity policy applicable to at least a first of the plurality of mobile end user devices;
Maintaining separate secure data channels between each of the plurality of mobile end user devices and the service controller and providing each sequence of DDR generated by a Device Data Record (DDR) generator operating in each device to each channel Wherein each DDR sequence comprises information executed by a secure DDR generator for data communication activity of each mobile end user device; And
Includes a policy validation processor,
The policy validation processor, for the first mobile end user device,
Analyzing data communication activity information from one or more received DDRs of the sequence of DDRs generated by the secure DDR generator of the first mobile end user device,
Determining whether the first mobile end user device is operating or operating according to the device communication activity policy based on the analysis result indicating the unexpected policy action,
And to initiate an error handling operation if the first mobile end user device determines that it has not operated or has not operated in accordance with the device communication activity policy.
제1항에 있어서,
상기 제1이동 최종 사용자 디바이스가 상기 디바이스 통신 활동 정책에 따라 작동하는지 또는 작동하였는지를 판단하는 것은, 제1이동 최종 사용자 디바이스에서의 정책 집행 클라이언트가 상기 디바이스 통신 활동 정책을 정확하게 구현하지 않는다고 판단하는 것을 포함하는, 네트워크 시스템.
The method according to claim 1,
Determining whether the first mobile end user device is operating or operating in accordance with the device communication activity policy comprises determining that the policy enforcement client at the first mobile end user device does not correctly implement the device communication activity policy Network system.
제1항에 있어서,
보안 DDR 발생기가 제1이동 최종 사용자 디바이스에서 작동하는 것을 더 포함하는, 네트워크 시스템.
The method according to claim 1,
Wherein the secure DDR generator operates on a first mobile end user device.
제3항에 있어서,
제1이동 최종 사용자 디바이스에서 작동하는 보안 DDR 발생기는, DDR을 암호화한 후, 보안 데이터 채널을 통해 서비스 제어기로의 전송을 위해, 암호화된 DDR을 제1이동 최종 사용자 디바이스의 보안되지 않은 영역에 제출하고, 서비스 제어기는 암호화된 DDR을 해독하는 것인, 네트워크 시스템.
The method of claim 3,
A secure DDR generator operating on the first mobile end user device may encrypt the DDR and then submit the encrypted DDR to an unsecured area of the first mobile end user device for transmission to the service controller via the secure data channel And the service controller decrypts the encrypted DDR.
제3항에 있어서,
제1이동 최종 사용자 디바이스에서 작동하는 보안 DDR 발생기는, 보안 DDR을 서비스 제어기로 전송하기 전에 서비스 제어기와 인증 프로토콜 교체 시퀀스를 수행하는 것인, 네트워크 시스템.
The method of claim 3,
Wherein the secure DDR generator operating in the first mobile end user device performs an authentication protocol alternation sequence with the service controller prior to sending the secure DDR to the service controller.
제3항에 있어서,
보안 DDR 발생기는 DDR의 순서화된 시퀀스를 만들기 위해 제1이동 최종 사용자 디바이스의 데이터 통신 활동용 정보를 실행하고, 시퀀스에서 각 DDR은 그 DDR에 의해 포괄되는 서비스 사용 간격에 대한 무선 네트워크 서비스 사용의 중단 없는 내역보고(accounting)를 제공하는 것인, 네트워크 시스템.
The method of claim 3,
The secure DDR generator executes information for data communication activity of the first mobile end user device to create an ordered sequence of DDRs, and each DDR in the sequence terminates the use of the wireless network service for the service usage interval covered by the DDR Wherein the network system provides no historical accounting.
제1항에 있어서,
상기 정책 검증 프로세서 및 서비스 제어기는 동일한 하드웨어 디바이스에서 작동하는 것인, 네트워크 시스템.
The method according to claim 1,
Wherein the policy validation processor and the service controller operate on the same hardware device.
제1항에 있어서,
상기 분석 결과는, DDR의 정보가 규정된 프로토콜에 따라 구성되지 않았다는 것을 하나 이상의 수신된 DDR의 분석이 나타내는 경우, 정책 검증 프로세서에 의해 설정된 사기 감지 오류 플래그를 포함하는 것인, 네트워크 시스템.
The method according to claim 1,
Wherein the analysis results include a fraud detection error flag set by the policy verification processor if the analysis of the one or more received DDRs indicates that the information in the DDR is not configured according to a prescribed protocol.
제1항에 있어서,
상기 분석 결과는, 하나 이상의 수신된 DDR의 분석이, 예상되는 시퀀스에서 하나 이상의 DDR이 손실되었음을 나타내는 경우, 정책 검증 프로세서에 의해 설정된 사기 감지 오류 플래그를 포함하는 것인, 네트워크 시스템.
The method according to claim 1,
Wherein the analysis results include a fraud detection error flag set by the policy verification processor if the analysis of the one or more received DDRs indicates that one or more DDRs have been lost in the expected sequence.
제1항에 있어서,
상기 분석 결과는, 하나 이상의 수신된 DDR에서 데이터 통신 활동 정보가 서비스 사용 정보의 제2소스와 조정될 수 없다는 것을 하나 이상의 수신된 DDR의 분석이 나타내는 경우, 정책 검증 프로세서에 의해 설정된 사기 감지 오류 플래그를 포함하는 것인, 네트워크 시스템.
The method according to claim 1,
The analysis results indicate that if the analysis of one or more received DDRs indicates that the data communication activity information in one or more received DDRs can not be coordinated with the second source of service usage information then the fraud detection error flag set by the policy verification processor The network system.
제1항에 있어서,
상기 분석 결과는, 데이터 통신 활동 정보가, 어플리케이션이 네트워크에 접속하고 디바이스 통신 활동 정책은 애플리케이션이 네트워크에 접속하는 것을 허용하지 않는다는 것을 나타내는 경우, 예상되지 않는 정책 행동을 나타내는 것인, 네트워크 시스템.
The method according to claim 1,
Wherein the analysis result indicates an unexpected policy action if the data communication activity information indicates that the application is connected to the network and the device communication activity policy indicates that the application does not allow the network to access the network.
제1항에 있어서,
상기 분석 결과는, 데이터 통신 활동 정보가, 하나 이상의 어플리케이션이 디바이스 통신 활동 정책에 의해 허용되지 않는 방식으로 네트워크에 접속하는 것을 나타내는 경우, 예상되지 않는 정책 행동을 나타내는 것인, 네트워크 시스템.
The method according to claim 1,
Wherein the analysis result indicates an unexpected policy action when data communication activity information indicates that one or more applications are connected to the network in a manner not allowed by a device communication activity policy.
제1항에 있어서,
상기 분석 결과는, 데이터 통신 활동 정보가, 상기 디바이스가 디바이스 통신 활동 정책에 의해 허용되지 않는 네트워크에 접속한다는 것을 나타내는 경우, 예상되지 않는 정책 행동을 나타내는 것인, 네트워크 시스템.
The method according to claim 1,
Wherein the analysis result indicates an unexpected policy action if the data communication activity information indicates that the device is connected to a network that is not allowed by the device communication activity policy.
제1항에 있어서,
상기 분석 결과는, 데이터 통신 활동 정보가, 상기 디바이스가 디바이스 통한 활동 정책에 의한 특정 내용을 허용하지 않는 네트워크를 통해 그 특정 내용을 통신하는 것을 나타내는 경우, 예상되지 않는 정책 행동을 나타내는 것인, 네트워크 시스템.
The method according to claim 1,
Wherein the analysis result indicates an unexpected policy action when the data communication activity information indicates that the device communicates its specific content via a network that does not allow specific content by the device-initiated policy. system.
제1항에 있어서,
상기 분석 결과는, 데이터 통신 활동 정보가, 상기 디바이스가 보안되지 않은 링크를 통해 특정 내용을 통신하고 상기 디바이스 통신 활동 정책은 특정 내용이 보안 링크를 통해 통신되는 것을 요구하는 것을 나타내는 경우, 예상되지 않는 정책 행동을 나타내는 것인, 네트워크 시스템.
The method according to claim 1,
The analysis results indicate that if the data communication activity information indicates that the device communicates a particular content over an unsecured link and the device communication activity policy indicates that certain content needs to be communicated over the secure link, Wherein the network behavior is indicative of policy behavior.
제1항에 있어서,
상기 오류 처리 작동은 제1이동 최종 사용자 디바이스용 네트워크 액세스 제한을 포함하는 것인, 네트워크 시스템.
The method according to claim 1,
Wherein the error handling operation comprises a network access restriction for a first mobile end user device.
제1항에 있어서,
상기 오류 처리 작동은 제1이동 최종 사용자 디바이스의 사용자 및 네트워크 관리자 중 적어도 하나의 통지를 포함하는 것인, 네트워크 시스템.
The method according to claim 1,
Wherein the error handling operation comprises a notification of at least one of a user of the first mobile end user device and a network administrator.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020137010760A 2010-09-28 2011-09-28 Secure device data records KR101934601B1 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US38724710P 2010-09-28 2010-09-28
US61/387,247 2010-09-28
US42072710P 2010-12-07 2010-12-07
US61/420,727 2010-12-07
PCT/US2011/053791 WO2012050933A1 (en) 2010-09-28 2011-09-28 Secure device data records

Publications (2)

Publication Number Publication Date
KR20130114663A KR20130114663A (en) 2013-10-18
KR101934601B1 true KR101934601B1 (en) 2019-01-02

Family

ID=45938646

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137010760A KR101934601B1 (en) 2010-09-28 2011-09-28 Secure device data records

Country Status (9)

Country Link
EP (1) EP2622835A4 (en)
JP (1) JP2014500989A (en)
KR (1) KR101934601B1 (en)
CN (1) CN103250401A (en)
AU (1) AU2011314086A1 (en)
BR (1) BR112013006890A2 (en)
CA (1) CA2813026C (en)
MX (1) MX2013003624A (en)
WO (1) WO2012050933A1 (en)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103390124B (en) * 2012-05-08 2017-12-15 阿姆有限公司 Apparatus, system and method for secure entry and processing of passwords
US20130301830A1 (en) * 2012-05-08 2013-11-14 Hagai Bar-El Device, system, and method of secure entry and handling of passwords
CN103532759B (en) * 2013-10-17 2017-06-09 重庆邮电大学 The acceptance controlling method of the aggregated flow of cloud service-oriented
GB2525018B (en) * 2014-04-10 2016-06-22 Facebook Inc Wireless data transfer
EP3091467A1 (en) * 2015-05-05 2016-11-09 Gemalto Sa Secure element with shared memories, for a multi-image owner device
US10200543B2 (en) 2015-06-01 2019-02-05 Huawei Technologies Co., Ltd. Method and apparatus for customer service management for a wireless communication network
US10349240B2 (en) 2015-06-01 2019-07-09 Huawei Technologies Co., Ltd. Method and apparatus for dynamically controlling customer traffic in a network under demand-based charging
US10374965B2 (en) 2015-06-01 2019-08-06 Huawei Technologies Co., Ltd. Systems and methods for managing network traffic with a network operator
US10552619B2 (en) * 2015-07-20 2020-02-04 Intel Corporation Technologies for secure trusted I/O access control
US10873842B2 (en) * 2016-04-08 2020-12-22 Blackberry Limited Managed object to provision a device according to one of plural provisioning techniques
KR101915236B1 (en) 2016-11-24 2019-01-14 주식회사 한컴엠디에스 Integrated security management systme for smart-factory
TWI647610B (en) * 2017-11-14 2019-01-11 慧榮科技股份有限公司 Data storage device and data storage method for confirming firmware data
FR3076011B1 (en) * 2017-12-21 2019-12-27 Safran Electronics & Defense METHOD FOR MONITORING THE OPERATION OF A COMPLEX ELECTRONIC COMPONENT
CN110362427A (en) * 2019-06-26 2019-10-22 苏州浪潮智能科技有限公司 A kind of processing method of image file, system, BMC and readable storage medium storing program for executing
JP6814984B2 (en) * 2019-10-02 2021-01-20 パナソニックIpマネジメント株式会社 Signature generator, signature verification device, signature generation method and signature verification method
JP7428049B2 (en) * 2020-03-30 2024-02-06 大日本印刷株式会社 Devices, secure elements and device secure boot methods
US20220374762A1 (en) * 2021-05-18 2022-11-24 International Business Machines Corporation Trusted and decentralized aggregation for federated learning
CN113268443A (en) * 2021-06-09 2021-08-17 北京车和家信息技术有限公司 SMI bus communication method, device, electronic equipment and medium
CN115086053B (en) * 2022-06-23 2024-08-27 支付宝(杭州)信息技术有限公司 Method and system for identifying disguised devices

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100188975A1 (en) 2009-01-28 2010-07-29 Gregory G. Raleigh Verifiable device assisted service policy implementation
US20100199325A1 (en) 2009-01-28 2010-08-05 Headwater Partners I Llc Security techniques for device assisted services

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1117266A1 (en) * 2000-01-15 2001-07-18 Telefonaktiebolaget Lm Ericsson Method and apparatus for global roaming
US20010044786A1 (en) * 2000-03-14 2001-11-22 Yoshihito Ishibashi Content usage management system and method, and program providing medium therefor
JP2001331446A (en) * 2000-05-24 2001-11-30 Nippon Telegr & Teleph Corp <Ntt> Secure agent realization method, secure agent system and secure agent management device
CN1204722C (en) * 2002-01-26 2005-06-01 深圳市朗科科技有限公司 Wireless data communication method and device for data processing system
US7076237B2 (en) * 2004-08-05 2006-07-11 International Business Machines Corporation Traffic shaping of cellular service consumption through delaying of service completion according to geographical-based pricing advantages
US7174174B2 (en) * 2004-08-20 2007-02-06 Dbs Communications, Inc. Service detail record application and system
WO2008109641A2 (en) * 2007-03-06 2008-09-12 Anansi Networks, Inc. System and method for spectrum management
US20090068984A1 (en) * 2007-09-06 2009-03-12 Burnett R Alan Method, apparatus, and system for controlling mobile device use
JP2009110334A (en) * 2007-10-31 2009-05-21 Mitsubishi Electric Corp Terminal, security system, terminal program, and security information management method
KR101209650B1 (en) * 2008-03-26 2012-12-07 후지쯔 가부시끼가이샤 Information processing device, virus management facility device and virus disinfection method
US8671438B2 (en) * 2008-04-04 2014-03-11 Cello Partnership Method and system for managing security of mobile terminal

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100188975A1 (en) 2009-01-28 2010-07-29 Gregory G. Raleigh Verifiable device assisted service policy implementation
US20100199325A1 (en) 2009-01-28 2010-08-05 Headwater Partners I Llc Security techniques for device assisted services

Also Published As

Publication number Publication date
KR20130114663A (en) 2013-10-18
JP2014500989A (en) 2014-01-16
MX2013003624A (en) 2013-12-02
CA2813026A1 (en) 2012-04-19
BR112013006890A2 (en) 2020-06-02
CN103250401A (en) 2013-08-14
EP2622835A1 (en) 2013-08-07
CA2813026C (en) 2018-02-27
EP2622835A4 (en) 2014-05-07
AU2011314086A1 (en) 2013-04-04
WO2012050933A1 (en) 2012-04-19

Similar Documents

Publication Publication Date Title
US11665186B2 (en) Communications device with secure data path processing agents
KR101934601B1 (en) Secure device data records
US8725123B2 (en) Communications device with secure data path processing agents
US11985155B2 (en) Communications device with secure data path processing agents
US20140289794A1 (en) Communications device with secure data path processing agents
US11966464B2 (en) Security techniques for device assisted services
US20140075567A1 (en) Service Processor Configurations for Enhancing or Augmenting System Software of a Mobile Communications Device
US11405429B2 (en) Security techniques for device assisted services
EP3267709B1 (en) Security, fraud detection, and fraud mitigation in device-assisted services systems
EP3493505B1 (en) Security techniques for device assisted services

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant