跳转至内容
  • 版块
  • 最新
  • 标签
  • 热门
折叠
品牌标识

YunTu Forum

YTMicro.com
  1. 主页
  2. Discussion & Question
  3. YTM32B1H系列
  4. HA01 MCAL中使用TRNG模块获取随机数

HA01 MCAL中使用TRNG模块获取随机数

已定时 已固定 已锁定 已移动 未解决 YTM32B1H系列
18 帖子 3 发布者 90 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 沈宇恒沈 离线
    沈宇恒沈 离线
    沈宇恒
    回复了zhai 最后由 编辑
    #8

    驱动校验要求长度是 4 的倍数,你如果要3字节的随机数生成出来自己扔掉就行,尽量缩短获取随机数的时间可以按 32 字节发一次作业存进池,每次请求从池里取 3 字节,池空了再触发下一次

    zhaiZ 1 条回复 最后回复
    0
    • zhaiZ 离线
      zhaiZ 离线
      zhai
      回复了沈宇恒 最后由 zhai 编辑
      #9

      沈宇恒 目前就是这样操作的,上面结构体中的配置参数还是按照demo中的什么都不修改,samp_szie设置为0x20,ent_dly设置为0x200,调用CryptoTest_Asyn_SingleCall_Random接口去获取也是按照32字节去获取的,但是获得的随机数还是相同的
      下图是连续两次获取的结果
      73713a2a-5536-4879-a367-43cb8b60f470-image.png
      826fabf6-52b8-48c0-8931-0bb63d2a27f3-image.png

      沈宇恒沈 2 条回复 最后回复
      0
      • 沈宇恒沈 离线
        沈宇恒沈 离线
        沈宇恒
        回复了zhai 最后由 编辑
        #10

        我刚刚试了一下并没有哦
        dc142309-a30f-4ad0-9390-d04c19607912-img_v3_02156_7a637570-c762-45a6-ab18-c54a2ffe6cbg.jpg
        d38429a4-e901-4133-9c6b-2218316a4d8f-img_v3_02156_704680e5-c40b-4589-bd7b-6d4a9659544g.jpg

        1 条回复 最后回复
        0
        • 沈宇恒沈 离线
          沈宇恒沈 离线
          沈宇恒
          回复了zhai 最后由 沈宇恒 编辑
          #11

          zhai 你用的是哪个版本的?以前的老版本不能32字节丢数据;而且你是不是改了内部代码,这个值是不能动的哦,samp_size你获取的字节不是改这个,是改Random_Generate_Length
          c91b87a0-fe7c-4a3e-ba23-b4b19bec1a90-image.png

          沈宇恒沈 1 条回复 最后回复
          0
          • zhaiZ 离线
            zhaiZ 离线
            zhai
            编写于 最后由 zhai 编辑
            #12

            我使用的macl版本是2.0.3,我之前确实修改的是上图中的内部代码,要修改samp_size是修改Random_Generate_Length?Random_Generate_Length是单次获取的长度,samp_size是生成熵时所采集的样本总数,按照介绍获取随机数的最大时间根samp_size、ent_dly、slow_clk有关,如果我想尽量减少生成的时间,那不应该修改samp_size吗?
            image.png

            1 条回复 最后回复
            0
            • 沈宇恒沈 离线
              沈宇恒沈 离线
              沈宇恒
              回复了沈宇恒 最后由 编辑
              #13

              原始采样总数0x200,256 个输出 bit 的熵不可能超过输入的原始采样数这是信息论下限,这个寄存器0x100已经是数学下限了,你改成0x20电路只能输出大量确定性内容,这个是TRNG 熵源的安全参数不能修改的哈,不要在这个上面挖时间,修改这个要重跑NIST SP800-22才能用

              zhaiZ 1 条回复 最后回复
              0
              • zhaiZ 离线
                zhaiZ 离线
                zhai
                回复了沈宇恒 最后由 编辑
                #14

                沈宇恒 好的,那如果要是想缩短单次获取的时间的话,就只能修改ent_dly或slow_bus_clk了对吧

                沈宇恒沈 1 条回复 最后回复
                0
                • 沈宇恒沈 离线
                  沈宇恒沈 离线
                  沈宇恒
                  回复了zhai 最后由 编辑
                  #15

                  嗯嗯,32 字节缓存那个来实现其实也缩短了

                  zhaiZ 1 条回复 最后回复
                  0
                  • zhaiZ 离线
                    zhaiZ 离线
                    zhai
                    回复了沈宇恒 最后由 zhai 编辑
                    #16

                    沈宇恒 好的,32字节缓存是什么?我看其他帖子,如果实际要读取的长度<32字节,还是要按照32字节去读取的,上层字节从32字节中取相应长度的数据就行,参考的是这个帖子
                    https://forum.ytmicro.com/topic/257/trng-真随机数产生时间计算/4?_=1766039682973
                    ce4448b2-92f6-4c3e-99df-f0ae31fed27e-image.png

                    沈宇恒沈 zhaiZ 2 条回复 最后回复
                    0
                    • 沈宇恒沈 离线
                      沈宇恒沈 离线
                      沈宇恒
                      回复了zhai 最后由 编辑
                      #17

                      zhai 如果实际要读取的长度<32字节,还是要按照32字节去读取的,上层字节从32字节中取相应长度的数据就行,就是这个意思

                      1 条回复 最后回复
                      0
                      • zhaiZ 离线
                        zhaiZ 离线
                        zhai
                        回复了zhai 最后由 编辑
                        #18

                        图中的修改samp size是不是不太对,其实是不能修改samp size的,我看其他用户修改samp size也是遇到类似的问题了

                        1 条回复 最后回复
                        0

                      • 云途开发生态介绍

                        快速上手云途开发生态

                      • 云途论坛规则/Yuntu Forum Rules

                        发帖前请查看

                      • YT CONFIG TOOL调查问卷

                        帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...

                      • can
                        28
                        demo
                        26
                        uds
                        14
                        lin stack
                        13
                        fbl
                        6
                        md14
                        6
                        yt-link
                        6
                        adc模块
                        4
                        Online Users
                        CHENXIANGC
                        CHENXIANG
                        YTCQ_shejiwangY
                        YTCQ_shejiwang
                        SANzyS
                        SANzy
                        FengJialuF
                        FengJialu
                        janJ
                        jan
                        RuiXuR
                        RuiXu
                        J0UserJLyJ
                        J0UserJLy
                        • 登录

                        • 登录或注册以进行搜索。
                        • 第一个帖子
                          最后一个帖子
                        0
                        • 版块
                        • 最新
                        • 标签
                        • 热门