• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

cossacklabs / themis / #7588
88%
master: 83%

Build:
Build:
LAST BUILD BRANCH: release/0.15.0
DEFAULT BRANCH: master
Ran 20 Apr 2020 05:28AM UTC
Jobs 1
Files 73
Run time 4s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

17 Apr 2020 10:54AM UTC coverage: 87.707% (-0.07%) from 87.776%
#7588

push

travis-ci

web-flow
Secure Cell passphrase API: JsThemis (#621)

* New "withKey" constructors

Since we're going to introduce a different way to initialize Secure Cell
in Seal mode, introduce a new way to construct Secure Cells with less
ambiguity over whether it uses keys or passphrases.

The new "withKey" static construction method is available for all Secure
Cell modes. The previous approach with "new" still works as before, it
will construct Secure Cell with master keys. The old compatibility API
without "new" keyword also works. Now we even have tests for that.

* Passphrase API for Seal mode

Introduce a "withPassphrase" static factory method which constructs a
subclass of SecureCellSeal that uses passphrase API instead of regular
symmetric keys.

This is exactly the same API WasmThemis has. Tests are also reused from
WasmThemis.

Note that SecureCellSealWithPassphrase is a private subclass so it's
not exported and it's not possible to construct it with "new" or inherit
from it in a normal way.

Node.js supports a bit more encodings for it's Buffer class but we still
decode string passphrases as only UTF-8. Applicatons should use Buffer
manually if they need to encode the passphrase in some other encoding.

* Wipe Secure Cell secrets

Call soter_wipe() for keys and passphrases when they are no longer used.
That is, when Node.js runtime collects the object and destroys native
wrapper.

Note that we have been copying the passphrase or key during constrution.
Since C++11 is supported by Node.js toolchain, we can use move semantics
and avoid unnecessary copying and wiping.

* Use new API in integration tools

Update integration testing tools to use new Secure Cell API (withKey),
and generally unify the tools with WasmThemis.

* Integration tool for passphrase API

Add a tool to verify passphrase API implementation in JsThemis across
other wrappers to make sure that we did everything right with encodings
and other parameter... (continued)

3767 of 4295 relevant lines covered (87.71%)

19348.85 hits per line

Jobs
ID Job ID Ran Files Coverage
1 #7588.1 20 Apr 2020 05:28AM UTC 0
87.71
Source Files on build #7588
Detailed source file information is not available for this build.
  • Back to Repo
  • 8ca3fbcc on github
  • Prev Build on HEAD
  • Next Build on HEAD
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc