From: Vladislav Shpilevoy <v.shpilevoy@tarantool.org> To: tarantool-patches@freelists.org Cc: kostja@tarantool.org, georgy@tarantool.org Subject: [tarantool-patches] [PATCH v3 0/4] crypto lib Date: Tue, 7 May 2019 23:53:55 +0300 [thread overview] Message-ID: <cover.1557262174.git.v.shpilevoy@tarantool.org> (raw) 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)
next reply other threads:[~2019-05-07 20:54 UTC|newest] Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-05-07 20:53 Vladislav Shpilevoy [this message] 2019-05-07 20:53 ` [tarantool-patches] [PATCH v3 1/4] crypto: move crypto business into a separate library Vladislav Shpilevoy 2019-05-15 7:58 ` [tarantool-patches] " Георгий Кириченко 2019-05-07 20:53 ` [tarantool-patches] [PATCH v3 2/4] crypto: make exported methods conform code style Vladislav Shpilevoy 2019-05-15 7:58 ` [tarantool-patches] " Георгий Кириченко 2019-05-07 20:53 ` [tarantool-patches] [PATCH v3 3/4] crypto: implement crypto libary Vladislav Shpilevoy 2019-05-15 7:58 ` [tarantool-patches] " Георгий Кириченко 2019-05-07 20:53 ` [tarantool-patches] [PATCH v3 4/4] crypto: use crypto library in crypto.lua Vladislav Shpilevoy 2019-05-15 8:01 ` [tarantool-patches] " Георгий Кириченко 2019-05-15 13:42 ` Vladislav Shpilevoy 2019-05-15 13:42 ` [tarantool-patches] Re: [PATCH v3 0/4] crypto lib Vladislav Shpilevoy
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=cover.1557262174.git.v.shpilevoy@tarantool.org \ --to=v.shpilevoy@tarantool.org \ --cc=georgy@tarantool.org \ --cc=kostja@tarantool.org \ --cc=tarantool-patches@freelists.org \ --subject='Re: [tarantool-patches] [PATCH v3 0/4] crypto lib' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox