1.3.74 • Published 12 months ago

@sequencemedia/crypto v1.3.74

Weekly downloads
-
License
ISC
Repository
github
Last release
12 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

1 year ago

1.3.53

1 year ago

1.3.54

1 year ago

1.3.51

1 year ago

1.3.52

1 year ago

1.3.57

1 year ago

1.3.58

1 year ago

1.3.55

1 year ago

1.3.56

1 year ago

1.3.59

1 year ago

1.2.266

2 years ago

1.2.265

2 years ago

1.2.268

2 years ago

1.2.267

2 years ago

1.2.269

1 year ago

1.2.264

2 years ago

1.3.60

1 year ago

1.3.61

1 year ago

1.3.64

1 year ago

1.3.65

1 year ago

1.3.62

1 year ago

1.3.63

1 year ago

1.3.68

1 year ago

1.3.69

1 year ago

1.3.66

1 year ago

1.3.67

1 year ago

1.2.277

1 year ago

1.2.276

1 year ago

1.2.279

1 year ago

1.2.278

1 year ago

1.2.271

1 year ago

1.2.270

1 year ago

1.2.273

1 year ago

1.2.272

1 year ago

1.2.275

1 year ago

1.2.274

1 year ago

1.3.31

1 year ago

1.3.32

1 year ago

1.3.30

1 year ago

1.3.35

1 year ago

1.3.36

1 year ago

1.3.33

1 year ago

1.3.34

1 year ago

1.3.39

1 year ago

1.3.37

1 year ago

1.3.38

1 year ago

1.2.288

1 year ago

1.2.287

1 year ago

1.2.289

1 year ago

1.2.280

1 year ago

1.2.282

1 year ago

1.2.281

1 year ago

1.2.284

1 year ago

1.2.283

1 year ago

1.2.286

1 year ago

1.2.285

1 year ago

1.3.42

1 year ago

1.3.43

1 year ago

1.3.40

1 year ago

1.3.41

1 year ago

1.3.46

1 year ago

1.3.47

1 year ago

1.3.44

1 year ago

1.3.45

1 year ago

1.3.48

1 year ago

1.3.49

1 year ago

1.3.10

1 year ago

1.3.13

1 year ago

1.3.14

1 year ago

1.3.11

1 year ago

1.3.12

1 year ago

1.3.17

1 year ago

1.3.18

1 year ago

1.3.15

1 year ago

1.3.16

1 year ago

1.3.19

1 year ago

1.3.20

1 year ago

1.3.21

1 year ago

1.3.24

1 year ago

1.3.25

1 year ago

1.3.22

1 year ago

1.3.23

1 year ago

1.3.28

1 year ago

1.3.29

1 year ago

1.3.26

1 year ago

1.3.27

1 year ago

1.3.7

1 year ago

1.3.6

1 year ago

1.3.5

1 year ago

1.3.4

1 year ago

1.3.3

1 year ago

1.3.2

1 year ago

1.3.1

1 year ago

1.3.0

1 year ago

1.2.291

1 year ago

1.2.290

1 year ago

1.3.9

1 year ago

1.3.8

1 year ago

1.3.71

12 months ago

1.3.72

12 months ago

1.3.70

1 year ago

1.3.73

12 months ago

1.3.74

12 months ago

1.2.260

2 years ago

1.2.262

2 years ago

1.2.261

2 years ago

1.2.263

2 years ago

1.2.259

2 years ago

1.2.258

2 years ago

1.2.257

2 years ago

1.2.255

2 years ago

1.2.254

2 years ago

1.2.256

2 years ago

1.2.253

2 years ago

1.2.252

2 years ago

1.2.251

2 years ago

1.2.250

2 years ago

1.2.211

2 years ago

1.2.210

2 years ago

1.2.213

2 years ago

1.2.212

2 years ago

1.2.215

2 years ago

1.2.214

2 years ago

1.2.217

2 years ago

1.2.216

2 years ago

1.2.208

2 years ago

1.2.207

