]> git.codecow.com Git - Monocypher.git/log
Monocypher.git
8 years agoTested Argon2i API consistency (general vs easy)
Loup Vaillant [Thu, 22 Mar 2018 20:44:33 +0000 (21:44 +0100)]
Tested Argon2i API consistency (general vs easy)

8 years agoTested the incremental API of EdDSA
Loup Vaillant [Thu, 22 Mar 2018 20:15:44 +0000 (21:15 +0100)]
Tested the incremental API of EdDSA

Bugs were unlikely, but you never know.

8 years agoAdded a test vector for Argon2i
Loup Vaillant [Thu, 22 Mar 2018 12:30:21 +0000 (13:30 +0100)]
Added a test vector for Argon2i

Libsodium's API doesn't let the user specify the `key` and `ad`
arguments.  An implementation that flips them by mistake would still
pass the test vectors.

So I added a test vector from the reference implementation (hard coded,
to avoid dragging the whole reference implementation with us).  With
that, we're sure `key` and `ad` are processed in the right order.

It wouldn't have affected security, but due diligence can't hurt.

8 years agoMerge pull request #92 from SgtCoDFish/master
Loup Vaillant [Thu, 22 Mar 2018 13:45:45 +0000 (14:45 +0100)]
Merge pull request #92 from SgtCoDFish/master

Fix copy-paste mistake in intro docs

8 years agoFix copy-paste mistake in intro docs
Ashley Davis [Wed, 21 Mar 2018 13:36:46 +0000 (13:36 +0000)]
Fix copy-paste mistake in intro docs

8 years agoUpdated changelog
Loup Vaillant [Wed, 7 Mar 2018 19:44:24 +0000 (20:44 +0100)]
Updated changelog

8 years agoA little space around the test message
Loup Vaillant [Wed, 7 Mar 2018 19:20:01 +0000 (20:20 +0100)]
A little space around the test message

8 years agoMore auditable code for Poly1305
Loup Vaillant [Tue, 6 Mar 2018 22:34:24 +0000 (23:34 +0100)]
More auditable code for Poly1305

The invariants in the comments have been updated, and a couple minor
errors of no consequence were corrected.

The final reduction code of crypto_poly1305_final() has been modified to
facilitate audits and formal proofs.  This was motivated by the
following semi-formal proof:

  https://monocypher.org/poly1305-proof

8 years agoMore readable and more flexible loading code
Loup Vaillant [Sun, 25 Feb 2018 20:00:46 +0000 (21:00 +0100)]
More readable and more flexible loading code

The loading code for Chacha20, Poly1305, Blake2b, and SHA-512 was a bit
ad-hoc.  This made it a bit impenetrable, as well as error prone.
Chacha20 in particular was harder than it should be to adapt to faster
implementation that proceed by several blocks at a time.  So was
Poly1305, I think.

The loading code has been modified to conform to the following pattern:

1. Align ourselves with block boundaries
2. Process the message block by block
3. remaining bytes

- The last section just calls general purpose update code. It's the only
  one that's mandatory.

- The first section calls the same general purpose update code, with
  just enough input to reach the next block boundary.  It must be
  present whenever the second section is.

- The second section does optimised block-by-block update.  It needs the
  first section to ensure alignment.

Each section but the last updates the input pointers and lengths,
allowing later sections may assume they were the first.

Tests were performed with sections 1 2 3, 1 3, and 3 alone.  They all
yield the same, correct results.  We could write an equivalence proof,
but the property-based tests were designed to catch mistakes in the
loading code in the first place.  Maybe not worth the trouble.

8 years agoCosmetic: space after FOR
Loup Vaillant [Sat, 24 Feb 2018 15:41:08 +0000 (16:41 +0100)]
Cosmetic: space after FOR

8 years agoStrength reduction for Chacha20
Loup Vaillant [Sat, 24 Feb 2018 14:46:49 +0000 (15:46 +0100)]
Strength reduction for Chacha20

The performance gain is tiny, but measurable.

