Call data encryption method and related equipment
By using the target public key to encrypt the private key of the first device and store it on the blockchain, the leakage and abuse caused by centralized storage management of call data is solved, and the high security storage and management of call data is achieved.
Patent Information
- Application Number
- CN202411739734.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-29
- Publication Date
- 2025-03-25
- Estimated Expiration
- 2044-11-29
AI Technical Summary
In the prior art, operators perform centralized storage management of call data, resulting in call data being vulnerable to attacks and the risk of data leakage and abuse.
The private key generated by the first device is encrypted by the pre-stored target public key, and the encryption private key is obtained, and stored in the blockchain, a storage transaction message is obtained, and the message is sent to the second device, so that it stores its encryption private key and public key in the blockchain, and then the call data is encrypted through the public key in the blockchain.
Ensuring that only authorized parties can decrypt and obtain call data, reduce the risk of call data breaches and abuse, and improve the security of call data.
Smart Images

Figure CN119696771A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a call data encryption method and related equipment. Background Art
[0002] At present, communication operators provide work number-related services to enterprises. Enterprises open work numbers for employees to use, and communication operators provide enterprises with employees' call data so that enterprises can evaluate employees' performance based on the content of calls, etc. However, call data is usually stored on the operator's centralized server and managed and analyzed by it, which makes call data vulnerable to attacks and increases the risk of data leakage and abuse. Summary of the invention
[0003] The embodiments of the present application provide a call data encryption method and related equipment to at least solve the problem in the related art that call data is vulnerable to attacks and there is a risk of data leakage and abuse in the centralized storage and management of call data by operators.
[0004] In order to solve the above technical problems, this application is implemented as follows: In a first aspect, an embodiment of the present application provides a call data encryption method, including: in response to a call request initiated by a first device, encrypting a first private key generated by the first device by using a pre-stored target public key to obtain a first encrypted private key; storing the first encrypted private key and the first public key corresponding to the first private key in a blockchain, and obtaining a storage transaction message returned by the blockchain; sending the storage transaction message to a second device corresponding to the call request, the storage transaction message being used to instruct the second device to store a second encrypted private key and a second public key of the second device in the blockchain based on the storage transaction message, the second encrypted private key being obtained by the second device encrypting the second private key by using the target public key, and the second public key corresponding to the second private key; encrypting the call data of the first device by using the second public key in the blockchain to obtain first encrypted data.
[0005] In the second aspect, an embodiment of the present application provides a call data encryption method, including: in response to a wake-up request received by a second device, obtaining from a blockchain a first encrypted private key and a first public key corresponding to the stored transaction information included in the wake-up request; encrypting a second private key generated by the second device by a target public key to obtain a second encrypted private key; storing the second encrypted private key and a second public key corresponding to the second private key in the blockchain; encrypting the call data of the second device by the first public key to obtain second encrypted data.
[0006] In a third aspect, an embodiment of the present application provides a call data encryption device, including: a first encryption module, used to respond to a call request initiated by a first device, encrypt a first private key generated by the first device through a pre-stored target public key to obtain a first encrypted private key; a message acquisition module, used to store the first encrypted private key and the first public key corresponding to the first private key in a blockchain, and obtain a storage transaction message returned by the blockchain; a message sending module, used to send a storage transaction message to a second device corresponding to the call request, the storage transaction message is used to instruct the second device to store the second encrypted private key and the second public key of the second device in the blockchain based on the storage transaction message, the second encrypted private key is obtained by the second device encrypting the second private key through the target public key, and the second public key corresponds to the second private key; a second encryption module, used to encrypt the call data through the second public key in the blockchain to obtain first encrypted data.
[0007] In a fourth aspect, an embodiment of the present application provides a call data encryption device, including: a key acquisition module, used to respond to a wake-up request received by a second device, and obtain from the blockchain a first encrypted private key and a first public key corresponding to the stored transaction information included in the wake-up request; a third encryption module, used to encrypt the second private key generated by the second device through the target public key to obtain a second encrypted private key; a key storage module, used to store the second encrypted private key and the second public key corresponding to the second private key in the blockchain; a fourth encryption module, used to encrypt the call data through the first public key to obtain second encrypted data.
[0008] In a fifth aspect, an embodiment of the present application provides an electronic device, comprising a processor and a memory, wherein the memory stores programs or instructions that can be run on the processor, and when the programs or instructions are executed by the processor, the steps of the method described in the first aspect or the second aspect above are implemented.
[0009] In a sixth aspect, an embodiment of the present application provides a computer-readable storage medium, on which a program or instruction is stored. When the program or instruction is executed by a processor, the steps of the method described in the first aspect or the second aspect above are implemented.
[0010] In the seventh aspect, an embodiment of the present application provides a computer program product, which includes a computer program stored on a non-transitory computer-readable storage medium, and the computer program includes program instructions. When the program instructions are executed by a computer, the computer executes the steps of the method described in the first or second aspect above.
[0011] In an embodiment of the present application, in response to a call request initiated by a first device, the first private key generated by the first device is encrypted by a pre-stored target public key to obtain a first encrypted private key; the first encrypted private key and the first public key corresponding to the first private key are stored in a blockchain, and a storage transaction message returned by the blockchain is obtained; a storage transaction message is sent to a second device corresponding to the call request, and the storage transaction message is used to instruct the second device to store the second encrypted private key and the second public key of the second device in the blockchain based on the storage transaction message; the call data of the first device is encrypted by the second public key in the blockchain to obtain the first encrypted data. In this way, a third-party user (for example, an enterprise end, etc.) needs to decrypt the second encrypted private key by the target private key corresponding to the target public key, and after obtaining the second private key, the second private key is used to decrypt the first encrypted data of the first device to obtain the call data. Since the call data of the first device cannot be directly accessed, it is ensured that only the enterprise end can decrypt and obtain the call data, thereby reducing the risk of call data leakage and abuse and improving the security of call data.
[0012] It should be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0013] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0014] Figure 1 A schematic diagram of a flow chart of a call data encryption method provided in an embodiment of the present application is shown; Figure 2 A schematic diagram of the process of exchanging public keys provided in an embodiment of the present application is shown; Figure 3 Another schematic diagram of the process of encrypting call data provided by an embodiment of the present application is shown; Figure 4 A schematic diagram of an encrypted data exchange process provided by an embodiment of the present application is shown; Figure 5 One of the structural schematic diagrams of the call data encryption device provided in an embodiment of the present application is shown; Figure 6 The second structural diagram of the call data encryption device provided in the embodiment of the present application is shown; Figure 7 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application is shown. DETAILED DESCRIPTION
[0015] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present application. Instead, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the appended claims.
[0016] In the related art, call data is usually stored on the operator's centralized server and managed and analyzed by it. This centralized storage and management method by the operator has at least the following problems: 1) Data storage is centralized, making it vulnerable to attacks and data leaks; 2) Operators have full access to recorded data, which poses a risk of privacy leakage; 3) Lack of effective access control mechanism, unable to ensure that data is only accessed by authorized parties.
[0017] In view of the above-mentioned problems in the communication process, an embodiment of the present application provides a call data encryption method, which responds to a call request initiated by a first device, encrypts a first private key generated by the first device through a pre-stored target public key to obtain a first encrypted private key; stores the first encrypted private key and the first public key corresponding to the first private key in a blockchain, and obtains a storage transaction message returned by the blockchain; sends a storage transaction message to a second device corresponding to the call request, so that the second device stores the second encrypted private key and the second public key in the blockchain; and then, the first device encrypts the call data of the first device through the second public key in the blockchain to obtain the first encrypted data. In this way, a third-party user (for example, an enterprise end, etc.) needs to decrypt the second encrypted private key through the target private key corresponding to the target public key, and after obtaining the second private key, use the second private key to decrypt the first encrypted data of the first device to obtain the call data. Since the call data of the first device cannot be directly accessed, it is ensured that only the enterprise end can decrypt and obtain the call data, thereby reducing the risk of call data leakage and abuse and improving the security of call data.
[0018] Figure 1 A flow chart of a call data encryption method provided by an embodiment of the present application is shown. The execution subject of the method may be a terminal device, wherein the terminal device may be a device such as a personal computer, or a mobile terminal device such as a mobile phone or a tablet computer, and the terminal device may be a terminal device used by a user. As shown in the figure, the call data encryption method 100 may include the following steps: Step 101: In response to a call request initiated by a first device, a first private key generated by the first device is encrypted using a pre-stored target public key to obtain a first encrypted private key.
[0019] In a specific implementation, taking the call data of an enterprise employee as an example, the enterprise employee initiates a call request through the first device. The encryption application in the first device can use an asymmetric encryption algorithm to generate a one-time session key pair for each call. The session key pair includes a first private key SK c and the first public key PK c Among them, the asymmetric encryption algorithm includes the RSA encryption algorithm.
[0020] The first device uses the pre-stored target public key PK E A first private key SK generated for the first device c Encrypt and obtain the first encryption private key Enc(SK c ).
[0021] Here, the target public key PK E It can be the public key of the authorized party. The authorized party can use the target public key PK E The corresponding target private key SK E The first encryption private key Enc(SK c ) to decrypt and obtain the first private key SK c . Step 102: Store the first encrypted private key and the first public key corresponding to the first private key in the blockchain, and obtain the storage transaction message returned by the blockchain.
[0022] In a specific implementation, the first device may store the first encrypted private key Enc(SK c ) and the first public key PK c The first device may also store the session ID S corresponding to the call request in the blockchain, and obtain the storage transaction message R returned by the blockchain. id 、My phone numberp c , the target user number p of the second device t The identification information is stored in the blockchain, so that the second device can verify the validity of the stored transaction message R according to the identification information stored in the blockchain.
[0023] Step 103: Send the stored transaction message to the second device corresponding to the call request.
[0024] Among them, the storage transaction message is used to instruct the second device to store the second encrypted private key and the second public key of the second device in the blockchain based on the storage transaction message, the second encrypted private key is obtained by the second device encrypting the second private key through the target public key, and the second public key corresponds to the second private key.
[0025] In a specific implementation, the first device sends a storage transaction message R to the second device corresponding to the call request. Here, the target user number p in the call request may be used. t Determine the second device; after obtaining the storage transaction message R, the second device performs a transaction based on the storage transaction message R to store the local number p in the blockchain. c 、Target user number p t Verify the identification information, for example, verify p t Is it the local number? Check whether R is p c The generated transaction, verification p c Whether it corresponds to the user who submitted R, etc., after verification, the second encrypted private key Enc(SK t ) and the second public key PK t , the second encryption private key Enc(SK c ) is the second device through the target public key PK E For the second private key SK t Encrypted.
[0026] Step 104: Encrypt the call data of the first device using the second public key in the blockchain to obtain first encrypted data.
[0027] In a specific implementation, the first device uses the second public key PK in the blockchain t The call data of the first device is encrypted to obtain first encrypted data.
[0028] In this way, a third-party user (such as an enterprise) needs to decrypt the second encrypted private key using the target private key corresponding to the target public key. After obtaining the second private key, the second private key is used to decrypt the first encrypted data of the first device to obtain the call data. Since the call data of the first device cannot be directly accessed, it is ensured that only the enterprise can decrypt and obtain the call data, thereby reducing the risk of call data leakage and abuse and improving the security of call data.
[0029] In a possible implementation, in step 103, sending the stored transaction message to the second device corresponding to the call request includes: The call request and the storage transaction message are sent to an operator, the operator determines the second device based on the identification information corresponding to the call request, and sends the storage transaction message to the second device.
[0030] In the embodiment of the present application, the call request and the storage transaction message can be sent to the operator, and the operator determines the second device based on the identification information corresponding to the call request, and sends the storage transaction message to the second device. The identification information corresponding to the call request may include the target user number p t, the device serial number of the second device, etc.
[0031] In an exemplary embodiment, if Figure 2 As shown in , the above public key exchange method may include the following steps: Step 201: The first device initiates a call request and uploads data to the link; Specifically, in response to a call request initiated by the first device, a first private key SK of the first device is generated. c and the first public key PK c ; Through the pre-stored target public key PK E For the first private key SK c Encrypt and obtain the first encryption private key Enc(SK c ); the first encrypted private key Enc(SK c ), first public key PK c 、My phone numberp c 、Target user number p t 、Target public key PK E etc. are stored in the blockchain; Step 202: The first device obtains the storage transaction message R returned by the blockchain; Step 203: The first device sends a call request and a storage transaction message R to the operator; Step 204: The first device polls the blockchain to see whether the second device stores the second encrypted private key Enc(SK c ) and the second public key PK t ; Step 205: The operator responds to the call request based on the t The second device is determined by the identification information, and a storage transaction message R is sent to the second device; Step 206: The second device creates a second private key SK t and the second public key PK t ; Step 207: The second device verifies the data p on the blockchain according to the stored transaction message R t and p c ; Step 208: The blockchain returns the verification result to the second device; Step 209: When the second device determines that the verification is successful according to the verification result, it stores the second encryption private key Enc(SK t ) and the second public key PK t To the blockchain, the second encrypted private key Enc(SK c ) is the second device through the target public key PK E For the second private key SK t Encrypted.
[0032] In a possible implementation, in the above step 104, encrypting the call data of the first device by using the second public key in the blockchain to obtain the first encrypted data includes: Divide the call data of the first device into at least one first audio block; encrypt the at least one first audio block using the second public key to obtain first encrypted data.
[0033] In an exemplary embodiment, the call data of the first device is P 1 is divided into at least one first audio block , using the second public key PK t Encrypt at least one first audio block to obtain first encrypted data .
[0034] Wherein, after encrypting the call data of the first device by using the second public key in the blockchain to obtain the first encrypted data, the method further includes: Obtain a first homomorphic hash value corresponding to the first encrypted data; store the first homomorphic hash value in the blockchain, so that the second device verifies the validity of the first encrypted data by comparing the first homomorphic hash value with the second homomorphic hash value, wherein the second homomorphic hash value is determined by the second device based on the received first encrypted data.
[0035] In an exemplary embodiment, after obtaining the first encrypted data, the first device obtains the first homomorphic hash value corresponding to the first encrypted data H 1: ; The first homomorphic hash value H 1 is stored in the blockchain, and the second device receives the first encrypted data sent by the first device , according to the first encrypted data Determine the second homomorphic hash value , where the second homomorphic hash value can be determined by : ; The second device compares the first homomorphic hash value H 1 and the second homomorphic hash value Verify the first encrypted data The effectiveness of H 1 and If different, the first encrypted data is tampered with; H 1 and If the first encrypted data is the same as the second private key, the subsequent processing is performed. For example, the second device uses the second private key to encrypt the first encrypted data. Decryption is performed to obtain the call data of the first device P 1.
[0036] In a possible implementation, in the above step 104, after sending the storage transaction message to the second device corresponding to the call request, the step further includes: Obtain second encrypted data sent by the second device, and obtain a third homomorphic hash value corresponding to the second encrypted data from the blockchain; determine a fourth homomorphic hash value based on the second encrypted data; when the third homomorphic hash value is the same as the fourth homomorphic hash value, decrypt the second encrypted data using the first private key to obtain communication data of the second device.
[0037] In an exemplary embodiment, the second encrypted data sent by the second device is obtained. , and the second encrypted data The corresponding third homomorphic hash value H 2; Based on the second encrypted data , determine the fourth homomorphic hash value Specifically, the fourth homomorphic hash value can be determined by : ; If the third homomorphic hash value H 2 and the fourth homomorphic hash value different, the second encrypted data has been tampered with; if the third homomorphic hash value H 2 and the fourth homomorphic hash value If they are the same, then the first private key SK c The second encrypted data Decryption is performed to obtain the communication data of the second device P 2-i , the specific formula is as follows: .
[0038] Figure 3 Another flow chart of the call data encryption method provided by the embodiment of the present application is shown. The execution subject of the method can be a terminal device, wherein the terminal device can be a device such as a personal computer, or a mobile terminal device such as a mobile phone or a tablet computer, and the terminal device can be a terminal device used by a user. As shown in the figure, the call data encryption method 300 can include the following steps: Step 301: In response to a wake-up request received by a second device, obtain a first encrypted private key and a first public key corresponding to the storage transaction information included in the wake-up request from the blockchain.
[0039] In a specific implementation, taking the call data of enterprise employees as an example, the second device can be a device used by the target user corresponding to the call request initiated by the enterprise employee through the first device. The first device sends the call request and the storage transaction message to the operator, and the operator invokes the second device to respond based on the identification information corresponding to the call request. In response to the invocation request received by the second device, the invocation request includes the storage transaction message R sent by the first device. The first encrypted private key Enc(SK corresponding to the storage transaction information R) is obtained from the blockchain. c ) and the first public key PK c .
[0040] Step 302: The second private key generated by the second device is encrypted using the target public key to obtain a second encrypted private key.
[0041] In the specific implementation, the target public key PK E The second private key SK generated for the second device t Encrypt and obtain the second encryption private key Enc(SK t ).
[0042] Here, the target public key PK E It can be the public key of the authorized party. The second device can store the target public key in advance, or obtain the target public key from the blockchain according to the stored transaction information. E The corresponding target private key SK E The second encryption private key Enc(SK t ) to decrypt and obtain the second private key SK t .
[0043] Step 303: Store the second encrypted private key and the second public key corresponding to the second private key in the blockchain.
[0044] In a specific implementation, the second encrypted private key Enc(SK t ) and the second private key SK t The corresponding second public key PK t Stored in the blockchain, so that the first device can use the second public key PK in the blockchain t The call data of the first device is encrypted to obtain first encrypted data.
[0045] Step 304: Encrypt the call data of the second device using the first public key to obtain second encrypted data.
[0046] In a specific implementation, the second device uses the first public key PK c The call data of the second device is encrypted to obtain second encrypted data.
[0047] In this way, a third-party user (for example, an enterprise, etc.) needs to decrypt the first encrypted private key using the target private key corresponding to the target public key to obtain the first private key, and then use the first private key to decrypt the second encrypted data of the second device to obtain the call data. Since the call data of the second device cannot be directly accessed, it is ensured that only the enterprise can decrypt and obtain the call data, thereby reducing the risk of call data leakage and abuse and improving the security of call data.
[0048] In a possible implementation, in the above step 303, storing the second encrypted private key and the second public key corresponding to the second private key in the blockchain includes: The identification information corresponding to the stored transaction message in the blockchain is verified, and if the identification information passes the verification, the second encrypted private key and the second public key corresponding to the second private key are stored in the blockchain.
[0049] In the embodiment of the present application, after obtaining the storage transaction message R, the second device performs a local number p corresponding to the storage transaction message R in the blockchain. c 、Target user number p t Verify the identification information, for example, verify p t Is it the local number? Check whether R is p c The generated transaction, verification p c Whether it corresponds to the user who submitted R, etc., after verification, the second encrypted private key Enc(SK t ) and the second public key PK t .
[0050] In a possible implementation, in the above step 304, encrypting the call data of the second device by using the first public key to obtain the second encrypted data includes: Divide the call data of the second device into at least one second audio block; encrypt the at least one second audio block using the first public key to obtain second encrypted data.
[0051] In an exemplary embodiment, the call data of the second device is P 2 is divided into at least one second audio block , using the first public key PK c Encrypt at least one second audio block to obtain second encrypted data .
[0052] Wherein, after encrypting the call data of the second device by using the first public key to obtain the second encrypted data, the method further includes: Obtain a third homomorphic hash value corresponding to the second encrypted data; store the third homomorphic hash value in the blockchain, so that the first device verifies the validity of the second encrypted data by comparing the third homomorphic hash value with a fourth homomorphic hash value, wherein the fourth homomorphic hash value is determined by the first device based on the received second encrypted data.
[0053] In an exemplary embodiment, after obtaining the second encrypted data, the second device obtains a third homomorphic hash value corresponding to the second encrypted data. H 2: ; The third homomorphic hash value H 2 is stored in the blockchain. When the first device receives the second encrypted data sent by the second device , according to the second encrypted data Determine the fourth homomorphic hash value , where the fourth homomorphic hash value can be determined by : ; The second device compares the third homomorphic hash value H 2 and the fourth homomorphic hash value Verify the second encrypted data The effectiveness of H 2 and If different, the second encrypted data is tampered; H 2 and If the first device encrypts the second data using the first private key, the subsequent processing is performed. For example, the first device encrypts the second data using the first private key. Decryption is performed to obtain the call data of the second device P 2.
[0054] In a possible implementation, in the above step 304, after storing the second encrypted private key and the second public key corresponding to the second private key in the blockchain, the step further includes: Obtain first encrypted data sent by the first device, and obtain a first homomorphic hash value corresponding to the first encrypted data from the blockchain; determine a second homomorphic hash value based on the first encrypted data; when the first homomorphic hash value is the same as the second homomorphic hash value, decrypt the first encrypted data using the second private key to obtain communication data of the first device.
[0055] In an exemplary embodiment, first encrypted data sent by a first device is obtained , and the second encrypted data The corresponding first homomorphic hash value H1; Based on the first encrypted data , determine the second homomorphic hash value Specifically, the second homomorphic hash value can be determined by : ; If the first homomorphic hash value H 1 and the second homomorphic hash value different, the first encrypted data has been tampered with; if the first homomorphic hash value H 1 and the second homomorphic hash value If they are the same, then the second private key SK t The first encrypted data Perform decryption processing to obtain the communication data of the first device P 1-i , the specific formula is as follows: .
[0056] Figure 4 The schematic diagram of the encrypted data exchange process provided by the embodiment of the present application is shown. As shown in the figure, different from the method in the related art where the operator performs centralized storage and management of call data, in the embodiment of the present application, the first encrypted data C of the first device 420 is forwarded by the operator 410. 1-i to the second device 430, and forwards the second encrypted data C of the second device 430 2-i To the first device 420, so as to realize the communication data interaction between the first device 420 and the second device 430. The first device 420 uploads the first homomorphic hash value H 1 to the blockchain and obtain the third homomorphic hash value from the blockchain H 2, used to verify the second encrypted data C sent by the second device 430 2-i The second device 430 uploads the third homomorphic hash value H 2 Go to the blockchain and get the first homomorphic hash value from the blockchain H 1, used to verify the first encrypted data C sent by the first device 420 1-i The authorized party 440 (such as the enterprise end) downloads the session S corresponding to the call request from the blockchain id , get the encrypted data C 1-i and C 2-i , and the first encrypted private key Enc(SK c ) and the second encrypted private key Enc(SK t ), using the target public key PK E The corresponding target private key SK E Decrypt Enc(SKc ) and Enc(SK t ) Get the SK for this call c SK t , and then through SK c SK t Call data for users C 1-i and C 2-i Decryption is performed to complete acquisition of call data so that the authorized party 440 can evaluate the performance of the enterprise employees corresponding to the first device 420 based on the call content and the like.
[0057] Figure 5 FIG. 1 shows one of the structural diagrams of the call data encryption device provided in the embodiment of the present application. The call data encryption device can be implemented as follows: Figure 1 In the embodiment shown, all or part of the contents, the call data encryption device 500 includes: The first encryption module 510 is used to respond to a call request initiated by the first device and encrypt the first private key generated by the first device by using a pre-stored target public key to obtain a first encrypted private key; A message acquisition module 520, configured to store the first encrypted private key and the first public key corresponding to the first private key in a blockchain, and obtain a storage transaction message returned by the blockchain; a message sending module 530, configured to send a storage transaction message to a second device corresponding to the call request, wherein the storage transaction message is used to instruct the second device to store a second encrypted private key and a second public key of the second device in the blockchain based on the storage transaction message, wherein the second encrypted private key is obtained by the second device encrypting the second private key by using the target public key, and the second public key corresponds to the second private key; The second encryption module 540 is used to encrypt the call data using the second public key in the blockchain to obtain first encrypted data.
[0058] In a possible implementation, the message sending module 530, when used to send the storage transaction message to the second device corresponding to the call request, is specifically used to: The call request and the storage transaction message are sent to an operator, the operator determines the second device based on the identification information corresponding to the call request, and sends the storage transaction message to the second device.
[0059] In a possible implementation, the second encryption module 540, when used to encrypt the call data using the second public key in the blockchain to obtain the first encrypted data, is specifically used to: Dividing the call data in the blockchain into at least one first audio block; The at least one first audio block is encrypted using the second public key to obtain first encrypted data.
[0060] In a possible implementation, the second encryption module 540 is further configured to: Obtaining a first homomorphic hash value corresponding to the first encrypted data; The first homomorphic hash value is stored in the blockchain, so that the second device verifies the validity of the first encrypted data by comparing the first homomorphic hash value with a second homomorphic hash value, wherein the second homomorphic hash value is determined by the second device according to the received first encrypted data.
[0061] In a possible implementation, the message sending module 530 is further configured to: Obtaining second encrypted data sent by the second device and a third homomorphic hash value corresponding to the second encrypted data; Determining a fourth homomorphic hash value based on the second encrypted data; When the third homomorphic hash value is the same as the fourth homomorphic hash value, the second encrypted data is decrypted using the first private key to obtain communication data of the second device.
[0062] The embodiment of the present application provides a call data encryption device, comprising a first encryption module, a message acquisition module, a message sending module, and a second encryption module; the first encryption module responds to a call request initiated by a first device, and encrypts the first private key generated by the first device by using a pre-stored target public key to obtain a first encrypted private key; the message acquisition module stores the first encrypted private key and the first public key corresponding to the first private key in a blockchain, and obtains a storage transaction message returned by the blockchain; the message sending module sends a storage transaction message to a second device corresponding to the call request, and the storage transaction message is used to instruct the second device to store the second encrypted private key and the second public key of the second device in the blockchain based on the storage transaction message; the second encryption module encrypts the call data by using the second public key in the blockchain to obtain the first encrypted data. In this way, a third-party user (such as an enterprise end, etc.) needs to decrypt the second encrypted private key by using the target private key corresponding to the target public key, and after obtaining the second private key, use the second private key to decrypt the first encrypted data of the first device to obtain the call data. Since the call data of the first device cannot be directly accessed, it is ensured that only the enterprise end can decrypt and obtain the call data, thereby reducing the risk of call data leakage and abuse, and improving the security of call data.
[0063] Figure 6The second structural diagram of the call data encryption device provided in the embodiment of the present application is shown. The call data encryption device can be implemented as follows: Figure 3 In the embodiment shown, all or part of the contents, the call data encryption device 600 includes: A key acquisition module 610 is used to obtain, in response to the wake-up request received by the second device, a first encrypted private key and a first public key corresponding to the storage transaction information included in the wake-up request from the blockchain; A third encryption module 620, configured to encrypt the second private key generated by the second device using the target public key to obtain a second encrypted private key; A key storage module 630, configured to store the second encrypted private key and a second public key corresponding to the second private key in the blockchain; The fourth encryption module 640 is used to encrypt the call data using the first public key to obtain second encrypted data.
[0064] In a possible implementation, the key storage module 630, when used to store the second encrypted private key and the second public key corresponding to the second private key in the blockchain, is specifically used to: The identification information corresponding to the stored transaction message in the blockchain is verified, and if the identification information passes the verification, the second encrypted private key and the second public key corresponding to the second private key are stored in the blockchain.
[0065] In a possible implementation, the fourth encryption module 640, when used to encrypt the call data using the first public key in the blockchain to obtain the second encrypted data, is specifically used to: dividing the call data into at least one second audio block; The at least one second audio block is encrypted using the first public key to obtain second encrypted data.
[0066] In a possible implementation, the fourth encryption module 640 is further configured to: Obtaining a third homomorphic hash value corresponding to the second encrypted data; The third homomorphic hash value is stored in the blockchain, so that the first device verifies the validity of the second encrypted data by comparing the third homomorphic hash value with a fourth homomorphic hash value, wherein the fourth homomorphic hash value is determined by the first device according to the received second encrypted data.
[0067] In a possible implementation, the key storage module 630 is further configured to: Obtaining first encrypted data sent by the first device and a first homomorphic hash value corresponding to the first encrypted data; Determine a second homomorphic hash value based on the first encrypted data; When the first homomorphic hash value is the same as the second homomorphic hash value, the first encrypted data is decrypted using the second private key to obtain communication data of the first device.
[0068] The embodiment of the present application provides a call data encryption device, including a key acquisition module, a third encryption module, a key storage module and a fourth encryption module; the key acquisition module responds to the call request received by the second device, and acquires the first encryption private key and the first public key corresponding to the storage transaction information included in the call request from the blockchain; the third encryption module encrypts the second private key generated by the second device through the target public key to obtain the second encryption private key; the key storage module stores the second encryption private key and the second public key corresponding to the second private key in the blockchain; the fourth encryption module encrypts the call data through the first public key to obtain the second encrypted data. In this way, a third-party user (for example, an enterprise end, etc.) needs to decrypt the first encryption private key through the target private key corresponding to the target public key to obtain the first private key, and then decrypt the second encrypted data of the second device through the first private key to obtain the call data. Since the call data of the second device cannot be directly accessed, it is ensured that only the enterprise end can decrypt and obtain the call data, thereby reducing the risk of call data leakage and abuse, and improving the security of call data.
[0069] Figure 7 The hardware structure diagram of the electronic device provided by the embodiment of the present application is shown. Referring to the figure, at the hardware level, the electronic device 700 includes a processor 710, and optionally, includes an internal bus 720, a network interface 730, and a memory 740. Among them, the memory 740 may include a memory 741, such as a high-speed random access memory (Random-Access Memory, RAM), and may also include a non-volatile memory 742 (non-volatile memory), such as at least one disk storage, etc. Of course, the electronic device 700 may also include hardware required for other services.
[0070] The processor 710, the network interface 730 and the memory may be interconnected via an internal bus 720, which may be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one bidirectional arrow is used in the figure, but it does not mean that there is only one bus or one type of bus.
[0071] The memory 740 stores programs. Specifically, the programs may include program codes, and the program codes include computer operation instructions. The memory 740 may include a memory 741 and a non-volatile memory 742 , and provide instructions and data to the processor 710 .
[0072] The processor 710 reads the corresponding computer program from the non-volatile memory 742 into the memory and then runs it, forming a device for locating the target user at the logical level. The processor 710 executes the program stored in the memory and specifically performs: Figure 1 or Figure 3 The method disclosed in the illustrated embodiment realizes the functions and beneficial effects of each method described in the foregoing method embodiments, which will not be described in detail here.
[0073] The above application Figure 1 or Figure 3The method disclosed in the illustrated embodiment can be applied to the processor 710 or implemented by the processor 710. The processor 710 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the hardware integrated logic circuit or software instructions in the processor 710. The above processor 710 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the method disclosed in the embodiments of the present application can be directly embodied as a hardware decoding processor for execution, or a combination of hardware and software modules in the decoding processor for execution. The software module can be located in a storage medium mature in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.
[0074] The computer device can also execute the methods described in the foregoing method embodiments, and realize the functions and beneficial effects of the methods described in the foregoing method embodiments, which will not be repeated here.
[0075] Of course, in addition to software implementation, the electronic device 700 of the present application does not exclude other implementation methods, such as logic devices or a combination of software and hardware, etc., that is to say, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.
[0076] The embodiment of the present application also provides a computer-readable storage medium, wherein the computer-readable medium stores one or more programs, and when the one or more programs are executed by an electronic device including a plurality of application programs, the electronic device executes Figure 1 or Figure 3 The method disclosed in the illustrated embodiment realizes the functions and beneficial effects of each method described in the foregoing method embodiments, which will not be described in detail here.
[0077] The computer-readable storage medium includes a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.
[0078] Furthermore, an embodiment of the present application also provides a computer program product, the computer program product comprising a computer program stored on a non-transitory computer-readable storage medium, the computer program comprising program instructions, and when the program instructions are executed by a computer, the following process is implemented: Figure 1 or Figure 3 The method disclosed in the illustrated embodiment realizes the functions and beneficial effects of each method described in the foregoing method embodiments, which will not be described in detail here.
[0079] The embodiments of the present application can be applied to various electronic device collaboration or interconnection scenarios, including: collaboration and interconnection between mobile phones and laptops / tablet computers; collaboration and interconnection between mobile terminals and smart TVs / displays; collaboration and interconnection between mobile phones or tablet computers and in-car entertainment systems; collaboration and interconnection between mobile terminals and smart conference systems, etc., so as to meet the needs of users in various scenarios such as smart homes, smart offices, and smart travel.
[0080] In short, the above is only a preferred embodiment of the present application and does not limit the protection scope of the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.
[0081] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
[0082] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices or any other non-transmission media that can store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.
[0083] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.
[0084] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
Claims
1. A call data encryption method, characterized in that: include: In response to a call request initiated by the first device, encrypting a first private key generated by the first device using a pre-stored target public key to obtain a first encrypted private key; Store the first encrypted private key and the first public key corresponding to the first private key in the blockchain, and obtain a storage transaction message returned by the blockchain; Sending the storage transaction message to the second device corresponding to the call request, the storage transaction message is used to instruct the second device to store a second encrypted private key and a second public key of the second device in the blockchain based on the storage transaction message, the second encrypted private key is obtained by the second device encrypting the second private key by using the target public key, and the second public key corresponds to the second private key; The call data of the first device is encrypted using the second public key in the blockchain to obtain first encrypted data.
2. The method according to claim 1, characterized in that The sending the stored transaction message to the second device corresponding to the call request includes: The call request and the storage transaction message are sent to an operator, the operator determines the second device based on the identification information corresponding to the call request, and sends the storage transaction message to the second device.
3. The method according to claim 1, characterized in that: The encrypting the call data of the first device by using the second public key in the blockchain to obtain first encrypted data includes: Dividing the call data of the first device into at least one first audio block; The at least one first audio block is encrypted using the second public key to obtain first encrypted data.
4. The method according to claim 1, characterized in that After encrypting the call data of the first device by using the second public key in the blockchain to obtain the first encrypted data, the method further includes: Obtaining a first homomorphic hash value corresponding to the first encrypted data; The first homomorphic hash value is stored in the blockchain, so that the second device verifies the validity of the first encrypted data by comparing the first homomorphic hash value with a second homomorphic hash value, wherein the second homomorphic hash value is determined by the second device according to the received first encrypted data.
5. The method according to claim 1, characterized in that After sending the storage transaction message to the second device corresponding to the call request, the method further includes: Obtaining second encrypted data sent by the second device, and obtaining a third homomorphic hash value corresponding to the second encrypted data from the blockchain; Determining a fourth homomorphic hash value based on the second encrypted data; When the third homomorphic hash value is the same as the fourth homomorphic hash value, the second encrypted data is decrypted using the first private key to obtain communication data of the second device.
6. A method for encrypting call data, characterized in that: include: In response to the wake-up request received by the second device, obtaining from the blockchain a first encrypted private key and a first public key corresponding to the storage transaction information included in the wake-up request; Encrypting the second private key generated by the second device by using the target public key to obtain a second encrypted private key; Storing the second encrypted private key and the second public key corresponding to the second private key in the blockchain; The call data of the second device is encrypted using the first public key to obtain second encrypted data.
7. The method according to claim 6, characterized in that The storing the second encrypted private key and the second public key corresponding to the second private key in the blockchain includes: The identification information corresponding to the stored transaction message in the blockchain is verified, and if the identification information passes the verification, the second encrypted private key and the second public key corresponding to the second private key are stored in the blockchain.
8. The method according to claim 6, characterized in that The step of encrypting the call data of the second device by using the first public key to obtain second encrypted data includes: dividing the call data of the second device into at least one second audio block; The at least one second audio block is encrypted using the first public key to obtain second encrypted data.
9. The method according to claim 6, characterized in that After the call data of the second device is encrypted by the first public key to obtain second encrypted data, the method further includes: Obtaining a third homomorphic hash value corresponding to the second encrypted data; The third homomorphic hash value is stored in the blockchain, so that the first device verifies the validity of the second encrypted data by comparing the third homomorphic hash value with a fourth homomorphic hash value, wherein the fourth homomorphic hash value is determined by the first device according to the received second encrypted data.
10. The method according to claim 6, characterized in that After storing the second encrypted private key and the second public key corresponding to the second private key in the blockchain, the method further includes: Obtaining first encrypted data sent by the first device, and obtaining a first homomorphic hash value corresponding to the first encrypted data from the blockchain; Determine a second homomorphic hash value based on the first encrypted data; When the first homomorphic hash value is the same as the second homomorphic hash value, the first encrypted data is decrypted using the second private key to obtain communication data of the first device.
11. A call data encryption device, characterized in that: include: A first encryption module, configured to, in response to a call request initiated by a first device, encrypt a first private key generated by the first device using a pre-stored target public key to obtain a first encrypted private key; A message acquisition module, used to store the first encrypted private key and the first public key corresponding to the first private key in a blockchain, and obtain a storage transaction message returned by the blockchain; a message sending module, configured to send a storage transaction message to a second device corresponding to the call request, wherein the storage transaction message is used to instruct the second device to store a second encrypted private key and a second public key of the second device in the blockchain based on the storage transaction message, wherein the second encrypted private key is obtained by the second device encrypting the second private key by using the target public key, and the second public key corresponds to the second private key; The second encryption module is used to encrypt the call data using the second public key in the blockchain to obtain first encrypted data.
12. A call data encryption device, characterized in that: include: A key acquisition module, configured to, in response to a wake-up request received by the second device, acquire from the blockchain a first encrypted private key and a first public key corresponding to the storage transaction information included in the wake-up request; A third encryption module, used to encrypt the second private key generated by the second device by using the target public key to obtain a second encrypted private key; A key storage module, used to store the second encrypted private key and the second public key corresponding to the second private key in the blockchain; The fourth encryption module is used to encrypt the call data using the first public key to obtain second encrypted data.
13. An electronic device, characterized in that: The method comprises a processor and a memory, wherein the memory stores a program or instruction that can be run on the processor, and when the program or instruction is executed by the processor, the steps of the method according to any one of claims 1 to 10 are implemented.
14. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a program or instruction, and when the program or instruction is executed by a processor, the steps of the method according to any one of claims 1 to 10 are implemented.
15. A computer program product, characterized in that The computer program product comprises a computer program stored on a non-transitory computer-readable storage medium, wherein the computer program comprises program instructions, and when the program instructions are executed by a computer, the computer is caused to perform the steps of the method according to any one of claims 1 to 10.
Citation Information
Patent Citations
Wireless sensor network and computer network fused network secret key management method
CN102315935A
Data processing method and device, electronic equipment and storage medium
CN112822014A
Block chain data storage method and device
CN113342802A
Medical data encryption storage method and storage medium
CN114386053A
Key generation method and related method, computer equipment and storage medium
CN115549904A