summary refs log tree commit diff
path: root/crypto/src/openpgp/PgpPublicKey.cs
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/src/openpgp/PgpPublicKey.cs')
-rw-r--r--crypto/src/openpgp/PgpPublicKey.cs20
1 files changed, 16 insertions, 4 deletions
diff --git a/crypto/src/openpgp/PgpPublicKey.cs b/crypto/src/openpgp/PgpPublicKey.cs
index 8b3575909..fa924ff37 100644
--- a/crypto/src/openpgp/PgpPublicKey.cs
+++ b/crypto/src/openpgp/PgpPublicKey.cs
@@ -575,8 +575,11 @@ namespace Org.BouncyCastle.Bcpg.OpenPgp
 
                         return PublicKeyFactory.CreateKey(new SubjectPublicKeyInfo(
                             new AlgorithmIdentifier(curveOid),
-                            // TODO Span variant
+#if NETCOREAPP2_1_OR_GREATER || NETSTANDARD2_1_OR_GREATER
+                            pEnc.AsSpan(1)));
+#else
                             Arrays.CopyOfRange(pEnc, 1, pEnc.Length)));
+#endif
                     }
                     else if (EdECObjectIdentifiers.id_X448.Equals(curveOid))
                     {
@@ -586,8 +589,11 @@ namespace Org.BouncyCastle.Bcpg.OpenPgp
 
                         return PublicKeyFactory.CreateKey(new SubjectPublicKeyInfo(
                             new AlgorithmIdentifier(curveOid),
-                            // TODO Span variant
+#if NETCOREAPP2_1_OR_GREATER || NETSTANDARD2_1_OR_GREATER
+                            pEnc.AsSpan(1)));
+#else
                             Arrays.CopyOfRange(pEnc, 1, pEnc.Length)));
+#endif
                     }
                     else
                     {
@@ -608,8 +614,11 @@ namespace Org.BouncyCastle.Bcpg.OpenPgp
 
                         return PublicKeyFactory.CreateKey(new SubjectPublicKeyInfo(
                             new AlgorithmIdentifier(curveOid),
-                            // TODO Span variant
+#if NETCOREAPP2_1_OR_GREATER || NETSTANDARD2_1_OR_GREATER
+                            pEnc.AsSpan(1)));
+#else
                             Arrays.CopyOfRange(pEnc, 1, pEnc.Length)));
+#endif
                     }
                     else if (EdECObjectIdentifiers.id_Ed448.Equals(curveOid))
                     {
@@ -619,8 +628,11 @@ namespace Org.BouncyCastle.Bcpg.OpenPgp
 
                         return PublicKeyFactory.CreateKey(new SubjectPublicKeyInfo(
                             new AlgorithmIdentifier(curveOid),
-                            // TODO Span variant
+#if NETCOREAPP2_1_OR_GREATER || NETSTANDARD2_1_OR_GREATER
+                            pEnc.AsSpan(1)));
+#else
                             Arrays.CopyOfRange(pEnc, 1, pEnc.Length)));
+#endif
                     }
                     else 
                     {