8 years agoCosmetic: put else and braces in the same line
Loup Vaillant [Sat, 24 Feb 2018 14:42:25 +0000 (15:42 +0100)]
Cosmetic: put else and braces in the same line

8 years agoRemoved allways-true conditional
Loup Vaillant [Sat, 24 Feb 2018 14:39:44 +0000 (15:39 +0100)]
Removed allways-true conditional

8 years agoAdded dates in the changelog
Loup Vaillant [Thu, 22 Feb 2018 20:55:46 +0000 (21:55 +0100)]
Added dates in the changelog

Fixes #90

8 years agowrong symlink in the documentation
Loup Vaillant [Wed, 14 Feb 2018 23:02:53 +0000 (00:02 +0100)]
wrong symlink in the documentation

8 years agoFacilitated the test suite
Loup Vaillant [Wed, 14 Feb 2018 22:43:12 +0000 (23:43 +0100)]
Facilitated the test suite

8 years agoMore readable Chacha20 quarter rounds
Loup Vaillant [Wed, 14 Feb 2018 19:37:25 +0000 (20:37 +0100)]
More readable Chacha20 quarter rounds

8 years agoRemoved redundant explanation
Loup Vaillant [Wed, 14 Feb 2018 19:32:53 +0000 (20:32 +0100)]
Removed redundant explanation

Pointing to RFC 7539 was enough.

8 years agoExplained AEAD with informal text instead of code
Loup Vaillant [Tue, 13 Feb 2018 22:02:04 +0000 (23:02 +0100)]
Explained AEAD with informal text instead of code

Related to #89

This is more verbose, but also more approachable.

8 years agoForgot to rename symlinks
Loup Vaillant [Tue, 13 Feb 2018 22:01:47 +0000 (23:01 +0100)]
Forgot to rename symlinks

8 years agoUse crypto_unlock_ctx for crypto_unlock*()
Loup Vaillant [Tue, 13 Feb 2018 20:32:24 +0000 (21:32 +0100)]
Use crypto_unlock_ctx for crypto_unlock*()

8 years agoExplicited the re-use of crypto_sign_update()
Loup Vaillant [Tue, 13 Feb 2018 20:29:32 +0000 (21:29 +0100)]
Explicited the re-use of crypto_sign_update()

8 years agoRemoved deprecated alias
Loup Vaillant [Tue, 13 Feb 2018 20:26:44 +0000 (21:26 +0100)]
Removed deprecated alias

8 years agopreserve symlinks upon installation
Loup Vaillant [Tue, 13 Feb 2018 20:23:07 +0000 (21:23 +0100)]
preserve symlinks upon installation

8 years agoAligned tarball-ignore to .gitignore
Loup Vaillant [Mon, 12 Feb 2018 22:17:34 +0000 (23:17 +0100)]
Aligned tarball-ignore to .gitignore

8 years agoAdded changelog
Loup Vaillant [Mon, 12 Feb 2018 22:15:44 +0000 (23:15 +0100)]
Added changelog

8 years agoBumped soname (libmonocypher.so.2)
Loup Vaillant [Mon, 12 Feb 2018 20:52:30 +0000 (21:52 +0100)]
Bumped soname (libmonocypher.so.2)

Related to #89

Also provides a `libmonocypher.so` symbolic link.  Removes every shared
libraries and symbolic links upon uninstallation.

Note: this bump should have happened earlier, for version 1.1.0, whose
ABI is incompatible with 1.0.1.  Sorry.

8 years agoRenamed crypto_aead_(un)lock to crypto_(un)lock_aead
Loup Vaillant [Mon, 12 Feb 2018 20:25:59 +0000 (21:25 +0100)]
Renamed crypto_aead_(un)lock to crypto_(un)lock_aead

Related to #89

This is better for consistency (now authenticated encryption always
begins by "crypto_lock" or "crypto_unlock"), and has the added benefit
of warning developers of the major breaking changes triggered by IETF
padding.

