26
loading...
This website collects cookies to deliver better user experience
api/salaries/getbyemployeeid?employeeid=1031
api/salaries/getbyemployeeid
npm install crypto-js
const CryptoJS = require('crypto-js');
function Encrypt(str) {
var KEY = "12345678900000001234567890000000";//32 bit
var IV = "1234567890000000";//16 bits
var key = CryptoJS.enc.Utf8.parse(KEY);
var iv = CryptoJS.enc.Utf8.parse(IV);
var encrypted = '';
var srcs = CryptoJS.enc.Utf8.parse(str);
encrypted = CryptoJS.AES.encrypt(srcs, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
});
return encrypted.ciphertext.toString();
}
var encryptedEmployeeId = Encrypt("1031");
console.log(encryptedEmployeeId);
//result would be EF082204BF6F804099396A96CC7733F4
public class EncryptDecrypt
{
public static string AESDecryption(string input)
{
string AES_IV = "1234567890000000";//16 bits
string key = "12345678900000001234567890000000"; //32 bits
byte[] inputBytes = HexStringToByteArray(input);
byte[] keyBytes = Encoding.UTF8.GetBytes(key.Substring(0, 32));
using AesCryptoServiceProvider aesAlg = new AesCryptoServiceProvider();
aesAlg.Key = keyBytes;
aesAlg.IV = Encoding.UTF8.GetBytes(AES_IV.Substring(0, 16));
ICryptoTransform decryptor = aesAlg.CreateDecryptor(aesAlg.Key, aesAlg.IV);
using MemoryStream msEncrypt = new MemoryStream(inputBytes);
using CryptoStream csEncrypt = new CryptoStream(msEncrypt, decryptor, CryptoStreamMode.Read);
using StreamReader srEncrypt = new StreamReader(csEncrypt);
return srEncrypt.ReadToEnd();
}
private static byte[] HexStringToByteArray(string s)
{
s = s.Replace(" ", "");
byte[] buffer = new byte[s.Length / 2];
for (int i = 0; i < s.Length; i += 2)
buffer[i / 2] = (byte)Convert.ToByte(s.Substring(i, 2), 16);
return buffer;
}
}
Request-Id : EF082204BF6F804099396A96CC7733F4
public class RequestMiddleware
{
private readonly RequestDelegate _next;
public RequestMiddleware(RequestDelegate next)
{
_next = next;
}
public async Task Invoke(HttpContext context)
{
if (context.Request.Headers.TryGetValue("Request-Id", out var requestid))
{
var employeeid = EncryptDecrypt.AESDecryption(requestid);
}
await _next(context);
}
}
app.UseMiddleware(typeof(RequestMiddleware));