A method for generating quasi-cyclic hyperelliptic codes

The method generates quasi-cyclic codes using super-elliptic curves to overcome length limitations, enhancing error correction and reducing storage needs in communication systems.

CN114499546BActive Publication Date: 2025-07-15SUN YAT SEN UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111592873.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-23
Publication Date
2025-07-15
Estimated Expiration
2041-12-23

AI Technical Summary

Technical Problem

In the prior art, the elliptical code can only generate quasi-cyclic codes with a packet length not exceeding 6 or a cyclic code with a length of 6, and cannot meet the needs of the real communication field.

Method used

By selecting a hyperelliptic curve, generating a divider and calculating a compact generation matrix, a quasi-cyclic code or loop code of any length is generated, and a hyperelliptic curve and divider calculation is used to generate a matrix.

Benefits of technology

It realizes the generation of quasi-cyclic codes or loop codes of any length, provides algebraic geometric expressions and compact generation matrix, improves the error correction ability of channel encoding and reduces storage space.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114499546B_ABST
    Figure CN114499546B_ABST
Patent Text Reader

Abstract

The present invention relates to the field of electronic communication technologies, and more specifically, to a method for generating quasi-cyclic hyperelliptic codes. The method includes: S1. Selecting a hyperelliptic curve according to given coding parameters; S2. Generating a divisor on the corresponding curve according to the given coding parameters; S3. Calculating a compact generator matrix by using the hyperelliptic curve and the divisor. The present invention can generate quasi-cyclic codes or cyclic codes of any length by using hyperelliptic curves, and obtain the algebraic geometric expression form of the generated quasi-cyclic codes and the expression form of the compact generator matrix. The present invention establishes a connection between hyperelliptic curves and quasi-cyclic codes, and solves part of the problems of representing quasi-cyclic codes and cyclic codes in algebraic geometric forms. The hyperelliptic quasi-cyclic codes generated by the present invention have a clear algebraic geometric structure, and this structure can be used for decoding methods unique to algebraic geometric codes such as list decoding, thereby improving the error correction ability of channel coding and reducing the storage space of the coding matrix.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of electronic communication technologies, and more specifically, to a method for generating quasi-cyclic hyperelliptic codes. Background Art

[0002] Hyperelliptic codes are algebraic geometry codes defined on hyperelliptic curves. Algebraic geometry codes were first proposed by Goppa in 1977. He introduced the theory and techniques of algebraic geometry into coding theory, and connected the concepts of algebraic geometry and coding. He gave the representations of the basic coding properties such as code length, distance, dimension, etc. using the theory of algebraic geometry, as well as some new geometric and arithmetic properties of coding. Algebraic geometry codes have efficient decoding algorithms, especially list decoding algorithms, and thus can correct the number of errors exceeding the unique decoding bound. At the same time, algebraic geometry codes have also been proven to be able to construct ways exceeding the GV bound, so they play an important role in coding theory.

[0003] Quasi-cyclic codes are a special class of linear codes including cyclic codes, and are a coding method that can reach the GV bound. The generating matrix of a cyclic code is a circulant matrix, that is, each row of the matrix can be obtained by cyclic shifting a row in the matrix, while the generating matrix of a quasi-cyclic code can be represented as a block matrix composed of circulant matrices. Since the generating matrix of a quasi-cyclic code has such a compact expression form, only a small storage space is required on the coding device. If a certain quasi-cyclic code also has a fast algebraic decoding algorithm, then it can play a very important role in fields such as communication and cryptography.

[0004] In the prior art, since there is only an automorphism mapping of at most order 6 on an elliptic curve, only quasi-cyclic codes with a block length not exceeding 6 or cyclic codes of length 6 can be given. This far from meets the requirements in the real communication field. Summary of the Invention

[0005] In order to overcome the above defects in the prior art, the present invention provides a method for generating quasi-cyclic hyperelliptic codes, which can generate quasi-cyclic codes or cyclic codes of any length by using hyperelliptic curves.

[0006] To solve the above technical problems, the technical solution adopted by the present invention is: a method for generating quasi-cyclic hyperelliptic codes, including the following steps:

[0007] S1. Select a hyperelliptic curve according to the given coding parameters;