8 years agoupdated formal analysis copy script
Loup Vaillant [Mon, 12 Feb 2018 20:18:19 +0000 (21:18 +0100)]
updated formal analysis copy script

8 years agoAdded speed benchmark for TweetNaCl
Loup Vaillant [Sun, 11 Feb 2018 23:06:41 +0000 (00:06 +0100)]
Added speed benchmark for TweetNaCl

Now if anyone criticises the speed of Monocypher, we can teach them what
"slow" really means.

8 years agoRemoved divison operations
Loup Vaillant [Sat, 10 Feb 2018 19:16:22 +0000 (20:16 +0100)]
Removed divison operations

This has no effect on most platform with most modern compiler, and makes
the code slightly less readable to boot.

But.

Some compilers may fail to transform divisions by a power of two into
the relevant shift or mask.  Moreover, some platforms sport a variable
time division operation.

In the name of safety against timing attacks, those operation have been
removed explicitly.  Only one remains, in Argon2i, but its operands are
not secret.

8 years agoremoved ugly parentheses
Loup Vaillant [Sat, 10 Feb 2018 18:58:26 +0000 (19:58 +0100)]
removed ugly parentheses

8 years agoChanged authenticated encryptio to match RFC 7539
Loup Vaillant [Sat, 10 Feb 2018 18:25:28 +0000 (19:25 +0100)]
Changed authenticated encryptio to match RFC 7539

Closes #87

This is a breaking change.  For data in transit, update everyone at
once.  For data at rest, decrypt then re-encrypt everything.  Sorry
about that.  I should have thought this through earlier.

The main reason for this change is speed.  While Monocypher doesn't aim
to be as fast as possible itself, it *does* aim to allow upgrades.  By
ensuring that processing is aligned to block boundaries, RFC 7539
simplifies the implementation of fast algorithms.

This change brings the following benefits:

- Users who need the best speed possible ever can upgrade.
- The length of the additional data is now authenticated, closing a
  potential minor vulnerability.
- We can use Libsodium's crypto_aead_xchacha20poly1305_ietf_encrypt to
  generate test vectors.

---

The monolithic interface stays the same.  Function names, types, and
buffer sizes, are identical.  Just recompile your programs to upgrade.

The incremental interface has been changed to be more orthogonal:

`crypto_lock_encrypt()` and `crypto_lock_auth()` have been removed.
There shall be one true AEAD construction, users don't need those
building blocks.  Users who *really* need another AEAD construction can
write it themselves with the low-level primitives.

`crypto_lock_aead_auth()` and `crypto_unlock_aead_auth()` have been
renamed `crypto_lock_auth_ad()` and `crypto_unlock_auth_ad()`
respectively. "aead" was a misnomer, those functions only authenticate
additional data.

`crypto_lock_auth_message()` and `crypto_unlock_auth_message()` have
been added. They authenticate the cipher text. Their main use is
performing a separate authentication pass (usefull when users expect a
high corruption rate).

8 years agoPrettier WIPE_BUFFER() calls
Loup Vaillant [Fri, 9 Feb 2018 21:10:18 +0000 (22:10 +0100)]
Prettier WIPE_BUFFER() calls

8 years agoLess provocative introductory paragraph
Loup Vaillant [Fri, 9 Feb 2018 20:58:27 +0000 (21:58 +0100)]
Less provocative introductory paragraph

Some people interpret the previous wording to mean that Monocypher
already eats Libsodium's lunch, which is obviously false.  Status
slap-down ensues, and I have to explain the difference between "means to"
and "does".

This also hints more clearly at the scope of Monocypher: do no more than
TweetNacl (except for password key derivation), stay small and portable
without sacrificing too much speed. (That scope may need to be clearly
stated somewhere.)

8 years agoBetter wording for Poly1305 security considerations
Loup Vaillant [Wed, 7 Feb 2018 22:55:51 +0000 (23:55 +0100)]
Better wording for Poly1305 security considerations

Fixes #84.  I hope.

