Угловые, jsrsasign и случайные варианты
Я использую jsrsasign Keyutil для создания пары ключей в приложении Angular. Он использует jsbn rng для случайности. По сути, я ангулизирую CSTRtool и хочу добавить пару дополнительных опций.
Я хотел бы представить использование генератора квантовых случайных чисел ANU и, возможно, window.crypto в будущем. Если честно, все решения, которые я придумала до сих пор, были довольно грубыми и включают взлом файла rng.js (пример ниже) и не используют никаких угловых качеств, таких как $ http, для получения случайных значений. Поэтому я выкидываю это, чтобы получить некоторые идеи.
function rng_get_bytes(ba) {
var url = "https://qrng.anu.edu.au/API/jsonI.php?type=uint8&length=" + ba.length;
var xmlHttp = new XMLHttpRequest();
xmlHttp.open( "GET", url, false ); // false for synchronous request
xmlHttp.send( null );
var jsonResponse = JSON.parse(xmlHttp.responseText);
ba = jsonResponse.data;
}
function SecureRandom() {}
SecureRandom.prototype.nextBytes = rng_get_bytes;