CN114339256B - Real-time video encryption method and device based on OpenCL, electronic equipment and storage medium - Google Patents

Real-time video encryption method and device based on OpenCL, electronic equipment and storage medium Download PDF

Info

Publication number
CN114339256B
CN114339256B CN202210018330.8A CN202210018330A CN114339256B CN 114339256 B CN114339256 B CN 114339256B CN 202210018330 A CN202210018330 A CN 202210018330A CN 114339256 B CN114339256 B CN 114339256B
Authority
CN
China
Prior art keywords
frame image
video frame
opencl
image
host
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210018330.8A
Other languages
Chinese (zh)
Other versions
CN114339256A (en
Inventor
崔怡康
李军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
South China Normal University
Original Assignee
South China Normal University
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 South China Normal University filed Critical South China Normal University
Priority to CN202210018330.8A priority Critical patent/CN114339256B/en
Publication of CN114339256A publication Critical patent/CN114339256A/en
Application granted granted Critical
Publication of CN114339256B publication Critical patent/CN114339256B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The application relates to a real-time video encryption method and device based on OpenCL, electronic equipment and a storage medium. The application discloses a program of a real-time video encryption method based on OpenCL, which comprises a host end and a device end, wherein the method comprises the following steps: reading a current frame image of a video to be encrypted at the host end; preprocessing the current frame image at the host end, and sending the preprocessed current video frame to the equipment end; at the equipment end, encrypting and decrypting the current frame image; and at the host end, reading the encrypted and decrypted image from the equipment end and displaying the image. The real-time video encryption method based on the OpenCL comprises a host end and a connected device end, wherein the devices supported by the OpenCL are divided into a plurality of working groups, and the plurality of working groups can process the whole image in parallel and can meet the requirements of resolution and real-time performance.

Description

Real-time video encryption method and device based on OpenCL, electronic equipment and storage medium
Technical Field
The present application relates to the field of video security, and in particular, to an OpenCL-based real-time video encryption method, apparatus, electronic device, and storage medium.
Background
With the rapid development of networks, sharing of data such as images and videos is more convenient, but some potential safety hazards are brought. Because a large amount of image information may be contained in a video, and personal privacy may be involved, it is very important to protect such information. The chaotic encryption method is applied to protecting image or video information. Li Jun et al propose a DM6446 based video encryption camera system comprising image acquisition, compression and encryption; you et al mention that some algorithms are implemented on the CPU, which is difficult to meet the real-time communication requirements, and how to increase the speed of the process of encrypting images is also an important issue. GR inpudi et al use OpenCL to implement the AES algorithm, and compared with sequential encryption algorithms, it is known that the encryption algorithm is implemented in parallel on the GPU faster. In addition to improvements in the algorithm itself, the idea of parallel programming is also used to increase the operational efficiency of the algorithm. The Lin team proposes a parallel image encryption algorithm named HCMO and uses OpenCL to accelerate the algorithm. Juan P.D' Amato et al proposes a secure management transmission channel that efficiently and dynamically encrypts or encodes images and video. OpenCL is used to write parallel code on demand. There are also different applications of OpenCL in other fields, and some studies use OpenCL to achieve different algorithm acceleration, for example, xiao et al use OpenCL to accelerate a parallel algorithm of image weighted average filtering, team of t.sanida uses OpenCL to achieve Sobel algorithm, etc.
Currently, there are few system schemes for real-time video encryption using OpenCL, and it is sometimes difficult for an image or video encryption scheme to meet both resolution and real-time requirements.
Disclosure of Invention
Based on this, the present application aims to provide a real-time video encryption method, apparatus, electronic device and storage medium based on OpenCL, which is composed of a host end and a connected device end, where the devices supported by OpenCL are divided into a plurality of working groups, and the plurality of working groups can process the whole image in parallel, so as to meet the requirements of resolution and real-time.
In a first aspect, the present application provides an OpenCL-based real-time video encryption method, where a program of the method includes a host side and an equipment side, and the method includes the following steps:
reading a current frame image of a video to be encrypted at the host end;
preprocessing the current frame image at the host end, and sending the preprocessed current video frame to the equipment end;
at the equipment end, encrypting and decrypting the current frame image;
and at the host end, reading the encrypted and decrypted image from the equipment end and displaying the image.
Further, the preprocessed current video frame is sent to the device side, including:
calling a device end according to the grouping condition of the OpenCL initialization statement;
the preprocessed current video frame is distributed into a plurality of working groups, and each working group is used for carrying out pixel scrambling and pixel exclusive-or operation on the image of the current video frame.
Further, after sending the preprocessed current video frame to the device side, the method further includes:
after a preset delay, the next video frame image of the video to be encrypted is read at the host end.
Further, preprocessing the current frame image, including:
compressing the previous frame image according to a preset compression format;
and carrying out gray level conversion on the current frame image.
Further, when the execution platform of the encryption method is an embedded platform, the method includes:
reading a current frame image of a video to be encrypted at the host end;
at the host end, preprocessing and pixel scrambling are carried out on the current frame image to obtain a frame image after the pixel scrambling;
transmitting the frame image subjected to pixel scrambling to the equipment end;
at the equipment end, carrying out exclusive-or processing on the current video frame, and transmitting the video frame image subjected to exclusive-or processing back to the host end;
recovering the video frame data at the host end to obtain a decrypted image;
and the host reads the encrypted and decrypted image and displays the image.
Further, the method further comprises:
the host side reads the encrypted and decrypted image and displays the image, and then the host side enables a preset variable flag=1 in the program;
and at the host side, after reading the current frame image of the video to be encrypted and preprocessing, enabling the variable flag to=0.
Further, the method further comprises:
when the variable flag=0, the host side starts to set parameters of the incoming device side, and performs pixel scrambling operation on the current frame image.
In a second aspect, the present application further provides a real-time video encryption device based on OpenCL, including:
the image reading module is used for reading the current frame image of the video to be encrypted at the host end;
the preprocessing module is used for preprocessing the current frame image at the host end and sending the preprocessed current video frame to the equipment end;
the encryption and decryption module is used for encrypting and decrypting the current frame image at the equipment end;
and the display module is used for reading the encrypted and decrypted image from the equipment end at the host end and displaying the image.
In a third aspect, the present application also provides an electronic device, including:
at least one memory and at least one processor;
the memory is used for storing one or more programs;
the one or more programs, when executed by the at least one processor, cause the at least one processor to implement the steps of an OpenCL-based real-time video encryption method according to any one of the first aspects of the present application.
In a fourth aspect, the present application also provides a computer-readable storage medium, characterized in that:
the computer readable storage medium stores a computer program which, when executed by a processor, implements the steps of an OpenCL-based real-time video encryption method according to any one of the first aspects of the present application.
The real-time video encryption method, the device, the electronic equipment and the storage medium based on the OpenCL can realize video encryption application on a computer and an embedded system under the condition of less change of a program. Aiming at the problem that the real-time encryption effect is not ideal under the condition of using only a CPU, the OpenCL and the OpenMP are used for improvement, so that the requirements of higher resolution and instantaneity can be met on a computer platform, and the real-time video encryption application under low resolution can be realized on an embedded platform.
For a better understanding and implementation, the present application is described in detail below with reference to the drawings.
Drawings
Fig. 1 is a schematic block diagram of a hardware system used in an OpenCL-based real-time video encryption method according to the present application;
fig. 2 is a flow chart of a real-time video encryption method based on OpenCL provided by the application;
fig. 3 is a schematic structural diagram of a real-time video encryption device based on OpenCL according to the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the following detailed description of the embodiments of the present application will be given with reference to the accompanying drawings.
It should be understood that the described embodiments are merely some, but not all embodiments of the present application. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the application, are intended to be within the scope of the embodiments of the present application.
The terminology used in the embodiments of the application is for the purpose of describing particular embodiments only and is not intended to be limiting of embodiments of the application. As used in this application and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and/or" as used herein refers to and encompasses any or all possible combinations of one or more of the associated listed items.
When the following description refers to the accompanying drawings, the same numbers in different drawings refer to the same or similar elements, unless otherwise indicated. The implementations described in the following exemplary examples do not represent all implementations consistent with the application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the application as detailed in the accompanying claims. In the description of the present application, it should be understood that the terms "first," "second," "third," and the like are used merely to distinguish between similar objects and are not necessarily used to describe a particular order or sequence, nor should they be construed to indicate or imply relative importance. The specific meaning of the above terms in the present application can be understood by those of ordinary skill in the art according to the specific circumstances.
Furthermore, in the description of the present application, unless otherwise indicated, "a plurality" means two or more. "and/or", describes an association relationship of an association object, and indicates that there may be three relationships, for example, a and/or B, and may indicate: a exists alone, A and B exist together, and B exists alone. The character "/" generally indicates that the context-dependent object is an "or" relationship.
In the whole conception, the embodiment of the application provides a real-time video encryption method based on OpenCL, which mainly divides the execution process of an encryption and decryption algorithm into a host end (used for program initialization, reading and calculating chaotic sequences, displaying and the like) and a device end (mainly responsible for encryption and decryption operations). In some specific embodiments, the host side may be a computer CPU or ARM, and the device side may be a graphics card or DSP.
OpenCL is a standard of operation for heterogeneous parallel computing platform programming, and the heterogeneous computing can be mapped to computing devices such as CPU, GPU, DSP and FPGAs. OpenCL provides an abstract model of the underlying hardware structure, which aims to provide a generic developed API. A developer can write a general purpose computing program running on the GPU without having to map its algorithms onto the API of the 3D graphics of OpenGL or DirectX.
The OpenCL programs include a host-side program and a device-side kernel (kernel) program. The host-side program runs on the host processor, and the host-side program submits the kernel program from the host to the OpenCL device in a command manner, and the OpenCL device performs computation on the processing unit. The kernel executes on the OpenCL device to finish the specific work of the OpenCL application, the kernel is usually a function with large calculation amount and simpler logic, and the OpenCL device outputs the input data to the host after the input data are scattered through the kernel.
In view of the problems in the background art, an embodiment of the present application provides a real-time video encryption method based on OpenCL, as shown in fig. 1, fig. 1 is a schematic block diagram of a hardware system required for running the method, an execution device of the encryption method includes a host end and a device end connected to the host end, as shown in fig. 2, the method includes the following steps:
s01: and at the host end, reading the current frame image of the video to be encrypted.
Preferably, openMP is used to divide the entire algorithm flow into two threads: a read thread and a process thread. The device side is responsible for processing threads, namely encrypting and decrypting the data of the current frame according to the packet condition initialized by OpenCL.
In the video frame data, the frame is a single image picture of the minimum unit in the image animation, one frame is a still picture, and each video frame data refers to the image corresponding to the current frame.
S02: and at the host end, preprocessing the current frame image, and sending the preprocessed current video frame to the equipment end.
Specifically, preprocessing the current frame data includes:
s021: and compressing the previous frame image according to a preset compression format.
S022: and carrying out gray level conversion on the previous frame image.
Transmitting the preprocessed current video frame to the device side, including:
s023: calling a device end according to the grouping condition of the OpenCL initialization statement;
s024: the preprocessed current video frame is distributed into a plurality of working groups, and each working group is used for carrying out pixel scrambling and pixel exclusive-or operation on the image of the current video frame.
Scrambling refers to the process of scrambling the information sequence of an image to convert the image into a disordered and indistinct image. The scrambling is actually the encryption of the image, and is different from the encryption to ensure the security, the scrambling image is used as secret information to be hidden, so that the robustness of the hidden carrier can be greatly improved. Image scrambling is a very common technique in information hiding.
Exclusive OR (xor) is a mathematical operator. It applies to logical operations. The mathematical sign of exclusive OR isThe computer symbol is "xor". The algorithm is as follows:
if the two values of a and b are not the same, the exclusive OR result is 1. If the values of a and b are the same, the exclusive OR result is 0.
The exclusive or, also called half-add, is an algorithm that corresponds to binary addition without carry: the binary system is represented by a true with a 1, and a false with a 0, the exclusive-or algorithm is:(both 0 and 1) these rules are identical to additions, except that no carry is present, so exclusive OR is often considered as no carry addition.
Video exclusive-or encryption has two ideas: firstly, encrypting the whole generated video file, such as encrypting a test.avi file; secondly, the video stream and the audio stream are encrypted in the process of generating the video file, and the generated avi file is directly the encrypted file.
S03: and at the equipment end, encrypting and decrypting the current frame image.
As described above, the plurality of working groups perform pixel scrambling and pixel exclusive-or operations on the image, implementing encryption and decryption of video frames.
Preferably, after the preprocessed current video frame is sent to the device side, the method further includes:
s031: after a preset time delay, reading a video frame image of the video to be encrypted at the host end.
In a specific embodiment, in order to avoid variable collision between threads, a certain delay is set after the current frame data enters the processing thread, and the reading thread reads the next frame to perform gray level conversion. Since barrer () is called in the device side program and clFinish () is used in the main program, this can cause all work groups to read and display the encryption map and decryption map after completing their work.
S04: and at the host end, reading the encrypted and decrypted image from the equipment end and displaying the image.
In a preferred embodiment, the algorithm flow is described on a computer as follows: the method comprises the steps of reading current frame data from a USB camera, sending compressed and gray-scale converted images to a processing thread, calling a device end according to the grouping condition of OpenCL initialization sentences (namely, dividing the images into a plurality of working groups), and carrying out encryption and decryption processing on the current frame, namely, distributing each frame into the plurality of working groups, wherein the working groups carry out pixel scrambling and pixel exclusive-or operation on the images. In order to avoid variable conflict between threads, a certain delay is required to be set after the current frame data enters the processing thread, and the reading thread reads the next frame to perform gray level conversion. Since barrer () is called in the device side program and clFinish () is used in the main program, this can cause all work groups to read and display the encryption map and decryption map after completing their work.
In other embodiments, the real-time video encryption method based on OpenCL provided by the application can also be applied to an embedded platform. On two different platforms, some of the necessary steps are essentially the same, including creating context, setting parameters, setting workgroups, etc. In order to realize encryption and decryption of a real-time scene and ensure the real-time performance of a system, the read frame data needs to be subjected to image compression and gray level conversion, and the operations are realized by OpenCV. In addition, openCV is used for operations such as reading camera data, setting resolution, displaying, and the like. To facilitate experimental testing and speed up initialization, a scrambling sequence is generated using Matlab and read by the system, while an exclusive or sequence is generated by the program.
In a specific embodiment, when the execution platform of the encryption method is an embedded platform, the method includes:
s11: and at the host end, reading the current frame image of the video to be encrypted.
S12: and at the host end, preprocessing and pixel scrambling are carried out on the current frame image to obtain a frame image after the pixel scrambling.
S13: and sending the frame image subjected to pixel scrambling to the equipment end.
S14: and at the equipment end, carrying out exclusive-or processing on the current video frame, and transmitting the video frame image subjected to exclusive-or processing back to the host end.
S15: and recovering the video frame data at the host end to obtain a decrypted image.
S16: and the host reads the encrypted and decrypted image and displays the image.
In order to coordinate the main thread and the read thread, preferably, a variable flag is set in the program, and the method further includes:
s17: the host side reads the encrypted and decrypted image and displays the image, and then the host side enables a preset variable flag=1 in the program;
s18: and at the host side, after reading the current frame image of the video to be encrypted and preprocessing, enabling the variable flag to=0.
In a preferred embodiment, the method further comprises:
s19: when the variable flag=0, the host side starts to set parameters of the incoming device side, and performs pixel scrambling operation on the current frame image.
In a preferred embodiment, on an embedded platform, the steps of OpenCL initialization, reading video frames from the camera, image compression, etc. are also required. But if the same algorithm flow as the computer platform is performed in an AM5728 based embedded system, satisfactory results are not obtained. Therefore, there is a need to alter the algorithm flow on embedded systems:
1) In the kernel function, when each working group runs, according to the setting of the working group, pixel information, an exclusive-or sequence and a scrambling sequence in the global memory need to be copied to the local memory, so that all the working groups can use data in the local memory for calculation.
2) Because each working group can only read partial data stored in the local memory with fixed size, scrambling of the whole image cannot be performed in groups. Therefore, the host side (ARM) needs to process the pixel scrambling of the entire image. For example: at this point, to manipulate the pixel data stored in a certain working group, the pixel value img (0, 1) of the current frame needs to be exchanged with the img (3, 6) pixel value, but in this working group, the img (3, 6) value is not included, so that the scrambling operation fails. To solve this problem, the pixel scrambling process of the whole frame needs to be performed at the host end, then the scrambled frame is transmitted to the device end, the device end performs exclusive-or processing, and then the frame is transmitted back to the host end, and is recovered by the host end, so as to obtain the decrypted image.
3) The task of displaying the image is taken care of by the main thread. With some necessary modifications, the specific algorithm flow is described as follows: the current frame data is read from the USB camera, after gray conversion and pixel scrambling are carried out on the host end, a frame after the pixel scrambling is obtained, and exclusive-or processing is carried out by the main thread calling equipment (only exclusive-or calculation is carried out, and the pixel scrambling is finished in the last step). After the current frame data enters the processing thread, a certain delay is passed, and the reading thread reads the frame to be encrypted for preprocessing so as to coordinate the main thread and the reading thread. In the device side, the image frames after the exclusive-or processing are recovered in the main thread. Because the variable flag is set in the program, the main thread needs to judge whether the flag is 0, after the flag=0 is met, the main thread performs scrambling operation, after the work of the main thread is completed, the flag=1 is enabled, and only after the read thread is processed, the flag=0 is enabled, so that the main thread and the read thread can be coordinated.
The embodiment of the application also provides a real-time video encryption device based on OpenCL, as shown in FIG. 3, the dual-platform real-time video encryption device 400 based on OpenCL comprises:
a data reading module 401, configured to read, at the host side, a current frame image of a video to be encrypted;
a preprocessing module 402, configured to preprocess the current frame image at the host side, and send the preprocessed current video frame to the device side;
an encryption and decryption module 403, configured to encrypt and decrypt the current frame image at the device side;
and the display module 404 is used for reading the encrypted and decrypted image from the equipment end at the host end and displaying the image.
Preferably, the preprocessing module includes:
the device end calling unit is used for calling the device end according to the grouping condition of the OpenCL initialization statement;
and the distribution unit is used for distributing the preprocessed current video frame into a plurality of working groups, and each working group is used for carrying out pixel scrambling and pixel exclusive-or operation on the image of the current video frame.
Preferably, the preprocessing module further comprises:
and the delay unit is used for reading the next video frame image of the video to be encrypted at the host end after the delay of the preset threshold value.
Preferably, the preprocessing module further comprises:
the compression unit is used for compressing the previous frame image according to a preset compression format;
and the gray level conversion unit is used for carrying out gray level conversion on the previous frame image.
Preferably, when the execution platform of the encryption method is an embedded platform, the device includes:
the data reading module is used for reading the current frame image of the video to be encrypted at the host end;
the scrambling module is used for preprocessing the current frame image and scrambling pixels at the host end to obtain a frame image subjected to pixel scrambling;
the data sending module is used for sending the frame image subjected to pixel scrambling to the equipment end;
the exclusive-or module is used for carrying out exclusive-or processing on the current video frame at the equipment end and transmitting the video frame image subjected to exclusive-or processing back to the host end;
the recovery module is used for recovering the video frame data at the host end to obtain a decrypted image;
and the display module is used for reading the encrypted and decrypted image by the host end and displaying the image.
Preferably, the apparatus further comprises:
the first variable instruction module is used for enabling the host side to read a current frame image of the video to be encrypted and enabling a preset variable flag=1 in a program;
and the second variable instruction module is used for recovering the video frame image at the host end to obtain a decrypted image, and then enabling the variable flag to be=0.
Preferably, the apparatus further comprises:
and the third variable instruction module is used for reading the next video frame image of the video to be encrypted by the host side when the variable flag=0.
The embodiment of the application also provides electronic equipment, which comprises:
at least one memory and at least one processor;
the memory is used for storing one or more programs;
the one or more programs, when executed by the at least one processor, cause the at least one processor to implement the steps of an OpenCL-based real-time video encryption method as described above.
Embodiments of the present application also provide a computer-readable storage medium,
the computer readable storage medium stores a computer program which, when executed by a processor, implements the steps of an OpenCL-based real-time video encryption method as described above.
The real-time video encryption method, the device, the electronic equipment and the storage medium based on the OpenCL can realize video encryption application on a computer and an embedded system under the condition of less change of a program. Aiming at the problem that the real-time encryption effect is not ideal enough under the condition of using only a CPU, the OpenCL and the OpenMP are used for improvement, so that the requirements of higher resolution and instantaneity can be met on a computer platform, and the real-time video encryption application under low resolution can be realized on an embedded platform.
The above examples illustrate only a few embodiments of the application, which are described in detail and are not to be construed as limiting the scope of the application. It should be noted that it will be apparent to those skilled in the art that several variations and modifications can be made without departing from the spirit of the application, which are all within the scope of the application.