[0008] S2. Generate a divisor on the corresponding curve according to the given coding parameters;

[0009] S3. Calculate a compact generating matrix by using the hyperelliptic curve and the divisor.

[0010] In one embodiment, step S1 specifically includes:

[0011] S11. Input the desired coding parameters, namely the code length n, the dimension k, and the block length n0;

[0012] S12. Determine whether the input cyclic index and the code length satisfy a specific relationship, that is, whether n0 divides n;

[0013] S13. If it does not divide, then require re-input of the above parameters; if it divides, then select a corresponding hyperelliptic curve of genus g where the degree of h(x) does not exceed g, the degree of f(x) is 2 + 1, such that there is an automorphism mapping σ of order n0 on the curve; x and y are the coordinates of points in the plane.

[0014] In one embodiment, step S2 specifically includes:

[0015] S21. Denote the infinite point on the curve as O, and the divisor F = (k + g - 1)O;

[0016] S22. Denote n = l·n0, and take l points P1, P2,..., P l respectively located on different orbits of the mapping σ;

[0017] S23. The divisor

[0018] In one embodiment, step S3 specifically includes:

[0019] S31. Generate the rational function space corresponding to the divisor F, and the dimension of this space is k; denote a set of bases of this space as {f1, f2,..., f k};

[0020] S32. Assign the points included in the divisor D to the function f i in turn, and obtain the generating matrix of the code :

[0021]

[0022] S33. Denote Take k0 random codewords c from the code i , i ∈ {1,..., k0}, and perform k quasi-cyclic shift operations on c i , i ∈ {1,..., k0 - 1}, and perform k mod n0 operations on ;

[0023] S34. If the obtained k n-dimensional vectors are linearly independent, then they form the code A basis of, c i , i ∈ {1, …, k0} is the compact representation form of the generator matrix;

[0024] S35. If there are linearly dependent vectors, return to step S33;

[0025] S36. If there are no linearly dependent vectors, output (D, F) and c i , i ∈ {1, …, k0}.

[0026] The present invention also provides a system for generating quasi-cyclic hyperelliptic codes, including:

[0027] Hyperelliptic curve selection module, configured to select a hyperelliptic curve according to given coding parameters;

[0028] Divisor generation module: configured to generate a divisor on the corresponding curve according to the coding parameters given by the hyperelliptic curve selection module;

[0029] Matrix generation module: configured to calculate a compact generator matrix by using the curve selected by the hyperelliptic curve selection module and the divisor generated by the divisor generation module.

[0030] In one embodiment, the hyperelliptic curve selection module includes:

[0031] Parameter input unit: configured to input desired coding parameters, namely code length n, dimension k, and block length n0;

[0032] Divisibility judgment unit: configured to judge whether the cyclic index input by the parameter input unit and the code length satisfy a specific relationship, that is, whether n0 divides n; if not, it is required to re-enter the above parameters; if so, select a corresponding hyperelliptic curve of genus g where the degree of h(x) does not exceed g, and the degree of f(x) is 2g + 1, such that there is an automorphism mapping σ of order n0 on the curve.

[0033] In one embodiment, the divisor generation module includes:

[0034] Curve and divisor F unit: configured to denote the infinite point on the curve as O, and the divisor F = (k + g - 1)O;

[0035] Mapping unit: configured to denote n = l · n0, and take l points P1, P2, …, P l respectively located on different orbits of the mapping σ;

[0036] Divisor D unit: configured to obtain the divisor

[0037] In one embodiment, the matrix generation module includes:

[0038] Rational function space generation unit: used to generate the rational function space corresponding to the divisor F, and the dimension of this space is k; denote a set of bases of this space as {f1, f2, …, f k};

[0039] Code matrix generation unit: assign the points included in the divisor D to the function f i in turn to obtain the generating matrix of the code :

[0040]

[0041] Quasi-cyclic shift operation unit: used to record Take k0 random codewords c from the code i , i ∈ {1, …, k0}, perform k quasi-cyclic shift operations on c i , i ∈ {1, …, k0 - 1}, and perform k mod n0 operations on ;

