Hex Artifact Content

Artifact f51c44a744689bdafc3c9209ea4566627a35d037:


0000: 23 21 20 2f 62 69 6e 2f 62 61 73 68 0a 0a 66 6f  #! /bin/bash..fo
0010: 72 20 66 69 6c 65 20 69 6e 20 22 24 40 22 3b 20  r file in "$@"; 
0020: 64 6f 0a 09 72 6d 20 2d 66 20 74 6d 70 66 69 6c  do..rm -f tmpfil
0030: 65 2e 78 35 30 39 0a 09 6f 70 65 6e 73 73 6c 20  e.x509..openssl 
0040: 78 35 30 39 20 2d 69 6e 20 22 24 7b 66 69 6c 65  x509 -in "${file
0050: 7d 22 20 2d 6f 75 74 20 74 6d 70 66 69 6c 65 2e  }" -out tmpfile.
0060: 78 35 30 39 20 2d 69 6e 66 6f 72 6d 20 70 65 6d  x509 -inform pem
0070: 20 2d 6f 75 74 66 6f 72 6d 20 64 65 72 0a 0a 09   -outform der...
0080: 70 75 62 6b 65 79 6c 65 6e 3d 22 24 28 6f 70 65  pubkeylen="$(ope
0090: 6e 73 73 6c 20 78 35 30 39 20 2d 69 6e 20 74 6d  nssl x509 -in tm
00a0: 70 66 69 6c 65 2e 78 35 30 39 20 2d 69 6e 66 6f  pfile.x509 -info
00b0: 72 6d 20 64 65 72 20 2d 74 65 78 74 20 2d 6e 6f  rm der -text -no
00c0: 6f 75 74 20 7c 20 67 72 65 70 20 27 52 53 41 20  out | grep 'RSA 
00d0: 50 75 62 6c 69 63 20 4b 65 79 3a 27 20 7c 20 73  Public Key:' | s
00e0: 65 64 20 27 73 40 5e 2e 2a 28 5c 28 5b 30 2d 39  ed 's@^.*(\([0-9
00f0: 5d 5b 30 2d 39 5d 2a 5c 29 20 62 69 74 29 2e 2a  ][0-9]*\) bit).*
0100: 24 40 5c 31 40 27 29 22 0a 09 63 65 72 74 6c 65  $@\1@')"..certle
0110: 6e 3d 22 24 28 73 74 61 74 20 2d 63 20 27 25 73  n="$(stat -c '%s
0120: 27 20 74 6d 70 66 69 6c 65 2e 78 35 30 39 29 22  ' tmpfile.x509)"
0130: 0a 09 63 65 72 74 3d 22 24 28 28 20 63 61 74 20  ..cert="$(( cat 
0140: 74 6d 70 66 69 6c 65 2e 78 35 30 39 20 7c 20 6f  tmpfile.x509 | o
0150: 64 20 2d 74 20 78 31 20 7c 20 63 75 74 20 2d 63  d -t x1 | cut -c
0160: 20 39 2d 20 7c 20 74 72 20 22 5c 6e 22 20 27 20   9- | tr "\n" ' 
0170: 27 3b 20 65 63 68 6f 20 29 20 7c 20 73 65 64 20  '; echo ) | sed 
0180: 27 73 40 20 40 40 67 3b 73 40 2e 2e 40 5c 5c 78  's@ @@g;s@..@\\x
0190: 26 40 67 27 29 22 0a 0a 09 63 61 74 20 3c 3c 20  &@g')"...cat << 
01a0: 5f 45 4f 46 5f 0a 09 7b 0a 09 09 7b 30 7d 2c 0a  _EOF_..{...{0},.
01b0: 09 09 30 2c 0a 09 09 24 7b 63 65 72 74 6c 65 6e  ..0,...${certlen
01c0: 7d 2c 0a 09 09 28 75 6e 73 69 67 6e 65 64 20 63  },...(unsigned c
01d0: 68 61 72 20 2a 29 20 22 24 7b 63 65 72 74 7d 22  har *) "${cert}"
01e0: 2c 0a 09 09 24 7b 70 75 62 6b 65 79 6c 65 6e 7d  ,...${pubkeylen}
01f0: 0a 09 7d 2c 0a 5f 45 4f 46 5f 0a 64 6f 6e 65 0a  ..},._EOF_.done.
0200: 0a 72 6d 20 2d 66 20 74 6d 70 66 69 6c 65 2e 78  .rm -f tmpfile.x
0210: 35 30 39 0a                                      509.