Ola,
Estou montando um projeto de revisão dos conteúdos e pesquisar coisas diferentes também. Para fazer um simples formulário de login, eu preciso fazer algo com criptografia, para não trafegar dados sensíveis pela rede. Tentei utilizar o "@types/crypto-js" e vi que as proprias que vem no pacote baixado do "Angular CLI" , mas não fui muito bem sucedido. Gostaria de dicas, ou até mesmo uma explicação de como fazer isso. Vi também alguns tópicos como JWT, mas para melhor compreensão gostaria de saber como enviar uma informação criptografada (no meu caso, a senha)
Pensei em seguir algo parecido com o que fiz no NodeJS:
let crypto = require('crypto');
const secret = 'iuriSenha';
const nonce = 'nonce';
const hash = crypto.createHmac('sha256', secret)
.update(nonce)
.digest('base64');
console.log("hash -> " + hash);
Porém a minha melhor evolução foi seguir os passos:
npm install --save crypto-js
npm install --save @types/crypto-js
... No meu component de teste...
import * as CryptoJS from 'crypto-js';
//Implementações...
console.log(CryptoJS.enc.Base64.parse('iuriSenha'));
//Continuação de implementações...
Att.