色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

技術分享 | 隨機數生成過慢導致系統阻塞怎么辦?

啟揚ARM嵌入式開發 ? 2022-08-15 09:20 ? 次閱讀

/dev/random和/dev/urandom是linux上的隨機數生成器,是個字符設備,為系統提供隨機數。隨機數主要應用在加密方面,沒有加密的操作都是可預測且不安全的。

linux上隨機數的生成原理

linux上隨機數的生成原理是將系統的中斷信息收集起來放入熵池中,通過算法生成更多無序的數據,有了大量的無序數據之后,每次獲取隨機數,就會從池子中讀取指定的字節序列,而這些字節序列就是生成器生成的隨機數。

linux開機時就會伴隨著random設備的初始化,一般我們經常會遇見這兩條log:

random: crng init done,

random: 7 urandom warning(s) missed due to ratelimiting,

這說明隨機數已經初始化完成,可以隨時請求使用。但是在某些時候會卡在這個log很長時間,這是因為在開機時系統中斷不夠或程序運行時熵不足,生成隨機數非常緩慢,導致阻塞,進而導致無法開機、app無法正常運行等一系列bug。

為了解決這個問題,我們可以移植一個工具對熵池進行補熵,這樣隨機數生成器就會快速生成隨機數,解決阻塞導致的一系列問題。

解決方案

解決這個問題的工具有很多,這里我們選用移植haveged工具,并使用啟揚IAC-IMX8MM-kit開發板展示具體操作過程。

移植haveged-1.9.3

首先source我們的sdk開發環境,然后進入到源碼內,通過configure配置makfile文件,命令如下:

./configure --host=aarch64-poky-linux --prefix=/home/ylook/haveged

配置完成后執行make && make install命令,會在/home/ylook/haveged目錄下生成編譯完成后的二進制文件以及相關庫文件,如下圖所示:

(注:筆者路徑有所不同,根據環境自行更改即可)

279007a6-1a5a-11ed-9ade-dac502259ad0.png

注意:

為防止錯誤,可以使用file命令檢查二進制文件架構,保證為aarch64架構即可。

將編譯出來的二進制文件拷貝到板子的/usr/bin/目錄,庫文件拷貝到/usr/lib/目錄,執行haveged --h命令,如下圖所示:

27b356a2-1a5a-11ed-9ade-dac502259ad0.png

這里就相當于我們已經把板子里的環境配置好了,為了能夠開機就使用該工具生成熵,所以我們需要在開機進程中將該工具設置為自動運行。

因為啟揚i.MX8M Mini開發板上使用systemed工具配置相關服務,所以我們需要寫一個service,然后讓它開機運行,具體service如下:

27cc616a-1a5a-11ed-9ade-dac502259ad0.png

使用systemctl enable haveged之后重啟就會生效,可從開機log中看出,如圖所示,在很早之前初始化就已經完成了。

27efc4e8-1a5a-11ed-9ade-dac502259ad0.png

也可以使用命令cat /proc/sys/kernel/random/entropy_avail,查看當前熵值,在沒有haveged之前該值只有幾十幾百,而開啟之后有幾千。

281a6a90-1a5a-11ed-9ade-dac502259ad0.png

這樣,就完美解決了隨機數生成過慢導致系統阻塞的問題。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 生成器
    +關注

    關注

    7

    文章

    319

    瀏覽量

    21081
