Vincent Prouillet
1dcfda92f0
Unify various decode into the validation struct ( #199 )
2022-02-02 22:10:11 +01:00
Ten0
6a7eec9030
Add support for x5t#S256 header ( #203 )
2022-02-02 22:10:11 +01:00
Vincent Prouillet
a11106faff
Add types for JWK/JWKS based on biscuit ( #195 )
...
* Add types for JWK/JWKS based on biscuit
* Address comments
* Fix issues
2022-02-02 22:10:11 +01:00
Matteo Bertucci
94fef12259
Docs: fix copy paste error in ErrorKind::InvalidSubject ( #196 )
...
The documentation for `ErrorKind::InvalidSubject` mentioned the `aud` claim instead of `sub`. This commit fixes it.
2022-02-02 22:10:11 +01:00
Vincent Prouillet
3e245e3e6b
Allow uppercase algorithms (too much breakage otherwise)
2022-02-02 22:10:11 +01:00
Vincent Prouillet
b6dafd63dd
Make Validation::algorithms an error if empty
2022-02-02 22:10:11 +01:00
Jarred Nicholls
fd2c314d3c
Add tests for Header::x5c_der(), and modify its return type to be fallible. ( #185 )
2022-02-02 22:10:11 +01:00
Jarred Nicholls
8bdc5215ea
Add an access method to decode the Header x5c field into DER PKIX format. ( #184 )
2022-02-02 22:10:11 +01:00
Saber Haj Rabiee
45fb43c1f7
removed unnecessary conversions ( #180 )
...
* removed unnecessary conversions
2022-02-02 22:10:11 +01:00
Oliver Thallmair
de5a1903b0
add x5c header ( #182 )
...
* add x5c header
* fix format
2022-02-02 22:10:11 +01:00
Saber Haj Rabiee
f3566ecd82
clone-free validate function ( #179 )
...
* clone-free validate function
It could save up to 300ns in my benches
2022-02-02 22:10:11 +01:00
Saber Haj Rabiee
d8cc36dd0c
clone-free serde Value deserialization ( #178 )
...
* clone-free serde Value deserialization
2022-02-02 22:10:11 +01:00
Saber Haj Rabiee
9fd9db55cd
Update validation.rs ( #176 )
2022-02-02 22:10:11 +01:00
Vincent Prouillet
6f05ec9a1a
v8 beta1
2022-02-02 22:10:11 +01:00
Saber Haj Rabiee
da761fe039
checking iss for multiple values ( #173 )
2022-02-02 22:10:11 +01:00
Vincent Prouillet
48770d4797
Prepare for v8
2022-02-02 22:10:11 +01:00
Vincent Prouillet
874952b7a5
More clippy
2022-02-02 22:10:11 +01:00
Vincent Prouillet
c9442834ed
Make DecodingKey own all the data
...
Closes #120
Supersedes #128
2022-02-02 22:10:11 +01:00
Vincent Prouillet
60c92f2882
Fix clippy
2022-02-02 22:10:11 +01:00
Vincent Prouillet
f50e4901cb
Avoid allocation
2022-02-02 22:10:11 +01:00
Adrian Black
2aad217087
add verify_sig fn ( #161 )
...
* add verify_sig fn
* fix missing comma
* fmt whitespace changes
2022-02-02 22:10:11 +01:00
Vincent Prouillet
d2c8ae3f11
Impl PartialEq for ErrorKind
...
Closes #125
2022-02-02 22:10:11 +01:00
Vincent Prouillet
5c706b005a
Remove deprecated fn
2022-02-02 22:10:11 +01:00
Vincent Prouillet
2c9c57fc4b
Expose get_current_timestamp
...
Closes #152
2022-02-02 22:10:11 +01:00
Vincent Prouillet
30571cafd2
Keep RSA key error message from ring
...
Closes #164
2022-02-02 22:10:11 +01:00
Vincent Prouillet
2662f6ad1f
fmt + clippy
2022-02-02 22:10:11 +01:00
Vincent Prouillet
ea4ed55551
Bytes everywhere for sign/verify
2022-02-02 22:10:11 +01:00
Charles Lehner
4aee8bc382
Add sign and verify on bytes ( #150 )
2022-02-02 22:10:11 +01:00
Charles Lehner
2178cc7506
Add EdDSA (Ed25519) ( #154 )
2022-02-02 22:10:11 +01:00
Vincent Prouillet
445dfe037e
Prepare for v8
2022-02-02 22:10:11 +01:00
Arniu Tseng
2f25cbed0a
Add note about encoding keys ( #163 )
...
* Add note about encoding keys
* Update encoding.rs
* Format code
2020-12-07 16:00:44 +01:00
Piotr Maks
90b9700748
Clippy ( #146 )
...
* Bump minimum required Rust version to 1.40
Motivation for this change is use of `#[non_exhaustive]` attribute that
was stabilized in Rust 1.40.0
* Migrate benchmarks to criterion
Remove use of unstable features in favour of criterion benchmarks
* Enable clippy in Github Actions
* Fix clippy::manual_non_exhaustive
Remove manual implementations of the non-exhaustive pattern. Instead
use the `#[non_exhaustive]` attribute.
* Allow reexport of deprecated function
Silence rustc `deprecated` working in function reexport
* Remove redundant clone
* Fix various clippy warnings
* Remove redundant pattern
* Use `unreachable!()` to fail test
* No need to add `&` to all patterns
2020-08-31 12:04:57 +02:00
Piotr Maks
29aad97739
Format code and check style in Github Actions ( #145 )
2020-08-07 18:10:26 +02:00
Vincent Prouillet
a2c259588a
Mention utc timestamps
2020-06-30 21:26:50 +02:00
Ivan Solovev
98efa500f9
Fix documentation ( #142 )
...
* Fix documentation
* Fix types in documentation
2020-06-30 21:25:41 +02:00
Vincent Prouillet
7a7367361f
Prepare for 7.2.0 ( #143 )
2020-06-30 21:25:25 +02:00
Craig Colegrove
64f276c814
Add new function and tests ( #138 )
...
Co-authored-by: Vincent Prouillet <balthek@gmail.com>
2020-06-30 20:03:53 +02:00
Vincent Prouillet
6262b4700b
Slight tweaks
2020-06-30 19:58:11 +02:00
Craig Colegrove
636c0dc203
Rename dangerous_unsafe_decode to dangerous_insecure_decode ( #139 )
...
* Rename dangerous_unsafe_decode to dangerous_insecure_decode
* Add back old function name with deprecation flag
2020-06-30 19:50:45 +02:00
Vincent Prouillet
952d34c139
v7.1.2
2020-06-16 12:07:08 +02:00
Craig Colegrove
693a100128
Derive Hash for Header and Algorithm ( #137 )
2020-06-16 12:04:22 +02:00
Vincent Prouillet
cf6ac78714
Update for 7.1.1 ( #134 )
2020-06-09 22:00:37 +02:00
Marc Mettke
3cae0df3dd
Updating base64 to 0.12 ( #133 )
2020-06-09 21:50:19 +02:00
Valentin Brandl
09aad3ca2f
Fix Broken chrono Example ( #126 )
...
* Add quickcheck as test dependencie
* Use timestamp nanos
* Add test property for en/decoding
* Fix existing test
* Remove quickcheck dependency
* Normalize `DateTime` values in claims
2020-04-24 19:57:51 +02:00
Vincent Prouillet
fa05ece73c
Prepare for 7.1.0
2020-03-01 19:58:18 +01:00
Vincent Prouillet
d00d2f4e4b
Merge pull request #123 from Hexilee/master
...
fix issue 120: DecodingKey can be converted to static
2020-03-01 19:55:01 +01:00
Hexilee
946aef1b57
revert breaking change of DecodingKey
2020-02-28 15:20:41 +08:00
Hexilee
a750d5586f
fix issue 120: DecodingKey can be converted to static
2020-02-28 01:26:58 +08:00
Vincent Prouillet
cecc353f02
Merge pull request #121 from jareddlc/readme-update
...
Update readme
2020-02-21 09:19:06 +01:00
Jared De La Cruz
179f72155f
Add claims and validation to the readme
2020-02-20 22:56:09 -08:00
Vincent Prouillet
2484d47f7d
v7.0.1
2020-01-30 21:28:00 -08:00
Vincent Prouillet
aae977651c
Merge pull request #117 from fujiapple852/hotfix-display-stack-overflow
...
Fix recursive Display::fmt implementation on Error to avoid stack overflow
2020-01-30 21:26:06 -08:00
FujiApple
2f359b515c
- Fix recursive `Display::fmt` implementation on `Error` to avoid stack overflow
...
- Added unit test to cover a sample case
2020-01-31 13:11:40 +08:00
Vincent Prouillet
e89fa41b7a
Merge pull request #91 from Keats/next
...
7.0.0
2020-01-28 23:00:26 -08:00
Vincent Prouillet
b9989d14cf
Prepare for release
2020-01-28 18:18:21 -08:00
Vincent Prouillet
c2f6093309
Get rid of deprecrated std error description
2020-01-27 20:52:46 -08:00
Vincent Prouillet
1cc14b04eb
Beta 1
2020-01-21 07:41:55 -08:00
Vincent Prouillet
e46f8f9d58
Merge pull request #113 from Keats/keys_struct
...
Add EncodingKey & DecodingKey
2020-01-17 20:18:30 +01:00
Vincent Prouillet
689cc6d32e
Validate key type with algo in encode/decode
2020-01-13 19:41:06 +01:00
Vincent Prouillet
4dd2f12c6d
Remove EncodingKey lifetime
2020-01-02 19:40:53 +01:00
Vincent Prouillet
77ae0effc8
Add DecodingKey
2019-12-29 21:50:06 +01:00
Vincent Prouillet
0abeeac25f
Add EncodingKey
2019-12-29 19:33:17 +01:00
Vincent Prouillet
771f955690
Better GH workflow
2019-11-28 19:28:59 +01:00
Vincent Prouillet
bfcfc1d341
Handle aud not being a sequence
...
Closes #110
2019-11-28 19:27:33 +01:00
Vincent Prouillet
499b439cb0
Wrong badge
2019-11-15 20:39:19 +01:00
Vincent Prouillet
8d678086eb
v7 alpha 1
2019-11-15 20:37:47 +01:00
Vincent Prouillet
1a727f7095
Merge pull request #107 from Keats/pem-handling
...
Add PEM decoding support (#106 )
2019-11-15 20:29:59 +01:00
Vincent Prouillet
d550c5f318
Add more tests and document SEC1 lack of support
2019-11-15 20:16:38 +01:00
Vincent Prouillet
6121db3d07
Min version is 1.36?
2019-11-14 20:35:20 +01:00
Vincent Prouillet
b35719b555
Point to validation example
2019-11-14 20:32:03 +01:00
Vincent Prouillet
3fe0bc1f83
Update README
2019-11-14 20:24:38 +01:00
Vincent Prouillet
dd642bed1d
Use GH actions
2019-11-14 20:02:59 +01:00
Vincent Prouillet
6e8d4a4be6
Remove pem encoding for now
2019-11-14 19:48:38 +01:00
Vincent Prouillet
51dacd9bc4
Update docs
2019-11-14 19:43:43 +01:00
Vincent Prouillet
8e4757cb1d
More refactoring in the crypto mod
2019-11-11 20:29:57 +01:00
Vincent Prouillet
1f6d0ffb2c
Refactor decoding
2019-11-11 20:16:34 +01:00
Vincent Prouillet
8169ee3d9f
Remove chrono from deps
2019-11-11 19:47:35 +01:00
Vincent Prouillet
614f3610a7
Fix stupid bug
2019-11-11 12:08:11 +01:00
Vincent Prouillet
b27981549f
Not working yet jwk decoding
2019-11-09 11:42:40 +00:00
Vincent Prouillet
34ea194179
Move crypto to a dir
2019-11-08 19:00:19 +00:00
Vincent Prouillet
e3632b3a2c
Remove Key approach in favour of &[u8] with pem
2019-11-06 22:32:13 +00:00
Vincent Prouillet
a6ea8c2c1a
clippy + fmt
2019-11-06 18:41:51 +00:00
Vincent Prouillet
382e4478cf
Move pem encoding tests
2019-11-06 18:30:59 +00:00
Levi
53188e1f40
Add functions to create pems and ders of the public keys ( #108 )
2019-11-06 13:58:49 +00:00
Vincent Prouillet
73d96357c3
Simplify header decoding
2019-11-03 16:13:22 +00:00
Vincent Prouillet
417e00780d
Use serde with derive feature
2019-11-03 15:46:08 +00:00
Vincent Prouillet
210e96063d
Reorganise tests
2019-11-03 15:36:19 +00:00
Vincent Prouillet
caef740ad4
Refactoring + more idiomatic enum names
2019-11-03 13:17:04 +00:00
Vincent Prouillet
06bebeaae3
cargo fmt
2019-11-03 12:55:36 +00:00
Vincent Prouillet
b9a3e3086f
Fix Option handling
2019-11-03 12:36:52 +00:00
Levi
571898252f
Add PEM decoding support ( #106 )
...
* Add PEM support with pem and simple_asn1. Documentation TODO
* Make pkcs1 and pkcs8 versions of the RSA key, confirm they pass tests.
* Add documentation, simplify
* Update readme
* Bump pem version
* Remove extra print
2019-11-03 12:22:51 +00:00
Vincent Prouillet
639915f25b
Merge pull request #105 from Dowwie/next
...
Updated aud within Validation, including membership validation testing
2019-11-01 20:06:49 +00:00
dowwie
60a030874a
updated imports in validation.rs
2019-10-31 14:12:08 -04:00
dowwie
68d6c84c8c
revised set_audience, cleaned up validation, and cleared compiler warnings
2019-10-28 11:49:02 -04:00
dowwie
fe10accb6e
markedown edit to changelog
2019-10-27 15:16:43 -04:00
dowwie
0d7184a787
added update to aud type and aud validation
2019-10-27 15:14:52 -04:00
Vincent Prouillet
6e2f461a1b
Fix readme wrt exp validation
...
Closes #104
2019-10-23 13:44:46 +01:00
Vincent Prouillet
88187e0365
Merge pull request #96 from briansmith/b/ring-0.16
...
Use *ring* 0.16.5.
2019-08-11 11:02:26 +02:00
Brian Smith
f7423d075a
Use *ring* 0.16.5.
2019-08-10 11:38:54 -10:00
Vincent Prouillet
10105af2fd
Add support for modulus/exponent
2019-07-13 17:43:44 +02:00