1.3.74 • Published 3 months ago

@sequencemedia/crypto v1.3.74

Weekly downloads
-
License
ISC
Repository
github
Last release
3 months ago

@sequencemedia/crypto

Encrypt and decrypt in Node and Bash

Node

The package main exports two functions, encrypt and decrypt

import {
  encrypt,
  decrypt
} from '@sequencemedia/crypto'

encrypt

function encrypt(
  buffer: Buffer,
  secret: string,
  bytes?: number,
  algorithm?: string
): Buffer

Only buffer and secret are required

  • buffer is the data to encrypt
  • secret is the secret key to use for encryption

Both bytes and algorithm are optional

  • bytes is the number of random bytes to use for the encryption initialisation vector. The default is 16
  • algorithm is the algorithm to use for encryption. The default is aes-256-ctr

decrypt

function decrypt(
  buffer: Buffer,
  secret: string,
  bytes?: number,
  algorithm?: string
): Buffer

Only buffer and secret are required

  • buffer is the data to decrypt
  • secret is the secret key to use for decryption

Both bytes and algorithm are optional

  • bytes is the number of bytes to slice from the buffer for the decryption initialisation vector. The default is 16
  • algorithm is the algorithm to use for decryption. The default is aes-256-ctr

Bash

The package contains three scripts

  1. crypto.sh
  2. encrypt.sh
  3. decrypt.sh

Script crypto.sh exports four functions to consume in your own Bash scripts

source ./crypto.sh
  1. encrypt
  2. decrypt
  3. encrypt_directory
  4. decrypt_directory

Scripts encrypt.sh and decrypt.sh can be executed at the command line

Bash functions

encrypt

Requires CRYPTO_KEY as a variable in the Bash environment and a file path to encrypt

CRYPTO_KEY='secret'
encrypted_file_data=$(encrypt "./file.txt")
CRYPTO_KEY='secret'
encrypt "./file.txt" > "./encrypted.txt"

decrypt

Requires CRYPTO_KEY as a variable in the Bash environment and a file path to decrypt

CRYPTO_KEY='secret'
file_data=$(decrypt "./encrypted.txt")
CRYPTO_KEY='secret'
decrypt "./encrypted.txt" > "./file.txt"

encrypt_directory

Requires CRYPTO_KEY as a variable in the Bash environment and a directory path to encrypt

  • The first argument is the origin directory of files to encrypt
  • The second argument is the destination directory for the encrypted files
CRYPTO_KEY='secret'
encrypt_directory "./directory" "./encrypted"

decrypt_directory

Requires CRYPTO_KEY as a variable in the Bash environment and a directory path to decrypt

  • The first argument is the origin directory of files to decrypt
  • The second argument is the destination directory for the decrypted files
CRYPTO_KEY='secret'
decrypt_directory "./encrypted" "./directory"

Bash scripts

encrypt.sh

Requires CRYPTO_KEY as a variable in the Bash environment

  • You can provide either file or directory paths
  • You can provide --verbose or -v
File paths
  • A file origin path to encrypt
  • A file destination path for the encrypted file
CRYPTO_KEY='secret' ./encrypt.sh \
  --origin "./file.txt" \
  --destination "./encrypted.txt"
Directory paths
  • A directory origin path to encrypt
  • A directory destination path for encrypted files
CRYPTO_KEY='secret' ./encrypt.sh \
  --origin "./directory" \
  --destination "./encrypted"

decrypt.sh

Requires CRYPTO_KEY as a variable in the Bash environment

  • You can provide either file or directory paths
  • You can provide --verbose or -v
File paths
  • A file origin path to decrypt
  • A file destination path for the decrypted file
CRYPTO_KEY='secret' ./decrypt.sh \
  --origin "./encrypted.txt" \
  --destination "./file.txt"
Directory paths
  • A directory origin path to decrypt
  • A directory destination path for decrypted files
CRYPTO_KEY='secret' ./decrypt.sh \
  --origin "./encrypted" \
  --destination "./directory"
1.3.50

4 months ago

1.3.53

4 months ago

1.3.54

4 months ago

1.3.51

4 months ago

1.3.52

4 months ago

1.3.57

4 months ago

1.3.58

4 months ago

1.3.55

4 months ago

1.3.56

4 months ago

1.3.59

