---
title: Crypto Module
slug: signum/crypto-module
docTags: 
createdAt: 2022-08-30T21:23:35.000Z
---

::Image[]{src="https://api.archbee.com/api/optimize/l2AIpSUU6srSQmG1-K2bb/gEVX0AR9DKWUu2N1kYtze_security-1.png" size="20" width="512" height="512" position="center" showCaption="false"}

| API Reference                                                                                    | [SignumJS Crypto](https://signum-network.github.io/signumjs/modules/crypto.html)                                                                                                                                                    |
| ------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| NPM Package                                                                                      | [@signumjs/crypto](https://www.npmjs.com/package/@signumjs/crypto)                                                                                                                                                                  |
| CDN URL[](https://cdn.jsdelivr.net/npm/@signumjs/crypto@1.0.0-rc.31/dist/signumjs.crypto.min.js) | [](https://cdn.jsdelivr.net/npm/@signumjs/crypto/dist/signumjs.crypto.min.js)[https://cdn.jsdelivr.net/npm/@signumjs/crypto/dist/signumjs.crypto.min.js](https://cdn.jsdelivr.net/npm/@signumjs/crypto/dist/signumjs.crypto.min.js) |
| IIFE namespace                                                                                   | `sig$crypto`                                                                                                                                                                                                                        |

## Installation

:::CodeblockTabs
npm

```shell
npm i @signumjs/crypto
```

yarn

```shell
yarn add @signumjs/crypto
```

\<script/>

```html
<script src='https://cdn.jsdelivr.net/npm/@signumjs/crypto/dist/signumjs.crypto.min.js'></script>

<!--  namespace is sig$crypto -->
<script >
   const keys = sig$crypto.generateMasterKeys(seed)
   // ...
</script>
```
:::

## Basic Usage

The crypto module provides a bunch of cryptographic functions used in Signum, i.e.&#x20;

- Key Generation
- Passphrase/Seed Generation
- AES Encryption for P2P Messaging
- Transaction Signing and Verification

:::CodeblockTabs
```javascript
const {generateMasterKeys} = require('@signumjs/crypto');

((seed)=> {
    const keys = generateMasterKeys(seed)
    console.table('keys', keys)
})('SomeRandomSeed')
```

```typescript
import {generateMasterKeys} from '@signumjs/crypto';

((seed)=> {
    const keys = generateMasterKeys(seed)
    console.table('keys', keys)
})('SomeRandomSeed')
```

\<script/>

```javascript
((seed)=> {
    const keys = sig$crypto.generateMasterKeys(seed)
    console.table('keys', keys)
})('SomeRandomSeed')
```
:::
