mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	Added a sample that fixes comment two on issue #1264.
This commit is contained in:
		| @@ -560,8 +560,8 @@ | ||||
|       ".gitconfig" | ||||
|     ] | ||||
|   }, | ||||
|   "tokens_total": 454570, | ||||
|   "languages_total": 557, | ||||
|   "tokens_total": 454619, | ||||
|   "languages_total": 558, | ||||
|   "tokens": { | ||||
|     "IDL": { | ||||
|       ";": 59, | ||||
| @@ -41660,30 +41660,30 @@ | ||||
|       "After": 1 | ||||
|     }, | ||||
|     "C": { | ||||
|       "#include": 154, | ||||
|       "#include": 159, | ||||
|       "<assert.h>": 5, | ||||
|       "<stddef.h>": 2, | ||||
|       "<ctype.h>": 3, | ||||
|       "<stdlib.h>": 3, | ||||
|       "<string.h>": 5, | ||||
|       "<limits.h>": 2, | ||||
|       "#ifndef": 89, | ||||
|       "#ifndef": 90, | ||||
|       "ULLONG_MAX": 10, | ||||
|       "#endif": 245, | ||||
|       "#endif": 246, | ||||
|       "MIN": 3, | ||||
|       "#if": 92, | ||||
|       "HTTP_PARSER_DEBUG": 4, | ||||
|       "#define": 920, | ||||
|       "#define": 921, | ||||
|       "SET_ERRNO": 47, | ||||
|       "(": 6247, | ||||
|       "(": 6249, | ||||
|       "e": 4, | ||||
|       ")": 6249, | ||||
|       ")": 6251, | ||||
|       "do": 21, | ||||
|       "{": 1532, | ||||
|       "parser": 334, | ||||
|       "-": 1803, | ||||
|       "http_errno": 11, | ||||
|       ";": 5466, | ||||
|       ";": 5468, | ||||
|       "error_lineno": 3, | ||||
|       "__LINE__": 50, | ||||
|       "}": 1548, | ||||
| @@ -41721,7 +41721,7 @@ | ||||
|       "KEEP_ALIVE": 4, | ||||
|       "CLOSE": 4, | ||||
|       "static": 457, | ||||
|       "const": 360, | ||||
|       "const": 368, | ||||
|       "char": 530, | ||||
|       "*method_strings": 1, | ||||
|       "[": 603, | ||||
| @@ -41729,7 +41729,7 @@ | ||||
|       "XX": 63, | ||||
|       "num": 24, | ||||
|       "name": 28, | ||||
|       "string": 18, | ||||
|       "string": 20, | ||||
|       "#string": 1, | ||||
|       "HTTP_METHOD_MAP": 3, | ||||
|       "#undef": 7, | ||||
| @@ -41919,7 +41919,7 @@ | ||||
|       "<": 219, | ||||
|       "HPE_INVALID_VERSION": 12, | ||||
|       "http_major": 11, | ||||
|       "*": 261, | ||||
|       "*": 262, | ||||
|       "http_minor": 11, | ||||
|       "HPE_INVALID_STATUS": 3, | ||||
|       "status_code": 8, | ||||
| @@ -41998,7 +41998,7 @@ | ||||
|       "http_should_keep_alive": 2, | ||||
|       "http_method_str": 1, | ||||
|       "m": 8, | ||||
|       "void": 288, | ||||
|       "void": 289, | ||||
|       "http_parser_init": 2, | ||||
|       "http_parser_type": 3, | ||||
|       "memset": 4, | ||||
| @@ -42395,7 +42395,7 @@ | ||||
|       "i_rfString_Before": 5, | ||||
|       "i_rfString_After": 5, | ||||
|       "afterP": 2, | ||||
|       "out": 18, | ||||
|       "out": 19, | ||||
|       "after": 6, | ||||
|       "rfString_Afterv": 4, | ||||
|       "i_rfString_Afterv": 16, | ||||
| @@ -44221,7 +44221,7 @@ | ||||
|       "bitcountCommand": 1, | ||||
|       "redisLogRaw": 3, | ||||
|       "level": 12, | ||||
|       "*msg": 7, | ||||
|       "*msg": 8, | ||||
|       "syslogLevelMap": 2, | ||||
|       "LOG_DEBUG": 1, | ||||
|       "LOG_INFO": 1, | ||||
| @@ -46822,6 +46822,17 @@ | ||||
|       "jfloat": 1, | ||||
|       "Java_jni_JniLayer_jni_1layer_1report_1analog_1chg": 1, | ||||
|       "Java_jni_JniLayer_jni_1layer_1kill": 1, | ||||
|       "PQC_ENCRYPT_H": 2, | ||||
|       "<fmpz_poly.h>": 1, | ||||
|       "<fmpz.h>": 1, | ||||
|       "ntru_encrypt_poly": 1, | ||||
|       "fmpz_poly_t": 6, | ||||
|       "msg_tern": 1, | ||||
|       "pub_key": 2, | ||||
|       "rnd": 2, | ||||
|       "ntru_params": 2, | ||||
|       "*params": 2, | ||||
|       "ntru_encrypt_string": 1, | ||||
|       "BOOTSTRAP_H": 2, | ||||
|       "*true": 1, | ||||
|       "*false": 1, | ||||
| @@ -49253,7 +49264,7 @@ | ||||
|     "AsciiDoc": 103, | ||||
|     "Protocol Buffer": 63, | ||||
|     "Common Lisp": 103, | ||||
|     "C": 59088, | ||||
|     "C": 59137, | ||||
|     "XQuery": 801, | ||||
|     "RobotFramework": 483, | ||||
|     "Gosu": 410, | ||||
| @@ -49400,7 +49411,7 @@ | ||||
|     "AsciiDoc": 3, | ||||
|     "Protocol Buffer": 1, | ||||
|     "Common Lisp": 1, | ||||
|     "C": 30, | ||||
|     "C": 31, | ||||
|     "XQuery": 1, | ||||
|     "RobotFramework": 3, | ||||
|     "Gosu": 4, | ||||
| @@ -49412,5 +49423,5 @@ | ||||
|     "GLSL": 3, | ||||
|     "Xtend": 2 | ||||
|   }, | ||||
|   "md5": "43be9202f3e299ffea3af7298cc39aaa" | ||||
|   "md5": "5b3ac3847ff456b82cf95a19d03449a4" | ||||
| } | ||||
							
								
								
									
										89
									
								
								samples/C/ntru_encrypt.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										89
									
								
								samples/C/ntru_encrypt.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,89 @@ | ||||
| /* | ||||
|  * Copyright (C) 2014 FH Bielefeld | ||||
|  * | ||||
|  * This file is part of a FH Bielefeld project. | ||||
|  * | ||||
|  * This library is free software; you can redistribute it and/or | ||||
|  * modify it under the terms of the GNU Lesser General Public | ||||
|  * License as published by the Free Software Foundation; either | ||||
|  * version 2.1 of the License, or (at your option) any later version. | ||||
|  * | ||||
|  * This library is distributed in the hope that it will be useful, | ||||
|  * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
|  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | ||||
|  * Lesser General Public License for more details. | ||||
|  * | ||||
|  * You should have received a copy of the GNU Lesser General Public | ||||
|  * License along with this library; if not, write to the Free Software | ||||
|  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, | ||||
|  * MA  02110-1301  USA | ||||
|  */ | ||||
|  | ||||
| /** | ||||
|  * @file ntru_encrypt.h | ||||
|  * Header for the internal API of ntru_encrypt.c. | ||||
|  * @brief header for encrypt.c | ||||
|  */ | ||||
|  | ||||
| #ifndef PQC_ENCRYPT_H | ||||
| #define PQC_ENCRYPT_H | ||||
|  | ||||
|  | ||||
| #include "ntru_params.h" | ||||
| #include "ntru_poly.h" | ||||
| #include "ntru_string.h" | ||||
|  | ||||
| #include <fmpz_poly.h> | ||||
| #include <fmpz.h> | ||||
|  | ||||
|  | ||||
| /** | ||||
|  * encrypt the msg, using the math: | ||||
|  * e = (h ∗ r) + m (mod q) | ||||
|  * | ||||
|  * e = the encrypted poly | ||||
|  * | ||||
|  * h = the public key | ||||
|  * | ||||
|  * r = the random poly | ||||
|  * | ||||
|  * m = the message poly | ||||
|  * | ||||
|  * q = large mod | ||||
|  * | ||||
|  * @param msg_tern the message to encrypt, in ternary format | ||||
|  * @param pub_key the public key | ||||
|  * @param rnd the random poly (should have relatively small | ||||
|  * coefficients, but not restricted to {-1, 0, 1}) | ||||
|  * @param out the output poly which is in the range {0, q-1} | ||||
|  * (not ternary!) [out] | ||||
|  * @param params ntru_params the ntru context | ||||
|  */ | ||||
| void | ||||
| ntru_encrypt_poly( | ||||
| 		const fmpz_poly_t msg_tern, | ||||
| 		const fmpz_poly_t pub_key, | ||||
| 		const fmpz_poly_t rnd, | ||||
| 		fmpz_poly_t out, | ||||
| 		const ntru_params *params); | ||||
|  | ||||
| /** | ||||
|  * Encrypt a message in the form of a null-terminated char array and | ||||
|  * return a string. | ||||
|  * | ||||
|  * @param msg the message | ||||
|  * @param pub_key the public key | ||||
|  * @param rnd the random poly (should have relatively small | ||||
|  * coefficients, but not restricted to {-1, 0, 1}) | ||||
|  * @param params ntru_params the ntru context | ||||
|  * @return the newly allocated encrypted string | ||||
|  */ | ||||
| string * | ||||
| ntru_encrypt_string( | ||||
| 		const string *msg, | ||||
| 		const fmpz_poly_t pub_key, | ||||
| 		const fmpz_poly_t rnd, | ||||
| 		const ntru_params *params); | ||||
|  | ||||
|  | ||||
| #endif /* PQC_ENCRYPT_H */ | ||||
		Reference in New Issue
	
	Block a user