Some users *will* use Poly1305 for who knows what nefarious purpose I
haven't anticipated.  This is why we expose low-level primitives in the
first place.

This may sound bikeshed-y, but Poly1305 is quite exacting.  Not as bad
as AES-GCM from what I've heard, but close.  So the manual must be
precise and unambiguous.

8 years agoMore accurate speed benchmark
Loup Vaillant [Sat, 3 Feb 2018 22:22:25 +0000 (23:22 +0100)]
More accurate speed benchmark

Used smaller buffers to minimise the impact of cache misses in the
benchmark.  Chosen a size that makes Libsodium and Monocypher look best.
(There is a trade-off between start up time and throughput.)

This should highlight the algorithmic differences better.  Still, the
memory access patterns are very clean, computation tends to dominate.
Ultimately, this makes little difference.

8 years agoComment nitpick about test vectors.
Loup Vaillant [Wed, 31 Jan 2018 17:40:59 +0000 (18:40 +0100)]
Comment nitpick about test vectors.

We no longer need SHA-512 for the Ed25519 test vectors, since we now
generate EdDSA/Blake2b test vectors with the Donna implementation.

8 years agoHTTP freaking S links
Loup Vaillant [Tue, 30 Jan 2018 21:27:25 +0000 (22:27 +0100)]
HTTP freaking S links

8 years agoIncrease documentation accessibility from the GitHub repository
Loup Vaillant [Tue, 30 Jan 2018 20:42:49 +0000 (21:42 +0100)]
Increase documentation accessibility from the GitHub repository

Fixes #83

Help the poor user by linking the hell out of https://monocypher.org/.
Users are supposed to use the official releases, not the repository.

Generated files in the repository are ugly.  They would displease the
Dictator.  So, nope.

8 years agoAdded official Poly1305 test vector
Loup Vaillant [Mon, 29 Jan 2018 18:23:49 +0000 (19:23 +0100)]
Added official Poly1305 test vector

From rfc7539, section 2.5.  I orginally only sourced from appendix A.3,
but there's no reason why we shouldn't also include this.

Section A.5 however would take some manual tweaking.  Let's not.

8 years agoFixed small undefined behaviour in tests
Loup Vaillant [Sun, 28 Jan 2018 23:36:24 +0000 (00:36 +0100)]
Fixed small undefined behaviour in tests

Apparently we cannot memcmp() null pointers, even when the size is zero.

8 years agoFixed erroneous crypto_wipe() calls
Loup Vaillant [Sun, 28 Jan 2018 23:31:00 +0000 (00:31 +0100)]
Fixed erroneous crypto_wipe() calls

And used convenience macros in the process, depending on whether we wipe
a buffer or a structure (generally a context).  The redundancy led to
some errors, which should be fixed by now.

8 years agoFixed buffer overflow (wipe too big)
Loup Vaillant [Sun, 28 Jan 2018 22:51:43 +0000 (23:51 +0100)]
Fixed buffer overflow (wipe too big)

8 years agoSpeed benchmark Mb/s -> megabytes per second
Loup Vaillant [Sun, 28 Jan 2018 16:07:39 +0000 (17:07 +0100)]
Speed benchmark Mb/s -> megabytes per second

8 years agoApplied @CuleX's and @mikesavage's advice
Loup Vaillant [Sun, 28 Jan 2018 12:21:45 +0000 (13:21 +0100)]
Applied @CuleX's and @mikesavage's advice

Also reordered some blocks in Argon2i. (Putting the additional arguments
at the very end was my intention all along, but I somehow failed to do
it).

8 years agoREADME.md bikeshedding
Loup Vaillant [Sat, 27 Jan 2018 23:18:51 +0000 (00:18 +0100)]
README.md bikeshedding

8 years agoRemoved known sources from README.md
Loup Vaillant [Sat, 27 Jan 2018 23:08:18 +0000 (00:08 +0100)]
Removed known sources from README.md

Those are listed in http://monocypher.org