4 months ago

1.2.266

10 months ago

1.2.265

10 months ago

1.2.268

9 months ago

1.2.267

9 months ago

1.2.269

9 months ago

1.2.264

10 months ago

1.3.60

4 months ago

1.3.61

3 months ago

1.3.64

3 months ago

1.3.65

3 months ago

1.3.62

3 months ago

1.3.63

3 months ago

1.3.68

3 months ago

1.3.69

3 months ago

1.3.66

3 months ago

1.3.67

3 months ago

1.2.277

8 months ago

1.2.276

8 months ago

1.2.279

7 months ago

1.2.278

7 months ago

1.2.271

9 months ago

1.2.270

9 months ago

1.2.273

8 months ago

1.2.272

9 months ago

1.2.275

8 months ago

1.2.274

8 months ago

1.3.31

5 months ago

1.3.32

5 months ago

1.3.30

5 months ago

1.3.35

5 months ago

1.3.36

5 months ago

1.3.33

5 months ago

1.3.34

5 months ago

1.3.39

4 months ago

1.3.37

4 months ago

1.3.38

4 months ago

1.2.288

6 months ago

1.2.287

6 months ago

1.2.289

6 months ago

1.2.280

7 months ago

1.2.282

7 months ago

1.2.281

7 months ago

1.2.284

7 months ago

1.2.283

7 months ago

1.2.286

7 months ago

1.2.285

7 months ago

1.3.42

4 months ago

1.3.43

4 months ago

1.3.40

4 months ago

1.3.41

4 months ago

1.3.46

4 months ago

1.3.47

4 months ago

1.3.44

4 months ago

1.3.45

4 months ago

1.3.48

4 months ago

1.3.49

4 months ago

1.3.10

6 months ago

1.3.13

6 months ago

1.3.14

6 months ago

1.3.11

6 months ago

1.3.12

6 months ago

1.3.17

5 months ago

1.3.18

5 months ago

1.3.15

6 months ago

1.3.16

5 months ago

1.3.19

5 months ago

1.3.20

5 months ago

1.3.21

5 months ago

1.3.24

5 months ago

1.3.25

5 months ago

1.3.22

5 months ago

1.3.23

5 months ago

1.3.28

5 months ago

1.3.29

5 months ago

1.3.26

5 months ago

1.3.27

5 months ago

1.3.7

6 months ago

1.3.6

6 months ago

1.3.5

6 months ago

1.3.4

6 months ago

1.3.3

6 months ago

1.3.2

6 months ago

1.3.1

6 months ago

1.3.0

6 months ago

1.2.291

6 months ago

1.2.290

6 months ago

1.3.9

6 months ago

1.3.8

6 months ago

1.3.71

3 months ago

1.3.72

3 months ago

1.3.70

3 months ago

1.3.73

3 months ago

1.3.74

3 months ago

1.2.260

10 months ago

1.2.262

10 months ago

1.2.261

10 months ago

1.2.263

10 months ago

1.2.259

10 months ago

1.2.258

10 months ago

1.2.257

10 months ago

1.2.255

11 months ago

1.2.254

11 months ago

1.2.256

11 months ago

1.2.253

11 months ago

1.2.252

11 months ago

1.2.251

11 months ago

1.2.250

11 months ago

1.2.211

1 year ago

1.2.210

1 year ago

1.2.213

1 year ago

1.2.212

1 year ago

1.2.215

1 year ago

1.2.214

1 year ago

1.2.217

1 year ago

1.2.216

1 year ago

1.2.208

1 year ago

1.2.207

1 year ago

1.2.209

1 year ago

1.2.222

1 year ago

1.2.221

1 year ago

1.2.224

1 year ago

1.2.223

1 year ago

1.2.226

1 year ago

1.2.225

1 year ago

1.2.228

12 months ago

1.2.227

12 months ago

1.2.220

1 year ago

1.2.219

1 year ago

1.2.218

1 year ago

1.2.233

12 months ago

1.2.232

12 months ago

1.2.235

12 months ago

1.2.234

12 months ago

1.2.237

12 months ago

1.2.236

12 months ago

1.2.239

12 months ago

1.2.238

12 months ago

1.2.231

12 months ago

1.2.230

12 months ago

1.2.229

12 months ago

1.2.244

12 months ago

1.2.243

