如何將 Base 64 編碼的公鑰 (.pem) 轉換為 bytearray?

如何將 Base 64 編碼的公鑰 (.pem) 轉換為 bytearray?

我需要使用 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,...

答案1

sed -e '/----.*PUBLIC KEY----\|^[[:space:]]*$/d' praj.pem | 
    base64 -d | 
    hexdump -v -e '/1 "%02d, "' ; echo

這用於sed刪除空白行和包含公鑰的 BEGIN 和 END 標記的行,然後透過管道將base64 -d其解碼,然後使用hexdump自訂格式透過管道將位元組列印為逗號和空格分隔的十進制數字。最後echo用於確保輸出以換行符 ( \n) 結束。

輸出:

48, -126, 01, 34, 48, 13, 06, 09, 42, -122, 72, -122, -9, 13, 01, 01, 01, 05, ...

相關內容