我正在尝试遵循此回复并使用 hexdump、xxd 和 sed 更改文件中的一些十六进制字节。
根据该响应,在将使用 keytool(恰好是 base-64 PEM 格式)生成的 CSR 转换为 DER 后,我应该能够进行直接字节替换,替换0x13
为0x0c
.
这是我尝试过的:
#convert csr pem to der
openssl req -in openfire.csr -outform der -out openfire_csr.der
cat openfire_csr.der | grep -aP '\x13' | md5sum
#e61387f5c1xxxxeb832df102524220d81 - #it has some length
#perform replacement of hex bytes:
sed 's/\x13/\x0c/g' openfire_csr.der
#convert csr der to csr pem:
openssl req -in openfire_csr.der -outform pem -out openfire_utf8.csr
#unable to load X509 request
#3078055660:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:698:Expecting: CERTIFICATE REQUEST
我怀疑我错过了一些转换,但我不知道在哪里。
如何使用可用工具(如 、 和/或 )执行sed
字节xxd
替换hexdump
?