[0042] Compact expression generation unit of the matrix: used to form a set of bases of the code when the obtained k n-dimensional vectors are linearly independent, and c i , i ∈ {1, …, k0} is the compact expression form of the generating matrix;

[0043] Judgment unit: used to judge whether there are linearly dependent vectors; if there are linearly dependent vectors, return to the quasi-cyclic shift operation unit and the compact expression generation unit of the matrix; if there are no linearly dependent vectors, output (D, F) and c i , i ∈ {1, …, k0}.

[0044] The present invention also provides an electronic device, including: a memory, a processor, and a computer program stored on the memory and executable on the processor. The processor executes the computer program to implement the method for generating a quasi-cyclic hyperelliptic code as described above.

[0045] The present invention also provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the method for generating a quasi-cyclic hyperelliptic code as described above is implemented.

[0046] Compared with the prior art, the beneficial effects are as follows: A method for generating quasi-cyclic hyperelliptic codes provided by the present invention can generate quasi-cyclic codes or cyclic codes of any length by using hyperelliptic curves, and obtain the algebraic geometric expression form of the generated quasi-cyclic codes and the expression form of a compact generator matrix. The present invention establishes a connection between hyperelliptic curves and quasi-cyclic codes, and solves part of the problem of representing quasi-cyclic codes and cyclic codes in algebraic geometric form. The hyperelliptic quasi-cyclic codes generated by the present invention have a clear algebraic geometric structure, which can be used for decoding methods unique to algebraic geometric codes such as list decoding, thereby improving the error correction ability of channel coding and reducing the storage space of the coding matrix. BRIEF DESCRIPTION OF THE DRAWINGS

[0047] Figure 1 is a schematic flow chart of the method of the present invention.

[0048] Figure 2 is a schematic overall flow chart of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0049] Next, the technical solutions in the embodiments of the present invention will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. The present invention will be described in one of the embodiments in conjunction with the specific embodiments. Among them, the accompanying drawings are only for illustrative purposes, showing only schematic diagrams, rather than physical diagrams, and should not be construed as a limitation to this patent; in order to better illustrate the embodiments of the present invention, some components in the accompanying drawings will be omitted, enlarged or reduced, and do not represent the size of the actual product; for those skilled in the art, it is understandable that some well-known structures and their descriptions in the accompanying drawings may be omitted.

[0050] Embodiment 1:

[0051] As Figure 1 and Figure 2 shown, a method for generating quasi-cyclic hyperelliptic codes includes the following steps:

[0052] Step 1. Select a hyperelliptic curve according to the given coding parameters;

[0053] S11. Input the desired coding parameters, namely the code length n, the dimension k, and the block length n0;

[0054] S12. Determine whether the input cyclic index and the code length satisfy a specific relationship, that is, whether n0 divides n;

[0055] S13. If it does not divide, require re-input of the above parameters; if it divides, select a corresponding hyperelliptic curve with genus g Among them, the degree of h(x) does not exceed g, and the degree of f(x) is 2g + 1, such that there is an automorphism mapping σ of order n0 on the curve.

[0056] Step 2. Generate a divisor on the corresponding curve according to the given coding parameters;

[0057] S21. Denote the infinite point on the curve as O, and the divisor F = (k + g - 1)O;

[0058] S22. Denote n = l·n0, and take l points P1, P2,..., P l respectively located on different trajectories of the mapping σ;

[0059] S23. The divisor

[0060] Step 3. Calculate the compact generator matrix using the hyperelliptic curve and the divisor;

[0061] S31. Generate the rational function space corresponding to the divisor F, and the dimension of this space is k; denote a set of bases of this space as {f1, f2,..., f k};

[0062] S32. Evaluate the points included in the divisor D in the function f i in turn to obtain the generator matrix of the code:

[0063]

[0064] S33. Denote Take k0 random codewords c from the code i , i ∈ {1,..., k0}, and perform k quasi-cyclic shift operations on c i , i ∈ {1,..., k0 - 1}, and perform k mod n0 operations on ;

[0065] S34. If the obtained k n-dimensional vectors are linearly independent, then they form a set of bases of the code , and c i , i ∈ {1,..., k0} is the compact expression form of the generator matrix;