2 years ago

1.2.209

2 years ago

1.2.222

2 years ago

1.2.221

2 years ago

1.2.224

2 years ago

1.2.223

2 years ago

1.2.226

2 years ago

1.2.225

2 years ago

1.2.228

2 years ago

1.2.227

2 years ago

1.2.220

2 years ago

1.2.219

2 years ago

1.2.218

2 years ago

1.2.233

2 years ago

1.2.232

2 years ago

1.2.235

2 years ago

1.2.234

2 years ago

1.2.237

2 years ago

1.2.236

2 years ago

1.2.239

2 years ago

1.2.238

2 years ago

1.2.231

2 years ago

1.2.230

2 years ago

1.2.229

2 years ago

1.2.244

2 years ago

1.2.243

2 years ago

1.2.246

2 years ago

1.2.245

2 years ago

1.2.248

2 years ago

1.2.247

2 years ago

1.2.249

2 years ago

1.2.240

2 years ago

1.2.242

2 years ago

1.2.241

2 years ago

1.2.200

2 years ago

1.2.202

2 years ago

1.2.201

2 years ago

1.2.204

2 years ago

1.2.203

2 years ago

1.2.206

2 years ago

1.2.205

2 years ago

1.2.189

2 years ago

1.2.188

2 years ago

1.2.185

2 years ago

1.2.184

2 years ago

1.2.187

2 years ago

1.2.186

2 years ago

1.2.199

2 years ago

1.2.192

2 years ago

1.2.191

2 years ago

1.2.194

2 years ago

1.2.193

2 years ago

1.2.196

2 years ago

1.2.195

2 years ago

1.2.198

2 years ago

1.2.197

2 years ago

1.2.190

2 years ago

1.2.183

2 years ago

1.2.182

2 years ago

1.2.181

2 years ago

1.2.180

2 years ago

1.2.179

2 years ago

1.2.178

2 years ago

1.2.177

2 years ago

1.2.176

2 years ago

1.2.175

2 years ago

1.2.174

2 years ago

1.2.173

2 years ago

1.2.172

2 years ago

1.2.171

2 years ago

1.2.170

2 years ago

1.2.169

2 years ago

1.2.168

2 years ago

1.2.167

2 years ago

1.2.166

2 years ago

1.2.165

2 years ago

1.2.164

2 years ago

1.2.163

2 years ago

1.2.162

2 years ago

1.2.161

2 years ago

1.2.160

2 years ago

1.2.159

2 years ago

1.2.158

2 years ago

1.2.157

2 years ago

1.2.156

2 years ago

1.2.155

2 years ago

1.2.154

2 years ago

1.2.153

2 years ago

1.2.152

2 years ago

1.2.150

2 years ago

1.2.151

2 years ago

1.2.149

2 years ago

1.2.147

2 years ago

1.2.146

2 years ago

1.2.148

2 years 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

3 years ago

1.2.82

3 years ago

1.2.80

3 years ago

1.2.85

3 years ago

1.2.86

3 years ago

1.2.83

3 years ago

1.2.84

3 years ago

1.2.89

3 years ago

1.2.87

3 years ago

1.2.88

3 years ago

1.2.92

3 years ago

1.2.93

3 years ago

1.2.90

3 years ago

1.2.91

3 years ago

1.2.96

2 years ago

1.2.97

2 years ago

1.2.94

3 years ago

1.2.95

2 years ago

1.2.13

3 years ago

1.2.98

2 years ago

1.2.99

2 years ago

1.2.16

3 years ago

1.2.17

3 years ago

1.2.14

3 years ago

1.2.15

3 years ago

1.2.60

3 years ago

1.2.63

3 years ago

1.2.64

3 years ago

1.2.61

3 years ago

1.2.62

3 years ago

1.2.67

3 years ago

1.2.68

3 years ago

1.2.65

3 years ago

1.2.66

3 years ago

1.2.69

3 years ago

1.2.70

3 years ago

1.2.71

3 years ago

1.2.74

