[英]Efficient way to repeatedly generate same random number in C++?
我正在研究安全的 LoRa 傳輸,我需要根據輸入計數器在發射器和接收器上生成相同的偽隨機數(這將是加密算法的一部分)。 所以對於給定的輸入,這個 function 應該給出相同的 output,就像哈希算法一樣。
作為一個例子,這就是我的意思,但正如您所看到的,計算會根據輸入而變長:
unsigned int f(unsigned int input) {
srand(1234);
for (unsigned int i = 0; i < input; i++) {
rand();
}
return rand();
}
有沒有更有效的方法來做到這一點? 我在 ESP32 微控制器上。
編輯。 感謝所有的答案。 我本來可以用 CRC function 完成我想做的事情,但根據你的建議,我最終放棄了這種方法,轉而使用標准加密算法。
今天出現了一個很好的問題,提出了隨機生成的標准函數: 獲取隨機數分布的 state(種子)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.