1*a8bdf2c4SHerbert Xu // SPDX-License-Identifier: GPL-2.0 OR MIT 2*a8bdf2c4SHerbert Xu /* 3*a8bdf2c4SHerbert Xu * Copyright (C) 2015-2019 Jason A. Donenfeld <Jason@zx2c4.com>. All Rights Reserved. 4*a8bdf2c4SHerbert Xu * 5*a8bdf2c4SHerbert Xu * This is an implementation of the Curve25519 ECDH algorithm, using either 6*a8bdf2c4SHerbert Xu * a 32-bit implementation or a 64-bit implementation with 128-bit integers, 7*a8bdf2c4SHerbert Xu * depending on what is supported by the target compiler. 8*a8bdf2c4SHerbert Xu * 9*a8bdf2c4SHerbert Xu * Information: https://cr.yp.to/ecdh.html 10*a8bdf2c4SHerbert Xu */ 11*a8bdf2c4SHerbert Xu 12*a8bdf2c4SHerbert Xu #include <crypto/curve25519.h> 13*a8bdf2c4SHerbert Xu #include <linux/module.h> 14*a8bdf2c4SHerbert Xu 15*a8bdf2c4SHerbert Xu const u8 curve25519_null_point[CURVE25519_KEY_SIZE] __aligned(32) = { 0 }; 16*a8bdf2c4SHerbert Xu const u8 curve25519_base_point[CURVE25519_KEY_SIZE] __aligned(32) = { 9 }; 17*a8bdf2c4SHerbert Xu 18*a8bdf2c4SHerbert Xu EXPORT_SYMBOL(curve25519_null_point); 19*a8bdf2c4SHerbert Xu EXPORT_SYMBOL(curve25519_base_point); 20*a8bdf2c4SHerbert Xu EXPORT_SYMBOL(curve25519_generic); 21*a8bdf2c4SHerbert Xu 22*a8bdf2c4SHerbert Xu MODULE_LICENSE("GPL v2"); 23*a8bdf2c4SHerbert Xu MODULE_DESCRIPTION("Curve25519 scalar multiplication"); 24*a8bdf2c4SHerbert Xu MODULE_AUTHOR("Jason A. Donenfeld <Jason@zx2c4.com>"); 25