次の値を取ることができるシェルコマンドまたはシェルスクリプトが必要です
dGhlIHNhbXBsZSBub25jZQ==258EAFA5-E914-47DA-95CA-C5AB0DC85B11
次に、その SHA-1 ハッシュを生成します。
0xb3 0x7a 0x4f 0x2c 0xc0 0x62 0x4f 0x16 0x90 0xf6
0x46 0x06 0xcf 0x38 0x59 0x45 0xb2 0xbe 0xc4 0xea
Base64を使用してこの値をエンコードすると、次のようになります
s3pPLMBiTxaQ9kYGzzhZRbK+xOo=
次のコードを使用して、Javaでこれを簡単に行うことができます
String key = "dGhlIHNhbXBsZSBub25jZQ==258EAFA5-E914-47DA-95CA-C5AB0DC85B11";
MessageDigest md = MessageDigest.getInstance("SHA-1");
//s3pPLMBiTxaQ9kYGzzhZRbK+xOo=
System.out.println(Base64.encodeBase64String(md.digest(key.getBytes())));
これまで私は試してきました
echo -n "dGhlIHNhbXBsZSBub25jZQ==258EAFA5-E914-47DA-95CA-C5AB0DC85B11" | openssl sha1 -binary | base64
そして念のため
echo -n "dGhlIHNhbXBsZSBub25jZQ==258EAFA5-E914-47DA-95CA-C5AB0DC85B11" | openssl dgst -sha1 | base64
しかし、それらはすべて間違った値を出力します。
この問題を解決するために、私にいくつかの提案をするか、私を助けてください。
前もって感謝します。