收藏 人收藏

    評論

    相關推薦

    《DNESP32S3使用指南-IDF版_V1.6》第三十一章 RNG實驗

    如下幾個小節:31.1 隨機數發生器簡介31.2 硬件設計31.3 程序設計31.4 下載驗證 31.1隨機數發生器簡介ESP32-S3內置一個真隨機數發生器(RNG),其生成的32
    發表于 12-26 09:31

    “安徽造”量子隨機數芯片通過國家密碼管理局檢測

    近日,國家密碼管理局商用密碼檢測中心出具報告,由安徽問天量子科技公司自主研發的WT-QRNG300量子隨機數芯片通過檢測。這是國內首家官方商密報告認定、且已實現商用量產及產業化的“量子隨機數芯片
    的頭像 發表于 12-19 19:06 ?403次閱讀

    問天量子和方寸微電子聯合發布量子隨機數芯片

    近日,國家密碼管理局商用密碼檢測中心出具報告,問天量子和方寸微電子聯合自主研發的WT-QRNG300量子隨機數芯片通過檢測,這是國內首家官方商密報告認定、且已實現商用量產及產業化的“量子隨機數芯片”產品。
    的頭像 發表于 12-19 16:18 ?373次閱讀

    對稱加密技術有哪些常見的安全漏洞?

    對稱加密技術在實際應用中可能面臨的安全漏洞主要包括: 實現不當: 錯誤的加解密實現、弱隨機數生成器或其他邏輯錯誤都可能導致安全漏洞。 漏洞利用: 利用已知的弱點或攻擊手段,如理論上可行
    的頭像 發表于 12-16 13:59 ?174次閱讀

    LuatOS開發之4G模組隨機數(random)|實戰指南

    本次學習的實戰是關于4G模組LuatOS開發的隨機數示例指南,希望大家有所收獲。
    的頭像 發表于 11-30 09:51 ?277次閱讀
    LuatOS開發之4G模組<b class='flag-5'>隨機數</b>(random)|實戰指南

    解析Air780E模組LuatOS開發的隨機數(random) 示例篇

    本文主要解析的是低功耗4G模組Air780E的LuatOS開發隨機數(random)實例,我以整理成文分享給大家。
    的頭像 發表于 11-29 20:23 ?188次閱讀
    解析Air780E模組LuatOS開發的<b class='flag-5'>隨機數</b>(random) 示例篇

    藍牙AES+RNG如何保障物聯網信息安全

    引入由隨機數生成器產生的隨機數作為時間戳或序列號,系統能夠識別并拒絕重復使用的舊消息,從而防止攻擊者利用歷史信息進行欺詐。此外,隨機數
    發表于 11-08 15:38

    雅特力AT32 MCU的隨機數生成

    概述產品和生態系統安全性的需求比以往任何時候都更加重要。真隨機數是所有安全系統的核心,其質量會影響設計的安全性。因此在沒有內置硬件TRNG的AT32的微控制器系列中,如何提高隨機數的有
    的頭像 發表于 08-30 12:26 ?676次閱讀
    雅特力AT32 MCU的<b class='flag-5'>隨機數</b><b class='flag-5'>生成</b>

    如何在FPGA中實現隨機數發生器

    分享如何在Xilinx Breadboardable Spartan-7 FPGA, CMOD S7中實現4位偽隨機數發生器(PRNGs)。
    的頭像 發表于 08-06 11:20 ?754次閱讀
    如何在FPGA中實現<b class='flag-5'>隨機數</b>發生器

    大電流一體成型電感有噪音怎么辦

    電子發燒友網站提供《大電流一體成型電感有噪音怎么辦.docx》資料免費下載
    發表于 07-30 12:30 ?0次下載

    如何使用Python生成四位隨機數

    為了實現這些目標,Python 為我們提供了random() 模塊。random() 是一個內置的 Python 模塊,用于生成隨機數。
    的頭像 發表于 04-15 12:47 ?735次閱讀

    電容負極熔斷怎么辦

    在現代科技發展的時代,電容器在各個領域都扮演著重要的角色。然而,由于各種原因,電容器的負極可能會發生熔斷的情況。那么,當電容器的負極熔斷時,我們應該怎么辦呢?
    的頭像 發表于 04-10 14:15 ?569次閱讀
    電容負極熔斷<b class='flag-5'>怎么辦</b>

    TC389芯片上HSM的TRNG真隨機數功能,如何判斷其隨機能力呢?

    想咨詢一下,TC389芯片上HSM的TRNG真隨機數功能,如何判斷其隨機能力呢?有什么資料或者測試內容嗎?
    發表于 03-05 07:20

    請問rt-thread studio如何使用硬件隨機數生成器?

    指導一下。 經過查詢得知可以使用rt_hw_random_get()函數來獲取硬件隨機數,請文需要做什么配置才能使用rt_hw_random_get()函數。
    發表于 02-23 08:03

    怎么辦?晶振沒有信號輸出

    怎么辦?晶振沒有信號輸出? 晶振作為電子設備中常見的元器件之一,在電子系統中起到時鐘信號供應的重要作用。然而,有時我們可能會遇到晶振沒有信號輸出的問題,這會嚴重影響設備的正常運行。本文將針對這一
    的頭像 發表于 01-25 13:51 ?1151次閱讀
    主站蜘蛛池模板: 国产精品人成视频免费999 | 亚洲 日韩 欧美 国产专区 | 伊人精品国产 | 亚洲免费综合色视频 | 精品视频免费在线 | 久久a级片 | 久在线观看福利视频 | 99RE久久精品国产 | 91精品欧美一区二区三区 | 久久精品天天爽夜夜爽 | 极品少妇高潮啪啪AV无码吴梦梦 | 曰本少妇高潮久久久久久 | 日日噜噜噜夜夜爽爽狠狠 | 日本电影免费久久精品 | 午夜伦理电影在线观免费 | 94vvv男人的天堂 | 花蝴蝶在线高清视频观看免费播放 | 久久一er精这里有精品 | 两个洞一起插哦!好刺激 | wwwxxx日本护士 | 亚洲伊人色| www.伊人| 好大好爽好深舒服死了 | 姐姐不~不可以动漫在线观看 | 成 人 免费 黄 色 网站无毒下载 | 大胸美女洗澡扒奶衣挤奶 | 亚洲国产在线观看免费视频 | 一道精品视频一区二区 | 四虎一级片| 在线日韩欧美一区二区三区 | 日韩午夜影院 | 欧美一区二区三区男同 | 涩涩视频www在线观看入口 | 一边吃奶一边添P好爽故事 一边吃奶一边啪啪真舒服 一本之道加勒比在线观看 一本之道高清在线观看一区 | 丰满饥渴老太性hd | 成人国产精品视频频 | 亚洲电影第1页 | 又色又爽又黄gif动态视频 | 毛片免费在线 | 日本无码毛片久久久九色综合 | 久久精品观看影院2828 |