/* * Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the Apache License 2.0 (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy * in the file LICENSE in the source distribution or at * https://www.openssl.org/source/license.html */#include<stdio.h>#include"internal/cryptlib.h"#include<openssl/x509.h>#include<openssl/ec.h>#include<openssl/rand.h>#include"crypto/asn1.h"#include"crypto/evp.h"#include"ec_local.h"#include"curve448/curve448_local.h"#define X25519_BITS 253#define X25519_SECURITY_BITS 128#define ED25519_SIGSIZE 64#define X448_BITS 448#define ED448_BITS 456#define X448_SECURITY_BITS 224#define ED448_SIGSIZE 114#define ISX448(id) ((id) == EVP_PKEY_X448)#define IS25519(id) ((id) == EVP_PKEY_X25519