You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+3-5Lines changed: 3 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -43,8 +43,6 @@ action!
43
43
* Generic ASN.1 abstractions to operate on and create arbitrary ASN.1 Data
44
44
* JOSE-related data structures (JSON Web Keys, JWT, etc…)
45
45
* COSE-related data structures (COSE Keys, CWT, etc…)
46
-
* Serializability of all ASN.1 classes for debugging **and only for debugging!!!***Seriously, do not try to deserialize
47
-
ASN.1 classes through kotlinx.serialization! Use `decodeFromDer()` and its companions!*
48
46
* 100% pure Kotlin BitSet
49
47
* Exposes Multibase Encoder/Decoder as an API dependency including [Matthew Nelson's smashing Base16, Base32, and Base64 encoders](https://github.com/05nelsonm/encoding)
50
48
***ASN.1 Parser and Encoder including a DSL to generate ASN.1 structures**
@@ -113,14 +111,14 @@ certificates, CSRs, as well as COSE and JOSE data. Hence, we needed a fully-feat
113
111
X.509 to COSE and JOSE datatypes. We required comprehensive ASN.1 introspection and builder capabilities across platforms.
114
112
Most notably, Apple has been notoriously lacking anything even remotely usable
115
113
and [SwiftASN1](https://github.com/apple/swift-asn1) was out of the question for a couple of reasons.
116
-
Most notably, it did not exist, when we started work on Signum. Hence, there was **neither ASN.1 parser, nor encoder on Apple platforms**
117
-
that was actually usable. In effect: there way no KMP ASN.1 codec in sight, much less a type-safe, user-friendly one.
114
+
Most notably, it did not exist when we started work on Signum. Hence, there was **neither ASN.1 parser, nor encoder on Apple platforms**
115
+
that was actually usable. In effect: there was no KMP ASN.1 codec in sight, much less a type-safe, user-friendly one.
118
116
As it stands now, our ASN.1 engine can handle almost anything you throw at it, in some areas even exceeding Bouncy Castle!
119
117
cryptography-kotlin only added basic ASN.1 capabilities over a year after Signum's development started.
120
118
<br>
121
119
We are also unaware of any other library offering comprehensive JOSE and COSE data structures based on kotlinx-serialization.
122
120
Hence, we implemented those ourselves, with first-class interop to our generic cryptographic data structures.
123
-
We also support platform-native interop meaning that you can easily convert a Json Web Key to a JCA key or even a `SecKeyRef`.
121
+
We also support platform-native interop meaning that you can easily convert a Json Web Key to a JCA key or even a `SecKeyRef` on iOS.
124
122
125
123
Having actual implementations of cryptographic operations available was only second on our list of priorities. From the
126
124
get-go, it was clear that we wanted the tightest possible platform integration on Android and iOS, including hardware-backed
0 commit comments