-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathapp.js
More file actions
79 lines (65 loc) · 1.83 KB
/
app.js
File metadata and controls
79 lines (65 loc) · 1.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
var express = require('express');
var app = express();
var fs = require('fs');
var CryptoJS = require("crypto-js");
var multer = require('multer')
var upload = multer({ dest: 'tmp/' })
function encrypt(file, org){
var toBeEnc = fs.readFileSync('./tmp/'+file).toString("hex");
var encrypted = CryptoJS.AES.encrypt(toBeEnc, '12334');
fs.appendFile('./safe/'+org+'.Krypt', encrypted, function (err) {
if (err) { }
else { }
});
}
function decrypt(file) {
var file2b = fs.readFileSync('./tmp/'+ file);
var bytes = CryptoJS.AES.decrypt(file2b.toString(), '12334');
return bytes.toString(CryptoJS.enc.Utf8)
}
app.post("/encrypt", upload.single('enc'), function (req, res, next) {
var org = req.file.originalname;
var file = req.file.filename;
setTimeout(function () {
console.log("wow");
encrypt(file, org);
}, 3000);
res.redirect('/')
});
var data;
var org;
app.post("/decrypt", upload.single('dec'), function (req, res, next) {
var file = req.file.filename;
org = req.file.originalname;
setTimeout(function () {
console.log("decrypted");
data = decrypt(file)
res.redirect('/download')
}, 3000);
});
app.use("/download",function(req,res){
res.render('dl', {clickhandler : "createFileFromHex("+"'"+data+"'"+","+"'"+ org.slice(0,-6)+"')"})
})
app.use(express.static(__dirname+"/public"));
app.set("view engine","ejs");
app.get('/token',function(req,res){
res.render('upload.ejs');
})
app.get('/',function (req, res) {
res.render("main")
});
app.get('/store',function (req, res) {
res.render("store")
});
app.get('/access',function (req, res) {
res.render("access")
});
app.get('/up',function (req, res) {
res.render("upload")
});
app.get('/transfer',function (req, res) {
res.render("transfer")
});
app.listen(3000,function () {
console.log("HINT started on port 3000");
});