Claims (9)

1. The real-time video encryption method based on OpenCL, a program of the method runs on a host end and a device end, is characterized in that an execution platform of the real-time video encryption method is an embedded platform, and comprises the following steps:
reading a current video frame image of a video to be encrypted at the host end;
at the host end, preprocessing and pixel scrambling are carried out on the current video frame image to obtain a video frame image subjected to pixel scrambling; transmitting the video frame image subjected to pixel scrambling to the equipment end;
at the equipment end, carrying out exclusive-or processing on the current video frame image, and transmitting the video frame image subjected to exclusive-or processing back to the host end;
recovering the video frame image data at the host end to obtain a decrypted image;
and the host reads the encrypted and decrypted image and displays the image.
2. The OpenCL-based real-time video encryption method according to claim 1, wherein sending the current video frame image with the scrambled pixels to the device side includes:
calling a device end according to the grouping condition of the OpenCL initialization statement;
and distributing the current video frame image subjected to pixel scrambling to a plurality of working groups, wherein each working group is used for carrying out exclusive or processing on the current video frame image.
3. The OpenCL-based real-time video encryption method according to claim 2, wherein after sending the current video frame image with pixel scrambling to the device side, the method further comprises:
after a preset delay, the next video frame image of the video to be encrypted is read at the host end.
4. The OpenCL-based real-time video encryption method of claim 1, wherein preprocessing the current video frame image comprises:
compressing the current video frame image according to a preset compression format;
and performing gray level conversion on the compressed current video frame image.
5. The OpenCL-based real-time video encryption method of claim 1, further comprising:
the host side reads the encrypted and decrypted image and displays the image, and then the host side enables a preset variable flag=1 in the program;
and at the host side, after reading the current video frame image of the video to be encrypted and preprocessing, enabling the variable flag to=0.
6. The OpenCL-based real-time video encryption method of claim 5, further comprising:
when the variable flag=0, the host side starts to set parameters of the incoming equipment side, and performs pixel scrambling operation on the current video frame image.
7. The real-time video encryption device based on OpenCL is characterized by comprising a host end and a device end which take an embedded platform as an execution platform, wherein,
the host end comprises an image reading module which is used for reading the current video frame image of the video to be encrypted;
the host end comprises a preprocessing module, which is used for preprocessing the current video frame image and scrambling pixels, and sending the current video frame image subjected to pixel scrambling to the equipment end;
the equipment end comprises an encryption and decryption module and is used for performing exclusive or processing on the current video frame image; transmitting the video frame image subjected to the exclusive OR treatment back to the host end;
the host end also comprises a recovery module which is used for recovering the video frame image data to obtain a decrypted image;
the host end also comprises a display module used for reading the encrypted and decrypted image and displaying the image.
8. An electronic device, comprising:
at least one memory and at least one processor;
the memory is used for storing one or more programs;
the one or more programs, when executed by the at least one processor, cause the at least one processor to implement the steps of an OpenCL-based real-time video encryption method of any one of claims 1-6.
9. A computer-readable storage medium, characterized by:
the computer readable storage medium stores a computer program which, when executed by a processor, implements the steps of an OpenCL-based real-time video encryption method according to any one of claims 1 to 6.
CN202210018330.8A 2022-01-07 2022-01-07 Real-time video encryption method and device based on OpenCL, electronic equipment and storage medium Active CN114339256B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210018330.8A CN114339256B (en) 2022-01-07 2022-01-07 Real-time video encryption method and device based on OpenCL, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210018330.8A CN114339256B (en) 2022-01-07 2022-01-07 Real-time video encryption method and device based on OpenCL, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN114339256A CN114339256A (en) 2022-04-12
CN114339256B true CN114339256B (en) 2023-11-07

