WO2014194856A1 - 一种基于Android智能移动终端的通信密钥分配方法 - Google Patents

一种基于Android智能移动终端的通信密钥分配方法 Download PDF

Info

Publication number
WO2014194856A1
WO2014194856A1 PCT/CN2014/079373 CN2014079373W WO2014194856A1 WO 2014194856 A1 WO2014194856 A1 WO 2014194856A1 CN 2014079373 W CN2014079373 W CN 2014079373W WO 2014194856 A1 WO2014194856 A1 WO 2014194856A1
Authority
WO
WIPO (PCT)
Prior art keywords
key
mobile terminal
service
secure communication
communication
Prior art date
Application number
PCT/CN2014/079373
Other languages
English (en)
French (fr)
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 安徽量子通信技术有限公司
Priority to JP2016517150A priority Critical patent/JP6074544B2/ja
Priority to US14/896,231 priority patent/US9668127B2/en
Publication of WO2014194856A1 publication Critical patent/WO2014194856A1/zh

Links

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/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/041Key generation or derivation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/043Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
    • H04W12/0431Key distribution or pre-distribution; Key agreement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/043Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
    • H04W12/0433Key management protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • H04L9/16Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption

Definitions

  • the present invention relates to a secure communication technology of a mobile terminal, and a communication key distribution method based on an Android intelligent mobile terminal.
  • BACKGROUND OF THE INVENTION At present, mobile communication technologies have been widely used in daily life, but most of the communication processes are not encrypted, and are easily eavesdropped by third parties. Although some operators perform encryption processing in the wireless transmission part, for some higher security requirements, the data stream needs to be encrypted during the entire transmission process, in case it is monitored in the middle process, which requires In the process of mobile communication, end-to-end encryption processing is required, that is, the encryption and decryption links are respectively located at the calling terminal and the called terminal, so that the user information can be effectively protected regardless of the network through which the intermediate link flows. Safety.
  • Mobile terminals in the usual sense do not include the function of supporting end-to-end secure communication. Therefore, some existing transformation technologies generally start from the hardware of the mobile terminal, add an encryption and decryption module, a key storage module, etc., thereby forming a special mobile terminal supporting a certain secret communication mode.
  • this method is expensive.
  • In order to add a secret communication function it is necessary to design and launch a new model.
  • the technical threshold is high, which is not conducive to popularization.
  • Second, from the user's point of view most people are not willing to just With a secure communication function, it is necessary to replace a new mobile terminal. What they hope is that they can have their own mobile terminal have a secure communication function.
  • the object of the present invention is to solve the above problems and provide a communication key distribution method based on an Android smart mobile terminal.
  • the smart mobile terminal can be supported by secure communication.
  • the function of the network to interact, receive the two-level key, and decrypt the received service key, so as to protect the VoIP secret phone, secret SMS, secure video call, file encrypted transmission, secure mobile payment, and other security
  • the supported communication services provide a common underlying support.
  • the secure communication support network provides the modified mobile terminal with the service key required for various communication services, and the smart mobile terminal uses the service key to perform secure communication.
  • a communication key distribution method based on an Android smart mobile terminal the steps of which are:
  • the smart mobile terminal directly connects to the key terminal to which the secure communication support network belongs, downloads the shared key between the local device and the secure communication support network, and stores it in the smart mobile terminal; after the shared key is downloaded, The smart mobile terminal is disconnected from the key terminal;
  • the intelligent mobile terminal After the communication service is initiated, the intelligent mobile terminal generates a service key acquisition thread by calling the general secret communication platform API of the system under the system, and applies for the service key required for the communication to the secure communication support network;
  • the secure communication support network After receiving the service key application, the secure communication support network allocates the service key required for the current communication to the intelligent mobile terminal participating in the communication;
  • the intelligent mobile terminal receives the service key required for the communication from the secure communication support network by calling the general secret communication platform API of the system under the system, and stores it in the memory space of the smart mobile terminal;
  • the method for establishing the universal secure communication platform is: (1-1) Add a secure communication function library in the C/C++ framework layer of the Android operating system source code (C/C++ local framework layer), in which the basic functions related to secure communication are implemented, including instruction interaction with the secure communication support network, Key application, key download, key management, encryption and decryption operations, and provide a call to the Java framework layer of Android in the form of a JNI interface, and the secure communication function library will be compiled into a so library file at compile time;
  • the method for the smart mobile terminal to apply for the service key is:
  • the underlying universal secure communication platform API is invoked by the application layer communication software to generate a new service key acquisition thread, and the thread obtains a connection with the secure communication support network by wireless;
  • the smart mobile terminal After the connection is established, the smart mobile terminal sends the related information of the current communication to the secure communication support network to apply for the service key required for the current communication, and the information includes the calling terminal and the called terminal. Identity, authentication information, for which business application business key, business key usage is encrypted or decrypted. Further, in the step (4), the method for the secret communication support network to allocate the service key to the smart mobile terminal is:
  • (4-1) establishing a network server thread for waiting for the connection of the smart mobile terminal service key acquisition thread
  • the secure communication support network uses the shared key with the smart mobile terminal to encrypt the service key to be delivered;
  • the secure communication support network wirelessly transmits the encrypted service key to the smart mobile terminal.
  • the secure communication supports a shared key between the network and the smart mobile terminal, and is characterized by:
  • the header of the shared key stored in the secure communication support network stores the current use information of the shared key, and is downloaded to the shared key of the smart mobile terminal, and the header information thereof is filtered out;
  • the smart mobile terminal After receiving the encrypted service key sent by the secure communication support network, the smart mobile terminal extracts the location information implied therein, and combines the shared key stored in the smart mobile terminal with the secure communication support network. The shared key at the location is decrypted for the received service key;
  • the smart mobile terminal downloads a new shared key from the secure communication support network according to the method described in the step (2).
  • the smart mobile terminal receives the service key by: after the service key download quantity of the smart mobile terminal reaches the lowest threshold of the current service type capable of performing the confidential communication, the corresponding application is notified. Inform the business key that it is ready to use; then continue to download while using it until the business key is downloaded.
  • the memory space of the smart mobile terminal in the step (5) is characterized by:
  • the intelligent mobile terminal opens a logically circular memory space for each service key acquisition thread for storing the service key received from the secure communication support network, and the size of the memory space depends on the service type. ;
  • the smart mobile terminal has a read location pointer for each of the ring memory spaces in which the service key is stored.
  • the corresponding number is read from the position indicated by the pointer.
  • a service key and encrypting and decrypting the communication information by using the segment of the service key;
  • the pointer continuously advances in the ring memory space, always pointing to the service address first address to be read next time, when the pointer crosses the end of the ring space , that is, reading the service key from the beginning of the ring space;
  • the smart mobile terminal has a write location pointer for each of the ring memory spaces in which the service key is stored, and stores the received service key into the ring memory space from the position indicated by the pointer.
  • the pointer continues to advance in the ring memory space, always pointing to the first address of the ring memory space where the service key is to be stored next time, and when the pointer crosses the end of the ring space, the service key is continuously written from the beginning of the ring space;
  • the amount of the service key applied to the secure communication support network does not exceed the size of the ring memory space;
  • the operating system has the ability to obtain keys by the secure communication support network through the Java framework layer of the Android system and the following changes. And this capability can be solidified in the operating system, does not change due to changes in the application layer software, and provides an API interface at the application layer, so that other application layer communication software developed by the third party can invoke the underlying secure communication support provided by the operating system. Add confidential communication capabilities to your software.
  • the universal secure communication platform is independent of the specific service, and various business application software running at the application layer can implement various operations in the secure communication flow in the application software by calling the API of the universal secure communication platform.
  • the confidential communication support network transmits the relevant information of the current communication through the intelligent mobile terminal, including the identity of the calling terminal and the called terminal, the authentication information, the service request for the service key, and the service key usage is encrypted or Decryption, etc., only determines what kind of service key is assigned to a thread.
  • the service key for each communication is not applied by the smart mobile terminal until the communication starts, and is sent by the secure communication support network; and even if it is delivered to the smart mobile terminal, there is only temporary memory. In space, the communication is cleared.
  • the key can be obtained by the secure communication support network.
  • the service key can be obtained in real time, so it has the ability to support such a high-intensity encryption method.
  • the logical ring space is used as the storage method of the service key.
  • the new key is continuously downloaded to replace the old key.
  • the beneficial effects of the present invention are: It enables the Android smart mobile terminal to download the key from the secure communication support network. ability. It can provide a variety of secure communication services for various mobile devices running Android systems, especially for the underlying software platform support for the one-time high-intensity security of large data traffic services. In this way, for the mobile terminal manufacturer, it is not necessary to produce a special special encrypted mobile terminal, but only need to modify the source code of the existing intelligent mobile terminal supporting the Android operating system of the enterprise, and then re-flash the machine.
  • the manufacturer can also provide the complete ROM or upgrade firmware with the secret communication function to the customer in the form of a network or a CD, and the client can complete the upgrade of the mobile terminal by itself.
  • the client can complete the upgrade of the mobile terminal by itself.
  • smart mobile terminal users it is convenient to have their existing smart mobile terminal join the secure network and have high-intensity secure communication without any hardware changes.
  • developers of various communication application software on the Android platform if you want to apply these secure communication functions in your own software, you only need to call the newly added confidentiality-related API at the bottom of the system to add the communication data of your own software. Decrypt it.
  • the present invention provides a method for establishing a universal secure communication platform on the underlying layer of the Android operating system, and realizing the allocation of the communication service key through the universal secure communication platform and the secure communication support network. It is not specific to specific communication services and terminals, so the scope of application is not limited to smart mobile terminals. It can also be applied directly to smart TVs, set-top boxes, etc. running Android systems, so that these devices are also available in the local soft. The ability to conduct secure communications on the premise of hardware conditions.
  • the modification of the Android operating system is in the Java framework layer and the local C/C++ framework layer, not in the application software layer, so the security capability is solidified in the operating system, and not like some security.
  • FIG. 1 is a schematic diagram of a software hierarchical structure of an Android operating system
  • FIG. 2 is a schematic diagram of a shared key process between a mobile terminal downloading and a secure communication supporting network
  • FIG. 3 is a shared secret stored at a secure communication supporting network and a mobile terminal;
  • Figure 4 is a schematic diagram of a service key distribution process;
  • Figure 5 is a schematic diagram of service key cross-distribution in a two-way real-time communication service;
  • Figure 6 is a logic diagram of a storage structure of a service key at a mobile terminal.
  • the specific implementation manner of the general secret communication platform of the Android operating system is to add a secret communication basic function library in the C/C++ framework layer of the Android source code, and the library can be added in the bionic (can also be added in other places, bionic Is the preferred solution).
  • a secure communication support network is a network topology entity responsible for generating a key and distributing a key for an intelligent mobile terminal, independent of the smart mobile terminal, capable of receiving the smart mobile terminal
  • the key application in conjunction with the relevant functions of the universal secure communication platform of the intelligent mobile terminal, provides the intelligent mobile terminal with various levels of keys required for the communication service, and the key may use a quantum key or other traditional keys.
  • Basic functions related to secure communication such as command interaction, key application, key download, key management, encryption and decryption operations.
  • bionic is the Android C/C++ framework layer (the software hierarchy of the Android operating system is shown in Figure 1, the APP written by the third-party developers is located in the application software layer, relatively speaking, the Java framework layer under it, C/ C++ local framework layer and Android runtime environment, and Linux kernel layer are collectively referred to as the bottom layer of Android system in this article.
  • the bottom layer of the system is the basic part of the operating system, which is solidified in the intelligent mobile terminal and cannot be used like the software of the application software layer.
  • the basic C language library used in any installation and uninstallation, so the newly added functions here are also used as part of the Android system's basic function library, which can be called arbitrarily within the Android C/C++ framework layer.
  • the Android C / C + + framework layer to add a secret communication high-level function library, it calls bionic key download, key management and other basic function functions, and based on this package and extension, in the form of JNI
  • the calling interface is provided to the Java framework layer of Android, and the secure communication function library in the C/C++ framework will be compiled into a so library file.
  • a secure communication class is added, which applies the JNI interface to call the secure communication advanced function library provided in the C/C++ framework layer, and further encapsulates and expands the ava framework layer, and finally
  • the upper-level application layer provides system APIs for secure communication (these new APIs do not have any essential difference in the use of the official system APIs of the Android system), that is, the universal secure communication platform API for various application layer communication software. transfer.
  • system APIs for secure communication (these new APIs do not have any essential difference in the use of the official system APIs of the Android system), that is, the universal secure communication platform API for various application layer communication software. transfer.
  • various Android system-based application communication programs written by others can call these newly added system APIs to implement various operations such as connecting a secure communication support network, downloading a key, encrypting and decrypting, and the like.
  • the API provided by the underlying layer is unified, and it is only necessary to modify the calling parameters for different services when calling.
  • the trigger key downloading part is taken as an example: in the Android system application layer VoIP call software source code specific location (generally in the business process code between the originating/receiving call request and the actual call establishment), join the Android
  • the calling code of the "key application” Java API of the general secret communication platform at the bottom of the system, coupled with the corresponding parameters, can trigger the function of requesting the required service key at an appropriate time.
  • the basic function library of the Android C/C++ framework layer and the advanced function library are merged together, or simply
  • the function of the secure communication function library defined in the C/C++ framework layer is moved to the Java framework layer to implement and so on.
  • it is easy to be decompiled in the Java framework layer Therefore, the safer method is to implement the core functions of the universal secure communication platform in the Android C/C++ framework layer, so that the compiled so library files are difficult to be Effective decompilation, to the greatest extent protect the key acquisition and use details and implementation details of the encryption and decryption algorithm.
  • the various function interfaces of the C/C++ framework layer and the Java framework layer can also be called by other source code located on the same layer of the operating system. For example, if you do not use the new system API call in the application layer, you can also directly call the C/C++ function library of the universal secure communication platform in the C/C++ framework layer of Android native VoIP, or in Android native VoIP.
  • the Java framework layer is called directly to the Java API of the universal secure communication platform.
  • this method involves modifying the underlying Android code, it is not suitable for developers of third-party application layer software. After the modification of the Android source code is completed, the source code is recompiled, a new Android operating system image file containing the universal secure communication platform is generated, and the image file is programmed into the smart mobile terminal.
  • the smart mobile terminal directly connects to the key terminal to which the secure communication support network belongs, downloads the shared key between the local device and the secure communication support network, and stores it in the smart mobile terminal; after the shared key is downloaded, The smart mobile terminal is disconnected from the key terminal.
  • the mobile terminals A and B respectively connect the key terminals T1 and T2 by wire.
  • the mobile terminal can connect to any one of the key terminals of the T1-Tn. In actual use, the user often chooses to compare himself.
  • the near key terminal the two key terminals are all part of the secure communication support network S, and the mobile terminal and B respectively download the shared key key (SA) and key between the local machine and the secure communication support network S ( SB), saved in the memory card of this unit. After the shared key is downloaded, the mobile terminal disconnects the wired connection from the key terminal.
  • Key(S-A) and key(S-B) can be securely communicated.
  • Support network S is generated in a variety of ways, such as:
  • a secure communication support network can use an internal quantum key transceiver, which can be dense Generating a quantum key directly at the key terminal;
  • the secure communication support network can use various classical random number generating devices and algorithms to generate a key separately and then transmit it to the key terminal through the classical network.
  • the header of the shared key stored in the secure communication support network stores the current usage information of the shared key, for example, what is the shared key key (SA) between the secure communication support network S and the mobile terminal A. Location; When downloading, the header information is filtered and not downloaded to the mobile terminal. This part is only kept on the secure communication support network (as shown in Figure 3) to reduce the shared key stored in the mobile terminal. The loss of the attacker after malicious stealing.
  • SA shared key key
  • the intelligent mobile terminal After the communication service is initiated, the intelligent mobile terminal generates a service key acquisition thread by calling the general secret communication platform API of the system under the system, and applies for the service key required for the communication to the secure communication support network.
  • This section contains the following:
  • the corresponding application layer communication software will call the system's underlying universal secure communication platform API, create a new service key acquisition thread, and connect to the confidentiality.
  • the communication support network requests to download the service key required for this call.
  • Different communication services can apply for service keys according to their own needs. For example, VoIP phone software can choose to apply for a few MB of service keys, while SMS short message software can choose to apply for hundreds of bytes of service keys. These differences are reflected in the calling system.
  • the parameters of the underlying universal secure communication platform API are different. Each intelligent mobile terminal needs to create two threads for downloading the encrypted call service key and decrypting the call service key, the former for encrypting its own voice and the latter for decrypting the encrypted voice of the other party.
  • the smart mobile terminal After the service key acquisition thread establishes a connection with the secure communication support network by wireless, the smart mobile terminal transmits relevant information of the current communication to the secure communication support network, including the identity and verification of the calling terminal and the called terminal. Information, for which service to apply for a service key (VoIP service), whether the service key is encrypted or decrypted, so that the secure communication support network provides a service key for it.
  • VoIP service Voice over IP service
  • the secure communication support network After receiving the service key application, the secure communication support network allocates the service key required for the current communication to the smart mobile terminal participating in the communication.
  • This section contains the following: ⁇ 1> Establish a network server thread to wait for the connection of the smart mobile terminal service key acquisition thread.
  • the service key is a string of symmetric keys composed of random numbers, which are generated by a secure communication support network, and can be generated by using a quantum method, a software algorithm, a physical random number generation method, and the like.
  • the encryption and decryption service key assigned to the calling and called mobile terminal should be a cross relationship, that is, the encrypted service key of the assigned calling mobile terminal corresponds to the decrypted service key of the called mobile terminal.
  • the decrypted service key of the assigned calling mobile terminal corresponds to the encrypted service key of the called mobile terminal. As shown in FIG.
  • the mobile terminal A communicates with B, and the secure communication support network S transmits the service key K1 to the mobile terminal A as its encrypted service key, and simultaneously transmits the service key K1 to the mobile terminal B as its The service key is decrypted.
  • the secure communication support network S transmits the service key K2 to the mobile terminal B as its encrypted service key, and simultaneously transmits the service key K2 to the mobile terminal A as its decryption service key.
  • the secure communication support network uses the shared key with the smart mobile terminal to encrypt the service key to be delivered.
  • the secure communication support network encrypts the service key
  • the current use position of the block shared key is extracted from the shared key header information of the secure communication support network and the smart mobile terminal, and the shared secret from the position is used.
  • the key is the service key to be delivered, and the location information is implicitly mixed in some idle reserved bits of the encrypted service key to inform the intelligent mobile terminal when decrypting the received service key.
  • the secret communication support network consumes a part of the shared key with a smart mobile terminal, the header information of the shared key is updated to accurately reflect the latest shared key usage.
  • the secure communication support network wirelessly transmits the encrypted service key to the smart mobile terminal.
  • the intelligent mobile terminal receives the service key required for the communication from the secure communication support network by calling the general secret communication platform API of the system under the system, and stores it in the memory space of the smart mobile terminal.
  • the smart mobile terminal After receiving the encrypted service key sent by the secure communication support network, the smart mobile terminal extracts the location information implied therein, where the location information indicates the shared key between the smart mobile terminal and the secure communication support network. Using the location; combined with the shared key stored in the smart mobile terminal and the secure communication support network, you can know From which location the shared key should be used to decrypt the received service key.
  • a preferred method is that the service key required for each call or the shared key between the smart mobile terminal and the secure communication support network is one secret, and the used key is not repeated. Use to ensure high security.
  • the smart mobile terminal downloads a new shared key from the secure communication support network according to the method described in the step (2). Since the VoIP call has a time span and real-time requirements, the amount of service keys required is large. For example, all downloads may take a long time to complete, so the call cannot be started after the service key is downloaded. Since the service key download speed is much higher than the service key usage speed, once the service key download amount of the smart mobile terminal reaches the minimum threshold capable of performing the VoIP secret call, the VoIP application can be notified to inform the service key. It is already available, and then continue to download while using it until the service key is downloaded.
  • the intelligent mobile terminal opens a logically ring-shaped memory space for each service key acquisition thread (as shown in FIG. 6 ), and its size depends on the service type of the communication, and the ring memory space is used for storing the confidential communication. Support the service key received by the network.
  • the advantage of this is that the service key actually used for the call is not actually stored in the permanent medium of the mobile terminal, but is cleared from the memory after the call is completed, thereby preventing the person from being exported afterwards and ensuring each call.
  • the business key is not used repeatedly.
  • the smart mobile terminal has a read location pointer for each of the ring memory spaces storing the service key, pointing to a certain position of the ring memory space, and encrypting (decrypting) a piece of communication plaintext (ciphertext).
  • the smart mobile terminal further has a write location pointer for each of the ring memory spaces storing the service key, and the received service key is stored into the ring memory space from the position indicated by the pointer;
  • the pointer continues to advance in the ring memory space, always pointing to the first address of the ring memory space where the service key is to be stored next time.
  • the pointer crosses the end of the ring space, the service key is continuously written from the beginning of the ring space;
  • the amount of service keys applied by the communication support network does not exceed the size of the ring memory space.
  • Network application to download the service key again For example, after the first service key is downloaded, the first 50% of the ring memory space in which the service key is stored is filled; when the service key is used to the 25% scale of the ring memory space, the smart mobile terminal transmits the message to the secure communication. Support the network application to download the service key again, and then download 50% of the key amount from the secure communication support network, and fill in the last 50% of the ring memory space; similarly, when the usage of the service key reaches the ring memory space At 75% scale, the intelligent mobile terminal refills 50% of the key amount from the secure communication support network and fills in the first 50% of the ring memory space; the new service key that is continuously downloaded will be the old business at the same location. The key is replaced.
  • the service key downloaded into the memory of the smart mobile terminal may not be sufficient, and the smart mobile terminal is at this time.
  • the secure communication support network is notified and the service key continues to be downloaded for use. Since the service key is stored in the memory of the smart mobile terminal, not on the permanent storage device; as the communication service ends, the memory space of the stored service key is recovered by the operating system, and the data therein is also destroyed and cannot be reused. read out.
  • the smart mobile terminal uses the service key for secure communication. Both parties of the communication encrypt the plaintext with their respective encrypted service keys and send them to the other party. After receiving the ciphertext of the other party, they decrypt the plaintext with the corresponding decryption service key.
  • the present embodiment mainly implements a universal secure communication platform based on the Android intelligent operating system, and a communication key distribution method based on the platform. The specific technical details when the communication key is used are not within the scope of the present invention.
  • the communication information is preferably encrypted and decrypted once using the symmetric service key downloaded from the secure communication support network, but the asymmetric key is not used to be distributed by using the platform and the distribution method.
  • the smart mobile terminal opens a memory space for the service key, it does not need to be set to a logical ring. Because the SMS information is short and the required service key is small, it can be downloaded at one time without downloading.
  • the secure communication support network needs to prepare two service keys for each call (as shown in Figure 5).
  • the secure communication support network only needs To prepare a service key, the sender is used for encryption and the receiver is used for decryption.
  • the intelligent mobile terminal only needs to create a thread and apply for the required service key to the secure communication support network.
  • the SMS sender sends an encrypted service key to the secure communication support network before sending the ciphertext.
  • the receiver needs to wait until the short message is received before applying for the decryption service key to the secure communication support network. Due to the carrier network, the time interval may be slightly longer. Therefore, on the secure communication support network, the service key application information of the sender needs to be temporarily stored for a period of time, waiting for the service key of the receiver to apply. , then compare to match.
  • SMS information is short, it is not necessary to download a part of the service key as VoIP, and then notify the service program to start using it; and all the service keys required for the SMS message can be downloaded after the download is completed. use.
  • the above modifications, or other conceivable modifications or alterations, for non-real-time, non-bidirectional interactive communication services such as SMS short messages are within the scope of the present invention without departing from the technical solution proposed by the present invention. within.
  • the embodiment of the present invention mainly discusses the creation and application of a universal secure communication platform based on Android intelligent mobile terminal, and a communication key distribution method based on the platform.
  • the application scope of the technical solution proposed by the present invention is not limited to the mentioned VoIP, short message, video call, etc., and other communication service types can also implement secure communication through the universal secure communication platform provided by the present invention;
  • changes to the call details of the universal secure communication platform should be regarded as the technology proposed by the present invention.
  • the specific application variants of the solution are within the scope of the invention.
  • the present invention can be used not only for the modification of the Android smart mobile terminal, but also directly or slightly modified, and applied to other terminal devices capable of running the Android operating system, such as smart TVs, set-top boxes, etc., for providing these smart devices.
  • the function corresponds to the confidential information service.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明公开了一种基于Android智能移动终端的通信密钥分配方法,通过在Android操作系统的底层建立通用保密通信平台,使智能移动终端具备可以与保密通信支持网络进行交互,接收两级密钥,并对收到的业务密钥进行解密后再使用的功能,从而可以为VoIP保密电话、保密短信、保密视频通话、文件加密传输、安全移动支付以及其他需要保密支持的通信业务提供通用底层支撑。保密通信支持网络为改造后的智能移动终端提供各种通信业务所需的业务密钥,智能移动终端得到业务密钥后,使用其进行保密通信。

Description

一种基于 Android智能移动终端的通信密钥分配方法 技术领域 本发明涉及移动终端的保密通信技术, 一种基于 Android智能移动终端的通信密钥分配 方法。 背景技术 目前, 移动通信技术在日常生活中已经被广泛使用, 但是其中大多数的通信过程并没有 经过加密处理, 容易被第三方非法窃听。 虽然有的运营商在无线传输部分进行了加密处理, 但是对于一些更高保密要求的情况, 需要使数据流在整个传输过程中均处于加密状态, 以防 在中间过程中被监听, 这就要求在移动通信的过程中, 需要采用端对端的加密处理, 也就是 说, 加密和解密环节分别位于主叫终端和被叫终端, 这样, 无论中间环节流经什么网络, 都 可以有效保护用户的信息安全。 通常意义上的移动终端, 并不包含支持端对端保密通信的功能。 因此, 现有的一些改造 技术一般是从移动终端硬件入手, 为其添加加解密模块、 密钥存储模块等, 从而形成支持某 种保密通信方式的特种移动终端。 但这种方法一是成本昂贵, 为了添加一个保密通信功能, 就要新设计投产一个机型, 技术门槛较高, 不利于推广普及; 二是从用户角度来说, 多数人 并不愿意仅仅为了拥有保密通信功能, 就不得不更换一台新移动终端, 他们更希望的是, 能 让自己原有的移动终端拥有保密通信功能。 随着 Android智能操作系统近几年来的推广, 其市场占有率不断提高。 通过纯软件的方 式改造 Android智能手机或其他 Android智能移动终端, 使其在保持原有功能的前提下, 新 增高强度保密通信功能的想法成为可能。 目前市面上也有一些 Android环境下或其他移动操 作系统下的简单通信加密工具, 如加密短信之类的小应用软件。 但由于难以解决密钥分配的 问题, 基本上都是采用数学算法或者是密钥重复使用 (或变种重复使用) 的方式进行加密, 还有直接使用移动终端中的永久存储介质中的一个或多个文件 /密钥块作为每次通话时的业 务密钥, 密钥容易被破解或被导出后破解, 对安全性需求较高的场合并不胜任。 而且, 即使 是这样的加密强度, 目前在智能移动平台上也多限于短消息这样的少量信息加密, 另外, 这 样的加密通信软件也只能为特定的一种或少数几种业务提供安全保护。 有能力对 VoIP电话、 视频通话等大数据量通信业务提供一次一密级别支持的通用保密智能移动终端平台还非常缺 乏。 以应用层软件实现加密信息的做法还有某些不可靠性, 因为它们是安装在 Android操作 系统中的应用软件, 既然可以被用户安装, 那么同样也可以被攻击者恶意卸载掉, 因此其本 身安全性也较为脆弱, 不适用于对安全性要求高的场合。 发明内容 本发明的目的就是为了解决上述问题, 提供一种基于 Android智能移动终端的通信密钥 分配方法, 通过在 Android操作系统的底层建立通用保密通信平台, 使智能移动终端具备可 以与保密通信支持网络进行交互, 接收两级密钥, 并对收到的业务密钥进行解密后再使用的 功能, 从而为 VoIP保密电话、 保密短信、 保密视频通话、 文件加密传输、 安全移动支付以及 其他需要保密支持的通信业务提供通用底层支撑。 保密通信支持网络为改造后的智能移动终 端提供各种通信业务所需的业务密钥,智能移动终端得到业务密钥后,使用其进行保密通信。 为实现上述目的, 本发明采用如下技术方案: 一种基于 Android智能移动终端的通信密钥分配方法, 它的步骤为:
( 1 )在 Android操作系统的底层建立通用保密通信平台, 并在应用层通信软件程序源码 中调用通用保密通信平台 API (Application Programming Interface, 应用程序编程接口), 将改 造后的 Android操作系统源码编译为镜像文件, 烧写到智能移动终端中;
(2)所述智能移动终端直接连接保密通信支持网络所属的密钥终端, 下载本机与保密通 信支持网络之间的共享密钥, 保存在该智能移动终端中; 共享密钥下载完毕后, 智能移动终 端与密钥终端断开连接;
( 3 )通信业务发起后, 智能移动终端通过调用系统底层的通用保密通信平台 API, 生成 业务密钥获取线程, 向保密通信支持网络申请本次通信所需的业务密钥;
(4)保密通信支持网络收到所述业务密钥申请后, 向参与通信的智能移动终端分配本次 通信所需的业务密钥;
( 5 )智能移动终端通过调用系统底层的通用保密通信平台 API, 从保密通信支持网络接 收本次通信所需的业务密钥, 并将其存放在智能移动终端的内存空间中;
( 6) 智能移动终端使用该业务密钥进行保密通信。 所述步骤 (1 ) 中, 通用保密通信平台的建立方法为: ( 1-1 ) 在 Android操作系统源码的 C/C++ framework层 (C/C++本地框架层) 中添加保 密通信函数库, 在其中实现保密通信相关基础功能, 包括与保密通信支持网络的指令交互、 密钥申请、密钥下载、密钥管理、加解密操作,并以 JNI接口的形式向 Android的 Java framework 层提供调用, 所述保密通信函数库在编译时将被编译成 so库文件;
( 1-2)在 Android操作系统源码的 Java framework层(Java框架层)中添加保密通信类, 该类应用所述 JNI接口调用 C/C++ framework层中提供的保密通信函数库, 并对其在 Java framework层做进一步的封装和扩展, 最后向更上层的应用层提供保密通信相关的系统 API, 即通用保密通信平台 API, 供各种应用层通信软件调用。 所述步骤 (3 ) 中, 智能移动终端申请业务密钥的方法为:
( 3-1 )通信业务发起后, 系统底层的通用保密通信平台 API被应用层通信软件调用, 生 成新的业务密钥获取线程, 该线程通过无线方式获得与保密通信支持网络的连接;
( 3-2) 所述连接建立后, 智能移动终端向保密通信支持网络发送本次通信的相关信息, 以申请本次通信所需的业务密钥, 这些信息包括主叫终端和被叫终端的身份、 验证信息、 为 何种业务申请业务密钥、 业务密钥用途是加密还是解密。 进一步地, 在所述步骤(4) 中, 保密通信支持网络向智能移动终端分配业务密钥的方法 为:
(4-1 ) 建立网络服务端线程, 用以等待智能移动终端业务密钥获取线程的连接;
(4-2)与智能移动终端建立连接, 并收到其业务密钥申请后, 得知本次通信具体的业务 类型、 终端身份、 验证信息、 业务密钥用途, 判断是否具备业务密钥申请的权限, 为具备权 限的智能移动终端分配要下载的业务密钥;
(4-3 ) 保密通信支持网络使用与智能移动终端的共享密钥, 为要下发的业务密钥加密;
(4-4) 保密通信支持网络将加密之后的业务密钥通过无线方式发送到智能移动终端。 所述保密通信支持网络与智能移动终端的共享密钥, 其特征是:
<1>所述保密通信支持网络中存储的共享密钥的头部保存有共享密钥当前使用信息,下载 到智能移动终端的共享密钥, 其头部信息被过滤掉;
<2>保密通信支持网络为业务密钥加密时,从保密通信支持网络与智能移动终端的共享密 钥头部信息中提取出该块共享密钥的当前使用位置, 使用该位置处的共享密钥为要下发的业 务密钥加密, 并将该位置信息以隐含形式混在加密之后的业务密钥的空闲保留位中, 然后相 应地更新共享密钥的头部信息;
<3>智能移动终端接收到保密通信支持网络发送的已加密的业务密钥后,提取其中隐含的 位置信息, 结合存储在智能移动终端中的与保密通信支持网络间的共享密钥, 使用该位置处 的共享密钥为接收到的业务密钥解密;
<4>保密通信支持网络与智能移动终端间的共享密钥量不足时,按照步骤(2)所述方法, 智能移动终端从保密通信支持网络下载新的共享密钥。 所述步骤(5) 中, 智能移动终端接收业务密钥的方法为: 一旦智能移动终端的业务密钥 下载量达到了当前业务类型能够进行保密通信的最低阈值之后, 即通知相应的应用程序, 告 知其业务密钥已经能够使用; 然后一边使用一边继续下载, 直到本次业务密钥下载完毕。 所述步骤 (5) 中的智能移动终端的内存空间, 其特征是:
(5-1 )智能移动终端为每个业务密钥获取线程开辟一块逻辑上呈环形的内存空间, 用于 存放从保密通信支持网络接收到的业务密钥, 该内存空间的大小取决于业务类型;
(5-2)智能移动终端为每一个存放业务密钥的所述环形内存空间都设有一个读取位置指 针, 使用业务密钥进行保密通信时, 从该指针所指位置读出相应数量的业务密钥, 并使用该 段业务密钥对通信信息进行加解密; 该指针在环形内存空间中不断前进, 始终指向下一次要 读取的业务密钥首地址, 当该指针越过环形空间末尾时, 即从环形空间开头继续读取业务密 钥;
(5-3 )智能移动终端为每一个存放业务密钥的所述环形内存空间都设有一个写入位置指 针, 从该指针所指位置开始, 将接收到的业务密钥存储入环形内存空间; 该指针在环形内存 空间中不断前进, 始终指向下一次要存储业务密钥的环形内存空间首地址, 当该指针越过环 形空间末尾时, 即从环形空间开头继续写入业务密钥; 每次向保密通信支持网络申请的业务 密钥量不超过所述环形内存空间的大小;
(5-4)第一次业务密钥下载后, 当所述写入位置指针与所述读取位置指针在环形内存空 间中各自所指位置的距离差到达一个设定的阈值时, 智能移动终端向保密通信支持网络申请 再次下载业务密钥; ( 5-5 )本次通信业务结束后,存储业务密钥的内存空间被系统回收,其中的数据被销毁。 以上所述的共享密钥和 /或业务密钥, 其使用方式优选采用一次一密, 同时也可作为各种 流行的对称与非对称加解密的密钥而使用。 本发明主要特点在于:
( 1 ) 在 Android操作系统中, 通过对 Android系统的 Java framework层及以下的改动, 使操作系统具备由保密通信支持网络获取密钥的能力。 且这种能力可以固化在操作系统中, 不因应用层软件的变动而变动, 并且在应用层提供 API接口, 使得第三方开发的其他应用层 通信软件可以调用操作系统提供的底层保密通信支持, 为自己的软件增加保密通信功能。
(2)通用保密通信平台独立于具体业务之外, 运行在应用层的各种业务应用软件可以通 过调用通用保密通信平台的 API, 在本应用软件内实现保密通信流程中的各种操作。
( 3 )保密通信支持网络与智能移动终端的共享密钥的头部信息只存在于保密通信支持网 络中, 智能移动终端存储的该共享密钥副本不包含该密钥的当前使用位置等信息。 这样, 即 使在极端情况下, 比如移动终端失窃, 与保密通信支持网络间的共享密钥被人导出, 也无法 据此判断出先前或此后的每次保密通信所使用的共享密钥的起始位置, 从而难以破解出有效 自
(4)保密通信支持网络通过智能移动终端所发送的本次通信的相关信息, 包括主叫终端 和被叫终端的身份、验证信息、为何种业务申请业务密钥、业务密钥用途是加密还是解密等, 唯一确定为某线程分配何种业务密钥。
( 5 )每次通信时的业务密钥都是直到通信开始前才由智能移动终端申请, 并由保密通信 支持网络下发的; 而且即使下发到智能移动终端, 也只是存在临时开辟的内存空间中, 通信 完毕即被清除。
( 6)密钥可以由保密通信支持网络获取, 特别是业务密钥可以实时获取, 因此具备了对 一次一密这样高强度加密方式的支持能力。
(7 )以逻辑上的环形内存空间作为业务密钥的存储方式, 当密钥消耗到一定程度时续下 载新密钥替换旧密钥。 本发明的有益效果是: 它使 Android智能移动终端具备从保密通信支持网络下载密钥的 能力。 它可以为运行 Android系统的各种移动设备提供多种保密通信业务, 尤其是为大数据 量通信业务的一次一密式高强度保密提供底层软件平台支撑。 这样, 对于移动终端生产商来 说, 无需生产专门的特种加密移动终端, 而只需要对本企业现有的一款支持 Android操作系 统的智能移动终端的源代码进行修改后, 重新刷机即可。 生产商还可以将加入了保密通信功 能的完整 ROM或升级固件以网络或光盘的形式提供给客户, 由客户方自己来完成移动终端 的升级改造。 对于智能移动终端用户来说, 可以很方便的让自己的现有智能移动终端加入保 密网络, 具备高强度保密通信功能, 而无需做任何硬件改动。 对于 Android平台上的各种通 信应用软件的开发者来说, 如果希望自己的软件中也可以应用这些保密通信功能, 只需要调 用系统底层新添加的保密相关的 API为自己软件的通信数据流加解密即可。 另外, 本发明的作用是提供了一种在 Android操作系统的底层建立通用保密通信平台的 方法, 并通过该通用保密通信平台, 配合保密通信支持网络实现了对通信业务密钥的分配, 该方法并不针对特定通信业务和终端, 因此应用范围并不局限于智能移动终端, 还可以直接 或稍加变换后应用于运行 Android系统的智能电视、 机顶盒等等, 使这些设备同样具备在本 机软硬件条件允许的前提下进行保密通信的能力。 由于在本发明中, 对 Android操作系统的 修改在 Java framework层和本地 C/C++framework层, 而不在应用软件层, 因此保密能力是固 化在操作系统中的, 而不会像某些保密应用软件那样可以被人恶意卸载或替换, 其安全性大 大提高。 而且, 相对于市面上那些针对某种具体业务的保密通信应用软件来说, 本发明可以 为应用层的任意第三方通信程序提供保密服务, 其通用性、 可扩展性和兼容性都具备优势。 附图说明 图 1为 Android操作系统的软件层次结构示意图; 图 2为移动终端下载与保密通信支持网络间的共享密钥过程示意图; 图 3为保密通信支持网络处与移动终端处存储的共享密钥对比示意图; 图 4为业务密钥分配过程示意图; 图 5为双向实时通信业务中的业务密钥交叉分配示意图; 图 6为移动终端处业务密钥的存储结构逻辑图。 具体实施方式 下面结合附图与实施例对本发明做进一步说明。 本发明旨在提供一种基于 Android智能移动终端的通信密钥分配方法, 该方法由以下若 干步骤及部分组成:
( 1 )在 Android操作系统的底层建立通用保密通信平台, 并在应用层通信软件程序源码 中调用通用保密通信平台 API, 将改造后的 Android操作系统源码编译为镜像文件, 烧写到 智能移动终端中。 所述 Android操作系统底层的通用保密通信平台的具体实现方式是, 在 Android源码的 C/C++ framework层中添加保密通信基础函数库,该库可添加在 bionic中(也可在其他位置添 加, bionic为优选方案)。 在保密通信基础函数库中实现与保密通信支持网络 (保密通信支持 网络独立于智能移动终端之外,是负责产生密钥和为智能移动终端分发密钥的网络拓扑实体, 它能够接收智能移动终端的密钥申请, 配合智能移动终端的通用保密通信平台的相关功能, 向智能移动终端提供通信业务所需的各级密钥, 密钥可以采用量子密钥, 也可以使用其他传 统密钥) 的指令交互、 密钥申请、 密钥下载、 密钥管理、 加解密操作等保密通信相关基础功 能。 由于 bionic是 Android C/C++ framework层(关于 Android操作系统的软件层次结构如图 1所示,第三方开发者编写的 APP均位于应用软件层,相对来说,其下的 Java框架层、 C/C++ 本地框架层与 Android运行时环境,及 Linux内核层在本文中统称为 Android系统底层。系统 底层是操作系统的基础部分, 固化在智能移动终端中, 无法像应用软件层的软件那样可以被 使用者任意安装和卸载)中使用的基础 C语言库,因此在这里新加入的函数也被当做 Android 系统的基础函数库的一部分, 可以在 Android C/C++ framework层内任意调用。 然后, 再在 Android C/C++ framework层中添加保密通信高级函数库, 它调用 bionic中的密钥下载、 密钥 管理等等基础函数功能, 并在此基础上进行封装和扩展, 以 JNI 的形式向 Android 的 Java framework层提供调用接口, C/C++ framework中的保密通信函数库将被编译成 so库文件。在 Android的 Java framework层, 添加保密通信类, 它应用所述 JNI接口调用 C/C++ framework 层中提供的保密通信高级函数库, 并对其在〗 ava framework层做进一步的封装和扩展, 最后 向更上层的应用层提供保密通信相关的系统 API (这些新增的 API与 Android系统官方自带 的系统 API在使用上没有任何本质区别), 即通用保密通信平台 API, 供各种应用层通信软件 调用。 这样, 其他人编写的各种基于 Android系统的应用通信程序就都可以调用这些新加的 系统 API来实现连接保密通信支持网络、 下载密钥、 加解密等等各种操作。 对于不同的应用 层软件来说, 底层提供的 API是统一的, 在调用时只需针对不同业务修改调用参数即可。 以 VoIP业务中触发密钥下载部分为例:在 Android系统应用层的 VoIP通话软件源代码特定位置 (一般是在发起 /收到通话请求与真正建立通话之间的业务流程代码中),加入对 Android系统 底层的通用保密通信平台的 "密钥申请" Java API的调用代码, 配以相应的参数, 即可实现 在合适的时机触发对所需业务密钥申请的功能。 当然, 系统底层的通用保密通信平台的具体实现方式和调用方式还可能有许多变种, 例 如将 Android C/C++framework层的基础函数库和高级函数库两部分合并在一起, 或者干脆是 将 C/C++framework层中定义的保密通信函数库的功能移到 Java framework层来实现等等。但 完全在 Java framework层实现容易被反编译, 因此, 较安全的方法, 还是将通用保密通信平 台的核心功能放在 Android C/C++framework层中实现,这样编译出来的 so库文件难以被有效 反编译, 在最大程度上保护了密钥的获取及使用细节和加解密算法的实现细节。 另外, C/C++ framework层和 Java framework层的各个函数接口也可以被位于操作系统同 一层的其他源码所调用。 例如, 如果不采用在应用层对新增系统 API调用的方式, 也可以在 Android原生 VoIP的 C/C++ framework层部分对通用保密通信平台的 C/C++函数库直接调用, 或在 Android原生 VoIP的 Java framework层部分对通用保密通信平台的 Java API直接调用。 当然, 由于这种方法涉及修改 Android底层代码, 因此不适合第三方应用层软件的开发者使 用。 对 Android 源代码修改完成后, 重新编译源代码, 生成包含有通用保密通信平台的新 Android操作系统镜像文件, 并将该镜像文件烧写到智能移动终端中。
(2)所述智能移动终端直接连接保密通信支持网络所属的密钥终端, 下载本机与保密通 信支持网络之间的共享密钥, 保存在该智能移动终端中; 共享密钥下载完毕后, 智能移动终 端与密钥终端断开连接。 如图 2所示, 移动终端 A和 B通过有线方式, 分别连接密钥终端 T1和 T2 (理论上, 移 动终端可以连接 Tl-Tn的任何一个密钥终端, 实际使用中用户往往选择距离自己较近的密钥 终端), 这两个密钥终端均属于保密通信支持网络 S的一部分, 移动终端 、 B分别下载本机 与保密通信支持网络 S之间的共享密钥 key(S-A)和 key(S-B), 保存在本机的存储卡中。 共享 密钥下载完毕后, 移动终端与密钥终端断开有线连接。 key(S-A) 和 key(S-B)可以被保密通信 支持网络 S由多种方式生成, 例如:
<1>在量子保密通信中,保密通信支持网络可以使用内部的量子密钥收发装置,可以在密 钥终端处直接生成量子密钥;
<2>在经典保密通信中,保密通信支持网络可以使用各种经典随机数发生装置及算法,单 独生成密钥, 然后通过经典网络传输到密钥终端。 所述保密通信支持网络中存储的共享密钥的头部保存有共享密钥当前使用信息, 例如, 保密通信支持网络 S与移动终端 A之间的共享密钥 key(S-A)当前已经使用到了什么位置; 在 下载时, 头部信息被过滤,不下载到移动终端中去,这部分只保留在保密通信支持网络端(如 图 3所示), 以减少移动终端中存储的共享密钥一旦被攻击者恶意盗取后的损失。如果缺少了 这些关键定位信息, 面对庞大的共享密钥数据块, 攻击者将很难定位之前通信时使用的是哪 一部分密钥, 之后还将会使用哪一部分密钥。 步骤 (3 ) - ( 6 ) 的总体流程如图 4所示, 以 VoIP通话业务为例, 详细实施部分如下所 述:
( 3 )通信业务发起后, 智能移动终端通过调用系统底层的通用保密通信平台 API, 生成 业务密钥获取线程, 向保密通信支持网络申请本次通信所需的业务密钥。 这部分包含以下内 容:
<1>当主叫移动终端发出呼叫, 以及被叫移动终端收到呼叫时,相应的应用层通信软件均 会调用系统底层的通用保密通信平台 API, 创建新的业务密钥获取线程, 连接保密通信支持 网络,申请下载本次通话所需的业务密钥。不同通信业务可以根据自己的需要申请业务密钥, 例如 VoIP电话软件可以选择申请几 MB的业务密钥, 而 SMS短消息软件可以选择申请几百 字节的业务密钥, 这些不同体现在调用系统底层的通用保密通信平台 API时的参数不同。 每 个智能移动终端需要创建两个线程, 分别用于下载加密通话业务密钥和解密通话业务密钥, 前者用于加密自己的语音, 后者用于解密对方加密后的语音。
<2>所述业务密钥获取线程通过无线方式与保密通信支持网络建立连接后,智能移动终端 向保密通信支持网络发送本次通信的相关信息,包括主叫终端和被叫终端的身份、验证信息、 为何种业务申请业务密钥 (VoIP业务)、 业务密钥用途是加密还是解密, 以便保密通信支持 网络为其提供业务密钥。
( 4 )保密通信支持网络收到所述业务密钥申请后, 向参与通信的智能移动终端分配本次 通信所需的业务密钥。 这部分包含以下内容: <1>建立网络服务端线程, 用以等待智能移动终端业务密钥获取线程的连接。
<2>与智能移动终端建立连接,并收到其业务密钥申请后,得知本次通信具体的业务类型、 终端身份、 验证信息、 业务密钥用途, 判断该智能移动终端是否具备申请业务密钥的权限。 如具备权限, 则根据该智能移动终端所提供的信息为其分配要下载的业务密钥。 例如, 如果 本次通信是 VoIP通话, 那么分配的业务密钥将会以 MB为单位, 如果是 SMS短消息, 那么 只需分配几百字节的业务密钥即可。 以一次一密为例, 业务密钥是一串由随机数组成的对称 密钥, 由保密通信支持网络生成, 其生成方式可以采用量子方式、 软件算法、 物理性随机数 发生方法等等。 为 VoIP业务分配密钥时, 分配给主被叫移动终端的加解密业务密钥应为交叉关系, 即所 分配的主叫移动终端的加密业务密钥对应于被叫移动终端的解密业务密钥, 所分配的主叫移 动终端的解密业务密钥对应于被叫移动终端的加密业务密钥。 如图 5所示, 移动终端 A与 B 通信, 保密通信支持网络 S将业务密钥 K1传输给移动终端 A, 作为其加密业务密钥, 同时 将业务密钥 K1传输给移动终端 B, 作为其解密业务密钥; 同理, 保密通信支持网络 S将业 务密钥 K2传输给移动终端 B,作为其加密业务密钥,同时将业务密钥 K2传输给移动终端 A, 作为其解密业务密钥。
<3>保密通信支持网络使用与智能移动终端的共享密钥,为要下发的业务密钥加密。保密 通信支持网络为业务密钥加密时, 从保密通信支持网络与智能移动终端的共享密钥头部信息 中提取出该块共享密钥的当前使用位置, 使用从该位置开始向后的共享密钥为要下发的业务 密钥加密, 并将该位置信息以隐含形式混在加密之后的业务密钥的某些空闲保留位中, 以告 知智能移动终端在为收到的业务密钥解密时, 也同样应该从与保密通信支持网络的共享密钥 的此处开始使用。 保密通信支持网络每次消耗掉一部分与某台智能移动终端的共享密钥后, 该共享密钥的头部信息都要更新, 以准确反映最新的共享密钥使用情况。
<4>保密通信支持网络将加密之后的业务密钥通过无线方式发送到智能移动终端。
(5)智能移动终端通过调用系统底层的通用保密通信平台 API, 从保密通信支持网络接 收本次通信所需的业务密钥, 并将其存放在智能移动终端的内存空间中。 所述智能移动终端接收到保密通信支持网络发送的已经加密的业务密钥后, 提取其中隐 含的位置信息, 这里的位置信息指明了该智能移动终端与保密通信支持网络间的共享密钥的 使用位置; 再结合存储在智能移动终端中的与保密通信支持网络间的共享密钥, 就可以知道 应该从哪个位置开始使用共享密钥,为接收到的业务密钥解密。使用时,一个优选的方式是, 无论是每次通话所需的业务密钥, 还是智能移动终端与保密通信支持网络间的共享密钥, 都 是一次一密, 使用过的密钥不再重复使用, 以确保高安全度。 当然, 也支持其他的密钥使用 方式, 如各种流行的对称及非对称加密算法。 所述共享密钥量不足时, 按照步骤(2)所述方 法, 智能移动终端从保密通信支持网络下载新的共享密钥。 由于 VoIP通话具有时间跨度和实时要求, 所需业务密钥量较大, 如全部下载完成耗时可 能较长, 因此不能等业务密钥都下载完毕后再开始通话。 由于业务密钥下载速度远高于业务 密钥使用速度,所以一旦智能移动终端的业务密钥下载量达到了能够进行 VoIP保密通话的最 低阈值之后, 即可以通知 VoIP应用程序, 告知其业务密钥已经能够使用, 然后一边使用一边 继续下载, 直到本次业务密钥下载完毕。 智能移动终端为每个业务密钥获取线程开辟一块逻辑上呈环形的内存空间(如图 6所示), 其大小取决于本次通信的业务类型, 这块环形内存空间用于存放从保密通信支持网络接收到 的业务密钥。 这样的好处是真正用于通话的业务密钥并不实际落地存储在移动终端永久介质 中, 而是通话完毕后即被从内存中清除, 既防止事后被人导出, 也确保了每次通话的业务密 钥不被反复使用。 智能移动终端为每一个存放业务密钥的所述环形内存空间都设有一个读取位置指针, 指 向该环形内存空间的某个位置, 当需要对一段通信明文 (密文) 进行加密 (解密) 时, 从该 指针所指位置读出相应数量的业务密钥, 并使用该段业务密钥对通信明文 (密文) 进行加密 (解密); 该指针在环形内存空间中不断前进, 始终指向下一次要读取的业务密钥首地址, 当 该指针越过环形空间末尾时, 即从环形空间开头继续读取业务密钥。 对于 VoIP业务来说, 在 一次通话中, 这样的环形内存空间要有 2个, 分别存放用于加密的业务密钥和用于解密的业 务密钥。 同时, 智能移动终端为每一个存放业务密钥的所述环形内存空间还都设有一个写入 位置指针, 从该指针所指位置开始, 将接收到的业务密钥存储入环形内存空间; 该指针在环 形内存空间中不断前进, 始终指向下一次要存储业务密钥的环形内存空间首地址, 当该指针 越过环形空间末尾时, 即从环形空间开头继续写入业务密钥; 每次向保密通信支持网络申请 的业务密钥量不超过所述环形内存空间的大小。 第一次业务密钥下载后, 当所述写入位置指 针与所述读取位置指针在环形内存空间中各自所指位置的距离差到达一个设定的阈值时, 智 能移动终端向保密通信支持网络申请再次下载业务密钥 例如, 第一次业务密钥下载后, 将存放该业务密钥的环形内存空间的前 50%填满; 当该 业务密钥使用到环形内存空间的 25%刻度时, 智能移动终端向保密通信支持网络申请再次下 载业务密钥,然后从保密通信支持网络再下载 50%的密钥量,填入环形内存空间的后 50%处; 同理, 当业务密钥的使用量达到环形内存空间的 75%刻度时, 智能移动终端从保密通信支持 网络再续下载 50%的密钥量填入环形内存空间的前 50% ; 所述续下载的新业务密钥将原先相 同位置上的旧业务密钥替换掉。 在 VoIP、 视频通话等单次通信时间可能较长、 密钥消耗较快 的业务中, 随着通信时间延长, 下载到智能移动终端内存中的业务密钥不一定够用, 此时智 能移动终端就会通知保密通信支持网络, 继续下载业务密钥以供使用。 由于业务密钥存储在智能移动终端的内存中, 而非永久存储设备上; 随着通信业务的结 束,存储业务密钥的内存空间被操作系统回收,其中的数据也被销毁,无法再次利用和读出。
( 6 )智能移动终端使用所述业务密钥进行保密通信。通信双方用各自的加密业务密钥加 密明文后发给对方, 收到对方的密文后用相对应的解密业务密钥解密得到明文。 本实施方式主要实现了一种基于 Android智能操作系统的通用保密通信平台, 以及基于 该平台的通信密钥分配方法, 对于通信密钥使用时的具体技术细节, 不在本发明的讨论范围 之内。 例如, 本实施例中优选使用从保密通信支持网络下载到的对称业务密钥对通信信息进 行一次一密式的加解密操作, 但并不排斥利用该平台及分配方法对非对称密钥进行分发, 也 不排斥对业务密钥进行使用时采用非一次一密的加解密处理方式。 实施例补充说明: 以上的具体实施方式是以 VoIP业务为例详述的, 也同样适用于视频通话等领域, 这些业 务的共同特点是实时双向交互, 且信息量较大, 单次业务密钥分配可能无法满足全程通信需 求等。 另外, 还有一类通信业务, 例如 SMS短消息。 它并非是实时双向交互, 而更类似于一问 一答, 而且其单次信息量很少。 对于这样的业务, 在具体实施时, 可以做如下的改动:
<1>在智能移动终端为业务密钥开辟内存空间时不需要将其设置为逻辑环形, 因为 SMS 信息很短, 所需业务密钥也很少, 完全可以一次下载到位, 无需续下载。
<2>不像 VoIP业务的双向实时交互那样, 保密通信支持网络需要为每次通话准备两块业 务密钥 (如图 5所示)。 在 SMS通信时, 对于同一条 SMS消息来说, 保密通信支持网络只需 要准备一块业务密钥, 分别给发送方用于加密, 给接收方用于解密就可以了。 同理, 智能移 动终端也只需创建一个线程, 向保密通信支持网络申请所需业务密钥即可。
<3>SMS 短信发送方在发送密文前, 就要向保密通信支持网络申请加密业务密钥; 而接 收方需要等到短信收到后, 再向保密通信支持网络申请解密业务密钥。 由于运营商网络的缘 故, 这中间的时间间隔可能会稍长, 因此在保密通信支持网络端, 需要将发送方的业务密钥 申请信息暂时记忆一段时间, 等待接收方的业务密钥申请到了之后, 再比对是否匹配。
<4>由于 SMS信息较短, 因此无需像 VoIP那样, 业务密钥下载一部分后, 再通知业务程 序可以开始使用;而完全可以等本条 SMS短信所需的业务密钥全部下载完成后,再开始使用。 在不超出本发明所提出的技术方案框架内, 针对如 SMS短消息这类的非实时、非双向交 互通信业务所进行的如上改动,或者其他容易想到的变通或改动,均属本发明保护范围之内。 通信业务类型种类繁多, 本发明的实施例主要以 VoIP为例讨论了一种基于 Android智能 移动终端的通用保密通信平台的创建与应用, 以及基于该平台的通信密钥分配方法。 但本发 明所提出的技术方案的应用范围不仅限于所提到的 VoIP、 短消息、 视频通话等, 其他通信业 务类型也可以通过本发明所提供的通用保密通信平台来实现保密通信; 在其他具体通信业务 中, 对所述通用保密通信平台的调用细节的变化 (如调用时机、 调用位置、 业务密钥申请 /下 载的具体参数、 内存空间的管理等), 应视为对本发明所提出的技术方案的具体应用变形, 均 属本发明保护范围之内。 另外, 本发明不止可以用于 Android智能移动终端的改造, 也同样可以直接或稍加改动 之后, 应用于其它能够运行 Android操作系统的终端设备, 如智能电视、 机顶盒等, 为这些 智能设备提供与之功能相对应的保密信息服务。

Claims

权利要求书
1.一种基于 Android智能移动终端的通信密钥分配方法, 其特征是, 它的步骤为:
( 1 )在 Android操作系统的底层建立通用保密通信平台, 并在应用层通信软件程序源码 中调用通用保密通信平台 API, 将改造后的 Android操作系统源码编译为镜像文件, 烧写到 智能移动终端中;
(2)所述智能移动终端直接连接保密通信支持网络所属的密钥终端, 下载本机与保密通 信支持网络之间的共享密钥, 保存在该智能移动终端中; 共享密钥下载完毕后, 智能移动终 端与密钥终端断开连接;
( 3 )通信业务发起后, 智能移动终端通过调用系统底层的通用保密通信平台 API, 生成 业务密钥获取线程, 向保密通信支持网络申请本次通信所需的业务密钥;
(4)保密通信支持网络收到所述业务密钥申请后, 向参与通信的智能移动终端分配本次 通信所需的业务密钥;
( 5 )智能移动终端通过调用系统底层的通用保密通信平台 API, 从保密通信支持网络接 收本次通信所需的业务密钥, 并将其存放在智能移动终端的内存空间中;
( 6) 智能移动终端使用该业务密钥进行保密通信。
2.如权利要求 1所述的一种基于 Android智能移动终端的通信密钥分配方法,所述步骤( 1 ) 中的通用保密通信平台的建立方法, 其特征是:
( 1-1 )在 Android操作系统源码的 C/C++ framework层中添加保密通信函数库, 在其中 实现保密通信相关基础功能, 包括与保密通信支持网络的指令交互、 密钥申请、 密钥下载、 密钥管理、 加解密操作, 并以 JNI接口的形式向 Android的 Java framework层提供调用, 所 述保密通信函数库在编译时将被编译成 so库文件;
( 1-2) 在 Android操作系统源码的 Java framework层中添加保密通信类, 该类应用所述 JNI接口调用 C/C++ framework层中提供的保密通信函数库,并对其在 Java framework层做进 一步的封装和扩展, 最后向更上层的应用层提供保密通信相关的系统 API, 即通用保密通信 平台 API, 供各种应用层通信软件调用。
3. 如权利要求 1或 2所述的一种基于 Android智能移动终端的通信密钥分配方法, 所述 步骤 (3 ) 中的智能移动终端申请业务密钥的方法, 其特征是: ( 3-1 )通信业务发起后, 系统底层的通用保密通信平台 API被应用层通信软件调用, 生 成新的业务密钥获取线程, 该线程通过无线方式获得与保密通信支持网络的连接;
( 3-2) 所述连接建立后, 智能移动终端向保密通信支持网络发送本次通信的相关信息, 以申请本次通信所需的业务密钥, 这些信息包括主叫终端和被叫终端的身份、 验证信息、 为 何种业务申请业务密钥、 业务密钥用途是加密还是解密。
4. 如权利要求 3所述的一种基于 Android智能移动终端的通信密钥分配方法, 所述步骤 (4) 中的保密通信支持网络向智能移动终端分配业务密钥的方法, 其特征是:
(4-1 ) 建立网络服务端线程, 用以等待智能移动终端业务密钥获取线程的连接;
(4-2)与智能移动终端建立连接, 并收到其业务密钥申请后, 得知本次通信具体的业务 类型、 终端身份、 验证信息、 业务密钥用途, 判断是否具备业务密钥申请的权限, 为具备权 限的智能移动终端分配要下载的业务密钥;
(4-3 ) 保密通信支持网络使用与智能移动终端的共享密钥, 为要下发的业务密钥加密;
(4-4) 保密通信支持网络将加密之后的业务密钥通过无线方式发送到智能移动终端。
5. 如权利要求 4所述的一种基于 Android智能移动终端的通信密钥分配方法, 所述保密 通信支持网络与智能移动终端的共享密钥, 其特征是:
( 5-1 ) 所述保密通信支持网络中存储的共享密钥的头部保存有共享密钥当前使用信息, 下载到智能移动终端的共享密钥, 其头部信息被过滤掉;
( 5-2)保密通信支持网络为业务密钥加密时, 从保密通信支持网络与智能移动终端的共 享密钥头部信息中提取出该块共享密钥的当前使用位置, 使用该位置处的共享密钥为要下发 的业务密钥加密, 并将该位置信息以隐含形式混在加密之后的业务密钥的空闲保留位中, 然 后相应地更新共享密钥的头部信息;
( 5-3 )智能移动终端接收到保密通信支持网络发送的已加密的业务密钥后, 提取其中隐 含的位置信息, 结合存储在智能移动终端中的与保密通信支持网络间的共享密钥, 使用该位 置处的共享密钥为接收到的业务密钥解密;
( 5-4 ) 保密通信支持网络与智能移动终端间的共享密钥量不足时, 按照步骤 (2) 所述 方法, 智能移动终端从保密通信支持网络下载新的共享密钥。
6. 如权利要求 1所述的一种基于 Android智能移动终端的通信密钥分配方法, 所述步骤 ( 5 ) 中的智能移动终端接收业务密钥的方法, 其特征是: 一旦智能移动终端的业务密钥下载量达到了当前业务类型能够进行保密通信的最低阈值 之后,即通知相应的应用程序,告知其业务密钥已经能够使用;然后一边使用一边继续下载, 直到本次业务密钥下载完毕。
7. 如权利要求 1所述的一种基于 Android智能移动终端的通信密钥分配方法, 所述步骤 ( 5 ) 中的智能移动终端的内存空间, 其特征是:
(7-1 )智能移动终端为每个业务密钥获取线程开辟一块逻辑上呈环形的内存空间, 用于 存放从保密通信支持网络接收到的业务密钥, 该内存空间的大小取决于业务类型;
(7-2)智能移动终端为每一个存放业务密钥的所述环形内存空间都设有一个读取位置指 针, 使用业务密钥进行保密通信时, 从该指针所指位置读出相应数量的业务密钥, 并使用该 段业务密钥对通信信息进行加解密; 该指针在环形内存空间中不断前进, 始终指向下一次要 读取的业务密钥首地址, 当该指针越过环形空间末尾时, 即从环形空间开头继续读取业务密 钥;
(7-3 )智能移动终端为每一个存放业务密钥的所述环形内存空间都设有一个写入位置指 针, 从该指针所指位置开始, 将接收到的业务密钥存储入环形内存空间; 该指针在环形内存 空间中不断前进, 始终指向下一次要存储业务密钥的环形内存空间首地址, 当该指针越过环 形空间末尾时, 即从环形空间开头继续写入业务密钥; 每次向保密通信支持网络申请的业务 密钥量不超过所述环形内存空间的大小;
(7-4)第一次业务密钥下载后, 当所述写入位置指针与所述读取位置指针在环形内存空 间中各自所指位置的距离差到达一个设定的阈值时, 智能移动终端向保密通信支持网络申请 再次下载业务密钥;
(7-5 )本次通信业务结束后,存储业务密钥的内存空间被系统回收,其中的数据被销毁。
8. 如权利要求 1或 6所述的一种基于 Android智能移动终端的通信密钥分配方法, 其特 征是: 所述共享密钥和 /或业务密钥, 其使用方式优选采用一次一密。
PCT/CN2014/079373 2013-06-08 2014-06-06 一种基于Android智能移动终端的通信密钥分配方法 WO2014194856A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016517150A JP6074544B2 (ja) 2013-06-08 2014-06-06 アンドロイド携帯情報処理端末に基づく通信キーの配布方法
US14/896,231 US9668127B2 (en) 2013-06-08 2014-06-06 Method for allocating communication key based on android intelligent mobile terminal

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310228443.1 2013-06-08
CN201310228443.1A CN104243144B (zh) 2013-06-08 2013-06-08 一种基于Android智能移动终端的通信密钥分配方法

Publications (1)

Publication Number Publication Date
WO2014194856A1 true WO2014194856A1 (zh) 2014-12-11

Family

ID=52007584

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/079373 WO2014194856A1 (zh) 2013-06-08 2014-06-06 一种基于Android智能移动终端的通信密钥分配方法

Country Status (4)

Country Link
US (1) US9668127B2 (zh)
JP (1) JP6074544B2 (zh)
CN (2) CN104243144B (zh)
WO (1) WO2014194856A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3247080A4 (en) * 2015-02-09 2018-01-31 Huawei Technologies Co., Ltd. Certificate management method, device and system
CN113904849A (zh) * 2021-10-09 2022-01-07 深圳技德智能科技研究院有限公司 访问网络方法、装置、计算机设备和存储介质

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104780040A (zh) * 2015-04-06 2015-07-15 安徽问天量子科技股份有限公司 基于量子密码的手持设备加密方法及系统
CN105337726A (zh) * 2015-04-06 2016-02-17 安徽问天量子科技股份有限公司 基于量子密码的端对端手持设备加密方法及系统
CN104915602B (zh) * 2015-04-22 2017-08-11 飞天诚信科技股份有限公司 一种Android平台下的PIN码保护方法
CN106301769B (zh) * 2015-06-08 2020-04-10 阿里巴巴集团控股有限公司 量子密钥输出方法、存储一致性验证方法、装置及系统
CN104918243B (zh) * 2015-06-15 2018-04-10 上海交通大学 基于量子真随机数的移动终端保密系统及方法
CN105025475B (zh) * 2015-07-28 2019-02-26 东南大学常州研究院 面向Android系统的移动保密终端实现方法
CN105049193B (zh) * 2015-09-16 2019-01-01 浙江神州量子网络科技有限公司 一种基于量子保密网络的应用集成系统和控制方法
CN107769912A (zh) * 2016-08-16 2018-03-06 广东国盾量子科技有限公司 一种量子密钥芯片及基于量子密钥芯片的加解密方法
CN107820240A (zh) * 2016-09-12 2018-03-20 山东量子科学技术研究院有限公司 基于安卓操作系统的短消息加、解密方法及安卓操作系统
CN107819725B (zh) * 2016-09-12 2020-11-27 山东量子科学技术研究院有限公司 基于VoIP通话的方法及移动终端
CN108123795B (zh) 2016-11-28 2020-01-10 广东国盾量子科技有限公司 量子密钥芯片的发行方法、应用方法、发行平台及系统
CN108132816B (zh) * 2016-12-01 2020-12-18 腾讯科技(深圳)有限公司 应用中实现本地框架层调用的方法和装置
CN107920171A (zh) * 2017-12-21 2018-04-17 赛意(上海)信息科技有限公司 一种基于智能手机下的App擦肩连接方法及系统
CN108307332A (zh) * 2018-01-23 2018-07-20 武汉虹旭信息技术有限责任公司 基于Android平台的安全短信通信系统及其方法
CN109802830B (zh) * 2019-02-21 2022-11-15 深圳优仕康通信有限公司 一种加密传输方法和量子加密方法
CN112468287B (zh) * 2019-09-09 2022-02-22 科大国盾量子技术股份有限公司 一种密钥分配方法、系统、移动终端和可穿戴设备
US11669889B2 (en) * 2020-08-26 2023-06-06 Aleksandr Iurev System and method for automated generation of mobile applications for electronic shopping
US11669890B2 (en) * 2020-10-20 2023-06-06 Aleksandr Iurev System and method for automated generation of mobile applications for electronic shopping
JP7395455B2 (ja) * 2020-11-06 2023-12-11 株式会社東芝 転送装置、鍵管理サーバ装置、通信システム、転送方法及びプログラム
CN114840855A (zh) * 2022-04-22 2022-08-02 联动优势电子商务有限公司 密钥存储、调用方法以及装置、存储介质、电子装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101110671A (zh) * 2007-08-22 2008-01-23 中兴通讯股份有限公司 基于移动终端的多媒体业务保护和密钥管理方法
CN101483808A (zh) * 2008-01-07 2009-07-15 中兴通讯股份有限公司 保障多媒体广播业务安全的方法
CN102867142A (zh) * 2012-08-22 2013-01-09 四川长虹电器股份有限公司 一种基于Android系统的安全防护方法
CN102958021A (zh) * 2012-11-07 2013-03-06 华东师范大学 一种手机短信加解密通信系统及其通信方法

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0416768B1 (en) * 1989-09-08 1998-06-17 Digital Equipment Corporation Thread private memory storage for multi-thread digital data processors
US20040107344A1 (en) * 2001-05-14 2004-06-03 Atsushi Minemura Electronic device control apparatus
US8726294B2 (en) * 2010-10-01 2014-05-13 Z124 Cross-environment communication using application space API
KR100965437B1 (ko) * 2003-06-05 2010-06-24 인터트러스트 테크놀로지즈 코포레이션 P2p 서비스 편성을 위한 상호운용 시스템 및 방법
JP4638135B2 (ja) * 2003-10-14 2011-02-23 ソニー株式会社 情報記憶媒体
US9124650B2 (en) * 2006-12-13 2015-09-01 Quickplay Media Inc. Digital rights management in a mobile environment
US8615581B2 (en) * 2008-12-19 2013-12-24 Openpeak Inc. System for managing devices and method of operation of same
WO2011094734A2 (en) * 2010-02-01 2011-08-04 Jumptap, Inc. Integrated advertising system
CN102014385A (zh) * 2010-11-22 2011-04-13 中兴通讯股份有限公司 移动终端的认证方法及移动终端
US8817984B2 (en) * 2011-02-03 2014-08-26 mSignia, Inc. Cryptographic security functions based on anticipated changes in dynamic minutiae
US20130205028A1 (en) * 2012-02-07 2013-08-08 Rackspace Us, Inc. Elastic, Massively Parallel Processing Data Warehouse
US9141410B2 (en) * 2011-03-08 2015-09-22 Rackspace Us, Inc. Pluggable allocation in a cloud computing system
US9471384B2 (en) * 2012-03-16 2016-10-18 Rackspace Us, Inc. Method and system for utilizing spare cloud resources
CN102130769A (zh) * 2011-03-10 2011-07-20 北京邮电大学 一种用于量子密钥分配请求控制与自动实现的模型和方法
CN102752230B (zh) * 2011-04-22 2017-04-12 腾讯科技(深圳)有限公司 一种用户关系链共享的方法和系统
CN102196425B (zh) * 2011-07-01 2013-04-03 安徽量子通信技术有限公司 基于量子密钥分配网络的移动加密系统及其通信方法
US9378359B2 (en) * 2011-10-11 2016-06-28 Citrix Systems, Inc. Gateway for controlling mobile device access to enterprise resources
US20130238785A1 (en) * 2012-03-06 2013-09-12 Rackspace Us, Inc. System and Method for Metadata Discovery and Metadata-Aware Scheduling
US9027024B2 (en) * 2012-05-09 2015-05-05 Rackspace Us, Inc. Market-based virtual machine allocation
US9027108B2 (en) * 2012-05-23 2015-05-05 Box, Inc. Systems and methods for secure file portability between mobile applications on a mobile device
US9563480B2 (en) * 2012-08-21 2017-02-07 Rackspace Us, Inc. Multi-level cloud computing system
US9171092B2 (en) * 2012-12-07 2015-10-27 Empire Technology Development Llc Personal assistant context building
CN103077018B (zh) * 2012-12-27 2016-04-27 广州英码信息科技有限公司 一种基于安卓系统的设备接口的控制方法及系统
CN103106372B (zh) * 2013-01-17 2015-10-28 上海交通大学 用于Android系统的轻量级隐私数据加密方法及系统
CN103095461B (zh) * 2013-01-23 2015-12-09 山东量子科学技术研究院有限公司 一种量子安全网络设备间网络信令的认证方法
US20140245368A1 (en) * 2013-02-28 2014-08-28 Jiwu Media Co., Ltd. Smart receiver for mashup service based on convergence and receiving method thereof
US9027087B2 (en) * 2013-03-14 2015-05-05 Rackspace Us, Inc. Method and system for identity-based authentication of virtual machines

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101110671A (zh) * 2007-08-22 2008-01-23 中兴通讯股份有限公司 基于移动终端的多媒体业务保护和密钥管理方法
CN101483808A (zh) * 2008-01-07 2009-07-15 中兴通讯股份有限公司 保障多媒体广播业务安全的方法
CN102867142A (zh) * 2012-08-22 2013-01-09 四川长虹电器股份有限公司 一种基于Android系统的安全防护方法
CN102958021A (zh) * 2012-11-07 2013-03-06 华东师范大学 一种手机短信加解密通信系统及其通信方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3247080A4 (en) * 2015-02-09 2018-01-31 Huawei Technologies Co., Ltd. Certificate management method, device and system
US10581619B2 (en) 2015-02-09 2020-03-03 Huawei Technologies Co., Ltd. Certificate management method, device, and system
CN113904849A (zh) * 2021-10-09 2022-01-07 深圳技德智能科技研究院有限公司 访问网络方法、装置、计算机设备和存储介质
CN113904849B (zh) * 2021-10-09 2024-01-09 深圳技德智能科技研究院有限公司 访问网络方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN104243144A (zh) 2014-12-24
CN108156180A (zh) 2018-06-12
JP2016528756A (ja) 2016-09-15
US20160119783A1 (en) 2016-04-28
CN108156180B (zh) 2021-04-09
US9668127B2 (en) 2017-05-30
JP6074544B2 (ja) 2017-02-01
CN104243144B (zh) 2018-03-13

Similar Documents

Publication Publication Date Title
WO2014194856A1 (zh) 一种基于Android智能移动终端的通信密钥分配方法
WO2021184961A1 (zh) 部署合约的方法及装置
CN106063183B (zh) 用于云辅助密码学的方法和装置
AU2012355943B2 (en) System and method for key management for issuer security domain using global platform specifications
US9864874B1 (en) Management of encrypted data storage
US20240054239A1 (en) Cryptographically secure post-secrets-provisioning services
CN101939746A (zh) 用于管理移动计算设备上的软件应用程序的方法和系统
US10785023B2 (en) Apparatus and method for managing metering information
CN105991569A (zh) 一种tls通讯数据安全传输方法
CN109672519A (zh) 一种密码装置及其数据加解密方法
CN114692174B (zh) 一种电子证照服务系统、方法、装置、介质和设备
CN111190700B (zh) 针对虚拟化设备的跨域安全访问与资源控制方法
CN103026683A (zh) 通信系统、通信设备、通信方法和计算机程序
CN116582261A (zh) 一种区块链隐私合约密钥系统及密钥生成方法、使用方法
CN111901335A (zh) 基于中台的区块链数据传输管理方法及系统
CN105528216A (zh) 一种利用安卓系统随机生成蓝牙地址的方法
KR20240002666A (ko) 메신저 서비스를 제공하기 위한 방법, 시스템 및 비일시성의 컴퓨터 판독 가능한 기록 매체
CN112906032B (zh) 基于cp-abe与区块链的文件安全传输方法、系统及介质
CN114679287B (zh) 数据处理方法、系统、电子设备及存储介质
CN112131597A (zh) 一种生成加密信息的方法、装置和智能设备
CN206865469U (zh) 基于量子密钥的保密移动通信系统
US20200228503A1 (en) Network encryption methods for realizing encryption of local area networks at the bottom layer driver of network cards of embedded devices
KR20210044581A (ko) 블록체인 기반 암호화폐 상속 방법 및 장치
CN109155913B (zh) 网络连接方法、安全节点的确定方法及装置
CN109120631B (zh) 功能调用系统、方法、装置及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14807064

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14896231

Country of ref document: US

ENP Entry into the national phase

Ref document number: 2016517150

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14807064

Country of ref document: EP

Kind code of ref document: A1