12 months ago

1.2.246

11 months ago

1.2.245

11 months ago

1.2.248

11 months ago

1.2.247

11 months ago

1.2.249

11 months ago

1.2.240

12 months ago

1.2.242

12 months ago

1.2.241

12 months ago

1.2.200

1 year ago

1.2.202

1 year ago

1.2.201

1 year ago

1.2.204

1 year ago

1.2.203

1 year ago

1.2.206

1 year ago

1.2.205

1 year ago

1.2.189

1 year ago

1.2.188

1 year ago

1.2.185

1 year ago

1.2.184

1 year ago

1.2.187

1 year ago

1.2.186

1 year ago

1.2.199

1 year ago

1.2.192

1 year ago

1.2.191

1 year ago

1.2.194

1 year ago

1.2.193

1 year ago

1.2.196

1 year ago

1.2.195

1 year ago

1.2.198

1 year ago

1.2.197

1 year ago

1.2.190

1 year ago

1.2.183

1 year ago

1.2.182

1 year ago

1.2.181

1 year ago

1.2.180

1 year ago

1.2.179

1 year ago

1.2.178

1 year ago

1.2.177

1 year ago

1.2.176

1 year ago

1.2.175

1 year ago

1.2.174

1 year ago

1.2.173

1 year ago

1.2.172

1 year ago

1.2.171

1 year ago

1.2.170

1 year ago

1.2.169

1 year ago

1.2.168

1 year ago

1.2.167

1 year ago

1.2.166

1 year ago

1.2.165

1 year ago

1.2.164

1 year ago

1.2.163

1 year ago

1.2.162

1 year ago

1.2.161

1 year ago

1.2.160

1 year ago

1.2.159

1 year ago

1.2.158

1 year ago

1.2.157

1 year ago

1.2.156

1 year ago

1.2.155

1 year ago

1.2.154

1 year ago

1.2.153

1 year ago

1.2.152

1 year ago

1.2.150

1 year ago

1.2.151

1 year ago

1.2.149

1 year ago

1.2.147

1 year ago

1.2.146

1 year ago

1.2.148

1 year ago

1.2.145

2 years ago

1.2.144

2 years ago

1.2.139

2 years ago

1.2.138

2 years ago

1.2.137

2 years ago

1.2.136

2 years ago

1.2.135

2 years ago

1.2.134

2 years ago

1.2.133

2 years ago

1.2.132

2 years ago

1.2.131

2 years ago

1.2.130

2 years ago

1.2.129

2 years ago

1.2.128

2 years ago

1.2.127

2 years ago

1.2.125

2 years ago

1.2.126

2 years ago

1.2.124

2 years ago

1.2.123

2 years ago

1.2.122

2 years ago

1.2.121

2 years ago

1.2.120

2 years ago

1.2.119

2 years ago

1.2.118

2 years ago

1.2.116

2 years ago

1.2.115

2 years ago

1.2.117

2 years ago

1.2.114

2 years ago

1.2.113

2 years ago

1.2.112

2 years ago

1.2.111

2 years ago

1.2.110

2 years ago

1.2.109

2 years ago

1.2.108

2 years ago

1.2.107

2 years ago

1.2.106

2 years ago

1.2.105

2 years ago

1.2.104

2 years ago

1.2.81

2 years ago

1.2.82

2 years ago

1.2.80

2 years ago

1.2.85

2 years ago

1.2.86

2 years ago

1.2.83

2 years ago

1.2.84

2 years ago

1.2.89

2 years ago

1.2.87

2 years ago

1.2.88

2 years ago

1.2.92

2 years ago

1.2.93

2 years ago

1.2.90

2 years ago

1.2.91

2 years ago

1.2.96

2 years ago

1.2.97

2 years ago

1.2.94

2 years ago

1.2.95

2 years ago

1.2.13

2 years ago

1.2.98

2 years ago

1.2.99

2 years ago

1.2.16

2 years ago

1.2.17

2 years ago

1.2.14

2 years ago

1.2.15

2 years ago

1.2.60

2 years ago

1.2.63

2 years ago

1.2.64

2 years ago

1.2.61

2 years ago

1.2.62

2 years ago

1.2.67

2 years ago

1.2.68

2 years ago

1.2.65

2 years ago

1.2.66

2 years ago

