Skip to content

Commit c0c4500

Browse files
committed
Moved encryption and decryption functionality into their own functions
Preparation for folder encryption and decryption
1 parent 70b3406 commit c0c4500

File tree

1 file changed

+40
-18
lines changed

1 file changed

+40
-18
lines changed

modules.js

Lines changed: 40 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,44 @@ const fs = require('fs')
66

77
const macros = require('./macros')
88

9+
function encrypt(results) {
10+
try {
11+
const fileData = fs.readFileSync(results.filename, 'utf8')
12+
const keyData = fs.readFileSync(`${results.rsakeys}/public.txt`, 'utf8')
13+
const start = new Date()
14+
const key = new nodeRSA()
15+
key.importKey(keyData)
16+
17+
fs.writeFileSync(`${results.filename}`, key.encrypt(fileData, 'base64'), 'utf8')
18+
19+
return console.log(macros.infoLog(`✔\x20Success! File Has Been Encrypted. Took ${new Date() - start}ms`))
20+
} catch (err) {
21+
console.clear()
22+
console.error(macros.errorLog('[Modules:encryptFile:encrypt:Error]'), macros.resetLog('An Error Occured. Please see below.'))
23+
console.error(err)
24+
return process.exit(1)
25+
}
26+
}
27+
28+
function decrypt(results) {
29+
try {
30+
const fileData = fs.readFileSync(results.filename, 'utf8')
31+
const keyData = fs.readFileSync(`${results.rsakeys}/private.txt`, 'utf8')
32+
const start = new Date()
33+
const key = new nodeRSA()
34+
key.importKey(keyData)
35+
36+
fs.writeFileSync(`${results.filename}`, key.decrypt(fileData, 'utf8'), 'utf8')
37+
38+
return console.log(macros.infoLog(`✔\x20Success! File Has Been Decrypted. Took ${new Date() - start}ms`))
39+
} catch (err) {
40+
console.clear()
41+
console.error(macros.errorLog('[Modules:decryptFile:decrypt:Error]'), macros.resetLog('An Error Occured. Please see below.'))
42+
console.error(err)
43+
return process.exit(1)
44+
}
45+
}
46+
947
module.exports = {
1048
encryptFile: () => {
1149
prompter.prompt([
@@ -48,15 +86,7 @@ module.exports = {
4886

4987
console.log(macros.infoLog('Encrypting File Now. It might take awhile.'))
5088

51-
const fileData = fs.readFileSync(results.filename, 'utf8')
52-
const keyData = fs.readFileSync(`${results.rsakeys}/public.txt`, 'utf8')
53-
const start = new Date()
54-
const key = new nodeRSA()
55-
key.importKey(keyData)
56-
57-
fs.writeFileSync(`${results.filename}.enc`, key.encrypt(fileData, 'base64'), 'utf8')
58-
59-
return console.log(macros.infoLog(`✔\x20Success! File Has Been Encrypted. Took ${new Date() - start}ms`))
89+
return encrypt(results)
6090
}).catch(err => {
6191
console.clear()
6292
console.error(macros.errorLog('[Modules:encryptFile:Error]'), macros.resetLog('An Error Occured. Please see below.'))
@@ -108,15 +138,7 @@ module.exports = {
108138

109139
console.log(macros.infoLog('Decrypting File Now. It might take awhile.'))
110140

111-
const fileData = fs.readFileSync(results.filename, 'utf8')
112-
const keyData = fs.readFileSync(`${results.rsakeys}/private.txt`, 'utf8')
113-
const start = new Date()
114-
const key = new nodeRSA()
115-
key.importKey(keyData)
116-
117-
fs.writeFileSync(`${results.filename}`, key.decrypt(fileData, 'utf8'), 'utf8')
118-
119-
return console.log(macros.infoLog(`✔\x20Success! File Has Been Decrypted. Took ${new Date() - start}ms`))
141+
return decrypt(results)
120142
}).catch(err => {
121143
console.clear()
122144
console.error(macros.errorLog('[Modules:decryptFile:Error]'), macros.resetLog('An Error Occured. Please see below.'))

0 commit comments

Comments
 (0)