[tarantool-patches] Re: [PATCH v3 0/4] crypto lib
Vladislav Shpilevoy
v.shpilevoy at tarantool.org
Wed May 15 16:42:43 MSK 2019
Pushed into the master.
On 07/05/2019 23:53, Vladislav Shpilevoy wrote:
> SWIM needs encryption because it transmits packets affecting cluster state and
> topology, probably via public networks between datacenters. Tarantool hasn't had
> normal crypto library with useful C API on board until now. OpenSSL was used,
> but its API is far from simple, and before this patchset it was used in Lua
> only, via FFI.
>
> The patchset moves existing OpenSSL wrappers into a separate library, extends
> it with pretty API, and replaces some parts of crypto.lua module. It is going to
> be used by SWIM.
>
> Branch: http://github.com/tarantool/tarantool/tree/gerold103/crypto-lib
>
> Changes in V3:
> - Added crypto_stream to replace cipher in crypto.lua module;
> - Initial vector is passed explicitly to each encrypt(), and is not stored in
> codec object;
> - All the same standards are supported as in crypto.lua were.
>
> V2: https://www.freelists.org/post/tarantool-patches/PATCH-v2-03-swim-encryption-preparation
>
> Vladislav Shpilevoy (4):
> crypto: move crypto business into a separate library
> crypto: make exported methods conform code style
> crypto: implement crypto libary
> crypto: use crypto library in crypto.lua
>
> extra/exports | 16 +-
> src/CMakeLists.txt | 3 +-
> src/lib/CMakeLists.txt | 1 +
> src/lib/core/diag.h | 2 +
> src/lib/core/exception.cc | 25 +++
> src/lib/core/exception.h | 7 +
> src/lib/crypto/CMakeLists.txt | 5 +
> src/lib/crypto/crypto.c | 391 ++++++++++++++++++++++++++++++++++
> src/lib/crypto/crypto.h | 283 ++++++++++++++++++++++++
> src/lua/crypto.c | 73 -------
> src/lua/crypto.h | 54 -----
> src/lua/crypto.lua | 263 ++++++++++++-----------
> src/main.cc | 3 +
> test/app/crypto.result | 114 +++++++---
> test/app/crypto.test.lua | 32 ++-
> test/unit/CMakeLists.txt | 3 +
> test/unit/crypto.c | 302 ++++++++++++++++++++++++++
> test/unit/crypto.result | 132 ++++++++++++
> 18 files changed, 1418 insertions(+), 291 deletions(-)
> create mode 100644 src/lib/crypto/CMakeLists.txt
> create mode 100644 src/lib/crypto/crypto.c
> create mode 100644 src/lib/crypto/crypto.h
> delete mode 100644 src/lua/crypto.c
> delete mode 100644 src/lua/crypto.h
> create mode 100644 test/unit/crypto.c
> create mode 100644 test/unit/crypto.result
>
> --
> 2.20.1 (Apple Git-117)
>
>
More information about the Tarantool-patches
mailing list