Neuron®
The Neuron® is the basis for the creation of open and secure federated networks for smart societies.
Loading...
Searching...
No Matches
Edwards448Endpoint.cs
1using System.Numerics;
4
6{
11 {
16 : this(new Edwards448())
17 {
18 }
19
25 : this(new Edwards448(), SymmetricCipher)
26 {
27 }
28
34 : this(Edwards, new Aes256())
35 {
36 }
37
43 public Edwards448Endpoint(Edwards448 Edwards, IE2eSymmetricCipher SymmetricCipher)
44 : base(Edwards, SymmetricCipher)
45 {
46 }
47
53 : this(PublicKey, new Aes256())
54 {
55 }
56
62 public Edwards448Endpoint(byte[] PublicKey, IE2eSymmetricCipher SymmetricCipher)
63 : base(PublicKey, new Edwards448(), SymmetricCipher)
64 {
65 }
66
70 public override string LocalName => "ed448";
71
75 public override int SecurityStrength => 224;
76
83 {
85 }
86
92 public override IE2eEndpoint CreatePrivate(byte[] Secret)
93 {
94 return new Edwards448Endpoint(new Edwards448(Secret), this.DefaultSymmetricCipher.CreteNew());
95 }
96
102 public override IE2eEndpoint CreatePublic(byte[] PublicKey)
103 {
105 }
106 }
107}
virtual IE2eSymmetricCipher DefaultSymmetricCipher
Default symmetric cipher.
Definition: E2eEndpoint.cs:265
override int SecurityStrength
Security strength of End-to-End encryption scheme.
Edwards448Endpoint(byte[] PublicKey)
Edwards448 Edwards Curve
override IE2eEndpoint CreatePrivate(byte[] Secret)
Creates a new endpoint given a private key.
Edwards448Endpoint(Edwards448 Edwards)
Edwards448 Edwards Curve
override IE2eEndpoint Create(int SecurityStrength)
Creates a new key.
Edwards448Endpoint(IE2eSymmetricCipher SymmetricCipher)
Edwards448 Edwards Curve
override IE2eEndpoint CreatePublic(byte[] PublicKey)
Creates a new endpoint given a public key.
Edwards448Endpoint(byte[] PublicKey, IE2eSymmetricCipher SymmetricCipher)
Edwards448 Edwards Curve
Edwards448Endpoint(Edwards448 Edwards, IE2eSymmetricCipher SymmetricCipher)
Edwards448 Edwards Curve
override string LocalName
Local name of the E2E encryption scheme
Abstract base class for Elliptic Curve endpoints.
Implements support for the AES-256 cipher in hybrid End-to-End encryption schemes.
Definition: Aes256.cs:15
Edwards448 Elliptic Curve, as defined in RFC7748 and RFC8032: https://tools.ietf.org/html/rfc7748 htt...
Definition: Edwards448.cs:17
Abstract base class for End-to-End encryption schemes.
Definition: IE2eEndpoint.cs:12
Interface for symmetric ciphers.
IE2eSymmetricCipher CreteNew()
Creates a new symmetric cipher object with the same settings as the current object.