8 years agoDescribed key and ad arguments in a separate list
Loup Vaillant [Sat, 27 Jan 2018 22:50:15 +0000 (23:50 +0100)]
Described key and ad arguments in a separate list

Suggested by @mikejsavage
Related to #58

8 years agoChanged official site
Loup Vaillant [Sat, 27 Jan 2018 18:57:02 +0000 (19:57 +0100)]
Changed official site

Related to #82

8 years agoDocumented aliases
Loup Vaillant [Sat, 27 Jan 2018 18:54:44 +0000 (19:54 +0100)]
Documented aliases

Related to #80

8 years agotypo
Loup Vaillant [Fri, 26 Jan 2018 17:39:47 +0000 (18:39 +0100)]
typo

8 years agoslightly bigger font for the manual
Loup Vaillant [Fri, 26 Jan 2018 14:08:52 +0000 (15:08 +0100)]
slightly bigger font for the manual

8 years agoSHA-512: hoisted w[] out of the round function
Loup Vaillant [Mon, 22 Jan 2018 21:38:05 +0000 (22:38 +0100)]
SHA-512: hoisted w[] out of the round function

This avoids wiping w[] for each block, and reclaims the speed
we lost in the previous commit.  It's also simpler.

8 years agoWipes SHA-512 internal buffers.
Loup Vaillant [Sun, 14 Jan 2018 17:35:20 +0000 (18:35 +0100)]
Wipes SHA-512 internal buffers.

We lose some performance this way, and this may be overkill. Still, I'd
rather take the performance hit than risk a vulnerability.

8 years agoadded sha512 speed benchmark
Loup Vaillant [Sun, 14 Jan 2018 17:34:30 +0000 (18:34 +0100)]
added sha512 speed benchmark

8 years agoMore concise Chacha20
Loup Vaillant [Sun, 14 Jan 2018 12:42:38 +0000 (13:42 +0100)]
More concise Chacha20

Partially reverts the optimisation from d1be682.  Hoisting the test out
of the loop entirely was overkill.  One level is sufficient, pushing it
any further has negligible impact.

8 years agoMore stringent tests for chacha20_stream
Loup Vaillant [Sun, 14 Jan 2018 12:42:22 +0000 (13:42 +0100)]
More stringent tests for chacha20_stream

8 years agoArgon2i: hoisted temporaries out of loops
Loup Vaillant [Thu, 11 Jan 2018 17:43:18 +0000 (18:43 +0100)]
Argon2i: hoisted temporaries out of loops

8 years agoOptimised chacha20 loading & unloading
Loup Vaillant [Thu, 11 Jan 2018 17:35:07 +0000 (18:35 +0100)]
Optimised chacha20 loading & unloading

Testing inside the loop caused a noticeable slow down.  Now the whole
thing looks kinda like a copy-pasta job, but the alternative was a less
readable data flow anyway.

8 years agoAdds high-level aliases to some low-level primitives
Loup Vaillant [Thu, 11 Jan 2018 16:55:37 +0000 (17:55 +0100)]
Adds high-level aliases to some low-level primitives

Some low-level primitives are actually suitable as high-level functions.
However, using them as such makes naming inconsistent and confusing.
Proper aliases have been added to make user code more consistent.

