gpt4 book ai didi

linux - 生成唯一的 IV header

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:43:01 24 4
gpt4 key购买 nike

我需要生成一个唯一的 IV(初始化向量) header 。

IV 为 96 位长,由年份组成(16 位,0 到65535),当前时间(64 位,今年是纳秒),和一个计数器(16 位)生成 96 位 IV。

如何在 CGI bash 脚本 中生成这个唯一标识符?

最佳答案

在 y2.sh 中:

#!/bin/bash
d2b() {
printf "%0${2}s\n" $(bc <<< "obase=2;$1")|tr ' ' '0'
}

counter=1
eval "$(date +'firstday=%Y-01-01 now=%s nano=%N year=%Y')"
midnight=$(date -d "$firstday 0" +%s)
seconds=$((now - midnight))
header=$(d2b $year 16)$(d2b $seconds$nano 64)$(d2b $counter 16)
echo header: $header
  • function() { ... } - 在 bash 中定义自定义函数
  • bc <<< "obase=2;$1 - 十进制到二进制 sed 的第一个参数
  • printf "%0${2}s\n"| ... | tr - 用前导零填充到长度 $2
  • eval date... - 将当前时间放入变量
  • date -d "$firstday 0"+%s - unixtime at jan1 00:00(秒)

运行它:

$ ./y2.sh
header: 000001111110000000000000011000100101000110110001011001011100011000011100010000010000000000000001

关于linux - 生成唯一的 IV header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40624326/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com