You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

102 lines
2.8 KiB

const express = require("express");
const router = express.Router();
let UUIDUtil = require("../utils/UUIDUtil");
const Sm4Service = require("./service/Sm4Service");
sm4Service = new Sm4Service()
router.post('/getKey', async (req, res) => {
let uuid = UUIDUtil.uuid;
let start = new Date();
try {
// 执行
let resKey = sm4Service.getKey();
console.log(`${uuid};sm4.getKey 返回: ${resKey}`)
res.status(200).send(resKey);
} catch (e) {
console.error(e.stack)
return res.status(500).send(e.message)
} finally {
console.log(`${uuid};getKey ${new Date() - start} ms`)
}
})
router.post('/sm4Encrypt', async (req, res) => {
let uuid = UUIDUtil.uuid;
let data = req.body.data
let key = req.body.key
let start = new Date();
try {
// 执行
let resKey = sm4Service.sm4Encrypt(data, key);
console.log(`${uuid};sm4.sm4Encrypt 返回: ${resKey}`)
res.status(200).send(resKey);
} catch (e) {
console.error(e.stack)
return res.status(500).send(e.message)
} finally {
console.log(`${uuid};sm4Encrypt ${new Date() - start} ms`)
}
})
router.post('/sm4Decrypt', async (req, res) => {
let uuid = UUIDUtil.uuid;
let data = req.body.data
let key = req.body.key
let start = new Date();
try {
// 执行
let resKey = sm4Service.sm4Decrypt(data, key);
console.log(`${uuid};sm4.sm4Decrypt 返回: ${resKey}`)
res.status(200).send(resKey);
} catch (e) {
console.error(e.stack)
return res.status(500).send(e.message)
} finally {
console.log(`${uuid};sm4Encrypt ${new Date() - start} ms`)
}
})
router.post('/getSign', async (req, res) => {
let uuid = UUIDUtil.uuid;
let data = req.body.data
let key = req.body.key
let start = new Date();
try {
// 执行
let resKey = sm4Service.getSign(data, key);
console.log(`${uuid};sm4.getSign 返回: ${resKey}`)
res.status(200).send(resKey);
} catch (e) {
console.error(e.stack)
return res.status(500).send(e.message)
} finally {
console.log(`${uuid};getSign ${new Date() - start} ms`)
}
})
router.post('/getSm2', async (req, res) => {
let uuid = UUIDUtil.uuid;
let key = req.body.key
let publicKey = req.body.publicKey
let mode = req.body.mode
let start = new Date();
try {
// 执行
let resKey = sm4Service.getSm2(key, publicKey, mode);
console.log(`${uuid};sm4.getSm2 返回: ${resKey}`)
res.status(200).send(resKey);
} catch (e) {
console.error(e.stack)
return res.status(500).send(e.message)
} finally {
console.log(`${uuid};getSm2 ${new Date() - start} ms`)
}
})
module.exports = router