Family

ID=81025093

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210018330.8A Active CN114339256B (en) 2022-01-07 2022-01-07 Real-time video encryption method and device based on OpenCL, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114339256B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103973431A (en) * 2014-04-16 2014-08-06 华南师范大学 AES parallel implementation method based on OpenCL
CN107566113A (en) * 2017-09-29 2018-01-09 郑州云海信息技术有限公司 The symmetrical encipher-decipher methods of 3DES, system and computer-readable recording medium
CN111093098A (en) * 2019-12-30 2020-05-01 北京电子科技学院 Logistic mapping-based chaotic encryption method
CN112328401A (en) * 2020-11-19 2021-02-05 江南大学 3DES acceleration method based on OpenCL and FPGA
CN113132418A (en) * 2021-06-17 2021-07-16 北京电信易通信息技术股份有限公司 Variable-grade encryption method, system and device
WO2021227349A1 (en) * 2020-05-11 2021-11-18 华南理工大学 Front-end facial image encryption and recognition method for biometric privacy protection

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190042304A1 (en) * 2017-12-03 2019-02-07 Intel Corporation [ice] architecture and mechanisms to accelerate tuple-space search with intergrated gpu
US11315035B2 (en) * 2018-12-10 2022-04-26 International Business Machines Corporation Machine learning in heterogeneous processing systems

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103973431A (en) * 2014-04-16 2014-08-06 华南师范大学 AES parallel implementation method based on OpenCL
CN107566113A (en) * 2017-09-29 2018-01-09 郑州云海信息技术有限公司 The symmetrical encipher-decipher methods of 3DES, system and computer-readable recording medium
CN111093098A (en) * 2019-12-30 2020-05-01 北京电子科技学院 Logistic mapping-based chaotic encryption method
WO2021227349A1 (en) * 2020-05-11 2021-11-18 华南理工大学 Front-end facial image encryption and recognition method for biometric privacy protection
CN112328401A (en) * 2020-11-19 2021-02-05 江南大学 3DES acceleration method based on OpenCL and FPGA
CN113132418A (en) * 2021-06-17 2021-07-16 北京电信易通信息技术股份有限公司 Variable-grade encryption method, system and device