[0066] S35. If there are linearly dependent vectors, then return to step S33;

[0067] S36. If there are no linearly dependent vectors, then output (D, F) and c i , i ∈ {1,..., k0}.

[0068] Example 2

[0069] A method for generating quasi-cyclic hyperelliptic codes. Given the parameters [n, k] = [44, 30] and taking the cyclic group length n0 = 11 as an example, the algorithm for generating hyperelliptic quasi-cyclic codes is executed as follows:

[0070] Step 1: Select a hyperelliptic curve according to the given coding parameters

[0071] S11. Input the code length n = 44, dimension k = 30, and group length n0 = 22;

[0072] S12. Judge that the input cyclic index and code length satisfy a specific relationship, that is, n0 divides n;

[0073] S13. Select a finite field A hyperelliptic curve of genus g = 5 over That is, h(x) = 0, f(x) = x 11 +3. At this time, there is an automorphism mapping of order 11 on the curve

[0074] Step 2: Generate a divisor on the corresponding curve according to the given coding parameters;

[0075] S21. Denote the infinite point on the curve as O, and the divisor F = 34O;

[0076] S22. At this time, n = 22×2, that is, l = 2. Take two points P1 = (1, 2) and P2 = (47, 43) which are located on different orbits of the mapping σ respectively;

[0077] S23. The support of the divisor is:

[0078] supp(D) = {(1, 2), (14, 65), (62, 2), (64, 65), (25, 2), (15, 65), (9, 2), (59, 65), (22, 2), (40, 65), (24, 2), (1, 65), (14, 2), (62, 65), (64, 2), (25, 65), (15, 2), (9, 65), (59, 2), (22, 65), (40, 2), (24, 65), (47, 43), (55, 24), (33, 43), (60, 24), (36, 43), (35, 24), (21, 43), (26, 24), (29, 43), (4, 24), (56, 43), (47, 24), (55, 43), (33, 24), (60, 43), (36, 24), (35, 43), (21, 24), (26, 43), (29, 24), (4, 43), (56, 24)}

[0079] Step 3: Calculate the compact generator matrix using curves and divisors;

[0080] S31. Generate the rational function space corresponding to the divisor F, and the dimension of this space is k = 30. Take a basis of this space as {1, x, x 2 ,..., x 17 , y, xy, x 2 y,..., x 11 y};

[0081] S32. Evaluate the points contained in the divisor D in the function f i in turn to obtain the generator matrix of the code :

[0082]

[0083] S33. At this time Take 2 random codewords from the code :

[0084] c1

[0085] 55, 26, 13, 25, 15, 24, 63, 6, 22, 26, 33, 2, 56, 50, 26, 19, 11, 41, 28, 24, 26, 8);

[0086] c2

[0087] 33, 20, 58, 48, 56,..., 1, 38, 63, 20, 61, 34, 7, 54, 3, 21, 56, 23, 38, 52, 40);

[0088] Perform 22 quasi-cyclic shift operations on c1 and 8 cyclic shift operations on c2;

[0089] S34. The 30 44-dimensional vectors obtained at this time are linearly independent, and they form a basis (i.e., the generator matrix) of the code C. c1 and c2 are the compact expression forms of the generator matrix of the required hyperelliptic quasi-cyclic code;

[0090] S35. Output (D, F) and c1, c2.

[0091] Example 3

[0092] A method for generating a quasi-cyclic hyperelliptic code, setting a cyclic code with parameters [n, k] = [8, 4] over a finite field to be generated;

[0093] Step 1: Select a hyperelliptic curve according to the given coding parameters;

[0094] S11. Input code length \(n = 8\), dimension \(k = 4\), and block length \(n_0 = 8\);

[0095] S12. Determine whether the input cyclic index and code length satisfy a specific relationship, that is, \(n_0\) divides \(n\);

[0096] S13. Select a finite field and a hyperelliptic curve of genus \(g = 2\) that is, \(h(x)=0\), \(f(x)=x\) 5 + 13x. At this time, there is an automorphism mapping of order 8 on the curve

[0097] Step 2: Generate divisors on the corresponding curve according to the given coding parameters;

[0098] S21. Denote the infinite point on the curve as \(O\), and the divisor \(F = 5O\);

