le_iks_ecc_common.h
Go to the documentation of this file.
31 //--------------------------------------------------------------------------------------------------35 //--------------------------------------------------------------------------------------------------38 //--------------------------------------------------------------------------------------------------42 //--------------------------------------------------------------------------------------------------45 //--------------------------------------------------------------------------------------------------49 //--------------------------------------------------------------------------------------------------53 //--------------------------------------------------------------------------------------------------57 //--------------------------------------------------------------------------------------------------64 //--------------------------------------------------------------------------------------------------68 //--------------------------------------------------------------------------------------------------75 //--------------------------------------------------------------------------------------------------79 //--------------------------------------------------------------------------------------------------86 //--------------------------------------------------------------------------------------------------93 * This function may be used as part of a key exchange protocol. The shared secret is unpredictable100 * If the buffer is too small to hold the shared secret the shared secret will be truncated to fit.110 //--------------------------------------------------------------------------------------------------124 //--------------------------------------------------------------------------------------------------132 * bytes. Note that when the key size is 521 bits, zero-valued high-order padding bits are added to147 //--------------------------------------------------------------------------------------------------163 //--------------------------------------------------------------------------------------------------171 * bytes. Note that when the key size is 521 bits, zero-valued high-order padding bits are added to182 //--------------------------------------------------------------------------------------------------198 //--------------------------------------------------------------------------------------------------203 * Hybrid encryption combines an asymmetric encryption system with a symmetric encryption system to208 * ECIES provides hybrid encryption through a method that is more efficient than manually performing210 * generate a shared secret, the shared secret is then used to generate a symmetric key using a KDF226 //--------------------------------------------------------------------------------------------------254 //--------------------------------------------------------------------------------------------------259 * Hybrid encryption combines an asymmetric encryption system with a symmetric encryption system to264 * ECIES provides hybrid encryption through a method that is more efficient than manually performing266 * generate a shared secret, the shared secret is then used to generate a symmetric key using a KDF282 //--------------------------------------------------------------------------------------------------310 //--------------------------------------------------------------------------------------------------312 * Starts a process to encrypt and integrity protect a message with ECIES (Elliptic Curve Integrated315 * Hybrid encryption combines an asymmetric encryption system with a symmetric encryption system to348 //--------------------------------------------------------------------------------------------------364 //--------------------------------------------------------------------------------------------------377 //--------------------------------------------------------------------------------------------------393 //--------------------------------------------------------------------------------------------------398 * larger than or equal to the maximum authentication tag size then the full authentication tag is412 //--------------------------------------------------------------------------------------------------424 //--------------------------------------------------------------------------------------------------429 * Hybrid encryption combines an asymmetric encryption system with a symmetric encryption system to430 * encrypt (possibly long) messages that can only be decrypted with the holder of the private key.431 * Hybrid encryption is usually accomplished by using a symmetric encryption system to bulk encrypt434 * ECIES provides hybrid encryption through a method that is more efficient than manually performing436 * generate a shared secret, the shared secret is then used to generate a symmetric key using a KDF467 //--------------------------------------------------------------------------------------------------483 //--------------------------------------------------------------------------------------------------496 //--------------------------------------------------------------------------------------------------512 //--------------------------------------------------------------------------------------------------