Идеи для реализации сквозного шифрования в приложении React и WebSocket?
У меня есть приложение чата, и я хочу, чтобы оно было «Не для записи». Мне нужен обмен ключами между клиентами, использующими протокол Диффи Хеллмана и асимметричный ключ.
Мое приложение написано на JS с использованием React и WebSocket.
Мой бэкэнд выглядит так:
const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 3030 });
wss.on('connection', function connection(ws) {
ws.on('message', function incoming(data) {
wss.clients.forEach(function each(client) {
if (client !== ws && client.readyState === WebSocket.OPEN) {
client.send(data);
}
});
});
});
Я бы предпочел не использовать готовые библиотеки. Следует ли мне писать дополнительный код для своего приложения или все это должно быть сделано с помощью командной строки? Есть идеи, с чего мне начать? Как мне начать внедрять ключи в свой код?
Должна ли моя страница входа в приложение чата включать «ключ» или пароль для каждого пользователя?