Macros (#define) have been used instead of function pointers to avoid
various compilation problems.

8 years agoWipe ALL temporary buffers
Loup Vaillant [Thu, 11 Jan 2018 16:23:20 +0000 (17:23 +0100)]
Wipe ALL temporary buffers

Fixed #15

I missed many buffers for some reason.  The fix affects performance in
some cases (especially Argon2i).  We should be able to recover most of
it.

8 years agoMade the header more suitable as a quick reference
Loup Vaillant [Sun, 7 Jan 2018 18:53:49 +0000 (19:53 +0100)]
Made the header more suitable as a quick reference

Some people won't read the manual.  Others will read it, then forget it.
Almost no one remembers the API perfectly â€”not even I.

8 years agoremoved useless check
Loup Vaillant [Sat, 6 Jan 2018 12:46:05 +0000 (13:46 +0100)]
removed useless check

If the public key is not in the curve, the verification will simply
fail.  There is little point verifying the validity of a signing public
key, since you have to trust its origin in the first place.

8 years agolow-level primitives warnings in the header
Loup Vaillant [Sat, 6 Jan 2018 12:39:56 +0000 (13:39 +0100)]
low-level primitives warnings in the header

Fixes #78

8 years agoMerge pull request #76 from mikejsavage/moremanualtweaks
Loup Vaillant [Fri, 5 Jan 2018 10:50:25 +0000 (11:50 +0100)]
Merge pull request #76 from mikejsavage/moremanualtweaks

More manual tweaks

8 years agoMore .Fa, more "Length of"
Michael Savage [Thu, 4 Jan 2018 20:27:15 +0000 (22:27 +0200)]
More .Fa, more "Length of"

8 years agoUse "Length of .Fa x , in bytes."
Michael Savage [Wed, 3 Jan 2018 20:55:06 +0000 (22:55 +0200)]
Use "Length of .Fa x , in bytes."

8 years agoturned test utils into header only
Loup Vaillant [Tue, 2 Jan 2018 23:10:04 +0000 (00:10 +0100)]
turned test utils into header only

Simplifies the makefiles a bit

8 years agoFactored speed tests
Loup Vaillant [Tue, 2 Jan 2018 22:59:05 +0000 (23:59 +0100)]
Factored speed tests

8 years agospeed-sodium uses utils
Loup Vaillant [Tue, 2 Jan 2018 22:47:10 +0000 (23:47 +0100)]
speed-sodium uses utils

8 years agoremoved monocypher dependency from utils.h
Loup Vaillant [Tue, 2 Jan 2018 22:43:42 +0000 (23:43 +0100)]
removed monocypher dependency from utils.h

8 years agoCredit where credit's due (take 2)
Loup Vaillant [Tue, 2 Jan 2018 18:06:38 +0000 (19:06 +0100)]
Credit where credit's due (take 2)

8 years agoCredit where credit's due
Loup Vaillant [Tue, 2 Jan 2018 18:03:20 +0000 (19:03 +0100)]
Credit where credit's due

8 years agoWrong path in the readme
Loup Vaillant [Sat, 30 Dec 2017 19:33:49 +0000 (20:33 +0100)]
Wrong path in the readme

8 years agoSpeed benchmark for libsodium
Loup Vaillant [Sat, 30 Dec 2017 19:24:25 +0000 (20:24 +0100)]
Speed benchmark for libsodium

8 years agoMerge pull request #77 from CuleX/master+prototypes
Loup Vaillant [Mon, 1 Jan 2018 20:00:22 +0000 (21:00 +0100)]
Merge pull request #77 from CuleX/master+prototypes

Fix wrong or missing const in man pages

8 years agoUse Fo/Fa/Fc in synopsis blocks
Michael Savage [Mon, 1 Jan 2018 14:27:19 +0000 (14:27 +0000)]
Use Fo/Fa/Fc in synopsis blocks

8 years agoFix wrong or missing const in man pages
CuleX [Mon, 1 Jan 2018 14:09:49 +0000 (15:09 +0100)]
Fix wrong or missing const in man pages

8 years agoAvoid :
Michael Savage [Mon, 1 Jan 2018 13:44:06 +0000 (13:44 +0000)]
Avoid :

8 years agoMore manual tweaks
Michael Savage [Mon, 1 Jan 2018 13:37:15 +0000 (13:37 +0000)]
More manual tweaks

8 years agoMerge pull request #75 from mikejsavage/miscmanualtweaks
Loup Vaillant [Sat, 30 Dec 2017 11:13:32 +0000 (12:13 +0100)]
Merge pull request #75 from mikejsavage/miscmanualtweaks

Misc manual tweaks

8 years agoApply Loup's feedback
Michael Savage [Sat, 30 Dec 2017 11:04:16 +0000 (11:04 +0000)]
Apply Loup's feedback

8 years agoMisc manual tweaks
Michael Savage [Fri, 29 Dec 2017 23:56:40 +0000 (23:56 +0000)]
Misc manual tweaks

8 years agoManual: reset dates (#58)
Loup Vaillant [Thu, 28 Dec 2017 15:42:36 +0000 (16:42 +0100)]
Manual: reset dates (#58)

8 years agoManual: examples (#58)
Loup Vaillant [Thu, 28 Dec 2017 15:31:34 +0000 (16:31 +0100)]
Manual: examples (#58)

8 years agoManual: Applying CuleX's advice
Loup Vaillant [Sun, 24 Dec 2017 09:43:14 +0000 (10:43 +0100)]
Manual: Applying CuleX's advice

8 years agoManual: xx byte => xx-byte
Loup Vaillant [Sun, 24 Dec 2017 09:20:51 +0000 (10:20 +0100)]
Manual: xx byte => xx-byte

8 years agoManual: add missing args blocks
Loup Vaillant [Sat, 23 Dec 2017 11:38:01 +0000 (12:38 +0100)]
Manual: add missing args blocks

8 years agoManual: warning about incremental signature verification
Loup Vaillant [Thu, 21 Dec 2017 17:16:46 +0000 (18:16 +0100)]
Manual: warning about incremental signature verification

Just so users don't mistakenly trust messages before the verification is
finished.

Related to #58

8 years agoFixed #74 (crypto_verify bug)
Loup Vaillant [Fri, 15 Dec 2017 18:45:21 +0000 (19:45 +0100)]
Fixed #74 (crypto_verify bug)

8 years agoAdded tests for comparison functions
Loup Vaillant [Fri, 15 Dec 2017 18:35:33 +0000 (19:35 +0100)]
Added tests for comparison functions

They are crafted to catch many possible errors, such as using an
operator instead of another.

And catch an error it did...

8 years agoManual: applying CuleX's corrections
Loup Vaillant [Fri, 15 Dec 2017 09:56:05 +0000 (10:56 +0100)]
Manual: applying CuleX's corrections

8 years agoAdded a warning about incremental authentication
Loup Vaillant [Sun, 10 Dec 2017 21:19:24 +0000 (22:19 +0100)]
Added a warning about incremental authentication

8 years agoMentinned the Double Ratchet Algorithm
Loup Vaillant [Sun, 10 Dec 2017 20:00:45 +0000 (21:00 +0100)]
Mentinned the Double Ratchet Algorithm

This is better than the half assed explanation about authenticating keys
with `crypto_lock`

8 years agoMerge pull request #73 from mikejsavage/poly1305feedback
Loup Vaillant [Sun, 10 Dec 2017 19:45:18 +0000 (20:45 +0100)]
Merge pull request #73 from mikejsavage/poly1305feedback

Poly1305 manual tweaks based on Loup's comments

8 years agoPoly1305 manual tweaks based on Loup's comments
Michael Savage [Fri, 8 Dec 2017 23:53:38 +0000 (01:53 +0200)]
Poly1305 manual tweaks based on Loup's comments

8 years agoMerge pull request #72 from mikejsavage/keyexchangereview
Loup Vaillant [Fri, 8 Dec 2017 23:30:49 +0000 (00:30 +0100)]
Merge pull request #72 from mikejsavage/keyexchangereview

Key exchange manual tweaks

8 years agoMerge pull request #70 from mikejsavage/lockincreview
Loup Vaillant [Fri, 8 Dec 2017 23:18:46 +0000 (00:18 +0100)]
Merge pull request #70 from mikejsavage/lockincreview

Incremental crypto_lock manual tweaks

8 years agoMerge pull request #71 from mikejsavage/poly1305review
Loup Vaillant [Fri, 8 Dec 2017 23:18:25 +0000 (00:18 +0100)]
Merge pull request #71 from mikejsavage/poly1305review

Poly1305 manual tweaks