diff options
author | David Hook <dgh@cryptoworkshop.com> | 2021-10-07 11:20:11 +1100 |
---|---|---|
committer | David Hook <dgh@cryptoworkshop.com> | 2021-10-07 11:20:11 +1100 |
commit | 81977ab62fb74af1624930718b83acd8c5c78f72 (patch) | |
tree | a756d3dda3e967dffe1c97c6876f5fbaf4a51e88 /crypto/src/asn1 | |
parent | corrected DER encoding of SET (diff) | |
download | BouncyCastle.NET-ed25519-81977ab62fb74af1624930718b83acd8c5c78f72.tar.xz |
added explicit sorting of DER encoded SET
Diffstat (limited to 'crypto/src/asn1')
-rw-r--r-- | crypto/src/asn1/Asn1Encodable.cs | 5 | ||||
-rw-r--r-- | crypto/src/asn1/Asn1Set.cs | 18 |
2 files changed, 5 insertions, 18 deletions
diff --git a/crypto/src/asn1/Asn1Encodable.cs b/crypto/src/asn1/Asn1Encodable.cs index 12628082d..c7fde6e07 100644 --- a/crypto/src/asn1/Asn1Encodable.cs +++ b/crypto/src/asn1/Asn1Encodable.cs @@ -26,6 +26,11 @@ namespace Org.BouncyCastle.Asn1 MemoryStream bOut = new MemoryStream(); DerOutputStream dOut = new DerOutputStream(bOut); + if (this is Asn1Set) + { + (this as Asn1Set).Sort(); + } + dOut.WriteObject(this); return bOut.ToArray(); diff --git a/crypto/src/asn1/Asn1Set.cs b/crypto/src/asn1/Asn1Set.cs index 7b3c1ccf3..68ede2275 100644 --- a/crypto/src/asn1/Asn1Set.cs +++ b/crypto/src/asn1/Asn1Set.cs @@ -285,24 +285,6 @@ namespace Org.BouncyCastle.Asn1 #endif } - public override byte[] GetEncoded( - string encoding) - { - if (encoding.Equals(Der)) - { - this.Sort(); - - MemoryStream bOut = new MemoryStream(); - DerOutputStream dOut = new DerOutputStream(bOut); - - dOut.WriteObject(this); - - return bOut.ToArray(); - } - - return GetEncoded(); - } - public override string ToString() { return CollectionUtilities.ToString(elements); |