Neuron®
The Neuron® is the basis for the creation of open and secure federated networks for smart societies.
Loading...
Searching...
No Matches
NistP521Endpoint.cs
1using System.Numerics;
4
6{
11 {
16 : this(new NistP521())
17 {
18 }
19
24 public NistP521Endpoint(IE2eSymmetricCipher SymmetricCipher)
25 : this(new NistP521(), SymmetricCipher)
26 {
27 }
28
34 : this(Curve, new Aes256())
35 {
36 }
37
44 : base(Curve, SymmetricCipher)
45 {
46 }
47
53 : this(PublicKey, new Aes256())
54 {
55 }
56
62 public NistP521Endpoint(byte[] PublicKey, IE2eSymmetricCipher SymmetricCipher)
63 : base(PublicKey, new NistP521(), SymmetricCipher)
64 {
65 }
66
70 public override string LocalName => "p521";
71
75 public override int SecurityStrength => 256;
76
83 {
85 }
86
92 public override IE2eEndpoint CreatePrivate(byte[] Secret)
93 {
94 return new NistP521Endpoint(new NistP521(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
Abstract base class for NIST Curve endpoints
Definition: NistEndpoint.cs:11
NistP521Endpoint(byte[] PublicKey)
NIST P-521 Curve
override string LocalName
Local name of the E2E encryption scheme
NistP521Endpoint(NistP521 Curve, IE2eSymmetricCipher SymmetricCipher)
NIST P-521 Curve
NistP521Endpoint(IE2eSymmetricCipher SymmetricCipher)
NIST P-521 Curve
NistP521Endpoint(NistP521 Curve)
NIST P-521 Curve
override IE2eEndpoint CreatePrivate(byte[] Secret)
Creates a new endpoint given a private key.
NistP521Endpoint(byte[] PublicKey, IE2eSymmetricCipher SymmetricCipher)
NIST P-521 Curve
override int SecurityStrength
Security strength of End-to-End encryption scheme.
override IE2eEndpoint CreatePublic(byte[] PublicKey)
Creates a new endpoint given a public key.
override IE2eEndpoint Create(int SecurityStrength)
Creates a new key.
Implements support for the AES-256 cipher in hybrid End-to-End encryption schemes.
Definition: Aes256.cs:15
NIST P-521 Elliptic Curve, as defined in NIST FIPS BUB 186-4: https://nvlpubs.nist....
Definition: NistP521.cs:11
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.