14 lines
461 B
TypeScript
14 lines
461 B
TypeScript
// import * as crypto from "crypto-js"
|
|
import { IUser } from "../models/user";
|
|
import { IClient } from "../models/client";
|
|
import * as crypto from "crypto"
|
|
|
|
function sha512(text: string) {
|
|
let hash = crypto.createHash("sha512")
|
|
hash.update(text)
|
|
return hash.digest("base64")
|
|
}
|
|
|
|
export function getEncryptionKey(user: IUser, client: IClient) {
|
|
return sha512(sha512(user.encryption_key) + sha512(client._id.toHexString()) + sha512(client.client_id))
|
|
} |