Openssl
如何將 base 64 編碼的公鑰(.pem)轉換為字節數組?
我需要使用 openssl 將 .pem 格式的 Base 64 編碼公鑰文件轉換為字節數組。
需要從以下格式轉換公鑰:
----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxl4aRnRMBB9GZrNgy6sy seyIA3Ek3a1xg0b8gKrCSgnSjH+lqtBGwtzKqM020piE1q0YrzGpfQxNJ8HPRc0F OlII7VKuCFGqEuLH2+kFJPUUdRqBr0iN/D8ADp9rLEL2Q4F7qM1t0z0IW6zD -----END PUBLIC KEY-----
到這種格式:
48, -127, -97, 48, 13, 6, 9, 42, -122, 72, -122, -9, 13,...
sed -e '/----.*PUBLIC KEY----\|^[[:space:]]*$/d' praj.pem | base64 -d | hexdump -v -e '/1 "%02d, "' ; echo
這用於
sed
刪除包含公鑰的 BEGIN 和 END 標記的空白行和行,然後通過管道將base64 -d
其解碼,然後hexdump
使用自定義格式將其管道以將字節列印為逗號和空格分隔的十進制數字. finallyecho
用於確保輸出以換行符 (\n
) 結束。輸出:
48, -126, 01, 34, 48, 13, 06, 09, 42, -122, 72, -122, -9, 13, 01, 01, 01, 05, ...