Commit Graph

123 Commits (e350f5ad4ba743bebe3b552dba3a5751ac6fdcb5)

Author SHA1 Message Date
Didactic Drunk e350f5ad4b Chalsa: Provide `::Random` interface 2022-05-12 13:18:17 -07:00
Didactic Drunk 2893c5525d Chalsa: Add key_size/nonce_size as class methods 2022-05-12 10:13:57 -07:00
Didactic Drunk 24c5a4170d Fix Chalsa NONCE_SIZE 2022-05-08 13:21:32 -07:00
Didactic Drunk 5e03d23ed9 Remove #to_slice for keys 2022-05-06 11:29:19 -07:00
Didactic Drunk 475ce2e5c8 Chalsa:
Prefer .random over .new
  Add #decrypt_secret
  Add #decrypt_string
  Optimize #decrypt*
2022-05-03 13:45:38 -07:00
Didactic Drunk ee884e431e Sign: Add .random 2022-04-30 11:23:56 -07:00
Didactic Drunk 5146a383f7 Crypto::Secret
Prefer .random, .move_from, .copy_from
  Optimize #decrypt_string
2022-04-30 11:17:30 -07:00
Didactic Drunk 508dd87b67 Chalsa prefer .random over .new 2022-04-29 12:50:02 -07:00
Didactic Drunk f036295aa3 Sign:
Add `.copy_from` `.move_from` instead of *erase*
  Prefer `.random`
  Deprecate old `.initialize`
2022-04-28 12:17:11 -07:00
Didactic Drunk 98c3a2bff4 Sign experimental combined signatures 2022-04-28 01:54:46 -07:00
Didactic Drunk 24ffdce5c3 Experimental Sign combined mode 2022-04-27 01:04:11 -07:00
Caspian Baska 971edade77
Fix `#encrypt_detached` for crystal 1.2.0 2021-10-20 15:06:17 +11:00
Didactic Drunk b90d9bf117 Sodium::Cipher::Aead::XChaCha20Poly1305IetfL: Add #nonce_size 2021-06-26 17:27:16 -07:00
Didactic Drunk 910666bcdf Internal switch to Crypto::Secret 2021-06-21 17:54:23 -07:00
Didactic Drunk a1706055e1 Internal switch to Crypto::Secret 2021-06-21 02:53:06 -07:00
Didactic Drunk abd43f0a1e Deprecate SecureBuffer#to_slice 2021-06-16 19:50:40 -07:00
Didactic Drunk bd5e89dcd4 Internal switch to Crypto::Secret 2021-06-16 18:19:30 -07:00
Didactic Drunk 0e1b64b1bf Partial internal switch to Crypto::Secret API 2021-06-16 14:50:26 -07:00
Didactic Drunk fca40d7764 Sodium::SecureBuffer is now a Crypto::Secret 2021-06-14 18:15:03 -07:00
Didactic Drunk cd0ce1ccdb Sodium::Nonce Remove redundant used check 2021-06-09 09:05:55 -07:00
Didactic Drunk c75a51c078 Add Sodium::Nonce.random
Improve Nonce used detection
Improve Nonce documentation
2021-06-07 11:05:13 -07:00
Didactic Drunk 6805abd977 Fix Sodium::Password::Key::Create starting memlimit 2021-06-04 07:56:10 -07:00
Didactic Drunk 35fcda70aa SecureBuffer: raise when out of memory 2021-06-02 20:25:28 -07:00
Didactic Drunk 4da95b6398 Document SecureBuffer thread safety 2021-05-28 01:26:27 -07:00
Didactic Drunk 38bd985103 Keep identical state in Sodium::SecureBuffer#dup 2021-05-16 22:42:49 -07:00
Didactic Drunk 3124048a43 Add blake2b_hash to targets 2021-04-25 18:20:42 -07:00
Didactic Drunk b271192465 Document recommended KDF use 2021-03-26 13:56:26 -07:00
Didactic Drunk 1bb746c888 Add KDF.xchacha20poly1305_ietf 2021-03-23 15:52:15 -07:00
Didactic Drunk 0187d06e96 SecureBuffer#wipe with block 2021-03-22 10:23:13 -07:00
Didactic Drunk b79d15c039 Documentation 2021-03-18 19:46:39 -07:00
Didactic Drunk 497af4b401 Formatting changes. 2021-03-18 11:28:32 -07:00
Didactic Drunk f9de09f2d7 crystal backwards compatibility 2021-03-18 11:11:19 -07:00
Ferhat Ziba e68a316e8a upgrade for crystal 0.36.0 2021-01-29 10:42:16 +01:00
Didactic Drunk da188875c4 Generate Sodium::Sign::SecretKey#seed. 2020-07-18 22:49:13 -07:00
Didactic Drunk f0213b88c8 Expose Sodium::Sign::SecretKey#seed. 2020-07-18 22:35:27 -07:00
Didactic Drunk c998625056 Continue #8 2020-07-14 15:52:06 -07:00
Didactic Drunk 3d700b6157 fixes #8. 2020-07-10 17:06:53 -07:00
Didactic Drunk 87d1c12f5b Release 1.2.0 2020-06-28 16:34:24 -07:00
Didactic Drunk 8134714804 Sodium::Digest::Blake2b Log.warn on small key size. 2020-06-28 16:32:52 -07:00
Didactic Drunk f1a225b03b Sodium::Digest::Blake2b Add #hexfinal(dst).
Better specs.
2020-06-28 16:30:17 -07:00
Didactic Drunk a8f716de09 Crystal <= 0.34 backport `final` methods from crystal 0.35.
Crystal = 0.35 use new Digest::Base interface.
Crystal > 0.35 futureport `hexfinal` method.
2020-05-18 23:13:50 -07:00
Didactic Drunk 9a164a0be0 Add Ed25519 and Ristretto c functions. 2020-05-10 14:14:52 -07:00
Didactic Drunk 2c635f529d Remove XChaCha16. 2020-05-10 09:49:06 -07:00
Didactic Drunk ea4fc4e9a6 Fix KEY_SIZE and NONCE_SIZE for non-ietf salsa/chacha ciphers.
Allow dupping various classes.
2019-11-25 06:44:33 -08:00
Didactic Drunk d7f5b6e717 Release 1.1.1
Fix Crystal 0.31 warnings.
2019-11-10 19:12:59 -08:00
Didactic Drunk 61191d96a6 Fix Crystal 0.31 warnings. 2019-11-10 19:07:57 -08:00
Didactic Drunk 59d8d543b2 Fix Crystal 0.31 warnings. 2019-10-28 14:12:03 -07:00
Didactic Drunk f766db7e9e Sodium::SecureBuffer Fix copying noaccess SecureBuffer's. 2019-09-28 08:58:25 -07:00
Didactic Drunk 1e240f70b6 Make Sodium::SecretBox#key public. 2019-09-23 05:15:53 -07:00
Didactic Drunk 551d59865c Release 1.1.0
Sodium::Cipher::Aead::Xchacha20Poly1305Ietf
	New recommended AEAD algorithm.
Sodium::Password
	Create keys based on a time cost.
	Hashing and Key derivation split in to separate classes.
Sodium::*::PublicKey
	JSON and Yaml converters.
Sodium::Cipher::Chalsa
	Add #random_bytes for use as a CSPRNG.
Sodium::Nonce
	Reuse detection.
Sodium::SecureBuffer
	State transitions with exceptions instead of crashes.
Sodium::Kdf
	Use SecureBuffer to keep key unreadable until used.

SecureBuffer uniformly used in most key holding classes with erase param.

More documentation.
More benchmarks.
More specs.
2019-09-17 04:32:13 -07:00