Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: added info on readme #22

Merged
merged 1 commit into from
May 31, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,6 @@ This library provides comprehensive support for the Jose suite of standards, inc
- watchOS 8.0 or later
- Dependencies:
- [CryptoSwift](https://github.com/krzyzanowskim/CryptoSwift)
- [OpenSSL](https://github.com/krzyzanowskim/OpenSSL)
- [secp256k1.swift](https://github.com/GigaBitcoin/secp256k1.swift)

## Swift Package Manager (SPM)
Expand Down Expand Up @@ -223,13 +222,19 @@ import JSONWebToken

You can access [here](https://beatt83.github.io/jose-swift/documentation/jose_swift/) to the documentation.

### Getting Started

For a quick guide on how to use the library please visit the [Getting Started](https://beatt83.github.io/jose-swift/documentation/jose-swift/gettingstarted) tutorial.

For more examples on how to use this library please try to check the unit tests, they are extensive and should provide more information.

## Modules

### JWK (JSON Web Key)
JWK is a standard way to represent cryptographic keys in a JSON format, as defined in [RFC 7517](https://datatracker.ietf.org/doc/html/rfc7517). This module provides functionalities for generating, parsing, and managing JWKs, which are essential for encryption, decryption, and signing processes.

Please check our documentation for more on [JWS Signatures](https://beatt83.github.io/jose-swift/documentation/jose-swift/jwssignatures).

```swift
let keyJWK = JWK(keyType: .rsa, algorithm: "A256GCM", keyID: rsaKeyId, e: rsaKeyExponent, n: rsaKeyModulus)
// ---------------------
Expand Down Expand Up @@ -295,6 +300,8 @@ let jwe = try JWS(payload: payload, protectedHeader: header, key: jwk)
### JWE (JSON Web Encryption)
JWE represents encrypted content using JSON-based data structures, following the guidelines of [RFC 7516](https://datatracker.ietf.org/doc/html/rfc7516). This module includes functionalities for encrypting and decrypting data, managing encryption keys, and handling various encryption algorithms and methods.

Please check our documentation for more on [JWE Encryption](https://beatt83.github.io/jose-swift/documentation/jose-swift/jweencryption).

#### Supported Algorithms:

1. **Key Management Algorithms**:
Expand Down Expand Up @@ -392,6 +399,7 @@ let jwe = try JWE(payload: wrappedPayload, protectedHeader: header, recipientKey
### JWT (JSON Web Token)
JWT is a compact, URL-safe means of representing claims to be transferred between two parties. This module offers tools for creating, parsing, validating, and manipulating JWTs, with support for various signing and encryption methods, as specified in [RFC 7519](https://datatracker.ietf.org/doc/html/rfc7519).

Please check our documentation for more on [JWT tokens](https://beatt83.github.io/jose-swift/documentation/jose-swift/jwtconcepts).

#### Features:

Expand Down
Loading