3 years ago

1.2.75

3 years ago

1.2.72

3 years ago

1.2.73

3 years ago

1.2.78

3 years ago

1.2.79

3 years ago

1.2.76

3 years ago

1.2.77

3 years ago

1.2.41

3 years ago

1.2.42

3 years ago

1.2.40

3 years ago

1.2.45

3 years ago

1.2.46

3 years ago

1.2.43

3 years ago

1.2.44

3 years ago

1.2.49

3 years ago

1.2.47

3 years ago

1.2.48

3 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

3 years ago

1.2.53

3 years ago

1.2.50

3 years ago

1.2.51

3 years ago

1.2.56

3 years ago

1.2.57

3 years ago

1.2.54

3 years ago

1.2.55

3 years ago

1.2.58

3 years ago

1.2.59

3 years ago

1.2.18

3 years ago

1.2.19

3 years ago

1.2.20

3 years ago

1.2.23

3 years ago

1.2.24

3 years ago

1.2.21

3 years ago

1.2.22

3 years ago

1.2.27

3 years ago

1.2.28

3 years ago

1.2.25

3 years ago

1.2.26

3 years ago

1.2.29

3 years ago

1.2.30

3 years ago

1.2.31

3 years ago

1.2.34

3 years ago

1.2.35

3 years ago

1.2.32

3 years ago

1.2.33

3 years ago

1.2.38

3 years ago

1.2.39

3 years ago

1.2.36

3 years ago

1.2.37

3 years ago

1.2.0

3 years ago

1.2.8

3 years ago

1.2.7

3 years ago

1.2.6

3 years ago

1.2.5

3 years ago

1.2.4

3 years ago

1.2.3

3 years ago

1.2.2

3 years ago

1.2.1

3 years ago

1.1.70

3 years ago

1.1.30

3 years ago

1.1.73

3 years ago

1.1.72

3 years ago

1.1.71

3 years ago

1.1.34

3 years ago

1.1.33

3 years ago

1.1.32

3 years ago

1.1.31

3 years ago

1.1.38

3 years ago

1.1.37

3 years ago

1.1.36

3 years ago

1.1.35

3 years ago

1.1.39

3 years ago

1.1.41

3 years ago

1.1.40

3 years ago

1.2.12

3 years ago

1.1.45

3 years ago

1.1.44

3 years ago

1.2.10

3 years ago

1.1.43

3 years ago

1.2.11

3 years ago

1.1.42

3 years ago

1.1.49

3 years ago

1.1.48

3 years ago

1.1.47

3 years ago

1.1.46

3 years ago

1.1.52

3 years ago

1.1.51

3 years ago

1.1.50

3 years ago

1.1.56

3 years ago

1.1.55

3 years ago

1.1.54

3 years ago

1.1.53

3 years ago

1.1.59

3 years ago

1.1.58

3 years ago

1.1.57

3 years ago

1.1.63

3 years ago

1.1.62

3 years ago

1.1.61

3 years ago

1.2.9

3 years ago

1.1.60

3 years ago

1.1.67

3 years ago

1.1.66

3 years ago

1.1.65

3 years ago

1.1.64

3 years ago

1.1.69

3 years ago

1.1.68

3 years ago

1.1.1

3 years ago

1.1.9

3 years ago

1.1.8

3 years ago

1.1.7

3 years ago

1.1.6

3 years ago

1.1.5

3 years ago

1.1.4

3 years ago

1.1.3

3 years ago

1.1.2

3 years ago

1.1.12

3 years ago

1.1.11

3 years ago

1.1.10

3 years ago

1.1.16

3 years ago

1.1.15

3 years ago

1.1.14

3 years ago

1.1.13

3 years ago

1.1.19

3 years ago

1.1.18

3 years ago

1.1.17

3 years ago

1.1.23

3 years ago

1.1.22

3 years ago

1.1.21

3 years ago

1.1.20

3 years ago

1.1.26

3 years ago

1.1.25

3 years ago

1.1.24

3 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