Cléo REBERT
8b5f5c5019
Add CHANGELOG.md
...
Signed-off-by: Cléo REBERT <cleo.rebert-ext@treezor.com>
2022-12-29 14:36:22 +01:00
Cléo REBERT
4a8b2552c7
Add CHANGELOG.md
...
Signed-off-by: Cléo REBERT <cleo.rebert-ext@treezor.com>
2022-12-29 14:35:06 +01:00
Cléo REBERT
b58a666af9
Bump version to 4.0
...
Signed-off-by: Cléo REBERT <cleo.rebert-ext@treezor.com>
2022-12-29 14:16:19 +01:00
Cléo Rebert
cf017a9b67
Zeroize secret
2022-12-22 17:06:52 +01:00
Cléo Rebert
cf6029aaf3
Drop generic support
2022-12-22 16:53:41 +01:00
Cléo Rebert
608b6f2896
Merge pull request #40 from tmpfs/zeroize
...
Support zeroize feature.
2022-12-22 16:40:19 +01:00
constantoine
3f4e1d336a
Merge branch 'master' of github.com:constantoine/totp-rs
2022-11-03 10:29:19 +01:00
constantoine
d5468ef00f
Bump version to 3.1.0
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-11-03 10:28:03 +01:00
Cléo Rebert
45dfa56eb5
Merge pull request #42 from constantoine/better_error_handling
...
Better error handling
2022-11-03 10:06:55 +01:00
constantoine
fb9ada36c2
cargo fmt
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-11-02 11:33:26 +01:00
constantoine
d901803ce5
Better error handling
...
-Implement Display for TOTP
-Make get_qr() Error type be a string
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-11-02 11:32:10 +01:00
constantoine
d241e00fcf
Implement std::error::Error for totp-rs error types
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-11-02 11:29:04 +01:00
muji
28ebb0e97c
Support zeroize feature.
2022-11-02 11:14:18 +08:00
Cléo Rebert
c36b3a9507
Merge pull request #39 from constantoine/add_test_coverage
...
Add coverage for rfc.rs
2022-10-10 11:20:01 +02:00
constantoine
0f917c4aac
Fix warning
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-10-10 11:15:57 +02:00
constantoine
0131d7e077
Cargo fmt
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-10-10 11:12:44 +02:00
constantoine
60514fde9a
Add tests
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-10-10 11:08:40 +02:00
constantoine
9a202c20ec
Fix coverage for secret.rs
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-10-10 10:34:52 +02:00
constantoine
b308f7455d
Add tests for secret.rs
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-10-10 10:22:52 +02:00
constantoine
3f39b3a1ba
Add coverage for rfc.rs
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-10-05 17:32:31 +02:00
Cléo Rebert
d68f1608db
Merge pull request #38 from constantoine/better_style
...
Fix clippy warnings
2022-10-05 12:03:21 +02:00
constantoine
0f0e7d6032
Cargo fmt
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-10-05 11:55:37 +02:00
constantoine
4d9e41ee68
Fix clippy warnings
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-10-05 11:45:21 +02:00
Cléo Rebert
fd1ee7f517
Merge pull request #34 from alexanderkjall/replace-sha-1-with-sha1
...
replace the sha-1 crate with sha1
2022-10-05 11:27:22 +02:00
Cléo Rebert
48fe98c0dd
Merge branch 'replace-sha-1-with-sha1' of github.com:alexanderkjall/totp-rs into replace-sha-1-with-sha1
2022-10-05 11:22:21 +02:00
Alexander Kjäll
27a27d8002
replace the sha-1 crate with sha1, as RustCrypto have migrated to the new crate name, ref https://github.com/RustCrypto/hashes#crate-names
2022-10-05 11:21:56 +02:00
Cléo Rebert
fd52f4a6c5
Merge pull request #37 from constantoine/raw_canvas
...
Fix QR unit tests
2022-10-05 11:17:25 +02:00
constantoine
edf3db0263
Add raw canvas private method in order to test the canvas raw data, and not the encoded png data
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-10-04 16:41:50 +02:00
Alexander Kjäll
a9ebfdc6e6
replace the sha-1 crate with sha1, as RustCrypto have migrated to the new crate name, ref https://github.com/RustCrypto/hashes#crate-names
2022-10-01 16:54:01 +02:00
Cléo Rebert
d0b60892b2
Merge pull request #32 from constantoine/coverage
...
Changed coverage tools to better represent coverage
2022-08-26 10:49:48 +02:00
constantoine
ec0e7f3625
Fix rust.yml
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-08-26 10:44:46 +02:00
constantoine
28d72bc368
Download grcov instead of recompiling
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-08-26 10:41:36 +02:00
constantoine
03188bfd5b
Changed coverage tools to better represent coverage
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-08-26 10:33:14 +02:00
Cléo Rebert
fcd90cf76f
Merge pull request #31 from constantoine/constantoine-patch-1
...
Update tarpaulin version
2022-08-26 10:02:42 +02:00
Cléo Rebert
65214998e9
Update tarpaulin version
...
Tarpaulin is the tool used for coverage
2022-08-26 09:58:28 +02:00
Cléo Rebert
2807545153
Merge pull request #30 from Dev380/patch-1
...
Fixed spelling in README.md
2022-08-26 09:55:05 +02:00
Dev380
6498e55208
Fixed spelling in README.md
...
It should be "summary" not "summarry"
2022-08-25 23:47:41 +00:00
Cléo Rebert
26416df28b
Fix totp_url export
...
* base32 unexported
* Secret comparison is now constant_time
2022-08-13 11:23:03 +02:00
Cléo Rebert
5abd752db8
Merge pull request #28 from constantoine/refinement
...
Make otpauth fields optionnal
2022-08-09 11:22:36 +02:00
constantoine
b6295ae878
Fix doc tests
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-08-09 11:13:55 +02:00
Cléo Rebert
7a3967f9a9
Fix Workflow
2022-08-09 11:09:46 +02:00
constantoine
537350ad8b
Prepare for release and update Workflow
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-08-09 11:06:25 +02:00
constantoine
994efb7214
Updated README and added a summary with updated examples
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-08-09 11:06:07 +02:00
constantoine
cd903afbd7
Make otpauth fields only appear with otpauth feature
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-08-09 11:05:36 +02:00
constantoine
0103e7a6e5
Add test to secret.rs
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-08-09 11:04:11 +02:00
Cléo Rebert
6b9f13f6a2
Merge pull request #25 from steven89/secret
...
Improve secret handling
2022-08-08 20:54:16 +02:00
Steven Salaun
991a07bb8f
fix doc example
2022-08-08 20:50:09 +02:00
Steven Salaun
ab7bde0866
Merge branch 'master' into secret
2022-08-08 20:28:51 +02:00
Cléo Rebert
2207859e2c
Merge pull request #27 from constantoine/error_handling
...
Refactor error handling
2022-08-08 20:26:55 +02:00
constantoine
e5f152210a
test formatter
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-08-08 20:23:24 +02:00
Steven Salaun
584b7aa8a7
Merge branch 'secret' of github.com:steven89/totp-rs into secret
2022-08-08 20:19:07 +02:00
Steven Salaun
3d61027d52
Change Secret: Plain to Raw & Base32 to Encoded
2022-08-08 20:19:04 +02:00
Steven Salaun
ba130aaafc
Merge branch 'master' into secret
2022-08-08 20:15:31 +02:00
constantoine
8e890ac14d
Refactor error handling
...
Closes #23
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-08-08 19:52:54 +02:00
Cléo Rebert
2cb5ec2b7a
Merge pull request #26 from steven89/rfc
...
Rfc6238 struct
2022-08-08 17:56:32 +02:00
Steven Salaun
fe2363c77b
TOTP::new checks digits value compliance to rfc
2022-08-08 17:30:27 +02:00
Steven Salaun
eb9b04433f
fix build for serde_support feature
2022-08-08 14:17:23 +02:00
Steven Salaun
fcfebe1417
clippy
2022-08-08 14:10:39 +02:00
Cléo Rebert
f3719db878
Merge pull request #24 from steven89/ttl
...
add `ttl` to TOTP
2022-08-08 11:44:21 +02:00
Steven Salaun
f65a2e840a
add `Secret` enum & `gen_secret` feature
...
- Make the distinction between encoded/non-encoded secret clear,
and allows for easy transformation betwen the two formats
- add `gen_secret` feature to allow easy generation of CSPRNG secret,
also add function to generate rfc recommended length secret
2022-08-06 23:04:50 +02:00
Steven Salaun
3bdb91fad7
clarifies doc for `secret`: should be non-encoded
2022-08-06 22:58:57 +02:00
Steven Salaun
40196c5ed9
add `ttl` to TOTP
2022-08-06 17:49:40 +02:00
Steven Salaun
6623af9d3e
Rfc6238 struct
2022-08-06 17:31:11 +02:00
Cléo Rebert
181d17edcc
Merge pull request #22 from constantoine/21-bug-issuer-error
...
Fix url related bugs
2022-06-16 11:56:00 +02:00
constantoine
263299be14
Fix url related bugs
...
* Bug where your issuer would be incorrectly prefixed with a /, and comparison with the issuer parameter would fail
* Bug where the issuer and account name in path would not be correctly url decoded in path, but correctly decoded in url query
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-06-16 11:48:34 +02:00
Cléo Rebert
e8ba6fe083
Merge pull request #20 from constantoine/v2
...
V2
2022-05-30 21:59:27 +02:00
constantoine
4f32055d8b
Add next_step and next_step_current methods
...
Signed-off-by: constantoine <cleo.rebert-ext@treezor.com>
2022-05-20 17:43:39 +02:00
constantoine
ff6f562ab7
The return of otpauth
...
Signed-off-by: constantoine <cleo.rebert@gmail.com>
2022-05-20 15:00:12 +02:00
Cléo Rebert
eba97c0ffa
Finish work on v2
...
Signed-off-by: constantoine <cleo.rebert@gmail.com>
2022-05-15 13:41:19 +02:00
constantoine
d6d08b1a1e
Start working on v2
...
Signed-off-by: constantoine <cleo.rebert@gmail.com>
2022-05-13 14:06:25 +02:00
constantoine
a3b51eea3d
Update version
...
Signed-off-by: constantoine <cleo.rebert@gmail.com>
2022-05-06 15:42:55 +02:00
constantoine
1010772cfb
Update license
...
Signed-off-by: constantoine <cleo.rebert@gmail.com>
2022-05-06 15:41:47 +02:00
Cléo Rebert
49f672d4a3
Merge pull request #19 from wyhaya/master
...
Add TOTP::from_url
2022-05-06 15:33:51 +02:00
wyhaya
905a119c10
Update README
2022-05-06 20:49:33 +08:00
wyhaya
3233669847
Add TOTP::from_url
2022-05-06 20:36:43 +08:00
Cléo Rebert
733c27970e
Merge pull request #18 from constantoine/add_tests
...
Add tests for generate_current and check_current
2022-05-06 12:46:00 +02:00
constantoine
6c19202404
Add tests for generate_current and check_current
...
Also updated docs to reflect those changes
Signed-off-by: constantoine <cleo.rebert@gmail.com>
2022-05-06 12:41:30 +02:00
Cléo Rebert
2c75d046ec
Merge pull request #17 from wyhaya/master
...
Support generating and checking token from the current system time
2022-05-06 12:10:45 +02:00
wyhaya
1e54605808
Add check_current
2022-05-06 17:55:31 +08:00
wyhaya
d54f86592c
Support generate token from the current time
2022-05-06 17:35:49 +08:00
constantoine
64225f5acd
Disable image default features
...
Signed-off-by: constantoine <cleo.rebert@gmail.com>
2022-05-05 12:48:52 +02:00
Cléo Rebert
1f10c8c738
Merge pull request #16 from constantoine/change_qr_lib
...
Switch to qrcodegen, and update image dependency
2022-05-05 12:10:13 +02:00
constantoine
9b541817a3
Up version
...
Signed-off-by: constantoine <cleo.rebert@gmail.com>
2022-05-05 12:03:41 +02:00
constantoine
bacf1c4fb4
Switch to qrcodegen, and update image dependency
...
Signed-off-by: constantoine <cleo.rebert@gmail.com>
2022-05-05 12:00:30 +02:00
Cléo Rebert
7ecdf7d440
Merge pull request #15 from constantoine/constant_time_eq
...
Add constant-time token comparison and partialEq trait
2022-04-24 16:48:30 +02:00
Cleo Rebert
1f1e1a6fe7
Add constant-time token comparison and partialEq trait
...
Add PartialEq for TOTP<T> and PartialEq+Eq for Algorithm
2022-04-24 16:41:56 +02:00
constantoine
ba925c2442
Update to 1.0
...
Signed-off-by: constantoine <cleo.rebert@gmail.com>
2022-04-15 15:08:41 +02:00
Cléo Rebert
0f245d26cc
Merge pull request #12 from ironhaven/patch-1
...
Use last byte of HMAC output for truncating
2022-04-08 20:31:05 +02:00
ironhaven
c30d02b512
Use last byte of HMAC output for truncating
...
This is to use the least significant byte of the HMAC regardless of size. RFC 6328 (TOTP) Section 1.2 says you can use SHA-1 SHA-256 or SHA-512 with the same algorithm of RFC 4226 (HTOP). This seems ok until you realize that all the new HMACs have different output sizes and HTOP only expects a 20 byte fixed MAC. It is not completely clear if RFC 4226 Section 5.3 means "get the bottom 4 bits from byte at offset 19" or "get the 4 least significant bits". Other implementations (6568c1a83a/src/pyotp/otp.py (L28)
) and Wikipedia read the "Dynamic Truncation" algorithm to be the last 4 bits of the MAC, so I think this implementation should follow the others.
2022-03-07 23:10:31 -06:00
constantoine
d1d6fc0411
Bump version
2022-02-10 11:25:41 +01:00
Cléo Rebert
4ef27bd616
Merge pull request #11 from tmpfs/doc-comment-warning
...
Warn about silent fallback to SHA1
2022-02-10 10:37:40 +01:00
Cléo Rebert
8db59df6c8
Update README.md
2022-02-10 10:34:28 +01:00
muji
9888507d16
Add notes to doc comments.
2022-02-10 17:00:33 +08:00
constantoine
4b486b5aa6
Removed byteorder dependency
2022-01-20 17:58:27 +01:00
constantoine
2ed419a83e
Merge branch 'master' of github.com:constantoine/totp-rs
2022-01-13 22:04:34 +01:00
Cléo Rebert
b68dd87ce2
Hash refactor
2022-01-13 21:52:55 +01:00
Cléo Rebert
79b714aeaa
Update README.md
2022-01-13 18:33:59 +01:00
Cléo Rebert
f2fb6ae53f
Update security.yml
2022-01-13 18:33:33 +01:00
Cléo Rebert
c111632726
Update security.yml
2022-01-13 18:26:45 +01:00
Cléo Rebert
052531694f
Update rust.yml
2022-01-13 18:19:34 +01:00