変数を作成してRc2Key
から16進数に変換する必要があります。私は2つのコマンドでこれを行いました。変数Rc2Key
の長さは16文字でなければならないので、テストモジュールでは "DummyRC2Key1"をRc2Key
。
Rc2Key="DummyRC2Key1"
HexRc2Key=$(printf "${Rc2Key}" | xxd -p)
完了したら、CTFキーを8秒で入力する必要があります0
。次のコマンドを使用してこれを実行し、このパディングされたリストをCTFpadlist.csvに出力します。
zeros=00000000
while read CTFlist; do echo $CTFlist$zeros; done < CTFlist.csv > CTFpadlist.csv
パディングされたCTFとを使用してHexRc2Key
CTFpadlist.csvを暗号化する必要があります。
while read CTFpadlist; do echo -n "$CTFpadlist" | xxd -r -p | openssl enc -rc2-cbc -nopad -K "${HexRc2Key}" -iv 0000000000000000 | xxd -plain | tr d '/n'; done < CTFpadlist.csv > EncCTFlist.csv
問題はこれです。私の16進結果には「/」があり、次のようになります。
24a8/be115/59a9/c62bbfe6249fbc/44af127fcf97a0a43
16進数は許可されていません。私がここで何を間違っているのか?
答え1
代わりに
tr d '/n';
おそらくあなたは
tr -d '\n';