Also Published As

Publication number Publication date
CN114339256A (en) 2022-04-12

Similar Documents

Publication Publication Date Title
US10607421B2 (en) Secure rendering system that generates ray tracing samples with obfuscated position data
US9177353B2 (en) Secure rendering of display surfaces
US11023596B2 (en) Non-rasterized image streaming system that uses ray tracing samples
JP6697307B2 (en) ENCRYPTION DEVICE, PROGRAM, AND ENCRYPTION METHOD
US10963574B2 (en) Video security and ray tracing samples compression system
CN106470345A (en) Video-encryption transmission method and decryption method, apparatus and system
CN105096373A (en) Media content rendering method, user device and rendering system
US9306744B2 (en) Video cryptography system and method
JP2014085672A (en) Method and device for optimizing rendering of encrypted 3d graphical object
US20100053180A1 (en) Method and system for cryptographically securing a graphics system
CN110798433B (en) Verification code verification method and device
CN114124364B (en) Key security processing method, device, equipment and computer readable storage medium
CN111327947A (en) Screen capture management method and device and mobile terminal
CN114339256B (en) Real-time video encryption method and device based on OpenCL, electronic equipment and storage medium
Riaz et al. Enhanced image encryption techniques using modified advanced encryption standard
CN113012021A (en) Image encryption and decryption method, computer and readable storage medium
US9449179B2 (en) Information processor
CN112288757A (en) Encrypted domain image segmentation optimization method based on data packaging technology
CN114339282A (en) Method and device for transmitting anchor image picture in live broadcast interaction
CN116847036B (en) Image display method, apparatus, electronic device, and computer-readable medium
Pawar Extended capabilities of feature-extraction for digital image sharing by diverse image media
CN117974855A (en) Three-dimensional visual lightweight engine system based on GIS and BIM
CN115396222A (en) Device instruction execution method, system, electronic device and readable storage medium
CN114598448A (en) Ciphertext data sharing method, device, equipment and medium
CN117499030A (en) Ciphertext domain multi-party mobile information hiding method and system based on hybrid encryption

Legal Events

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