UNPKG

3.79 kBMarkdownView Raw
1> This README is for virgil-crypto v4. Check the [v3 branch](https://github.com/VirgilSecurity/virgil-crypto-javascript/tree/v3) for virgil-crypto v3 docs.
2
3# Virgil Security JavaScript Crypto Library
4[![Build Status](https://travis-ci.org/VirgilSecurity/virgil-crypto-javascript.svg)](https://travis-ci.org/VirgilSecurity/virgil-crypto-javascript)
5[![npm](https://img.shields.io/npm/v/virgil-crypto.svg)](https://www.npmjs.com/package/virgil-crypto)
6[![GitHub license](https://img.shields.io/badge/license-BSD%203--Clause-blue.svg)](https://github.com/VirgilSecurity/virgil/blob/master/LICENSE)
7
8### [Introduction](#introduction) | [Library purposes](#library-purposes) | [Getting started](#getting-started) | [Docs](#docs) | [License](#license) | [Contacts](#support)
9
10## Introduction
11VirgilCrypto is a stack of security libraries (ECIES with Crypto Agility wrapped in Virgil Cryptogram) and an
12open-source high-level [cryptographic library](https://github.com/VirgilSecurity/virgil-crypto-c) that allows you to
13perform all necessary operations for securely storing and transferring data in your digital solutions. Crypto Library
14is written in C++ and is suitable for mobile and server platforms.
15
16Virgil Security, Inc., guides software developers into the forthcoming security world in which everything will be
17encrypted (and passwords will be eliminated). In this world, the days of developers having to raise millions of
18dollars to build a secure chat, secure email, secure file-sharing, or a secure anything have come to an end. Now
19developers can instead focus on building features that give them a competitive market advantage while end-users can
20enjoy the privacy and security they increasingly demand.
21
22## Library purposes
23- Asymmetric Key Generation
24- Encryption/Decryption of data
25- Generation/Verification of digital signatures
26
27## Getting started
28First, you need to install the package from npm:
29```sh
30npm install virgil-crypto
31```
32> If you are not using npm, follow our [UMD guide](https://github.com/VirgilSecurity/virgil-crypto-javascript/tree/master/guides/umd.md) to get started.
33
34Second, you need to decide which approach to use in your application. We provide 2 options here:
35- WebAssembly. This is our recommended approach. [List of supported browsers](https://caniuse.com/#feat=wasm).
36- asm.js. Use it only in case you need to support old web browsers.
37
38Third, you will need to setup you development environment (skip this step if you are using Node.js):
39- [Webpack](https://github.com/VirgilSecurity/virgil-crypto-javascript/tree/master/guides/webpack.md)
40- [Create React App](https://github.com/VirgilSecurity/virgil-crypto-javascript/tree/master/guides/create-react-app.md)
41- [React Native](https://github.com/VirgilSecurity/virgil-crypto-javascript/tree/master/guides/react-native.md)
42> Not found your environment? Create an issue on GitHub and we will try our best to help you. Make sure to describe your environment as much as possible.
43
44Last, you need to get familiar with [usage examples](guides/usage-examples.md) of the library.
45
46## Docs
47- [API Reference](http://virgilsecurity.github.io/virgil-crypto-javascript/)
48- [Crypto Core Library](https://github.com/VirgilSecurity/virgil-crypto-c)
49- [More usage examples](https://developer.virgilsecurity.com/docs/how-to#cryptography)
50
51## License
52This library is released under the [3-clause BSD License](https://github.com/VirgilSecurity/virgil-crypto-javascript/tree/master/LICENSE).
53
54## Support
55Our developer support team is here to help you.
56
57You can find us on [Twitter](https://twitter.com/VirgilSecurity) or send us email support@VirgilSecurity.com.
58
59Also, get extra help from our support team on [Slack](https://virgilsecurity.com/join-community).