[0099] S22. Take a point \(P_1=(11,33)\) on the curve;

[0100] S23. The support of the divisor is:

[0101] \(\text{supp}(D)\)

[0102] Step 3: Calculate the compact generator matrix using the curve and divisors;

[0103] S31. Generate the rational function space corresponding to the divisor \(F\), and the dimension of this space is \(k = 4\). Take a basis of this space as \(\{1,x,x\) 2 ,y\};

[0104] S32. Evaluate the points included in the divisor \(D\) in the function \(f\) i in turn to obtain the generator matrix of the code:

[0105]

[0106] S33. At this time, randomly take a codeword from the code :

[0107] \(c=(37,17,10,30,8,24,31,11)\)

[0108] Perform 4 quasi-cyclic shift operations on \(c\);

[0109] S34. The 4 obtained 8-dimensional vectors are linearly independent, and they form a basis (i.e., the generator matrix) of the code , and \(c\) is the compact expression form of the generator matrix of the required hyperelliptic cyclic code;

[0110] S35. Output (D, F) and c.

[0111] Example 4

[0112] This example provides a system for generating quasi - cyclic hyperelliptic codes, including:

[0113] A hyperelliptic curve selection module, used to select a hyperelliptic curve according to given coding parameters;

[0114] A divisor generation module: used to generate a divisor on the corresponding curve according to the coding parameters given by the hyperelliptic curve selection module;

[0115] A matrix generation module: used to calculate a compact generator matrix by using the curve selected by the hyperelliptic curve selection module and the divisor generated by the divisor generation module.

[0116] Among them, the hyperelliptic curve selection module includes:

[0117] A parameter input unit: used to input desired coding parameters, namely the code length n, dimension k, and block length n0;

[0118] A divisibility judgment unit: used to judge whether the cyclic index input by the parameter input unit and the code length satisfy a specific relationship, that is, whether n0 divides n; if not, it is required to re - input the above parameters; if it divides, then select a corresponding hyperelliptic curve with genus g where the degree of h(x) does not exceed g, and the degree of f(x) is 2g + 1, such that there is an automorphism mapping σ of order n0 on the curve.

[0119] In addition, the divisor generation module includes:

[0120] A curve and divisor F unit: used to denote the infinite point on the curve as O, and the divisor F=(k + g - 1)O;

[0121] A mapping unit: used to denote n = l·n0, and take l points P1, P2,..., P l respectively located on different orbits of the mapping σ;

[0122] A divisor D unit: used to obtain the divisor

[0123] Among them, the matrix generation module includes:

[0124] A rational function space generation unit: used to generate a rational function space corresponding to the divisor F, and the dimension of this space is k; denote a set of bases of this space as {f1, f2,..., f k};

[0125] code The matrix generation unit: sequentially assign the points included in the divisor D to the function f i to obtain the code generating matrix:

[0126]

[0127] The quasi-cyclic shift operation unit: used to remember Take k0 random codewords c from the code i , i ∈ {1,..., k0}, and perform k quasi-cyclic shift operations on c i , i ∈ {1,..., k0 - 1}, and perform k mod n0 operations on ;

[0128] The compact expression generation unit of the matrix: used to form a set of bases of the code when the obtained k n-dimensional vectors are linearly independent, and c i , i ∈ {1,..., k0} is the compact expression form of the generating matrix;

[0129] The judgment unit: used to judge whether there are linearly dependent vectors; if there are linearly dependent vectors, return to the quasi-cyclic shift operation unit and the compact expression generation unit of the matrix; if there are no linearly dependent vectors, output (D, F) and c i , i ∈ {1,..., k0}.

[0130] Obviously, the above embodiments of the present invention are merely examples for clearly explaining the present invention, rather than limiting the implementation manners of the present invention. For those of ordinary skill in the art, other different forms of changes or modifications can be made based on the above description. It is not necessary and impossible to list all the implementation manners here. Any modifications, equivalent replacements, and improvements made within the spirit and principle of the present invention shall be included in the protection scope of the claims of the present invention.

Claims

1. A method for generating a quasi-cyclic hyperelliptic code, characterized in that, Including the following steps: S1. Select a hyperelliptic curve according to the given coding parameters; S2. Generate a divisor on the corresponding curve according to the given coding parameters; The specific steps of step S2 include: S21. Denote the curve and the infinite point on it as , and the divisor ; S22. Denote , and take points that are respectively located on different trajectories of the mapping ; S23. Divisor ; where represents the code length, represents the dimension, represents the block length; represents the genus; S3. Calculate a compact generator matrix using the hyperelliptic curve and the divisor; The specific steps of step S3 include: S31. Generate a divisor The corresponding rational function space, the dimension of which is ; Denote a basis of this space as ; S32. Assign the points included in the divisor to the function in sequence to obtain the generating matrix of the code : S33. Record Take from the codeword Extract random codewords For Perform quasi-cyclic shift operations, and for Perform k mod times of operations; S34. If the obtained number of dimensional vectors are linearly independent, then they form a basis for the code , which is a compact representation of the generator matrix; ​ S35. If there are linearly dependent vectors, return to step S33; S36. If there are no linearly dependent vectors, then output and .

2. The method for generating a quasi-cyclic super-elliptic code according to claim 1, wherein The specific steps of step S1 include: S11. Input the desired coding parameters, where the coding parameters are the code length , the dimension , and the block length ; S12. Determine whether the input loop index and the code length satisfy a specific relationship, where the specific relationship is divisibility ; S13. If it is not divisible, re - input the above - mentioned parameters is required; if it is divisible, select the corresponding hyperelliptic curve of genus with , where the degree of does not exceed and the degree of , so that there is an automorphism mapping of order on the curve ; x , y are the coordinates of points on the plane.

3. A system for generating quasi-cyclic hyperelliptic codes, characterized in that, Including: A hyperelliptic curve selection module for selecting a hyperelliptic curve according to the given coding parameters; A divisor generation module: for generating a divisor on the corresponding curve according to the coding parameters given by the hyperelliptic curve selection module; The divisor generation module includes: Curve and divisor F unit: used to denote the curve The infinite point on the is ; Mapping unit: used for recording , fetching points respectively located on different trajectories of the mapping ; Divisor D unit: used to obtain the divisor ; where represents the code length, represents the dimension, represents the block length; represents the genus; A matrix generation module: for calculating a compact generator matrix using the curve selected by the hyperelliptic curve selection module and the divisor generated by the divisor generation module; The matrix generation module includes: Rational function space generation unit: used to generate a divisor The corresponding rational function space, the dimension of which is ; Denote a set of bases of this space as ; Code matrix generation unit: sequentially assign the points included in the divisor to the function to obtain the generating matrix of the code : Quasi-cyclic shift operation unit: used to record Take from the code Extract Random codewords For Perform Quasi-cyclic shift operations, for Perform k mod Operations; Compact expression generation unit of matrix: used when the number of dimensional vectors are linearly independent, then they form a basis of the code and is a compact expression form of the generator matrix; Judgment unit: used to determine whether there are linearly dependent vectors; if there are linearly dependent vectors, return the quasi-cyclic shift operation unit and the compact expression generation unit of the matrix; if there are no linearly dependent vectors, output and .

4. The system for generating a quasi-cyclic super-elliptic code according to claim 3, wherein The hyperelliptic curve selection module includes: Parameter input unit: used to input desired coding parameters, where the coding parameters are code length , dimension , block length ; Divisibility judgment unit: used to judge whether the loop index and the code length input by the parameter input unit satisfy a specific relationship, and the specific relationship is whether it is divisible ; if not divisible, it is required to re-enter the above parameters; if divisible, select the corresponding hyperelliptic curve with a genus of , where the degree of does not exceed , the degree of is , so that there is an automorphism mapping of order on the curve .

5. An electronic device, comprising: A memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that the processor executes the computer program to implement the method for generating a quasi-cyclic hyperelliptic code according to claim 1 or 2.

6. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, the method for generating a quasi-cyclic hyperelliptic code according to claim 1 or 2 is implemented.

Citation Information

Patent Citations

  • Protection of data from erasures using subsymbole based

    CN101582698A

  • Asymmetric bilinear pair-based secret signcryption method

    CN109462481A