1.2.69

2 years ago

1.2.70

2 years ago

1.2.71

2 years ago

1.2.74

2 years ago

1.2.75

2 years ago

1.2.72

2 years ago

1.2.73

2 years ago

1.2.78

2 years ago

1.2.79

2 years ago

1.2.76

2 years ago

1.2.77

2 years ago

1.2.41

2 years ago

1.2.42

2 years ago

1.2.40

2 years ago

1.2.45

2 years ago

1.2.46

2 years ago

1.2.43

2 years ago

1.2.44

2 years ago

1.2.49

2 years ago

1.2.47

2 years ago

1.2.48

2 years ago

1.2.101

2 years ago

1.2.100

2 years ago

1.2.103

2 years ago

1.2.102

2 years ago

1.2.52

2 years ago

1.2.53

2 years ago

1.2.50

2 years ago

1.2.51

2 years ago

1.2.56

2 years ago

1.2.57

2 years ago

1.2.54

2 years ago

1.2.55

2 years ago

1.2.58

2 years ago

1.2.59

2 years ago

1.2.18

2 years ago

1.2.19

2 years ago

1.2.20

2 years ago

1.2.23

2 years ago

1.2.24

2 years ago

1.2.21

2 years ago

1.2.22

2 years ago

1.2.27

2 years ago

1.2.28

2 years ago

1.2.25

2 years ago

1.2.26

2 years ago

1.2.29

2 years ago

1.2.30

2 years ago

1.2.31

2 years ago

1.2.34

2 years ago

1.2.35

2 years ago

1.2.32

2 years ago

1.2.33

2 years ago

1.2.38

2 years ago

1.2.39

2 years ago

1.2.36

2 years ago

1.2.37

2 years ago

1.2.0

2 years ago

1.2.8

2 years ago

1.2.7

2 years ago

1.2.6

2 years ago

1.2.5

2 years ago

1.2.4

2 years ago

1.2.3

2 years ago

1.2.2

2 years ago

1.2.1

2 years ago

1.1.70

2 years ago

1.1.30

2 years ago

1.1.73

2 years ago

1.1.72

2 years ago

1.1.71

2 years ago

1.1.34

2 years ago

1.1.33

2 years ago

1.1.32

2 years ago

1.1.31

2 years ago

1.1.38

2 years ago

1.1.37

2 years ago

1.1.36

2 years ago

1.1.35

2 years ago

1.1.39

2 years ago

1.1.41

2 years ago

1.1.40

2 years ago

1.2.12

2 years ago

1.1.45

2 years ago

1.1.44

2 years ago

1.2.10

2 years ago

1.1.43

2 years ago

1.2.11

2 years ago

1.1.42

2 years ago

1.1.49

2 years ago

1.1.48

2 years ago

1.1.47

2 years ago

1.1.46

2 years ago

1.1.52

2 years ago

1.1.51

2 years ago

1.1.50

2 years ago

1.1.56

2 years ago

1.1.55

2 years ago

1.1.54

2 years ago

1.1.53

2 years ago

1.1.59

2 years ago

1.1.58

2 years ago

1.1.57

2 years ago

1.1.63

2 years ago

1.1.62

2 years ago

1.1.61

2 years ago

1.2.9

2 years ago

1.1.60

2 years ago

1.1.67

2 years ago

1.1.66

2 years ago

1.1.65

2 years ago

1.1.64

2 years ago

1.1.69

2 years ago

1.1.68

2 years ago

1.1.1

2 years ago

1.1.9

2 years ago

1.1.8

2 years ago

1.1.7

2 years ago

1.1.6

2 years ago

1.1.5

2 years ago

1.1.4

2 years ago

1.1.3

2 years ago

1.1.2

2 years ago

1.1.12

2 years ago

1.1.11

2 years ago

1.1.10

2 years ago

1.1.16

2 years ago

1.1.15

2 years ago

1.1.14

2 years ago

1.1.13

2 years ago

1.1.19

2 years ago

1.1.18

2 years ago

1.1.17

2 years ago

1.1.23

2 years ago

1.1.22

2 years ago

1.1.21

2 years ago

1.1.20

2 years ago

1.1.26

2 years ago

1.1.25

2 years ago

1.1.24

2 years ago

1.0.4

3 years ago

1.0.5

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago