Advertisement
Guest User

Untitled

a guest
Jul 27th, 2017
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. if [[ ! -x $(which openssl) ]] ; then
  4. printf "Didn't find openssl binary. Can't encode rsdf container.\n"
  5. return 1
  6. fi
  7.  
  8. containerOut="${containerDir}/${containerFileNameFormat}.rsdf"
  9. sed -n -e 's/^[^/]*\///p' "$1" > "${tmpdir}/links.txt"
  10. echo -n "" > "$containerOut"
  11.  
  12. rm -f "${tmpdir}/in.step1" "${tmpdir}/in.step4"
  13. lc=0
  14. declare -a ll
  15. ll[0]=0
  16. while read ln ; do
  17. echo -n "CCF: $ln" >> "${tmpdir}/in.step1"
  18. lc=$(($lc+1))
  19. ll[$lc]=$(openssl enc -aes-192-cfb8 -K 8C35192D964DC3182C6F84F3252239EB4A320D2500000000 -iv A3D5A33CB95AC1F5CBDB1AD25CB0A7AA -in "${tmpdir}/in.step1" | wc -c)
  20. done < "${tmpdir}/links.txt"
  21. openssl enc -aes-192-cfb8 -K 8C35192D964DC3182C6F84F3252239EB4A320D2500000000 -iv A3D5A33CB95AC1F5CBDB1AD25CB0A7AA -in "${tmpdir}/in.step1" -out "${tmpdir}/in.step2"
  22. i=0
  23. while [[ $i -lt $lc ]] ; do
  24. laststart=${ll[$i]}
  25. i=$(($i+1))
  26. thisstart=${ll[$i]}
  27. let 'count = thisstart - laststart'
  28. dd bs=1 skip=$laststart count=$count if="${tmpdir}/in.step2" of="${tmpdir}/in.step3" 2>/dev/null
  29. openssl enc -base64 -in "${tmpdir}/in.step3" | tr -d '\n' >> "${tmpdir}/in.step4"
  30. echo -en "\n" >> "${tmpdir}/in.step4"
  31. done
  32. while read -n 1 byte ; do
  33. if [[ "X$byte" == "X" ]] ; then
  34. echo -n 0D0A
  35. else
  36. printf "%.2X" \'$byte
  37. fi
  38. done < "${tmpdir}/in.step4" > "$containerOut"
  39. echo -en "\r\n" >> "$containerOut"
  40. // rm -f "${tmpdir}/in.step1" "${tmpdir}/in.step2" "${tmpdir}/in.step3" "${tmpdir}/in.step4"
  41.  
  42. return 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement