Hex Artifact Content

Artifact 0b72bd3c23014c80a68954e779e1a395e64785e3:


0000: 2f 2a 0a 20 2a 20 43 41 43 4b 65 79 20 43 68 72  /*. * CACKey Chr
0010: 6f 6d 65 4f 53 20 63 68 72 6f 6d 65 2e 63 65 72  omeOS chrome.cer
0020: 74 69 66 69 63 61 74 65 50 72 6f 76 69 64 65 72  tificateProvider
0030: 20 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 0a   Implementation.
0040: 20 2a 2f 0a 0a 2f 2a 20 4d 41 52 4b 31 20 2a 2f   */../* MARK1 */
0050: 0a 2f 2a 0a 20 2a 20 6a 73 72 73 61 73 69 67 6e  ./*. * jsrsasign
0060: 20 35 2e 30 2e 32 20 28 63 29 20 32 30 31 30 2d   5.0.2 (c) 2010-
0070: 32 30 31 35 20 4b 65 6e 6a 69 20 55 72 75 73 68  2015 Kenji Urush
0080: 69 6d 61 20 7c 20 6b 6a 75 72 2e 67 69 74 68 75  ima | kjur.githu
0090: 62 2e 63 6f 6d 2f 6a 73 72 73 61 73 69 67 6e 2f  b.com/jsrsasign/
00a0: 6c 69 63 65 6e 73 65 0a 20 2a 2f 0a 0a 2f 2a 0a  license. */../*.
00b0: 79 61 68 6f 6f 2d 6d 69 6e 2e 6a 73 0a 43 6f 70  yahoo-min.js.Cop
00c0: 79 72 69 67 68 74 20 28 63 29 20 32 30 31 31 2c  yright (c) 2011,
00d0: 20 59 61 68 6f 6f 21 20 49 6e 63 2e 20 41 6c 6c   Yahoo! Inc. All
00e0: 20 72 69 67 68 74 73 20 72 65 73 65 72 76 65 64   rights reserved
00f0: 2e 0a 43 6f 64 65 20 6c 69 63 65 6e 73 65 64 20  ..Code licensed 
0100: 75 6e 64 65 72 20 74 68 65 20 42 53 44 20 4c 69  under the BSD Li
0110: 63 65 6e 73 65 3a 0a 68 74 74 70 3a 2f 2f 64 65  cense:.http://de
0120: 76 65 6c 6f 70 65 72 2e 79 61 68 6f 6f 2e 63 6f  veloper.yahoo.co
0130: 6d 2f 79 75 69 2f 6c 69 63 65 6e 73 65 2e 68 74  m/yui/license.ht
0140: 6d 6c 0a 76 65 72 73 69 6f 6e 3a 20 32 2e 39 2e  ml.version: 2.9.
0150: 30 0a 2a 2f 0a 69 66 28 74 79 70 65 6f 66 20 59  0.*/.if(typeof Y
0160: 41 48 4f 4f 3d 3d 22 75 6e 64 65 66 69 6e 65 64  AHOO=="undefined
0170: 22 7c 7c 21 59 41 48 4f 4f 29 7b 76 61 72 20 59  "||!YAHOO){var Y
0180: 41 48 4f 4f 3d 7b 7d 3b 7d 59 41 48 4f 4f 2e 6e  AHOO={};}YAHOO.n
0190: 61 6d 65 73 70 61 63 65 3d 66 75 6e 63 74 69 6f  amespace=functio
01a0: 6e 28 29 7b 76 61 72 20 62 3d 61 72 67 75 6d 65  n(){var b=argume
01b0: 6e 74 73 2c 67 3d 6e 75 6c 6c 2c 65 2c 63 2c 66  nts,g=null,e,c,f
01c0: 3b 66 6f 72 28 65 3d 30 3b 65 3c 62 2e 6c 65 6e  ;for(e=0;e<b.len
01d0: 67 74 68 3b 65 3d 65 2b 31 29 7b 66 3d 28 22 22  gth;e=e+1){f=(""
01e0: 2b 62 5b 65 5d 29 2e 73 70 6c 69 74 28 22 2e 22  +b[e]).split("."
01f0: 29 3b 67 3d 59 41 48 4f 4f 3b 66 6f 72 28 63 3d  );g=YAHOO;for(c=
0200: 28 66 5b 30 5d 3d 3d 22 59 41 48 4f 4f 22 29 3f  (f[0]=="YAHOO")?
0210: 31 3a 30 3b 63 3c 66 2e 6c 65 6e 67 74 68 3b 63  1:0;c<f.length;c
0220: 3d 63 2b 31 29 7b 67 5b 66 5b 63 5d 5d 3d 67 5b  =c+1){g[f[c]]=g[
0230: 66 5b 63 5d 5d 7c 7c 7b 7d 3b 67 3d 67 5b 66 5b  f[c]]||{};g=g[f[
0240: 63 5d 5d 3b 7d 7d 72 65 74 75 72 6e 20 67 3b 7d  c]];}}return g;}
0250: 3b 59 41 48 4f 4f 2e 6c 6f 67 3d 66 75 6e 63 74  ;YAHOO.log=funct
0260: 69 6f 6e 28 64 2c 61 2c 63 29 7b 76 61 72 20 62  ion(d,a,c){var b
0270: 3d 59 41 48 4f 4f 2e 77 69 64 67 65 74 2e 4c 6f  =YAHOO.widget.Lo
0280: 67 67 65 72 3b 69 66 28 62 26 26 62 2e 6c 6f 67  gger;if(b&&b.log
0290: 29 7b 72 65 74 75 72 6e 20 62 2e 6c 6f 67 28 64  ){return b.log(d
02a0: 2c 61 2c 63 29 3b 7d 65 6c 73 65 7b 72 65 74 75  ,a,c);}else{retu
02b0: 72 6e 20 66 61 6c 73 65 3b 7d 7d 3b 59 41 48 4f  rn false;}};YAHO
02c0: 4f 2e 72 65 67 69 73 74 65 72 3d 66 75 6e 63 74  O.register=funct
02d0: 69 6f 6e 28 61 2c 66 2c 65 29 7b 76 61 72 20 6b  ion(a,f,e){var k
02e0: 3d 59 41 48 4f 4f 2e 65 6e 76 2e 6d 6f 64 75 6c  =YAHOO.env.modul
02f0: 65 73 2c 63 2c 6a 2c 68 2c 67 2c 64 3b 69 66 28  es,c,j,h,g,d;if(
0300: 21 6b 5b 61 5d 29 7b 6b 5b 61 5d 3d 7b 76 65 72  !k[a]){k[a]={ver
0310: 73 69 6f 6e 73 3a 5b 5d 2c 62 75 69 6c 64 73 3a  sions:[],builds:
0320: 5b 5d 7d 3b 7d 63 3d 6b 5b 61 5d 3b 6a 3d 65 2e  []};}c=k[a];j=e.
0330: 76 65 72 73 69 6f 6e 3b 68 3d 65 2e 62 75 69 6c  version;h=e.buil
0340: 64 3b 67 3d 59 41 48 4f 4f 2e 65 6e 76 2e 6c 69  d;g=YAHOO.env.li
0350: 73 74 65 6e 65 72 73 3b 63 2e 6e 61 6d 65 3d 61  steners;c.name=a
0360: 3b 63 2e 76 65 72 73 69 6f 6e 3d 6a 3b 63 2e 62  ;c.version=j;c.b
0370: 75 69 6c 64 3d 68 3b 63 2e 76 65 72 73 69 6f 6e  uild=h;c.version
0380: 73 2e 70 75 73 68 28 6a 29 3b 63 2e 62 75 69 6c  s.push(j);c.buil
0390: 64 73 2e 70 75 73 68 28 68 29 3b 63 2e 6d 61 69  ds.push(h);c.mai
03a0: 6e 43 6c 61 73 73 3d 66 3b 66 6f 72 28 64 3d 30  nClass=f;for(d=0
03b0: 3b 64 3c 67 2e 6c 65 6e 67 74 68 3b 64 3d 64 2b  ;d<g.length;d=d+
03c0: 31 29 7b 67 5b 64 5d 28 63 29 3b 7d 69 66 28 66  1){g[d](c);}if(f
03d0: 29 7b 66 2e 56 45 52 53 49 4f 4e 3d 6a 3b 66 2e  ){f.VERSION=j;f.
03e0: 42 55 49 4c 44 3d 68 3b 7d 65 6c 73 65 7b 59 41  BUILD=h;}else{YA
03f0: 48 4f 4f 2e 6c 6f 67 28 22 6d 61 69 6e 43 6c 61  HOO.log("mainCla
0400: 73 73 20 69 73 20 75 6e 64 65 66 69 6e 65 64 20  ss is undefined 
0410: 66 6f 72 20 6d 6f 64 75 6c 65 20 22 2b 61 2c 22  for module "+a,"
0420: 77 61 72 6e 22 29 3b 7d 7d 3b 59 41 48 4f 4f 2e  warn");}};YAHOO.
0430: 65 6e 76 3d 59 41 48 4f 4f 2e 65 6e 76 7c 7c 7b  env=YAHOO.env||{
0440: 6d 6f 64 75 6c 65 73 3a 5b 5d 2c 6c 69 73 74 65  modules:[],liste
0450: 6e 65 72 73 3a 5b 5d 7d 3b 59 41 48 4f 4f 2e 65  ners:[]};YAHOO.e
0460: 6e 76 2e 67 65 74 56 65 72 73 69 6f 6e 3d 66 75  nv.getVersion=fu
0470: 6e 63 74 69 6f 6e 28 61 29 7b 72 65 74 75 72 6e  nction(a){return
0480: 20 59 41 48 4f 4f 2e 65 6e 76 2e 6d 6f 64 75 6c   YAHOO.env.modul
0490: 65 73 5b 61 5d 7c 7c 6e 75 6c 6c 3b 7d 3b 59 41  es[a]||null;};YA
04a0: 48 4f 4f 2e 65 6e 76 2e 70 61 72 73 65 55 41 3d  HOO.env.parseUA=
04b0: 66 75 6e 63 74 69 6f 6e 28 64 29 7b 76 61 72 20  function(d){var 
04c0: 65 3d 66 75 6e 63 74 69 6f 6e 28 69 29 7b 76 61  e=function(i){va
04d0: 72 20 6a 3d 30 3b 72 65 74 75 72 6e 20 70 61 72  r j=0;return par
04e0: 73 65 46 6c 6f 61 74 28 69 2e 72 65 70 6c 61 63  seFloat(i.replac
04f0: 65 28 2f 5c 2e 2f 67 2c 66 75 6e 63 74 69 6f 6e  e(/\./g,function
0500: 28 29 7b 72 65 74 75 72 6e 28 6a 2b 2b 3d 3d 31  (){return(j++==1
0510: 29 3f 22 22 3a 22 2e 22 3b 7d 29 29 3b 7d 2c 68  )?"":".";}));},h
0520: 3d 6e 61 76 69 67 61 74 6f 72 2c 67 3d 7b 69 65  =navigator,g={ie
0530: 3a 30 2c 6f 70 65 72 61 3a 30 2c 67 65 63 6b 6f  :0,opera:0,gecko
0540: 3a 30 2c 77 65 62 6b 69 74 3a 30 2c 63 68 72 6f  :0,webkit:0,chro
0550: 6d 65 3a 30 2c 6d 6f 62 69 6c 65 3a 6e 75 6c 6c  me:0,mobile:null
0560: 2c 61 69 72 3a 30 2c 69 70 61 64 3a 30 2c 69 70  ,air:0,ipad:0,ip
0570: 68 6f 6e 65 3a 30 2c 69 70 6f 64 3a 30 2c 69 6f  hone:0,ipod:0,io
0580: 73 3a 6e 75 6c 6c 2c 61 6e 64 72 6f 69 64 3a 30  s:null,android:0
0590: 2c 77 65 62 6f 73 3a 30 2c 63 61 6a 61 3a 68 26  ,webos:0,caja:h&
05a0: 26 68 2e 63 61 6a 61 56 65 72 73 69 6f 6e 2c 73  &h.cajaVersion,s
05b0: 65 63 75 72 65 3a 66 61 6c 73 65 2c 6f 73 3a 6e  ecure:false,os:n
05c0: 75 6c 6c 7d 2c 63 3d 64 7c 7c 28 6e 61 76 69 67  ull},c=d||(navig
05d0: 61 74 6f 72 26 26 6e 61 76 69 67 61 74 6f 72 2e  ator&&navigator.
05e0: 75 73 65 72 41 67 65 6e 74 29 2c 66 3d 77 69 6e  userAgent),f=win
05f0: 64 6f 77 26 26 77 69 6e 64 6f 77 2e 6c 6f 63 61  dow&&window.loca
0600: 74 69 6f 6e 2c 62 3d 66 26 26 66 2e 68 72 65 66  tion,b=f&&f.href
0610: 2c 61 3b 67 2e 73 65 63 75 72 65 3d 62 26 26 28  ,a;g.secure=b&&(
0620: 62 2e 74 6f 4c 6f 77 65 72 43 61 73 65 28 29 2e  b.toLowerCase().
0630: 69 6e 64 65 78 4f 66 28 22 68 74 74 70 73 22 29  indexOf("https")
0640: 3d 3d 3d 30 29 3b 69 66 28 63 29 7b 69 66 28 28  ===0);if(c){if((
0650: 2f 77 69 6e 64 6f 77 73 7c 77 69 6e 33 32 2f 69  /windows|win32/i
0660: 29 2e 74 65 73 74 28 63 29 29 7b 67 2e 6f 73 3d  ).test(c)){g.os=
0670: 22 77 69 6e 64 6f 77 73 22 3b 7d 65 6c 73 65 7b  "windows";}else{
0680: 69 66 28 28 2f 6d 61 63 69 6e 74 6f 73 68 2f 69  if((/macintosh/i
0690: 29 2e 74 65 73 74 28 63 29 29 7b 67 2e 6f 73 3d  ).test(c)){g.os=
06a0: 22 6d 61 63 69 6e 74 6f 73 68 22 3b 7d 65 6c 73  "macintosh";}els
06b0: 65 7b 69 66 28 28 2f 72 68 69 6e 6f 2f 69 29 2e  e{if((/rhino/i).
06c0: 74 65 73 74 28 63 29 29 7b 67 2e 6f 73 3d 22 72  test(c)){g.os="r
06d0: 68 69 6e 6f 22 3b 7d 7d 7d 69 66 28 28 2f 4b 48  hino";}}}if((/KH
06e0: 54 4d 4c 2f 29 2e 74 65 73 74 28 63 29 29 7b 67  TML/).test(c)){g
06f0: 2e 77 65 62 6b 69 74 3d 31 3b 7d 61 3d 63 2e 6d  .webkit=1;}a=c.m
0700: 61 74 63 68 28 2f 41 70 70 6c 65 57 65 62 4b 69  atch(/AppleWebKi
0710: 74 5c 2f 28 5b 5e 5c 73 5d 2a 29 2f 29 3b 69 66  t\/([^\s]*)/);if
0720: 28 61 26 26 61 5b 31 5d 29 7b 67 2e 77 65 62 6b  (a&&a[1]){g.webk
0730: 69 74 3d 65 28 61 5b 31 5d 29 3b 69 66 28 2f 20  it=e(a[1]);if(/ 
0740: 4d 6f 62 69 6c 65 5c 2f 2f 2e 74 65 73 74 28 63  Mobile\//.test(c
0750: 29 29 7b 67 2e 6d 6f 62 69 6c 65 3d 22 41 70 70  )){g.mobile="App
0760: 6c 65 22 3b 61 3d 63 2e 6d 61 74 63 68 28 2f 4f  le";a=c.match(/O
0770: 53 20 28 5b 5e 5c 73 5d 2a 29 2f 29 3b 69 66 28  S ([^\s]*)/);if(
0780: 61 26 26 61 5b 31 5d 29 7b 61 3d 65 28 61 5b 31  a&&a[1]){a=e(a[1
0790: 5d 2e 72 65 70 6c 61 63 65 28 22 5f 22 2c 22 2e  ].replace("_",".
07a0: 22 29 29 3b 7d 67 2e 69 6f 73 3d 61 3b 67 2e 69  "));}g.ios=a;g.i
07b0: 70 61 64 3d 67 2e 69 70 6f 64 3d 67 2e 69 70 68  pad=g.ipod=g.iph
07c0: 6f 6e 65 3d 30 3b 61 3d 63 2e 6d 61 74 63 68 28  one=0;a=c.match(
07d0: 2f 69 50 61 64 7c 69 50 6f 64 7c 69 50 68 6f 6e  /iPad|iPod|iPhon
07e0: 65 2f 29 3b 69 66 28 61 26 26 61 5b 30 5d 29 7b  e/);if(a&&a[0]){
07f0: 67 5b 61 5b 30 5d 2e 74 6f 4c 6f 77 65 72 43 61  g[a[0].toLowerCa
0800: 73 65 28 29 5d 3d 67 2e 69 6f 73 3b 7d 7d 65 6c  se()]=g.ios;}}el
0810: 73 65 7b 61 3d 63 2e 6d 61 74 63 68 28 2f 4e 6f  se{a=c.match(/No
0820: 6b 69 61 4e 5b 5e 5c 2f 5d 2a 7c 41 6e 64 72 6f  kiaN[^\/]*|Andro
0830: 69 64 20 5c 64 5c 2e 5c 64 7c 77 65 62 4f 53 5c  id \d\.\d|webOS\
0840: 2f 5c 64 5c 2e 5c 64 2f 29 3b 69 66 28 61 29 7b  /\d\.\d/);if(a){
0850: 67 2e 6d 6f 62 69 6c 65 3d 61 5b 30 5d 3b 7d 69  g.mobile=a[0];}i
0860: 66 28 2f 77 65 62 4f 53 2f 2e 74 65 73 74 28 63  f(/webOS/.test(c
0870: 29 29 7b 67 2e 6d 6f 62 69 6c 65 3d 22 57 65 62  )){g.mobile="Web
0880: 4f 53 22 3b 61 3d 63 2e 6d 61 74 63 68 28 2f 77  OS";a=c.match(/w
0890: 65 62 4f 53 5c 2f 28 5b 5e 5c 73 5d 2a 29 3b 2f  ebOS\/([^\s]*);/
08a0: 29 3b 69 66 28 61 26 26 61 5b 31 5d 29 7b 67 2e  );if(a&&a[1]){g.
08b0: 77 65 62 6f 73 3d 65 28 61 5b 31 5d 29 3b 7d 7d  webos=e(a[1]);}}
08c0: 69 66 28 2f 20 41 6e 64 72 6f 69 64 2f 2e 74 65  if(/ Android/.te
08d0: 73 74 28 63 29 29 7b 67 2e 6d 6f 62 69 6c 65 3d  st(c)){g.mobile=
08e0: 22 41 6e 64 72 6f 69 64 22 3b 61 3d 63 2e 6d 61  "Android";a=c.ma
08f0: 74 63 68 28 2f 41 6e 64 72 6f 69 64 20 28 5b 5e  tch(/Android ([^
0900: 5c 73 5d 2a 29 3b 2f 29 3b 69 66 28 61 26 26 61  \s]*);/);if(a&&a
0910: 5b 31 5d 29 7b 67 2e 61 6e 64 72 6f 69 64 3d 65  [1]){g.android=e
0920: 28 61 5b 31 5d 29 3b 7d 7d 7d 61 3d 63 2e 6d 61  (a[1]);}}}a=c.ma
0930: 74 63 68 28 2f 43 68 72 6f 6d 65 5c 2f 28 5b 5e  tch(/Chrome\/([^
0940: 5c 73 5d 2a 29 2f 29 3b 69 66 28 61 26 26 61 5b  \s]*)/);if(a&&a[
0950: 31 5d 29 7b 67 2e 63 68 72 6f 6d 65 3d 65 28 61  1]){g.chrome=e(a
0960: 5b 31 5d 29 3b 7d 65 6c 73 65 7b 61 3d 63 2e 6d  [1]);}else{a=c.m
0970: 61 74 63 68 28 2f 41 64 6f 62 65 41 49 52 5c 2f  atch(/AdobeAIR\/
0980: 28 5b 5e 5c 73 5d 2a 29 2f 29 3b 69 66 28 61 29  ([^\s]*)/);if(a)
0990: 7b 67 2e 61 69 72 3d 61 5b 30 5d 3b 7d 7d 7d 69  {g.air=a[0];}}}i
09a0: 66 28 21 67 2e 77 65 62 6b 69 74 29 7b 61 3d 63  f(!g.webkit){a=c
09b0: 2e 6d 61 74 63 68 28 2f 4f 70 65 72 61 5b 5c 73  .match(/Opera[\s
09c0: 5c 2f 5d 28 5b 5e 5c 73 5d 2a 29 2f 29 3b 69 66  \/]([^\s]*)/);if
09d0: 28 61 26 26 61 5b 31 5d 29 7b 67 2e 6f 70 65 72  (a&&a[1]){g.oper
09e0: 61 3d 65 28 61 5b 31 5d 29 3b 61 3d 63 2e 6d 61  a=e(a[1]);a=c.ma
09f0: 74 63 68 28 2f 56 65 72 73 69 6f 6e 5c 2f 28 5b  tch(/Version\/([
0a00: 5e 5c 73 5d 2a 29 2f 29 3b 69 66 28 61 26 26 61  ^\s]*)/);if(a&&a
0a10: 5b 31 5d 29 7b 67 2e 6f 70 65 72 61 3d 65 28 61  [1]){g.opera=e(a
0a20: 5b 31 5d 29 3b 7d 61 3d 63 2e 6d 61 74 63 68 28  [1]);}a=c.match(
0a30: 2f 4f 70 65 72 61 20 4d 69 6e 69 5b 5e 3b 5d 2a  /Opera Mini[^;]*
0a40: 2f 29 3b 69 66 28 61 29 7b 67 2e 6d 6f 62 69 6c  /);if(a){g.mobil
0a50: 65 3d 61 5b 30 5d 3b 7d 7d 65 6c 73 65 7b 61 3d  e=a[0];}}else{a=
0a60: 63 2e 6d 61 74 63 68 28 2f 4d 53 49 45 5c 73 28  c.match(/MSIE\s(
0a70: 5b 5e 3b 5d 2a 29 2f 29 3b 69 66 28 61 26 26 61  [^;]*)/);if(a&&a
0a80: 5b 31 5d 29 7b 67 2e 69 65 3d 65 28 61 5b 31 5d  [1]){g.ie=e(a[1]
0a90: 29 3b 7d 65 6c 73 65 7b 61 3d 63 2e 6d 61 74 63  );}else{a=c.matc
0aa0: 68 28 2f 47 65 63 6b 6f 5c 2f 28 5b 5e 5c 73 5d  h(/Gecko\/([^\s]
0ab0: 2a 29 2f 29 3b 69 66 28 61 29 7b 67 2e 67 65 63  *)/);if(a){g.gec
0ac0: 6b 6f 3d 31 3b 61 3d 63 2e 6d 61 74 63 68 28 2f  ko=1;a=c.match(/
0ad0: 72 76 3a 28 5b 5e 5c 73 5c 29 5d 2a 29 2f 29 3b  rv:([^\s\)]*)/);
0ae0: 69 66 28 61 26 26 61 5b 31 5d 29 7b 67 2e 67 65  if(a&&a[1]){g.ge
0af0: 63 6b 6f 3d 65 28 61 5b 31 5d 29 3b 7d 7d 7d 7d  cko=e(a[1]);}}}}
0b00: 7d 7d 72 65 74 75 72 6e 20 67 3b 7d 3b 59 41 48  }}return g;};YAH
0b10: 4f 4f 2e 65 6e 76 2e 75 61 3d 59 41 48 4f 4f 2e  OO.env.ua=YAHOO.
0b20: 65 6e 76 2e 70 61 72 73 65 55 41 28 29 3b 28 66  env.parseUA();(f
0b30: 75 6e 63 74 69 6f 6e 28 29 7b 59 41 48 4f 4f 2e  unction(){YAHOO.
0b40: 6e 61 6d 65 73 70 61 63 65 28 22 75 74 69 6c 22  namespace("util"
0b50: 2c 22 77 69 64 67 65 74 22 2c 22 65 78 61 6d 70  ,"widget","examp
0b60: 6c 65 22 29 3b 69 66 28 22 75 6e 64 65 66 69 6e  le");if("undefin
0b70: 65 64 22 21 3d 3d 74 79 70 65 6f 66 20 59 41 48  ed"!==typeof YAH
0b80: 4f 4f 5f 63 6f 6e 66 69 67 29 7b 76 61 72 20 62  OO_config){var b
0b90: 3d 59 41 48 4f 4f 5f 63 6f 6e 66 69 67 2e 6c 69  =YAHOO_config.li
0ba0: 73 74 65 6e 65 72 2c 61 3d 59 41 48 4f 4f 2e 65  stener,a=YAHOO.e
0bb0: 6e 76 2e 6c 69 73 74 65 6e 65 72 73 2c 64 3d 74  nv.listeners,d=t
0bc0: 72 75 65 2c 63 3b 69 66 28 62 29 7b 66 6f 72 28  rue,c;if(b){for(
0bd0: 63 3d 30 3b 63 3c 61 2e 6c 65 6e 67 74 68 3b 63  c=0;c<a.length;c
0be0: 2b 2b 29 7b 69 66 28 61 5b 63 5d 3d 3d 62 29 7b  ++){if(a[c]==b){
0bf0: 64 3d 66 61 6c 73 65 3b 62 72 65 61 6b 3b 7d 7d  d=false;break;}}
0c00: 69 66 28 64 29 7b 61 2e 70 75 73 68 28 62 29 3b  if(d){a.push(b);
0c10: 7d 7d 7d 7d 29 28 29 3b 59 41 48 4f 4f 2e 6c 61  }}}})();YAHOO.la
0c20: 6e 67 3d 59 41 48 4f 4f 2e 6c 61 6e 67 7c 7c 7b  ng=YAHOO.lang||{
0c30: 7d 3b 28 66 75 6e 63 74 69 6f 6e 28 29 7b 76 61  };(function(){va
0c40: 72 20 66 3d 59 41 48 4f 4f 2e 6c 61 6e 67 2c 61  r f=YAHOO.lang,a
0c50: 3d 4f 62 6a 65 63 74 2e 70 72 6f 74 6f 74 79 70  =Object.prototyp
0c60: 65 2c 63 3d 22 5b 6f 62 6a 65 63 74 20 41 72 72  e,c="[object Arr
0c70: 61 79 5d 22 2c 68 3d 22 5b 6f 62 6a 65 63 74 20  ay]",h="[object 
0c80: 46 75 6e 63 74 69 6f 6e 5d 22 2c 69 3d 22 5b 6f  Function]",i="[o
0c90: 62 6a 65 63 74 20 4f 62 6a 65 63 74 5d 22 2c 62  bject Object]",b
0ca0: 3d 5b 5d 2c 67 3d 7b 22 26 22 3a 22 26 61 6d 70  =[],g={"&":"&amp
0cb0: 3b 22 2c 22 3c 22 3a 22 26 6c 74 3b 22 2c 22 3e  ;","<":"&lt;",">
0cc0: 22 3a 22 26 67 74 3b 22 2c 27 22 27 3a 22 26 71  ":"&gt;",'"':"&q
0cd0: 75 6f 74 3b 22 2c 22 27 22 3a 22 26 23 78 32 37  uot;","'":"&#x27
0ce0: 3b 22 2c 22 2f 22 3a 22 26 23 78 32 46 3b 22 2c  ;","/":"&#x2F;",
0cf0: 22 60 22 3a 22 26 23 78 36 30 3b 22 7d 2c 64 3d  "`":"&#x60;"},d=
0d00: 5b 22 74 6f 53 74 72 69 6e 67 22 2c 22 76 61 6c  ["toString","val
0d10: 75 65 4f 66 22 5d 2c 65 3d 7b 69 73 41 72 72 61  ueOf"],e={isArra
0d20: 79 3a 66 75 6e 63 74 69 6f 6e 28 6a 29 7b 72 65  y:function(j){re
0d30: 74 75 72 6e 20 61 2e 74 6f 53 74 72 69 6e 67 2e  turn a.toString.
0d40: 61 70 70 6c 79 28 6a 29 3d 3d 3d 63 3b 7d 2c 69  apply(j)===c;},i
0d50: 73 42 6f 6f 6c 65 61 6e 3a 66 75 6e 63 74 69 6f  sBoolean:functio
0d60: 6e 28 6a 29 7b 72 65 74 75 72 6e 20 74 79 70 65  n(j){return type
0d70: 6f 66 20 6a 3d 3d 3d 22 62 6f 6f 6c 65 61 6e 22  of j==="boolean"
0d80: 3b 7d 2c 69 73 46 75 6e 63 74 69 6f 6e 3a 66 75  ;},isFunction:fu
0d90: 6e 63 74 69 6f 6e 28 6a 29 7b 72 65 74 75 72 6e  nction(j){return
0da0: 28 74 79 70 65 6f 66 20 6a 3d 3d 3d 22 66 75 6e  (typeof j==="fun
0db0: 63 74 69 6f 6e 22 29 7c 7c 61 2e 74 6f 53 74 72  ction")||a.toStr
0dc0: 69 6e 67 2e 61 70 70 6c 79 28 6a 29 3d 3d 3d 68  ing.apply(j)===h
0dd0: 3b 7d 2c 69 73 4e 75 6c 6c 3a 66 75 6e 63 74 69  ;},isNull:functi
0de0: 6f 6e 28 6a 29 7b 72 65 74 75 72 6e 20 6a 3d 3d  on(j){return j==
0df0: 3d 6e 75 6c 6c 3b 7d 2c 69 73 4e 75 6d 62 65 72  =null;},isNumber
0e00: 3a 66 75 6e 63 74 69 6f 6e 28 6a 29 7b 72 65 74  :function(j){ret
0e10: 75 72 6e 20 74 79 70 65 6f 66 20 6a 3d 3d 3d 22  urn typeof j==="
0e20: 6e 75 6d 62 65 72 22 26 26 69 73 46 69 6e 69 74  number"&&isFinit
0e30: 65 28 6a 29 3b 7d 2c 69 73 4f 62 6a 65 63 74 3a  e(j);},isObject:
0e40: 66 75 6e 63 74 69 6f 6e 28 6a 29 7b 72 65 74 75  function(j){retu
0e50: 72 6e 28 6a 26 26 28 74 79 70 65 6f 66 20 6a 3d  rn(j&&(typeof j=
0e60: 3d 3d 22 6f 62 6a 65 63 74 22 7c 7c 66 2e 69 73  =="object"||f.is
0e70: 46 75 6e 63 74 69 6f 6e 28 6a 29 29 29 7c 7c 66  Function(j)))||f
0e80: 61 6c 73 65 3b 7d 2c 69 73 53 74 72 69 6e 67 3a  alse;},isString:
0e90: 66 75 6e 63 74 69 6f 6e 28 6a 29 7b 72 65 74 75  function(j){retu
0ea0: 72 6e 20 74 79 70 65 6f 66 20 6a 3d 3d 3d 22 73  rn typeof j==="s
0eb0: 74 72 69 6e 67 22 3b 7d 2c 69 73 55 6e 64 65 66  tring";},isUndef
0ec0: 69 6e 65 64 3a 66 75 6e 63 74 69 6f 6e 28 6a 29  ined:function(j)
0ed0: 7b 72 65 74 75 72 6e 20 74 79 70 65 6f 66 20 6a  {return typeof j
0ee0: 3d 3d 3d 22 75 6e 64 65 66 69 6e 65 64 22 3b 7d  ==="undefined";}
0ef0: 2c 5f 49 45 45 6e 75 6d 46 69 78 3a 28 59 41 48  ,_IEEnumFix:(YAH
0f00: 4f 4f 2e 65 6e 76 2e 75 61 2e 69 65 29 3f 66 75  OO.env.ua.ie)?fu
0f10: 6e 63 74 69 6f 6e 28 6c 2c 6b 29 7b 76 61 72 20  nction(l,k){var 
0f20: 6a 2c 6e 2c 6d 3b 66 6f 72 28 6a 3d 30 3b 6a 3c  j,n,m;for(j=0;j<
0f30: 64 2e 6c 65 6e 67 74 68 3b 6a 3d 6a 2b 31 29 7b  d.length;j=j+1){
0f40: 6e 3d 64 5b 6a 5d 3b 6d 3d 6b 5b 6e 5d 3b 69 66  n=d[j];m=k[n];if
0f50: 28 66 2e 69 73 46 75 6e 63 74 69 6f 6e 28 6d 29  (f.isFunction(m)
0f60: 26 26 6d 21 3d 61 5b 6e 5d 29 7b 6c 5b 6e 5d 3d  &&m!=a[n]){l[n]=
0f70: 6d 3b 7d 7d 7d 3a 66 75 6e 63 74 69 6f 6e 28 29  m;}}}:function()
0f80: 7b 7d 2c 65 73 63 61 70 65 48 54 4d 4c 3a 66 75  {},escapeHTML:fu
0f90: 6e 63 74 69 6f 6e 28 6a 29 7b 72 65 74 75 72 6e  nction(j){return
0fa0: 20 6a 2e 72 65 70 6c 61 63 65 28 2f 5b 26 3c 3e   j.replace(/[&<>
0fb0: 22 27 5c 2f 60 5d 2f 67 2c 66 75 6e 63 74 69 6f  "'\/`]/g,functio
0fc0: 6e 28 6b 29 7b 72 65 74 75 72 6e 20 67 5b 6b 5d  n(k){return g[k]
0fd0: 3b 7d 29 3b 7d 2c 65 78 74 65 6e 64 3a 66 75 6e  ;});},extend:fun
0fe0: 63 74 69 6f 6e 28 6d 2c 6e 2c 6c 29 7b 69 66 28  ction(m,n,l){if(
0ff0: 21 6e 7c 7c 21 6d 29 7b 74 68 72 6f 77 20 6e 65  !n||!m){throw ne
1000: 77 20 45 72 72 6f 72 28 22 65 78 74 65 6e 64 20  w Error("extend 
1010: 66 61 69 6c 65 64 2c 20 70 6c 65 61 73 65 20 63  failed, please c
1020: 68 65 63 6b 20 74 68 61 74 20 22 2b 22 61 6c 6c  heck that "+"all
1030: 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 61 72   dependencies ar
1040: 65 20 69 6e 63 6c 75 64 65 64 2e 22 29 3b 7d 76  e included.");}v
1050: 61 72 20 6b 3d 66 75 6e 63 74 69 6f 6e 28 29 7b  ar k=function(){
1060: 7d 2c 6a 3b 6b 2e 70 72 6f 74 6f 74 79 70 65 3d  },j;k.prototype=
1070: 6e 2e 70 72 6f 74 6f 74 79 70 65 3b 6d 2e 70 72  n.prototype;m.pr
1080: 6f 74 6f 74 79 70 65 3d 6e 65 77 20 6b 28 29 3b  ototype=new k();
1090: 6d 2e 70 72 6f 74 6f 74 79 70 65 2e 63 6f 6e 73  m.prototype.cons
10a0: 74 72 75 63 74 6f 72 3d 6d 3b 6d 2e 73 75 70 65  tructor=m;m.supe
10b0: 72 63 6c 61 73 73 3d 6e 2e 70 72 6f 74 6f 74 79  rclass=n.prototy
10c0: 70 65 3b 69 66 28 6e 2e 70 72 6f 74 6f 74 79 70  pe;if(n.prototyp
10d0: 65 2e 63 6f 6e 73 74 72 75 63 74 6f 72 3d 3d 61  e.constructor==a
10e0: 2e 63 6f 6e 73 74 72 75 63 74 6f 72 29 7b 6e 2e  .constructor){n.
10f0: 70 72 6f 74 6f 74 79 70 65 2e 63 6f 6e 73 74 72  prototype.constr
1100: 75 63 74 6f 72 3d 6e 3b 7d 69 66 28 6c 29 7b 66  uctor=n;}if(l){f
1110: 6f 72 28 6a 20 69 6e 20 6c 29 7b 69 66 28 66 2e  or(j in l){if(f.
1120: 68 61 73 4f 77 6e 50 72 6f 70 65 72 74 79 28 6c  hasOwnProperty(l
1130: 2c 6a 29 29 7b 6d 2e 70 72 6f 74 6f 74 79 70 65  ,j)){m.prototype
1140: 5b 6a 5d 3d 6c 5b 6a 5d 3b 7d 7d 66 2e 5f 49 45  [j]=l[j];}}f._IE
1150: 45 6e 75 6d 46 69 78 28 6d 2e 70 72 6f 74 6f 74  EnumFix(m.protot
1160: 79 70 65 2c 6c 29 3b 7d 7d 2c 61 75 67 6d 65 6e  ype,l);}},augmen
1170: 74 4f 62 6a 65 63 74 3a 66 75 6e 63 74 69 6f 6e  tObject:function
1180: 28 6e 2c 6d 29 7b 69 66 28 21 6d 7c 7c 21 6e 29  (n,m){if(!m||!n)
1190: 7b 74 68 72 6f 77 20 6e 65 77 20 45 72 72 6f 72  {throw new Error
11a0: 28 22 41 62 73 6f 72 62 20 66 61 69 6c 65 64 2c  ("Absorb failed,
11b0: 20 76 65 72 69 66 79 20 64 65 70 65 6e 64 65 6e   verify dependen
11c0: 63 69 65 73 2e 22 29 3b 7d 76 61 72 20 6a 3d 61  cies.");}var j=a
11d0: 72 67 75 6d 65 6e 74 73 2c 6c 2c 6f 2c 6b 3d 6a  rguments,l,o,k=j
11e0: 5b 32 5d 3b 69 66 28 6b 26 26 6b 21 3d 3d 74 72  [2];if(k&&k!==tr
11f0: 75 65 29 7b 66 6f 72 28 6c 3d 32 3b 6c 3c 6a 2e  ue){for(l=2;l<j.
1200: 6c 65 6e 67 74 68 3b 6c 3d 6c 2b 31 29 7b 6e 5b  length;l=l+1){n[
1210: 6a 5b 6c 5d 5d 3d 6d 5b 6a 5b 6c 5d 5d 3b 7d 7d  j[l]]=m[j[l]];}}
1220: 65 6c 73 65 7b 66 6f 72 28 6f 20 69 6e 20 6d 29  else{for(o in m)
1230: 7b 69 66 28 6b 7c 7c 21 28 6f 20 69 6e 20 6e 29  {if(k||!(o in n)
1240: 29 7b 6e 5b 6f 5d 3d 6d 5b 6f 5d 3b 7d 7d 66 2e  ){n[o]=m[o];}}f.
1250: 5f 49 45 45 6e 75 6d 46 69 78 28 6e 2c 6d 29 3b  _IEEnumFix(n,m);
1260: 7d 72 65 74 75 72 6e 20 6e 3b 7d 2c 61 75 67 6d  }return n;},augm
1270: 65 6e 74 50 72 6f 74 6f 3a 66 75 6e 63 74 69 6f  entProto:functio
1280: 6e 28 6d 2c 6c 29 7b 69 66 28 21 6c 7c 7c 21 6d  n(m,l){if(!l||!m
1290: 29 7b 74 68 72 6f 77 20 6e 65 77 20 45 72 72 6f  ){throw new Erro
12a0: 72 28 22 41 75 67 6d 65 6e 74 20 66 61 69 6c 65  r("Augment faile
12b0: 64 2c 20 76 65 72 69 66 79 20 64 65 70 65 6e 64  d, verify depend
12c0: 65 6e 63 69 65 73 2e 22 29 3b 7d 76 61 72 20 6a  encies.");}var j
12d0: 3d 5b 6d 2e 70 72 6f 74 6f 74 79 70 65 2c 6c 2e  =[m.prototype,l.
12e0: 70 72 6f 74 6f 74 79 70 65 5d 2c 6b 3b 66 6f 72  prototype],k;for
12f0: 28 6b 3d 32 3b 6b 3c 61 72 67 75 6d 65 6e 74 73  (k=2;k<arguments
1300: 2e 6c 65 6e 67 74 68 3b 6b 3d 6b 2b 31 29 7b 6a  .length;k=k+1){j
1310: 2e 70 75 73 68 28 61 72 67 75 6d 65 6e 74 73 5b  .push(arguments[
1320: 6b 5d 29 3b 7d 66 2e 61 75 67 6d 65 6e 74 4f 62  k]);}f.augmentOb
1330: 6a 65 63 74 2e 61 70 70 6c 79 28 74 68 69 73 2c  ject.apply(this,
1340: 6a 29 3b 72 65 74 75 72 6e 20 6d 3b 7d 2c 64 75  j);return m;},du
1350: 6d 70 3a 66 75 6e 63 74 69 6f 6e 28 6a 2c 70 29  mp:function(j,p)
1360: 7b 76 61 72 20 6c 2c 6e 2c 72 3d 5b 5d 2c 74 3d  {var l,n,r=[],t=
1370: 22 7b 2e 2e 2e 7d 22 2c 6b 3d 22 66 28 29 7b 2e  "{...}",k="f(){.
1380: 2e 2e 7d 22 2c 71 3d 22 2c 20 22 2c 6d 3d 22 20  ..}",q=", ",m=" 
1390: 3d 3e 20 22 3b 69 66 28 21 66 2e 69 73 4f 62 6a  => ";if(!f.isObj
13a0: 65 63 74 28 6a 29 29 7b 72 65 74 75 72 6e 20 6a  ect(j)){return j
13b0: 2b 22 22 3b 7d 65 6c 73 65 7b 69 66 28 6a 20 69  +"";}else{if(j i
13c0: 6e 73 74 61 6e 63 65 6f 66 20 44 61 74 65 7c 7c  nstanceof Date||
13d0: 28 22 6e 6f 64 65 54 79 70 65 22 20 69 6e 20 6a  ("nodeType" in j
13e0: 26 26 22 74 61 67 4e 61 6d 65 22 20 69 6e 20 6a  &&"tagName" in j
13f0: 29 29 7b 72 65 74 75 72 6e 20 6a 3b 7d 65 6c 73  )){return j;}els
1400: 65 7b 69 66 28 66 2e 69 73 46 75 6e 63 74 69 6f  e{if(f.isFunctio
1410: 6e 28 6a 29 29 7b 72 65 74 75 72 6e 20 6b 3b 7d  n(j)){return k;}
1420: 7d 7d 70 3d 28 66 2e 69 73 4e 75 6d 62 65 72 28  }}p=(f.isNumber(
1430: 70 29 29 3f 70 3a 33 3b 69 66 28 66 2e 69 73 41  p))?p:3;if(f.isA
1440: 72 72 61 79 28 6a 29 29 7b 72 2e 70 75 73 68 28  rray(j)){r.push(
1450: 22 5b 22 29 3b 66 6f 72 28 6c 3d 30 2c 6e 3d 6a  "[");for(l=0,n=j
1460: 2e 6c 65 6e 67 74 68 3b 6c 3c 6e 3b 6c 3d 6c 2b  .length;l<n;l=l+
1470: 31 29 7b 69 66 28 66 2e 69 73 4f 62 6a 65 63 74  1){if(f.isObject
1480: 28 6a 5b 6c 5d 29 29 7b 72 2e 70 75 73 68 28 28  (j[l])){r.push((
1490: 70 3e 30 29 3f 66 2e 64 75 6d 70 28 6a 5b 6c 5d  p>0)?f.dump(j[l]
14a0: 2c 70 2d 31 29 3a 74 29 3b 7d 65 6c 73 65 7b 72  ,p-1):t);}else{r
14b0: 2e 70 75 73 68 28 6a 5b 6c 5d 29 3b 7d 72 2e 70  .push(j[l]);}r.p
14c0: 75 73 68 28 71 29 3b 7d 69 66 28 72 2e 6c 65 6e  ush(q);}if(r.len
14d0: 67 74 68 3e 31 29 7b 72 2e 70 6f 70 28 29 3b 7d  gth>1){r.pop();}
14e0: 72 2e 70 75 73 68 28 22 5d 22 29 3b 7d 65 6c 73  r.push("]");}els
14f0: 65 7b 72 2e 70 75 73 68 28 22 7b 22 29 3b 66 6f  e{r.push("{");fo
1500: 72 28 6c 20 69 6e 20 6a 29 7b 69 66 28 66 2e 68  r(l in j){if(f.h
1510: 61 73 4f 77 6e 50 72 6f 70 65 72 74 79 28 6a 2c  asOwnProperty(j,
1520: 6c 29 29 7b 72 2e 70 75 73 68 28 6c 2b 6d 29 3b  l)){r.push(l+m);
1530: 69 66 28 66 2e 69 73 4f 62 6a 65 63 74 28 6a 5b  if(f.isObject(j[
1540: 6c 5d 29 29 7b 72 2e 70 75 73 68 28 28 70 3e 30  l])){r.push((p>0
1550: 29 3f 66 2e 64 75 6d 70 28 6a 5b 6c 5d 2c 70 2d  )?f.dump(j[l],p-
1560: 31 29 3a 74 29 3b 7d 65 6c 73 65 7b 72 2e 70 75  1):t);}else{r.pu
1570: 73 68 28 6a 5b 6c 5d 29 3b 7d 72 2e 70 75 73 68  sh(j[l]);}r.push
1580: 28 71 29 3b 7d 7d 69 66 28 72 2e 6c 65 6e 67 74  (q);}}if(r.lengt
1590: 68 3e 31 29 7b 72 2e 70 6f 70 28 29 3b 7d 72 2e  h>1){r.pop();}r.
15a0: 70 75 73 68 28 22 7d 22 29 3b 7d 72 65 74 75 72  push("}");}retur
15b0: 6e 20 72 2e 6a 6f 69 6e 28 22 22 29 3b 7d 2c 73  n r.join("");},s
15c0: 75 62 73 74 69 74 75 74 65 3a 66 75 6e 63 74 69  ubstitute:functi
15d0: 6f 6e 28 78 2c 79 2c 45 2c 6c 29 7b 76 61 72 20  on(x,y,E,l){var 
15e0: 44 2c 43 2c 42 2c 47 2c 74 2c 75 2c 46 3d 5b 5d  D,C,B,G,t,u,F=[]
15f0: 2c 70 2c 7a 3d 78 2e 6c 65 6e 67 74 68 2c 41 3d  ,p,z=x.length,A=
1600: 22 64 75 6d 70 22 2c 72 3d 22 20 22 2c 71 3d 22  "dump",r=" ",q="
1610: 7b 22 2c 6d 3d 22 7d 22 2c 6e 2c 77 3b 66 6f 72  {",m="}",n,w;for
1620: 28 3b 3b 29 7b 44 3d 78 2e 6c 61 73 74 49 6e 64  (;;){D=x.lastInd
1630: 65 78 4f 66 28 71 2c 7a 29 3b 69 66 28 44 3c 30  exOf(q,z);if(D<0
1640: 29 7b 62 72 65 61 6b 3b 7d 43 3d 78 2e 69 6e 64  ){break;}C=x.ind
1650: 65 78 4f 66 28 6d 2c 44 29 3b 69 66 28 44 2b 31  exOf(m,D);if(D+1
1660: 3e 43 29 7b 62 72 65 61 6b 3b 7d 70 3d 78 2e 73  >C){break;}p=x.s
1670: 75 62 73 74 72 69 6e 67 28 44 2b 31 2c 43 29 3b  ubstring(D+1,C);
1680: 47 3d 70 3b 75 3d 6e 75 6c 6c 3b 42 3d 47 2e 69  G=p;u=null;B=G.i
1690: 6e 64 65 78 4f 66 28 72 29 3b 69 66 28 42 3e 2d  ndexOf(r);if(B>-
16a0: 31 29 7b 75 3d 47 2e 73 75 62 73 74 72 69 6e 67  1){u=G.substring
16b0: 28 42 2b 31 29 3b 47 3d 47 2e 73 75 62 73 74 72  (B+1);G=G.substr
16c0: 69 6e 67 28 30 2c 42 29 3b 7d 74 3d 79 5b 47 5d  ing(0,B);}t=y[G]
16d0: 3b 69 66 28 45 29 7b 74 3d 45 28 47 2c 74 2c 75  ;if(E){t=E(G,t,u
16e0: 29 3b 7d 69 66 28 66 2e 69 73 4f 62 6a 65 63 74  );}if(f.isObject
16f0: 28 74 29 29 7b 69 66 28 66 2e 69 73 41 72 72 61  (t)){if(f.isArra
1700: 79 28 74 29 29 7b 74 3d 66 2e 64 75 6d 70 28 74  y(t)){t=f.dump(t
1710: 2c 70 61 72 73 65 49 6e 74 28 75 2c 31 30 29 29  ,parseInt(u,10))
1720: 3b 7d 65 6c 73 65 7b 75 3d 75 7c 7c 22 22 3b 6e  ;}else{u=u||"";n
1730: 3d 75 2e 69 6e 64 65 78 4f 66 28 41 29 3b 69 66  =u.indexOf(A);if
1740: 28 6e 3e 2d 31 29 7b 75 3d 75 2e 73 75 62 73 74  (n>-1){u=u.subst
1750: 72 69 6e 67 28 34 29 3b 7d 77 3d 74 2e 74 6f 53  ring(4);}w=t.toS
1760: 74 72 69 6e 67 28 29 3b 69 66 28 77 3d 3d 3d 69  tring();if(w===i
1770: 7c 7c 6e 3e 2d 31 29 7b 74 3d 66 2e 64 75 6d 70  ||n>-1){t=f.dump
1780: 28 74 2c 70 61 72 73 65 49 6e 74 28 75 2c 31 30  (t,parseInt(u,10
1790: 29 29 3b 7d 65 6c 73 65 7b 74 3d 77 3b 7d 7d 7d  ));}else{t=w;}}}
17a0: 65 6c 73 65 7b 69 66 28 21 66 2e 69 73 53 74 72  else{if(!f.isStr
17b0: 69 6e 67 28 74 29 26 26 21 66 2e 69 73 4e 75 6d  ing(t)&&!f.isNum
17c0: 62 65 72 28 74 29 29 7b 74 3d 22 7e 2d 22 2b 46  ber(t)){t="~-"+F
17d0: 2e 6c 65 6e 67 74 68 2b 22 2d 7e 22 3b 46 5b 46  .length+"-~";F[F
17e0: 2e 6c 65 6e 67 74 68 5d 3d 70 3b 7d 7d 78 3d 78  .length]=p;}}x=x
17f0: 2e 73 75 62 73 74 72 69 6e 67 28 30 2c 44 29 2b  .substring(0,D)+
1800: 74 2b 78 2e 73 75 62 73 74 72 69 6e 67 28 43 2b  t+x.substring(C+
1810: 31 29 3b 69 66 28 6c 3d 3d 3d 66 61 6c 73 65 29  1);if(l===false)
1820: 7b 7a 3d 44 2d 31 3b 7d 7d 66 6f 72 28 44 3d 46  {z=D-1;}}for(D=F
1830: 2e 6c 65 6e 67 74 68 2d 31 3b 44 3e 3d 30 3b 44  .length-1;D>=0;D
1840: 3d 44 2d 31 29 7b 78 3d 78 2e 72 65 70 6c 61 63  =D-1){x=x.replac
1850: 65 28 6e 65 77 20 52 65 67 45 78 70 28 22 7e 2d  e(new RegExp("~-
1860: 22 2b 44 2b 22 2d 7e 22 29 2c 22 7b 22 2b 46 5b  "+D+"-~"),"{"+F[
1870: 44 5d 2b 22 7d 22 2c 22 67 22 29 3b 7d 72 65 74  D]+"}","g");}ret
1880: 75 72 6e 20 78 3b 7d 2c 74 72 69 6d 3a 66 75 6e  urn x;},trim:fun
1890: 63 74 69 6f 6e 28 6a 29 7b 74 72 79 7b 72 65 74  ction(j){try{ret
18a0: 75 72 6e 20 6a 2e 72 65 70 6c 61 63 65 28 2f 5e  urn j.replace(/^
18b0: 5c 73 2b 7c 5c 73 2b 24 2f 67 2c 22 22 29 3b 7d  \s+|\s+$/g,"");}
18c0: 63 61 74 63 68 28 6b 29 7b 72 65 74 75 72 6e 20  catch(k){return 
18d0: 6a 3b 0a 7d 7d 2c 6d 65 72 67 65 3a 66 75 6e 63  j;.}},merge:func
18e0: 74 69 6f 6e 28 29 7b 76 61 72 20 6e 3d 7b 7d 2c  tion(){var n={},
18f0: 6b 3d 61 72 67 75 6d 65 6e 74 73 2c 6a 3d 6b 2e  k=arguments,j=k.
1900: 6c 65 6e 67 74 68 2c 6d 3b 66 6f 72 28 6d 3d 30  length,m;for(m=0
1910: 3b 6d 3c 6a 3b 6d 3d 6d 2b 31 29 7b 66 2e 61 75  ;m<j;m=m+1){f.au
1920: 67 6d 65 6e 74 4f 62 6a 65 63 74 28 6e 2c 6b 5b  gmentObject(n,k[
1930: 6d 5d 2c 74 72 75 65 29 3b 7d 72 65 74 75 72 6e  m],true);}return
1940: 20 6e 3b 7d 2c 6c 61 74 65 72 3a 66 75 6e 63 74   n;},later:funct
1950: 69 6f 6e 28 74 2c 6b 2c 75 2c 6e 2c 70 29 7b 74  ion(t,k,u,n,p){t
1960: 3d 74 7c 7c 30 3b 6b 3d 6b 7c 7c 7b 7d 3b 76 61  =t||0;k=k||{};va
1970: 72 20 6c 3d 75 2c 73 3d 6e 2c 71 2c 6a 3b 69 66  r l=u,s=n,q,j;if
1980: 28 66 2e 69 73 53 74 72 69 6e 67 28 75 29 29 7b  (f.isString(u)){
1990: 6c 3d 6b 5b 75 5d 3b 7d 69 66 28 21 6c 29 7b 74  l=k[u];}if(!l){t
19a0: 68 72 6f 77 20 6e 65 77 20 54 79 70 65 45 72 72  hrow new TypeErr
19b0: 6f 72 28 22 6d 65 74 68 6f 64 20 75 6e 64 65 66  or("method undef
19c0: 69 6e 65 64 22 29 3b 7d 69 66 28 21 66 2e 69 73  ined");}if(!f.is
19d0: 55 6e 64 65 66 69 6e 65 64 28 6e 29 26 26 21 66  Undefined(n)&&!f
19e0: 2e 69 73 41 72 72 61 79 28 73 29 29 7b 73 3d 5b  .isArray(s)){s=[
19f0: 6e 5d 3b 7d 71 3d 66 75 6e 63 74 69 6f 6e 28 29  n];}q=function()
1a00: 7b 6c 2e 61 70 70 6c 79 28 6b 2c 73 7c 7c 62 29  {l.apply(k,s||b)
1a10: 3b 7d 3b 6a 3d 28 70 29 3f 73 65 74 49 6e 74 65  ;};j=(p)?setInte
1a20: 72 76 61 6c 28 71 2c 74 29 3a 73 65 74 54 69 6d  rval(q,t):setTim
1a30: 65 6f 75 74 28 71 2c 74 29 3b 72 65 74 75 72 6e  eout(q,t);return
1a40: 7b 69 6e 74 65 72 76 61 6c 3a 70 2c 63 61 6e 63  {interval:p,canc
1a50: 65 6c 3a 66 75 6e 63 74 69 6f 6e 28 29 7b 69 66  el:function(){if
1a60: 28 74 68 69 73 2e 69 6e 74 65 72 76 61 6c 29 7b  (this.interval){
1a70: 63 6c 65 61 72 49 6e 74 65 72 76 61 6c 28 6a 29  clearInterval(j)
1a80: 3b 7d 65 6c 73 65 7b 63 6c 65 61 72 54 69 6d 65  ;}else{clearTime
1a90: 6f 75 74 28 6a 29 3b 7d 7d 7d 3b 7d 2c 69 73 56  out(j);}}};},isV
1aa0: 61 6c 75 65 3a 66 75 6e 63 74 69 6f 6e 28 6a 29  alue:function(j)
1ab0: 7b 72 65 74 75 72 6e 28 66 2e 69 73 4f 62 6a 65  {return(f.isObje
1ac0: 63 74 28 6a 29 7c 7c 66 2e 69 73 53 74 72 69 6e  ct(j)||f.isStrin
1ad0: 67 28 6a 29 7c 7c 66 2e 69 73 4e 75 6d 62 65 72  g(j)||f.isNumber
1ae0: 28 6a 29 7c 7c 66 2e 69 73 42 6f 6f 6c 65 61 6e  (j)||f.isBoolean
1af0: 28 6a 29 29 3b 7d 7d 3b 66 2e 68 61 73 4f 77 6e  (j));}};f.hasOwn
1b00: 50 72 6f 70 65 72 74 79 3d 28 61 2e 68 61 73 4f  Property=(a.hasO
1b10: 77 6e 50 72 6f 70 65 72 74 79 29 3f 66 75 6e 63  wnProperty)?func
1b20: 74 69 6f 6e 28 6a 2c 6b 29 7b 72 65 74 75 72 6e  tion(j,k){return
1b30: 20 6a 26 26 6a 2e 68 61 73 4f 77 6e 50 72 6f 70   j&&j.hasOwnProp
1b40: 65 72 74 79 26 26 6a 2e 68 61 73 4f 77 6e 50 72  erty&&j.hasOwnPr
1b50: 6f 70 65 72 74 79 28 6b 29 3b 7d 3a 66 75 6e 63  operty(k);}:func
1b60: 74 69 6f 6e 28 6a 2c 6b 29 7b 72 65 74 75 72 6e  tion(j,k){return
1b70: 20 21 66 2e 69 73 55 6e 64 65 66 69 6e 65 64 28   !f.isUndefined(
1b80: 6a 5b 6b 5d 29 26 26 6a 2e 63 6f 6e 73 74 72 75  j[k])&&j.constru
1b90: 63 74 6f 72 2e 70 72 6f 74 6f 74 79 70 65 5b 6b  ctor.prototype[k
1ba0: 5d 21 3d 3d 6a 5b 6b 5d 3b 7d 3b 65 2e 61 75 67  ]!==j[k];};e.aug
1bb0: 6d 65 6e 74 4f 62 6a 65 63 74 28 66 2c 65 2c 74  mentObject(f,e,t
1bc0: 72 75 65 29 3b 59 41 48 4f 4f 2e 75 74 69 6c 2e  rue);YAHOO.util.
1bd0: 4c 61 6e 67 3d 66 3b 66 2e 61 75 67 6d 65 6e 74  Lang=f;f.augment
1be0: 3d 66 2e 61 75 67 6d 65 6e 74 50 72 6f 74 6f 3b  =f.augmentProto;
1bf0: 59 41 48 4f 4f 2e 61 75 67 6d 65 6e 74 3d 66 2e  YAHOO.augment=f.
1c00: 61 75 67 6d 65 6e 74 50 72 6f 74 6f 3b 59 41 48  augmentProto;YAH
1c10: 4f 4f 2e 65 78 74 65 6e 64 3d 66 2e 65 78 74 65  OO.extend=f.exte
1c20: 6e 64 3b 7d 29 28 29 3b 59 41 48 4f 4f 2e 72 65  nd;})();YAHOO.re
1c30: 67 69 73 74 65 72 28 22 79 61 68 6f 6f 22 2c 59  gister("yahoo",Y
1c40: 41 48 4f 4f 2c 7b 76 65 72 73 69 6f 6e 3a 22 32  AHOO,{version:"2
1c50: 2e 39 2e 30 22 2c 62 75 69 6c 64 3a 22 32 38 30  .9.0",build:"280
1c60: 30 22 7d 29 3b 0a 0a 2f 2a 21 20 43 72 79 70 74  0"});../*! Crypt
1c70: 6f 4a 53 20 76 33 2e 31 2e 32 20 63 6f 72 65 2d  oJS v3.1.2 core-
1c80: 66 69 78 2e 6a 73 0a 20 2a 20 63 6f 64 65 2e 67  fix.js. * code.g
1c90: 6f 6f 67 6c 65 2e 63 6f 6d 2f 70 2f 63 72 79 70  oogle.com/p/cryp
1ca0: 74 6f 2d 6a 73 0a 20 2a 20 28 63 29 20 32 30 30  to-js. * (c) 200
1cb0: 39 2d 32 30 31 33 20 62 79 20 4a 65 66 66 20 4d  9-2013 by Jeff M
1cc0: 6f 74 74 2e 20 41 6c 6c 20 72 69 67 68 74 73 20  ott. All rights 
1cd0: 72 65 73 65 72 76 65 64 2e 0a 20 2a 20 63 6f 64  reserved.. * cod
1ce0: 65 2e 67 6f 6f 67 6c 65 2e 63 6f 6d 2f 70 2f 63  e.google.com/p/c
1cf0: 72 79 70 74 6f 2d 6a 73 2f 77 69 6b 69 2f 4c 69  rypto-js/wiki/Li
1d00: 63 65 6e 73 65 0a 20 2a 20 54 48 49 53 20 49 53  cense. * THIS IS
1d10: 20 46 49 58 20 6f 66 20 27 63 6f 72 65 2e 6a 73   FIX of 'core.js
1d20: 27 20 74 6f 20 66 69 78 20 48 6d 61 63 20 69 73  ' to fix Hmac is
1d30: 73 75 65 2e 0a 20 2a 20 68 74 74 70 73 3a 2f 2f  sue.. * https://
1d40: 63 6f 64 65 2e 67 6f 6f 67 6c 65 2e 63 6f 6d 2f  code.google.com/
1d50: 70 2f 63 72 79 70 74 6f 2d 6a 73 2f 69 73 73 75  p/crypto-js/issu
1d60: 65 73 2f 64 65 74 61 69 6c 3f 69 64 3d 38 34 0a  es/detail?id=84.
1d70: 20 2a 20 68 74 74 70 73 3a 2f 2f 63 72 79 70 74   * https://crypt
1d80: 6f 2d 6a 73 2e 67 6f 6f 67 6c 65 63 6f 64 65 2e  o-js.googlecode.
1d90: 63 6f 6d 2f 73 76 6e 2d 68 69 73 74 6f 72 79 2f  com/svn-history/
1da0: 72 36 36 37 2f 62 72 61 6e 63 68 65 73 2f 33 2e  r667/branches/3.
1db0: 78 2f 73 72 63 2f 63 6f 72 65 2e 6a 73 0a 20 2a  x/src/core.js. *
1dc0: 2f 0a 76 61 72 20 43 72 79 70 74 6f 4a 53 3d 43  /.var CryptoJS=C
1dd0: 72 79 70 74 6f 4a 53 7c 7c 28 66 75 6e 63 74 69  ryptoJS||(functi
1de0: 6f 6e 28 65 2c 67 29 7b 76 61 72 20 61 3d 7b 7d  on(e,g){var a={}
1df0: 3b 76 61 72 20 62 3d 61 2e 6c 69 62 3d 7b 7d 3b  ;var b=a.lib={};
1e00: 76 61 72 20 6a 3d 62 2e 42 61 73 65 3d 28 66 75  var j=b.Base=(fu
1e10: 6e 63 74 69 6f 6e 28 29 7b 66 75 6e 63 74 69 6f  nction(){functio
1e20: 6e 20 6e 28 29 7b 7d 72 65 74 75 72 6e 7b 65 78  n n(){}return{ex
1e30: 74 65 6e 64 3a 66 75 6e 63 74 69 6f 6e 28 70 29  tend:function(p)
1e40: 7b 6e 2e 70 72 6f 74 6f 74 79 70 65 3d 74 68 69  {n.prototype=thi
1e50: 73 3b 76 61 72 20 6f 3d 6e 65 77 20 6e 28 29 3b  s;var o=new n();
1e60: 69 66 28 70 29 7b 6f 2e 6d 69 78 49 6e 28 70 29  if(p){o.mixIn(p)
1e70: 7d 69 66 28 21 6f 2e 68 61 73 4f 77 6e 50 72 6f  }if(!o.hasOwnPro
1e80: 70 65 72 74 79 28 22 69 6e 69 74 22 29 29 7b 6f  perty("init")){o
1e90: 2e 69 6e 69 74 3d 66 75 6e 63 74 69 6f 6e 28 29  .init=function()
1ea0: 7b 6f 2e 24 73 75 70 65 72 2e 69 6e 69 74 2e 61  {o.$super.init.a
1eb0: 70 70 6c 79 28 74 68 69 73 2c 61 72 67 75 6d 65  pply(this,argume
1ec0: 6e 74 73 29 7d 7d 6f 2e 69 6e 69 74 2e 70 72 6f  nts)}}o.init.pro
1ed0: 74 6f 74 79 70 65 3d 6f 3b 6f 2e 24 73 75 70 65  totype=o;o.$supe
1ee0: 72 3d 74 68 69 73 3b 72 65 74 75 72 6e 20 6f 7d  r=this;return o}
1ef0: 2c 63 72 65 61 74 65 3a 66 75 6e 63 74 69 6f 6e  ,create:function
1f00: 28 29 7b 76 61 72 20 6f 3d 74 68 69 73 2e 65 78  (){var o=this.ex
1f10: 74 65 6e 64 28 29 3b 6f 2e 69 6e 69 74 2e 61 70  tend();o.init.ap
1f20: 70 6c 79 28 6f 2c 61 72 67 75 6d 65 6e 74 73 29  ply(o,arguments)
1f30: 3b 72 65 74 75 72 6e 20 6f 7d 2c 69 6e 69 74 3a  ;return o},init:
1f40: 66 75 6e 63 74 69 6f 6e 28 29 7b 7d 2c 6d 69 78  function(){},mix
1f50: 49 6e 3a 66 75 6e 63 74 69 6f 6e 28 70 29 7b 66  In:function(p){f
1f60: 6f 72 28 76 61 72 20 6f 20 69 6e 20 70 29 7b 69  or(var o in p){i
1f70: 66 28 70 2e 68 61 73 4f 77 6e 50 72 6f 70 65 72  f(p.hasOwnProper
1f80: 74 79 28 6f 29 29 7b 74 68 69 73 5b 6f 5d 3d 70  ty(o)){this[o]=p
1f90: 5b 6f 5d 7d 7d 69 66 28 70 2e 68 61 73 4f 77 6e  [o]}}if(p.hasOwn
1fa0: 50 72 6f 70 65 72 74 79 28 22 74 6f 53 74 72 69  Property("toStri
1fb0: 6e 67 22 29 29 7b 74 68 69 73 2e 74 6f 53 74 72  ng")){this.toStr
1fc0: 69 6e 67 3d 70 2e 74 6f 53 74 72 69 6e 67 7d 7d  ing=p.toString}}
1fd0: 2c 63 6c 6f 6e 65 3a 66 75 6e 63 74 69 6f 6e 28  ,clone:function(
1fe0: 29 7b 72 65 74 75 72 6e 20 74 68 69 73 2e 69 6e  ){return this.in
1ff0: 69 74 2e 70 72 6f 74 6f 74 79 70 65 2e 65 78 74  it.prototype.ext
2000: 65 6e 64 28 74 68 69 73 29 7d 7d 7d 28 29 29 3b  end(this)}}}());
2010: 76 61 72 20 6c 3d 62 2e 57 6f 72 64 41 72 72 61  var l=b.WordArra
2020: 79 3d 6a 2e 65 78 74 65 6e 64 28 7b 69 6e 69 74  y=j.extend({init
2030: 3a 66 75 6e 63 74 69 6f 6e 28 6f 2c 6e 29 7b 6f  :function(o,n){o
2040: 3d 74 68 69 73 2e 77 6f 72 64 73 3d 6f 7c 7c 5b  =this.words=o||[
2050: 5d 3b 69 66 28 6e 21 3d 67 29 7b 74 68 69 73 2e  ];if(n!=g){this.
2060: 73 69 67 42 79 74 65 73 3d 6e 7d 65 6c 73 65 7b  sigBytes=n}else{
2070: 74 68 69 73 2e 73 69 67 42 79 74 65 73 3d 6f 2e  this.sigBytes=o.
2080: 6c 65 6e 67 74 68 2a 34 7d 7d 2c 74 6f 53 74 72  length*4}},toStr
2090: 69 6e 67 3a 66 75 6e 63 74 69 6f 6e 28 6e 29 7b  ing:function(n){
20a0: 72 65 74 75 72 6e 28 6e 7c 7c 68 29 2e 73 74 72  return(n||h).str
20b0: 69 6e 67 69 66 79 28 74 68 69 73 29 7d 2c 63 6f  ingify(this)},co
20c0: 6e 63 61 74 3a 66 75 6e 63 74 69 6f 6e 28 74 29  ncat:function(t)
20d0: 7b 76 61 72 20 71 3d 74 68 69 73 2e 77 6f 72 64  {var q=this.word
20e0: 73 3b 76 61 72 20 70 3d 74 2e 77 6f 72 64 73 3b  s;var p=t.words;
20f0: 76 61 72 20 6e 3d 74 68 69 73 2e 73 69 67 42 79  var n=this.sigBy
2100: 74 65 73 3b 76 61 72 20 73 3d 74 2e 73 69 67 42  tes;var s=t.sigB
2110: 79 74 65 73 3b 74 68 69 73 2e 63 6c 61 6d 70 28  ytes;this.clamp(
2120: 29 3b 69 66 28 6e 25 34 29 7b 66 6f 72 28 76 61  );if(n%4){for(va
2130: 72 20 72 3d 30 3b 72 3c 73 3b 72 2b 2b 29 7b 76  r r=0;r<s;r++){v
2140: 61 72 20 6f 3d 28 70 5b 72 3e 3e 3e 32 5d 3e 3e  ar o=(p[r>>>2]>>
2150: 3e 28 32 34 2d 28 72 25 34 29 2a 38 29 29 26 32  >(24-(r%4)*8))&2
2160: 35 35 3b 71 5b 28 6e 2b 72 29 3e 3e 3e 32 5d 7c  55;q[(n+r)>>>2]|
2170: 3d 6f 3c 3c 28 32 34 2d 28 28 6e 2b 72 29 25 34  =o<<(24-((n+r)%4
2180: 29 2a 38 29 7d 7d 65 6c 73 65 7b 66 6f 72 28 76  )*8)}}else{for(v
2190: 61 72 20 72 3d 30 3b 72 3c 73 3b 72 2b 3d 34 29  ar r=0;r<s;r+=4)
21a0: 7b 71 5b 28 6e 2b 72 29 3e 3e 3e 32 5d 3d 70 5b  {q[(n+r)>>>2]=p[
21b0: 72 3e 3e 3e 32 5d 7d 7d 74 68 69 73 2e 73 69 67  r>>>2]}}this.sig
21c0: 42 79 74 65 73 2b 3d 73 3b 72 65 74 75 72 6e 20  Bytes+=s;return 
21d0: 74 68 69 73 7d 2c 63 6c 61 6d 70 3a 66 75 6e 63  this},clamp:func
21e0: 74 69 6f 6e 28 29 7b 76 61 72 20 6f 3d 74 68 69  tion(){var o=thi
21f0: 73 2e 77 6f 72 64 73 3b 76 61 72 20 6e 3d 74 68  s.words;var n=th
2200: 69 73 2e 73 69 67 42 79 74 65 73 3b 6f 5b 6e 3e  is.sigBytes;o[n>
2210: 3e 3e 32 5d 26 3d 34 32 39 34 39 36 37 32 39 35  >>2]&=4294967295
2220: 3c 3c 28 33 32 2d 28 6e 25 34 29 2a 38 29 3b 6f  <<(32-(n%4)*8);o
2230: 2e 6c 65 6e 67 74 68 3d 65 2e 63 65 69 6c 28 6e  .length=e.ceil(n
2240: 2f 34 29 7d 2c 63 6c 6f 6e 65 3a 66 75 6e 63 74  /4)},clone:funct
2250: 69 6f 6e 28 29 7b 76 61 72 20 6e 3d 6a 2e 63 6c  ion(){var n=j.cl
2260: 6f 6e 65 2e 63 61 6c 6c 28 74 68 69 73 29 3b 6e  one.call(this);n
2270: 2e 77 6f 72 64 73 3d 74 68 69 73 2e 77 6f 72 64  .words=this.word
2280: 73 2e 73 6c 69 63 65 28 30 29 3b 72 65 74 75 72  s.slice(0);retur
2290: 6e 20 6e 7d 2c 72 61 6e 64 6f 6d 3a 66 75 6e 63  n n},random:func
22a0: 74 69 6f 6e 28 70 29 7b 76 61 72 20 6f 3d 5b 5d  tion(p){var o=[]
22b0: 3b 66 6f 72 28 76 61 72 20 6e 3d 30 3b 6e 3c 70  ;for(var n=0;n<p
22c0: 3b 6e 2b 3d 34 29 7b 6f 2e 70 75 73 68 28 28 65  ;n+=4){o.push((e
22d0: 2e 72 61 6e 64 6f 6d 28 29 2a 34 32 39 34 39 36  .random()*429496
22e0: 37 32 39 36 29 7c 30 29 7d 72 65 74 75 72 6e 20  7296)|0)}return 
22f0: 6e 65 77 20 6c 2e 69 6e 69 74 28 6f 2c 70 29 7d  new l.init(o,p)}
2300: 7d 29 3b 76 61 72 20 6d 3d 61 2e 65 6e 63 3d 7b  });var m=a.enc={
2310: 7d 3b 76 61 72 20 68 3d 6d 2e 48 65 78 3d 7b 73  };var h=m.Hex={s
2320: 74 72 69 6e 67 69 66 79 3a 66 75 6e 63 74 69 6f  tringify:functio
2330: 6e 28 70 29 7b 76 61 72 20 72 3d 70 2e 77 6f 72  n(p){var r=p.wor
2340: 64 73 3b 76 61 72 20 6f 3d 70 2e 73 69 67 42 79  ds;var o=p.sigBy
2350: 74 65 73 3b 76 61 72 20 71 3d 5b 5d 3b 66 6f 72  tes;var q=[];for
2360: 28 76 61 72 20 6e 3d 30 3b 6e 3c 6f 3b 6e 2b 2b  (var n=0;n<o;n++
2370: 29 7b 76 61 72 20 73 3d 28 72 5b 6e 3e 3e 3e 32  ){var s=(r[n>>>2
2380: 5d 3e 3e 3e 28 32 34 2d 28 6e 25 34 29 2a 38 29  ]>>>(24-(n%4)*8)
2390: 29 26 32 35 35 3b 71 2e 70 75 73 68 28 28 73 3e  )&255;q.push((s>
23a0: 3e 3e 34 29 2e 74 6f 53 74 72 69 6e 67 28 31 36  >>4).toString(16
23b0: 29 29 3b 71 2e 70 75 73 68 28 28 73 26 31 35 29  ));q.push((s&15)
23c0: 2e 74 6f 53 74 72 69 6e 67 28 31 36 29 29 7d 72  .toString(16))}r
23d0: 65 74 75 72 6e 20 71 2e 6a 6f 69 6e 28 22 22 29  eturn q.join("")
23e0: 7d 2c 70 61 72 73 65 3a 66 75 6e 63 74 69 6f 6e  },parse:function
23f0: 28 70 29 7b 76 61 72 20 6e 3d 70 2e 6c 65 6e 67  (p){var n=p.leng
2400: 74 68 3b 76 61 72 20 71 3d 5b 5d 3b 66 6f 72 28  th;var q=[];for(
2410: 76 61 72 20 6f 3d 30 3b 6f 3c 6e 3b 6f 2b 3d 32  var o=0;o<n;o+=2
2420: 29 7b 71 5b 6f 3e 3e 3e 33 5d 7c 3d 70 61 72 73  ){q[o>>>3]|=pars
2430: 65 49 6e 74 28 70 2e 73 75 62 73 74 72 28 6f 2c  eInt(p.substr(o,
2440: 32 29 2c 31 36 29 3c 3c 28 32 34 2d 28 6f 25 38  2),16)<<(24-(o%8
2450: 29 2a 34 29 7d 72 65 74 75 72 6e 20 6e 65 77 20  )*4)}return new 
2460: 6c 2e 69 6e 69 74 28 71 2c 6e 2f 32 29 7d 7d 3b  l.init(q,n/2)}};
2470: 76 61 72 20 64 3d 6d 2e 4c 61 74 69 6e 31 3d 7b  var d=m.Latin1={
2480: 73 74 72 69 6e 67 69 66 79 3a 66 75 6e 63 74 69  stringify:functi
2490: 6f 6e 28 71 29 7b 76 61 72 20 72 3d 71 2e 77 6f  on(q){var r=q.wo
24a0: 72 64 73 3b 76 61 72 20 70 3d 71 2e 73 69 67 42  rds;var p=q.sigB
24b0: 79 74 65 73 3b 76 61 72 20 6e 3d 5b 5d 3b 66 6f  ytes;var n=[];fo
24c0: 72 28 76 61 72 20 6f 3d 30 3b 6f 3c 70 3b 6f 2b  r(var o=0;o<p;o+
24d0: 2b 29 7b 76 61 72 20 73 3d 28 72 5b 6f 3e 3e 3e  +){var s=(r[o>>>
24e0: 32 5d 3e 3e 3e 28 32 34 2d 28 6f 25 34 29 2a 38  2]>>>(24-(o%4)*8
24f0: 29 29 26 32 35 35 3b 6e 2e 70 75 73 68 28 53 74  ))&255;n.push(St
2500: 72 69 6e 67 2e 66 72 6f 6d 43 68 61 72 43 6f 64  ring.fromCharCod
2510: 65 28 73 29 29 7d 72 65 74 75 72 6e 20 6e 2e 6a  e(s))}return n.j
2520: 6f 69 6e 28 22 22 29 7d 2c 70 61 72 73 65 3a 66  oin("")},parse:f
2530: 75 6e 63 74 69 6f 6e 28 70 29 7b 76 61 72 20 6e  unction(p){var n
2540: 3d 70 2e 6c 65 6e 67 74 68 3b 76 61 72 20 71 3d  =p.length;var q=
2550: 5b 5d 3b 66 6f 72 28 76 61 72 20 6f 3d 30 3b 6f  [];for(var o=0;o
2560: 3c 6e 3b 6f 2b 2b 29 7b 71 5b 6f 3e 3e 3e 32 5d  <n;o++){q[o>>>2]
2570: 7c 3d 28 70 2e 63 68 61 72 43 6f 64 65 41 74 28  |=(p.charCodeAt(
2580: 6f 29 26 32 35 35 29 3c 3c 28 32 34 2d 28 6f 25  o)&255)<<(24-(o%
2590: 34 29 2a 38 29 7d 72 65 74 75 72 6e 20 6e 65 77  4)*8)}return new
25a0: 20 6c 2e 69 6e 69 74 28 71 2c 6e 29 7d 7d 3b 76   l.init(q,n)}};v
25b0: 61 72 20 63 3d 6d 2e 55 74 66 38 3d 7b 73 74 72  ar c=m.Utf8={str
25c0: 69 6e 67 69 66 79 3a 66 75 6e 63 74 69 6f 6e 28  ingify:function(
25d0: 6e 29 7b 74 72 79 7b 72 65 74 75 72 6e 20 64 65  n){try{return de
25e0: 63 6f 64 65 55 52 49 43 6f 6d 70 6f 6e 65 6e 74  codeURIComponent
25f0: 28 65 73 63 61 70 65 28 64 2e 73 74 72 69 6e 67  (escape(d.string
2600: 69 66 79 28 6e 29 29 29 7d 63 61 74 63 68 28 6f  ify(n)))}catch(o
2610: 29 7b 74 68 72 6f 77 20 6e 65 77 20 45 72 72 6f  ){throw new Erro
2620: 72 28 22 4d 61 6c 66 6f 72 6d 65 64 20 55 54 46  r("Malformed UTF
2630: 2d 38 20 64 61 74 61 22 29 7d 7d 2c 70 61 72 73  -8 data")}},pars
2640: 65 3a 66 75 6e 63 74 69 6f 6e 28 6e 29 7b 72 65  e:function(n){re
2650: 74 75 72 6e 20 64 2e 70 61 72 73 65 28 75 6e 65  turn d.parse(une
2660: 73 63 61 70 65 28 65 6e 63 6f 64 65 55 52 49 43  scape(encodeURIC
2670: 6f 6d 70 6f 6e 65 6e 74 28 6e 29 29 29 7d 7d 3b  omponent(n)))}};
2680: 76 61 72 20 69 3d 62 2e 42 75 66 66 65 72 65 64  var i=b.Buffered
2690: 42 6c 6f 63 6b 41 6c 67 6f 72 69 74 68 6d 3d 6a  BlockAlgorithm=j
26a0: 2e 65 78 74 65 6e 64 28 7b 72 65 73 65 74 3a 66  .extend({reset:f
26b0: 75 6e 63 74 69 6f 6e 28 29 7b 74 68 69 73 2e 5f  unction(){this._
26c0: 64 61 74 61 3d 6e 65 77 20 6c 2e 69 6e 69 74 28  data=new l.init(
26d0: 29 3b 74 68 69 73 2e 5f 6e 44 61 74 61 42 79 74  );this._nDataByt
26e0: 65 73 3d 30 7d 2c 5f 61 70 70 65 6e 64 3a 66 75  es=0},_append:fu
26f0: 6e 63 74 69 6f 6e 28 6e 29 7b 69 66 28 74 79 70  nction(n){if(typ
2700: 65 6f 66 20 6e 3d 3d 22 73 74 72 69 6e 67 22 29  eof n=="string")
2710: 7b 6e 3d 63 2e 70 61 72 73 65 28 6e 29 7d 74 68  {n=c.parse(n)}th
2720: 69 73 2e 5f 64 61 74 61 2e 63 6f 6e 63 61 74 28  is._data.concat(
2730: 6e 29 3b 74 68 69 73 2e 5f 6e 44 61 74 61 42 79  n);this._nDataBy
2740: 74 65 73 2b 3d 6e 2e 73 69 67 42 79 74 65 73 7d  tes+=n.sigBytes}
2750: 2c 5f 70 72 6f 63 65 73 73 3a 66 75 6e 63 74 69  ,_process:functi
2760: 6f 6e 28 77 29 7b 76 61 72 20 71 3d 74 68 69 73  on(w){var q=this
2770: 2e 5f 64 61 74 61 3b 76 61 72 20 78 3d 71 2e 77  ._data;var x=q.w
2780: 6f 72 64 73 3b 76 61 72 20 6e 3d 71 2e 73 69 67  ords;var n=q.sig
2790: 42 79 74 65 73 3b 76 61 72 20 74 3d 74 68 69 73  Bytes;var t=this
27a0: 2e 62 6c 6f 63 6b 53 69 7a 65 3b 76 61 72 20 76  .blockSize;var v
27b0: 3d 74 2a 34 3b 76 61 72 20 75 3d 6e 2f 76 3b 69  =t*4;var u=n/v;i
27c0: 66 28 77 29 7b 75 3d 65 2e 63 65 69 6c 28 75 29  f(w){u=e.ceil(u)
27d0: 7d 65 6c 73 65 7b 75 3d 65 2e 6d 61 78 28 28 75  }else{u=e.max((u
27e0: 7c 30 29 2d 74 68 69 73 2e 5f 6d 69 6e 42 75 66  |0)-this._minBuf
27f0: 66 65 72 53 69 7a 65 2c 30 29 7d 76 61 72 20 73  ferSize,0)}var s
2800: 3d 75 2a 74 3b 76 61 72 20 72 3d 65 2e 6d 69 6e  =u*t;var r=e.min
2810: 28 73 2a 34 2c 6e 29 3b 69 66 28 73 29 7b 66 6f  (s*4,n);if(s){fo
2820: 72 28 76 61 72 20 70 3d 30 3b 70 3c 73 3b 70 2b  r(var p=0;p<s;p+
2830: 3d 74 29 7b 74 68 69 73 2e 5f 64 6f 50 72 6f 63  =t){this._doProc
2840: 65 73 73 42 6c 6f 63 6b 28 78 2c 70 29 7d 76 61  essBlock(x,p)}va
2850: 72 20 6f 3d 78 2e 73 70 6c 69 63 65 28 30 2c 73  r o=x.splice(0,s
2860: 29 3b 71 2e 73 69 67 42 79 74 65 73 2d 3d 72 7d  );q.sigBytes-=r}
2870: 72 65 74 75 72 6e 20 6e 65 77 20 6c 2e 69 6e 69  return new l.ini
2880: 74 28 6f 2c 72 29 7d 2c 63 6c 6f 6e 65 3a 66 75  t(o,r)},clone:fu
2890: 6e 63 74 69 6f 6e 28 29 7b 76 61 72 20 6e 3d 6a  nction(){var n=j
28a0: 2e 63 6c 6f 6e 65 2e 63 61 6c 6c 28 74 68 69 73  .clone.call(this
28b0: 29 3b 6e 2e 5f 64 61 74 61 3d 74 68 69 73 2e 5f  );n._data=this._
28c0: 64 61 74 61 2e 63 6c 6f 6e 65 28 29 3b 72 65 74  data.clone();ret
28d0: 75 72 6e 20 6e 7d 2c 5f 6d 69 6e 42 75 66 66 65  urn n},_minBuffe
28e0: 72 53 69 7a 65 3a 30 7d 29 3b 76 61 72 20 66 3d  rSize:0});var f=
28f0: 62 2e 48 61 73 68 65 72 3d 69 2e 65 78 74 65 6e  b.Hasher=i.exten
2900: 64 28 7b 63 66 67 3a 6a 2e 65 78 74 65 6e 64 28  d({cfg:j.extend(
2910: 29 2c 69 6e 69 74 3a 66 75 6e 63 74 69 6f 6e 28  ),init:function(
2920: 6e 29 7b 74 68 69 73 2e 63 66 67 3d 74 68 69 73  n){this.cfg=this
2930: 2e 63 66 67 2e 65 78 74 65 6e 64 28 6e 29 3b 74  .cfg.extend(n);t
2940: 68 69 73 2e 72 65 73 65 74 28 29 7d 2c 72 65 73  his.reset()},res
2950: 65 74 3a 66 75 6e 63 74 69 6f 6e 28 29 7b 69 2e  et:function(){i.
2960: 72 65 73 65 74 2e 63 61 6c 6c 28 74 68 69 73 29  reset.call(this)
2970: 3b 74 68 69 73 2e 5f 64 6f 52 65 73 65 74 28 29  ;this._doReset()
2980: 7d 2c 75 70 64 61 74 65 3a 66 75 6e 63 74 69 6f  },update:functio
2990: 6e 28 6e 29 7b 74 68 69 73 2e 5f 61 70 70 65 6e  n(n){this._appen
29a0: 64 28 6e 29 3b 74 68 69 73 2e 5f 70 72 6f 63 65  d(n);this._proce
29b0: 73 73 28 29 3b 72 65 74 75 72 6e 20 74 68 69 73  ss();return this
29c0: 7d 2c 66 69 6e 61 6c 69 7a 65 3a 66 75 6e 63 74  },finalize:funct
29d0: 69 6f 6e 28 6e 29 7b 69 66 28 6e 29 7b 74 68 69  ion(n){if(n){thi
29e0: 73 2e 5f 61 70 70 65 6e 64 28 6e 29 7d 76 61 72  s._append(n)}var
29f0: 20 6f 3d 74 68 69 73 2e 5f 64 6f 46 69 6e 61 6c   o=this._doFinal
2a00: 69 7a 65 28 29 3b 72 65 74 75 72 6e 20 6f 7d 2c  ize();return o},
2a10: 62 6c 6f 63 6b 53 69 7a 65 3a 35 31 32 2f 33 32  blockSize:512/32
2a20: 2c 5f 63 72 65 61 74 65 48 65 6c 70 65 72 3a 66  ,_createHelper:f
2a30: 75 6e 63 74 69 6f 6e 28 6e 29 7b 72 65 74 75 72  unction(n){retur
2a40: 6e 20 66 75 6e 63 74 69 6f 6e 28 70 2c 6f 29 7b  n function(p,o){
2a50: 72 65 74 75 72 6e 20 6e 65 77 20 6e 2e 69 6e 69  return new n.ini
2a60: 74 28 6f 29 2e 66 69 6e 61 6c 69 7a 65 28 70 29  t(o).finalize(p)
2a70: 7d 7d 2c 5f 63 72 65 61 74 65 48 6d 61 63 48 65  }},_createHmacHe
2a80: 6c 70 65 72 3a 66 75 6e 63 74 69 6f 6e 28 6e 29  lper:function(n)
2a90: 7b 72 65 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e  {return function
2aa0: 28 70 2c 6f 29 7b 72 65 74 75 72 6e 20 6e 65 77  (p,o){return new
2ab0: 20 6b 2e 48 4d 41 43 2e 69 6e 69 74 28 6e 2c 6f   k.HMAC.init(n,o
2ac0: 29 2e 66 69 6e 61 6c 69 7a 65 28 70 29 7d 7d 7d  ).finalize(p)}}}
2ad0: 29 3b 76 61 72 20 6b 3d 61 2e 61 6c 67 6f 3d 7b  );var k=a.algo={
2ae0: 7d 3b 72 65 74 75 72 6e 20 61 7d 28 4d 61 74 68  };return a}(Math
2af0: 29 29 3b 0a 2f 2a 0a 43 72 79 70 74 6f 4a 53 20  ));./*.CryptoJS 
2b00: 76 33 2e 31 2e 32 20 78 36 34 2d 63 6f 72 65 2d  v3.1.2 x64-core-
2b10: 6d 69 6e 2e 6a 73 0a 63 6f 64 65 2e 67 6f 6f 67  min.js.code.goog
2b20: 6c 65 2e 63 6f 6d 2f 70 2f 63 72 79 70 74 6f 2d  le.com/p/crypto-
2b30: 6a 73 0a 28 63 29 20 32 30 30 39 2d 32 30 31 33  js.(c) 2009-2013
2b40: 20 62 79 20 4a 65 66 66 20 4d 6f 74 74 2e 20 41   by Jeff Mott. A
2b50: 6c 6c 20 72 69 67 68 74 73 20 72 65 73 65 72 76  ll rights reserv
2b60: 65 64 2e 0a 63 6f 64 65 2e 67 6f 6f 67 6c 65 2e  ed..code.google.
2b70: 63 6f 6d 2f 70 2f 63 72 79 70 74 6f 2d 6a 73 2f  com/p/crypto-js/
2b80: 77 69 6b 69 2f 4c 69 63 65 6e 73 65 0a 2a 2f 0a  wiki/License.*/.
2b90: 28 66 75 6e 63 74 69 6f 6e 28 67 29 7b 76 61 72  (function(g){var
2ba0: 20 61 3d 43 72 79 70 74 6f 4a 53 2c 66 3d 61 2e   a=CryptoJS,f=a.
2bb0: 6c 69 62 2c 65 3d 66 2e 42 61 73 65 2c 68 3d 66  lib,e=f.Base,h=f
2bc0: 2e 57 6f 72 64 41 72 72 61 79 2c 61 3d 61 2e 78  .WordArray,a=a.x
2bd0: 36 34 3d 7b 7d 3b 61 2e 57 6f 72 64 3d 65 2e 65  64={};a.Word=e.e
2be0: 78 74 65 6e 64 28 7b 69 6e 69 74 3a 66 75 6e 63  xtend({init:func
2bf0: 74 69 6f 6e 28 62 2c 63 29 7b 74 68 69 73 2e 68  tion(b,c){this.h
2c00: 69 67 68 3d 62 3b 74 68 69 73 2e 6c 6f 77 3d 63  igh=b;this.low=c
2c10: 7d 7d 29 3b 61 2e 57 6f 72 64 41 72 72 61 79 3d  }});a.WordArray=
2c20: 65 2e 65 78 74 65 6e 64 28 7b 69 6e 69 74 3a 66  e.extend({init:f
2c30: 75 6e 63 74 69 6f 6e 28 62 2c 63 29 7b 62 3d 74  unction(b,c){b=t
2c40: 68 69 73 2e 77 6f 72 64 73 3d 62 7c 7c 5b 5d 3b  his.words=b||[];
2c50: 74 68 69 73 2e 73 69 67 42 79 74 65 73 3d 63 21  this.sigBytes=c!
2c60: 3d 67 3f 63 3a 38 2a 62 2e 6c 65 6e 67 74 68 7d  =g?c:8*b.length}
2c70: 2c 74 6f 58 33 32 3a 66 75 6e 63 74 69 6f 6e 28  ,toX32:function(
2c80: 29 7b 66 6f 72 28 76 61 72 20 62 3d 74 68 69 73  ){for(var b=this
2c90: 2e 77 6f 72 64 73 2c 63 3d 62 2e 6c 65 6e 67 74  .words,c=b.lengt
2ca0: 68 2c 61 3d 5b 5d 2c 64 3d 30 3b 64 3c 63 3b 64  h,a=[],d=0;d<c;d
2cb0: 2b 2b 29 7b 76 61 72 20 65 3d 62 5b 64 5d 3b 61  ++){var e=b[d];a
2cc0: 2e 70 75 73 68 28 65 2e 68 69 67 68 29 3b 61 2e  .push(e.high);a.
2cd0: 70 75 73 68 28 65 2e 6c 6f 77 29 7d 72 65 74 75  push(e.low)}retu
2ce0: 72 6e 20 68 2e 63 72 65 61 74 65 28 61 2c 74 68  rn h.create(a,th
2cf0: 69 73 2e 73 69 67 42 79 74 65 73 29 7d 2c 63 6c  is.sigBytes)},cl
2d00: 6f 6e 65 3a 66 75 6e 63 74 69 6f 6e 28 29 7b 66  one:function(){f
2d10: 6f 72 28 76 61 72 20 62 3d 65 2e 63 6c 6f 6e 65  or(var b=e.clone
2d20: 2e 63 61 6c 6c 28 74 68 69 73 29 2c 63 3d 62 2e  .call(this),c=b.
2d30: 77 6f 72 64 73 3d 74 68 69 73 2e 77 6f 72 64 73  words=this.words
2d40: 2e 73 6c 69 63 65 28 30 29 2c 61 3d 63 2e 6c 65  .slice(0),a=c.le
2d50: 6e 67 74 68 2c 64 3d 30 3b 64 3c 61 3b 64 2b 2b  ngth,d=0;d<a;d++
2d60: 29 63 5b 64 5d 3d 63 5b 64 5d 2e 63 6c 6f 6e 65  )c[d]=c[d].clone
2d70: 28 29 3b 72 65 74 75 72 6e 20 62 7d 7d 29 7d 29  ();return b}})})
2d80: 28 29 3b 0a 0a 2f 2a 0a 43 72 79 70 74 6f 4a 53  ();../*.CryptoJS
2d90: 20 76 33 2e 31 2e 32 20 68 6d 61 63 2d 6d 69 6e   v3.1.2 hmac-min
2da0: 2e 6a 73 0a 63 6f 64 65 2e 67 6f 6f 67 6c 65 2e  .js.code.google.
2db0: 63 6f 6d 2f 70 2f 63 72 79 70 74 6f 2d 6a 73 0a  com/p/crypto-js.
2dc0: 28 63 29 20 32 30 30 39 2d 32 30 31 33 20 62 79  (c) 2009-2013 by
2dd0: 20 4a 65 66 66 20 4d 6f 74 74 2e 20 41 6c 6c 20   Jeff Mott. All 
2de0: 72 69 67 68 74 73 20 72 65 73 65 72 76 65 64 2e  rights reserved.
2df0: 0a 63 6f 64 65 2e 67 6f 6f 67 6c 65 2e 63 6f 6d  .code.google.com
2e00: 2f 70 2f 63 72 79 70 74 6f 2d 6a 73 2f 77 69 6b  /p/crypto-js/wik
2e10: 69 2f 4c 69 63 65 6e 73 65 0a 2a 2f 0a 28 66 75  i/License.*/.(fu
2e20: 6e 63 74 69 6f 6e 28 29 7b 76 61 72 20 63 3d 43  nction(){var c=C
2e30: 72 79 70 74 6f 4a 53 2c 6b 3d 63 2e 65 6e 63 2e  ryptoJS,k=c.enc.
2e40: 55 74 66 38 3b 63 2e 61 6c 67 6f 2e 48 4d 41 43  Utf8;c.algo.HMAC
2e50: 3d 63 2e 6c 69 62 2e 42 61 73 65 2e 65 78 74 65  =c.lib.Base.exte
2e60: 6e 64 28 7b 69 6e 69 74 3a 66 75 6e 63 74 69 6f  nd({init:functio
2e70: 6e 28 61 2c 62 29 7b 61 3d 74 68 69 73 2e 5f 68  n(a,b){a=this._h
2e80: 61 73 68 65 72 3d 6e 65 77 20 61 2e 69 6e 69 74  asher=new a.init
2e90: 3b 22 73 74 72 69 6e 67 22 3d 3d 74 79 70 65 6f  ;"string"==typeo
2ea0: 66 20 62 26 26 28 62 3d 6b 2e 70 61 72 73 65 28  f b&&(b=k.parse(
2eb0: 62 29 29 3b 76 61 72 20 63 3d 61 2e 62 6c 6f 63  b));var c=a.bloc
2ec0: 6b 53 69 7a 65 2c 65 3d 34 2a 63 3b 62 2e 73 69  kSize,e=4*c;b.si
2ed0: 67 42 79 74 65 73 3e 65 26 26 28 62 3d 61 2e 66  gBytes>e&&(b=a.f
2ee0: 69 6e 61 6c 69 7a 65 28 62 29 29 3b 62 2e 63 6c  inalize(b));b.cl
2ef0: 61 6d 70 28 29 3b 66 6f 72 28 76 61 72 20 66 3d  amp();for(var f=
2f00: 74 68 69 73 2e 5f 6f 4b 65 79 3d 62 2e 63 6c 6f  this._oKey=b.clo
2f10: 6e 65 28 29 2c 67 3d 74 68 69 73 2e 5f 69 4b 65  ne(),g=this._iKe
2f20: 79 3d 62 2e 63 6c 6f 6e 65 28 29 2c 68 3d 66 2e  y=b.clone(),h=f.
2f30: 77 6f 72 64 73 2c 6a 3d 67 2e 77 6f 72 64 73 2c  words,j=g.words,
2f40: 64 3d 30 3b 64 3c 63 3b 64 2b 2b 29 68 5b 64 5d  d=0;d<c;d++)h[d]
2f50: 5e 3d 31 35 34 39 35 35 36 38 32 38 2c 6a 5b 64  ^=1549556828,j[d
2f60: 5d 5e 3d 39 30 39 35 32 32 34 38 36 3b 66 2e 73  ]^=909522486;f.s
2f70: 69 67 42 79 74 65 73 3d 67 2e 73 69 67 42 79 74  igBytes=g.sigByt
2f80: 65 73 3d 65 3b 74 68 69 73 2e 72 65 73 65 74 28  es=e;this.reset(
2f90: 29 7d 2c 72 65 73 65 74 3a 66 75 6e 63 74 69 6f  )},reset:functio
2fa0: 6e 28 29 7b 76 61 72 20 61 3d 74 68 69 73 2e 5f  n(){var a=this._
2fb0: 68 61 73 68 65 72 3b 61 2e 72 65 73 65 74 28 29  hasher;a.reset()
2fc0: 3b 61 2e 75 70 64 61 74 65 28 74 68 69 73 2e 5f  ;a.update(this._
2fd0: 69 4b 65 79 29 7d 2c 75 70 64 61 74 65 3a 66 75  iKey)},update:fu
2fe0: 6e 63 74 69 6f 6e 28 61 29 7b 74 68 69 73 2e 5f  nction(a){this._
2ff0: 68 61 73 68 65 72 2e 75 70 64 61 74 65 28 61 29  hasher.update(a)
3000: 3b 72 65 74 75 72 6e 20 74 68 69 73 7d 2c 66 69  ;return this},fi
3010: 6e 61 6c 69 7a 65 3a 66 75 6e 63 74 69 6f 6e 28  nalize:function(
3020: 61 29 7b 76 61 72 20 62 3d 0a 74 68 69 73 2e 5f  a){var b=.this._
3030: 68 61 73 68 65 72 3b 61 3d 62 2e 66 69 6e 61 6c  hasher;a=b.final
3040: 69 7a 65 28 61 29 3b 62 2e 72 65 73 65 74 28 29  ize(a);b.reset()
3050: 3b 72 65 74 75 72 6e 20 62 2e 66 69 6e 61 6c 69  ;return b.finali
3060: 7a 65 28 74 68 69 73 2e 5f 6f 4b 65 79 2e 63 6c  ze(this._oKey.cl
3070: 6f 6e 65 28 29 2e 63 6f 6e 63 61 74 28 61 29 29  one().concat(a))
3080: 7d 7d 29 7d 29 28 29 3b 0a 0a 2f 2a 0a 43 72 79  }})})();../*.Cry
3090: 70 74 6f 4a 53 20 76 33 2e 31 2e 32 20 73 68 61  ptoJS v3.1.2 sha
30a0: 32 35 36 2d 6d 69 6e 2e 6a 73 0a 63 6f 64 65 2e  256-min.js.code.
30b0: 67 6f 6f 67 6c 65 2e 63 6f 6d 2f 70 2f 63 72 79  google.com/p/cry
30c0: 70 74 6f 2d 6a 73 0a 28 63 29 20 32 30 30 39 2d  pto-js.(c) 2009-
30d0: 32 30 31 33 20 62 79 20 4a 65 66 66 20 4d 6f 74  2013 by Jeff Mot
30e0: 74 2e 20 41 6c 6c 20 72 69 67 68 74 73 20 72 65  t. All rights re
30f0: 73 65 72 76 65 64 2e 0a 63 6f 64 65 2e 67 6f 6f  served..code.goo
3100: 67 6c 65 2e 63 6f 6d 2f 70 2f 63 72 79 70 74 6f  gle.com/p/crypto
3110: 2d 6a 73 2f 77 69 6b 69 2f 4c 69 63 65 6e 73 65  -js/wiki/License
3120: 0a 2a 2f 0a 28 66 75 6e 63 74 69 6f 6e 28 6b 29  .*/.(function(k)
3130: 7b 66 6f 72 28 76 61 72 20 67 3d 43 72 79 70 74  {for(var g=Crypt
3140: 6f 4a 53 2c 68 3d 67 2e 6c 69 62 2c 76 3d 68 2e  oJS,h=g.lib,v=h.
3150: 57 6f 72 64 41 72 72 61 79 2c 6a 3d 68 2e 48 61  WordArray,j=h.Ha
3160: 73 68 65 72 2c 68 3d 67 2e 61 6c 67 6f 2c 73 3d  sher,h=g.algo,s=
3170: 5b 5d 2c 74 3d 5b 5d 2c 75 3d 66 75 6e 63 74 69  [],t=[],u=functi
3180: 6f 6e 28 71 29 7b 72 65 74 75 72 6e 20 34 32 39  on(q){return 429
3190: 34 39 36 37 32 39 36 2a 28 71 2d 28 71 7c 30 29  4967296*(q-(q|0)
31a0: 29 7c 30 7d 2c 6c 3d 32 2c 62 3d 30 3b 36 34 3e  )|0},l=2,b=0;64>
31b0: 62 3b 29 7b 76 61 72 20 64 3b 61 3a 7b 64 3d 6c  b;){var d;a:{d=l
31c0: 3b 66 6f 72 28 76 61 72 20 77 3d 6b 2e 73 71 72  ;for(var w=k.sqr
31d0: 74 28 64 29 2c 72 3d 32 3b 72 3c 3d 77 3b 72 2b  t(d),r=2;r<=w;r+
31e0: 2b 29 69 66 28 21 28 64 25 72 29 29 7b 64 3d 21  +)if(!(d%r)){d=!
31f0: 31 3b 62 72 65 61 6b 20 61 7d 64 3d 21 30 7d 64  1;break a}d=!0}d
3200: 26 26 28 38 3e 62 26 26 28 73 5b 62 5d 3d 75 28  &&(8>b&&(s[b]=u(
3210: 6b 2e 70 6f 77 28 6c 2c 30 2e 35 29 29 29 2c 74  k.pow(l,0.5))),t
3220: 5b 62 5d 3d 75 28 6b 2e 70 6f 77 28 6c 2c 31 2f  [b]=u(k.pow(l,1/
3230: 33 29 29 2c 62 2b 2b 29 3b 6c 2b 2b 7d 76 61 72  3)),b++);l++}var
3240: 20 6e 3d 5b 5d 2c 68 3d 68 2e 53 48 41 32 35 36   n=[],h=h.SHA256
3250: 3d 6a 2e 65 78 74 65 6e 64 28 7b 5f 64 6f 52 65  =j.extend({_doRe
3260: 73 65 74 3a 66 75 6e 63 74 69 6f 6e 28 29 7b 74  set:function(){t
3270: 68 69 73 2e 5f 68 61 73 68 3d 6e 65 77 20 76 2e  his._hash=new v.
3280: 69 6e 69 74 28 73 2e 73 6c 69 63 65 28 30 29 29  init(s.slice(0))
3290: 7d 2c 5f 64 6f 50 72 6f 63 65 73 73 42 6c 6f 63  },_doProcessBloc
32a0: 6b 3a 66 75 6e 63 74 69 6f 6e 28 71 2c 68 29 7b  k:function(q,h){
32b0: 66 6f 72 28 76 61 72 20 61 3d 74 68 69 73 2e 5f  for(var a=this._
32c0: 68 61 73 68 2e 77 6f 72 64 73 2c 63 3d 61 5b 30  hash.words,c=a[0
32d0: 5d 2c 64 3d 61 5b 31 5d 2c 62 3d 61 5b 32 5d 2c  ],d=a[1],b=a[2],
32e0: 6b 3d 61 5b 33 5d 2c 66 3d 61 5b 34 5d 2c 67 3d  k=a[3],f=a[4],g=
32f0: 61 5b 35 5d 2c 6a 3d 61 5b 36 5d 2c 6c 3d 61 5b  a[5],j=a[6],l=a[
3300: 37 5d 2c 65 3d 30 3b 36 34 3e 65 3b 65 2b 2b 29  7],e=0;64>e;e++)
3310: 7b 69 66 28 31 36 3e 65 29 6e 5b 65 5d 3d 0a 71  {if(16>e)n[e]=.q
3320: 5b 68 2b 65 5d 7c 30 3b 65 6c 73 65 7b 76 61 72  [h+e]|0;else{var
3330: 20 6d 3d 6e 5b 65 2d 31 35 5d 2c 70 3d 6e 5b 65   m=n[e-15],p=n[e
3340: 2d 32 5d 3b 6e 5b 65 5d 3d 28 28 6d 3c 3c 32 35  -2];n[e]=((m<<25
3350: 7c 6d 3e 3e 3e 37 29 5e 28 6d 3c 3c 31 34 7c 6d  |m>>>7)^(m<<14|m
3360: 3e 3e 3e 31 38 29 5e 6d 3e 3e 3e 33 29 2b 6e 5b  >>>18)^m>>>3)+n[
3370: 65 2d 37 5d 2b 28 28 70 3c 3c 31 35 7c 70 3e 3e  e-7]+((p<<15|p>>
3380: 3e 31 37 29 5e 28 70 3c 3c 31 33 7c 70 3e 3e 3e  >17)^(p<<13|p>>>
3390: 31 39 29 5e 70 3e 3e 3e 31 30 29 2b 6e 5b 65 2d  19)^p>>>10)+n[e-
33a0: 31 36 5d 7d 6d 3d 6c 2b 28 28 66 3c 3c 32 36 7c  16]}m=l+((f<<26|
33b0: 66 3e 3e 3e 36 29 5e 28 66 3c 3c 32 31 7c 66 3e  f>>>6)^(f<<21|f>
33c0: 3e 3e 31 31 29 5e 28 66 3c 3c 37 7c 66 3e 3e 3e  >>11)^(f<<7|f>>>
33d0: 32 35 29 29 2b 28 66 26 67 5e 7e 66 26 6a 29 2b  25))+(f&g^~f&j)+
33e0: 74 5b 65 5d 2b 6e 5b 65 5d 3b 70 3d 28 28 63 3c  t[e]+n[e];p=((c<
33f0: 3c 33 30 7c 63 3e 3e 3e 32 29 5e 28 63 3c 3c 31  <30|c>>>2)^(c<<1
3400: 39 7c 63 3e 3e 3e 31 33 29 5e 28 63 3c 3c 31 30  9|c>>>13)^(c<<10
3410: 7c 63 3e 3e 3e 32 32 29 29 2b 28 63 26 64 5e 63  |c>>>22))+(c&d^c
3420: 26 62 5e 64 26 62 29 3b 6c 3d 6a 3b 6a 3d 67 3b  &b^d&b);l=j;j=g;
3430: 67 3d 66 3b 66 3d 6b 2b 6d 7c 30 3b 6b 3d 62 3b  g=f;f=k+m|0;k=b;
3440: 62 3d 64 3b 64 3d 63 3b 63 3d 6d 2b 70 7c 30 7d  b=d;d=c;c=m+p|0}
3450: 61 5b 30 5d 3d 61 5b 30 5d 2b 63 7c 30 3b 61 5b  a[0]=a[0]+c|0;a[
3460: 31 5d 3d 61 5b 31 5d 2b 64 7c 30 3b 61 5b 32 5d  1]=a[1]+d|0;a[2]
3470: 3d 61 5b 32 5d 2b 62 7c 30 3b 61 5b 33 5d 3d 61  =a[2]+b|0;a[3]=a
3480: 5b 33 5d 2b 6b 7c 30 3b 61 5b 34 5d 3d 61 5b 34  [3]+k|0;a[4]=a[4
3490: 5d 2b 66 7c 30 3b 61 5b 35 5d 3d 61 5b 35 5d 2b  ]+f|0;a[5]=a[5]+
34a0: 67 7c 30 3b 61 5b 36 5d 3d 61 5b 36 5d 2b 6a 7c  g|0;a[6]=a[6]+j|
34b0: 30 3b 61 5b 37 5d 3d 61 5b 37 5d 2b 6c 7c 30 7d  0;a[7]=a[7]+l|0}
34c0: 2c 5f 64 6f 46 69 6e 61 6c 69 7a 65 3a 66 75 6e  ,_doFinalize:fun
34d0: 63 74 69 6f 6e 28 29 7b 76 61 72 20 64 3d 74 68  ction(){var d=th
34e0: 69 73 2e 5f 64 61 74 61 2c 62 3d 64 2e 77 6f 72  is._data,b=d.wor
34f0: 64 73 2c 61 3d 38 2a 74 68 69 73 2e 5f 6e 44 61  ds,a=8*this._nDa
3500: 74 61 42 79 74 65 73 2c 63 3d 38 2a 64 2e 73 69  taBytes,c=8*d.si
3510: 67 42 79 74 65 73 3b 0a 62 5b 63 3e 3e 3e 35 5d  gBytes;.b[c>>>5]
3520: 7c 3d 31 32 38 3c 3c 32 34 2d 63 25 33 32 3b 62  |=128<<24-c%32;b
3530: 5b 28 63 2b 36 34 3e 3e 3e 39 3c 3c 34 29 2b 31  [(c+64>>>9<<4)+1
3540: 34 5d 3d 6b 2e 66 6c 6f 6f 72 28 61 2f 34 32 39  4]=k.floor(a/429
3550: 34 39 36 37 32 39 36 29 3b 62 5b 28 63 2b 36 34  4967296);b[(c+64
3560: 3e 3e 3e 39 3c 3c 34 29 2b 31 35 5d 3d 61 3b 64  >>>9<<4)+15]=a;d
3570: 2e 73 69 67 42 79 74 65 73 3d 34 2a 62 2e 6c 65  .sigBytes=4*b.le
3580: 6e 67 74 68 3b 74 68 69 73 2e 5f 70 72 6f 63 65  ngth;this._proce
3590: 73 73 28 29 3b 72 65 74 75 72 6e 20 74 68 69 73  ss();return this
35a0: 2e 5f 68 61 73 68 7d 2c 63 6c 6f 6e 65 3a 66 75  ._hash},clone:fu
35b0: 6e 63 74 69 6f 6e 28 29 7b 76 61 72 20 62 3d 6a  nction(){var b=j
35c0: 2e 63 6c 6f 6e 65 2e 63 61 6c 6c 28 74 68 69 73  .clone.call(this
35d0: 29 3b 62 2e 5f 68 61 73 68 3d 74 68 69 73 2e 5f  );b._hash=this._
35e0: 68 61 73 68 2e 63 6c 6f 6e 65 28 29 3b 72 65 74  hash.clone();ret
35f0: 75 72 6e 20 62 7d 7d 29 3b 67 2e 53 48 41 32 35  urn b}});g.SHA25
3600: 36 3d 6a 2e 5f 63 72 65 61 74 65 48 65 6c 70 65  6=j._createHelpe
3610: 72 28 68 29 3b 67 2e 48 6d 61 63 53 48 41 32 35  r(h);g.HmacSHA25
3620: 36 3d 6a 2e 5f 63 72 65 61 74 65 48 6d 61 63 48  6=j._createHmacH
3630: 65 6c 70 65 72 28 68 29 7d 29 28 4d 61 74 68 29  elper(h)})(Math)
3640: 3b 0a 0a 2f 2a 0a 43 72 79 70 74 6f 4a 53 20 76  ;../*.CryptoJS v
3650: 33 2e 31 2e 32 20 73 68 61 32 32 34 2d 6d 69 6e  3.1.2 sha224-min
3660: 2e 6a 73 0a 63 6f 64 65 2e 67 6f 6f 67 6c 65 2e  .js.code.google.
3670: 63 6f 6d 2f 70 2f 63 72 79 70 74 6f 2d 6a 73 0a  com/p/crypto-js.
3680: 28 63 29 20 32 30 30 39 2d 32 30 31 33 20 62 79  (c) 2009-2013 by
3690: 20 4a 65 66 66 20 4d 6f 74 74 2e 20 41 6c 6c 20   Jeff Mott. All 
36a0: 72 69 67 68 74 73 20 72 65 73 65 72 76 65 64 2e  rights reserved.
36b0: 0a 63 6f 64 65 2e 67 6f 6f 67 6c 65 2e 63 6f 6d  .code.google.com
36c0: 2f 70 2f 63 72 79 70 74 6f 2d 6a 73 2f 77 69 6b  /p/crypto-js/wik
36d0: 69 2f 4c 69 63 65 6e 73 65 0a 2a 2f 0a 28 66 75  i/License.*/.(fu
36e0: 6e 63 74 69 6f 6e 28 29 7b 76 61 72 20 62 3d 43  nction(){var b=C
36f0: 72 79 70 74 6f 4a 53 2c 64 3d 62 2e 6c 69 62 2e  ryptoJS,d=b.lib.
3700: 57 6f 72 64 41 72 72 61 79 2c 61 3d 62 2e 61 6c  WordArray,a=b.al
3710: 67 6f 2c 63 3d 61 2e 53 48 41 32 35 36 2c 61 3d  go,c=a.SHA256,a=
3720: 61 2e 53 48 41 32 32 34 3d 63 2e 65 78 74 65 6e  a.SHA224=c.exten
3730: 64 28 7b 5f 64 6f 52 65 73 65 74 3a 66 75 6e 63  d({_doReset:func
3740: 74 69 6f 6e 28 29 7b 74 68 69 73 2e 5f 68 61 73  tion(){this._has
3750: 68 3d 6e 65 77 20 64 2e 69 6e 69 74 28 5b 33 32  h=new d.init([32
3760: 33 38 33 37 31 30 33 32 2c 39 31 34 31 35 30 36  38371032,9141506
3770: 36 33 2c 38 31 32 37 30 32 39 39 39 2c 34 31 34  63,812702999,414
3780: 34 39 31 32 36 39 37 2c 34 32 39 30 37 37 35 38  4912697,42907758
3790: 35 37 2c 31 37 35 30 36 30 33 30 32 35 2c 31 36  57,1750603025,16
37a0: 39 34 30 37 36 38 33 39 2c 33 32 30 34 30 37 35  94076839,3204075
37b0: 34 32 38 5d 29 7d 2c 5f 64 6f 46 69 6e 61 6c 69  428])},_doFinali
37c0: 7a 65 3a 66 75 6e 63 74 69 6f 6e 28 29 7b 76 61  ze:function(){va
37d0: 72 20 61 3d 63 2e 5f 64 6f 46 69 6e 61 6c 69 7a  r a=c._doFinaliz
37e0: 65 2e 63 61 6c 6c 28 74 68 69 73 29 3b 61 2e 73  e.call(this);a.s
37f0: 69 67 42 79 74 65 73 2d 3d 34 3b 72 65 74 75 72  igBytes-=4;retur
3800: 6e 20 61 7d 7d 29 3b 62 2e 53 48 41 32 32 34 3d  n a}});b.SHA224=
3810: 63 2e 5f 63 72 65 61 74 65 48 65 6c 70 65 72 28  c._createHelper(
3820: 61 29 3b 62 2e 48 6d 61 63 53 48 41 32 32 34 3d  a);b.HmacSHA224=
3830: 63 2e 5f 63 72 65 61 74 65 48 6d 61 63 48 65 6c  c._createHmacHel
3840: 70 65 72 28 61 29 7d 29 28 29 3b 0a 0a 2f 2a 0a  per(a)})();../*.
3850: 43 72 79 70 74 6f 4a 53 20 76 33 2e 31 2e 32 20  CryptoJS v3.1.2 
3860: 73 68 61 35 31 32 2d 6d 69 6e 2e 6a 73 0a 63 6f  sha512-min.js.co
3870: 64 65 2e 67 6f 6f 67 6c 65 2e 63 6f 6d 2f 70 2f  de.google.com/p/
3880: 63 72 79 70 74 6f 2d 6a 73 0a 28 63 29 20 32 30  crypto-js.(c) 20
3890: 30 39 2d 32 30 31 33 20 62 79 20 4a 65 66 66 20  09-2013 by Jeff 
38a0: 4d 6f 74 74 2e 20 41 6c 6c 20 72 69 67 68 74 73  Mott. All rights
38b0: 20 72 65 73 65 72 76 65 64 2e 0a 63 6f 64 65 2e   reserved..code.
38c0: 67 6f 6f 67 6c 65 2e 63 6f 6d 2f 70 2f 63 72 79  google.com/p/cry
38d0: 70 74 6f 2d 6a 73 2f 77 69 6b 69 2f 4c 69 63 65  pto-js/wiki/Lice
38e0: 6e 73 65 0a 2a 2f 0a 28 66 75 6e 63 74 69 6f 6e  nse.*/.(function
38f0: 28 29 7b 66 75 6e 63 74 69 6f 6e 20 61 28 29 7b  (){function a(){
3900: 72 65 74 75 72 6e 20 64 2e 63 72 65 61 74 65 2e  return d.create.
3910: 61 70 70 6c 79 28 64 2c 61 72 67 75 6d 65 6e 74  apply(d,argument
3920: 73 29 7d 66 6f 72 28 76 61 72 20 6e 3d 43 72 79  s)}for(var n=Cry
3930: 70 74 6f 4a 53 2c 72 3d 6e 2e 6c 69 62 2e 48 61  ptoJS,r=n.lib.Ha
3940: 73 68 65 72 2c 65 3d 6e 2e 78 36 34 2c 64 3d 65  sher,e=n.x64,d=e
3950: 2e 57 6f 72 64 2c 54 3d 65 2e 57 6f 72 64 41 72  .Word,T=e.WordAr
3960: 72 61 79 2c 65 3d 6e 2e 61 6c 67 6f 2c 65 61 3d  ray,e=n.algo,ea=
3970: 5b 61 28 31 31 31 36 33 35 32 34 30 38 2c 33 36  [a(1116352408,36
3980: 30 39 37 36 37 34 35 38 29 2c 61 28 31 38 39 39  09767458),a(1899
3990: 34 34 37 34 34 31 2c 36 30 32 38 39 31 37 32 35  447441,602891725
39a0: 29 2c 61 28 33 30 34 39 33 32 33 34 37 31 2c 33  ),a(3049323471,3
39b0: 39 36 34 34 38 34 33 39 39 29 2c 61 28 33 39 32  964484399),a(392
39c0: 31 30 30 39 35 37 33 2c 32 31 37 33 32 39 35 35  1009573,21732955
39d0: 34 38 29 2c 61 28 39 36 31 39 38 37 31 36 33 2c  48),a(961987163,
39e0: 34 30 38 31 36 32 38 34 37 32 29 2c 61 28 31 35  4081628472),a(15
39f0: 30 38 39 37 30 39 39 33 2c 33 30 35 33 38 33 34  08970993,3053834
3a00: 32 36 35 29 2c 61 28 32 34 35 33 36 33 35 37 34  265),a(245363574
3a10: 38 2c 32 39 33 37 36 37 31 35 37 39 29 2c 61 28  8,2937671579),a(
3a20: 32 38 37 30 37 36 33 32 32 31 2c 33 36 36 34 36  2870763221,36646
3a30: 30 39 35 36 30 29 2c 61 28 33 36 32 34 33 38 31  09560),a(3624381
3a40: 30 38 30 2c 32 37 33 34 38 38 33 33 39 34 29 2c  080,2734883394),
3a50: 61 28 33 31 30 35 39 38 34 30 31 2c 31 31 36 34  a(310598401,1164
3a60: 39 39 36 35 34 32 29 2c 61 28 36 30 37 32 32 35  996542),a(607225
3a70: 32 37 38 2c 31 33 32 33 36 31 30 37 36 34 29 2c  278,1323610764),
3a80: 61 28 31 34 32 36 38 38 31 39 38 37 2c 33 35 39  a(1426881987,359
3a90: 30 33 30 34 39 39 34 29 2c 61 28 31 39 32 35 30  0304994),a(19250
3aa0: 37 38 33 38 38 2c 34 30 36 38 31 38 32 33 38 33  78388,4068182383
3ab0: 29 2c 61 28 32 31 36 32 30 37 38 32 30 36 2c 39  ),a(2162078206,9
3ac0: 39 31 33 33 36 31 31 33 29 2c 61 28 32 36 31 34  91336113),a(2614
3ad0: 38 38 38 31 30 33 2c 36 33 33 38 30 33 33 31 37  888103,633803317
3ae0: 29 2c 0a 61 28 33 32 34 38 32 32 32 35 38 30 2c  ),.a(3248222580,
3af0: 33 34 37 39 37 37 34 38 36 38 29 2c 61 28 33 38  3479774868),a(38
3b00: 33 35 33 39 30 34 30 31 2c 32 36 36 36 36 31 33  35390401,2666613
3b10: 34 35 38 29 2c 61 28 34 30 32 32 32 32 34 37 37  458),a(402222477
3b20: 34 2c 39 34 34 37 31 31 31 33 39 29 2c 61 28 32  4,944711139),a(2
3b30: 36 34 33 34 37 30 37 38 2c 32 33 34 31 32 36 32  64347078,2341262
3b40: 37 37 33 29 2c 61 28 36 30 34 38 30 37 36 32 38  773),a(604807628
3b50: 2c 32 30 30 37 38 30 30 39 33 33 29 2c 61 28 37  ,2007800933),a(7
3b60: 37 30 32 35 35 39 38 33 2c 31 34 39 35 39 39 30  70255983,1495990
3b70: 39 30 31 29 2c 61 28 31 32 34 39 31 35 30 31 32  901),a(124915012
3b80: 32 2c 31 38 35 36 34 33 31 32 33 35 29 2c 61 28  2,1856431235),a(
3b90: 31 35 35 35 30 38 31 36 39 32 2c 33 31 37 35 32  1555081692,31752
3ba0: 31 38 31 33 32 29 2c 61 28 31 39 39 36 30 36 34  18132),a(1996064
3bb0: 39 38 36 2c 32 31 39 38 39 35 30 38 33 37 29 2c  986,2198950837),
3bc0: 61 28 32 35 35 34 32 32 30 38 38 32 2c 33 39 39  a(2554220882,399
3bd0: 39 37 31 39 33 33 39 29 2c 61 28 32 38 32 31 38  9719339),a(28218
3be0: 33 34 33 34 39 2c 37 36 36 37 38 34 30 31 36 29  34349,766784016)
3bf0: 2c 61 28 32 39 35 32 39 39 36 38 30 38 2c 32 35  ,a(2952996808,25
3c00: 36 36 35 39 34 38 37 39 29 2c 61 28 33 32 31 30  66594879),a(3210
3c10: 33 31 33 36 37 31 2c 33 32 30 33 33 33 37 39 35  313671,320333795
3c20: 36 29 2c 61 28 33 33 33 36 35 37 31 38 39 31 2c  6),a(3336571891,
3c30: 31 30 33 34 34 35 37 30 32 36 29 2c 61 28 33 35  1034457026),a(35
3c40: 38 34 35 32 38 37 31 31 2c 32 34 36 36 39 34 38  84528711,2466948
3c50: 39 30 31 29 2c 61 28 31 31 33 39 32 36 39 39 33  901),a(113926993
3c60: 2c 33 37 35 38 33 32 36 33 38 33 29 2c 61 28 33  ,3758326383),a(3
3c70: 33 38 32 34 31 38 39 35 2c 31 36 38 37 31 37 39  38241895,1687179
3c80: 33 36 29 2c 61 28 36 36 36 33 30 37 32 30 35 2c  36),a(666307205,
3c90: 31 31 38 38 31 37 39 39 36 34 29 2c 61 28 37 37  1188179964),a(77
3ca0: 33 35 32 39 39 31 32 2c 31 35 34 36 30 34 35 37  3529912,15460457
3cb0: 33 34 29 2c 61 28 31 32 39 34 37 35 37 33 37 32  34),a(1294757372
3cc0: 2c 31 35 32 32 38 30 35 34 38 35 29 2c 61 28 31  ,1522805485),a(1
3cd0: 33 39 36 31 38 32 32 39 31 2c 0a 32 36 34 33 38  396182291,.26438
3ce0: 33 33 38 32 33 29 2c 61 28 31 36 39 35 31 38 33  33823),a(1695183
3cf0: 37 30 30 2c 32 33 34 33 35 32 37 33 39 30 29 2c  700,2343527390),
3d00: 61 28 31 39 38 36 36 36 31 30 35 31 2c 31 30 31  a(1986661051,101
3d10: 34 34 37 37 34 38 30 29 2c 61 28 32 31 37 37 30  4477480),a(21770
3d20: 32 36 33 35 30 2c 31 32 30 36 37 35 39 31 34 32  26350,1206759142
3d30: 29 2c 61 28 32 34 35 36 39 35 36 30 33 37 2c 33  ),a(2456956037,3
3d40: 34 34 30 37 37 36 32 37 29 2c 61 28 32 37 33 30  44077627),a(2730
3d50: 34 38 35 39 32 31 2c 31 32 39 30 38 36 33 34 36  485921,129086346
3d60: 30 29 2c 61 28 32 38 32 30 33 30 32 34 31 31 2c  0),a(2820302411,
3d70: 33 31 35 38 34 35 34 32 37 33 29 2c 61 28 33 32  3158454273),a(32
3d80: 35 39 37 33 30 38 30 30 2c 33 35 30 35 39 35 32  59730800,3505952
3d90: 36 35 37 29 2c 61 28 33 33 34 35 37 36 34 37 37  657),a(334576477
3da0: 31 2c 31 30 36 32 31 37 30 30 38 29 2c 61 28 33  1,106217008),a(3
3db0: 35 31 36 30 36 35 38 31 37 2c 33 36 30 36 30 30  516065817,360600
3dc0: 38 33 34 34 29 2c 61 28 33 36 30 30 33 35 32 38  8344),a(36003528
3dd0: 30 34 2c 31 34 33 32 37 32 35 37 37 36 29 2c 61  04,1432725776),a
3de0: 28 34 30 39 34 35 37 31 39 30 39 2c 31 34 36 37  (4094571909,1467
3df0: 30 33 31 35 39 34 29 2c 61 28 32 37 35 34 32 33  031594),a(275423
3e00: 33 34 34 2c 38 35 31 31 36 39 37 32 30 29 2c 61  344,851169720),a
3e10: 28 34 33 30 32 32 37 37 33 34 2c 33 31 30 30 38  (430227734,31008
3e20: 32 33 37 35 32 29 2c 61 28 35 30 36 39 34 38 36  23752),a(5069486
3e30: 31 36 2c 31 33 36 33 32 35 38 31 39 35 29 2c 61  16,1363258195),a
3e40: 28 36 35 39 30 36 30 35 35 36 2c 33 37 35 30 36  (659060556,37506
3e50: 38 35 35 39 33 29 2c 61 28 38 38 33 39 39 37 38  85593),a(8839978
3e60: 37 37 2c 33 37 38 35 30 35 30 32 38 30 29 2c 61  77,3785050280),a
3e70: 28 39 35 38 31 33 39 35 37 31 2c 33 33 31 38 33  (958139571,33183
3e80: 30 37 34 32 37 29 2c 61 28 31 33 32 32 38 32 32  07427),a(1322822
3e90: 32 31 38 2c 33 38 31 32 37 32 33 34 30 33 29 2c  218,3812723403),
3ea0: 61 28 31 35 33 37 30 30 32 30 36 33 2c 32 30 30  a(1537002063,200
3eb0: 33 30 33 34 39 39 35 29 2c 61 28 31 37 34 37 38  3034995),a(17478
3ec0: 37 33 37 37 39 2c 33 36 30 32 30 33 36 38 39 39  73779,3602036899
3ed0: 29 2c 0a 61 28 31 39 35 35 35 36 32 32 32 32 2c  ),.a(1955562222,
3ee0: 31 35 37 35 39 39 30 30 31 32 29 2c 61 28 32 30  1575990012),a(20
3ef0: 32 34 31 30 34 38 31 35 2c 31 31 32 35 35 39 32  24104815,1125592
3f00: 39 32 38 29 2c 61 28 32 32 32 37 37 33 30 34 35  928),a(222773045
3f10: 32 2c 32 37 31 36 39 30 34 33 30 36 29 2c 61 28  2,2716904306),a(
3f20: 32 33 36 31 38 35 32 34 32 34 2c 34 34 32 37 37  2361852424,44277
3f30: 36 30 34 34 29 2c 61 28 32 34 32 38 34 33 36 34  6044),a(24284364
3f40: 37 34 2c 35 39 33 36 39 38 33 34 34 29 2c 61 28  74,593698344),a(
3f50: 32 37 35 36 37 33 34 31 38 37 2c 33 37 33 33 31  2756734187,37331
3f60: 31 30 32 34 39 29 2c 61 28 33 32 30 34 30 33 31  10249),a(3204031
3f70: 34 37 39 2c 32 39 39 39 33 35 31 35 37 33 29 2c  479,2999351573),
3f80: 61 28 33 33 32 39 33 32 35 32 39 38 2c 33 38 31  a(3329325298,381
3f90: 35 39 32 30 34 32 37 29 2c 61 28 33 33 39 31 35  5920427),a(33915
3fa0: 36 39 36 31 34 2c 33 39 32 38 33 38 33 39 30 30  69614,3928383900
3fb0: 29 2c 61 28 33 35 31 35 32 36 37 32 37 31 2c 35  ),a(3515267271,5
3fc0: 36 36 32 38 30 37 31 31 29 2c 61 28 33 39 34 30  66280711),a(3940
3fd0: 31 38 37 36 30 36 2c 33 34 35 34 30 36 39 35 33  187606,345406953
3fe0: 34 29 2c 61 28 34 31 31 38 36 33 30 32 37 31 2c  4),a(4118630271,
3ff0: 34 30 30 30 32 33 39 39 39 32 29 2c 61 28 31 31  4000239992),a(11
4000: 36 34 31 38 34 37 34 2c 31 39 31 34 31 33 38 35  6418474,19141385
4010: 35 34 29 2c 61 28 31 37 34 32 39 32 34 32 31 2c  54),a(174292421,
4020: 32 37 33 31 30 35 35 32 37 30 29 2c 61 28 32 38  2731055270),a(28
4030: 39 33 38 30 33 35 36 2c 33 32 30 33 39 39 33 30  9380356,32039930
4040: 30 36 29 2c 61 28 34 36 30 33 39 33 32 36 39 2c  06),a(460393269,
4050: 33 32 30 36 32 30 33 31 35 29 2c 61 28 36 38 35  320620315),a(685
4060: 34 37 31 37 33 33 2c 35 38 37 34 39 36 38 33 36  471733,587496836
4070: 29 2c 61 28 38 35 32 31 34 32 39 37 31 2c 31 30  ),a(852142971,10
4080: 38 36 37 39 32 38 35 31 29 2c 61 28 31 30 31 37  86792851),a(1017
4090: 30 33 36 32 39 38 2c 33 36 35 35 34 33 31 30 30  036298,365543100
40a0: 29 2c 61 28 31 31 32 36 30 30 30 35 38 30 2c 32  ),a(1126000580,2
40b0: 36 31 38 32 39 37 36 37 36 29 2c 61 28 31 32 38  618297676),a(128
40c0: 38 30 33 33 34 37 30 2c 0a 33 34 30 39 38 35 35  8033470,.3409855
40d0: 31 35 38 29 2c 61 28 31 35 30 31 35 30 35 39 34  158),a(150150594
40e0: 38 2c 34 32 33 34 35 30 39 38 36 36 29 2c 61 28  8,4234509866),a(
40f0: 31 36 30 37 31 36 37 39 31 35 2c 39 38 37 31 36  1607167915,98716
4100: 37 34 36 38 29 2c 61 28 31 38 31 36 34 30 32 33  7468),a(18164023
4110: 31 36 2c 31 32 34 36 31 38 39 35 39 31 29 5d 2c  16,1246189591)],
4120: 76 3d 5b 5d 2c 77 3d 30 3b 38 30 3e 77 3b 77 2b  v=[],w=0;80>w;w+
4130: 2b 29 76 5b 77 5d 3d 61 28 29 3b 65 3d 65 2e 53  +)v[w]=a();e=e.S
4140: 48 41 35 31 32 3d 72 2e 65 78 74 65 6e 64 28 7b  HA512=r.extend({
4150: 5f 64 6f 52 65 73 65 74 3a 66 75 6e 63 74 69 6f  _doReset:functio
4160: 6e 28 29 7b 74 68 69 73 2e 5f 68 61 73 68 3d 6e  n(){this._hash=n
4170: 65 77 20 54 2e 69 6e 69 74 28 5b 6e 65 77 20 64  ew T.init([new d
4180: 2e 69 6e 69 74 28 31 37 37 39 30 33 33 37 30 33  .init(1779033703
4190: 2c 34 30 38 39 32 33 35 37 32 30 29 2c 6e 65 77  ,4089235720),new
41a0: 20 64 2e 69 6e 69 74 28 33 31 34 34 31 33 34 32   d.init(31441342
41b0: 37 37 2c 32 32 32 37 38 37 33 35 39 35 29 2c 6e  77,2227873595),n
41c0: 65 77 20 64 2e 69 6e 69 74 28 31 30 31 33 39 30  ew d.init(101390
41d0: 34 32 34 32 2c 34 32 37 31 31 37 35 37 32 33 29  4242,4271175723)
41e0: 2c 6e 65 77 20 64 2e 69 6e 69 74 28 32 37 37 33  ,new d.init(2773
41f0: 34 38 30 37 36 32 2c 31 35 39 35 37 35 30 31 32  480762,159575012
4200: 39 29 2c 6e 65 77 20 64 2e 69 6e 69 74 28 31 33  9),new d.init(13
4210: 35 39 38 39 33 31 31 39 2c 32 39 31 37 35 36 35  59893119,2917565
4220: 31 33 37 29 2c 6e 65 77 20 64 2e 69 6e 69 74 28  137),new d.init(
4230: 32 36 30 30 38 32 32 39 32 34 2c 37 32 35 35 31  2600822924,72551
4240: 31 31 39 39 29 2c 6e 65 77 20 64 2e 69 6e 69 74  1199),new d.init
4250: 28 35 32 38 37 33 34 36 33 35 2c 34 32 31 35 33  (528734635,42153
4260: 38 39 35 34 37 29 2c 6e 65 77 20 64 2e 69 6e 69  89547),new d.ini
4270: 74 28 31 35 34 31 34 35 39 32 32 35 2c 33 32 37  t(1541459225,327
4280: 30 33 33 32 30 39 29 5d 29 7d 2c 5f 64 6f 50 72  033209)])},_doPr
4290: 6f 63 65 73 73 42 6c 6f 63 6b 3a 66 75 6e 63 74  ocessBlock:funct
42a0: 69 6f 6e 28 61 2c 64 29 7b 66 6f 72 28 76 61 72  ion(a,d){for(var
42b0: 20 66 3d 74 68 69 73 2e 5f 68 61 73 68 2e 77 6f   f=this._hash.wo
42c0: 72 64 73 2c 0a 46 3d 66 5b 30 5d 2c 65 3d 66 5b  rds,.F=f[0],e=f[
42d0: 31 5d 2c 6e 3d 66 5b 32 5d 2c 72 3d 66 5b 33 5d  1],n=f[2],r=f[3]
42e0: 2c 47 3d 66 5b 34 5d 2c 48 3d 66 5b 35 5d 2c 49  ,G=f[4],H=f[5],I
42f0: 3d 66 5b 36 5d 2c 66 3d 66 5b 37 5d 2c 77 3d 46  =f[6],f=f[7],w=F
4300: 2e 68 69 67 68 2c 4a 3d 46 2e 6c 6f 77 2c 58 3d  .high,J=F.low,X=
4310: 65 2e 68 69 67 68 2c 4b 3d 65 2e 6c 6f 77 2c 59  e.high,K=e.low,Y
4320: 3d 6e 2e 68 69 67 68 2c 4c 3d 6e 2e 6c 6f 77 2c  =n.high,L=n.low,
4330: 5a 3d 72 2e 68 69 67 68 2c 4d 3d 72 2e 6c 6f 77  Z=r.high,M=r.low
4340: 2c 24 3d 47 2e 68 69 67 68 2c 4e 3d 47 2e 6c 6f  ,$=G.high,N=G.lo
4350: 77 2c 61 61 3d 48 2e 68 69 67 68 2c 4f 3d 48 2e  w,aa=H.high,O=H.
4360: 6c 6f 77 2c 62 61 3d 49 2e 68 69 67 68 2c 50 3d  low,ba=I.high,P=
4370: 49 2e 6c 6f 77 2c 63 61 3d 66 2e 68 69 67 68 2c  I.low,ca=f.high,
4380: 51 3d 66 2e 6c 6f 77 2c 6b 3d 77 2c 67 3d 4a 2c  Q=f.low,k=w,g=J,
4390: 7a 3d 58 2c 78 3d 4b 2c 41 3d 59 2c 79 3d 4c 2c  z=X,x=K,A=Y,y=L,
43a0: 55 3d 5a 2c 42 3d 4d 2c 6c 3d 24 2c 68 3d 4e 2c  U=Z,B=M,l=$,h=N,
43b0: 52 3d 61 61 2c 43 3d 4f 2c 53 3d 62 61 2c 44 3d  R=aa,C=O,S=ba,D=
43c0: 50 2c 56 3d 63 61 2c 45 3d 51 2c 6d 3d 30 3b 38  P,V=ca,E=Q,m=0;8
43d0: 30 3e 6d 3b 6d 2b 2b 29 7b 76 61 72 20 73 3d 76  0>m;m++){var s=v
43e0: 5b 6d 5d 3b 69 66 28 31 36 3e 6d 29 76 61 72 20  [m];if(16>m)var 
43f0: 6a 3d 73 2e 68 69 67 68 3d 61 5b 64 2b 32 2a 6d  j=s.high=a[d+2*m
4400: 5d 7c 30 2c 62 3d 73 2e 6c 6f 77 3d 61 5b 64 2b  ]|0,b=s.low=a[d+
4410: 32 2a 6d 2b 31 5d 7c 30 3b 65 6c 73 65 7b 76 61  2*m+1]|0;else{va
4420: 72 20 6a 3d 76 5b 6d 2d 31 35 5d 2c 62 3d 6a 2e  r j=v[m-15],b=j.
4430: 68 69 67 68 2c 70 3d 6a 2e 6c 6f 77 2c 6a 3d 28  high,p=j.low,j=(
4440: 62 3e 3e 3e 31 7c 70 3c 3c 33 31 29 5e 28 62 3e  b>>>1|p<<31)^(b>
4450: 3e 3e 38 7c 70 3c 3c 32 34 29 5e 62 3e 3e 3e 37  >>8|p<<24)^b>>>7
4460: 2c 70 3d 28 70 3e 3e 3e 31 7c 62 3c 3c 33 31 29  ,p=(p>>>1|b<<31)
4470: 5e 28 70 3e 3e 3e 38 7c 62 3c 3c 32 34 29 5e 28  ^(p>>>8|b<<24)^(
4480: 70 3e 3e 3e 37 7c 62 3c 3c 32 35 29 2c 75 3d 76  p>>>7|b<<25),u=v
4490: 5b 6d 2d 32 5d 2c 62 3d 75 2e 68 69 67 68 2c 63  [m-2],b=u.high,c
44a0: 3d 75 2e 6c 6f 77 2c 75 3d 28 62 3e 3e 3e 31 39  =u.low,u=(b>>>19
44b0: 7c 63 3c 3c 31 33 29 5e 28 62 3c 3c 0a 33 7c 63  |c<<13)^(b<<.3|c
44c0: 3e 3e 3e 32 39 29 5e 62 3e 3e 3e 36 2c 63 3d 28  >>>29)^b>>>6,c=(
44d0: 63 3e 3e 3e 31 39 7c 62 3c 3c 31 33 29 5e 28 63  c>>>19|b<<13)^(c
44e0: 3c 3c 33 7c 62 3e 3e 3e 32 39 29 5e 28 63 3e 3e  <<3|b>>>29)^(c>>
44f0: 3e 36 7c 62 3c 3c 32 36 29 2c 62 3d 76 5b 6d 2d  >6|b<<26),b=v[m-
4500: 37 5d 2c 57 3d 62 2e 68 69 67 68 2c 74 3d 76 5b  7],W=b.high,t=v[
4510: 6d 2d 31 36 5d 2c 71 3d 74 2e 68 69 67 68 2c 74  m-16],q=t.high,t
4520: 3d 74 2e 6c 6f 77 2c 62 3d 70 2b 62 2e 6c 6f 77  =t.low,b=p+b.low
4530: 2c 6a 3d 6a 2b 57 2b 28 62 3e 3e 3e 30 3c 70 3e  ,j=j+W+(b>>>0<p>
4540: 3e 3e 30 3f 31 3a 30 29 2c 62 3d 62 2b 63 2c 6a  >>0?1:0),b=b+c,j
4550: 3d 6a 2b 75 2b 28 62 3e 3e 3e 30 3c 63 3e 3e 3e  =j+u+(b>>>0<c>>>
4560: 30 3f 31 3a 30 29 2c 62 3d 62 2b 74 2c 6a 3d 6a  0?1:0),b=b+t,j=j
4570: 2b 71 2b 28 62 3e 3e 3e 30 3c 74 3e 3e 3e 30 3f  +q+(b>>>0<t>>>0?
4580: 31 3a 30 29 3b 73 2e 68 69 67 68 3d 6a 3b 73 2e  1:0);s.high=j;s.
4590: 6c 6f 77 3d 62 7d 76 61 72 20 57 3d 6c 26 52 5e  low=b}var W=l&R^
45a0: 7e 6c 26 53 2c 74 3d 68 26 43 5e 7e 68 26 44 2c  ~l&S,t=h&C^~h&D,
45b0: 73 3d 6b 26 7a 5e 6b 26 41 5e 7a 26 41 2c 54 3d  s=k&z^k&A^z&A,T=
45c0: 67 26 78 5e 67 26 79 5e 78 26 79 2c 70 3d 28 6b  g&x^g&y^x&y,p=(k
45d0: 3e 3e 3e 32 38 7c 67 3c 3c 34 29 5e 28 6b 3c 3c  >>>28|g<<4)^(k<<
45e0: 33 30 7c 67 3e 3e 3e 32 29 5e 28 6b 3c 3c 32 35  30|g>>>2)^(k<<25
45f0: 7c 67 3e 3e 3e 37 29 2c 75 3d 28 67 3e 3e 3e 32  |g>>>7),u=(g>>>2
4600: 38 7c 6b 3c 3c 34 29 5e 28 67 3c 3c 33 30 7c 6b  8|k<<4)^(g<<30|k
4610: 3e 3e 3e 32 29 5e 28 67 3c 3c 32 35 7c 6b 3e 3e  >>>2)^(g<<25|k>>
4620: 3e 37 29 2c 63 3d 65 61 5b 6d 5d 2c 66 61 3d 63  >7),c=ea[m],fa=c
4630: 2e 68 69 67 68 2c 64 61 3d 63 2e 6c 6f 77 2c 63  .high,da=c.low,c
4640: 3d 45 2b 28 28 68 3e 3e 3e 31 34 7c 6c 3c 3c 31  =E+((h>>>14|l<<1
4650: 38 29 5e 28 68 3e 3e 3e 31 38 7c 6c 3c 3c 31 34  8)^(h>>>18|l<<14
4660: 29 5e 28 68 3c 3c 32 33 7c 6c 3e 3e 3e 39 29 29  )^(h<<23|l>>>9))
4670: 2c 71 3d 56 2b 28 28 6c 3e 3e 3e 31 34 7c 68 3c  ,q=V+((l>>>14|h<
4680: 3c 31 38 29 5e 28 6c 3e 3e 3e 31 38 7c 68 3c 3c  <18)^(l>>>18|h<<
4690: 31 34 29 5e 28 6c 3c 3c 32 33 7c 68 3e 3e 3e 39  14)^(l<<23|h>>>9
46a0: 29 29 2b 28 63 3e 3e 3e 30 3c 45 3e 3e 3e 30 3f  ))+(c>>>0<E>>>0?
46b0: 31 3a 0a 30 29 2c 63 3d 63 2b 74 2c 71 3d 71 2b  1:.0),c=c+t,q=q+
46c0: 57 2b 28 63 3e 3e 3e 30 3c 74 3e 3e 3e 30 3f 31  W+(c>>>0<t>>>0?1
46d0: 3a 30 29 2c 63 3d 63 2b 64 61 2c 71 3d 71 2b 66  :0),c=c+da,q=q+f
46e0: 61 2b 28 63 3e 3e 3e 30 3c 64 61 3e 3e 3e 30 3f  a+(c>>>0<da>>>0?
46f0: 31 3a 30 29 2c 63 3d 63 2b 62 2c 71 3d 71 2b 6a  1:0),c=c+b,q=q+j
4700: 2b 28 63 3e 3e 3e 30 3c 62 3e 3e 3e 30 3f 31 3a  +(c>>>0<b>>>0?1:
4710: 30 29 2c 62 3d 75 2b 54 2c 73 3d 70 2b 73 2b 28  0),b=u+T,s=p+s+(
4720: 62 3e 3e 3e 30 3c 75 3e 3e 3e 30 3f 31 3a 30 29  b>>>0<u>>>0?1:0)
4730: 2c 56 3d 53 2c 45 3d 44 2c 53 3d 52 2c 44 3d 43  ,V=S,E=D,S=R,D=C
4740: 2c 52 3d 6c 2c 43 3d 68 2c 68 3d 42 2b 63 7c 30  ,R=l,C=h,h=B+c|0
4750: 2c 6c 3d 55 2b 71 2b 28 68 3e 3e 3e 30 3c 42 3e  ,l=U+q+(h>>>0<B>
4760: 3e 3e 30 3f 31 3a 30 29 7c 30 2c 55 3d 41 2c 42  >>0?1:0)|0,U=A,B
4770: 3d 79 2c 41 3d 7a 2c 79 3d 78 2c 7a 3d 6b 2c 78  =y,A=z,y=x,z=k,x
4780: 3d 67 2c 67 3d 63 2b 62 7c 30 2c 6b 3d 71 2b 73  =g,g=c+b|0,k=q+s
4790: 2b 28 67 3e 3e 3e 30 3c 63 3e 3e 3e 30 3f 31 3a  +(g>>>0<c>>>0?1:
47a0: 30 29 7c 30 7d 4a 3d 46 2e 6c 6f 77 3d 4a 2b 67  0)|0}J=F.low=J+g
47b0: 3b 46 2e 68 69 67 68 3d 77 2b 6b 2b 28 4a 3e 3e  ;F.high=w+k+(J>>
47c0: 3e 30 3c 67 3e 3e 3e 30 3f 31 3a 30 29 3b 4b 3d  >0<g>>>0?1:0);K=
47d0: 65 2e 6c 6f 77 3d 4b 2b 78 3b 65 2e 68 69 67 68  e.low=K+x;e.high
47e0: 3d 58 2b 7a 2b 28 4b 3e 3e 3e 30 3c 78 3e 3e 3e  =X+z+(K>>>0<x>>>
47f0: 30 3f 31 3a 30 29 3b 4c 3d 6e 2e 6c 6f 77 3d 4c  0?1:0);L=n.low=L
4800: 2b 79 3b 6e 2e 68 69 67 68 3d 59 2b 41 2b 28 4c  +y;n.high=Y+A+(L
4810: 3e 3e 3e 30 3c 79 3e 3e 3e 30 3f 31 3a 30 29 3b  >>>0<y>>>0?1:0);
4820: 4d 3d 72 2e 6c 6f 77 3d 4d 2b 42 3b 72 2e 68 69  M=r.low=M+B;r.hi
4830: 67 68 3d 5a 2b 55 2b 28 4d 3e 3e 3e 30 3c 42 3e  gh=Z+U+(M>>>0<B>
4840: 3e 3e 30 3f 31 3a 30 29 3b 4e 3d 47 2e 6c 6f 77  >>0?1:0);N=G.low
4850: 3d 4e 2b 68 3b 47 2e 68 69 67 68 3d 24 2b 6c 2b  =N+h;G.high=$+l+
4860: 28 4e 3e 3e 3e 30 3c 68 3e 3e 3e 30 3f 31 3a 30  (N>>>0<h>>>0?1:0
4870: 29 3b 4f 3d 48 2e 6c 6f 77 3d 4f 2b 43 3b 48 2e  );O=H.low=O+C;H.
4880: 68 69 67 68 3d 61 61 2b 52 2b 28 4f 3e 3e 3e 30  high=aa+R+(O>>>0
4890: 3c 43 3e 3e 3e 30 3f 31 3a 30 29 3b 50 3d 49 2e  <C>>>0?1:0);P=I.
48a0: 6c 6f 77 3d 50 2b 44 3b 0a 49 2e 68 69 67 68 3d  low=P+D;.I.high=
48b0: 62 61 2b 53 2b 28 50 3e 3e 3e 30 3c 44 3e 3e 3e  ba+S+(P>>>0<D>>>
48c0: 30 3f 31 3a 30 29 3b 51 3d 66 2e 6c 6f 77 3d 51  0?1:0);Q=f.low=Q
48d0: 2b 45 3b 66 2e 68 69 67 68 3d 63 61 2b 56 2b 28  +E;f.high=ca+V+(
48e0: 51 3e 3e 3e 30 3c 45 3e 3e 3e 30 3f 31 3a 30 29  Q>>>0<E>>>0?1:0)
48f0: 7d 2c 5f 64 6f 46 69 6e 61 6c 69 7a 65 3a 66 75  },_doFinalize:fu
4900: 6e 63 74 69 6f 6e 28 29 7b 76 61 72 20 61 3d 74  nction(){var a=t
4910: 68 69 73 2e 5f 64 61 74 61 2c 64 3d 61 2e 77 6f  his._data,d=a.wo
4920: 72 64 73 2c 66 3d 38 2a 74 68 69 73 2e 5f 6e 44  rds,f=8*this._nD
4930: 61 74 61 42 79 74 65 73 2c 65 3d 38 2a 61 2e 73  ataBytes,e=8*a.s
4940: 69 67 42 79 74 65 73 3b 64 5b 65 3e 3e 3e 35 5d  igBytes;d[e>>>5]
4950: 7c 3d 31 32 38 3c 3c 32 34 2d 65 25 33 32 3b 64  |=128<<24-e%32;d
4960: 5b 28 65 2b 31 32 38 3e 3e 3e 31 30 3c 3c 35 29  [(e+128>>>10<<5)
4970: 2b 33 30 5d 3d 4d 61 74 68 2e 66 6c 6f 6f 72 28  +30]=Math.floor(
4980: 66 2f 34 32 39 34 39 36 37 32 39 36 29 3b 64 5b  f/4294967296);d[
4990: 28 65 2b 31 32 38 3e 3e 3e 31 30 3c 3c 35 29 2b  (e+128>>>10<<5)+
49a0: 33 31 5d 3d 66 3b 61 2e 73 69 67 42 79 74 65 73  31]=f;a.sigBytes
49b0: 3d 34 2a 64 2e 6c 65 6e 67 74 68 3b 74 68 69 73  =4*d.length;this
49c0: 2e 5f 70 72 6f 63 65 73 73 28 29 3b 72 65 74 75  ._process();retu
49d0: 72 6e 20 74 68 69 73 2e 5f 68 61 73 68 2e 74 6f  rn this._hash.to
49e0: 58 33 32 28 29 7d 2c 63 6c 6f 6e 65 3a 66 75 6e  X32()},clone:fun
49f0: 63 74 69 6f 6e 28 29 7b 76 61 72 20 61 3d 72 2e  ction(){var a=r.
4a00: 63 6c 6f 6e 65 2e 63 61 6c 6c 28 74 68 69 73 29  clone.call(this)
4a10: 3b 61 2e 5f 68 61 73 68 3d 74 68 69 73 2e 5f 68  ;a._hash=this._h
4a20: 61 73 68 2e 63 6c 6f 6e 65 28 29 3b 72 65 74 75  ash.clone();retu
4a30: 72 6e 20 61 7d 2c 62 6c 6f 63 6b 53 69 7a 65 3a  rn a},blockSize:
4a40: 33 32 7d 29 3b 6e 2e 53 48 41 35 31 32 3d 72 2e  32});n.SHA512=r.
4a50: 5f 63 72 65 61 74 65 48 65 6c 70 65 72 28 65 29  _createHelper(e)
4a60: 3b 6e 2e 48 6d 61 63 53 48 41 35 31 32 3d 72 2e  ;n.HmacSHA512=r.
4a70: 5f 63 72 65 61 74 65 48 6d 61 63 48 65 6c 70 65  _createHmacHelpe
4a80: 72 28 65 29 7d 29 28 29 3b 0a 0a 2f 2a 0a 43 72  r(e)})();../*.Cr
4a90: 79 70 74 6f 4a 53 20 76 33 2e 31 2e 32 20 73 68  yptoJS v3.1.2 sh
4aa0: 61 33 38 34 2d 6d 69 6e 2e 6a 73 0a 63 6f 64 65  a384-min.js.code
4ab0: 2e 67 6f 6f 67 6c 65 2e 63 6f 6d 2f 70 2f 63 72  .google.com/p/cr
4ac0: 79 70 74 6f 2d 6a 73 0a 28 63 29 20 32 30 30 39  ypto-js.(c) 2009
4ad0: 2d 32 30 31 33 20 62 79 20 4a 65 66 66 20 4d 6f  -2013 by Jeff Mo
4ae0: 74 74 2e 20 41 6c 6c 20 72 69 67 68 74 73 20 72  tt. All rights r
4af0: 65 73 65 72 76 65 64 2e 0a 63 6f 64 65 2e 67 6f  eserved..code.go
4b00: 6f 67 6c 65 2e 63 6f 6d 2f 70 2f 63 72 79 70 74  ogle.com/p/crypt
4b10: 6f 2d 6a 73 2f 77 69 6b 69 2f 4c 69 63 65 6e 73  o-js/wiki/Licens
4b20: 65 0a 2a 2f 0a 28 66 75 6e 63 74 69 6f 6e 28 29  e.*/.(function()
4b30: 7b 76 61 72 20 63 3d 43 72 79 70 74 6f 4a 53 2c  {var c=CryptoJS,
4b40: 61 3d 63 2e 78 36 34 2c 62 3d 61 2e 57 6f 72 64  a=c.x64,b=a.Word
4b50: 2c 65 3d 61 2e 57 6f 72 64 41 72 72 61 79 2c 61  ,e=a.WordArray,a
4b60: 3d 63 2e 61 6c 67 6f 2c 64 3d 61 2e 53 48 41 35  =c.algo,d=a.SHA5
4b70: 31 32 2c 61 3d 61 2e 53 48 41 33 38 34 3d 64 2e  12,a=a.SHA384=d.
4b80: 65 78 74 65 6e 64 28 7b 5f 64 6f 52 65 73 65 74  extend({_doReset
4b90: 3a 66 75 6e 63 74 69 6f 6e 28 29 7b 74 68 69 73  :function(){this
4ba0: 2e 5f 68 61 73 68 3d 6e 65 77 20 65 2e 69 6e 69  ._hash=new e.ini
4bb0: 74 28 5b 6e 65 77 20 62 2e 69 6e 69 74 28 33 34  t([new b.init(34
4bc0: 31 38 30 37 30 33 36 35 2c 33 32 33 38 33 37 31  18070365,3238371
4bd0: 30 33 32 29 2c 6e 65 77 20 62 2e 69 6e 69 74 28  032),new b.init(
4be0: 31 36 35 34 32 37 30 32 35 30 2c 39 31 34 31 35  1654270250,91415
4bf0: 30 36 36 33 29 2c 6e 65 77 20 62 2e 69 6e 69 74  0663),new b.init
4c00: 28 32 34 33 38 35 32 39 33 37 30 2c 38 31 32 37  (2438529370,8127
4c10: 30 32 39 39 39 29 2c 6e 65 77 20 62 2e 69 6e 69  02999),new b.ini
4c20: 74 28 33 35 35 34 36 32 33 36 30 2c 34 31 34 34  t(355462360,4144
4c30: 39 31 32 36 39 37 29 2c 6e 65 77 20 62 2e 69 6e  912697),new b.in
4c40: 69 74 28 31 37 33 31 34 30 35 34 31 35 2c 34 32  it(1731405415,42
4c50: 39 30 37 37 35 38 35 37 29 2c 6e 65 77 20 62 2e  90775857),new b.
4c60: 69 6e 69 74 28 32 33 39 34 31 38 30 32 33 31 2c  init(2394180231,
4c70: 31 37 35 30 36 30 33 30 32 35 29 2c 6e 65 77 20  1750603025),new 
4c80: 62 2e 69 6e 69 74 28 33 36 37 35 30 30 38 35 32  b.init(367500852
4c90: 35 2c 31 36 39 34 30 37 36 38 33 39 29 2c 6e 65  5,1694076839),ne
4ca0: 77 20 62 2e 69 6e 69 74 28 31 32 30 33 30 36 32  w b.init(1203062
4cb0: 38 31 33 2c 33 32 30 34 30 37 35 34 32 38 29 5d  813,3204075428)]
4cc0: 29 7d 2c 5f 64 6f 46 69 6e 61 6c 69 7a 65 3a 66  )},_doFinalize:f
4cd0: 75 6e 63 74 69 6f 6e 28 29 7b 76 61 72 20 61 3d  unction(){var a=
4ce0: 64 2e 5f 64 6f 46 69 6e 61 6c 69 7a 65 2e 63 61  d._doFinalize.ca
4cf0: 6c 6c 28 74 68 69 73 29 3b 61 2e 73 69 67 42 79  ll(this);a.sigBy
4d00: 74 65 73 2d 3d 31 36 3b 72 65 74 75 72 6e 20 61  tes-=16;return a
4d10: 7d 7d 29 3b 63 2e 53 48 41 33 38 34 3d 0a 64 2e  }});c.SHA384=.d.
4d20: 5f 63 72 65 61 74 65 48 65 6c 70 65 72 28 61 29  _createHelper(a)
4d30: 3b 63 2e 48 6d 61 63 53 48 41 33 38 34 3d 64 2e  ;c.HmacSHA384=d.
4d40: 5f 63 72 65 61 74 65 48 6d 61 63 48 65 6c 70 65  _createHmacHelpe
4d50: 72 28 61 29 7d 29 28 29 3b 0a 0a 2f 2a 0a 43 72  r(a)})();../*.Cr
4d60: 79 70 74 6f 4a 53 20 76 33 2e 31 2e 32 20 6d 64  yptoJS v3.1.2 md
4d70: 35 2d 6d 69 6e 2e 6a 73 0a 63 6f 64 65 2e 67 6f  5-min.js.code.go
4d80: 6f 67 6c 65 2e 63 6f 6d 2f 70 2f 63 72 79 70 74  ogle.com/p/crypt
4d90: 6f 2d 6a 73 0a 28 63 29 20 32 30 30 39 2d 32 30  o-js.(c) 2009-20
4da0: 31 33 20 62 79 20 4a 65 66 66 20 4d 6f 74 74 2e  13 by Jeff Mott.
4db0: 20 41 6c 6c 20 72 69 67 68 74 73 20 72 65 73 65   All rights rese
4dc0: 72 76 65 64 2e 0a 63 6f 64 65 2e 67 6f 6f 67 6c  rved..code.googl
4dd0: 65 2e 63 6f 6d 2f 70 2f 63 72 79 70 74 6f 2d 6a  e.com/p/crypto-j
4de0: 73 2f 77 69 6b 69 2f 4c 69 63 65 6e 73 65 0a 2a  s/wiki/License.*
4df0: 2f 0a 28 66 75 6e 63 74 69 6f 6e 28 45 29 7b 66  /.(function(E){f
4e00: 75 6e 63 74 69 6f 6e 20 68 28 61 2c 66 2c 67 2c  unction h(a,f,g,
4e10: 6a 2c 70 2c 68 2c 6b 29 7b 61 3d 61 2b 28 66 26  j,p,h,k){a=a+(f&
4e20: 67 7c 7e 66 26 6a 29 2b 70 2b 6b 3b 72 65 74 75  g|~f&j)+p+k;retu
4e30: 72 6e 28 61 3c 3c 68 7c 61 3e 3e 3e 33 32 2d 68  rn(a<<h|a>>>32-h
4e40: 29 2b 66 7d 66 75 6e 63 74 69 6f 6e 20 6b 28 61  )+f}function k(a
4e50: 2c 66 2c 67 2c 6a 2c 70 2c 68 2c 6b 29 7b 61 3d  ,f,g,j,p,h,k){a=
4e60: 61 2b 28 66 26 6a 7c 67 26 7e 6a 29 2b 70 2b 6b  a+(f&j|g&~j)+p+k
4e70: 3b 72 65 74 75 72 6e 28 61 3c 3c 68 7c 61 3e 3e  ;return(a<<h|a>>
4e80: 3e 33 32 2d 68 29 2b 66 7d 66 75 6e 63 74 69 6f  >32-h)+f}functio
4e90: 6e 20 6c 28 61 2c 66 2c 67 2c 6a 2c 68 2c 6b 2c  n l(a,f,g,j,h,k,
4ea0: 6c 29 7b 61 3d 61 2b 28 66 5e 67 5e 6a 29 2b 68  l){a=a+(f^g^j)+h
4eb0: 2b 6c 3b 72 65 74 75 72 6e 28 61 3c 3c 6b 7c 61  +l;return(a<<k|a
4ec0: 3e 3e 3e 33 32 2d 6b 29 2b 66 7d 66 75 6e 63 74  >>>32-k)+f}funct
4ed0: 69 6f 6e 20 6e 28 61 2c 66 2c 67 2c 6a 2c 68 2c  ion n(a,f,g,j,h,
4ee0: 6b 2c 6c 29 7b 61 3d 61 2b 28 67 5e 28 66 7c 7e  k,l){a=a+(g^(f|~
4ef0: 6a 29 29 2b 68 2b 6c 3b 72 65 74 75 72 6e 28 61  j))+h+l;return(a
4f00: 3c 3c 6b 7c 61 3e 3e 3e 33 32 2d 6b 29 2b 66 7d  <<k|a>>>32-k)+f}
4f10: 66 6f 72 28 76 61 72 20 72 3d 43 72 79 70 74 6f  for(var r=Crypto
4f20: 4a 53 2c 71 3d 72 2e 6c 69 62 2c 46 3d 71 2e 57  JS,q=r.lib,F=q.W
4f30: 6f 72 64 41 72 72 61 79 2c 73 3d 71 2e 48 61 73  ordArray,s=q.Has
4f40: 68 65 72 2c 71 3d 72 2e 61 6c 67 6f 2c 61 3d 5b  her,q=r.algo,a=[
4f50: 5d 2c 74 3d 30 3b 36 34 3e 74 3b 74 2b 2b 29 61  ],t=0;64>t;t++)a
4f60: 5b 74 5d 3d 34 32 39 34 39 36 37 32 39 36 2a 45  [t]=4294967296*E
4f70: 2e 61 62 73 28 45 2e 73 69 6e 28 74 2b 31 29 29  .abs(E.sin(t+1))
4f80: 7c 30 3b 71 3d 71 2e 4d 44 35 3d 73 2e 65 78 74  |0;q=q.MD5=s.ext
4f90: 65 6e 64 28 7b 5f 64 6f 52 65 73 65 74 3a 66 75  end({_doReset:fu
4fa0: 6e 63 74 69 6f 6e 28 29 7b 74 68 69 73 2e 5f 68  nction(){this._h
4fb0: 61 73 68 3d 6e 65 77 20 46 2e 69 6e 69 74 28 5b  ash=new F.init([
4fc0: 31 37 33 32 35 38 34 31 39 33 2c 34 30 32 33 32  1732584193,40232
4fd0: 33 33 34 31 37 2c 32 35 36 32 33 38 33 31 30 32  33417,2562383102
4fe0: 2c 32 37 31 37 33 33 38 37 38 5d 29 7d 2c 0a 5f  ,271733878])},._
4ff0: 64 6f 50 72 6f 63 65 73 73 42 6c 6f 63 6b 3a 66  doProcessBlock:f
5000: 75 6e 63 74 69 6f 6e 28 6d 2c 66 29 7b 66 6f 72  unction(m,f){for
5010: 28 76 61 72 20 67 3d 30 3b 31 36 3e 67 3b 67 2b  (var g=0;16>g;g+
5020: 2b 29 7b 76 61 72 20 6a 3d 66 2b 67 2c 70 3d 6d  +){var j=f+g,p=m
5030: 5b 6a 5d 3b 6d 5b 6a 5d 3d 28 70 3c 3c 38 7c 70  [j];m[j]=(p<<8|p
5040: 3e 3e 3e 32 34 29 26 31 36 37 31 31 39 33 35 7c  >>>24)&16711935|
5050: 28 70 3c 3c 32 34 7c 70 3e 3e 3e 38 29 26 34 32  (p<<24|p>>>8)&42
5060: 37 38 32 35 35 33 36 30 7d 76 61 72 20 67 3d 74  78255360}var g=t
5070: 68 69 73 2e 5f 68 61 73 68 2e 77 6f 72 64 73 2c  his._hash.words,
5080: 6a 3d 6d 5b 66 2b 30 5d 2c 70 3d 6d 5b 66 2b 31  j=m[f+0],p=m[f+1
5090: 5d 2c 71 3d 6d 5b 66 2b 32 5d 2c 72 3d 6d 5b 66  ],q=m[f+2],r=m[f
50a0: 2b 33 5d 2c 73 3d 6d 5b 66 2b 34 5d 2c 74 3d 6d  +3],s=m[f+4],t=m
50b0: 5b 66 2b 35 5d 2c 75 3d 6d 5b 66 2b 36 5d 2c 76  [f+5],u=m[f+6],v
50c0: 3d 6d 5b 66 2b 37 5d 2c 77 3d 6d 5b 66 2b 38 5d  =m[f+7],w=m[f+8]
50d0: 2c 78 3d 6d 5b 66 2b 39 5d 2c 79 3d 6d 5b 66 2b  ,x=m[f+9],y=m[f+
50e0: 31 30 5d 2c 7a 3d 6d 5b 66 2b 31 31 5d 2c 41 3d  10],z=m[f+11],A=
50f0: 6d 5b 66 2b 31 32 5d 2c 42 3d 6d 5b 66 2b 31 33  m[f+12],B=m[f+13
5100: 5d 2c 43 3d 6d 5b 66 2b 31 34 5d 2c 44 3d 6d 5b  ],C=m[f+14],D=m[
5110: 66 2b 31 35 5d 2c 62 3d 67 5b 30 5d 2c 63 3d 67  f+15],b=g[0],c=g
5120: 5b 31 5d 2c 64 3d 67 5b 32 5d 2c 65 3d 67 5b 33  [1],d=g[2],e=g[3
5130: 5d 2c 62 3d 68 28 62 2c 63 2c 64 2c 65 2c 6a 2c  ],b=h(b,c,d,e,j,
5140: 37 2c 61 5b 30 5d 29 2c 65 3d 68 28 65 2c 62 2c  7,a[0]),e=h(e,b,
5150: 63 2c 64 2c 70 2c 31 32 2c 61 5b 31 5d 29 2c 64  c,d,p,12,a[1]),d
5160: 3d 68 28 64 2c 65 2c 62 2c 63 2c 71 2c 31 37 2c  =h(d,e,b,c,q,17,
5170: 61 5b 32 5d 29 2c 63 3d 68 28 63 2c 64 2c 65 2c  a[2]),c=h(c,d,e,
5180: 62 2c 72 2c 32 32 2c 61 5b 33 5d 29 2c 62 3d 68  b,r,22,a[3]),b=h
5190: 28 62 2c 63 2c 64 2c 65 2c 73 2c 37 2c 61 5b 34  (b,c,d,e,s,7,a[4
51a0: 5d 29 2c 65 3d 68 28 65 2c 62 2c 63 2c 64 2c 74  ]),e=h(e,b,c,d,t
51b0: 2c 31 32 2c 61 5b 35 5d 29 2c 64 3d 68 28 64 2c  ,12,a[5]),d=h(d,
51c0: 65 2c 62 2c 63 2c 75 2c 31 37 2c 61 5b 36 5d 29  e,b,c,u,17,a[6])
51d0: 2c 63 3d 68 28 63 2c 64 2c 65 2c 62 2c 76 2c 32  ,c=h(c,d,e,b,v,2
51e0: 32 2c 61 5b 37 5d 29 2c 0a 62 3d 68 28 62 2c 63  2,a[7]),.b=h(b,c
51f0: 2c 64 2c 65 2c 77 2c 37 2c 61 5b 38 5d 29 2c 65  ,d,e,w,7,a[8]),e
5200: 3d 68 28 65 2c 62 2c 63 2c 64 2c 78 2c 31 32 2c  =h(e,b,c,d,x,12,
5210: 61 5b 39 5d 29 2c 64 3d 68 28 64 2c 65 2c 62 2c  a[9]),d=h(d,e,b,
5220: 63 2c 79 2c 31 37 2c 61 5b 31 30 5d 29 2c 63 3d  c,y,17,a[10]),c=
5230: 68 28 63 2c 64 2c 65 2c 62 2c 7a 2c 32 32 2c 61  h(c,d,e,b,z,22,a
5240: 5b 31 31 5d 29 2c 62 3d 68 28 62 2c 63 2c 64 2c  [11]),b=h(b,c,d,
5250: 65 2c 41 2c 37 2c 61 5b 31 32 5d 29 2c 65 3d 68  e,A,7,a[12]),e=h
5260: 28 65 2c 62 2c 63 2c 64 2c 42 2c 31 32 2c 61 5b  (e,b,c,d,B,12,a[
5270: 31 33 5d 29 2c 64 3d 68 28 64 2c 65 2c 62 2c 63  13]),d=h(d,e,b,c
5280: 2c 43 2c 31 37 2c 61 5b 31 34 5d 29 2c 63 3d 68  ,C,17,a[14]),c=h
5290: 28 63 2c 64 2c 65 2c 62 2c 44 2c 32 32 2c 61 5b  (c,d,e,b,D,22,a[
52a0: 31 35 5d 29 2c 62 3d 6b 28 62 2c 63 2c 64 2c 65  15]),b=k(b,c,d,e
52b0: 2c 70 2c 35 2c 61 5b 31 36 5d 29 2c 65 3d 6b 28  ,p,5,a[16]),e=k(
52c0: 65 2c 62 2c 63 2c 64 2c 75 2c 39 2c 61 5b 31 37  e,b,c,d,u,9,a[17
52d0: 5d 29 2c 64 3d 6b 28 64 2c 65 2c 62 2c 63 2c 7a  ]),d=k(d,e,b,c,z
52e0: 2c 31 34 2c 61 5b 31 38 5d 29 2c 63 3d 6b 28 63  ,14,a[18]),c=k(c
52f0: 2c 64 2c 65 2c 62 2c 6a 2c 32 30 2c 61 5b 31 39  ,d,e,b,j,20,a[19
5300: 5d 29 2c 62 3d 6b 28 62 2c 63 2c 64 2c 65 2c 74  ]),b=k(b,c,d,e,t
5310: 2c 35 2c 61 5b 32 30 5d 29 2c 65 3d 6b 28 65 2c  ,5,a[20]),e=k(e,
5320: 62 2c 63 2c 64 2c 79 2c 39 2c 61 5b 32 31 5d 29  b,c,d,y,9,a[21])
5330: 2c 64 3d 6b 28 64 2c 65 2c 62 2c 63 2c 44 2c 31  ,d=k(d,e,b,c,D,1
5340: 34 2c 61 5b 32 32 5d 29 2c 63 3d 6b 28 63 2c 64  4,a[22]),c=k(c,d
5350: 2c 65 2c 62 2c 73 2c 32 30 2c 61 5b 32 33 5d 29  ,e,b,s,20,a[23])
5360: 2c 62 3d 6b 28 62 2c 63 2c 64 2c 65 2c 78 2c 35  ,b=k(b,c,d,e,x,5
5370: 2c 61 5b 32 34 5d 29 2c 65 3d 6b 28 65 2c 62 2c  ,a[24]),e=k(e,b,
5380: 63 2c 64 2c 43 2c 39 2c 61 5b 32 35 5d 29 2c 64  c,d,C,9,a[25]),d
5390: 3d 6b 28 64 2c 65 2c 62 2c 63 2c 72 2c 31 34 2c  =k(d,e,b,c,r,14,
53a0: 61 5b 32 36 5d 29 2c 63 3d 6b 28 63 2c 64 2c 65  a[26]),c=k(c,d,e
53b0: 2c 62 2c 77 2c 32 30 2c 61 5b 32 37 5d 29 2c 62  ,b,w,20,a[27]),b
53c0: 3d 6b 28 62 2c 63 2c 64 2c 65 2c 42 2c 35 2c 61  =k(b,c,d,e,B,5,a
53d0: 5b 32 38 5d 29 2c 65 3d 6b 28 65 2c 62 2c 0a 63  [28]),e=k(e,b,.c
53e0: 2c 64 2c 71 2c 39 2c 61 5b 32 39 5d 29 2c 64 3d  ,d,q,9,a[29]),d=
53f0: 6b 28 64 2c 65 2c 62 2c 63 2c 76 2c 31 34 2c 61  k(d,e,b,c,v,14,a
5400: 5b 33 30 5d 29 2c 63 3d 6b 28 63 2c 64 2c 65 2c  [30]),c=k(c,d,e,
5410: 62 2c 41 2c 32 30 2c 61 5b 33 31 5d 29 2c 62 3d  b,A,20,a[31]),b=
5420: 6c 28 62 2c 63 2c 64 2c 65 2c 74 2c 34 2c 61 5b  l(b,c,d,e,t,4,a[
5430: 33 32 5d 29 2c 65 3d 6c 28 65 2c 62 2c 63 2c 64  32]),e=l(e,b,c,d
5440: 2c 77 2c 31 31 2c 61 5b 33 33 5d 29 2c 64 3d 6c  ,w,11,a[33]),d=l
5450: 28 64 2c 65 2c 62 2c 63 2c 7a 2c 31 36 2c 61 5b  (d,e,b,c,z,16,a[
5460: 33 34 5d 29 2c 63 3d 6c 28 63 2c 64 2c 65 2c 62  34]),c=l(c,d,e,b
5470: 2c 43 2c 32 33 2c 61 5b 33 35 5d 29 2c 62 3d 6c  ,C,23,a[35]),b=l
5480: 28 62 2c 63 2c 64 2c 65 2c 70 2c 34 2c 61 5b 33  (b,c,d,e,p,4,a[3
5490: 36 5d 29 2c 65 3d 6c 28 65 2c 62 2c 63 2c 64 2c  6]),e=l(e,b,c,d,
54a0: 73 2c 31 31 2c 61 5b 33 37 5d 29 2c 64 3d 6c 28  s,11,a[37]),d=l(
54b0: 64 2c 65 2c 62 2c 63 2c 76 2c 31 36 2c 61 5b 33  d,e,b,c,v,16,a[3
54c0: 38 5d 29 2c 63 3d 6c 28 63 2c 64 2c 65 2c 62 2c  8]),c=l(c,d,e,b,
54d0: 79 2c 32 33 2c 61 5b 33 39 5d 29 2c 62 3d 6c 28  y,23,a[39]),b=l(
54e0: 62 2c 63 2c 64 2c 65 2c 42 2c 34 2c 61 5b 34 30  b,c,d,e,B,4,a[40
54f0: 5d 29 2c 65 3d 6c 28 65 2c 62 2c 63 2c 64 2c 6a  ]),e=l(e,b,c,d,j
5500: 2c 31 31 2c 61 5b 34 31 5d 29 2c 64 3d 6c 28 64  ,11,a[41]),d=l(d
5510: 2c 65 2c 62 2c 63 2c 72 2c 31 36 2c 61 5b 34 32  ,e,b,c,r,16,a[42
5520: 5d 29 2c 63 3d 6c 28 63 2c 64 2c 65 2c 62 2c 75  ]),c=l(c,d,e,b,u
5530: 2c 32 33 2c 61 5b 34 33 5d 29 2c 62 3d 6c 28 62  ,23,a[43]),b=l(b
5540: 2c 63 2c 64 2c 65 2c 78 2c 34 2c 61 5b 34 34 5d  ,c,d,e,x,4,a[44]
5550: 29 2c 65 3d 6c 28 65 2c 62 2c 63 2c 64 2c 41 2c  ),e=l(e,b,c,d,A,
5560: 31 31 2c 61 5b 34 35 5d 29 2c 64 3d 6c 28 64 2c  11,a[45]),d=l(d,
5570: 65 2c 62 2c 63 2c 44 2c 31 36 2c 61 5b 34 36 5d  e,b,c,D,16,a[46]
5580: 29 2c 63 3d 6c 28 63 2c 64 2c 65 2c 62 2c 71 2c  ),c=l(c,d,e,b,q,
5590: 32 33 2c 61 5b 34 37 5d 29 2c 62 3d 6e 28 62 2c  23,a[47]),b=n(b,
55a0: 63 2c 64 2c 65 2c 6a 2c 36 2c 61 5b 34 38 5d 29  c,d,e,j,6,a[48])
55b0: 2c 65 3d 6e 28 65 2c 62 2c 63 2c 64 2c 76 2c 31  ,e=n(e,b,c,d,v,1
55c0: 30 2c 61 5b 34 39 5d 29 2c 64 3d 6e 28 64 2c 65  0,a[49]),d=n(d,e
55d0: 2c 62 2c 63 2c 0a 43 2c 31 35 2c 61 5b 35 30 5d  ,b,c,.C,15,a[50]
55e0: 29 2c 63 3d 6e 28 63 2c 64 2c 65 2c 62 2c 74 2c  ),c=n(c,d,e,b,t,
55f0: 32 31 2c 61 5b 35 31 5d 29 2c 62 3d 6e 28 62 2c  21,a[51]),b=n(b,
5600: 63 2c 64 2c 65 2c 41 2c 36 2c 61 5b 35 32 5d 29  c,d,e,A,6,a[52])
5610: 2c 65 3d 6e 28 65 2c 62 2c 63 2c 64 2c 72 2c 31  ,e=n(e,b,c,d,r,1
5620: 30 2c 61 5b 35 33 5d 29 2c 64 3d 6e 28 64 2c 65  0,a[53]),d=n(d,e
5630: 2c 62 2c 63 2c 79 2c 31 35 2c 61 5b 35 34 5d 29  ,b,c,y,15,a[54])
5640: 2c 63 3d 6e 28 63 2c 64 2c 65 2c 62 2c 70 2c 32  ,c=n(c,d,e,b,p,2
5650: 31 2c 61 5b 35 35 5d 29 2c 62 3d 6e 28 62 2c 63  1,a[55]),b=n(b,c
5660: 2c 64 2c 65 2c 77 2c 36 2c 61 5b 35 36 5d 29 2c  ,d,e,w,6,a[56]),
5670: 65 3d 6e 28 65 2c 62 2c 63 2c 64 2c 44 2c 31 30  e=n(e,b,c,d,D,10
5680: 2c 61 5b 35 37 5d 29 2c 64 3d 6e 28 64 2c 65 2c  ,a[57]),d=n(d,e,
5690: 62 2c 63 2c 75 2c 31 35 2c 61 5b 35 38 5d 29 2c  b,c,u,15,a[58]),
56a0: 63 3d 6e 28 63 2c 64 2c 65 2c 62 2c 42 2c 32 31  c=n(c,d,e,b,B,21
56b0: 2c 61 5b 35 39 5d 29 2c 62 3d 6e 28 62 2c 63 2c  ,a[59]),b=n(b,c,
56c0: 64 2c 65 2c 73 2c 36 2c 61 5b 36 30 5d 29 2c 65  d,e,s,6,a[60]),e
56d0: 3d 6e 28 65 2c 62 2c 63 2c 64 2c 7a 2c 31 30 2c  =n(e,b,c,d,z,10,
56e0: 61 5b 36 31 5d 29 2c 64 3d 6e 28 64 2c 65 2c 62  a[61]),d=n(d,e,b
56f0: 2c 63 2c 71 2c 31 35 2c 61 5b 36 32 5d 29 2c 63  ,c,q,15,a[62]),c
5700: 3d 6e 28 63 2c 64 2c 65 2c 62 2c 78 2c 32 31 2c  =n(c,d,e,b,x,21,
5710: 61 5b 36 33 5d 29 3b 67 5b 30 5d 3d 67 5b 30 5d  a[63]);g[0]=g[0]
5720: 2b 62 7c 30 3b 67 5b 31 5d 3d 67 5b 31 5d 2b 63  +b|0;g[1]=g[1]+c
5730: 7c 30 3b 67 5b 32 5d 3d 67 5b 32 5d 2b 64 7c 30  |0;g[2]=g[2]+d|0
5740: 3b 67 5b 33 5d 3d 67 5b 33 5d 2b 65 7c 30 7d 2c  ;g[3]=g[3]+e|0},
5750: 5f 64 6f 46 69 6e 61 6c 69 7a 65 3a 66 75 6e 63  _doFinalize:func
5760: 74 69 6f 6e 28 29 7b 76 61 72 20 61 3d 74 68 69  tion(){var a=thi
5770: 73 2e 5f 64 61 74 61 2c 66 3d 61 2e 77 6f 72 64  s._data,f=a.word
5780: 73 2c 67 3d 38 2a 74 68 69 73 2e 5f 6e 44 61 74  s,g=8*this._nDat
5790: 61 42 79 74 65 73 2c 6a 3d 38 2a 61 2e 73 69 67  aBytes,j=8*a.sig
57a0: 42 79 74 65 73 3b 66 5b 6a 3e 3e 3e 35 5d 7c 3d  Bytes;f[j>>>5]|=
57b0: 31 32 38 3c 3c 32 34 2d 6a 25 33 32 3b 76 61 72  128<<24-j%32;var
57c0: 20 68 3d 45 2e 66 6c 6f 6f 72 28 67 2f 0a 34 32   h=E.floor(g/.42
57d0: 39 34 39 36 37 32 39 36 29 3b 66 5b 28 6a 2b 36  94967296);f[(j+6
57e0: 34 3e 3e 3e 39 3c 3c 34 29 2b 31 35 5d 3d 28 68  4>>>9<<4)+15]=(h
57f0: 3c 3c 38 7c 68 3e 3e 3e 32 34 29 26 31 36 37 31  <<8|h>>>24)&1671
5800: 31 39 33 35 7c 28 68 3c 3c 32 34 7c 68 3e 3e 3e  1935|(h<<24|h>>>
5810: 38 29 26 34 32 37 38 32 35 35 33 36 30 3b 66 5b  8)&4278255360;f[
5820: 28 6a 2b 36 34 3e 3e 3e 39 3c 3c 34 29 2b 31 34  (j+64>>>9<<4)+14
5830: 5d 3d 28 67 3c 3c 38 7c 67 3e 3e 3e 32 34 29 26  ]=(g<<8|g>>>24)&
5840: 31 36 37 31 31 39 33 35 7c 28 67 3c 3c 32 34 7c  16711935|(g<<24|
5850: 67 3e 3e 3e 38 29 26 34 32 37 38 32 35 35 33 36  g>>>8)&427825536
5860: 30 3b 61 2e 73 69 67 42 79 74 65 73 3d 34 2a 28  0;a.sigBytes=4*(
5870: 66 2e 6c 65 6e 67 74 68 2b 31 29 3b 74 68 69 73  f.length+1);this
5880: 2e 5f 70 72 6f 63 65 73 73 28 29 3b 61 3d 74 68  ._process();a=th
5890: 69 73 2e 5f 68 61 73 68 3b 66 3d 61 2e 77 6f 72  is._hash;f=a.wor
58a0: 64 73 3b 66 6f 72 28 67 3d 30 3b 34 3e 67 3b 67  ds;for(g=0;4>g;g
58b0: 2b 2b 29 6a 3d 66 5b 67 5d 2c 66 5b 67 5d 3d 28  ++)j=f[g],f[g]=(
58c0: 6a 3c 3c 38 7c 6a 3e 3e 3e 32 34 29 26 31 36 37  j<<8|j>>>24)&167
58d0: 31 31 39 33 35 7c 28 6a 3c 3c 32 34 7c 6a 3e 3e  11935|(j<<24|j>>
58e0: 3e 38 29 26 34 32 37 38 32 35 35 33 36 30 3b 72  >8)&4278255360;r
58f0: 65 74 75 72 6e 20 61 7d 2c 63 6c 6f 6e 65 3a 66  eturn a},clone:f
5900: 75 6e 63 74 69 6f 6e 28 29 7b 76 61 72 20 61 3d  unction(){var a=
5910: 73 2e 63 6c 6f 6e 65 2e 63 61 6c 6c 28 74 68 69  s.clone.call(thi
5920: 73 29 3b 61 2e 5f 68 61 73 68 3d 74 68 69 73 2e  s);a._hash=this.
5930: 5f 68 61 73 68 2e 63 6c 6f 6e 65 28 29 3b 72 65  _hash.clone();re
5940: 74 75 72 6e 20 61 7d 7d 29 3b 72 2e 4d 44 35 3d  turn a}});r.MD5=
5950: 73 2e 5f 63 72 65 61 74 65 48 65 6c 70 65 72 28  s._createHelper(
5960: 71 29 3b 72 2e 48 6d 61 63 4d 44 35 3d 73 2e 5f  q);r.HmacMD5=s._
5970: 63 72 65 61 74 65 48 6d 61 63 48 65 6c 70 65 72  createHmacHelper
5980: 28 71 29 7d 29 28 4d 61 74 68 29 3b 0a 0a 2f 2a  (q)})(Math);../*
5990: 0a 43 72 79 70 74 6f 4a 53 20 76 33 2e 31 2e 32  .CryptoJS v3.1.2
59a0: 20 65 6e 63 2d 62 61 73 65 36 34 2d 6d 69 6e 2e   enc-base64-min.
59b0: 6a 73 0a 63 6f 64 65 2e 67 6f 6f 67 6c 65 2e 63  js.code.google.c
59c0: 6f 6d 2f 70 2f 63 72 79 70 74 6f 2d 6a 73 0a 28  om/p/crypto-js.(
59d0: 63 29 20 32 30 30 39 2d 32 30 31 33 20 62 79 20  c) 2009-2013 by 
59e0: 4a 65 66 66 20 4d 6f 74 74 2e 20 41 6c 6c 20 72  Jeff Mott. All r
59f0: 69 67 68 74 73 20 72 65 73 65 72 76 65 64 2e 0a  ights reserved..
5a00: 63 6f 64 65 2e 67 6f 6f 67 6c 65 2e 63 6f 6d 2f  code.google.com/
5a10: 70 2f 63 72 79 70 74 6f 2d 6a 73 2f 77 69 6b 69  p/crypto-js/wiki
5a20: 2f 4c 69 63 65 6e 73 65 0a 2a 2f 0a 28 66 75 6e  /License.*/.(fun
5a30: 63 74 69 6f 6e 28 29 7b 76 61 72 20 68 3d 43 72  ction(){var h=Cr
5a40: 79 70 74 6f 4a 53 2c 6a 3d 68 2e 6c 69 62 2e 57  yptoJS,j=h.lib.W
5a50: 6f 72 64 41 72 72 61 79 3b 68 2e 65 6e 63 2e 42  ordArray;h.enc.B
5a60: 61 73 65 36 34 3d 7b 73 74 72 69 6e 67 69 66 79  ase64={stringify
5a70: 3a 66 75 6e 63 74 69 6f 6e 28 62 29 7b 76 61 72  :function(b){var
5a80: 20 65 3d 62 2e 77 6f 72 64 73 2c 66 3d 62 2e 73   e=b.words,f=b.s
5a90: 69 67 42 79 74 65 73 2c 63 3d 74 68 69 73 2e 5f  igBytes,c=this._
5aa0: 6d 61 70 3b 62 2e 63 6c 61 6d 70 28 29 3b 62 3d  map;b.clamp();b=
5ab0: 5b 5d 3b 66 6f 72 28 76 61 72 20 61 3d 30 3b 61  [];for(var a=0;a
5ac0: 3c 66 3b 61 2b 3d 33 29 66 6f 72 28 76 61 72 20  <f;a+=3)for(var 
5ad0: 64 3d 28 65 5b 61 3e 3e 3e 32 5d 3e 3e 3e 32 34  d=(e[a>>>2]>>>24
5ae0: 2d 38 2a 28 61 25 34 29 26 32 35 35 29 3c 3c 31  -8*(a%4)&255)<<1
5af0: 36 7c 28 65 5b 61 2b 31 3e 3e 3e 32 5d 3e 3e 3e  6|(e[a+1>>>2]>>>
5b00: 32 34 2d 38 2a 28 28 61 2b 31 29 25 34 29 26 32  24-8*((a+1)%4)&2
5b10: 35 35 29 3c 3c 38 7c 65 5b 61 2b 32 3e 3e 3e 32  55)<<8|e[a+2>>>2
5b20: 5d 3e 3e 3e 32 34 2d 38 2a 28 28 61 2b 32 29 25  ]>>>24-8*((a+2)%
5b30: 34 29 26 32 35 35 2c 67 3d 30 3b 34 3e 67 26 26  4)&255,g=0;4>g&&
5b40: 61 2b 30 2e 37 35 2a 67 3c 66 3b 67 2b 2b 29 62  a+0.75*g<f;g++)b
5b50: 2e 70 75 73 68 28 63 2e 63 68 61 72 41 74 28 64  .push(c.charAt(d
5b60: 3e 3e 3e 36 2a 28 33 2d 67 29 26 36 33 29 29 3b  >>>6*(3-g)&63));
5b70: 69 66 28 65 3d 63 2e 63 68 61 72 41 74 28 36 34  if(e=c.charAt(64
5b80: 29 29 66 6f 72 28 3b 62 2e 6c 65 6e 67 74 68 25  ))for(;b.length%
5b90: 34 3b 29 62 2e 70 75 73 68 28 65 29 3b 72 65 74  4;)b.push(e);ret
5ba0: 75 72 6e 20 62 2e 6a 6f 69 6e 28 22 22 29 7d 2c  urn b.join("")},
5bb0: 70 61 72 73 65 3a 66 75 6e 63 74 69 6f 6e 28 62  parse:function(b
5bc0: 29 7b 76 61 72 20 65 3d 62 2e 6c 65 6e 67 74 68  ){var e=b.length
5bd0: 2c 66 3d 74 68 69 73 2e 5f 6d 61 70 2c 63 3d 66  ,f=this._map,c=f
5be0: 2e 63 68 61 72 41 74 28 36 34 29 3b 63 26 26 28  .charAt(64);c&&(
5bf0: 63 3d 62 2e 69 6e 64 65 78 4f 66 28 63 29 2c 2d  c=b.indexOf(c),-
5c00: 31 21 3d 63 26 26 28 65 3d 63 29 29 3b 66 6f 72  1!=c&&(e=c));for
5c10: 28 76 61 72 20 63 3d 5b 5d 2c 61 3d 30 2c 64 3d  (var c=[],a=0,d=
5c20: 30 3b 64 3c 0a 65 3b 64 2b 2b 29 69 66 28 64 25  0;d<.e;d++)if(d%
5c30: 34 29 7b 76 61 72 20 67 3d 66 2e 69 6e 64 65 78  4){var g=f.index
5c40: 4f 66 28 62 2e 63 68 61 72 41 74 28 64 2d 31 29  Of(b.charAt(d-1)
5c50: 29 3c 3c 32 2a 28 64 25 34 29 2c 68 3d 66 2e 69  )<<2*(d%4),h=f.i
5c60: 6e 64 65 78 4f 66 28 62 2e 63 68 61 72 41 74 28  ndexOf(b.charAt(
5c70: 64 29 29 3e 3e 3e 36 2d 32 2a 28 64 25 34 29 3b  d))>>>6-2*(d%4);
5c80: 63 5b 61 3e 3e 3e 32 5d 7c 3d 28 67 7c 68 29 3c  c[a>>>2]|=(g|h)<
5c90: 3c 32 34 2d 38 2a 28 61 25 34 29 3b 61 2b 2b 7d  <24-8*(a%4);a++}
5ca0: 72 65 74 75 72 6e 20 6a 2e 63 72 65 61 74 65 28  return j.create(
5cb0: 63 2c 61 29 7d 2c 5f 6d 61 70 3a 22 41 42 43 44  c,a)},_map:"ABCD
5cc0: 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54  EFGHIJKLMNOPQRST
5cd0: 55 56 57 58 59 5a 61 62 63 64 65 66 67 68 69 6a  UVWXYZabcdefghij
5ce0: 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 78 79 7a  klmnopqrstuvwxyz
5cf0: 30 31 32 33 34 35 36 37 38 39 2b 2f 3d 22 7d 7d  0123456789+/="}}
5d00: 29 28 29 3b 0a 0a 2f 2a 0a 43 72 79 70 74 6f 4a  )();../*.CryptoJ
5d10: 53 20 76 33 2e 31 2e 32 20 63 69 70 68 65 72 2d  S v3.1.2 cipher-
5d20: 63 6f 72 65 2d 6d 69 6e 2e 6a 73 0a 63 6f 64 65  core-min.js.code
5d30: 2e 67 6f 6f 67 6c 65 2e 63 6f 6d 2f 70 2f 63 72  .google.com/p/cr
5d40: 79 70 74 6f 2d 6a 73 0a 28 63 29 20 32 30 30 39  ypto-js.(c) 2009
5d50: 2d 32 30 31 33 20 62 79 20 4a 65 66 66 20 4d 6f  -2013 by Jeff Mo
5d60: 74 74 2e 20 41 6c 6c 20 72 69 67 68 74 73 20 72  tt. All rights r
5d70: 65 73 65 72 76 65 64 2e 0a 63 6f 64 65 2e 67 6f  eserved..code.go
5d80: 6f 67 6c 65 2e 63 6f 6d 2f 70 2f 63 72 79 70 74  ogle.com/p/crypt
5d90: 6f 2d 6a 73 2f 77 69 6b 69 2f 4c 69 63 65 6e 73  o-js/wiki/Licens
5da0: 65 0a 2a 2f 0a 43 72 79 70 74 6f 4a 53 2e 6c 69  e.*/.CryptoJS.li
5db0: 62 2e 43 69 70 68 65 72 7c 7c 66 75 6e 63 74 69  b.Cipher||functi
5dc0: 6f 6e 28 75 29 7b 76 61 72 20 67 3d 43 72 79 70  on(u){var g=Cryp
5dd0: 74 6f 4a 53 2c 66 3d 67 2e 6c 69 62 2c 6b 3d 66  toJS,f=g.lib,k=f
5de0: 2e 42 61 73 65 2c 6c 3d 66 2e 57 6f 72 64 41 72  .Base,l=f.WordAr
5df0: 72 61 79 2c 71 3d 66 2e 42 75 66 66 65 72 65 64  ray,q=f.Buffered
5e00: 42 6c 6f 63 6b 41 6c 67 6f 72 69 74 68 6d 2c 72  BlockAlgorithm,r
5e10: 3d 67 2e 65 6e 63 2e 42 61 73 65 36 34 2c 76 3d  =g.enc.Base64,v=
5e20: 67 2e 61 6c 67 6f 2e 45 76 70 4b 44 46 2c 6e 3d  g.algo.EvpKDF,n=
5e30: 66 2e 43 69 70 68 65 72 3d 71 2e 65 78 74 65 6e  f.Cipher=q.exten
5e40: 64 28 7b 63 66 67 3a 6b 2e 65 78 74 65 6e 64 28  d({cfg:k.extend(
5e50: 29 2c 63 72 65 61 74 65 45 6e 63 72 79 70 74 6f  ),createEncrypto
5e60: 72 3a 66 75 6e 63 74 69 6f 6e 28 61 2c 62 29 7b  r:function(a,b){
5e70: 72 65 74 75 72 6e 20 74 68 69 73 2e 63 72 65 61  return this.crea
5e80: 74 65 28 74 68 69 73 2e 5f 45 4e 43 5f 58 46 4f  te(this._ENC_XFO
5e90: 52 4d 5f 4d 4f 44 45 2c 61 2c 62 29 7d 2c 63 72  RM_MODE,a,b)},cr
5ea0: 65 61 74 65 44 65 63 72 79 70 74 6f 72 3a 66 75  eateDecryptor:fu
5eb0: 6e 63 74 69 6f 6e 28 61 2c 62 29 7b 72 65 74 75  nction(a,b){retu
5ec0: 72 6e 20 74 68 69 73 2e 63 72 65 61 74 65 28 74  rn this.create(t
5ed0: 68 69 73 2e 5f 44 45 43 5f 58 46 4f 52 4d 5f 4d  his._DEC_XFORM_M
5ee0: 4f 44 45 2c 61 2c 62 29 7d 2c 69 6e 69 74 3a 66  ODE,a,b)},init:f
5ef0: 75 6e 63 74 69 6f 6e 28 61 2c 62 2c 63 29 7b 74  unction(a,b,c){t
5f00: 68 69 73 2e 63 66 67 3d 74 68 69 73 2e 63 66 67  his.cfg=this.cfg
5f10: 2e 65 78 74 65 6e 64 28 63 29 3b 74 68 69 73 2e  .extend(c);this.
5f20: 5f 78 66 6f 72 6d 4d 6f 64 65 3d 61 3b 74 68 69  _xformMode=a;thi
5f30: 73 2e 5f 6b 65 79 3d 62 3b 74 68 69 73 2e 72 65  s._key=b;this.re
5f40: 73 65 74 28 29 7d 2c 72 65 73 65 74 3a 66 75 6e  set()},reset:fun
5f50: 63 74 69 6f 6e 28 29 7b 71 2e 72 65 73 65 74 2e  ction(){q.reset.
5f60: 63 61 6c 6c 28 74 68 69 73 29 3b 74 68 69 73 2e  call(this);this.
5f70: 5f 64 6f 52 65 73 65 74 28 29 7d 2c 70 72 6f 63  _doReset()},proc
5f80: 65 73 73 3a 66 75 6e 63 74 69 6f 6e 28 61 29 7b  ess:function(a){
5f90: 74 68 69 73 2e 5f 61 70 70 65 6e 64 28 61 29 3b  this._append(a);
5fa0: 0a 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 70 72  .return this._pr
5fb0: 6f 63 65 73 73 28 29 7d 2c 66 69 6e 61 6c 69 7a  ocess()},finaliz
5fc0: 65 3a 66 75 6e 63 74 69 6f 6e 28 61 29 7b 61 26  e:function(a){a&
5fd0: 26 74 68 69 73 2e 5f 61 70 70 65 6e 64 28 61 29  &this._append(a)
5fe0: 3b 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 64 6f  ;return this._do
5ff0: 46 69 6e 61 6c 69 7a 65 28 29 7d 2c 6b 65 79 53  Finalize()},keyS
6000: 69 7a 65 3a 34 2c 69 76 53 69 7a 65 3a 34 2c 5f  ize:4,ivSize:4,_
6010: 45 4e 43 5f 58 46 4f 52 4d 5f 4d 4f 44 45 3a 31  ENC_XFORM_MODE:1
6020: 2c 5f 44 45 43 5f 58 46 4f 52 4d 5f 4d 4f 44 45  ,_DEC_XFORM_MODE
6030: 3a 32 2c 5f 63 72 65 61 74 65 48 65 6c 70 65 72  :2,_createHelper
6040: 3a 66 75 6e 63 74 69 6f 6e 28 61 29 7b 72 65 74  :function(a){ret
6050: 75 72 6e 7b 65 6e 63 72 79 70 74 3a 66 75 6e 63  urn{encrypt:func
6060: 74 69 6f 6e 28 62 2c 63 2c 64 29 7b 72 65 74 75  tion(b,c,d){retu
6070: 72 6e 28 22 73 74 72 69 6e 67 22 3d 3d 74 79 70  rn("string"==typ
6080: 65 6f 66 20 63 3f 73 3a 6a 29 2e 65 6e 63 72 79  eof c?s:j).encry
6090: 70 74 28 61 2c 62 2c 63 2c 64 29 7d 2c 64 65 63  pt(a,b,c,d)},dec
60a0: 72 79 70 74 3a 66 75 6e 63 74 69 6f 6e 28 62 2c  rypt:function(b,
60b0: 63 2c 64 29 7b 72 65 74 75 72 6e 28 22 73 74 72  c,d){return("str
60c0: 69 6e 67 22 3d 3d 74 79 70 65 6f 66 20 63 3f 73  ing"==typeof c?s
60d0: 3a 6a 29 2e 64 65 63 72 79 70 74 28 61 2c 62 2c  :j).decrypt(a,b,
60e0: 63 2c 64 29 7d 7d 7d 7d 29 3b 66 2e 53 74 72 65  c,d)}}}});f.Stre
60f0: 61 6d 43 69 70 68 65 72 3d 6e 2e 65 78 74 65 6e  amCipher=n.exten
6100: 64 28 7b 5f 64 6f 46 69 6e 61 6c 69 7a 65 3a 66  d({_doFinalize:f
6110: 75 6e 63 74 69 6f 6e 28 29 7b 72 65 74 75 72 6e  unction(){return
6120: 20 74 68 69 73 2e 5f 70 72 6f 63 65 73 73 28 21   this._process(!
6130: 30 29 7d 2c 62 6c 6f 63 6b 53 69 7a 65 3a 31 7d  0)},blockSize:1}
6140: 29 3b 76 61 72 20 6d 3d 67 2e 6d 6f 64 65 3d 7b  );var m=g.mode={
6150: 7d 2c 74 3d 66 75 6e 63 74 69 6f 6e 28 61 2c 62  },t=function(a,b
6160: 2c 63 29 7b 76 61 72 20 64 3d 74 68 69 73 2e 5f  ,c){var d=this._
6170: 69 76 3b 64 3f 74 68 69 73 2e 5f 69 76 3d 75 3a  iv;d?this._iv=u:
6180: 64 3d 74 68 69 73 2e 5f 70 72 65 76 42 6c 6f 63  d=this._prevBloc
6190: 6b 3b 66 6f 72 28 76 61 72 20 65 3d 0a 30 3b 65  k;for(var e=.0;e
61a0: 3c 63 3b 65 2b 2b 29 61 5b 62 2b 65 5d 5e 3d 64  <c;e++)a[b+e]^=d
61b0: 5b 65 5d 7d 2c 68 3d 28 66 2e 42 6c 6f 63 6b 43  [e]},h=(f.BlockC
61c0: 69 70 68 65 72 4d 6f 64 65 3d 6b 2e 65 78 74 65  ipherMode=k.exte
61d0: 6e 64 28 7b 63 72 65 61 74 65 45 6e 63 72 79 70  nd({createEncryp
61e0: 74 6f 72 3a 66 75 6e 63 74 69 6f 6e 28 61 2c 62  tor:function(a,b
61f0: 29 7b 72 65 74 75 72 6e 20 74 68 69 73 2e 45 6e  ){return this.En
6200: 63 72 79 70 74 6f 72 2e 63 72 65 61 74 65 28 61  cryptor.create(a
6210: 2c 62 29 7d 2c 63 72 65 61 74 65 44 65 63 72 79  ,b)},createDecry
6220: 70 74 6f 72 3a 66 75 6e 63 74 69 6f 6e 28 61 2c  ptor:function(a,
6230: 62 29 7b 72 65 74 75 72 6e 20 74 68 69 73 2e 44  b){return this.D
6240: 65 63 72 79 70 74 6f 72 2e 63 72 65 61 74 65 28  ecryptor.create(
6250: 61 2c 62 29 7d 2c 69 6e 69 74 3a 66 75 6e 63 74  a,b)},init:funct
6260: 69 6f 6e 28 61 2c 62 29 7b 74 68 69 73 2e 5f 63  ion(a,b){this._c
6270: 69 70 68 65 72 3d 61 3b 74 68 69 73 2e 5f 69 76  ipher=a;this._iv
6280: 3d 62 7d 7d 29 29 2e 65 78 74 65 6e 64 28 29 3b  =b}})).extend();
6290: 68 2e 45 6e 63 72 79 70 74 6f 72 3d 68 2e 65 78  h.Encryptor=h.ex
62a0: 74 65 6e 64 28 7b 70 72 6f 63 65 73 73 42 6c 6f  tend({processBlo
62b0: 63 6b 3a 66 75 6e 63 74 69 6f 6e 28 61 2c 62 29  ck:function(a,b)
62c0: 7b 76 61 72 20 63 3d 74 68 69 73 2e 5f 63 69 70  {var c=this._cip
62d0: 68 65 72 2c 64 3d 63 2e 62 6c 6f 63 6b 53 69 7a  her,d=c.blockSiz
62e0: 65 3b 74 2e 63 61 6c 6c 28 74 68 69 73 2c 61 2c  e;t.call(this,a,
62f0: 62 2c 64 29 3b 63 2e 65 6e 63 72 79 70 74 42 6c  b,d);c.encryptBl
6300: 6f 63 6b 28 61 2c 62 29 3b 74 68 69 73 2e 5f 70  ock(a,b);this._p
6310: 72 65 76 42 6c 6f 63 6b 3d 61 2e 73 6c 69 63 65  revBlock=a.slice
6320: 28 62 2c 62 2b 64 29 7d 7d 29 3b 68 2e 44 65 63  (b,b+d)}});h.Dec
6330: 72 79 70 74 6f 72 3d 68 2e 65 78 74 65 6e 64 28  ryptor=h.extend(
6340: 7b 70 72 6f 63 65 73 73 42 6c 6f 63 6b 3a 66 75  {processBlock:fu
6350: 6e 63 74 69 6f 6e 28 61 2c 62 29 7b 76 61 72 20  nction(a,b){var 
6360: 63 3d 74 68 69 73 2e 5f 63 69 70 68 65 72 2c 64  c=this._cipher,d
6370: 3d 63 2e 62 6c 6f 63 6b 53 69 7a 65 2c 65 3d 61  =c.blockSize,e=a
6380: 2e 73 6c 69 63 65 28 62 2c 62 2b 64 29 3b 63 2e  .slice(b,b+d);c.
6390: 64 65 63 72 79 70 74 42 6c 6f 63 6b 28 61 2c 0a  decryptBlock(a,.
63a0: 62 29 3b 74 2e 63 61 6c 6c 28 74 68 69 73 2c 61  b);t.call(this,a
63b0: 2c 62 2c 64 29 3b 74 68 69 73 2e 5f 70 72 65 76  ,b,d);this._prev
63c0: 42 6c 6f 63 6b 3d 65 7d 7d 29 3b 6d 3d 6d 2e 43  Block=e}});m=m.C
63d0: 42 43 3d 68 3b 68 3d 28 67 2e 70 61 64 3d 7b 7d  BC=h;h=(g.pad={}
63e0: 29 2e 50 6b 63 73 37 3d 7b 70 61 64 3a 66 75 6e  ).Pkcs7={pad:fun
63f0: 63 74 69 6f 6e 28 61 2c 62 29 7b 66 6f 72 28 76  ction(a,b){for(v
6400: 61 72 20 63 3d 34 2a 62 2c 63 3d 63 2d 61 2e 73  ar c=4*b,c=c-a.s
6410: 69 67 42 79 74 65 73 25 63 2c 64 3d 63 3c 3c 32  igBytes%c,d=c<<2
6420: 34 7c 63 3c 3c 31 36 7c 63 3c 3c 38 7c 63 2c 65  4|c<<16|c<<8|c,e
6430: 3d 5b 5d 2c 66 3d 30 3b 66 3c 63 3b 66 2b 3d 34  =[],f=0;f<c;f+=4
6440: 29 65 2e 70 75 73 68 28 64 29 3b 63 3d 6c 2e 63  )e.push(d);c=l.c
6450: 72 65 61 74 65 28 65 2c 63 29 3b 61 2e 63 6f 6e  reate(e,c);a.con
6460: 63 61 74 28 63 29 7d 2c 75 6e 70 61 64 3a 66 75  cat(c)},unpad:fu
6470: 6e 63 74 69 6f 6e 28 61 29 7b 61 2e 73 69 67 42  nction(a){a.sigB
6480: 79 74 65 73 2d 3d 61 2e 77 6f 72 64 73 5b 61 2e  ytes-=a.words[a.
6490: 73 69 67 42 79 74 65 73 2d 31 3e 3e 3e 32 5d 26  sigBytes-1>>>2]&
64a0: 32 35 35 7d 7d 3b 66 2e 42 6c 6f 63 6b 43 69 70  255}};f.BlockCip
64b0: 68 65 72 3d 6e 2e 65 78 74 65 6e 64 28 7b 63 66  her=n.extend({cf
64c0: 67 3a 6e 2e 63 66 67 2e 65 78 74 65 6e 64 28 7b  g:n.cfg.extend({
64d0: 6d 6f 64 65 3a 6d 2c 70 61 64 64 69 6e 67 3a 68  mode:m,padding:h
64e0: 7d 29 2c 72 65 73 65 74 3a 66 75 6e 63 74 69 6f  }),reset:functio
64f0: 6e 28 29 7b 6e 2e 72 65 73 65 74 2e 63 61 6c 6c  n(){n.reset.call
6500: 28 74 68 69 73 29 3b 76 61 72 20 61 3d 74 68 69  (this);var a=thi
6510: 73 2e 63 66 67 2c 62 3d 61 2e 69 76 2c 61 3d 61  s.cfg,b=a.iv,a=a
6520: 2e 6d 6f 64 65 3b 69 66 28 74 68 69 73 2e 5f 78  .mode;if(this._x
6530: 66 6f 72 6d 4d 6f 64 65 3d 3d 74 68 69 73 2e 5f  formMode==this._
6540: 45 4e 43 5f 58 46 4f 52 4d 5f 4d 4f 44 45 29 76  ENC_XFORM_MODE)v
6550: 61 72 20 63 3d 61 2e 63 72 65 61 74 65 45 6e 63  ar c=a.createEnc
6560: 72 79 70 74 6f 72 3b 65 6c 73 65 20 63 3d 61 2e  ryptor;else c=a.
6570: 63 72 65 61 74 65 44 65 63 72 79 70 74 6f 72 2c  createDecryptor,
6580: 74 68 69 73 2e 5f 6d 69 6e 42 75 66 66 65 72 53  this._minBufferS
6590: 69 7a 65 3d 31 3b 0a 74 68 69 73 2e 5f 6d 6f 64  ize=1;.this._mod
65a0: 65 3d 63 2e 63 61 6c 6c 28 61 2c 74 68 69 73 2c  e=c.call(a,this,
65b0: 62 26 26 62 2e 77 6f 72 64 73 29 7d 2c 5f 64 6f  b&&b.words)},_do
65c0: 50 72 6f 63 65 73 73 42 6c 6f 63 6b 3a 66 75 6e  ProcessBlock:fun
65d0: 63 74 69 6f 6e 28 61 2c 62 29 7b 74 68 69 73 2e  ction(a,b){this.
65e0: 5f 6d 6f 64 65 2e 70 72 6f 63 65 73 73 42 6c 6f  _mode.processBlo
65f0: 63 6b 28 61 2c 62 29 7d 2c 5f 64 6f 46 69 6e 61  ck(a,b)},_doFina
6600: 6c 69 7a 65 3a 66 75 6e 63 74 69 6f 6e 28 29 7b  lize:function(){
6610: 76 61 72 20 61 3d 74 68 69 73 2e 63 66 67 2e 70  var a=this.cfg.p
6620: 61 64 64 69 6e 67 3b 69 66 28 74 68 69 73 2e 5f  adding;if(this._
6630: 78 66 6f 72 6d 4d 6f 64 65 3d 3d 74 68 69 73 2e  xformMode==this.
6640: 5f 45 4e 43 5f 58 46 4f 52 4d 5f 4d 4f 44 45 29  _ENC_XFORM_MODE)
6650: 7b 61 2e 70 61 64 28 74 68 69 73 2e 5f 64 61 74  {a.pad(this._dat
6660: 61 2c 74 68 69 73 2e 62 6c 6f 63 6b 53 69 7a 65  a,this.blockSize
6670: 29 3b 76 61 72 20 62 3d 74 68 69 73 2e 5f 70 72  );var b=this._pr
6680: 6f 63 65 73 73 28 21 30 29 7d 65 6c 73 65 20 62  ocess(!0)}else b
6690: 3d 74 68 69 73 2e 5f 70 72 6f 63 65 73 73 28 21  =this._process(!
66a0: 30 29 2c 61 2e 75 6e 70 61 64 28 62 29 3b 72 65  0),a.unpad(b);re
66b0: 74 75 72 6e 20 62 7d 2c 62 6c 6f 63 6b 53 69 7a  turn b},blockSiz
66c0: 65 3a 34 7d 29 3b 76 61 72 20 70 3d 66 2e 43 69  e:4});var p=f.Ci
66d0: 70 68 65 72 50 61 72 61 6d 73 3d 6b 2e 65 78 74  pherParams=k.ext
66e0: 65 6e 64 28 7b 69 6e 69 74 3a 66 75 6e 63 74 69  end({init:functi
66f0: 6f 6e 28 61 29 7b 74 68 69 73 2e 6d 69 78 49 6e  on(a){this.mixIn
6700: 28 61 29 7d 2c 74 6f 53 74 72 69 6e 67 3a 66 75  (a)},toString:fu
6710: 6e 63 74 69 6f 6e 28 61 29 7b 72 65 74 75 72 6e  nction(a){return
6720: 28 61 7c 7c 74 68 69 73 2e 66 6f 72 6d 61 74 74  (a||this.formatt
6730: 65 72 29 2e 73 74 72 69 6e 67 69 66 79 28 74 68  er).stringify(th
6740: 69 73 29 7d 7d 29 2c 6d 3d 28 67 2e 66 6f 72 6d  is)}}),m=(g.form
6750: 61 74 3d 7b 7d 29 2e 4f 70 65 6e 53 53 4c 3d 7b  at={}).OpenSSL={
6760: 73 74 72 69 6e 67 69 66 79 3a 66 75 6e 63 74 69  stringify:functi
6770: 6f 6e 28 61 29 7b 76 61 72 20 62 3d 61 2e 63 69  on(a){var b=a.ci
6780: 70 68 65 72 74 65 78 74 3b 61 3d 61 2e 73 61 6c  phertext;a=a.sal
6790: 74 3b 0a 72 65 74 75 72 6e 28 61 3f 6c 2e 63 72  t;.return(a?l.cr
67a0: 65 61 74 65 28 5b 31 33 39 38 38 39 33 36 38 34  eate([1398893684
67b0: 2c 31 37 30 31 30 37 36 38 33 31 5d 29 2e 63 6f  ,1701076831]).co
67c0: 6e 63 61 74 28 61 29 2e 63 6f 6e 63 61 74 28 62  ncat(a).concat(b
67d0: 29 3a 62 29 2e 74 6f 53 74 72 69 6e 67 28 72 29  ):b).toString(r)
67e0: 7d 2c 70 61 72 73 65 3a 66 75 6e 63 74 69 6f 6e  },parse:function
67f0: 28 61 29 7b 61 3d 72 2e 70 61 72 73 65 28 61 29  (a){a=r.parse(a)
6800: 3b 76 61 72 20 62 3d 61 2e 77 6f 72 64 73 3b 69  ;var b=a.words;i
6810: 66 28 31 33 39 38 38 39 33 36 38 34 3d 3d 62 5b  f(1398893684==b[
6820: 30 5d 26 26 31 37 30 31 30 37 36 38 33 31 3d 3d  0]&&1701076831==
6830: 62 5b 31 5d 29 7b 76 61 72 20 63 3d 6c 2e 63 72  b[1]){var c=l.cr
6840: 65 61 74 65 28 62 2e 73 6c 69 63 65 28 32 2c 34  eate(b.slice(2,4
6850: 29 29 3b 62 2e 73 70 6c 69 63 65 28 30 2c 34 29  ));b.splice(0,4)
6860: 3b 61 2e 73 69 67 42 79 74 65 73 2d 3d 31 36 7d  ;a.sigBytes-=16}
6870: 72 65 74 75 72 6e 20 70 2e 63 72 65 61 74 65 28  return p.create(
6880: 7b 63 69 70 68 65 72 74 65 78 74 3a 61 2c 73 61  {ciphertext:a,sa
6890: 6c 74 3a 63 7d 29 7d 7d 2c 6a 3d 66 2e 53 65 72  lt:c})}},j=f.Ser
68a0: 69 61 6c 69 7a 61 62 6c 65 43 69 70 68 65 72 3d  ializableCipher=
68b0: 6b 2e 65 78 74 65 6e 64 28 7b 63 66 67 3a 6b 2e  k.extend({cfg:k.
68c0: 65 78 74 65 6e 64 28 7b 66 6f 72 6d 61 74 3a 6d  extend({format:m
68d0: 7d 29 2c 65 6e 63 72 79 70 74 3a 66 75 6e 63 74  }),encrypt:funct
68e0: 69 6f 6e 28 61 2c 62 2c 63 2c 64 29 7b 64 3d 74  ion(a,b,c,d){d=t
68f0: 68 69 73 2e 63 66 67 2e 65 78 74 65 6e 64 28 64  his.cfg.extend(d
6900: 29 3b 76 61 72 20 65 3d 61 2e 63 72 65 61 74 65  );var e=a.create
6910: 45 6e 63 72 79 70 74 6f 72 28 63 2c 64 29 3b 62  Encryptor(c,d);b
6920: 3d 65 2e 66 69 6e 61 6c 69 7a 65 28 62 29 3b 65  =e.finalize(b);e
6930: 3d 65 2e 63 66 67 3b 72 65 74 75 72 6e 20 70 2e  =e.cfg;return p.
6940: 63 72 65 61 74 65 28 7b 63 69 70 68 65 72 74 65  create({cipherte
6950: 78 74 3a 62 2c 6b 65 79 3a 63 2c 69 76 3a 65 2e  xt:b,key:c,iv:e.
6960: 69 76 2c 61 6c 67 6f 72 69 74 68 6d 3a 61 2c 6d  iv,algorithm:a,m
6970: 6f 64 65 3a 65 2e 6d 6f 64 65 2c 70 61 64 64 69  ode:e.mode,paddi
6980: 6e 67 3a 65 2e 70 61 64 64 69 6e 67 2c 0a 62 6c  ng:e.padding,.bl
6990: 6f 63 6b 53 69 7a 65 3a 61 2e 62 6c 6f 63 6b 53  ockSize:a.blockS
69a0: 69 7a 65 2c 66 6f 72 6d 61 74 74 65 72 3a 64 2e  ize,formatter:d.
69b0: 66 6f 72 6d 61 74 7d 29 7d 2c 64 65 63 72 79 70  format})},decryp
69c0: 74 3a 66 75 6e 63 74 69 6f 6e 28 61 2c 62 2c 63  t:function(a,b,c
69d0: 2c 64 29 7b 64 3d 74 68 69 73 2e 63 66 67 2e 65  ,d){d=this.cfg.e
69e0: 78 74 65 6e 64 28 64 29 3b 62 3d 74 68 69 73 2e  xtend(d);b=this.
69f0: 5f 70 61 72 73 65 28 62 2c 64 2e 66 6f 72 6d 61  _parse(b,d.forma
6a00: 74 29 3b 72 65 74 75 72 6e 20 61 2e 63 72 65 61  t);return a.crea
6a10: 74 65 44 65 63 72 79 70 74 6f 72 28 63 2c 64 29  teDecryptor(c,d)
6a20: 2e 66 69 6e 61 6c 69 7a 65 28 62 2e 63 69 70 68  .finalize(b.ciph
6a30: 65 72 74 65 78 74 29 7d 2c 5f 70 61 72 73 65 3a  ertext)},_parse:
6a40: 66 75 6e 63 74 69 6f 6e 28 61 2c 62 29 7b 72 65  function(a,b){re
6a50: 74 75 72 6e 22 73 74 72 69 6e 67 22 3d 3d 74 79  turn"string"==ty
6a60: 70 65 6f 66 20 61 3f 62 2e 70 61 72 73 65 28 61  peof a?b.parse(a
6a70: 2c 74 68 69 73 29 3a 61 7d 7d 29 2c 67 3d 28 67  ,this):a}}),g=(g
6a80: 2e 6b 64 66 3d 7b 7d 29 2e 4f 70 65 6e 53 53 4c  .kdf={}).OpenSSL
6a90: 3d 7b 65 78 65 63 75 74 65 3a 66 75 6e 63 74 69  ={execute:functi
6aa0: 6f 6e 28 61 2c 62 2c 63 2c 64 29 7b 64 7c 7c 28  on(a,b,c,d){d||(
6ab0: 64 3d 6c 2e 72 61 6e 64 6f 6d 28 38 29 29 3b 61  d=l.random(8));a
6ac0: 3d 76 2e 63 72 65 61 74 65 28 7b 6b 65 79 53 69  =v.create({keySi
6ad0: 7a 65 3a 62 2b 63 7d 29 2e 63 6f 6d 70 75 74 65  ze:b+c}).compute
6ae0: 28 61 2c 64 29 3b 63 3d 6c 2e 63 72 65 61 74 65  (a,d);c=l.create
6af0: 28 61 2e 77 6f 72 64 73 2e 73 6c 69 63 65 28 62  (a.words.slice(b
6b00: 29 2c 34 2a 63 29 3b 61 2e 73 69 67 42 79 74 65  ),4*c);a.sigByte
6b10: 73 3d 34 2a 62 3b 72 65 74 75 72 6e 20 70 2e 63  s=4*b;return p.c
6b20: 72 65 61 74 65 28 7b 6b 65 79 3a 61 2c 69 76 3a  reate({key:a,iv:
6b30: 63 2c 73 61 6c 74 3a 64 7d 29 7d 7d 2c 73 3d 66  c,salt:d})}},s=f
6b40: 2e 50 61 73 73 77 6f 72 64 42 61 73 65 64 43 69  .PasswordBasedCi
6b50: 70 68 65 72 3d 6a 2e 65 78 74 65 6e 64 28 7b 63  pher=j.extend({c
6b60: 66 67 3a 6a 2e 63 66 67 2e 65 78 74 65 6e 64 28  fg:j.cfg.extend(
6b70: 7b 6b 64 66 3a 67 7d 29 2c 65 6e 63 72 79 70 74  {kdf:g}),encrypt
6b80: 3a 66 75 6e 63 74 69 6f 6e 28 61 2c 0a 62 2c 63  :function(a,.b,c
6b90: 2c 64 29 7b 64 3d 74 68 69 73 2e 63 66 67 2e 65  ,d){d=this.cfg.e
6ba0: 78 74 65 6e 64 28 64 29 3b 63 3d 64 2e 6b 64 66  xtend(d);c=d.kdf
6bb0: 2e 65 78 65 63 75 74 65 28 63 2c 61 2e 6b 65 79  .execute(c,a.key
6bc0: 53 69 7a 65 2c 61 2e 69 76 53 69 7a 65 29 3b 64  Size,a.ivSize);d
6bd0: 2e 69 76 3d 63 2e 69 76 3b 61 3d 6a 2e 65 6e 63  .iv=c.iv;a=j.enc
6be0: 72 79 70 74 2e 63 61 6c 6c 28 74 68 69 73 2c 61  rypt.call(this,a
6bf0: 2c 62 2c 63 2e 6b 65 79 2c 64 29 3b 61 2e 6d 69  ,b,c.key,d);a.mi
6c00: 78 49 6e 28 63 29 3b 72 65 74 75 72 6e 20 61 7d  xIn(c);return a}
6c10: 2c 64 65 63 72 79 70 74 3a 66 75 6e 63 74 69 6f  ,decrypt:functio
6c20: 6e 28 61 2c 62 2c 63 2c 64 29 7b 64 3d 74 68 69  n(a,b,c,d){d=thi
6c30: 73 2e 63 66 67 2e 65 78 74 65 6e 64 28 64 29 3b  s.cfg.extend(d);
6c40: 62 3d 74 68 69 73 2e 5f 70 61 72 73 65 28 62 2c  b=this._parse(b,
6c50: 64 2e 66 6f 72 6d 61 74 29 3b 63 3d 64 2e 6b 64  d.format);c=d.kd
6c60: 66 2e 65 78 65 63 75 74 65 28 63 2c 61 2e 6b 65  f.execute(c,a.ke
6c70: 79 53 69 7a 65 2c 61 2e 69 76 53 69 7a 65 2c 62  ySize,a.ivSize,b
6c80: 2e 73 61 6c 74 29 3b 64 2e 69 76 3d 63 2e 69 76  .salt);d.iv=c.iv
6c90: 3b 72 65 74 75 72 6e 20 6a 2e 64 65 63 72 79 70  ;return j.decryp
6ca0: 74 2e 63 61 6c 6c 28 74 68 69 73 2c 61 2c 62 2c  t.call(this,a,b,
6cb0: 63 2e 6b 65 79 2c 64 29 7d 7d 29 7d 28 29 3b 0a  c.key,d)}})}();.
6cc0: 0a 2f 2a 0a 43 72 79 70 74 6f 4a 53 20 76 33 2e  ./*.CryptoJS v3.
6cd0: 31 2e 32 20 61 65 73 2d 6d 69 6e 2e 6a 73 0a 63  1.2 aes-min.js.c
6ce0: 6f 64 65 2e 67 6f 6f 67 6c 65 2e 63 6f 6d 2f 70  ode.google.com/p
6cf0: 2f 63 72 79 70 74 6f 2d 6a 73 0a 28 63 29 20 32  /crypto-js.(c) 2
6d00: 30 30 39 2d 32 30 31 33 20 62 79 20 4a 65 66 66  009-2013 by Jeff
6d10: 20 4d 6f 74 74 2e 20 41 6c 6c 20 72 69 67 68 74   Mott. All right
6d20: 73 20 72 65 73 65 72 76 65 64 2e 0a 63 6f 64 65  s reserved..code
6d30: 2e 67 6f 6f 67 6c 65 2e 63 6f 6d 2f 70 2f 63 72  .google.com/p/cr
6d40: 79 70 74 6f 2d 6a 73 2f 77 69 6b 69 2f 4c 69 63  ypto-js/wiki/Lic
6d50: 65 6e 73 65 0a 2a 2f 0a 28 66 75 6e 63 74 69 6f  ense.*/.(functio
6d60: 6e 28 29 7b 66 6f 72 28 76 61 72 20 71 3d 43 72  n(){for(var q=Cr
6d70: 79 70 74 6f 4a 53 2c 78 3d 71 2e 6c 69 62 2e 42  yptoJS,x=q.lib.B
6d80: 6c 6f 63 6b 43 69 70 68 65 72 2c 72 3d 71 2e 61  lockCipher,r=q.a
6d90: 6c 67 6f 2c 6a 3d 5b 5d 2c 79 3d 5b 5d 2c 7a 3d  lgo,j=[],y=[],z=
6da0: 5b 5d 2c 41 3d 5b 5d 2c 42 3d 5b 5d 2c 43 3d 5b  [],A=[],B=[],C=[
6db0: 5d 2c 73 3d 5b 5d 2c 75 3d 5b 5d 2c 76 3d 5b 5d  ],s=[],u=[],v=[]
6dc0: 2c 77 3d 5b 5d 2c 67 3d 5b 5d 2c 6b 3d 30 3b 32  ,w=[],g=[],k=0;2
6dd0: 35 36 3e 6b 3b 6b 2b 2b 29 67 5b 6b 5d 3d 31 32  56>k;k++)g[k]=12
6de0: 38 3e 6b 3f 6b 3c 3c 31 3a 6b 3c 3c 31 5e 32 38  8>k?k<<1:k<<1^28
6df0: 33 3b 66 6f 72 28 76 61 72 20 6e 3d 30 2c 6c 3d  3;for(var n=0,l=
6e00: 30 2c 6b 3d 30 3b 32 35 36 3e 6b 3b 6b 2b 2b 29  0,k=0;256>k;k++)
6e10: 7b 76 61 72 20 66 3d 6c 5e 6c 3c 3c 31 5e 6c 3c  {var f=l^l<<1^l<
6e20: 3c 32 5e 6c 3c 3c 33 5e 6c 3c 3c 34 2c 66 3d 66  <2^l<<3^l<<4,f=f
6e30: 3e 3e 3e 38 5e 66 26 32 35 35 5e 39 39 3b 6a 5b  >>>8^f&255^99;j[
6e40: 6e 5d 3d 66 3b 79 5b 66 5d 3d 6e 3b 76 61 72 20  n]=f;y[f]=n;var 
6e50: 74 3d 67 5b 6e 5d 2c 44 3d 67 5b 74 5d 2c 45 3d  t=g[n],D=g[t],E=
6e60: 67 5b 44 5d 2c 62 3d 32 35 37 2a 67 5b 66 5d 5e  g[D],b=257*g[f]^
6e70: 31 36 38 34 33 30 30 38 2a 66 3b 7a 5b 6e 5d 3d  16843008*f;z[n]=
6e80: 62 3c 3c 32 34 7c 62 3e 3e 3e 38 3b 41 5b 6e 5d  b<<24|b>>>8;A[n]
6e90: 3d 62 3c 3c 31 36 7c 62 3e 3e 3e 31 36 3b 42 5b  =b<<16|b>>>16;B[
6ea0: 6e 5d 3d 62 3c 3c 38 7c 62 3e 3e 3e 32 34 3b 43  n]=b<<8|b>>>24;C
6eb0: 5b 6e 5d 3d 62 3b 62 3d 31 36 38 34 33 30 30 39  [n]=b;b=16843009
6ec0: 2a 45 5e 36 35 35 33 37 2a 44 5e 32 35 37 2a 74  *E^65537*D^257*t
6ed0: 5e 31 36 38 34 33 30 30 38 2a 6e 3b 73 5b 66 5d  ^16843008*n;s[f]
6ee0: 3d 62 3c 3c 32 34 7c 62 3e 3e 3e 38 3b 75 5b 66  =b<<24|b>>>8;u[f
6ef0: 5d 3d 62 3c 3c 31 36 7c 62 3e 3e 3e 31 36 3b 76  ]=b<<16|b>>>16;v
6f00: 5b 66 5d 3d 62 3c 3c 38 7c 62 3e 3e 3e 32 34 3b  [f]=b<<8|b>>>24;
6f10: 77 5b 66 5d 3d 62 3b 6e 3f 28 6e 3d 74 5e 67 5b  w[f]=b;n?(n=t^g[
6f20: 67 5b 67 5b 45 5e 74 5d 5d 5d 2c 6c 5e 3d 67 5b  g[g[E^t]]],l^=g[
6f30: 67 5b 6c 5d 5d 29 3a 6e 3d 6c 3d 31 7d 76 61 72  g[l]]):n=l=1}var
6f40: 20 46 3d 5b 30 2c 31 2c 32 2c 34 2c 38 2c 0a 31   F=[0,1,2,4,8,.1
6f50: 36 2c 33 32 2c 36 34 2c 31 32 38 2c 32 37 2c 35  6,32,64,128,27,5
6f60: 34 5d 2c 72 3d 72 2e 41 45 53 3d 78 2e 65 78 74  4],r=r.AES=x.ext
6f70: 65 6e 64 28 7b 5f 64 6f 52 65 73 65 74 3a 66 75  end({_doReset:fu
6f80: 6e 63 74 69 6f 6e 28 29 7b 66 6f 72 28 76 61 72  nction(){for(var
6f90: 20 63 3d 74 68 69 73 2e 5f 6b 65 79 2c 65 3d 63   c=this._key,e=c
6fa0: 2e 77 6f 72 64 73 2c 61 3d 63 2e 73 69 67 42 79  .words,a=c.sigBy
6fb0: 74 65 73 2f 34 2c 63 3d 34 2a 28 28 74 68 69 73  tes/4,c=4*((this
6fc0: 2e 5f 6e 52 6f 75 6e 64 73 3d 61 2b 36 29 2b 31  ._nRounds=a+6)+1
6fd0: 29 2c 62 3d 74 68 69 73 2e 5f 6b 65 79 53 63 68  ),b=this._keySch
6fe0: 65 64 75 6c 65 3d 5b 5d 2c 68 3d 30 3b 68 3c 63  edule=[],h=0;h<c
6ff0: 3b 68 2b 2b 29 69 66 28 68 3c 61 29 62 5b 68 5d  ;h++)if(h<a)b[h]
7000: 3d 65 5b 68 5d 3b 65 6c 73 65 7b 76 61 72 20 64  =e[h];else{var d
7010: 3d 62 5b 68 2d 31 5d 3b 68 25 61 3f 36 3c 61 26  =b[h-1];h%a?6<a&
7020: 26 34 3d 3d 68 25 61 26 26 28 64 3d 6a 5b 64 3e  &4==h%a&&(d=j[d>
7030: 3e 3e 32 34 5d 3c 3c 32 34 7c 6a 5b 64 3e 3e 3e  >>24]<<24|j[d>>>
7040: 31 36 26 32 35 35 5d 3c 3c 31 36 7c 6a 5b 64 3e  16&255]<<16|j[d>
7050: 3e 3e 38 26 32 35 35 5d 3c 3c 38 7c 6a 5b 64 26  >>8&255]<<8|j[d&
7060: 32 35 35 5d 29 3a 28 64 3d 64 3c 3c 38 7c 64 3e  255]):(d=d<<8|d>
7070: 3e 3e 32 34 2c 64 3d 6a 5b 64 3e 3e 3e 32 34 5d  >>24,d=j[d>>>24]
7080: 3c 3c 32 34 7c 6a 5b 64 3e 3e 3e 31 36 26 32 35  <<24|j[d>>>16&25
7090: 35 5d 3c 3c 31 36 7c 6a 5b 64 3e 3e 3e 38 26 32  5]<<16|j[d>>>8&2
70a0: 35 35 5d 3c 3c 38 7c 6a 5b 64 26 32 35 35 5d 2c  55]<<8|j[d&255],
70b0: 64 5e 3d 46 5b 68 2f 61 7c 30 5d 3c 3c 32 34 29  d^=F[h/a|0]<<24)
70c0: 3b 62 5b 68 5d 3d 62 5b 68 2d 61 5d 5e 64 7d 65  ;b[h]=b[h-a]^d}e
70d0: 3d 74 68 69 73 2e 5f 69 6e 76 4b 65 79 53 63 68  =this._invKeySch
70e0: 65 64 75 6c 65 3d 5b 5d 3b 66 6f 72 28 61 3d 30  edule=[];for(a=0
70f0: 3b 61 3c 63 3b 61 2b 2b 29 68 3d 63 2d 61 2c 64  ;a<c;a++)h=c-a,d
7100: 3d 61 25 34 3f 62 5b 68 5d 3a 62 5b 68 2d 34 5d  =a%4?b[h]:b[h-4]
7110: 2c 65 5b 61 5d 3d 34 3e 61 7c 7c 34 3e 3d 68 3f  ,e[a]=4>a||4>=h?
7120: 64 3a 73 5b 6a 5b 64 3e 3e 3e 32 34 5d 5d 5e 75  d:s[j[d>>>24]]^u
7130: 5b 6a 5b 64 3e 3e 3e 31 36 26 32 35 35 5d 5d 5e  [j[d>>>16&255]]^
7140: 76 5b 6a 5b 64 3e 3e 3e 0a 38 26 32 35 35 5d 5d  v[j[d>>>.8&255]]
7150: 5e 77 5b 6a 5b 64 26 32 35 35 5d 5d 7d 2c 65 6e  ^w[j[d&255]]},en
7160: 63 72 79 70 74 42 6c 6f 63 6b 3a 66 75 6e 63 74  cryptBlock:funct
7170: 69 6f 6e 28 63 2c 65 29 7b 74 68 69 73 2e 5f 64  ion(c,e){this._d
7180: 6f 43 72 79 70 74 42 6c 6f 63 6b 28 63 2c 65 2c  oCryptBlock(c,e,
7190: 74 68 69 73 2e 5f 6b 65 79 53 63 68 65 64 75 6c  this._keySchedul
71a0: 65 2c 7a 2c 41 2c 42 2c 43 2c 6a 29 7d 2c 64 65  e,z,A,B,C,j)},de
71b0: 63 72 79 70 74 42 6c 6f 63 6b 3a 66 75 6e 63 74  cryptBlock:funct
71c0: 69 6f 6e 28 63 2c 65 29 7b 76 61 72 20 61 3d 63  ion(c,e){var a=c
71d0: 5b 65 2b 31 5d 3b 63 5b 65 2b 31 5d 3d 63 5b 65  [e+1];c[e+1]=c[e
71e0: 2b 33 5d 3b 63 5b 65 2b 33 5d 3d 61 3b 74 68 69  +3];c[e+3]=a;thi
71f0: 73 2e 5f 64 6f 43 72 79 70 74 42 6c 6f 63 6b 28  s._doCryptBlock(
7200: 63 2c 65 2c 74 68 69 73 2e 5f 69 6e 76 4b 65 79  c,e,this._invKey
7210: 53 63 68 65 64 75 6c 65 2c 73 2c 75 2c 76 2c 77  Schedule,s,u,v,w
7220: 2c 79 29 3b 61 3d 63 5b 65 2b 31 5d 3b 63 5b 65  ,y);a=c[e+1];c[e
7230: 2b 31 5d 3d 63 5b 65 2b 33 5d 3b 63 5b 65 2b 33  +1]=c[e+3];c[e+3
7240: 5d 3d 61 7d 2c 5f 64 6f 43 72 79 70 74 42 6c 6f  ]=a},_doCryptBlo
7250: 63 6b 3a 66 75 6e 63 74 69 6f 6e 28 63 2c 65 2c  ck:function(c,e,
7260: 61 2c 62 2c 68 2c 64 2c 6a 2c 6d 29 7b 66 6f 72  a,b,h,d,j,m){for
7270: 28 76 61 72 20 6e 3d 74 68 69 73 2e 5f 6e 52 6f  (var n=this._nRo
7280: 75 6e 64 73 2c 66 3d 63 5b 65 5d 5e 61 5b 30 5d  unds,f=c[e]^a[0]
7290: 2c 67 3d 63 5b 65 2b 31 5d 5e 61 5b 31 5d 2c 6b  ,g=c[e+1]^a[1],k
72a0: 3d 63 5b 65 2b 32 5d 5e 61 5b 32 5d 2c 70 3d 63  =c[e+2]^a[2],p=c
72b0: 5b 65 2b 33 5d 5e 61 5b 33 5d 2c 6c 3d 34 2c 74  [e+3]^a[3],l=4,t
72c0: 3d 31 3b 74 3c 6e 3b 74 2b 2b 29 76 61 72 20 71  =1;t<n;t++)var q
72d0: 3d 62 5b 66 3e 3e 3e 32 34 5d 5e 68 5b 67 3e 3e  =b[f>>>24]^h[g>>
72e0: 3e 31 36 26 32 35 35 5d 5e 64 5b 6b 3e 3e 3e 38  >16&255]^d[k>>>8
72f0: 26 32 35 35 5d 5e 6a 5b 70 26 32 35 35 5d 5e 61  &255]^j[p&255]^a
7300: 5b 6c 2b 2b 5d 2c 72 3d 62 5b 67 3e 3e 3e 32 34  [l++],r=b[g>>>24
7310: 5d 5e 68 5b 6b 3e 3e 3e 31 36 26 32 35 35 5d 5e  ]^h[k>>>16&255]^
7320: 64 5b 70 3e 3e 3e 38 26 32 35 35 5d 5e 6a 5b 66  d[p>>>8&255]^j[f
7330: 26 32 35 35 5d 5e 61 5b 6c 2b 2b 5d 2c 73 3d 0a  &255]^a[l++],s=.
7340: 62 5b 6b 3e 3e 3e 32 34 5d 5e 68 5b 70 3e 3e 3e  b[k>>>24]^h[p>>>
7350: 31 36 26 32 35 35 5d 5e 64 5b 66 3e 3e 3e 38 26  16&255]^d[f>>>8&
7360: 32 35 35 5d 5e 6a 5b 67 26 32 35 35 5d 5e 61 5b  255]^j[g&255]^a[
7370: 6c 2b 2b 5d 2c 70 3d 62 5b 70 3e 3e 3e 32 34 5d  l++],p=b[p>>>24]
7380: 5e 68 5b 66 3e 3e 3e 31 36 26 32 35 35 5d 5e 64  ^h[f>>>16&255]^d
7390: 5b 67 3e 3e 3e 38 26 32 35 35 5d 5e 6a 5b 6b 26  [g>>>8&255]^j[k&
73a0: 32 35 35 5d 5e 61 5b 6c 2b 2b 5d 2c 66 3d 71 2c  255]^a[l++],f=q,
73b0: 67 3d 72 2c 6b 3d 73 3b 71 3d 28 6d 5b 66 3e 3e  g=r,k=s;q=(m[f>>
73c0: 3e 32 34 5d 3c 3c 32 34 7c 6d 5b 67 3e 3e 3e 31  >24]<<24|m[g>>>1
73d0: 36 26 32 35 35 5d 3c 3c 31 36 7c 6d 5b 6b 3e 3e  6&255]<<16|m[k>>
73e0: 3e 38 26 32 35 35 5d 3c 3c 38 7c 6d 5b 70 26 32  >8&255]<<8|m[p&2
73f0: 35 35 5d 29 5e 61 5b 6c 2b 2b 5d 3b 72 3d 28 6d  55])^a[l++];r=(m
7400: 5b 67 3e 3e 3e 32 34 5d 3c 3c 32 34 7c 6d 5b 6b  [g>>>24]<<24|m[k
7410: 3e 3e 3e 31 36 26 32 35 35 5d 3c 3c 31 36 7c 6d  >>>16&255]<<16|m
7420: 5b 70 3e 3e 3e 38 26 32 35 35 5d 3c 3c 38 7c 6d  [p>>>8&255]<<8|m
7430: 5b 66 26 32 35 35 5d 29 5e 61 5b 6c 2b 2b 5d 3b  [f&255])^a[l++];
7440: 73 3d 28 6d 5b 6b 3e 3e 3e 32 34 5d 3c 3c 32 34  s=(m[k>>>24]<<24
7450: 7c 6d 5b 70 3e 3e 3e 31 36 26 32 35 35 5d 3c 3c  |m[p>>>16&255]<<
7460: 31 36 7c 6d 5b 66 3e 3e 3e 38 26 32 35 35 5d 3c  16|m[f>>>8&255]<
7470: 3c 38 7c 6d 5b 67 26 32 35 35 5d 29 5e 61 5b 6c  <8|m[g&255])^a[l
7480: 2b 2b 5d 3b 70 3d 28 6d 5b 70 3e 3e 3e 32 34 5d  ++];p=(m[p>>>24]
7490: 3c 3c 32 34 7c 6d 5b 66 3e 3e 3e 31 36 26 32 35  <<24|m[f>>>16&25
74a0: 35 5d 3c 3c 31 36 7c 6d 5b 67 3e 3e 3e 38 26 32  5]<<16|m[g>>>8&2
74b0: 35 35 5d 3c 3c 38 7c 6d 5b 6b 26 32 35 35 5d 29  55]<<8|m[k&255])
74c0: 5e 61 5b 6c 2b 2b 5d 3b 63 5b 65 5d 3d 71 3b 63  ^a[l++];c[e]=q;c
74d0: 5b 65 2b 31 5d 3d 72 3b 63 5b 65 2b 32 5d 3d 73  [e+1]=r;c[e+2]=s
74e0: 3b 63 5b 65 2b 33 5d 3d 70 7d 2c 6b 65 79 53 69  ;c[e+3]=p},keySi
74f0: 7a 65 3a 38 7d 29 3b 71 2e 41 45 53 3d 78 2e 5f  ze:8});q.AES=x._
7500: 63 72 65 61 74 65 48 65 6c 70 65 72 28 72 29 7d  createHelper(r)}
7510: 29 28 29 3b 0a 0a 2f 2a 0a 43 72 79 70 74 6f 4a  )();../*.CryptoJ
7520: 53 20 76 33 2e 31 2e 32 20 74 72 69 70 6c 65 64  S v3.1.2 tripled
7530: 65 73 2d 6d 69 6e 2e 6a 73 0a 63 6f 64 65 2e 67  es-min.js.code.g
7540: 6f 6f 67 6c 65 2e 63 6f 6d 2f 70 2f 63 72 79 70  oogle.com/p/cryp
7550: 74 6f 2d 6a 73 0a 28 63 29 20 32 30 30 39 2d 32  to-js.(c) 2009-2
7560: 30 31 33 20 62 79 20 4a 65 66 66 20 4d 6f 74 74  013 by Jeff Mott
7570: 2e 20 41 6c 6c 20 72 69 67 68 74 73 20 72 65 73  . All rights res
7580: 65 72 76 65 64 2e 0a 63 6f 64 65 2e 67 6f 6f 67  erved..code.goog
7590: 6c 65 2e 63 6f 6d 2f 70 2f 63 72 79 70 74 6f 2d  le.com/p/crypto-
75a0: 6a 73 2f 77 69 6b 69 2f 4c 69 63 65 6e 73 65 0a  js/wiki/License.
75b0: 2a 2f 0a 28 66 75 6e 63 74 69 6f 6e 28 29 7b 66  */.(function(){f
75c0: 75 6e 63 74 69 6f 6e 20 6a 28 62 2c 63 29 7b 76  unction j(b,c){v
75d0: 61 72 20 61 3d 28 74 68 69 73 2e 5f 6c 42 6c 6f  ar a=(this._lBlo
75e0: 63 6b 3e 3e 3e 62 5e 74 68 69 73 2e 5f 72 42 6c  ck>>>b^this._rBl
75f0: 6f 63 6b 29 26 63 3b 74 68 69 73 2e 5f 72 42 6c  ock)&c;this._rBl
7600: 6f 63 6b 5e 3d 61 3b 74 68 69 73 2e 5f 6c 42 6c  ock^=a;this._lBl
7610: 6f 63 6b 5e 3d 61 3c 3c 62 7d 66 75 6e 63 74 69  ock^=a<<b}functi
7620: 6f 6e 20 6c 28 62 2c 63 29 7b 76 61 72 20 61 3d  on l(b,c){var a=
7630: 28 74 68 69 73 2e 5f 72 42 6c 6f 63 6b 3e 3e 3e  (this._rBlock>>>
7640: 62 5e 74 68 69 73 2e 5f 6c 42 6c 6f 63 6b 29 26  b^this._lBlock)&
7650: 63 3b 74 68 69 73 2e 5f 6c 42 6c 6f 63 6b 5e 3d  c;this._lBlock^=
7660: 61 3b 74 68 69 73 2e 5f 72 42 6c 6f 63 6b 5e 3d  a;this._rBlock^=
7670: 61 3c 3c 62 7d 76 61 72 20 68 3d 43 72 79 70 74  a<<b}var h=Crypt
7680: 6f 4a 53 2c 65 3d 68 2e 6c 69 62 2c 6e 3d 65 2e  oJS,e=h.lib,n=e.
7690: 57 6f 72 64 41 72 72 61 79 2c 65 3d 65 2e 42 6c  WordArray,e=e.Bl
76a0: 6f 63 6b 43 69 70 68 65 72 2c 67 3d 68 2e 61 6c  ockCipher,g=h.al
76b0: 67 6f 2c 71 3d 5b 35 37 2c 34 39 2c 34 31 2c 33  go,q=[57,49,41,3
76c0: 33 2c 32 35 2c 31 37 2c 39 2c 31 2c 35 38 2c 35  3,25,17,9,1,58,5
76d0: 30 2c 34 32 2c 33 34 2c 32 36 2c 31 38 2c 31 30  0,42,34,26,18,10
76e0: 2c 32 2c 35 39 2c 35 31 2c 34 33 2c 33 35 2c 32  ,2,59,51,43,35,2
76f0: 37 2c 31 39 2c 31 31 2c 33 2c 36 30 2c 35 32 2c  7,19,11,3,60,52,
7700: 34 34 2c 33 36 2c 36 33 2c 35 35 2c 34 37 2c 33  44,36,63,55,47,3
7710: 39 2c 33 31 2c 32 33 2c 31 35 2c 37 2c 36 32 2c  9,31,23,15,7,62,
7720: 35 34 2c 34 36 2c 33 38 2c 33 30 2c 32 32 2c 31  54,46,38,30,22,1
7730: 34 2c 36 2c 36 31 2c 35 33 2c 34 35 2c 33 37 2c  4,6,61,53,45,37,
7740: 32 39 2c 32 31 2c 31 33 2c 35 2c 32 38 2c 32 30  29,21,13,5,28,20
7750: 2c 31 32 2c 34 5d 2c 70 3d 5b 31 34 2c 31 37 2c  ,12,4],p=[14,17,
7760: 31 31 2c 32 34 2c 31 2c 35 2c 33 2c 32 38 2c 31  11,24,1,5,3,28,1
7770: 35 2c 36 2c 32 31 2c 31 30 2c 32 33 2c 31 39 2c  5,6,21,10,23,19,
7780: 31 32 2c 34 2c 32 36 2c 38 2c 31 36 2c 37 2c 32  12,4,26,8,16,7,2
7790: 37 2c 32 30 2c 31 33 2c 32 2c 34 31 2c 35 32 2c  7,20,13,2,41,52,
77a0: 33 31 2c 33 37 2c 34 37 2c 0a 35 35 2c 33 30 2c  31,37,47,.55,30,
77b0: 34 30 2c 35 31 2c 34 35 2c 33 33 2c 34 38 2c 34  40,51,45,33,48,4
77c0: 34 2c 34 39 2c 33 39 2c 35 36 2c 33 34 2c 35 33  4,49,39,56,34,53
77d0: 2c 34 36 2c 34 32 2c 35 30 2c 33 36 2c 32 39 2c  ,46,42,50,36,29,
77e0: 33 32 5d 2c 72 3d 5b 31 2c 32 2c 34 2c 36 2c 38  32],r=[1,2,4,6,8
77f0: 2c 31 30 2c 31 32 2c 31 34 2c 31 35 2c 31 37 2c  ,10,12,14,15,17,
7800: 31 39 2c 32 31 2c 32 33 2c 32 35 2c 32 37 2c 32  19,21,23,25,27,2
7810: 38 5d 2c 73 3d 5b 7b 22 30 22 3a 38 34 32 31 38  8],s=[{"0":84218
7820: 38 38 2c 32 36 38 34 33 35 34 35 36 3a 33 32 37  88,268435456:327
7830: 36 38 2c 35 33 36 38 37 30 39 31 32 3a 38 34 32  68,536870912:842
7840: 31 33 37 38 2c 38 30 35 33 30 36 33 36 38 3a 32  1378,805306368:2
7850: 2c 31 30 37 33 37 34 31 38 32 34 3a 35 31 32 2c  ,1073741824:512,
7860: 31 33 34 32 31 37 37 32 38 30 3a 38 34 32 31 38  1342177280:84218
7870: 39 30 2c 31 36 31 30 36 31 32 37 33 36 3a 38 33  90,1610612736:83
7880: 38 39 31 32 32 2c 31 38 37 39 30 34 38 31 39 32  89122,1879048192
7890: 3a 38 33 38 38 36 30 38 2c 32 31 34 37 34 38 33  :8388608,2147483
78a0: 36 34 38 3a 35 31 34 2c 32 34 31 35 39 31 39 31  648:514,24159191
78b0: 30 34 3a 38 33 38 39 31 32 30 2c 32 36 38 34 33  04:8389120,26843
78c0: 35 34 35 36 30 3a 33 33 32 38 30 2c 32 39 35 32  54560:33280,2952
78d0: 37 39 30 30 31 36 3a 38 34 32 31 33 37 36 2c 33  790016:8421376,3
78e0: 32 32 31 32 32 35 34 37 32 3a 33 32 37 37 30 2c  221225472:32770,
78f0: 33 34 38 39 36 36 30 39 32 38 3a 38 33 38 38 36  3489660928:83886
7900: 31 30 2c 33 37 35 38 30 39 36 33 38 34 3a 30 2c  10,3758096384:0,
7910: 34 30 32 36 35 33 31 38 34 30 3a 33 33 32 38 32  4026531840:33282
7920: 2c 31 33 34 32 31 37 37 32 38 3a 30 2c 34 30 32  ,134217728:0,402
7930: 36 35 33 31 38 34 3a 38 34 32 31 38 39 30 2c 36  653184:8421890,6
7940: 37 31 30 38 38 36 34 30 3a 33 33 32 38 32 2c 39  71088640:33282,9
7950: 33 39 35 32 34 30 39 36 3a 33 32 37 36 38 2c 31  39524096:32768,1
7960: 32 30 37 39 35 39 35 35 32 3a 38 34 32 31 38 38  207959552:842188
7970: 38 2c 31 34 37 36 33 39 35 30 30 38 3a 35 31 32  8,1476395008:512
7980: 2c 31 37 34 34 38 33 30 34 36 34 3a 38 34 32 31  ,1744830464:8421
7990: 33 37 38 2c 32 30 31 33 32 36 35 39 32 30 3a 32  378,2013265920:2
79a0: 2c 0a 32 32 38 31 37 30 31 33 37 36 3a 38 33 38  ,.2281701376:838
79b0: 39 31 32 30 2c 32 35 35 30 31 33 36 38 33 32 3a  9120,2550136832:
79c0: 33 33 32 38 30 2c 32 38 31 38 35 37 32 32 38 38  33280,2818572288
79d0: 3a 38 34 32 31 33 37 36 2c 33 30 38 37 30 30 37  :8421376,3087007
79e0: 37 34 34 3a 38 33 38 39 31 32 32 2c 33 33 35 35  744:8389122,3355
79f0: 34 34 33 32 30 30 3a 38 33 38 38 36 31 30 2c 33  443200:8388610,3
7a00: 36 32 33 38 37 38 36 35 36 3a 33 32 37 37 30 2c  623878656:32770,
7a10: 33 38 39 32 33 31 34 31 31 32 3a 35 31 34 2c 34  3892314112:514,4
7a20: 31 36 30 37 34 39 35 36 38 3a 38 33 38 38 36 30  160749568:838860
7a30: 38 2c 31 3a 33 32 37 36 38 2c 32 36 38 34 33 35  8,1:32768,268435
7a40: 34 35 37 3a 32 2c 35 33 36 38 37 30 39 31 33 3a  457:2,536870913:
7a50: 38 34 32 31 38 38 38 2c 38 30 35 33 30 36 33 36  8421888,80530636
7a60: 39 3a 38 33 38 38 36 30 38 2c 31 30 37 33 37 34  9:8388608,107374
7a70: 31 38 32 35 3a 38 34 32 31 33 37 38 2c 31 33 34  1825:8421378,134
7a80: 32 31 37 37 32 38 31 3a 33 33 32 38 30 2c 31 36  2177281:33280,16
7a90: 31 30 36 31 32 37 33 37 3a 35 31 32 2c 31 38 37  10612737:512,187
7aa0: 39 30 34 38 31 39 33 3a 38 33 38 39 31 32 32 2c  9048193:8389122,
7ab0: 32 31 34 37 34 38 33 36 34 39 3a 38 34 32 31 38  2147483649:84218
7ac0: 39 30 2c 32 34 31 35 39 31 39 31 30 35 3a 38 34  90,2415919105:84
7ad0: 32 31 33 37 36 2c 32 36 38 34 33 35 34 35 36 31  21376,2684354561
7ae0: 3a 38 33 38 38 36 31 30 2c 32 39 35 32 37 39 30  :8388610,2952790
7af0: 30 31 37 3a 33 33 32 38 32 2c 33 32 32 31 32 32  017:33282,322122
7b00: 35 34 37 33 3a 35 31 34 2c 33 34 38 39 36 36 30  5473:514,3489660
7b10: 39 32 39 3a 38 33 38 39 31 32 30 2c 33 37 35 38  929:8389120,3758
7b20: 30 39 36 33 38 35 3a 33 32 37 37 30 2c 34 30 32  096385:32770,402
7b30: 36 35 33 31 38 34 31 3a 30 2c 31 33 34 32 31 37  6531841:0,134217
7b40: 37 32 39 3a 38 34 32 31 38 39 30 2c 34 30 32 36  729:8421890,4026
7b50: 35 33 31 38 35 3a 38 34 32 31 33 37 36 2c 36 37  53185:8421376,67
7b60: 31 30 38 38 36 34 31 3a 38 33 38 38 36 30 38 2c  1088641:8388608,
7b70: 39 33 39 35 32 34 30 39 37 3a 35 31 32 2c 31 32  939524097:512,12
7b80: 30 37 39 35 39 35 35 33 3a 33 32 37 36 38 2c 31  07959553:32768,1
7b90: 34 37 36 33 39 35 30 30 39 3a 38 33 38 38 36 31  476395009:838861
7ba0: 30 2c 0a 31 37 34 34 38 33 30 34 36 35 3a 32 2c  0,.1744830465:2,
7bb0: 32 30 31 33 32 36 35 39 32 31 3a 33 33 32 38 32  2013265921:33282
7bc0: 2c 32 32 38 31 37 30 31 33 37 37 3a 33 32 37 37  ,2281701377:3277
7bd0: 30 2c 32 35 35 30 31 33 36 38 33 33 3a 38 33 38  0,2550136833:838
7be0: 39 31 32 32 2c 32 38 31 38 35 37 32 32 38 39 3a  9122,2818572289:
7bf0: 35 31 34 2c 33 30 38 37 30 30 37 37 34 35 3a 38  514,3087007745:8
7c00: 34 32 31 38 38 38 2c 33 33 35 35 34 34 33 32 30  421888,335544320
7c10: 31 3a 38 33 38 39 31 32 30 2c 33 36 32 33 38 37  1:8389120,362387
7c20: 38 36 35 37 3a 30 2c 33 38 39 32 33 31 34 31 31  8657:0,389231411
7c30: 33 3a 33 33 32 38 30 2c 34 31 36 30 37 34 39 35  3:33280,41607495
7c40: 36 39 3a 38 34 32 31 33 37 38 7d 2c 7b 22 30 22  69:8421378},{"0"
7c50: 3a 31 30 37 34 32 38 32 35 31 32 2c 31 36 37 37  :1074282512,1677
7c60: 37 32 31 36 3a 31 36 33 38 34 2c 33 33 35 35 34  7216:16384,33554
7c70: 34 33 32 3a 35 32 34 32 38 38 2c 35 30 33 33 31  432:524288,50331
7c80: 36 34 38 3a 31 30 37 34 32 36 36 31 32 38 2c 36  648:1074266128,6
7c90: 37 31 30 38 38 36 34 3a 31 30 37 33 37 34 31 38  7108864:10737418
7ca0: 34 30 2c 38 33 38 38 36 30 38 30 3a 31 30 37 34  40,83886080:1074
7cb0: 32 38 32 34 39 36 2c 31 30 30 36 36 33 32 39 36  282496,100663296
7cc0: 3a 31 30 37 33 37 35 38 32 30 38 2c 31 31 37 34  :1073758208,1174
7cd0: 34 30 35 31 32 3a 31 36 2c 31 33 34 32 31 37 37  40512:16,1342177
7ce0: 32 38 3a 35 34 30 36 37 32 2c 31 35 30 39 39 34  28:540672,150994
7cf0: 39 34 34 3a 31 30 37 33 37 35 38 32 32 34 2c 31  944:1073758224,1
7d00: 36 37 37 37 32 31 36 30 3a 31 30 37 33 37 34 31  67772160:1073741
7d10: 38 32 34 2c 31 38 34 35 34 39 33 37 36 3a 35 34  824,184549376:54
7d20: 30 36 38 38 2c 32 30 31 33 32 36 35 39 32 3a 35  0688,201326592:5
7d30: 32 34 33 30 34 2c 32 31 38 31 30 33 38 30 38 3a  24304,218103808:
7d40: 30 2c 32 33 34 38 38 31 30 32 34 3a 31 36 34 30  0,234881024:1640
7d50: 30 2c 32 35 31 36 35 38 32 34 30 3a 31 30 37 34  0,251658240:1074
7d60: 32 36 36 31 31 32 2c 38 33 38 38 36 30 38 3a 31  266112,8388608:1
7d70: 30 37 33 37 35 38 32 30 38 2c 32 35 31 36 35 38  073758208,251658
7d80: 32 34 3a 35 34 30 36 38 38 2c 34 31 39 34 33 30  24:540688,419430
7d90: 34 30 3a 31 36 2c 35 38 37 32 30 32 35 36 3a 31  40:16,58720256:1
7da0: 30 37 33 37 35 38 32 32 34 2c 0a 37 35 34 39 37  073758224,.75497
7db0: 34 37 32 3a 31 30 37 34 32 38 32 35 31 32 2c 39  472:1074282512,9
7dc0: 32 32 37 34 36 38 38 3a 31 30 37 33 37 34 31 38  2274688:10737418
7dd0: 32 34 2c 31 30 39 30 35 31 39 30 34 3a 35 32 34  24,109051904:524
7de0: 32 38 38 2c 31 32 35 38 32 39 31 32 30 3a 31 30  288,125829120:10
7df0: 37 34 32 36 36 31 32 38 2c 31 34 32 36 30 36 33  74266128,1426063
7e00: 33 36 3a 35 32 34 33 30 34 2c 31 35 39 33 38 33  36:524304,159383
7e10: 35 35 32 3a 30 2c 31 37 36 31 36 30 37 36 38 3a  552:0,176160768:
7e20: 31 36 33 38 34 2c 31 39 32 39 33 37 39 38 34 3a  16384,192937984:
7e30: 31 30 37 34 32 36 36 31 31 32 2c 32 30 39 37 31  1074266112,20971
7e40: 35 32 30 30 3a 31 30 37 33 37 34 31 38 34 30 2c  5200:1073741840,
7e50: 32 32 36 34 39 32 34 31 36 3a 35 34 30 36 37 32  226492416:540672
7e60: 2c 32 34 33 32 36 39 36 33 32 3a 31 30 37 34 32  ,243269632:10742
7e70: 38 32 34 39 36 2c 32 36 30 30 34 36 38 34 38 3a  82496,260046848:
7e80: 31 36 34 30 30 2c 32 36 38 34 33 35 34 35 36 3a  16400,268435456:
7e90: 30 2c 32 38 35 32 31 32 36 37 32 3a 31 30 37 34  0,285212672:1074
7ea0: 32 36 36 31 32 38 2c 33 30 31 39 38 39 38 38 38  266128,301989888
7eb0: 3a 31 30 37 33 37 35 38 32 32 34 2c 33 31 38 37  :1073758224,3187
7ec0: 36 37 31 30 34 3a 31 30 37 34 32 38 32 34 39 36  67104:1074282496
7ed0: 2c 33 33 35 35 34 34 33 32 30 3a 31 30 37 34 32  ,335544320:10742
7ee0: 36 36 31 31 32 2c 33 35 32 33 32 31 35 33 36 3a  66112,352321536:
7ef0: 31 36 2c 33 36 39 30 39 38 37 35 32 3a 35 34 30  16,369098752:540
7f00: 36 38 38 2c 33 38 35 38 37 35 39 36 38 3a 31 36  688,385875968:16
7f10: 33 38 34 2c 34 30 32 36 35 33 31 38 34 3a 31 36  384,402653184:16
7f20: 34 30 30 2c 34 31 39 34 33 30 34 30 30 3a 35 32  400,419430400:52
7f30: 34 32 38 38 2c 34 33 36 32 30 37 36 31 36 3a 35  4288,436207616:5
7f40: 32 34 33 30 34 2c 34 35 32 39 38 34 38 33 32 3a  24304,452984832:
7f50: 31 30 37 33 37 34 31 38 34 30 2c 34 36 39 37 36  1073741840,46976
7f60: 32 30 34 38 3a 35 34 30 36 37 32 2c 34 38 36 35  2048:540672,4865
7f70: 33 39 32 36 34 3a 31 30 37 33 37 35 38 32 30 38  39264:1073758208
7f80: 2c 35 30 33 33 31 36 34 38 30 3a 31 30 37 33 37  ,503316480:10737
7f90: 34 31 38 32 34 2c 35 32 30 30 39 33 36 39 36 3a  41824,520093696:
7fa0: 31 30 37 34 32 38 32 35 31 32 2c 0a 32 37 36 38  1074282512,.2768
7fb0: 32 34 30 36 34 3a 35 34 30 36 38 38 2c 32 39 33  24064:540688,293
7fc0: 36 30 31 32 38 30 3a 35 32 34 32 38 38 2c 33 31  601280:524288,31
7fd0: 30 33 37 38 34 39 36 3a 31 30 37 34 32 36 36 31  0378496:10742661
7fe0: 31 32 2c 33 32 37 31 35 35 37 31 32 3a 31 36 33  12,327155712:163
7ff0: 38 34 2c 33 34 33 39 33 32 39 32 38 3a 31 30 37  84,343932928:107
8000: 33 37 35 38 32 30 38 2c 33 36 30 37 31 30 31 34  3758208,36071014
8010: 34 3a 31 30 37 34 32 38 32 35 31 32 2c 33 37 37  4:1074282512,377
8020: 34 38 37 33 36 30 3a 31 36 2c 33 39 34 32 36 34  487360:16,394264
8030: 35 37 36 3a 31 30 37 33 37 34 31 38 32 34 2c 34  576:1073741824,4
8040: 31 31 30 34 31 37 39 32 3a 31 30 37 34 32 38 32  11041792:1074282
8050: 34 39 36 2c 34 32 37 38 31 39 30 30 38 3a 31 30  496,427819008:10
8060: 37 33 37 34 31 38 34 30 2c 34 34 34 35 39 36 32  73741840,4445962
8070: 32 34 3a 31 30 37 33 37 35 38 32 32 34 2c 34 36  24:1073758224,46
8080: 31 33 37 33 34 34 30 3a 35 32 34 33 30 34 2c 34  1373440:524304,4
8090: 37 38 31 35 30 36 35 36 3a 30 2c 34 39 34 39 32  78150656:0,49492
80a0: 37 38 37 32 3a 31 36 34 30 30 2c 35 31 31 37 30  7872:16400,51170
80b0: 35 30 38 38 3a 31 30 37 34 32 36 36 31 32 38 2c  5088:1074266128,
80c0: 35 32 38 34 38 32 33 30 34 3a 35 34 30 36 37 32  528482304:540672
80d0: 7d 2c 7b 22 30 22 3a 32 36 30 2c 31 30 34 38 35  },{"0":260,10485
80e0: 37 36 3a 30 2c 32 30 39 37 31 35 32 3a 36 37 31  76:0,2097152:671
80f0: 30 39 31 32 30 2c 33 31 34 35 37 32 38 3a 36 35  09120,3145728:65
8100: 37 39 36 2c 34 31 39 34 33 30 34 3a 36 35 35 34  796,4194304:6554
8110: 30 2c 35 32 34 32 38 38 30 3a 36 37 31 30 38 38  0,5242880:671088
8120: 36 38 2c 36 32 39 31 34 35 36 3a 36 37 31 37 34  68,6291456:67174
8130: 36 36 30 2c 37 33 34 30 30 33 32 3a 36 37 31 37  660,7340032:6717
8140: 34 34 30 30 2c 38 33 38 38 36 30 38 3a 36 37 31  4400,8388608:671
8150: 30 38 38 36 34 2c 39 34 33 37 31 38 34 3a 36 37  08864,9437184:67
8160: 31 37 34 36 35 36 2c 31 30 34 38 35 37 36 30 3a  174656,10485760:
8170: 36 35 37 39 32 2c 31 31 35 33 34 33 33 36 3a 36  65792,11534336:6
8180: 37 31 37 34 34 30 34 2c 31 32 35 38 32 39 31 32  7174404,12582912
8190: 3a 36 37 31 30 39 31 32 34 2c 31 33 36 33 31 34  :67109124,136314
81a0: 38 38 3a 36 35 35 33 36 2c 0a 31 34 36 38 30 30  88:65536,.146800
81b0: 36 34 3a 34 2c 31 35 37 32 38 36 34 30 3a 32 35  64:4,15728640:25
81c0: 36 2c 35 32 34 32 38 38 3a 36 37 31 37 34 36 35  6,524288:6717465
81d0: 36 2c 31 35 37 32 38 36 34 3a 36 37 31 37 34 34  6,1572864:671744
81e0: 30 34 2c 32 36 32 31 34 34 30 3a 30 2c 33 36 37  04,2621440:0,367
81f0: 30 30 31 36 3a 36 37 31 30 39 31 32 30 2c 34 37  0016:67109120,47
8200: 31 38 35 39 32 3a 36 37 31 30 38 38 36 38 2c 35  18592:67108868,5
8210: 37 36 37 31 36 38 3a 36 35 35 33 36 2c 36 38 31  767168:65536,681
8220: 35 37 34 34 3a 36 35 35 34 30 2c 37 38 36 34 33  5744:65540,78643
8230: 32 30 3a 32 36 30 2c 38 39 31 32 38 39 36 3a 34  20:260,8912896:4
8240: 2c 39 39 36 31 34 37 32 3a 32 35 36 2c 31 31 30  ,9961472:256,110
8250: 31 30 30 34 38 3a 36 37 31 37 34 34 30 30 2c 31  10048:67174400,1
8260: 32 30 35 38 36 32 34 3a 36 35 37 39 36 2c 31 33  2058624:65796,13
8270: 31 30 37 32 30 30 3a 36 35 37 39 32 2c 31 34 31  107200:65792,141
8280: 35 35 37 37 36 3a 36 37 31 30 39 31 32 34 2c 31  55776:67109124,1
8290: 35 32 30 34 33 35 32 3a 36 37 31 37 34 36 36 30  5204352:67174660
82a0: 2c 31 36 32 35 32 39 32 38 3a 36 37 31 30 38 38  ,16252928:671088
82b0: 36 34 2c 31 36 37 37 37 32 31 36 3a 36 37 31 37  64,16777216:6717
82c0: 34 36 35 36 2c 31 37 38 32 35 37 39 32 3a 36 35  4656,17825792:65
82d0: 35 34 30 2c 31 38 38 37 34 33 36 38 3a 36 35 35  540,18874368:655
82e0: 33 36 2c 31 39 39 32 32 39 34 34 3a 36 37 31 30  36,19922944:6710
82f0: 39 31 32 30 2c 32 30 39 37 31 35 32 30 3a 32 35  9120,20971520:25
8300: 36 2c 32 32 30 32 30 30 39 36 3a 36 37 31 37 34  6,22020096:67174
8310: 36 36 30 2c 32 33 30 36 38 36 37 32 3a 36 37 31  660,23068672:671
8320: 30 38 38 36 38 2c 32 34 31 31 37 32 34 38 3a 30  08868,24117248:0
8330: 2c 32 35 31 36 35 38 32 34 3a 36 37 31 30 39 31  ,25165824:671091
8340: 32 34 2c 32 36 32 31 34 34 30 30 3a 36 37 31 30  24,26214400:6710
8350: 38 38 36 34 2c 32 37 32 36 32 39 37 36 3a 34 2c  8864,27262976:4,
8360: 32 38 33 31 31 35 35 32 3a 36 35 37 39 32 2c 32  28311552:65792,2
8370: 39 33 36 30 31 32 38 3a 36 37 31 37 34 34 30 30  9360128:67174400
8380: 2c 33 30 34 30 38 37 30 34 3a 32 36 30 2c 33 31  ,30408704:260,31
8390: 34 35 37 32 38 30 3a 36 35 37 39 36 2c 33 32 35  457280:65796,325
83a0: 30 35 38 35 36 3a 36 37 31 37 34 34 30 34 2c 0a  05856:67174404,.
83b0: 31 37 33 30 31 35 30 34 3a 36 37 31 30 38 38 36  17301504:6710886
83c0: 34 2c 31 38 33 35 30 30 38 30 3a 32 36 30 2c 31  4,18350080:260,1
83d0: 39 33 39 38 36 35 36 3a 36 37 31 37 34 36 35 36  9398656:67174656
83e0: 2c 32 30 34 34 37 32 33 32 3a 30 2c 32 31 34 39  ,20447232:0,2149
83f0: 35 38 30 38 3a 36 35 35 34 30 2c 32 32 35 34 34  5808:65540,22544
8400: 33 38 34 3a 36 37 31 30 39 31 32 30 2c 32 33 35  384:67109120,235
8410: 39 32 39 36 30 3a 32 35 36 2c 32 34 36 34 31 35  92960:256,246415
8420: 33 36 3a 36 37 31 37 34 34 30 34 2c 32 35 36 39  36:67174404,2569
8430: 30 31 31 32 3a 36 35 35 33 36 2c 32 36 37 33 38  0112:65536,26738
8440: 36 38 38 3a 36 37 31 37 34 36 36 30 2c 32 37 37  688:67174660,277
8450: 38 37 32 36 34 3a 36 35 37 39 36 2c 32 38 38 33  87264:65796,2883
8460: 35 38 34 30 3a 36 37 31 30 38 38 36 38 2c 32 39  5840:67108868,29
8470: 38 38 34 34 31 36 3a 36 37 31 30 39 31 32 34 2c  884416:67109124,
8480: 33 30 39 33 32 39 39 32 3a 36 37 31 37 34 34 30  30932992:6717440
8490: 30 2c 33 31 39 38 31 35 36 38 3a 34 2c 33 33 30  0,31981568:4,330
84a0: 33 30 31 34 34 3a 36 35 37 39 32 7d 2c 7b 22 30  30144:65792},{"0
84b0: 22 3a 32 31 35 31 36 38 32 30 34 38 2c 36 35 35  ":2151682048,655
84c0: 33 36 3a 32 31 34 37 34 38 37 38 30 38 2c 31 33  36:2147487808,13
84d0: 31 30 37 32 3a 34 31 39 38 34 36 34 2c 31 39 36  1072:4198464,196
84e0: 36 30 38 3a 32 31 35 31 36 37 37 39 35 32 2c 32  608:2151677952,2
84f0: 36 32 31 34 34 3a 30 2c 33 32 37 36 38 30 3a 34  62144:0,327680:4
8500: 31 39 38 34 30 30 2c 33 39 33 32 31 36 3a 32 31  198400,393216:21
8510: 34 37 34 38 33 37 31 32 2c 34 35 38 37 35 32 3a  47483712,458752:
8520: 34 31 39 34 33 36 38 2c 35 32 34 32 38 38 3a 32  4194368,524288:2
8530: 31 34 37 34 38 33 36 34 38 2c 35 38 39 38 32 34  147483648,589824
8540: 3a 34 31 39 34 33 30 34 2c 36 35 35 33 36 30 3a  :4194304,655360:
8550: 36 34 2c 37 32 30 38 39 36 3a 32 31 34 37 34 38  64,720896:214748
8560: 37 37 34 34 2c 37 38 36 34 33 32 3a 32 31 35 31  7744,786432:2151
8570: 36 37 38 30 31 36 2c 38 35 31 39 36 38 3a 34 31  678016,851968:41
8580: 36 30 2c 39 31 37 35 30 34 3a 34 30 39 36 2c 39  60,917504:4096,9
8590: 38 33 30 34 30 3a 32 31 35 31 36 38 32 31 31 32  83040:2151682112
85a0: 2c 33 32 37 36 38 3a 32 31 34 37 34 38 37 38 30  ,32768:214748780
85b0: 38 2c 0a 39 38 33 30 34 3a 36 34 2c 31 36 33 38  8,.98304:64,1638
85c0: 34 30 3a 32 31 35 31 36 37 38 30 31 36 2c 32 32  40:2151678016,22
85d0: 39 33 37 36 3a 32 31 34 37 34 38 37 37 34 34 2c  9376:2147487744,
85e0: 32 39 34 39 31 32 3a 34 31 39 38 34 30 30 2c 33  294912:4198400,3
85f0: 36 30 34 34 38 3a 32 31 35 31 36 38 32 31 31 32  60448:2151682112
8600: 2c 34 32 35 39 38 34 3a 30 2c 34 39 31 35 32 30  ,425984:0,491520
8610: 3a 32 31 35 31 36 37 37 39 35 32 2c 35 35 37 30  :2151677952,5570
8620: 35 36 3a 34 30 39 36 2c 36 32 32 35 39 32 3a 32  56:4096,622592:2
8630: 31 35 31 36 38 32 30 34 38 2c 36 38 38 31 32 38  151682048,688128
8640: 3a 34 31 39 34 33 30 34 2c 37 35 33 36 36 34 3a  :4194304,753664:
8650: 34 31 36 30 2c 38 31 39 32 30 30 3a 32 31 34 37  4160,819200:2147
8660: 34 38 33 36 34 38 2c 38 38 34 37 33 36 3a 34 31  483648,884736:41
8670: 39 34 33 36 38 2c 39 35 30 32 37 32 3a 34 31 39  94368,950272:419
8680: 38 34 36 34 2c 31 30 31 35 38 30 38 3a 32 31 34  8464,1015808:214
8690: 37 34 38 33 37 31 32 2c 31 30 34 38 35 37 36 3a  7483712,1048576:
86a0: 34 31 39 34 33 36 38 2c 31 31 31 34 31 31 32 3a  4194368,1114112:
86b0: 34 31 39 38 34 30 30 2c 31 31 37 39 36 34 38 3a  4198400,1179648:
86c0: 32 31 34 37 34 38 33 37 31 32 2c 31 32 34 35 31  2147483712,12451
86d0: 38 34 3a 30 2c 31 33 31 30 37 32 30 3a 34 31 36  84:0,1310720:416
86e0: 30 2c 31 33 37 36 32 35 36 3a 32 31 35 31 36 37  0,1376256:215167
86f0: 38 30 31 36 2c 31 34 34 31 37 39 32 3a 32 31 35  8016,1441792:215
8700: 31 36 38 32 30 34 38 2c 31 35 30 37 33 32 38 3a  1682048,1507328:
8710: 32 31 34 37 34 38 37 38 30 38 2c 31 35 37 32 38  2147487808,15728
8720: 36 34 3a 32 31 35 31 36 38 32 31 31 32 2c 31 36  64:2151682112,16
8730: 33 38 34 30 30 3a 32 31 34 37 34 38 33 36 34 38  38400:2147483648
8740: 2c 31 37 30 33 39 33 36 3a 32 31 35 31 36 37 37  ,1703936:2151677
8750: 39 35 32 2c 31 37 36 39 34 37 32 3a 34 31 39 38  952,1769472:4198
8760: 34 36 34 2c 31 38 33 35 30 30 38 3a 32 31 34 37  464,1835008:2147
8770: 34 38 37 37 34 34 2c 31 39 30 30 35 34 34 3a 34  487744,1900544:4
8780: 31 39 34 33 30 34 2c 31 39 36 36 30 38 30 3a 36  194304,1966080:6
8790: 34 2c 32 30 33 31 36 31 36 3a 34 30 39 36 2c 31  4,2031616:4096,1
87a0: 30 38 31 33 34 34 3a 32 31 35 31 36 37 37 39 35  081344:215167795
87b0: 32 2c 0a 31 31 34 36 38 38 30 3a 32 31 35 31 36  2,.1146880:21516
87c0: 38 32 31 31 32 2c 31 32 31 32 34 31 36 3a 30 2c  82112,1212416:0,
87d0: 31 32 37 37 39 35 32 3a 34 31 39 38 34 30 30 2c  1277952:4198400,
87e0: 31 33 34 33 34 38 38 3a 34 31 39 34 33 36 38 2c  1343488:4194368,
87f0: 31 34 30 39 30 32 34 3a 32 31 34 37 34 38 33 36  1409024:21474836
8800: 34 38 2c 31 34 37 34 35 36 30 3a 32 31 34 37 34  48,1474560:21474
8810: 38 37 38 30 38 2c 31 35 34 30 30 39 36 3a 36 34  87808,1540096:64
8820: 2c 31 36 30 35 36 33 32 3a 32 31 34 37 34 38 33  ,1605632:2147483
8830: 37 31 32 2c 31 36 37 31 31 36 38 3a 34 30 39 36  712,1671168:4096
8840: 2c 31 37 33 36 37 30 34 3a 32 31 34 37 34 38 37  ,1736704:2147487
8850: 37 34 34 2c 31 38 30 32 32 34 30 3a 32 31 35 31  744,1802240:2151
8860: 36 37 38 30 31 36 2c 31 38 36 37 37 37 36 3a 34  678016,1867776:4
8870: 31 36 30 2c 31 39 33 33 33 31 32 3a 32 31 35 31  160,1933312:2151
8880: 36 38 32 30 34 38 2c 31 39 39 38 38 34 38 3a 34  682048,1998848:4
8890: 31 39 34 33 30 34 2c 32 30 36 34 33 38 34 3a 34  194304,2064384:4
88a0: 31 39 38 34 36 34 7d 2c 7b 22 30 22 3a 31 32 38  198464},{"0":128
88b0: 2c 34 30 39 36 3a 31 37 30 33 39 33 36 30 2c 38  ,4096:17039360,8
88c0: 31 39 32 3a 32 36 32 31 34 34 2c 31 32 32 38 38  192:262144,12288
88d0: 3a 35 33 36 38 37 30 39 31 32 2c 31 36 33 38 34  :536870912,16384
88e0: 3a 35 33 37 31 33 33 31 38 34 2c 32 30 34 38 30  :537133184,20480
88f0: 3a 31 36 37 37 37 33 34 34 2c 32 34 35 37 36 3a  :16777344,24576:
8900: 35 35 33 36 34 38 32 35 36 2c 32 38 36 37 32 3a  553648256,28672:
8910: 32 36 32 32 37 32 2c 33 32 37 36 38 3a 31 36 37  262272,32768:167
8920: 37 37 32 31 36 2c 33 36 38 36 34 3a 35 33 37 31  77216,36864:5371
8930: 33 33 30 35 36 2c 34 30 39 36 30 3a 35 33 36 38  33056,40960:5368
8940: 37 31 30 34 30 2c 34 35 30 35 36 3a 35 35 33 39  71040,45056:5539
8950: 31 30 34 30 30 2c 34 39 31 35 32 3a 35 35 33 39  10400,49152:5539
8960: 31 30 32 37 32 2c 35 33 32 34 38 3a 30 2c 35 37  10272,53248:0,57
8970: 33 34 34 3a 31 37 30 33 39 34 38 38 2c 36 31 34  344:17039488,614
8980: 34 30 3a 35 35 33 36 34 38 31 32 38 2c 32 30 34  40:553648128,204
8990: 38 3a 31 37 30 33 39 34 38 38 2c 36 31 34 34 3a  8:17039488,6144:
89a0: 35 35 33 36 34 38 32 35 36 2c 0a 31 30 32 34 30  553648256,.10240
89b0: 3a 31 32 38 2c 31 34 33 33 36 3a 31 37 30 33 39  :128,14336:17039
89c0: 33 36 30 2c 31 38 34 33 32 3a 32 36 32 31 34 34  360,18432:262144
89d0: 2c 32 32 35 32 38 3a 35 33 37 31 33 33 31 38 34  ,22528:537133184
89e0: 2c 32 36 36 32 34 3a 35 35 33 39 31 30 32 37 32  ,26624:553910272
89f0: 2c 33 30 37 32 30 3a 35 33 36 38 37 30 39 31 32  ,30720:536870912
8a00: 2c 33 34 38 31 36 3a 35 33 37 31 33 33 30 35 36  ,34816:537133056
8a10: 2c 33 38 39 31 32 3a 30 2c 34 33 30 30 38 3a 35  ,38912:0,43008:5
8a20: 35 33 39 31 30 34 30 30 2c 34 37 31 30 34 3a 31  53910400,47104:1
8a30: 36 37 37 37 33 34 34 2c 35 31 32 30 30 3a 35 33  6777344,51200:53
8a40: 36 38 37 31 30 34 30 2c 35 35 32 39 36 3a 35 35  6871040,55296:55
8a50: 33 36 34 38 31 32 38 2c 35 39 33 39 32 3a 31 36  3648128,59392:16
8a60: 37 37 37 32 31 36 2c 36 33 34 38 38 3a 32 36 32  777216,63488:262
8a70: 32 37 32 2c 36 35 35 33 36 3a 32 36 32 31 34 34  272,65536:262144
8a80: 2c 36 39 36 33 32 3a 31 32 38 2c 37 33 37 32 38  ,69632:128,73728
8a90: 3a 35 33 36 38 37 30 39 31 32 2c 37 37 38 32 34  :536870912,77824
8aa0: 3a 35 35 33 36 34 38 32 35 36 2c 38 31 39 32 30  :553648256,81920
8ab0: 3a 31 36 37 37 37 33 34 34 2c 38 36 30 31 36 3a  :16777344,86016:
8ac0: 35 35 33 39 31 30 32 37 32 2c 39 30 31 31 32 3a  553910272,90112:
8ad0: 35 33 37 31 33 33 31 38 34 2c 39 34 32 30 38 3a  537133184,94208:
8ae0: 31 36 37 37 37 32 31 36 2c 39 38 33 30 34 3a 35  16777216,98304:5
8af0: 35 33 39 31 30 34 30 30 2c 31 30 32 34 30 30 3a  53910400,102400:
8b00: 35 35 33 36 34 38 31 32 38 2c 31 30 36 34 39 36  553648128,106496
8b10: 3a 31 37 30 33 39 33 36 30 2c 31 31 30 35 39 32  :17039360,110592
8b20: 3a 35 33 37 31 33 33 30 35 36 2c 31 31 34 36 38  :537133056,11468
8b30: 38 3a 32 36 32 32 37 32 2c 31 31 38 37 38 34 3a  8:262272,118784:
8b40: 35 33 36 38 37 31 30 34 30 2c 31 32 32 38 38 30  536871040,122880
8b50: 3a 30 2c 31 32 36 39 37 36 3a 31 37 30 33 39 34  :0,126976:170394
8b60: 38 38 2c 36 37 35 38 34 3a 35 35 33 36 34 38 32  88,67584:5536482
8b70: 35 36 2c 37 31 36 38 30 3a 31 36 37 37 37 32 31  56,71680:1677721
8b80: 36 2c 37 35 37 37 36 3a 31 37 30 33 39 33 36 30  6,75776:17039360
8b90: 2c 37 39 38 37 32 3a 35 33 37 31 33 33 31 38 34  ,79872:537133184
8ba0: 2c 0a 38 33 39 36 38 3a 35 33 36 38 37 30 39 31  ,.83968:53687091
8bb0: 32 2c 38 38 30 36 34 3a 31 37 30 33 39 34 38 38  2,88064:17039488
8bc0: 2c 39 32 31 36 30 3a 31 32 38 2c 39 36 32 35 36  ,92160:128,96256
8bd0: 3a 35 35 33 39 31 30 32 37 32 2c 31 30 30 33 35  :553910272,10035
8be0: 32 3a 32 36 32 32 37 32 2c 31 30 34 34 34 38 3a  2:262272,104448:
8bf0: 35 35 33 39 31 30 34 30 30 2c 31 30 38 35 34 34  553910400,108544
8c00: 3a 30 2c 31 31 32 36 34 30 3a 35 35 33 36 34 38  :0,112640:553648
8c10: 31 32 38 2c 31 31 36 37 33 36 3a 31 36 37 37 37  128,116736:16777
8c20: 33 34 34 2c 31 32 30 38 33 32 3a 32 36 32 31 34  344,120832:26214
8c30: 34 2c 31 32 34 39 32 38 3a 35 33 37 31 33 33 30  4,124928:5371330
8c40: 35 36 2c 31 32 39 30 32 34 3a 35 33 36 38 37 31  56,129024:536871
8c50: 30 34 30 7d 2c 7b 22 30 22 3a 32 36 38 34 33 35  040},{"0":268435
8c60: 34 36 34 2c 32 35 36 3a 38 31 39 32 2c 35 31 32  464,256:8192,512
8c70: 3a 32 37 30 35 33 32 36 30 38 2c 37 36 38 3a 32  :270532608,768:2
8c80: 37 30 35 34 30 38 30 38 2c 31 30 32 34 3a 32 36  70540808,1024:26
8c90: 38 34 34 33 36 34 38 2c 31 32 38 30 3a 32 30 39  8443648,1280:209
8ca0: 37 31 35 32 2c 31 35 33 36 3a 32 30 39 37 31 36  7152,1536:209716
8cb0: 30 2c 31 37 39 32 3a 32 36 38 34 33 35 34 35 36  0,1792:268435456
8cc0: 2c 32 30 34 38 3a 30 2c 32 33 30 34 3a 32 36 38  ,2048:0,2304:268
8cd0: 34 34 33 36 35 36 2c 32 35 36 30 3a 32 31 30 35  443656,2560:2105
8ce0: 33 34 34 2c 32 38 31 36 3a 38 2c 33 30 37 32 3a  344,2816:8,3072:
8cf0: 32 37 30 35 33 32 36 31 36 2c 33 33 32 38 3a 32  270532616,3328:2
8d00: 31 30 35 33 35 32 2c 33 35 38 34 3a 38 32 30 30  105352,3584:8200
8d10: 2c 33 38 34 30 3a 32 37 30 35 34 30 38 30 30 2c  ,3840:270540800,
8d20: 31 32 38 3a 32 37 30 35 33 32 36 30 38 2c 33 38  128:270532608,38
8d30: 34 3a 32 37 30 35 34 30 38 30 38 2c 36 34 30 3a  4:270540808,640:
8d40: 38 2c 38 39 36 3a 32 30 39 37 31 35 32 2c 31 31  8,896:2097152,11
8d50: 35 32 3a 32 31 30 35 33 35 32 2c 31 34 30 38 3a  52:2105352,1408:
8d60: 32 36 38 34 33 35 34 36 34 2c 31 36 36 34 3a 32  268435464,1664:2
8d70: 36 38 34 34 33 36 34 38 2c 31 39 32 30 3a 38 32  68443648,1920:82
8d80: 30 30 2c 32 31 37 36 3a 32 30 39 37 31 36 30 2c  00,2176:2097160,
8d90: 32 34 33 32 3a 38 31 39 32 2c 0a 32 36 38 38 3a  2432:8192,.2688:
8da0: 32 36 38 34 34 33 36 35 36 2c 32 39 34 34 3a 32  268443656,2944:2
8db0: 37 30 35 33 32 36 31 36 2c 33 32 30 30 3a 30 2c  70532616,3200:0,
8dc0: 33 34 35 36 3a 32 37 30 35 34 30 38 30 30 2c 33  3456:270540800,3
8dd0: 37 31 32 3a 32 31 30 35 33 34 34 2c 33 39 36 38  712:2105344,3968
8de0: 3a 32 36 38 34 33 35 34 35 36 2c 34 30 39 36 3a  :268435456,4096:
8df0: 32 36 38 34 34 33 36 34 38 2c 34 33 35 32 3a 32  268443648,4352:2
8e00: 37 30 35 33 32 36 31 36 2c 34 36 30 38 3a 32 37  70532616,4608:27
8e10: 30 35 34 30 38 30 38 2c 34 38 36 34 3a 38 32 30  0540808,4864:820
8e20: 30 2c 35 31 32 30 3a 32 30 39 37 31 35 32 2c 35  0,5120:2097152,5
8e30: 33 37 36 3a 32 36 38 34 33 35 34 35 36 2c 35 36  376:268435456,56
8e40: 33 32 3a 32 36 38 34 33 35 34 36 34 2c 35 38 38  32:268435464,588
8e50: 38 3a 32 31 30 35 33 34 34 2c 36 31 34 34 3a 32  8:2105344,6144:2
8e60: 31 30 35 33 35 32 2c 36 34 30 30 3a 30 2c 36 36  105352,6400:0,66
8e70: 35 36 3a 38 2c 36 39 31 32 3a 32 37 30 35 33 32  56:8,6912:270532
8e80: 36 30 38 2c 37 31 36 38 3a 38 31 39 32 2c 37 34  608,7168:8192,74
8e90: 32 34 3a 32 36 38 34 34 33 36 35 36 2c 37 36 38  24:268443656,768
8ea0: 30 3a 32 37 30 35 34 30 38 30 30 2c 37 39 33 36  0:270540800,7936
8eb0: 3a 32 30 39 37 31 36 30 2c 34 32 32 34 3a 38 2c  :2097160,4224:8,
8ec0: 34 34 38 30 3a 32 31 30 35 33 34 34 2c 34 37 33  4480:2105344,473
8ed0: 36 3a 32 30 39 37 31 35 32 2c 34 39 39 32 3a 32  6:2097152,4992:2
8ee0: 36 38 34 33 35 34 36 34 2c 35 32 34 38 3a 32 36  68435464,5248:26
8ef0: 38 34 34 33 36 34 38 2c 35 35 30 34 3a 38 32 30  8443648,5504:820
8f00: 30 2c 35 37 36 30 3a 32 37 30 35 34 30 38 30 38  0,5760:270540808
8f10: 2c 36 30 31 36 3a 32 37 30 35 33 32 36 30 38 2c  ,6016:270532608,
8f20: 36 32 37 32 3a 32 37 30 35 34 30 38 30 30 2c 36  6272:270540800,6
8f30: 35 32 38 3a 32 37 30 35 33 32 36 31 36 2c 36 37  528:270532616,67
8f40: 38 34 3a 38 31 39 32 2c 37 30 34 30 3a 32 31 30  84:8192,7040:210
8f50: 35 33 35 32 2c 37 32 39 36 3a 32 30 39 37 31 36  5352,7296:209716
8f60: 30 2c 37 35 35 32 3a 30 2c 37 38 30 38 3a 32 36  0,7552:0,7808:26
8f70: 38 34 33 35 34 35 36 2c 38 30 36 34 3a 32 36 38  8435456,8064:268
8f80: 34 34 33 36 35 36 7d 2c 7b 22 30 22 3a 31 30 34  443656},{"0":104
8f90: 38 35 37 36 2c 0a 31 36 3a 33 33 35 35 35 34 35  8576,.16:3355545
8fa0: 37 2c 33 32 3a 31 30 32 34 2c 34 38 3a 31 30 34  7,32:1024,48:104
8fb0: 39 36 30 31 2c 36 34 3a 33 34 36 30 34 30 33 33  9601,64:34604033
8fc0: 2c 38 30 3a 30 2c 39 36 3a 31 2c 31 31 32 3a 33  ,80:0,96:1,112:3
8fd0: 34 36 30 33 30 30 39 2c 31 32 38 3a 33 33 35 35  4603009,128:3355
8fe0: 35 34 35 36 2c 31 34 34 3a 31 30 34 38 35 37 37  5456,144:1048577
8ff0: 2c 31 36 30 3a 33 33 35 35 34 34 33 33 2c 31 37  ,160:33554433,17
9000: 36 3a 33 34 36 30 34 30 33 32 2c 31 39 32 3a 33  6:34604032,192:3
9010: 34 36 30 33 30 30 38 2c 32 30 38 3a 31 30 32 35  4603008,208:1025
9020: 2c 32 32 34 3a 31 30 34 39 36 30 30 2c 32 34 30  ,224:1049600,240
9030: 3a 33 33 35 35 34 34 33 32 2c 38 3a 33 34 36 30  :33554432,8:3460
9040: 33 30 30 39 2c 32 34 3a 30 2c 34 30 3a 33 33 35  3009,24:0,40:335
9050: 35 35 34 35 37 2c 35 36 3a 33 34 36 30 34 30 33  55457,56:3460403
9060: 32 2c 37 32 3a 31 30 34 38 35 37 36 2c 38 38 3a  2,72:1048576,88:
9070: 33 33 35 35 34 34 33 33 2c 31 30 34 3a 33 33 35  33554433,104:335
9080: 35 34 34 33 32 2c 31 32 30 3a 31 30 32 35 2c 31  54432,120:1025,1
9090: 33 36 3a 31 30 34 39 36 30 31 2c 31 35 32 3a 33  36:1049601,152:3
90a0: 33 35 35 35 34 35 36 2c 31 36 38 3a 33 34 36 30  3555456,168:3460
90b0: 33 30 30 38 2c 31 38 34 3a 31 30 34 38 35 37 37  3008,184:1048577
90c0: 2c 32 30 30 3a 31 30 32 34 2c 32 31 36 3a 33 34  ,200:1024,216:34
90d0: 36 30 34 30 33 33 2c 32 33 32 3a 31 2c 32 34 38  604033,232:1,248
90e0: 3a 31 30 34 39 36 30 30 2c 32 35 36 3a 33 33 35  :1049600,256:335
90f0: 35 34 34 33 32 2c 32 37 32 3a 31 30 34 38 35 37  54432,272:104857
9100: 36 2c 32 38 38 3a 33 33 35 35 35 34 35 37 2c 33  6,288:33555457,3
9110: 30 34 3a 33 34 36 30 33 30 30 39 2c 33 32 30 3a  04:34603009,320:
9120: 31 30 34 38 35 37 37 2c 33 33 36 3a 33 33 35 35  1048577,336:3355
9130: 35 34 35 36 2c 33 35 32 3a 33 34 36 30 34 30 33  5456,352:3460403
9140: 32 2c 33 36 38 3a 31 30 34 39 36 30 31 2c 33 38  2,368:1049601,38
9150: 34 3a 31 30 32 35 2c 34 30 30 3a 33 34 36 30 34  4:1025,400:34604
9160: 30 33 33 2c 34 31 36 3a 31 30 34 39 36 30 30 2c  033,416:1049600,
9170: 34 33 32 3a 31 2c 34 34 38 3a 30 2c 34 36 34 3a  432:1,448:0,464:
9180: 33 34 36 30 33 30 30 38 2c 34 38 30 3a 33 33 35  34603008,480:335
9190: 35 34 34 33 33 2c 0a 34 39 36 3a 31 30 32 34 2c  54433,.496:1024,
91a0: 32 36 34 3a 31 30 34 39 36 30 30 2c 32 38 30 3a  264:1049600,280:
91b0: 33 33 35 35 35 34 35 37 2c 32 39 36 3a 33 34 36  33555457,296:346
91c0: 30 33 30 30 39 2c 33 31 32 3a 31 2c 33 32 38 3a  03009,312:1,328:
91d0: 33 33 35 35 34 34 33 32 2c 33 34 34 3a 31 30 34  33554432,344:104
91e0: 38 35 37 36 2c 33 36 30 3a 31 30 32 35 2c 33 37  8576,360:1025,37
91f0: 36 3a 33 34 36 30 34 30 33 32 2c 33 39 32 3a 33  6:34604032,392:3
9200: 33 35 35 34 34 33 33 2c 34 30 38 3a 33 34 36 30  3554433,408:3460
9210: 33 30 30 38 2c 34 32 34 3a 30 2c 34 34 30 3a 33  3008,424:0,440:3
9220: 34 36 30 34 30 33 33 2c 34 35 36 3a 31 30 34 39  4604033,456:1049
9230: 36 30 31 2c 34 37 32 3a 31 30 32 34 2c 34 38 38  601,472:1024,488
9240: 3a 33 33 35 35 35 34 35 36 2c 35 30 34 3a 31 30  :33555456,504:10
9250: 34 38 35 37 37 7d 2c 7b 22 30 22 3a 31 33 34 32  48577},{"0":1342
9260: 31 39 38 30 38 2c 31 3a 31 33 31 30 37 32 2c 32  19808,1:131072,2
9270: 3a 31 33 34 32 31 37 37 32 38 2c 33 3a 33 32 2c  :134217728,3:32,
9280: 34 3a 31 33 31 31 30 34 2c 35 3a 31 33 34 33 35  4:131104,5:13435
9290: 30 38 38 30 2c 36 3a 31 33 34 33 35 30 38 34 38  0880,6:134350848
92a0: 2c 37 3a 32 30 34 38 2c 38 3a 31 33 34 33 34 38  ,7:2048,8:134348
92b0: 38 30 30 2c 39 3a 31 33 34 32 31 39 37 37 36 2c  800,9:134219776,
92c0: 31 30 3a 31 33 33 31 32 30 2c 31 31 3a 31 33 34  10:133120,11:134
92d0: 33 34 38 38 33 32 2c 31 32 3a 32 30 38 30 2c 31  348832,12:2080,1
92e0: 33 3a 30 2c 31 34 3a 31 33 34 32 31 37 37 36 30  3:0,14:134217760
92f0: 2c 31 35 3a 31 33 33 31 35 32 2c 32 31 34 37 34  ,15:133152,21474
9300: 38 33 36 34 38 3a 32 30 34 38 2c 32 31 34 37 34  83648:2048,21474
9310: 38 33 36 34 39 3a 31 33 34 33 35 30 38 38 30 2c  83649:134350880,
9320: 32 31 34 37 34 38 33 36 35 30 3a 31 33 34 32 31  2147483650:13421
9330: 39 38 30 38 2c 32 31 34 37 34 38 33 36 35 31 3a  9808,2147483651:
9340: 31 33 34 32 31 37 37 32 38 2c 32 31 34 37 34 38  134217728,214748
9350: 33 36 35 32 3a 31 33 34 33 34 38 38 30 30 2c 32  3652:134348800,2
9360: 31 34 37 34 38 33 36 35 33 3a 31 33 33 31 32 30  147483653:133120
9370: 2c 32 31 34 37 34 38 33 36 35 34 3a 31 33 33 31  ,2147483654:1331
9380: 35 32 2c 32 31 34 37 34 38 33 36 35 35 3a 33 32  52,2147483655:32
9390: 2c 0a 32 31 34 37 34 38 33 36 35 36 3a 31 33 34  ,.2147483656:134
93a0: 32 31 37 37 36 30 2c 32 31 34 37 34 38 33 36 35  217760,214748365
93b0: 37 3a 32 30 38 30 2c 32 31 34 37 34 38 33 36 35  7:2080,214748365
93c0: 38 3a 31 33 31 31 30 34 2c 32 31 34 37 34 38 33  8:131104,2147483
93d0: 36 35 39 3a 31 33 34 33 35 30 38 34 38 2c 32 31  659:134350848,21
93e0: 34 37 34 38 33 36 36 30 3a 30 2c 32 31 34 37 34  47483660:0,21474
93f0: 38 33 36 36 31 3a 31 33 34 33 34 38 38 33 32 2c  83661:134348832,
9400: 32 31 34 37 34 38 33 36 36 32 3a 31 33 34 32 31  2147483662:13421
9410: 39 37 37 36 2c 32 31 34 37 34 38 33 36 36 33 3a  9776,2147483663:
9420: 31 33 31 30 37 32 2c 31 36 3a 31 33 33 31 35 32  131072,16:133152
9430: 2c 31 37 3a 31 33 34 33 35 30 38 34 38 2c 31 38  ,17:134350848,18
9440: 3a 33 32 2c 31 39 3a 32 30 34 38 2c 32 30 3a 31  :32,19:2048,20:1
9450: 33 34 32 31 39 37 37 36 2c 32 31 3a 31 33 34 32  34219776,21:1342
9460: 31 37 37 36 30 2c 32 32 3a 31 33 34 33 34 38 38  17760,22:1343488
9470: 33 32 2c 32 33 3a 31 33 31 30 37 32 2c 32 34 3a  32,23:131072,24:
9480: 30 2c 32 35 3a 31 33 31 31 30 34 2c 32 36 3a 31  0,25:131104,26:1
9490: 33 34 33 34 38 38 30 30 2c 32 37 3a 31 33 34 32  34348800,27:1342
94a0: 31 39 38 30 38 2c 32 38 3a 31 33 34 33 35 30 38  19808,28:1343508
94b0: 38 30 2c 32 39 3a 31 33 33 31 32 30 2c 33 30 3a  80,29:133120,30:
94c0: 32 30 38 30 2c 33 31 3a 31 33 34 32 31 37 37 32  2080,31:13421772
94d0: 38 2c 32 31 34 37 34 38 33 36 36 34 3a 31 33 31  8,2147483664:131
94e0: 30 37 32 2c 32 31 34 37 34 38 33 36 36 35 3a 32  072,2147483665:2
94f0: 30 34 38 2c 32 31 34 37 34 38 33 36 36 36 3a 31  048,2147483666:1
9500: 33 34 33 34 38 38 33 32 2c 32 31 34 37 34 38 33  34348832,2147483
9510: 36 36 37 3a 31 33 33 31 35 32 2c 32 31 34 37 34  667:133152,21474
9520: 38 33 36 36 38 3a 33 32 2c 32 31 34 37 34 38 33  83668:32,2147483
9530: 36 36 39 3a 31 33 34 33 34 38 38 30 30 2c 32 31  669:134348800,21
9540: 34 37 34 38 33 36 37 30 3a 31 33 34 32 31 37 37  47483670:1342177
9550: 32 38 2c 32 31 34 37 34 38 33 36 37 31 3a 31 33  28,2147483671:13
9560: 34 32 31 39 38 30 38 2c 32 31 34 37 34 38 33 36  4219808,21474836
9570: 37 32 3a 31 33 34 33 35 30 38 38 30 2c 32 31 34  72:134350880,214
9580: 37 34 38 33 36 37 33 3a 31 33 34 32 31 37 37 36  7483673:13421776
9590: 30 2c 0a 32 31 34 37 34 38 33 36 37 34 3a 31 33  0,.2147483674:13
95a0: 34 32 31 39 37 37 36 2c 32 31 34 37 34 38 33 36  4219776,21474836
95b0: 37 35 3a 30 2c 32 31 34 37 34 38 33 36 37 36 3a  75:0,2147483676:
95c0: 31 33 33 31 32 30 2c 32 31 34 37 34 38 33 36 37  133120,214748367
95d0: 37 3a 32 30 38 30 2c 32 31 34 37 34 38 33 36 37  7:2080,214748367
95e0: 38 3a 31 33 31 31 30 34 2c 32 31 34 37 34 38 33  8:131104,2147483
95f0: 36 37 39 3a 31 33 34 33 35 30 38 34 38 7d 5d 2c  679:134350848}],
9600: 74 3d 5b 34 31 36 30 37 34 39 35 36 39 2c 35 32  t=[4160749569,52
9610: 38 34 38 32 33 30 34 2c 33 33 30 33 30 31 34 34  8482304,33030144
9620: 2c 32 30 36 34 33 38 34 2c 31 32 39 30 32 34 2c  ,2064384,129024,
9630: 38 30 36 34 2c 35 30 34 2c 32 31 34 37 34 38 33  8064,504,2147483
9640: 36 37 39 5d 2c 6d 3d 67 2e 44 45 53 3d 65 2e 65  679],m=g.DES=e.e
9650: 78 74 65 6e 64 28 7b 5f 64 6f 52 65 73 65 74 3a  xtend({_doReset:
9660: 66 75 6e 63 74 69 6f 6e 28 29 7b 66 6f 72 28 76  function(){for(v
9670: 61 72 20 62 3d 74 68 69 73 2e 5f 6b 65 79 2e 77  ar b=this._key.w
9680: 6f 72 64 73 2c 63 3d 5b 5d 2c 61 3d 30 3b 35 36  ords,c=[],a=0;56
9690: 3e 61 3b 61 2b 2b 29 7b 76 61 72 20 66 3d 71 5b  >a;a++){var f=q[
96a0: 61 5d 2d 31 3b 63 5b 61 5d 3d 62 5b 66 3e 3e 3e  a]-1;c[a]=b[f>>>
96b0: 35 5d 3e 3e 3e 33 31 2d 66 25 33 32 26 31 7d 62  5]>>>31-f%32&1}b
96c0: 3d 74 68 69 73 2e 5f 73 75 62 4b 65 79 73 3d 5b  =this._subKeys=[
96d0: 5d 3b 66 6f 72 28 66 3d 30 3b 31 36 3e 66 3b 66  ];for(f=0;16>f;f
96e0: 2b 2b 29 7b 66 6f 72 28 76 61 72 20 64 3d 62 5b  ++){for(var d=b[
96f0: 66 5d 3d 5b 5d 2c 65 3d 72 5b 66 5d 2c 61 3d 30  f]=[],e=r[f],a=0
9700: 3b 32 34 3e 61 3b 61 2b 2b 29 64 5b 61 2f 36 7c  ;24>a;a++)d[a/6|
9710: 30 5d 7c 3d 63 5b 28 70 5b 61 5d 2d 31 2b 65 29  0]|=c[(p[a]-1+e)
9720: 25 32 38 5d 3c 3c 33 31 2d 61 25 36 2c 64 5b 34  %28]<<31-a%6,d[4
9730: 2b 28 61 2f 36 7c 30 29 5d 7c 3d 63 5b 32 38 2b  +(a/6|0)]|=c[28+
9740: 28 70 5b 61 2b 32 34 5d 2d 31 2b 65 29 25 32 38  (p[a+24]-1+e)%28
9750: 5d 3c 3c 33 31 2d 61 25 36 3b 64 5b 30 5d 3d 64  ]<<31-a%6;d[0]=d
9760: 5b 30 5d 3c 3c 31 7c 64 5b 30 5d 3e 3e 3e 33 31  [0]<<1|d[0]>>>31
9770: 3b 66 6f 72 28 61 3d 31 3b 37 3e 61 3b 61 2b 2b  ;for(a=1;7>a;a++
9780: 29 64 5b 61 5d 3e 3e 3e 3d 0a 34 2a 28 61 2d 31  )d[a]>>>=.4*(a-1
9790: 29 2b 33 3b 64 5b 37 5d 3d 64 5b 37 5d 3c 3c 35  )+3;d[7]=d[7]<<5
97a0: 7c 64 5b 37 5d 3e 3e 3e 32 37 7d 63 3d 74 68 69  |d[7]>>>27}c=thi
97b0: 73 2e 5f 69 6e 76 53 75 62 4b 65 79 73 3d 5b 5d  s._invSubKeys=[]
97c0: 3b 66 6f 72 28 61 3d 30 3b 31 36 3e 61 3b 61 2b  ;for(a=0;16>a;a+
97d0: 2b 29 63 5b 61 5d 3d 62 5b 31 35 2d 61 5d 7d 2c  +)c[a]=b[15-a]},
97e0: 65 6e 63 72 79 70 74 42 6c 6f 63 6b 3a 66 75 6e  encryptBlock:fun
97f0: 63 74 69 6f 6e 28 62 2c 63 29 7b 74 68 69 73 2e  ction(b,c){this.
9800: 5f 64 6f 43 72 79 70 74 42 6c 6f 63 6b 28 62 2c  _doCryptBlock(b,
9810: 63 2c 74 68 69 73 2e 5f 73 75 62 4b 65 79 73 29  c,this._subKeys)
9820: 7d 2c 64 65 63 72 79 70 74 42 6c 6f 63 6b 3a 66  },decryptBlock:f
9830: 75 6e 63 74 69 6f 6e 28 62 2c 63 29 7b 74 68 69  unction(b,c){thi
9840: 73 2e 5f 64 6f 43 72 79 70 74 42 6c 6f 63 6b 28  s._doCryptBlock(
9850: 62 2c 63 2c 74 68 69 73 2e 5f 69 6e 76 53 75 62  b,c,this._invSub
9860: 4b 65 79 73 29 7d 2c 5f 64 6f 43 72 79 70 74 42  Keys)},_doCryptB
9870: 6c 6f 63 6b 3a 66 75 6e 63 74 69 6f 6e 28 62 2c  lock:function(b,
9880: 63 2c 61 29 7b 74 68 69 73 2e 5f 6c 42 6c 6f 63  c,a){this._lBloc
9890: 6b 3d 62 5b 63 5d 3b 74 68 69 73 2e 5f 72 42 6c  k=b[c];this._rBl
98a0: 6f 63 6b 3d 62 5b 63 2b 31 5d 3b 6a 2e 63 61 6c  ock=b[c+1];j.cal
98b0: 6c 28 74 68 69 73 2c 34 2c 32 35 32 36 34 35 31  l(this,4,2526451
98c0: 33 35 29 3b 6a 2e 63 61 6c 6c 28 74 68 69 73 2c  35);j.call(this,
98d0: 31 36 2c 36 35 35 33 35 29 3b 6c 2e 63 61 6c 6c  16,65535);l.call
98e0: 28 74 68 69 73 2c 32 2c 38 35 38 39 39 33 34 35  (this,2,85899345
98f0: 39 29 3b 6c 2e 63 61 6c 6c 28 74 68 69 73 2c 38  9);l.call(this,8
9900: 2c 31 36 37 31 31 39 33 35 29 3b 6a 2e 63 61 6c  ,16711935);j.cal
9910: 6c 28 74 68 69 73 2c 31 2c 31 34 33 31 36 35 35  l(this,1,1431655
9920: 37 36 35 29 3b 66 6f 72 28 76 61 72 20 66 3d 30  765);for(var f=0
9930: 3b 31 36 3e 66 3b 66 2b 2b 29 7b 66 6f 72 28 76  ;16>f;f++){for(v
9940: 61 72 20 64 3d 61 5b 66 5d 2c 65 3d 74 68 69 73  ar d=a[f],e=this
9950: 2e 5f 6c 42 6c 6f 63 6b 2c 68 3d 74 68 69 73 2e  ._lBlock,h=this.
9960: 5f 72 42 6c 6f 63 6b 2c 67 3d 30 2c 6b 3d 30 3b  _rBlock,g=0,k=0;
9970: 38 3e 6b 3b 6b 2b 2b 29 67 7c 3d 73 5b 6b 5d 5b  8>k;k++)g|=s[k][
9980: 28 28 68 5e 0a 64 5b 6b 5d 29 26 74 5b 6b 5d 29  ((h^.d[k])&t[k])
9990: 3e 3e 3e 30 5d 3b 74 68 69 73 2e 5f 6c 42 6c 6f  >>>0];this._lBlo
99a0: 63 6b 3d 68 3b 74 68 69 73 2e 5f 72 42 6c 6f 63  ck=h;this._rBloc
99b0: 6b 3d 65 5e 67 7d 61 3d 74 68 69 73 2e 5f 6c 42  k=e^g}a=this._lB
99c0: 6c 6f 63 6b 3b 74 68 69 73 2e 5f 6c 42 6c 6f 63  lock;this._lBloc
99d0: 6b 3d 74 68 69 73 2e 5f 72 42 6c 6f 63 6b 3b 74  k=this._rBlock;t
99e0: 68 69 73 2e 5f 72 42 6c 6f 63 6b 3d 61 3b 6a 2e  his._rBlock=a;j.
99f0: 63 61 6c 6c 28 74 68 69 73 2c 31 2c 31 34 33 31  call(this,1,1431
9a00: 36 35 35 37 36 35 29 3b 6c 2e 63 61 6c 6c 28 74  655765);l.call(t
9a10: 68 69 73 2c 38 2c 31 36 37 31 31 39 33 35 29 3b  his,8,16711935);
9a20: 6c 2e 63 61 6c 6c 28 74 68 69 73 2c 32 2c 38 35  l.call(this,2,85
9a30: 38 39 39 33 34 35 39 29 3b 6a 2e 63 61 6c 6c 28  8993459);j.call(
9a40: 74 68 69 73 2c 31 36 2c 36 35 35 33 35 29 3b 6a  this,16,65535);j
9a50: 2e 63 61 6c 6c 28 74 68 69 73 2c 34 2c 32 35 32  .call(this,4,252
9a60: 36 34 35 31 33 35 29 3b 62 5b 63 5d 3d 74 68 69  645135);b[c]=thi
9a70: 73 2e 5f 6c 42 6c 6f 63 6b 3b 62 5b 63 2b 31 5d  s._lBlock;b[c+1]
9a80: 3d 74 68 69 73 2e 5f 72 42 6c 6f 63 6b 7d 2c 6b  =this._rBlock},k
9a90: 65 79 53 69 7a 65 3a 32 2c 69 76 53 69 7a 65 3a  eySize:2,ivSize:
9aa0: 32 2c 62 6c 6f 63 6b 53 69 7a 65 3a 32 7d 29 3b  2,blockSize:2});
9ab0: 68 2e 44 45 53 3d 65 2e 5f 63 72 65 61 74 65 48  h.DES=e._createH
9ac0: 65 6c 70 65 72 28 6d 29 3b 67 3d 67 2e 54 72 69  elper(m);g=g.Tri
9ad0: 70 6c 65 44 45 53 3d 65 2e 65 78 74 65 6e 64 28  pleDES=e.extend(
9ae0: 7b 5f 64 6f 52 65 73 65 74 3a 66 75 6e 63 74 69  {_doReset:functi
9af0: 6f 6e 28 29 7b 76 61 72 20 62 3d 74 68 69 73 2e  on(){var b=this.
9b00: 5f 6b 65 79 2e 77 6f 72 64 73 3b 74 68 69 73 2e  _key.words;this.
9b10: 5f 64 65 73 31 3d 6d 2e 63 72 65 61 74 65 45 6e  _des1=m.createEn
9b20: 63 72 79 70 74 6f 72 28 6e 2e 63 72 65 61 74 65  cryptor(n.create
9b30: 28 62 2e 73 6c 69 63 65 28 30 2c 32 29 29 29 3b  (b.slice(0,2)));
9b40: 74 68 69 73 2e 5f 64 65 73 32 3d 6d 2e 63 72 65  this._des2=m.cre
9b50: 61 74 65 45 6e 63 72 79 70 74 6f 72 28 6e 2e 63  ateEncryptor(n.c
9b60: 72 65 61 74 65 28 62 2e 73 6c 69 63 65 28 32 2c  reate(b.slice(2,
9b70: 34 29 29 29 3b 74 68 69 73 2e 5f 64 65 73 33 3d  4)));this._des3=
9b80: 0a 6d 2e 63 72 65 61 74 65 45 6e 63 72 79 70 74  .m.createEncrypt
9b90: 6f 72 28 6e 2e 63 72 65 61 74 65 28 62 2e 73 6c  or(n.create(b.sl
9ba0: 69 63 65 28 34 2c 36 29 29 29 7d 2c 65 6e 63 72  ice(4,6)))},encr
9bb0: 79 70 74 42 6c 6f 63 6b 3a 66 75 6e 63 74 69 6f  yptBlock:functio
9bc0: 6e 28 62 2c 63 29 7b 74 68 69 73 2e 5f 64 65 73  n(b,c){this._des
9bd0: 31 2e 65 6e 63 72 79 70 74 42 6c 6f 63 6b 28 62  1.encryptBlock(b
9be0: 2c 63 29 3b 74 68 69 73 2e 5f 64 65 73 32 2e 64  ,c);this._des2.d
9bf0: 65 63 72 79 70 74 42 6c 6f 63 6b 28 62 2c 63 29  ecryptBlock(b,c)
9c00: 3b 74 68 69 73 2e 5f 64 65 73 33 2e 65 6e 63 72  ;this._des3.encr
9c10: 79 70 74 42 6c 6f 63 6b 28 62 2c 63 29 7d 2c 64  yptBlock(b,c)},d
9c20: 65 63 72 79 70 74 42 6c 6f 63 6b 3a 66 75 6e 63  ecryptBlock:func
9c30: 74 69 6f 6e 28 62 2c 63 29 7b 74 68 69 73 2e 5f  tion(b,c){this._
9c40: 64 65 73 33 2e 64 65 63 72 79 70 74 42 6c 6f 63  des3.decryptBloc
9c50: 6b 28 62 2c 63 29 3b 74 68 69 73 2e 5f 64 65 73  k(b,c);this._des
9c60: 32 2e 65 6e 63 72 79 70 74 42 6c 6f 63 6b 28 62  2.encryptBlock(b
9c70: 2c 63 29 3b 74 68 69 73 2e 5f 64 65 73 31 2e 64  ,c);this._des1.d
9c80: 65 63 72 79 70 74 42 6c 6f 63 6b 28 62 2c 63 29  ecryptBlock(b,c)
9c90: 7d 2c 6b 65 79 53 69 7a 65 3a 36 2c 69 76 53 69  },keySize:6,ivSi
9ca0: 7a 65 3a 32 2c 62 6c 6f 63 6b 53 69 7a 65 3a 32  ze:2,blockSize:2
9cb0: 7d 29 3b 68 2e 54 72 69 70 6c 65 44 45 53 3d 65  });h.TripleDES=e
9cc0: 2e 5f 63 72 65 61 74 65 48 65 6c 70 65 72 28 67  ._createHelper(g
9cd0: 29 7d 29 28 29 3b 0a 0a 2f 2a 0a 43 72 79 70 74  )})();../*.Crypt
9ce0: 6f 4a 53 20 76 33 2e 31 2e 32 20 73 68 61 31 2d  oJS v3.1.2 sha1-
9cf0: 6d 69 6e 2e 6a 73 0a 63 6f 64 65 2e 67 6f 6f 67  min.js.code.goog
9d00: 6c 65 2e 63 6f 6d 2f 70 2f 63 72 79 70 74 6f 2d  le.com/p/crypto-
9d10: 6a 73 0a 28 63 29 20 32 30 30 39 2d 32 30 31 33  js.(c) 2009-2013
9d20: 20 62 79 20 4a 65 66 66 20 4d 6f 74 74 2e 20 41   by Jeff Mott. A
9d30: 6c 6c 20 72 69 67 68 74 73 20 72 65 73 65 72 76  ll rights reserv
9d40: 65 64 2e 0a 63 6f 64 65 2e 67 6f 6f 67 6c 65 2e  ed..code.google.
9d50: 63 6f 6d 2f 70 2f 63 72 79 70 74 6f 2d 6a 73 2f  com/p/crypto-js/
9d60: 77 69 6b 69 2f 4c 69 63 65 6e 73 65 0a 2a 2f 0a  wiki/License.*/.
9d70: 28 66 75 6e 63 74 69 6f 6e 28 29 7b 76 61 72 20  (function(){var 
9d80: 6b 3d 43 72 79 70 74 6f 4a 53 2c 62 3d 6b 2e 6c  k=CryptoJS,b=k.l
9d90: 69 62 2c 6d 3d 62 2e 57 6f 72 64 41 72 72 61 79  ib,m=b.WordArray
9da0: 2c 6c 3d 62 2e 48 61 73 68 65 72 2c 64 3d 5b 5d  ,l=b.Hasher,d=[]
9db0: 2c 62 3d 6b 2e 61 6c 67 6f 2e 53 48 41 31 3d 6c  ,b=k.algo.SHA1=l
9dc0: 2e 65 78 74 65 6e 64 28 7b 5f 64 6f 52 65 73 65  .extend({_doRese
9dd0: 74 3a 66 75 6e 63 74 69 6f 6e 28 29 7b 74 68 69  t:function(){thi
9de0: 73 2e 5f 68 61 73 68 3d 6e 65 77 20 6d 2e 69 6e  s._hash=new m.in
9df0: 69 74 28 5b 31 37 33 32 35 38 34 31 39 33 2c 34  it([1732584193,4
9e00: 30 32 33 32 33 33 34 31 37 2c 32 35 36 32 33 38  023233417,256238
9e10: 33 31 30 32 2c 32 37 31 37 33 33 38 37 38 2c 33  3102,271733878,3
9e20: 32 38 35 33 37 37 35 32 30 5d 29 7d 2c 5f 64 6f  285377520])},_do
9e30: 50 72 6f 63 65 73 73 42 6c 6f 63 6b 3a 66 75 6e  ProcessBlock:fun
9e40: 63 74 69 6f 6e 28 6e 2c 70 29 7b 66 6f 72 28 76  ction(n,p){for(v
9e50: 61 72 20 61 3d 74 68 69 73 2e 5f 68 61 73 68 2e  ar a=this._hash.
9e60: 77 6f 72 64 73 2c 65 3d 61 5b 30 5d 2c 66 3d 61  words,e=a[0],f=a
9e70: 5b 31 5d 2c 68 3d 61 5b 32 5d 2c 6a 3d 61 5b 33  [1],h=a[2],j=a[3
9e80: 5d 2c 62 3d 61 5b 34 5d 2c 63 3d 30 3b 38 30 3e  ],b=a[4],c=0;80>
9e90: 63 3b 63 2b 2b 29 7b 69 66 28 31 36 3e 63 29 64  c;c++){if(16>c)d
9ea0: 5b 63 5d 3d 6e 5b 70 2b 63 5d 7c 30 3b 65 6c 73  [c]=n[p+c]|0;els
9eb0: 65 7b 76 61 72 20 67 3d 64 5b 63 2d 33 5d 5e 64  e{var g=d[c-3]^d
9ec0: 5b 63 2d 38 5d 5e 64 5b 63 2d 31 34 5d 5e 64 5b  [c-8]^d[c-14]^d[
9ed0: 63 2d 31 36 5d 3b 64 5b 63 5d 3d 67 3c 3c 31 7c  c-16];d[c]=g<<1|
9ee0: 67 3e 3e 3e 33 31 7d 67 3d 28 65 3c 3c 35 7c 65  g>>>31}g=(e<<5|e
9ef0: 3e 3e 3e 32 37 29 2b 62 2b 64 5b 63 5d 3b 67 3d  >>>27)+b+d[c];g=
9f00: 32 30 3e 63 3f 67 2b 28 28 66 26 68 7c 7e 66 26  20>c?g+((f&h|~f&
9f10: 6a 29 2b 31 35 31 38 35 30 30 32 34 39 29 3a 34  j)+1518500249):4
9f20: 30 3e 63 3f 67 2b 28 28 66 5e 68 5e 6a 29 2b 31  0>c?g+((f^h^j)+1
9f30: 38 35 39 37 37 35 33 39 33 29 3a 36 30 3e 63 3f  859775393):60>c?
9f40: 67 2b 28 28 66 26 68 7c 66 26 6a 7c 68 26 6a 29  g+((f&h|f&j|h&j)
9f50: 2d 31 38 39 34 30 30 37 35 38 38 29 3a 67 2b 28  -1894007588):g+(
9f60: 28 66 5e 68 5e 0a 6a 29 2d 38 39 39 34 39 37 35  (f^h^.j)-8994975
9f70: 31 34 29 3b 62 3d 6a 3b 6a 3d 68 3b 68 3d 66 3c  14);b=j;j=h;h=f<
9f80: 3c 33 30 7c 66 3e 3e 3e 32 3b 66 3d 65 3b 65 3d  <30|f>>>2;f=e;e=
9f90: 67 7d 61 5b 30 5d 3d 61 5b 30 5d 2b 65 7c 30 3b  g}a[0]=a[0]+e|0;
9fa0: 61 5b 31 5d 3d 61 5b 31 5d 2b 66 7c 30 3b 61 5b  a[1]=a[1]+f|0;a[
9fb0: 32 5d 3d 61 5b 32 5d 2b 68 7c 30 3b 61 5b 33 5d  2]=a[2]+h|0;a[3]
9fc0: 3d 61 5b 33 5d 2b 6a 7c 30 3b 61 5b 34 5d 3d 61  =a[3]+j|0;a[4]=a
9fd0: 5b 34 5d 2b 62 7c 30 7d 2c 5f 64 6f 46 69 6e 61  [4]+b|0},_doFina
9fe0: 6c 69 7a 65 3a 66 75 6e 63 74 69 6f 6e 28 29 7b  lize:function(){
9ff0: 76 61 72 20 62 3d 74 68 69 73 2e 5f 64 61 74 61  var b=this._data
a000: 2c 64 3d 62 2e 77 6f 72 64 73 2c 61 3d 38 2a 74  ,d=b.words,a=8*t
a010: 68 69 73 2e 5f 6e 44 61 74 61 42 79 74 65 73 2c  his._nDataBytes,
a020: 65 3d 38 2a 62 2e 73 69 67 42 79 74 65 73 3b 64  e=8*b.sigBytes;d
a030: 5b 65 3e 3e 3e 35 5d 7c 3d 31 32 38 3c 3c 32 34  [e>>>5]|=128<<24
a040: 2d 65 25 33 32 3b 64 5b 28 65 2b 36 34 3e 3e 3e  -e%32;d[(e+64>>>
a050: 39 3c 3c 34 29 2b 31 34 5d 3d 4d 61 74 68 2e 66  9<<4)+14]=Math.f
a060: 6c 6f 6f 72 28 61 2f 34 32 39 34 39 36 37 32 39  loor(a/429496729
a070: 36 29 3b 64 5b 28 65 2b 36 34 3e 3e 3e 39 3c 3c  6);d[(e+64>>>9<<
a080: 34 29 2b 31 35 5d 3d 61 3b 62 2e 73 69 67 42 79  4)+15]=a;b.sigBy
a090: 74 65 73 3d 34 2a 64 2e 6c 65 6e 67 74 68 3b 74  tes=4*d.length;t
a0a0: 68 69 73 2e 5f 70 72 6f 63 65 73 73 28 29 3b 72  his._process();r
a0b0: 65 74 75 72 6e 20 74 68 69 73 2e 5f 68 61 73 68  eturn this._hash
a0c0: 7d 2c 63 6c 6f 6e 65 3a 66 75 6e 63 74 69 6f 6e  },clone:function
a0d0: 28 29 7b 76 61 72 20 62 3d 6c 2e 63 6c 6f 6e 65  (){var b=l.clone
a0e0: 2e 63 61 6c 6c 28 74 68 69 73 29 3b 62 2e 5f 68  .call(this);b._h
a0f0: 61 73 68 3d 74 68 69 73 2e 5f 68 61 73 68 2e 63  ash=this._hash.c
a100: 6c 6f 6e 65 28 29 3b 72 65 74 75 72 6e 20 62 7d  lone();return b}
a110: 7d 29 3b 6b 2e 53 48 41 31 3d 6c 2e 5f 63 72 65  });k.SHA1=l._cre
a120: 61 74 65 48 65 6c 70 65 72 28 62 29 3b 6b 2e 48  ateHelper(b);k.H
a130: 6d 61 63 53 48 41 31 3d 6c 2e 5f 63 72 65 61 74  macSHA1=l._creat
a140: 65 48 6d 61 63 48 65 6c 70 65 72 28 62 29 7d 29  eHmacHelper(b)})
a150: 28 29 3b 0a 0a 2f 2a 0a 43 72 79 70 74 6f 4a 53  ();../*.CryptoJS
a160: 20 76 33 2e 31 2e 32 20 72 69 70 65 6d 64 31 36   v3.1.2 ripemd16
a170: 30 2d 6d 69 6e 2e 6a 73 0a 63 6f 64 65 2e 67 6f  0-min.js.code.go
a180: 6f 67 6c 65 2e 63 6f 6d 2f 70 2f 63 72 79 70 74  ogle.com/p/crypt
a190: 6f 2d 6a 73 0a 28 63 29 20 32 30 30 39 2d 32 30  o-js.(c) 2009-20
a1a0: 31 33 20 62 79 20 4a 65 66 66 20 4d 6f 74 74 2e  13 by Jeff Mott.
a1b0: 20 41 6c 6c 20 72 69 67 68 74 73 20 72 65 73 65   All rights rese
a1c0: 72 76 65 64 2e 0a 63 6f 64 65 2e 67 6f 6f 67 6c  rved..code.googl
a1d0: 65 2e 63 6f 6d 2f 70 2f 63 72 79 70 74 6f 2d 6a  e.com/p/crypto-j
a1e0: 73 2f 77 69 6b 69 2f 4c 69 63 65 6e 73 65 0a 2a  s/wiki/License.*
a1f0: 2f 0a 2f 2a 0a 0a 28 63 29 20 32 30 31 32 20 62  /./*..(c) 2012 b
a200: 79 20 43 65 64 72 69 63 20 4d 65 73 6e 69 6c 2e  y Cedric Mesnil.
a210: 20 41 6c 6c 20 72 69 67 68 74 73 20 72 65 73 65   All rights rese
a220: 72 76 65 64 2e 0a 0a 52 65 64 69 73 74 72 69 62  rved...Redistrib
a230: 75 74 69 6f 6e 20 61 6e 64 20 75 73 65 20 69 6e  ution and use in
a240: 20 73 6f 75 72 63 65 20 61 6e 64 20 62 69 6e 61   source and bina
a250: 72 79 20 66 6f 72 6d 73 2c 20 77 69 74 68 20 6f  ry forms, with o
a260: 72 20 77 69 74 68 6f 75 74 20 6d 6f 64 69 66 69  r without modifi
a270: 63 61 74 69 6f 6e 2c 20 61 72 65 20 70 65 72 6d  cation, are perm
a280: 69 74 74 65 64 20 70 72 6f 76 69 64 65 64 20 74  itted provided t
a290: 68 61 74 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e  hat the followin
a2a0: 67 20 63 6f 6e 64 69 74 69 6f 6e 73 20 61 72 65  g conditions are
a2b0: 20 6d 65 74 3a 0a 0a 20 20 20 20 2d 20 52 65 64   met:..    - Red
a2c0: 69 73 74 72 69 62 75 74 69 6f 6e 73 20 6f 66 20  istributions of 
a2d0: 73 6f 75 72 63 65 20 63 6f 64 65 20 6d 75 73 74  source code must
a2e0: 20 72 65 74 61 69 6e 20 74 68 65 20 61 62 6f 76   retain the abov
a2f0: 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69  e copyright noti
a300: 63 65 2c 20 74 68 69 73 20 6c 69 73 74 20 6f 66  ce, this list of
a310: 20 63 6f 6e 64 69 74 69 6f 6e 73 20 61 6e 64 20   conditions and 
a320: 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 64 69  the following di
a330: 73 63 6c 61 69 6d 65 72 2e 0a 20 20 20 20 2d 20  sclaimer..    - 
a340: 52 65 64 69 73 74 72 69 62 75 74 69 6f 6e 73 20  Redistributions 
a350: 69 6e 20 62 69 6e 61 72 79 20 66 6f 72 6d 20 6d  in binary form m
a360: 75 73 74 20 72 65 70 72 6f 64 75 63 65 20 74 68  ust reproduce th
a370: 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68  e above copyrigh
a380: 74 20 6e 6f 74 69 63 65 2c 20 74 68 69 73 20 6c  t notice, this l
a390: 69 73 74 20 6f 66 20 63 6f 6e 64 69 74 69 6f 6e  ist of condition
a3a0: 73 20 61 6e 64 20 74 68 65 20 66 6f 6c 6c 6f 77  s and the follow
a3b0: 69 6e 67 20 64 69 73 63 6c 61 69 6d 65 72 20 69  ing disclaimer i
a3c0: 6e 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 61 74  n the documentat
a3d0: 69 6f 6e 20 61 6e 64 2f 6f 72 20 6f 74 68 65 72  ion and/or other
a3e0: 20 6d 61 74 65 72 69 61 6c 73 20 70 72 6f 76 69   materials provi
a3f0: 64 65 64 20 77 69 74 68 20 74 68 65 20 64 69 73  ded with the dis
a400: 74 72 69 62 75 74 69 6f 6e 2e 0a 0a 54 48 49 53  tribution...THIS
a410: 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f   SOFTWARE IS PRO
a420: 56 49 44 45 44 20 42 59 20 54 48 45 20 43 4f 50  VIDED BY THE COP
a430: 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 20 41  YRIGHT HOLDERS A
a440: 4e 44 20 43 4f 4e 54 52 49 42 55 54 4f 52 53 20  ND CONTRIBUTORS 
a450: 22 41 53 20 49 53 22 20 41 4e 44 20 41 4e 59 20  "AS IS" AND ANY 
a460: 45 58 50 52 45 53 53 20 4f 52 20 49 4d 50 4c 49  EXPRESS OR IMPLI
a470: 45 44 20 57 41 52 52 41 4e 54 49 45 53 2c 20 49  ED WARRANTIES, I
a480: 4e 43 4c 55 44 49 4e 47 2c 20 42 55 54 20 4e 4f  NCLUDING, BUT NO
a490: 54 20 4c 49 4d 49 54 45 44 20 54 4f 2c 20 54 48  T LIMITED TO, TH
a4a0: 45 20 49 4d 50 4c 49 45 44 20 57 41 52 52 41 4e  E IMPLIED WARRAN
a4b0: 54 49 45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54  TIES OF MERCHANT
a4c0: 41 42 49 4c 49 54 59 20 41 4e 44 20 46 49 54 4e  ABILITY AND FITN
a4d0: 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43  ESS FOR A PARTIC
a4e0: 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 52 45  ULAR PURPOSE ARE
a4f0: 20 44 49 53 43 4c 41 49 4d 45 44 2e 20 49 4e 20   DISCLAIMED. IN 
a500: 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c 20 54  NO EVENT SHALL T
a510: 48 45 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c  HE COPYRIGHT HOL
a520: 44 45 52 20 4f 52 20 43 4f 4e 54 52 49 42 55 54  DER OR CONTRIBUT
a530: 4f 52 53 20 42 45 20 4c 49 41 42 4c 45 20 46 4f  ORS BE LIABLE FO
a540: 52 20 41 4e 59 20 44 49 52 45 43 54 2c 20 49 4e  R ANY DIRECT, IN
a550: 44 49 52 45 43 54 2c 20 49 4e 43 49 44 45 4e 54  DIRECT, INCIDENT
a560: 41 4c 2c 20 53 50 45 43 49 41 4c 2c 20 45 58 45  AL, SPECIAL, EXE
a570: 4d 50 4c 41 52 59 2c 20 4f 52 20 43 4f 4e 53 45  MPLARY, OR CONSE
a580: 51 55 45 4e 54 49 41 4c 20 44 41 4d 41 47 45 53  QUENTIAL DAMAGES
a590: 20 28 49 4e 43 4c 55 44 49 4e 47 2c 20 42 55 54   (INCLUDING, BUT
a5a0: 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 2c   NOT LIMITED TO,
a5b0: 20 50 52 4f 43 55 52 45 4d 45 4e 54 20 4f 46 20   PROCUREMENT OF 
a5c0: 53 55 42 53 54 49 54 55 54 45 20 47 4f 4f 44 53  SUBSTITUTE GOODS
a5d0: 20 4f 52 20 53 45 52 56 49 43 45 53 3b 20 4c 4f   OR SERVICES; LO
a5e0: 53 53 20 4f 46 20 55 53 45 2c 20 44 41 54 41 2c  SS OF USE, DATA,
a5f0: 20 4f 52 20 50 52 4f 46 49 54 53 3b 20 4f 52 20   OR PROFITS; OR 
a600: 42 55 53 49 4e 45 53 53 20 49 4e 54 45 52 52 55  BUSINESS INTERRU
a610: 50 54 49 4f 4e 29 20 48 4f 57 45 56 45 52 20 43  PTION) HOWEVER C
a620: 41 55 53 45 44 20 41 4e 44 20 4f 4e 20 41 4e 59  AUSED AND ON ANY
a630: 20 54 48 45 4f 52 59 20 4f 46 20 4c 49 41 42 49   THEORY OF LIABI
a640: 4c 49 54 59 2c 20 57 48 45 54 48 45 52 20 49 4e  LITY, WHETHER IN
a650: 20 43 4f 4e 54 52 41 43 54 2c 20 53 54 52 49 43   CONTRACT, STRIC
a660: 54 20 4c 49 41 42 49 4c 49 54 59 2c 20 4f 52 20  T LIABILITY, OR 
a670: 54 4f 52 54 20 28 49 4e 43 4c 55 44 49 4e 47 20  TORT (INCLUDING 
a680: 4e 45 47 4c 49 47 45 4e 43 45 20 4f 52 20 4f 54  NEGLIGENCE OR OT
a690: 48 45 52 57 49 53 45 29 20 41 52 49 53 49 4e 47  HERWISE) ARISING
a6a0: 20 49 4e 20 41 4e 59 20 57 41 59 20 4f 55 54 20   IN ANY WAY OUT 
a6b0: 4f 46 20 54 48 45 20 55 53 45 20 4f 46 20 54 48  OF THE USE OF TH
a6c0: 49 53 20 53 4f 46 54 57 41 52 45 2c 20 45 56 45  IS SOFTWARE, EVE
a6d0: 4e 20 49 46 20 41 44 56 49 53 45 44 20 4f 46 20  N IF ADVISED OF 
a6e0: 54 48 45 20 50 4f 53 53 49 42 49 4c 49 54 59 20  THE POSSIBILITY 
a6f0: 4f 46 20 53 55 43 48 20 44 41 4d 41 47 45 2e 0a  OF SUCH DAMAGE..
a700: 2a 2f 0a 28 66 75 6e 63 74 69 6f 6e 28 29 7b 76  */.(function(){v
a710: 61 72 20 71 3d 43 72 79 70 74 6f 4a 53 2c 64 3d  ar q=CryptoJS,d=
a720: 71 2e 6c 69 62 2c 6e 3d 64 2e 57 6f 72 64 41 72  q.lib,n=d.WordAr
a730: 72 61 79 2c 70 3d 64 2e 48 61 73 68 65 72 2c 64  ray,p=d.Hasher,d
a740: 3d 71 2e 61 6c 67 6f 2c 78 3d 6e 2e 63 72 65 61  =q.algo,x=n.crea
a750: 74 65 28 5b 30 2c 31 2c 32 2c 33 2c 34 2c 35 2c  te([0,1,2,3,4,5,
a760: 36 2c 37 2c 38 2c 39 2c 31 30 2c 31 31 2c 31 32  6,7,8,9,10,11,12
a770: 2c 31 33 2c 31 34 2c 31 35 2c 37 2c 34 2c 31 33  ,13,14,15,7,4,13
a780: 2c 31 2c 31 30 2c 36 2c 31 35 2c 33 2c 31 32 2c  ,1,10,6,15,3,12,
a790: 30 2c 39 2c 35 2c 32 2c 31 34 2c 31 31 2c 38 2c  0,9,5,2,14,11,8,
a7a0: 33 2c 31 30 2c 31 34 2c 34 2c 39 2c 31 35 2c 38  3,10,14,4,9,15,8
a7b0: 2c 31 2c 32 2c 37 2c 30 2c 36 2c 31 33 2c 31 31  ,1,2,7,0,6,13,11
a7c0: 2c 35 2c 31 32 2c 31 2c 39 2c 31 31 2c 31 30 2c  ,5,12,1,9,11,10,
a7d0: 30 2c 38 2c 31 32 2c 34 2c 31 33 2c 33 2c 37 2c  0,8,12,4,13,3,7,
a7e0: 31 35 2c 31 34 2c 35 2c 36 2c 32 2c 34 2c 30 2c  15,14,5,6,2,4,0,
a7f0: 35 2c 39 2c 37 2c 31 32 2c 32 2c 31 30 2c 31 34  5,9,7,12,2,10,14
a800: 2c 31 2c 33 2c 38 2c 31 31 2c 36 2c 31 35 2c 31  ,1,3,8,11,6,15,1
a810: 33 5d 29 2c 79 3d 6e 2e 63 72 65 61 74 65 28 5b  3]),y=n.create([
a820: 35 2c 31 34 2c 37 2c 30 2c 39 2c 32 2c 31 31 2c  5,14,7,0,9,2,11,
a830: 34 2c 31 33 2c 36 2c 31 35 2c 38 2c 31 2c 31 30  4,13,6,15,8,1,10
a840: 2c 33 2c 31 32 2c 36 2c 31 31 2c 33 2c 37 2c 30  ,3,12,6,11,3,7,0
a850: 2c 31 33 2c 35 2c 31 30 2c 31 34 2c 31 35 2c 38  ,13,5,10,14,15,8
a860: 2c 31 32 2c 34 2c 39 2c 31 2c 32 2c 31 35 2c 35  ,12,4,9,1,2,15,5
a870: 2c 31 2c 33 2c 37 2c 31 34 2c 36 2c 39 2c 31 31  ,1,3,7,14,6,9,11
a880: 2c 38 2c 31 32 2c 32 2c 31 30 2c 30 2c 34 2c 31  ,8,12,2,10,0,4,1
a890: 33 2c 38 2c 36 2c 34 2c 31 2c 33 2c 31 31 2c 31  3,8,6,4,1,3,11,1
a8a0: 35 2c 30 2c 35 2c 31 32 2c 32 2c 31 33 2c 39 2c  5,0,5,12,2,13,9,
a8b0: 37 2c 31 30 2c 31 34 2c 31 32 2c 31 35 2c 31 30  7,10,14,12,15,10
a8c0: 2c 34 2c 31 2c 35 2c 38 2c 37 2c 36 2c 32 2c 31  ,4,1,5,8,7,6,2,1
a8d0: 33 2c 31 34 2c 30 2c 33 2c 39 2c 31 31 5d 29 2c  3,14,0,3,9,11]),
a8e0: 7a 3d 6e 2e 63 72 65 61 74 65 28 5b 31 31 2c 31  z=n.create([11,1
a8f0: 34 2c 31 35 2c 31 32 2c 0a 35 2c 38 2c 37 2c 39  4,15,12,.5,8,7,9
a900: 2c 31 31 2c 31 33 2c 31 34 2c 31 35 2c 36 2c 37  ,11,13,14,15,6,7
a910: 2c 39 2c 38 2c 37 2c 36 2c 38 2c 31 33 2c 31 31  ,9,8,7,6,8,13,11
a920: 2c 39 2c 37 2c 31 35 2c 37 2c 31 32 2c 31 35 2c  ,9,7,15,7,12,15,
a930: 39 2c 31 31 2c 37 2c 31 33 2c 31 32 2c 31 31 2c  9,11,7,13,12,11,
a940: 31 33 2c 36 2c 37 2c 31 34 2c 39 2c 31 33 2c 31  13,6,7,14,9,13,1
a950: 35 2c 31 34 2c 38 2c 31 33 2c 36 2c 35 2c 31 32  5,14,8,13,6,5,12
a960: 2c 37 2c 35 2c 31 31 2c 31 32 2c 31 34 2c 31 35  ,7,5,11,12,14,15
a970: 2c 31 34 2c 31 35 2c 39 2c 38 2c 39 2c 31 34 2c  ,14,15,9,8,9,14,
a980: 35 2c 36 2c 38 2c 36 2c 35 2c 31 32 2c 39 2c 31  5,6,8,6,5,12,9,1
a990: 35 2c 35 2c 31 31 2c 36 2c 38 2c 31 33 2c 31 32  5,5,11,6,8,13,12
a9a0: 2c 35 2c 31 32 2c 31 33 2c 31 34 2c 31 31 2c 38  ,5,12,13,14,11,8
a9b0: 2c 35 2c 36 5d 29 2c 41 3d 6e 2e 63 72 65 61 74  ,5,6]),A=n.creat
a9c0: 65 28 5b 38 2c 39 2c 39 2c 31 31 2c 31 33 2c 31  e([8,9,9,11,13,1
a9d0: 35 2c 31 35 2c 35 2c 37 2c 37 2c 38 2c 31 31 2c  5,15,5,7,7,8,11,
a9e0: 31 34 2c 31 34 2c 31 32 2c 36 2c 39 2c 31 33 2c  14,14,12,6,9,13,
a9f0: 31 35 2c 37 2c 31 32 2c 38 2c 39 2c 31 31 2c 37  15,7,12,8,9,11,7
aa00: 2c 37 2c 31 32 2c 37 2c 36 2c 31 35 2c 31 33 2c  ,7,12,7,6,15,13,
aa10: 31 31 2c 39 2c 37 2c 31 35 2c 31 31 2c 38 2c 36  11,9,7,15,11,8,6
aa20: 2c 36 2c 31 34 2c 31 32 2c 31 33 2c 35 2c 31 34  ,6,14,12,13,5,14
aa30: 2c 31 33 2c 31 33 2c 37 2c 35 2c 31 35 2c 35 2c  ,13,13,7,5,15,5,
aa40: 38 2c 31 31 2c 31 34 2c 31 34 2c 36 2c 31 34 2c  8,11,14,14,6,14,
aa50: 36 2c 39 2c 31 32 2c 39 2c 31 32 2c 35 2c 31 35  6,9,12,9,12,5,15
aa60: 2c 38 2c 38 2c 35 2c 31 32 2c 39 2c 31 32 2c 35  ,8,8,5,12,9,12,5
aa70: 2c 31 34 2c 36 2c 38 2c 31 33 2c 36 2c 35 2c 31  ,14,6,8,13,6,5,1
aa80: 35 2c 31 33 2c 31 31 2c 31 31 5d 29 2c 42 3d 6e  5,13,11,11]),B=n
aa90: 2e 63 72 65 61 74 65 28 5b 30 2c 31 35 31 38 35  .create([0,15185
aaa0: 30 30 32 34 39 2c 31 38 35 39 37 37 35 33 39 33  00249,1859775393
aab0: 2c 32 34 30 30 39 35 39 37 30 38 2c 32 38 34 30  ,2400959708,2840
aac0: 38 35 33 38 33 38 5d 29 2c 43 3d 6e 2e 63 72 65  853838]),C=n.cre
aad0: 61 74 65 28 5b 31 33 35 32 38 32 39 39 32 36 2c  ate([1352829926,
aae0: 31 35 34 38 36 30 33 36 38 34 2c 31 38 33 36 30  1548603684,18360
aaf0: 37 32 36 39 31 2c 0a 32 30 35 33 39 39 34 32 31  72691,.205399421
ab00: 37 2c 30 5d 29 2c 64 3d 64 2e 52 49 50 45 4d 44  7,0]),d=d.RIPEMD
ab10: 31 36 30 3d 70 2e 65 78 74 65 6e 64 28 7b 5f 64  160=p.extend({_d
ab20: 6f 52 65 73 65 74 3a 66 75 6e 63 74 69 6f 6e 28  oReset:function(
ab30: 29 7b 74 68 69 73 2e 5f 68 61 73 68 3d 6e 2e 63  ){this._hash=n.c
ab40: 72 65 61 74 65 28 5b 31 37 33 32 35 38 34 31 39  reate([173258419
ab50: 33 2c 34 30 32 33 32 33 33 34 31 37 2c 32 35 36  3,4023233417,256
ab60: 32 33 38 33 31 30 32 2c 32 37 31 37 33 33 38 37  2383102,27173387
ab70: 38 2c 33 32 38 35 33 37 37 35 32 30 5d 29 7d 2c  8,3285377520])},
ab80: 5f 64 6f 50 72 6f 63 65 73 73 42 6c 6f 63 6b 3a  _doProcessBlock:
ab90: 66 75 6e 63 74 69 6f 6e 28 65 2c 76 29 7b 66 6f  function(e,v){fo
aba0: 72 28 76 61 72 20 62 3d 30 3b 31 36 3e 62 3b 62  r(var b=0;16>b;b
abb0: 2b 2b 29 7b 76 61 72 20 63 3d 76 2b 62 2c 66 3d  ++){var c=v+b,f=
abc0: 65 5b 63 5d 3b 65 5b 63 5d 3d 28 66 3c 3c 38 7c  e[c];e[c]=(f<<8|
abd0: 66 3e 3e 3e 32 34 29 26 31 36 37 31 31 39 33 35  f>>>24)&16711935
abe0: 7c 28 66 3c 3c 32 34 7c 66 3e 3e 3e 38 29 26 34  |(f<<24|f>>>8)&4
abf0: 32 37 38 32 35 35 33 36 30 7d 76 61 72 20 63 3d  278255360}var c=
ac00: 74 68 69 73 2e 5f 68 61 73 68 2e 77 6f 72 64 73  this._hash.words
ac10: 2c 66 3d 42 2e 77 6f 72 64 73 2c 64 3d 43 2e 77  ,f=B.words,d=C.w
ac20: 6f 72 64 73 2c 6e 3d 78 2e 77 6f 72 64 73 2c 71  ords,n=x.words,q
ac30: 3d 79 2e 77 6f 72 64 73 2c 70 3d 7a 2e 77 6f 72  =y.words,p=z.wor
ac40: 64 73 2c 77 3d 41 2e 77 6f 72 64 73 2c 74 2c 67  ds,w=A.words,t,g
ac50: 2c 68 2c 6a 2c 72 2c 75 2c 6b 2c 6c 2c 6d 2c 73  ,h,j,r,u,k,l,m,s
ac60: 3b 75 3d 74 3d 63 5b 30 5d 3b 6b 3d 67 3d 63 5b  ;u=t=c[0];k=g=c[
ac70: 31 5d 3b 6c 3d 68 3d 63 5b 32 5d 3b 6d 3d 6a 3d  1];l=h=c[2];m=j=
ac80: 63 5b 33 5d 3b 73 3d 72 3d 63 5b 34 5d 3b 66 6f  c[3];s=r=c[4];fo
ac90: 72 28 76 61 72 20 61 2c 62 3d 30 3b 38 30 3e 62  r(var a,b=0;80>b
aca0: 3b 62 2b 3d 31 29 61 3d 74 2b 65 5b 76 2b 6e 5b  ;b+=1)a=t+e[v+n[
acb0: 62 5d 5d 7c 30 2c 61 3d 31 36 3e 62 3f 61 2b 28  b]]|0,a=16>b?a+(
acc0: 28 67 5e 68 5e 6a 29 2b 66 5b 30 5d 29 3a 33 32  (g^h^j)+f[0]):32
acd0: 3e 62 3f 61 2b 28 28 67 26 68 7c 7e 67 26 6a 29  >b?a+((g&h|~g&j)
ace0: 2b 66 5b 31 5d 29 3a 34 38 3e 62 3f 0a 61 2b 28  +f[1]):48>b?.a+(
acf0: 28 28 67 7c 7e 68 29 5e 6a 29 2b 66 5b 32 5d 29  ((g|~h)^j)+f[2])
ad00: 3a 36 34 3e 62 3f 61 2b 28 28 67 26 6a 7c 68 26  :64>b?a+((g&j|h&
ad10: 7e 6a 29 2b 66 5b 33 5d 29 3a 61 2b 28 28 67 5e  ~j)+f[3]):a+((g^
ad20: 28 68 7c 7e 6a 29 29 2b 66 5b 34 5d 29 2c 61 7c  (h|~j))+f[4]),a|
ad30: 3d 30 2c 61 3d 61 3c 3c 70 5b 62 5d 7c 61 3e 3e  =0,a=a<<p[b]|a>>
ad40: 3e 33 32 2d 70 5b 62 5d 2c 61 3d 61 2b 72 7c 30  >32-p[b],a=a+r|0
ad50: 2c 74 3d 72 2c 72 3d 6a 2c 6a 3d 68 3c 3c 31 30  ,t=r,r=j,j=h<<10
ad60: 7c 68 3e 3e 3e 32 32 2c 68 3d 67 2c 67 3d 61 2c  |h>>>22,h=g,g=a,
ad70: 61 3d 75 2b 65 5b 76 2b 71 5b 62 5d 5d 7c 30 2c  a=u+e[v+q[b]]|0,
ad80: 61 3d 31 36 3e 62 3f 61 2b 28 28 6b 5e 28 6c 7c  a=16>b?a+((k^(l|
ad90: 7e 6d 29 29 2b 64 5b 30 5d 29 3a 33 32 3e 62 3f  ~m))+d[0]):32>b?
ada0: 61 2b 28 28 6b 26 6d 7c 6c 26 7e 6d 29 2b 64 5b  a+((k&m|l&~m)+d[
adb0: 31 5d 29 3a 34 38 3e 62 3f 61 2b 28 28 28 6b 7c  1]):48>b?a+(((k|
adc0: 7e 6c 29 5e 6d 29 2b 64 5b 32 5d 29 3a 36 34 3e  ~l)^m)+d[2]):64>
add0: 62 3f 61 2b 28 28 6b 26 6c 7c 7e 6b 26 6d 29 2b  b?a+((k&l|~k&m)+
ade0: 64 5b 33 5d 29 3a 61 2b 28 28 6b 5e 6c 5e 6d 29  d[3]):a+((k^l^m)
adf0: 2b 64 5b 34 5d 29 2c 61 7c 3d 30 2c 61 3d 61 3c  +d[4]),a|=0,a=a<
ae00: 3c 77 5b 62 5d 7c 61 3e 3e 3e 33 32 2d 77 5b 62  <w[b]|a>>>32-w[b
ae10: 5d 2c 61 3d 61 2b 73 7c 30 2c 75 3d 73 2c 73 3d  ],a=a+s|0,u=s,s=
ae20: 6d 2c 6d 3d 6c 3c 3c 31 30 7c 6c 3e 3e 3e 32 32  m,m=l<<10|l>>>22
ae30: 2c 6c 3d 6b 2c 6b 3d 61 3b 61 3d 63 5b 31 5d 2b  ,l=k,k=a;a=c[1]+
ae40: 68 2b 6d 7c 30 3b 63 5b 31 5d 3d 63 5b 32 5d 2b  h+m|0;c[1]=c[2]+
ae50: 6a 2b 73 7c 30 3b 63 5b 32 5d 3d 63 5b 33 5d 2b  j+s|0;c[2]=c[3]+
ae60: 72 2b 75 7c 30 3b 63 5b 33 5d 3d 63 5b 34 5d 2b  r+u|0;c[3]=c[4]+
ae70: 74 2b 6b 7c 30 3b 63 5b 34 5d 3d 63 5b 30 5d 2b  t+k|0;c[4]=c[0]+
ae80: 67 2b 6c 7c 30 3b 63 5b 30 5d 3d 61 7d 2c 5f 64  g+l|0;c[0]=a},_d
ae90: 6f 46 69 6e 61 6c 69 7a 65 3a 66 75 6e 63 74 69  oFinalize:functi
aea0: 6f 6e 28 29 7b 76 61 72 20 65 3d 74 68 69 73 2e  on(){var e=this.
aeb0: 5f 64 61 74 61 2c 64 3d 65 2e 77 6f 72 64 73 2c  _data,d=e.words,
aec0: 62 3d 38 2a 74 68 69 73 2e 5f 6e 44 61 74 61 42  b=8*this._nDataB
aed0: 79 74 65 73 2c 63 3d 38 2a 65 2e 73 69 67 42 79  ytes,c=8*e.sigBy
aee0: 74 65 73 3b 0a 64 5b 63 3e 3e 3e 35 5d 7c 3d 31  tes;.d[c>>>5]|=1
aef0: 32 38 3c 3c 32 34 2d 63 25 33 32 3b 64 5b 28 63  28<<24-c%32;d[(c
af00: 2b 36 34 3e 3e 3e 39 3c 3c 34 29 2b 31 34 5d 3d  +64>>>9<<4)+14]=
af10: 28 62 3c 3c 38 7c 62 3e 3e 3e 32 34 29 26 31 36  (b<<8|b>>>24)&16
af20: 37 31 31 39 33 35 7c 28 62 3c 3c 32 34 7c 62 3e  711935|(b<<24|b>
af30: 3e 3e 38 29 26 34 32 37 38 32 35 35 33 36 30 3b  >>8)&4278255360;
af40: 65 2e 73 69 67 42 79 74 65 73 3d 34 2a 28 64 2e  e.sigBytes=4*(d.
af50: 6c 65 6e 67 74 68 2b 31 29 3b 74 68 69 73 2e 5f  length+1);this._
af60: 70 72 6f 63 65 73 73 28 29 3b 65 3d 74 68 69 73  process();e=this
af70: 2e 5f 68 61 73 68 3b 64 3d 65 2e 77 6f 72 64 73  ._hash;d=e.words
af80: 3b 66 6f 72 28 62 3d 30 3b 35 3e 62 3b 62 2b 2b  ;for(b=0;5>b;b++
af90: 29 63 3d 64 5b 62 5d 2c 64 5b 62 5d 3d 28 63 3c  )c=d[b],d[b]=(c<
afa0: 3c 38 7c 63 3e 3e 3e 32 34 29 26 31 36 37 31 31  <8|c>>>24)&16711
afb0: 39 33 35 7c 28 63 3c 3c 32 34 7c 63 3e 3e 3e 38  935|(c<<24|c>>>8
afc0: 29 26 34 32 37 38 32 35 35 33 36 30 3b 72 65 74  )&4278255360;ret
afd0: 75 72 6e 20 65 7d 2c 63 6c 6f 6e 65 3a 66 75 6e  urn e},clone:fun
afe0: 63 74 69 6f 6e 28 29 7b 76 61 72 20 64 3d 70 2e  ction(){var d=p.
aff0: 63 6c 6f 6e 65 2e 63 61 6c 6c 28 74 68 69 73 29  clone.call(this)
b000: 3b 64 2e 5f 68 61 73 68 3d 74 68 69 73 2e 5f 68  ;d._hash=this._h
b010: 61 73 68 2e 63 6c 6f 6e 65 28 29 3b 72 65 74 75  ash.clone();retu
b020: 72 6e 20 64 7d 7d 29 3b 71 2e 52 49 50 45 4d 44  rn d}});q.RIPEMD
b030: 31 36 30 3d 70 2e 5f 63 72 65 61 74 65 48 65 6c  160=p._createHel
b040: 70 65 72 28 64 29 3b 71 2e 48 6d 61 63 52 49 50  per(d);q.HmacRIP
b050: 45 4d 44 31 36 30 3d 70 2e 5f 63 72 65 61 74 65  EMD160=p._create
b060: 48 6d 61 63 48 65 6c 70 65 72 28 64 29 7d 29 28  HmacHelper(d)})(
b070: 4d 61 74 68 29 3b 0a 0a 2f 2a 0a 43 72 79 70 74  Math);../*.Crypt
b080: 6f 4a 53 20 76 33 2e 31 2e 32 20 70 62 6b 64 66  oJS v3.1.2 pbkdf
b090: 32 2d 6d 69 6e 2e 6a 73 0a 63 6f 64 65 2e 67 6f  2-min.js.code.go
b0a0: 6f 67 6c 65 2e 63 6f 6d 2f 70 2f 63 72 79 70 74  ogle.com/p/crypt
b0b0: 6f 2d 6a 73 0a 28 63 29 20 32 30 30 39 2d 32 30  o-js.(c) 2009-20
b0c0: 31 33 20 62 79 20 4a 65 66 66 20 4d 6f 74 74 2e  13 by Jeff Mott.
b0d0: 20 41 6c 6c 20 72 69 67 68 74 73 20 72 65 73 65   All rights rese
b0e0: 72 76 65 64 2e 0a 63 6f 64 65 2e 67 6f 6f 67 6c  rved..code.googl
b0f0: 65 2e 63 6f 6d 2f 70 2f 63 72 79 70 74 6f 2d 6a  e.com/p/crypto-j
b100: 73 2f 77 69 6b 69 2f 4c 69 63 65 6e 73 65 0a 2a  s/wiki/License.*
b110: 2f 0a 28 66 75 6e 63 74 69 6f 6e 28 29 7b 76 61  /.(function(){va
b120: 72 20 62 3d 43 72 79 70 74 6f 4a 53 2c 61 3d 62  r b=CryptoJS,a=b
b130: 2e 6c 69 62 2c 64 3d 61 2e 42 61 73 65 2c 6d 3d  .lib,d=a.Base,m=
b140: 61 2e 57 6f 72 64 41 72 72 61 79 2c 61 3d 62 2e  a.WordArray,a=b.
b150: 61 6c 67 6f 2c 71 3d 61 2e 48 4d 41 43 2c 6c 3d  algo,q=a.HMAC,l=
b160: 61 2e 50 42 4b 44 46 32 3d 64 2e 65 78 74 65 6e  a.PBKDF2=d.exten
b170: 64 28 7b 63 66 67 3a 64 2e 65 78 74 65 6e 64 28  d({cfg:d.extend(
b180: 7b 6b 65 79 53 69 7a 65 3a 34 2c 68 61 73 68 65  {keySize:4,hashe
b190: 72 3a 61 2e 53 48 41 31 2c 69 74 65 72 61 74 69  r:a.SHA1,iterati
b1a0: 6f 6e 73 3a 31 7d 29 2c 69 6e 69 74 3a 66 75 6e  ons:1}),init:fun
b1b0: 63 74 69 6f 6e 28 61 29 7b 74 68 69 73 2e 63 66  ction(a){this.cf
b1c0: 67 3d 74 68 69 73 2e 63 66 67 2e 65 78 74 65 6e  g=this.cfg.exten
b1d0: 64 28 61 29 7d 2c 63 6f 6d 70 75 74 65 3a 66 75  d(a)},compute:fu
b1e0: 6e 63 74 69 6f 6e 28 61 2c 62 29 7b 66 6f 72 28  nction(a,b){for(
b1f0: 76 61 72 20 63 3d 74 68 69 73 2e 63 66 67 2c 66  var c=this.cfg,f
b200: 3d 71 2e 63 72 65 61 74 65 28 63 2e 68 61 73 68  =q.create(c.hash
b210: 65 72 2c 61 29 2c 67 3d 6d 2e 63 72 65 61 74 65  er,a),g=m.create
b220: 28 29 2c 64 3d 6d 2e 63 72 65 61 74 65 28 5b 31  (),d=m.create([1
b230: 5d 29 2c 6c 3d 67 2e 77 6f 72 64 73 2c 72 3d 64  ]),l=g.words,r=d
b240: 2e 77 6f 72 64 73 2c 6e 3d 63 2e 6b 65 79 53 69  .words,n=c.keySi
b250: 7a 65 2c 63 3d 63 2e 69 74 65 72 61 74 69 6f 6e  ze,c=c.iteration
b260: 73 3b 6c 2e 6c 65 6e 67 74 68 3c 6e 3b 29 7b 76  s;l.length<n;){v
b270: 61 72 20 68 3d 66 2e 75 70 64 61 74 65 28 62 29  ar h=f.update(b)
b280: 2e 66 69 6e 61 6c 69 7a 65 28 64 29 3b 66 2e 72  .finalize(d);f.r
b290: 65 73 65 74 28 29 3b 66 6f 72 28 76 61 72 20 6a  eset();for(var j
b2a0: 3d 68 2e 77 6f 72 64 73 2c 73 3d 6a 2e 6c 65 6e  =h.words,s=j.len
b2b0: 67 74 68 2c 6b 3d 68 2c 70 3d 31 3b 70 3c 63 3b  gth,k=h,p=1;p<c;
b2c0: 70 2b 2b 29 7b 6b 3d 66 2e 66 69 6e 61 6c 69 7a  p++){k=f.finaliz
b2d0: 65 28 6b 29 3b 66 2e 72 65 73 65 74 28 29 3b 66  e(k);f.reset();f
b2e0: 6f 72 28 76 61 72 20 74 3d 6b 2e 77 6f 72 64 73  or(var t=k.words
b2f0: 2c 65 3d 30 3b 65 3c 73 3b 65 2b 2b 29 6a 5b 65  ,e=0;e<s;e++)j[e
b300: 5d 5e 3d 74 5b 65 5d 7d 67 2e 63 6f 6e 63 61 74  ]^=t[e]}g.concat
b310: 28 68 29 3b 0a 72 5b 30 5d 2b 2b 7d 67 2e 73 69  (h);.r[0]++}g.si
b320: 67 42 79 74 65 73 3d 34 2a 6e 3b 72 65 74 75 72  gBytes=4*n;retur
b330: 6e 20 67 7d 7d 29 3b 62 2e 50 42 4b 44 46 32 3d  n g}});b.PBKDF2=
b340: 66 75 6e 63 74 69 6f 6e 28 61 2c 62 2c 63 29 7b  function(a,b,c){
b350: 72 65 74 75 72 6e 20 6c 2e 63 72 65 61 74 65 28  return l.create(
b360: 63 29 2e 63 6f 6d 70 75 74 65 28 61 2c 62 29 7d  c).compute(a,b)}
b370: 7d 29 28 29 3b 0a 0a 2f 2a 21 20 28 63 29 20 54  })();../*! (c) T
b380: 6f 6d 20 57 75 20 7c 20 68 74 74 70 3a 2f 2f 77  om Wu | http://w
b390: 77 77 2d 63 73 2d 73 74 75 64 65 6e 74 73 2e 73  ww-cs-students.s
b3a0: 74 61 6e 66 6f 72 64 2e 65 64 75 2f 7e 74 6a 77  tanford.edu/~tjw
b3b0: 2f 6a 73 62 6e 2f 0a 20 2a 2f 0a 76 61 72 20 62  /jsbn/. */.var b
b3c0: 36 34 6d 61 70 3d 22 41 42 43 44 45 46 47 48 49  64map="ABCDEFGHI
b3d0: 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 58 59  JKLMNOPQRSTUVWXY
b3e0: 5a 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f  Zabcdefghijklmno
b3f0: 70 71 72 73 74 75 76 77 78 79 7a 30 31 32 33 34  pqrstuvwxyz01234
b400: 35 36 37 38 39 2b 2f 22 3b 76 61 72 20 62 36 34  56789+/";var b64
b410: 70 61 64 3d 22 3d 22 3b 66 75 6e 63 74 69 6f 6e  pad="=";function
b420: 20 68 65 78 32 62 36 34 28 64 29 7b 76 61 72 20   hex2b64(d){var 
b430: 62 3b 76 61 72 20 65 3b 76 61 72 20 61 3d 22 22  b;var e;var a=""
b440: 3b 66 6f 72 28 62 3d 30 3b 62 2b 33 3c 3d 64 2e  ;for(b=0;b+3<=d.
b450: 6c 65 6e 67 74 68 3b 62 2b 3d 33 29 7b 65 3d 70  length;b+=3){e=p
b460: 61 72 73 65 49 6e 74 28 64 2e 73 75 62 73 74 72  arseInt(d.substr
b470: 69 6e 67 28 62 2c 62 2b 33 29 2c 31 36 29 3b 61  ing(b,b+3),16);a
b480: 2b 3d 62 36 34 6d 61 70 2e 63 68 61 72 41 74 28  +=b64map.charAt(
b490: 65 3e 3e 36 29 2b 62 36 34 6d 61 70 2e 63 68 61  e>>6)+b64map.cha
b4a0: 72 41 74 28 65 26 36 33 29 7d 69 66 28 62 2b 31  rAt(e&63)}if(b+1
b4b0: 3d 3d 64 2e 6c 65 6e 67 74 68 29 7b 65 3d 70 61  ==d.length){e=pa
b4c0: 72 73 65 49 6e 74 28 64 2e 73 75 62 73 74 72 69  rseInt(d.substri
b4d0: 6e 67 28 62 2c 62 2b 31 29 2c 31 36 29 3b 61 2b  ng(b,b+1),16);a+
b4e0: 3d 62 36 34 6d 61 70 2e 63 68 61 72 41 74 28 65  =b64map.charAt(e
b4f0: 3c 3c 32 29 7d 65 6c 73 65 7b 69 66 28 62 2b 32  <<2)}else{if(b+2
b500: 3d 3d 64 2e 6c 65 6e 67 74 68 29 7b 65 3d 70 61  ==d.length){e=pa
b510: 72 73 65 49 6e 74 28 64 2e 73 75 62 73 74 72 69  rseInt(d.substri
b520: 6e 67 28 62 2c 62 2b 32 29 2c 31 36 29 3b 61 2b  ng(b,b+2),16);a+
b530: 3d 62 36 34 6d 61 70 2e 63 68 61 72 41 74 28 65  =b64map.charAt(e
b540: 3e 3e 32 29 2b 62 36 34 6d 61 70 2e 63 68 61 72  >>2)+b64map.char
b550: 41 74 28 28 65 26 33 29 3c 3c 34 29 7d 7d 69 66  At((e&3)<<4)}}if
b560: 28 62 36 34 70 61 64 29 7b 77 68 69 6c 65 28 28  (b64pad){while((
b570: 61 2e 6c 65 6e 67 74 68 26 33 29 3e 30 29 7b 61  a.length&3)>0){a
b580: 2b 3d 62 36 34 70 61 64 7d 7d 72 65 74 75 72 6e  +=b64pad}}return
b590: 20 61 7d 66 75 6e 63 74 69 6f 6e 20 62 36 34 74   a}function b64t
b5a0: 6f 68 65 78 28 66 29 7b 76 61 72 20 64 3d 22 22  ohex(f){var d=""
b5b0: 3b 76 61 72 20 65 3b 76 61 72 20 62 3d 30 3b 76  ;var e;var b=0;v
b5c0: 61 72 20 63 3b 76 61 72 20 61 3b 66 6f 72 28 65  ar c;var a;for(e
b5d0: 3d 30 3b 65 3c 66 2e 6c 65 6e 67 74 68 3b 2b 2b  =0;e<f.length;++
b5e0: 65 29 7b 69 66 28 66 2e 63 68 61 72 41 74 28 65  e){if(f.charAt(e
b5f0: 29 3d 3d 62 36 34 70 61 64 29 7b 62 72 65 61 6b  )==b64pad){break
b600: 7d 61 3d 62 36 34 6d 61 70 2e 69 6e 64 65 78 4f  }a=b64map.indexO
b610: 66 28 66 2e 63 68 61 72 41 74 28 65 29 29 3b 69  f(f.charAt(e));i
b620: 66 28 61 3c 30 29 7b 63 6f 6e 74 69 6e 75 65 7d  f(a<0){continue}
b630: 69 66 28 62 3d 3d 30 29 7b 64 2b 3d 69 6e 74 32  if(b==0){d+=int2
b640: 63 68 61 72 28 61 3e 3e 32 29 3b 63 3d 61 26 33  char(a>>2);c=a&3
b650: 3b 62 3d 31 7d 65 6c 73 65 7b 69 66 28 62 3d 3d  ;b=1}else{if(b==
b660: 31 29 7b 64 2b 3d 69 6e 74 32 63 68 61 72 28 28  1){d+=int2char((
b670: 63 3c 3c 32 29 7c 28 61 3e 3e 34 29 29 3b 63 3d  c<<2)|(a>>4));c=
b680: 61 26 31 35 3b 62 3d 32 7d 65 6c 73 65 7b 69 66  a&15;b=2}else{if
b690: 28 62 3d 3d 32 29 7b 64 2b 3d 69 6e 74 32 63 68  (b==2){d+=int2ch
b6a0: 61 72 28 63 29 3b 64 2b 3d 69 6e 74 32 63 68 61  ar(c);d+=int2cha
b6b0: 72 28 61 3e 3e 32 29 3b 63 3d 61 26 33 3b 62 3d  r(a>>2);c=a&3;b=
b6c0: 33 7d 65 6c 73 65 7b 64 2b 3d 69 6e 74 32 63 68  3}else{d+=int2ch
b6d0: 61 72 28 28 63 3c 3c 32 29 7c 28 61 3e 3e 34 29  ar((c<<2)|(a>>4)
b6e0: 29 3b 64 2b 3d 69 6e 74 32 63 68 61 72 28 61 26  );d+=int2char(a&
b6f0: 31 35 29 3b 62 3d 30 7d 7d 7d 7d 69 66 28 62 3d  15);b=0}}}}if(b=
b700: 3d 31 29 7b 64 2b 3d 69 6e 74 32 63 68 61 72 28  =1){d+=int2char(
b710: 63 3c 3c 32 29 7d 72 65 74 75 72 6e 20 64 7d 66  c<<2)}return d}f
b720: 75 6e 63 74 69 6f 6e 20 62 36 34 74 6f 42 41 28  unction b64toBA(
b730: 65 29 7b 76 61 72 20 64 3d 62 36 34 74 6f 68 65  e){var d=b64tohe
b740: 78 28 65 29 3b 76 61 72 20 63 3b 76 61 72 20 62  x(e);var c;var b
b750: 3d 6e 65 77 20 41 72 72 61 79 28 29 3b 66 6f 72  =new Array();for
b760: 28 63 3d 30 3b 32 2a 63 3c 64 2e 6c 65 6e 67 74  (c=0;2*c<d.lengt
b770: 68 3b 2b 2b 63 29 7b 62 5b 63 5d 3d 70 61 72 73  h;++c){b[c]=pars
b780: 65 49 6e 74 28 64 2e 73 75 62 73 74 72 69 6e 67  eInt(d.substring
b790: 28 32 2a 63 2c 32 2a 63 2b 32 29 2c 31 36 29 7d  (2*c,2*c+2),16)}
b7a0: 72 65 74 75 72 6e 20 62 7d 3b 0a 2f 2a 21 20 28  return b};./*! (
b7b0: 63 29 20 54 6f 6d 20 57 75 20 7c 20 68 74 74 70  c) Tom Wu | http
b7c0: 3a 2f 2f 77 77 77 2d 63 73 2d 73 74 75 64 65 6e  ://www-cs-studen
b7d0: 74 73 2e 73 74 61 6e 66 6f 72 64 2e 65 64 75 2f  ts.stanford.edu/
b7e0: 7e 74 6a 77 2f 6a 73 62 6e 2f 0a 20 2a 2f 0a 76  ~tjw/jsbn/. */.v
b7f0: 61 72 20 64 62 69 74 73 3b 76 61 72 20 63 61 6e  ar dbits;var can
b800: 61 72 79 3d 32 34 34 38 33 37 38 31 34 30 39 34  ary=244837814094
b810: 35 39 30 3b 76 61 72 20 6a 5f 6c 6d 3d 28 28 63  590;var j_lm=((c
b820: 61 6e 61 72 79 26 31 36 37 37 37 32 31 35 29 3d  anary&16777215)=
b830: 3d 31 35 37 31 35 30 37 30 29 3b 66 75 6e 63 74  =15715070);funct
b840: 69 6f 6e 20 42 69 67 49 6e 74 65 67 65 72 28 65  ion BigInteger(e
b850: 2c 64 2c 66 29 7b 69 66 28 65 21 3d 6e 75 6c 6c  ,d,f){if(e!=null
b860: 29 7b 69 66 28 22 6e 75 6d 62 65 72 22 3d 3d 74  ){if("number"==t
b870: 79 70 65 6f 66 20 65 29 7b 74 68 69 73 2e 66 72  ypeof e){this.fr
b880: 6f 6d 4e 75 6d 62 65 72 28 65 2c 64 2c 66 29 7d  omNumber(e,d,f)}
b890: 65 6c 73 65 7b 69 66 28 64 3d 3d 6e 75 6c 6c 26  else{if(d==null&
b8a0: 26 22 73 74 72 69 6e 67 22 21 3d 74 79 70 65 6f  &"string"!=typeo
b8b0: 66 20 65 29 7b 74 68 69 73 2e 66 72 6f 6d 53 74  f e){this.fromSt
b8c0: 72 69 6e 67 28 65 2c 32 35 36 29 7d 65 6c 73 65  ring(e,256)}else
b8d0: 7b 74 68 69 73 2e 66 72 6f 6d 53 74 72 69 6e 67  {this.fromString
b8e0: 28 65 2c 64 29 7d 7d 7d 7d 66 75 6e 63 74 69 6f  (e,d)}}}}functio
b8f0: 6e 20 6e 62 69 28 29 7b 72 65 74 75 72 6e 20 6e  n nbi(){return n
b900: 65 77 20 42 69 67 49 6e 74 65 67 65 72 28 6e 75  ew BigInteger(nu
b910: 6c 6c 29 7d 66 75 6e 63 74 69 6f 6e 20 61 6d 31  ll)}function am1
b920: 28 66 2c 61 2c 62 2c 65 2c 68 2c 67 29 7b 77 68  (f,a,b,e,h,g){wh
b930: 69 6c 65 28 2d 2d 67 3e 3d 30 29 7b 76 61 72 20  ile(--g>=0){var 
b940: 64 3d 61 2a 74 68 69 73 5b 66 2b 2b 5d 2b 62 5b  d=a*this[f++]+b[
b950: 65 5d 2b 68 3b 68 3d 4d 61 74 68 2e 66 6c 6f 6f  e]+h;h=Math.floo
b960: 72 28 64 2f 36 37 31 30 38 38 36 34 29 3b 62 5b  r(d/67108864);b[
b970: 65 2b 2b 5d 3d 64 26 36 37 31 30 38 38 36 33 7d  e++]=d&67108863}
b980: 72 65 74 75 72 6e 20 68 7d 66 75 6e 63 74 69 6f  return h}functio
b990: 6e 20 61 6d 32 28 66 2c 71 2c 72 2c 65 2c 6f 2c  n am2(f,q,r,e,o,
b9a0: 61 29 7b 76 61 72 20 6b 3d 71 26 33 32 37 36 37  a){var k=q&32767
b9b0: 2c 70 3d 71 3e 3e 31 35 3b 77 68 69 6c 65 28 2d  ,p=q>>15;while(-
b9c0: 2d 61 3e 3d 30 29 7b 76 61 72 20 64 3d 74 68 69  -a>=0){var d=thi
b9d0: 73 5b 66 5d 26 33 32 37 36 37 3b 76 61 72 20 67  s[f]&32767;var g
b9e0: 3d 74 68 69 73 5b 66 2b 2b 5d 3e 3e 31 35 3b 76  =this[f++]>>15;v
b9f0: 61 72 20 62 3d 70 2a 64 2b 67 2a 6b 3b 64 3d 6b  ar b=p*d+g*k;d=k
ba00: 2a 64 2b 28 28 62 26 33 32 37 36 37 29 3c 3c 31  *d+((b&32767)<<1
ba10: 35 29 2b 72 5b 65 5d 2b 28 6f 26 31 30 37 33 37  5)+r[e]+(o&10737
ba20: 34 31 38 32 33 29 3b 6f 3d 28 64 3e 3e 3e 33 30  41823);o=(d>>>30
ba30: 29 2b 28 62 3e 3e 3e 31 35 29 2b 70 2a 67 2b 28  )+(b>>>15)+p*g+(
ba40: 6f 3e 3e 3e 33 30 29 3b 72 5b 65 2b 2b 5d 3d 64  o>>>30);r[e++]=d
ba50: 26 31 30 37 33 37 34 31 38 32 33 7d 72 65 74 75  &1073741823}retu
ba60: 72 6e 20 6f 7d 66 75 6e 63 74 69 6f 6e 20 61 6d  rn o}function am
ba70: 33 28 66 2c 71 2c 72 2c 65 2c 6f 2c 61 29 7b 76  3(f,q,r,e,o,a){v
ba80: 61 72 20 6b 3d 71 26 31 36 33 38 33 2c 70 3d 71  ar k=q&16383,p=q
ba90: 3e 3e 31 34 3b 77 68 69 6c 65 28 2d 2d 61 3e 3d  >>14;while(--a>=
baa0: 30 29 7b 76 61 72 20 64 3d 74 68 69 73 5b 66 5d  0){var d=this[f]
bab0: 26 31 36 33 38 33 3b 76 61 72 20 67 3d 74 68 69  &16383;var g=thi
bac0: 73 5b 66 2b 2b 5d 3e 3e 31 34 3b 76 61 72 20 62  s[f++]>>14;var b
bad0: 3d 70 2a 64 2b 67 2a 6b 3b 64 3d 6b 2a 64 2b 28  =p*d+g*k;d=k*d+(
bae0: 28 62 26 31 36 33 38 33 29 3c 3c 31 34 29 2b 72  (b&16383)<<14)+r
baf0: 5b 65 5d 2b 6f 3b 6f 3d 28 64 3e 3e 32 38 29 2b  [e]+o;o=(d>>28)+
bb00: 28 62 3e 3e 31 34 29 2b 70 2a 67 3b 72 5b 65 2b  (b>>14)+p*g;r[e+
bb10: 2b 5d 3d 64 26 32 36 38 34 33 35 34 35 35 7d 72  +]=d&268435455}r
bb20: 65 74 75 72 6e 20 6f 7d 69 66 28 6a 5f 6c 6d 26  eturn o}if(j_lm&
bb30: 26 28 6e 61 76 69 67 61 74 6f 72 2e 61 70 70 4e  &(navigator.appN
bb40: 61 6d 65 3d 3d 22 4d 69 63 72 6f 73 6f 66 74 20  ame=="Microsoft 
bb50: 49 6e 74 65 72 6e 65 74 20 45 78 70 6c 6f 72 65  Internet Explore
bb60: 72 22 29 29 7b 42 69 67 49 6e 74 65 67 65 72 2e  r")){BigInteger.
bb70: 70 72 6f 74 6f 74 79 70 65 2e 61 6d 3d 61 6d 32  prototype.am=am2
bb80: 3b 64 62 69 74 73 3d 33 30 7d 65 6c 73 65 7b 69  ;dbits=30}else{i
bb90: 66 28 6a 5f 6c 6d 26 26 28 6e 61 76 69 67 61 74  f(j_lm&&(navigat
bba0: 6f 72 2e 61 70 70 4e 61 6d 65 21 3d 22 4e 65 74  or.appName!="Net
bbb0: 73 63 61 70 65 22 29 29 7b 42 69 67 49 6e 74 65  scape")){BigInte
bbc0: 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 61 6d  ger.prototype.am
bbd0: 3d 61 6d 31 3b 64 62 69 74 73 3d 32 36 7d 65 6c  =am1;dbits=26}el
bbe0: 73 65 7b 42 69 67 49 6e 74 65 67 65 72 2e 70 72  se{BigInteger.pr
bbf0: 6f 74 6f 74 79 70 65 2e 61 6d 3d 61 6d 33 3b 64  ototype.am=am3;d
bc00: 62 69 74 73 3d 32 38 7d 7d 42 69 67 49 6e 74 65  bits=28}}BigInte
bc10: 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 44 42  ger.prototype.DB
bc20: 3d 64 62 69 74 73 3b 42 69 67 49 6e 74 65 67 65  =dbits;BigIntege
bc30: 72 2e 70 72 6f 74 6f 74 79 70 65 2e 44 4d 3d 28  r.prototype.DM=(
bc40: 28 31 3c 3c 64 62 69 74 73 29 2d 31 29 3b 42 69  (1<<dbits)-1);Bi
bc50: 67 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79  gInteger.prototy
bc60: 70 65 2e 44 56 3d 28 31 3c 3c 64 62 69 74 73 29  pe.DV=(1<<dbits)
bc70: 3b 76 61 72 20 42 49 5f 46 50 3d 35 32 3b 42 69  ;var BI_FP=52;Bi
bc80: 67 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79  gInteger.prototy
bc90: 70 65 2e 46 56 3d 4d 61 74 68 2e 70 6f 77 28 32  pe.FV=Math.pow(2
bca0: 2c 42 49 5f 46 50 29 3b 42 69 67 49 6e 74 65 67  ,BI_FP);BigInteg
bcb0: 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 46 31 3d  er.prototype.F1=
bcc0: 42 49 5f 46 50 2d 64 62 69 74 73 3b 42 69 67 49  BI_FP-dbits;BigI
bcd0: 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65  nteger.prototype
bce0: 2e 46 32 3d 32 2a 64 62 69 74 73 2d 42 49 5f 46  .F2=2*dbits-BI_F
bcf0: 50 3b 76 61 72 20 42 49 5f 52 4d 3d 22 30 31 32  P;var BI_RM="012
bd00: 33 34 35 36 37 38 39 61 62 63 64 65 66 67 68 69  3456789abcdefghi
bd10: 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 78 79  jklmnopqrstuvwxy
bd20: 7a 22 3b 76 61 72 20 42 49 5f 52 43 3d 6e 65 77  z";var BI_RC=new
bd30: 20 41 72 72 61 79 28 29 3b 76 61 72 20 72 72 2c   Array();var rr,
bd40: 76 76 3b 72 72 3d 22 30 22 2e 63 68 61 72 43 6f  vv;rr="0".charCo
bd50: 64 65 41 74 28 30 29 3b 66 6f 72 28 76 76 3d 30  deAt(0);for(vv=0
bd60: 3b 76 76 3c 3d 39 3b 2b 2b 76 76 29 7b 42 49 5f  ;vv<=9;++vv){BI_
bd70: 52 43 5b 72 72 2b 2b 5d 3d 76 76 7d 72 72 3d 22  RC[rr++]=vv}rr="
bd80: 61 22 2e 63 68 61 72 43 6f 64 65 41 74 28 30 29  a".charCodeAt(0)
bd90: 3b 66 6f 72 28 76 76 3d 31 30 3b 76 76 3c 33 36  ;for(vv=10;vv<36
bda0: 3b 2b 2b 76 76 29 7b 42 49 5f 52 43 5b 72 72 2b  ;++vv){BI_RC[rr+
bdb0: 2b 5d 3d 76 76 7d 72 72 3d 22 41 22 2e 63 68 61  +]=vv}rr="A".cha
bdc0: 72 43 6f 64 65 41 74 28 30 29 3b 66 6f 72 28 76  rCodeAt(0);for(v
bdd0: 76 3d 31 30 3b 76 76 3c 33 36 3b 2b 2b 76 76 29  v=10;vv<36;++vv)
bde0: 7b 42 49 5f 52 43 5b 72 72 2b 2b 5d 3d 76 76 7d  {BI_RC[rr++]=vv}
bdf0: 66 75 6e 63 74 69 6f 6e 20 69 6e 74 32 63 68 61  function int2cha
be00: 72 28 61 29 7b 72 65 74 75 72 6e 20 42 49 5f 52  r(a){return BI_R
be10: 4d 2e 63 68 61 72 41 74 28 61 29 7d 66 75 6e 63  M.charAt(a)}func
be20: 74 69 6f 6e 20 69 6e 74 41 74 28 62 2c 61 29 7b  tion intAt(b,a){
be30: 76 61 72 20 64 3d 42 49 5f 52 43 5b 62 2e 63 68  var d=BI_RC[b.ch
be40: 61 72 43 6f 64 65 41 74 28 61 29 5d 3b 72 65 74  arCodeAt(a)];ret
be50: 75 72 6e 28 64 3d 3d 6e 75 6c 6c 29 3f 2d 31 3a  urn(d==null)?-1:
be60: 64 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 70 43 6f  d}function bnpCo
be70: 70 79 54 6f 28 62 29 7b 66 6f 72 28 76 61 72 20  pyTo(b){for(var 
be80: 61 3d 74 68 69 73 2e 74 2d 31 3b 61 3e 3d 30 3b  a=this.t-1;a>=0;
be90: 2d 2d 61 29 7b 62 5b 61 5d 3d 74 68 69 73 5b 61  --a){b[a]=this[a
bea0: 5d 7d 62 2e 74 3d 74 68 69 73 2e 74 3b 62 2e 73  ]}b.t=this.t;b.s
beb0: 3d 74 68 69 73 2e 73 7d 66 75 6e 63 74 69 6f 6e  =this.s}function
bec0: 20 62 6e 70 46 72 6f 6d 49 6e 74 28 61 29 7b 74   bnpFromInt(a){t
bed0: 68 69 73 2e 74 3d 31 3b 74 68 69 73 2e 73 3d 28  his.t=1;this.s=(
bee0: 61 3c 30 29 3f 2d 31 3a 30 3b 69 66 28 61 3e 30  a<0)?-1:0;if(a>0
bef0: 29 7b 74 68 69 73 5b 30 5d 3d 61 7d 65 6c 73 65  ){this[0]=a}else
bf00: 7b 69 66 28 61 3c 2d 31 29 7b 74 68 69 73 5b 30  {if(a<-1){this[0
bf10: 5d 3d 61 2b 74 68 69 73 2e 44 56 7d 65 6c 73 65  ]=a+this.DV}else
bf20: 7b 74 68 69 73 2e 74 3d 30 7d 7d 7d 66 75 6e 63  {this.t=0}}}func
bf30: 74 69 6f 6e 20 6e 62 76 28 61 29 7b 76 61 72 20  tion nbv(a){var 
bf40: 62 3d 6e 62 69 28 29 3b 62 2e 66 72 6f 6d 49 6e  b=nbi();b.fromIn
bf50: 74 28 61 29 3b 72 65 74 75 72 6e 20 62 7d 66 75  t(a);return b}fu
bf60: 6e 63 74 69 6f 6e 20 62 6e 70 46 72 6f 6d 53 74  nction bnpFromSt
bf70: 72 69 6e 67 28 68 2c 63 29 7b 76 61 72 20 65 3b  ring(h,c){var e;
bf80: 69 66 28 63 3d 3d 31 36 29 7b 65 3d 34 7d 65 6c  if(c==16){e=4}el
bf90: 73 65 7b 69 66 28 63 3d 3d 38 29 7b 65 3d 33 7d  se{if(c==8){e=3}
bfa0: 65 6c 73 65 7b 69 66 28 63 3d 3d 32 35 36 29 7b  else{if(c==256){
bfb0: 65 3d 38 7d 65 6c 73 65 7b 69 66 28 63 3d 3d 32  e=8}else{if(c==2
bfc0: 29 7b 65 3d 31 7d 65 6c 73 65 7b 69 66 28 63 3d  ){e=1}else{if(c=
bfd0: 3d 33 32 29 7b 65 3d 35 7d 65 6c 73 65 7b 69 66  =32){e=5}else{if
bfe0: 28 63 3d 3d 34 29 7b 65 3d 32 7d 65 6c 73 65 7b  (c==4){e=2}else{
bff0: 74 68 69 73 2e 66 72 6f 6d 52 61 64 69 78 28 68  this.fromRadix(h
c000: 2c 63 29 3b 72 65 74 75 72 6e 7d 7d 7d 7d 7d 7d  ,c);return}}}}}}
c010: 74 68 69 73 2e 74 3d 30 3b 74 68 69 73 2e 73 3d  this.t=0;this.s=
c020: 30 3b 76 61 72 20 67 3d 68 2e 6c 65 6e 67 74 68  0;var g=h.length
c030: 2c 64 3d 66 61 6c 73 65 2c 66 3d 30 3b 77 68 69  ,d=false,f=0;whi
c040: 6c 65 28 2d 2d 67 3e 3d 30 29 7b 76 61 72 20 61  le(--g>=0){var a
c050: 3d 28 65 3d 3d 38 29 3f 68 5b 67 5d 26 32 35 35  =(e==8)?h[g]&255
c060: 3a 69 6e 74 41 74 28 68 2c 67 29 3b 69 66 28 61  :intAt(h,g);if(a
c070: 3c 30 29 7b 69 66 28 68 2e 63 68 61 72 41 74 28  <0){if(h.charAt(
c080: 67 29 3d 3d 22 2d 22 29 7b 64 3d 74 72 75 65 7d  g)=="-"){d=true}
c090: 63 6f 6e 74 69 6e 75 65 7d 64 3d 66 61 6c 73 65  continue}d=false
c0a0: 3b 69 66 28 66 3d 3d 30 29 7b 74 68 69 73 5b 74  ;if(f==0){this[t
c0b0: 68 69 73 2e 74 2b 2b 5d 3d 61 7d 65 6c 73 65 7b  his.t++]=a}else{
c0c0: 69 66 28 66 2b 65 3e 74 68 69 73 2e 44 42 29 7b  if(f+e>this.DB){
c0d0: 74 68 69 73 5b 74 68 69 73 2e 74 2d 31 5d 7c 3d  this[this.t-1]|=
c0e0: 28 61 26 28 28 31 3c 3c 28 74 68 69 73 2e 44 42  (a&((1<<(this.DB
c0f0: 2d 66 29 29 2d 31 29 29 3c 3c 66 3b 74 68 69 73  -f))-1))<<f;this
c100: 5b 74 68 69 73 2e 74 2b 2b 5d 3d 28 61 3e 3e 28  [this.t++]=(a>>(
c110: 74 68 69 73 2e 44 42 2d 66 29 29 7d 65 6c 73 65  this.DB-f))}else
c120: 7b 74 68 69 73 5b 74 68 69 73 2e 74 2d 31 5d 7c  {this[this.t-1]|
c130: 3d 61 3c 3c 66 7d 7d 66 2b 3d 65 3b 69 66 28 66  =a<<f}}f+=e;if(f
c140: 3e 3d 74 68 69 73 2e 44 42 29 7b 66 2d 3d 74 68  >=this.DB){f-=th
c150: 69 73 2e 44 42 7d 7d 69 66 28 65 3d 3d 38 26 26  is.DB}}if(e==8&&
c160: 28 68 5b 30 5d 26 31 32 38 29 21 3d 30 29 7b 74  (h[0]&128)!=0){t
c170: 68 69 73 2e 73 3d 2d 31 3b 69 66 28 66 3e 30 29  his.s=-1;if(f>0)
c180: 7b 74 68 69 73 5b 74 68 69 73 2e 74 2d 31 5d 7c  {this[this.t-1]|
c190: 3d 28 28 31 3c 3c 28 74 68 69 73 2e 44 42 2d 66  =((1<<(this.DB-f
c1a0: 29 29 2d 31 29 3c 3c 66 7d 7d 74 68 69 73 2e 63  ))-1)<<f}}this.c
c1b0: 6c 61 6d 70 28 29 3b 69 66 28 64 29 7b 42 69 67  lamp();if(d){Big
c1c0: 49 6e 74 65 67 65 72 2e 5a 45 52 4f 2e 73 75 62  Integer.ZERO.sub
c1d0: 54 6f 28 74 68 69 73 2c 74 68 69 73 29 7d 7d 66  To(this,this)}}f
c1e0: 75 6e 63 74 69 6f 6e 20 62 6e 70 43 6c 61 6d 70  unction bnpClamp
c1f0: 28 29 7b 76 61 72 20 61 3d 74 68 69 73 2e 73 26  (){var a=this.s&
c200: 74 68 69 73 2e 44 4d 3b 77 68 69 6c 65 28 74 68  this.DM;while(th
c210: 69 73 2e 74 3e 30 26 26 74 68 69 73 5b 74 68 69  is.t>0&&this[thi
c220: 73 2e 74 2d 31 5d 3d 3d 61 29 7b 2d 2d 74 68 69  s.t-1]==a){--thi
c230: 73 2e 74 7d 7d 66 75 6e 63 74 69 6f 6e 20 62 6e  s.t}}function bn
c240: 54 6f 53 74 72 69 6e 67 28 63 29 7b 69 66 28 74  ToString(c){if(t
c250: 68 69 73 2e 73 3c 30 29 7b 72 65 74 75 72 6e 22  his.s<0){return"
c260: 2d 22 2b 74 68 69 73 2e 6e 65 67 61 74 65 28 29  -"+this.negate()
c270: 2e 74 6f 53 74 72 69 6e 67 28 63 29 7d 76 61 72  .toString(c)}var
c280: 20 65 3b 69 66 28 63 3d 3d 31 36 29 7b 65 3d 34   e;if(c==16){e=4
c290: 7d 65 6c 73 65 7b 69 66 28 63 3d 3d 38 29 7b 65  }else{if(c==8){e
c2a0: 3d 33 7d 65 6c 73 65 7b 69 66 28 63 3d 3d 32 29  =3}else{if(c==2)
c2b0: 7b 65 3d 31 7d 65 6c 73 65 7b 69 66 28 63 3d 3d  {e=1}else{if(c==
c2c0: 33 32 29 7b 65 3d 35 7d 65 6c 73 65 7b 69 66 28  32){e=5}else{if(
c2d0: 63 3d 3d 34 29 7b 65 3d 32 7d 65 6c 73 65 7b 72  c==4){e=2}else{r
c2e0: 65 74 75 72 6e 20 74 68 69 73 2e 74 6f 52 61 64  eturn this.toRad
c2f0: 69 78 28 63 29 7d 7d 7d 7d 7d 76 61 72 20 67 3d  ix(c)}}}}}var g=
c300: 28 31 3c 3c 65 29 2d 31 2c 6c 2c 61 3d 66 61 6c  (1<<e)-1,l,a=fal
c310: 73 65 2c 68 3d 22 22 2c 66 3d 74 68 69 73 2e 74  se,h="",f=this.t
c320: 3b 76 61 72 20 6a 3d 74 68 69 73 2e 44 42 2d 28  ;var j=this.DB-(
c330: 66 2a 74 68 69 73 2e 44 42 29 25 65 3b 69 66 28  f*this.DB)%e;if(
c340: 66 2d 2d 3e 30 29 7b 69 66 28 6a 3c 74 68 69 73  f-->0){if(j<this
c350: 2e 44 42 26 26 28 6c 3d 74 68 69 73 5b 66 5d 3e  .DB&&(l=this[f]>
c360: 3e 6a 29 3e 30 29 7b 61 3d 74 72 75 65 3b 68 3d  >j)>0){a=true;h=
c370: 69 6e 74 32 63 68 61 72 28 6c 29 7d 77 68 69 6c  int2char(l)}whil
c380: 65 28 66 3e 3d 30 29 7b 69 66 28 6a 3c 65 29 7b  e(f>=0){if(j<e){
c390: 6c 3d 28 74 68 69 73 5b 66 5d 26 28 28 31 3c 3c  l=(this[f]&((1<<
c3a0: 6a 29 2d 31 29 29 3c 3c 28 65 2d 6a 29 3b 6c 7c  j)-1))<<(e-j);l|
c3b0: 3d 74 68 69 73 5b 2d 2d 66 5d 3e 3e 28 6a 2b 3d  =this[--f]>>(j+=
c3c0: 74 68 69 73 2e 44 42 2d 65 29 7d 65 6c 73 65 7b  this.DB-e)}else{
c3d0: 6c 3d 28 74 68 69 73 5b 66 5d 3e 3e 28 6a 2d 3d  l=(this[f]>>(j-=
c3e0: 65 29 29 26 67 3b 69 66 28 6a 3c 3d 30 29 7b 6a  e))&g;if(j<=0){j
c3f0: 2b 3d 74 68 69 73 2e 44 42 3b 2d 2d 66 7d 7d 69  +=this.DB;--f}}i
c400: 66 28 6c 3e 30 29 7b 61 3d 74 72 75 65 7d 69 66  f(l>0){a=true}if
c410: 28 61 29 7b 68 2b 3d 69 6e 74 32 63 68 61 72 28  (a){h+=int2char(
c420: 6c 29 7d 7d 7d 72 65 74 75 72 6e 20 61 3f 68 3a  l)}}}return a?h:
c430: 22 30 22 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 4e  "0"}function bnN
c440: 65 67 61 74 65 28 29 7b 76 61 72 20 61 3d 6e 62  egate(){var a=nb
c450: 69 28 29 3b 42 69 67 49 6e 74 65 67 65 72 2e 5a  i();BigInteger.Z
c460: 45 52 4f 2e 73 75 62 54 6f 28 74 68 69 73 2c 61  ERO.subTo(this,a
c470: 29 3b 72 65 74 75 72 6e 20 61 7d 66 75 6e 63 74  );return a}funct
c480: 69 6f 6e 20 62 6e 41 62 73 28 29 7b 72 65 74 75  ion bnAbs(){retu
c490: 72 6e 28 74 68 69 73 2e 73 3c 30 29 3f 74 68 69  rn(this.s<0)?thi
c4a0: 73 2e 6e 65 67 61 74 65 28 29 3a 74 68 69 73 7d  s.negate():this}
c4b0: 66 75 6e 63 74 69 6f 6e 20 62 6e 43 6f 6d 70 61  function bnCompa
c4c0: 72 65 54 6f 28 62 29 7b 76 61 72 20 64 3d 74 68  reTo(b){var d=th
c4d0: 69 73 2e 73 2d 62 2e 73 3b 69 66 28 64 21 3d 30  is.s-b.s;if(d!=0
c4e0: 29 7b 72 65 74 75 72 6e 20 64 7d 76 61 72 20 63  ){return d}var c
c4f0: 3d 74 68 69 73 2e 74 3b 64 3d 63 2d 62 2e 74 3b  =this.t;d=c-b.t;
c500: 69 66 28 64 21 3d 30 29 7b 72 65 74 75 72 6e 28  if(d!=0){return(
c510: 74 68 69 73 2e 73 3c 30 29 3f 2d 64 3a 64 7d 77  this.s<0)?-d:d}w
c520: 68 69 6c 65 28 2d 2d 63 3e 3d 30 29 7b 69 66 28  hile(--c>=0){if(
c530: 28 64 3d 74 68 69 73 5b 63 5d 2d 62 5b 63 5d 29  (d=this[c]-b[c])
c540: 21 3d 30 29 7b 72 65 74 75 72 6e 20 64 7d 7d 72  !=0){return d}}r
c550: 65 74 75 72 6e 20 30 7d 66 75 6e 63 74 69 6f 6e  eturn 0}function
c560: 20 6e 62 69 74 73 28 61 29 7b 76 61 72 20 63 3d   nbits(a){var c=
c570: 31 2c 62 3b 69 66 28 28 62 3d 61 3e 3e 3e 31 36  1,b;if((b=a>>>16
c580: 29 21 3d 30 29 7b 61 3d 62 3b 63 2b 3d 31 36 7d  )!=0){a=b;c+=16}
c590: 69 66 28 28 62 3d 61 3e 3e 38 29 21 3d 30 29 7b  if((b=a>>8)!=0){
c5a0: 61 3d 62 3b 63 2b 3d 38 7d 69 66 28 28 62 3d 61  a=b;c+=8}if((b=a
c5b0: 3e 3e 34 29 21 3d 30 29 7b 61 3d 62 3b 63 2b 3d  >>4)!=0){a=b;c+=
c5c0: 34 7d 69 66 28 28 62 3d 61 3e 3e 32 29 21 3d 30  4}if((b=a>>2)!=0
c5d0: 29 7b 61 3d 62 3b 63 2b 3d 32 7d 69 66 28 28 62  ){a=b;c+=2}if((b
c5e0: 3d 61 3e 3e 31 29 21 3d 30 29 7b 61 3d 62 3b 63  =a>>1)!=0){a=b;c
c5f0: 2b 3d 31 7d 72 65 74 75 72 6e 20 63 7d 66 75 6e  +=1}return c}fun
c600: 63 74 69 6f 6e 20 62 6e 42 69 74 4c 65 6e 67 74  ction bnBitLengt
c610: 68 28 29 7b 69 66 28 74 68 69 73 2e 74 3c 3d 30  h(){if(this.t<=0
c620: 29 7b 72 65 74 75 72 6e 20 30 7d 72 65 74 75 72  ){return 0}retur
c630: 6e 20 74 68 69 73 2e 44 42 2a 28 74 68 69 73 2e  n this.DB*(this.
c640: 74 2d 31 29 2b 6e 62 69 74 73 28 74 68 69 73 5b  t-1)+nbits(this[
c650: 74 68 69 73 2e 74 2d 31 5d 5e 28 74 68 69 73 2e  this.t-1]^(this.
c660: 73 26 74 68 69 73 2e 44 4d 29 29 7d 66 75 6e 63  s&this.DM))}func
c670: 74 69 6f 6e 20 62 6e 70 44 4c 53 68 69 66 74 54  tion bnpDLShiftT
c680: 6f 28 63 2c 62 29 7b 76 61 72 20 61 3b 66 6f 72  o(c,b){var a;for
c690: 28 61 3d 74 68 69 73 2e 74 2d 31 3b 61 3e 3d 30  (a=this.t-1;a>=0
c6a0: 3b 2d 2d 61 29 7b 62 5b 61 2b 63 5d 3d 74 68 69  ;--a){b[a+c]=thi
c6b0: 73 5b 61 5d 7d 66 6f 72 28 61 3d 63 2d 31 3b 61  s[a]}for(a=c-1;a
c6c0: 3e 3d 30 3b 2d 2d 61 29 7b 62 5b 61 5d 3d 30 7d  >=0;--a){b[a]=0}
c6d0: 62 2e 74 3d 74 68 69 73 2e 74 2b 63 3b 62 2e 73  b.t=this.t+c;b.s
c6e0: 3d 74 68 69 73 2e 73 7d 66 75 6e 63 74 69 6f 6e  =this.s}function
c6f0: 20 62 6e 70 44 52 53 68 69 66 74 54 6f 28 63 2c   bnpDRShiftTo(c,
c700: 62 29 7b 66 6f 72 28 76 61 72 20 61 3d 63 3b 61  b){for(var a=c;a
c710: 3c 74 68 69 73 2e 74 3b 2b 2b 61 29 7b 62 5b 61  <this.t;++a){b[a
c720: 2d 63 5d 3d 74 68 69 73 5b 61 5d 7d 62 2e 74 3d  -c]=this[a]}b.t=
c730: 4d 61 74 68 2e 6d 61 78 28 74 68 69 73 2e 74 2d  Math.max(this.t-
c740: 63 2c 30 29 3b 62 2e 73 3d 74 68 69 73 2e 73 7d  c,0);b.s=this.s}
c750: 66 75 6e 63 74 69 6f 6e 20 62 6e 70 4c 53 68 69  function bnpLShi
c760: 66 74 54 6f 28 6a 2c 65 29 7b 76 61 72 20 62 3d  ftTo(j,e){var b=
c770: 6a 25 74 68 69 73 2e 44 42 3b 76 61 72 20 61 3d  j%this.DB;var a=
c780: 74 68 69 73 2e 44 42 2d 62 3b 76 61 72 20 67 3d  this.DB-b;var g=
c790: 28 31 3c 3c 61 29 2d 31 3b 76 61 72 20 66 3d 4d  (1<<a)-1;var f=M
c7a0: 61 74 68 2e 66 6c 6f 6f 72 28 6a 2f 74 68 69 73  ath.floor(j/this
c7b0: 2e 44 42 29 2c 68 3d 28 74 68 69 73 2e 73 3c 3c  .DB),h=(this.s<<
c7c0: 62 29 26 74 68 69 73 2e 44 4d 2c 64 3b 66 6f 72  b)&this.DM,d;for
c7d0: 28 64 3d 74 68 69 73 2e 74 2d 31 3b 64 3e 3d 30  (d=this.t-1;d>=0
c7e0: 3b 2d 2d 64 29 7b 65 5b 64 2b 66 2b 31 5d 3d 28  ;--d){e[d+f+1]=(
c7f0: 74 68 69 73 5b 64 5d 3e 3e 61 29 7c 68 3b 68 3d  this[d]>>a)|h;h=
c800: 28 74 68 69 73 5b 64 5d 26 67 29 3c 3c 62 7d 66  (this[d]&g)<<b}f
c810: 6f 72 28 64 3d 66 2d 31 3b 64 3e 3d 30 3b 2d 2d  or(d=f-1;d>=0;--
c820: 64 29 7b 65 5b 64 5d 3d 30 7d 65 5b 66 5d 3d 68  d){e[d]=0}e[f]=h
c830: 3b 65 2e 74 3d 74 68 69 73 2e 74 2b 66 2b 31 3b  ;e.t=this.t+f+1;
c840: 65 2e 73 3d 74 68 69 73 2e 73 3b 65 2e 63 6c 61  e.s=this.s;e.cla
c850: 6d 70 28 29 7d 66 75 6e 63 74 69 6f 6e 20 62 6e  mp()}function bn
c860: 70 52 53 68 69 66 74 54 6f 28 67 2c 64 29 7b 64  pRShiftTo(g,d){d
c870: 2e 73 3d 74 68 69 73 2e 73 3b 76 61 72 20 65 3d  .s=this.s;var e=
c880: 4d 61 74 68 2e 66 6c 6f 6f 72 28 67 2f 74 68 69  Math.floor(g/thi
c890: 73 2e 44 42 29 3b 69 66 28 65 3e 3d 74 68 69 73  s.DB);if(e>=this
c8a0: 2e 74 29 7b 64 2e 74 3d 30 3b 72 65 74 75 72 6e  .t){d.t=0;return
c8b0: 7d 76 61 72 20 62 3d 67 25 74 68 69 73 2e 44 42  }var b=g%this.DB
c8c0: 3b 76 61 72 20 61 3d 74 68 69 73 2e 44 42 2d 62  ;var a=this.DB-b
c8d0: 3b 76 61 72 20 66 3d 28 31 3c 3c 62 29 2d 31 3b  ;var f=(1<<b)-1;
c8e0: 64 5b 30 5d 3d 74 68 69 73 5b 65 5d 3e 3e 62 3b  d[0]=this[e]>>b;
c8f0: 66 6f 72 28 76 61 72 20 63 3d 65 2b 31 3b 63 3c  for(var c=e+1;c<
c900: 74 68 69 73 2e 74 3b 2b 2b 63 29 7b 64 5b 63 2d  this.t;++c){d[c-
c910: 65 2d 31 5d 7c 3d 28 74 68 69 73 5b 63 5d 26 66  e-1]|=(this[c]&f
c920: 29 3c 3c 61 3b 64 5b 63 2d 65 5d 3d 74 68 69 73  )<<a;d[c-e]=this
c930: 5b 63 5d 3e 3e 62 7d 69 66 28 62 3e 30 29 7b 64  [c]>>b}if(b>0){d
c940: 5b 74 68 69 73 2e 74 2d 65 2d 31 5d 7c 3d 28 74  [this.t-e-1]|=(t
c950: 68 69 73 2e 73 26 66 29 3c 3c 61 7d 64 2e 74 3d  his.s&f)<<a}d.t=
c960: 74 68 69 73 2e 74 2d 65 3b 64 2e 63 6c 61 6d 70  this.t-e;d.clamp
c970: 28 29 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 70 53  ()}function bnpS
c980: 75 62 54 6f 28 64 2c 66 29 7b 76 61 72 20 65 3d  ubTo(d,f){var e=
c990: 30 2c 67 3d 30 2c 62 3d 4d 61 74 68 2e 6d 69 6e  0,g=0,b=Math.min
c9a0: 28 64 2e 74 2c 74 68 69 73 2e 74 29 3b 77 68 69  (d.t,this.t);whi
c9b0: 6c 65 28 65 3c 62 29 7b 67 2b 3d 74 68 69 73 5b  le(e<b){g+=this[
c9c0: 65 5d 2d 64 5b 65 5d 3b 66 5b 65 2b 2b 5d 3d 67  e]-d[e];f[e++]=g
c9d0: 26 74 68 69 73 2e 44 4d 3b 67 3e 3e 3d 74 68 69  &this.DM;g>>=thi
c9e0: 73 2e 44 42 7d 69 66 28 64 2e 74 3c 74 68 69 73  s.DB}if(d.t<this
c9f0: 2e 74 29 7b 67 2d 3d 64 2e 73 3b 77 68 69 6c 65  .t){g-=d.s;while
ca00: 28 65 3c 74 68 69 73 2e 74 29 7b 67 2b 3d 74 68  (e<this.t){g+=th
ca10: 69 73 5b 65 5d 3b 66 5b 65 2b 2b 5d 3d 67 26 74  is[e];f[e++]=g&t
ca20: 68 69 73 2e 44 4d 3b 67 3e 3e 3d 74 68 69 73 2e  his.DM;g>>=this.
ca30: 44 42 7d 67 2b 3d 74 68 69 73 2e 73 7d 65 6c 73  DB}g+=this.s}els
ca40: 65 7b 67 2b 3d 74 68 69 73 2e 73 3b 77 68 69 6c  e{g+=this.s;whil
ca50: 65 28 65 3c 64 2e 74 29 7b 67 2d 3d 64 5b 65 5d  e(e<d.t){g-=d[e]
ca60: 3b 66 5b 65 2b 2b 5d 3d 67 26 74 68 69 73 2e 44  ;f[e++]=g&this.D
ca70: 4d 3b 67 3e 3e 3d 74 68 69 73 2e 44 42 7d 67 2d  M;g>>=this.DB}g-
ca80: 3d 64 2e 73 7d 66 2e 73 3d 28 67 3c 30 29 3f 2d  =d.s}f.s=(g<0)?-
ca90: 31 3a 30 3b 69 66 28 67 3c 2d 31 29 7b 66 5b 65  1:0;if(g<-1){f[e
caa0: 2b 2b 5d 3d 74 68 69 73 2e 44 56 2b 67 7d 65 6c  ++]=this.DV+g}el
cab0: 73 65 7b 69 66 28 67 3e 30 29 7b 66 5b 65 2b 2b  se{if(g>0){f[e++
cac0: 5d 3d 67 7d 7d 66 2e 74 3d 65 3b 66 2e 63 6c 61  ]=g}}f.t=e;f.cla
cad0: 6d 70 28 29 7d 66 75 6e 63 74 69 6f 6e 20 62 6e  mp()}function bn
cae0: 70 4d 75 6c 74 69 70 6c 79 54 6f 28 63 2c 65 29  pMultiplyTo(c,e)
caf0: 7b 76 61 72 20 62 3d 74 68 69 73 2e 61 62 73 28  {var b=this.abs(
cb00: 29 2c 66 3d 63 2e 61 62 73 28 29 3b 76 61 72 20  ),f=c.abs();var 
cb10: 64 3d 62 2e 74 3b 65 2e 74 3d 64 2b 66 2e 74 3b  d=b.t;e.t=d+f.t;
cb20: 77 68 69 6c 65 28 2d 2d 64 3e 3d 30 29 7b 65 5b  while(--d>=0){e[
cb30: 64 5d 3d 30 7d 66 6f 72 28 64 3d 30 3b 64 3c 66  d]=0}for(d=0;d<f
cb40: 2e 74 3b 2b 2b 64 29 7b 65 5b 64 2b 62 2e 74 5d  .t;++d){e[d+b.t]
cb50: 3d 62 2e 61 6d 28 30 2c 66 5b 64 5d 2c 65 2c 64  =b.am(0,f[d],e,d
cb60: 2c 30 2c 62 2e 74 29 7d 65 2e 73 3d 30 3b 65 2e  ,0,b.t)}e.s=0;e.
cb70: 63 6c 61 6d 70 28 29 3b 69 66 28 74 68 69 73 2e  clamp();if(this.
cb80: 73 21 3d 63 2e 73 29 7b 42 69 67 49 6e 74 65 67  s!=c.s){BigInteg
cb90: 65 72 2e 5a 45 52 4f 2e 73 75 62 54 6f 28 65 2c  er.ZERO.subTo(e,
cba0: 65 29 7d 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 70  e)}}function bnp
cbb0: 53 71 75 61 72 65 54 6f 28 64 29 7b 76 61 72 20  SquareTo(d){var 
cbc0: 61 3d 74 68 69 73 2e 61 62 73 28 29 3b 76 61 72  a=this.abs();var
cbd0: 20 62 3d 64 2e 74 3d 32 2a 61 2e 74 3b 77 68 69   b=d.t=2*a.t;whi
cbe0: 6c 65 28 2d 2d 62 3e 3d 30 29 7b 64 5b 62 5d 3d  le(--b>=0){d[b]=
cbf0: 30 7d 66 6f 72 28 62 3d 30 3b 62 3c 61 2e 74 2d  0}for(b=0;b<a.t-
cc00: 31 3b 2b 2b 62 29 7b 76 61 72 20 65 3d 61 2e 61  1;++b){var e=a.a
cc10: 6d 28 62 2c 61 5b 62 5d 2c 64 2c 32 2a 62 2c 30  m(b,a[b],d,2*b,0
cc20: 2c 31 29 3b 69 66 28 28 64 5b 62 2b 61 2e 74 5d  ,1);if((d[b+a.t]
cc30: 2b 3d 61 2e 61 6d 28 62 2b 31 2c 32 2a 61 5b 62  +=a.am(b+1,2*a[b
cc40: 5d 2c 64 2c 32 2a 62 2b 31 2c 65 2c 61 2e 74 2d  ],d,2*b+1,e,a.t-
cc50: 62 2d 31 29 29 3e 3d 61 2e 44 56 29 7b 64 5b 62  b-1))>=a.DV){d[b
cc60: 2b 61 2e 74 5d 2d 3d 61 2e 44 56 3b 64 5b 62 2b  +a.t]-=a.DV;d[b+
cc70: 61 2e 74 2b 31 5d 3d 31 7d 7d 69 66 28 64 2e 74  a.t+1]=1}}if(d.t
cc80: 3e 30 29 7b 64 5b 64 2e 74 2d 31 5d 2b 3d 61 2e  >0){d[d.t-1]+=a.
cc90: 61 6d 28 62 2c 61 5b 62 5d 2c 64 2c 32 2a 62 2c  am(b,a[b],d,2*b,
cca0: 30 2c 31 29 7d 64 2e 73 3d 30 3b 64 2e 63 6c 61  0,1)}d.s=0;d.cla
ccb0: 6d 70 28 29 7d 66 75 6e 63 74 69 6f 6e 20 62 6e  mp()}function bn
ccc0: 70 44 69 76 52 65 6d 54 6f 28 6e 2c 68 2c 67 29  pDivRemTo(n,h,g)
ccd0: 7b 76 61 72 20 77 3d 6e 2e 61 62 73 28 29 3b 69  {var w=n.abs();i
cce0: 66 28 77 2e 74 3c 3d 30 29 7b 72 65 74 75 72 6e  f(w.t<=0){return
ccf0: 7d 76 61 72 20 6b 3d 74 68 69 73 2e 61 62 73 28  }var k=this.abs(
cd00: 29 3b 69 66 28 6b 2e 74 3c 77 2e 74 29 7b 69 66  );if(k.t<w.t){if
cd10: 28 68 21 3d 6e 75 6c 6c 29 7b 68 2e 66 72 6f 6d  (h!=null){h.from
cd20: 49 6e 74 28 30 29 7d 69 66 28 67 21 3d 6e 75 6c  Int(0)}if(g!=nul
cd30: 6c 29 7b 74 68 69 73 2e 63 6f 70 79 54 6f 28 67  l){this.copyTo(g
cd40: 29 7d 72 65 74 75 72 6e 7d 69 66 28 67 3d 3d 6e  )}return}if(g==n
cd50: 75 6c 6c 29 7b 67 3d 6e 62 69 28 29 7d 76 61 72  ull){g=nbi()}var
cd60: 20 64 3d 6e 62 69 28 29 2c 61 3d 74 68 69 73 2e   d=nbi(),a=this.
cd70: 73 2c 6c 3d 6e 2e 73 3b 76 61 72 20 76 3d 74 68  s,l=n.s;var v=th
cd80: 69 73 2e 44 42 2d 6e 62 69 74 73 28 77 5b 77 2e  is.DB-nbits(w[w.
cd90: 74 2d 31 5d 29 3b 69 66 28 76 3e 30 29 7b 77 2e  t-1]);if(v>0){w.
cda0: 6c 53 68 69 66 74 54 6f 28 76 2c 64 29 3b 6b 2e  lShiftTo(v,d);k.
cdb0: 6c 53 68 69 66 74 54 6f 28 76 2c 67 29 7d 65 6c  lShiftTo(v,g)}el
cdc0: 73 65 7b 77 2e 63 6f 70 79 54 6f 28 64 29 3b 6b  se{w.copyTo(d);k
cdd0: 2e 63 6f 70 79 54 6f 28 67 29 7d 76 61 72 20 70  .copyTo(g)}var p
cde0: 3d 64 2e 74 3b 76 61 72 20 62 3d 64 5b 70 2d 31  =d.t;var b=d[p-1
cdf0: 5d 3b 69 66 28 62 3d 3d 30 29 7b 72 65 74 75 72  ];if(b==0){retur
ce00: 6e 7d 76 61 72 20 6f 3d 62 2a 28 31 3c 3c 74 68  n}var o=b*(1<<th
ce10: 69 73 2e 46 31 29 2b 28 28 70 3e 31 29 3f 64 5b  is.F1)+((p>1)?d[
ce20: 70 2d 32 5d 3e 3e 74 68 69 73 2e 46 32 3a 30 29  p-2]>>this.F2:0)
ce30: 3b 76 61 72 20 41 3d 74 68 69 73 2e 46 56 2f 6f  ;var A=this.FV/o
ce40: 2c 7a 3d 28 31 3c 3c 74 68 69 73 2e 46 31 29 2f  ,z=(1<<this.F1)/
ce50: 6f 2c 78 3d 31 3c 3c 74 68 69 73 2e 46 32 3b 76  o,x=1<<this.F2;v
ce60: 61 72 20 75 3d 67 2e 74 2c 73 3d 75 2d 70 2c 66  ar u=g.t,s=u-p,f
ce70: 3d 28 68 3d 3d 6e 75 6c 6c 29 3f 6e 62 69 28 29  =(h==null)?nbi()
ce80: 3a 68 3b 64 2e 64 6c 53 68 69 66 74 54 6f 28 73  :h;d.dlShiftTo(s
ce90: 2c 66 29 3b 69 66 28 67 2e 63 6f 6d 70 61 72 65  ,f);if(g.compare
cea0: 54 6f 28 66 29 3e 3d 30 29 7b 67 5b 67 2e 74 2b  To(f)>=0){g[g.t+
ceb0: 2b 5d 3d 31 3b 67 2e 73 75 62 54 6f 28 66 2c 67  +]=1;g.subTo(f,g
cec0: 29 7d 42 69 67 49 6e 74 65 67 65 72 2e 4f 4e 45  )}BigInteger.ONE
ced0: 2e 64 6c 53 68 69 66 74 54 6f 28 70 2c 66 29 3b  .dlShiftTo(p,f);
cee0: 66 2e 73 75 62 54 6f 28 64 2c 64 29 3b 77 68 69  f.subTo(d,d);whi
cef0: 6c 65 28 64 2e 74 3c 70 29 7b 64 5b 64 2e 74 2b  le(d.t<p){d[d.t+
cf00: 2b 5d 3d 30 7d 77 68 69 6c 65 28 2d 2d 73 3e 3d  +]=0}while(--s>=
cf10: 30 29 7b 76 61 72 20 63 3d 28 67 5b 2d 2d 75 5d  0){var c=(g[--u]
cf20: 3d 3d 62 29 3f 74 68 69 73 2e 44 4d 3a 4d 61 74  ==b)?this.DM:Mat
cf30: 68 2e 66 6c 6f 6f 72 28 67 5b 75 5d 2a 41 2b 28  h.floor(g[u]*A+(
cf40: 67 5b 75 2d 31 5d 2b 78 29 2a 7a 29 3b 69 66 28  g[u-1]+x)*z);if(
cf50: 28 67 5b 75 5d 2b 3d 64 2e 61 6d 28 30 2c 63 2c  (g[u]+=d.am(0,c,
cf60: 67 2c 73 2c 30 2c 70 29 29 3c 63 29 7b 64 2e 64  g,s,0,p))<c){d.d
cf70: 6c 53 68 69 66 74 54 6f 28 73 2c 66 29 3b 67 2e  lShiftTo(s,f);g.
cf80: 73 75 62 54 6f 28 66 2c 67 29 3b 77 68 69 6c 65  subTo(f,g);while
cf90: 28 67 5b 75 5d 3c 2d 2d 63 29 7b 67 2e 73 75 62  (g[u]<--c){g.sub
cfa0: 54 6f 28 66 2c 67 29 7d 7d 7d 69 66 28 68 21 3d  To(f,g)}}}if(h!=
cfb0: 6e 75 6c 6c 29 7b 67 2e 64 72 53 68 69 66 74 54  null){g.drShiftT
cfc0: 6f 28 70 2c 68 29 3b 69 66 28 61 21 3d 6c 29 7b  o(p,h);if(a!=l){
cfd0: 42 69 67 49 6e 74 65 67 65 72 2e 5a 45 52 4f 2e  BigInteger.ZERO.
cfe0: 73 75 62 54 6f 28 68 2c 68 29 7d 7d 67 2e 74 3d  subTo(h,h)}}g.t=
cff0: 70 3b 67 2e 63 6c 61 6d 70 28 29 3b 69 66 28 76  p;g.clamp();if(v
d000: 3e 30 29 7b 67 2e 72 53 68 69 66 74 54 6f 28 76  >0){g.rShiftTo(v
d010: 2c 67 29 7d 69 66 28 61 3c 30 29 7b 42 69 67 49  ,g)}if(a<0){BigI
d020: 6e 74 65 67 65 72 2e 5a 45 52 4f 2e 73 75 62 54  nteger.ZERO.subT
d030: 6f 28 67 2c 67 29 7d 7d 66 75 6e 63 74 69 6f 6e  o(g,g)}}function
d040: 20 62 6e 4d 6f 64 28 62 29 7b 76 61 72 20 63 3d   bnMod(b){var c=
d050: 6e 62 69 28 29 3b 74 68 69 73 2e 61 62 73 28 29  nbi();this.abs()
d060: 2e 64 69 76 52 65 6d 54 6f 28 62 2c 6e 75 6c 6c  .divRemTo(b,null
d070: 2c 63 29 3b 69 66 28 74 68 69 73 2e 73 3c 30 26  ,c);if(this.s<0&
d080: 26 63 2e 63 6f 6d 70 61 72 65 54 6f 28 42 69 67  &c.compareTo(Big
d090: 49 6e 74 65 67 65 72 2e 5a 45 52 4f 29 3e 30 29  Integer.ZERO)>0)
d0a0: 7b 62 2e 73 75 62 54 6f 28 63 2c 63 29 7d 72 65  {b.subTo(c,c)}re
d0b0: 74 75 72 6e 20 63 7d 66 75 6e 63 74 69 6f 6e 20  turn c}function 
d0c0: 43 6c 61 73 73 69 63 28 61 29 7b 74 68 69 73 2e  Classic(a){this.
d0d0: 6d 3d 61 7d 66 75 6e 63 74 69 6f 6e 20 63 43 6f  m=a}function cCo
d0e0: 6e 76 65 72 74 28 61 29 7b 69 66 28 61 2e 73 3c  nvert(a){if(a.s<
d0f0: 30 7c 7c 61 2e 63 6f 6d 70 61 72 65 54 6f 28 74  0||a.compareTo(t
d100: 68 69 73 2e 6d 29 3e 3d 30 29 7b 72 65 74 75 72  his.m)>=0){retur
d110: 6e 20 61 2e 6d 6f 64 28 74 68 69 73 2e 6d 29 7d  n a.mod(this.m)}
d120: 65 6c 73 65 7b 72 65 74 75 72 6e 20 61 7d 7d 66  else{return a}}f
d130: 75 6e 63 74 69 6f 6e 20 63 52 65 76 65 72 74 28  unction cRevert(
d140: 61 29 7b 72 65 74 75 72 6e 20 61 7d 66 75 6e 63  a){return a}func
d150: 74 69 6f 6e 20 63 52 65 64 75 63 65 28 61 29 7b  tion cReduce(a){
d160: 61 2e 64 69 76 52 65 6d 54 6f 28 74 68 69 73 2e  a.divRemTo(this.
d170: 6d 2c 6e 75 6c 6c 2c 61 29 7d 66 75 6e 63 74 69  m,null,a)}functi
d180: 6f 6e 20 63 4d 75 6c 54 6f 28 61 2c 63 2c 62 29  on cMulTo(a,c,b)
d190: 7b 61 2e 6d 75 6c 74 69 70 6c 79 54 6f 28 63 2c  {a.multiplyTo(c,
d1a0: 62 29 3b 74 68 69 73 2e 72 65 64 75 63 65 28 62  b);this.reduce(b
d1b0: 29 7d 66 75 6e 63 74 69 6f 6e 20 63 53 71 72 54  )}function cSqrT
d1c0: 6f 28 61 2c 62 29 7b 61 2e 73 71 75 61 72 65 54  o(a,b){a.squareT
d1d0: 6f 28 62 29 3b 74 68 69 73 2e 72 65 64 75 63 65  o(b);this.reduce
d1e0: 28 62 29 7d 43 6c 61 73 73 69 63 2e 70 72 6f 74  (b)}Classic.prot
d1f0: 6f 74 79 70 65 2e 63 6f 6e 76 65 72 74 3d 63 43  otype.convert=cC
d200: 6f 6e 76 65 72 74 3b 43 6c 61 73 73 69 63 2e 70  onvert;Classic.p
d210: 72 6f 74 6f 74 79 70 65 2e 72 65 76 65 72 74 3d  rototype.revert=
d220: 63 52 65 76 65 72 74 3b 43 6c 61 73 73 69 63 2e  cRevert;Classic.
d230: 70 72 6f 74 6f 74 79 70 65 2e 72 65 64 75 63 65  prototype.reduce
d240: 3d 63 52 65 64 75 63 65 3b 43 6c 61 73 73 69 63  =cReduce;Classic
d250: 2e 70 72 6f 74 6f 74 79 70 65 2e 6d 75 6c 54 6f  .prototype.mulTo
d260: 3d 63 4d 75 6c 54 6f 3b 43 6c 61 73 73 69 63 2e  =cMulTo;Classic.
d270: 70 72 6f 74 6f 74 79 70 65 2e 73 71 72 54 6f 3d  prototype.sqrTo=
d280: 63 53 71 72 54 6f 3b 66 75 6e 63 74 69 6f 6e 20  cSqrTo;function 
d290: 62 6e 70 49 6e 76 44 69 67 69 74 28 29 7b 69 66  bnpInvDigit(){if
d2a0: 28 74 68 69 73 2e 74 3c 31 29 7b 72 65 74 75 72  (this.t<1){retur
d2b0: 6e 20 30 7d 76 61 72 20 61 3d 74 68 69 73 5b 30  n 0}var a=this[0
d2c0: 5d 3b 69 66 28 28 61 26 31 29 3d 3d 30 29 7b 72  ];if((a&1)==0){r
d2d0: 65 74 75 72 6e 20 30 7d 76 61 72 20 62 3d 61 26  eturn 0}var b=a&
d2e0: 33 3b 62 3d 28 62 2a 28 32 2d 28 61 26 31 35 29  3;b=(b*(2-(a&15)
d2f0: 2a 62 29 29 26 31 35 3b 62 3d 28 62 2a 28 32 2d  *b))&15;b=(b*(2-
d300: 28 61 26 32 35 35 29 2a 62 29 29 26 32 35 35 3b  (a&255)*b))&255;
d310: 62 3d 28 62 2a 28 32 2d 28 28 28 61 26 36 35 35  b=(b*(2-(((a&655
d320: 33 35 29 2a 62 29 26 36 35 35 33 35 29 29 29 26  35)*b)&65535)))&
d330: 36 35 35 33 35 3b 62 3d 28 62 2a 28 32 2d 61 2a  65535;b=(b*(2-a*
d340: 62 25 74 68 69 73 2e 44 56 29 29 25 74 68 69 73  b%this.DV))%this
d350: 2e 44 56 3b 72 65 74 75 72 6e 28 62 3e 30 29 3f  .DV;return(b>0)?
d360: 74 68 69 73 2e 44 56 2d 62 3a 2d 62 7d 66 75 6e  this.DV-b:-b}fun
d370: 63 74 69 6f 6e 20 4d 6f 6e 74 67 6f 6d 65 72 79  ction Montgomery
d380: 28 61 29 7b 74 68 69 73 2e 6d 3d 61 3b 74 68 69  (a){this.m=a;thi
d390: 73 2e 6d 70 3d 61 2e 69 6e 76 44 69 67 69 74 28  s.mp=a.invDigit(
d3a0: 29 3b 74 68 69 73 2e 6d 70 6c 3d 74 68 69 73 2e  );this.mpl=this.
d3b0: 6d 70 26 33 32 37 36 37 3b 74 68 69 73 2e 6d 70  mp&32767;this.mp
d3c0: 68 3d 74 68 69 73 2e 6d 70 3e 3e 31 35 3b 74 68  h=this.mp>>15;th
d3d0: 69 73 2e 75 6d 3d 28 31 3c 3c 28 61 2e 44 42 2d  is.um=(1<<(a.DB-
d3e0: 31 35 29 29 2d 31 3b 74 68 69 73 2e 6d 74 32 3d  15))-1;this.mt2=
d3f0: 32 2a 61 2e 74 7d 66 75 6e 63 74 69 6f 6e 20 6d  2*a.t}function m
d400: 6f 6e 74 43 6f 6e 76 65 72 74 28 61 29 7b 76 61  ontConvert(a){va
d410: 72 20 62 3d 6e 62 69 28 29 3b 61 2e 61 62 73 28  r b=nbi();a.abs(
d420: 29 2e 64 6c 53 68 69 66 74 54 6f 28 74 68 69 73  ).dlShiftTo(this
d430: 2e 6d 2e 74 2c 62 29 3b 62 2e 64 69 76 52 65 6d  .m.t,b);b.divRem
d440: 54 6f 28 74 68 69 73 2e 6d 2c 6e 75 6c 6c 2c 62  To(this.m,null,b
d450: 29 3b 69 66 28 61 2e 73 3c 30 26 26 62 2e 63 6f  );if(a.s<0&&b.co
d460: 6d 70 61 72 65 54 6f 28 42 69 67 49 6e 74 65 67  mpareTo(BigInteg
d470: 65 72 2e 5a 45 52 4f 29 3e 30 29 7b 74 68 69 73  er.ZERO)>0){this
d480: 2e 6d 2e 73 75 62 54 6f 28 62 2c 62 29 7d 72 65  .m.subTo(b,b)}re
d490: 74 75 72 6e 20 62 7d 66 75 6e 63 74 69 6f 6e 20  turn b}function 
d4a0: 6d 6f 6e 74 52 65 76 65 72 74 28 61 29 7b 76 61  montRevert(a){va
d4b0: 72 20 62 3d 6e 62 69 28 29 3b 61 2e 63 6f 70 79  r b=nbi();a.copy
d4c0: 54 6f 28 62 29 3b 74 68 69 73 2e 72 65 64 75 63  To(b);this.reduc
d4d0: 65 28 62 29 3b 72 65 74 75 72 6e 20 62 7d 66 75  e(b);return b}fu
d4e0: 6e 63 74 69 6f 6e 20 6d 6f 6e 74 52 65 64 75 63  nction montReduc
d4f0: 65 28 61 29 7b 77 68 69 6c 65 28 61 2e 74 3c 3d  e(a){while(a.t<=
d500: 74 68 69 73 2e 6d 74 32 29 7b 61 5b 61 2e 74 2b  this.mt2){a[a.t+
d510: 2b 5d 3d 30 7d 66 6f 72 28 76 61 72 20 63 3d 30  +]=0}for(var c=0
d520: 3b 63 3c 74 68 69 73 2e 6d 2e 74 3b 2b 2b 63 29  ;c<this.m.t;++c)
d530: 7b 76 61 72 20 62 3d 61 5b 63 5d 26 33 32 37 36  {var b=a[c]&3276
d540: 37 3b 76 61 72 20 64 3d 28 62 2a 74 68 69 73 2e  7;var d=(b*this.
d550: 6d 70 6c 2b 28 28 28 62 2a 74 68 69 73 2e 6d 70  mpl+(((b*this.mp
d560: 68 2b 28 61 5b 63 5d 3e 3e 31 35 29 2a 74 68 69  h+(a[c]>>15)*thi
d570: 73 2e 6d 70 6c 29 26 74 68 69 73 2e 75 6d 29 3c  s.mpl)&this.um)<
d580: 3c 31 35 29 29 26 61 2e 44 4d 3b 62 3d 63 2b 74  <15))&a.DM;b=c+t
d590: 68 69 73 2e 6d 2e 74 3b 61 5b 62 5d 2b 3d 74 68  his.m.t;a[b]+=th
d5a0: 69 73 2e 6d 2e 61 6d 28 30 2c 64 2c 61 2c 63 2c  is.m.am(0,d,a,c,
d5b0: 30 2c 74 68 69 73 2e 6d 2e 74 29 3b 77 68 69 6c  0,this.m.t);whil
d5c0: 65 28 61 5b 62 5d 3e 3d 61 2e 44 56 29 7b 61 5b  e(a[b]>=a.DV){a[
d5d0: 62 5d 2d 3d 61 2e 44 56 3b 61 5b 2b 2b 62 5d 2b  b]-=a.DV;a[++b]+
d5e0: 2b 7d 7d 61 2e 63 6c 61 6d 70 28 29 3b 61 2e 64  +}}a.clamp();a.d
d5f0: 72 53 68 69 66 74 54 6f 28 74 68 69 73 2e 6d 2e  rShiftTo(this.m.
d600: 74 2c 61 29 3b 69 66 28 61 2e 63 6f 6d 70 61 72  t,a);if(a.compar
d610: 65 54 6f 28 74 68 69 73 2e 6d 29 3e 3d 30 29 7b  eTo(this.m)>=0){
d620: 61 2e 73 75 62 54 6f 28 74 68 69 73 2e 6d 2c 61  a.subTo(this.m,a
d630: 29 7d 7d 66 75 6e 63 74 69 6f 6e 20 6d 6f 6e 74  )}}function mont
d640: 53 71 72 54 6f 28 61 2c 62 29 7b 61 2e 73 71 75  SqrTo(a,b){a.squ
d650: 61 72 65 54 6f 28 62 29 3b 74 68 69 73 2e 72 65  areTo(b);this.re
d660: 64 75 63 65 28 62 29 7d 66 75 6e 63 74 69 6f 6e  duce(b)}function
d670: 20 6d 6f 6e 74 4d 75 6c 54 6f 28 61 2c 63 2c 62   montMulTo(a,c,b
d680: 29 7b 61 2e 6d 75 6c 74 69 70 6c 79 54 6f 28 63  ){a.multiplyTo(c
d690: 2c 62 29 3b 74 68 69 73 2e 72 65 64 75 63 65 28  ,b);this.reduce(
d6a0: 62 29 7d 4d 6f 6e 74 67 6f 6d 65 72 79 2e 70 72  b)}Montgomery.pr
d6b0: 6f 74 6f 74 79 70 65 2e 63 6f 6e 76 65 72 74 3d  ototype.convert=
d6c0: 6d 6f 6e 74 43 6f 6e 76 65 72 74 3b 4d 6f 6e 74  montConvert;Mont
d6d0: 67 6f 6d 65 72 79 2e 70 72 6f 74 6f 74 79 70 65  gomery.prototype
d6e0: 2e 72 65 76 65 72 74 3d 6d 6f 6e 74 52 65 76 65  .revert=montReve
d6f0: 72 74 3b 4d 6f 6e 74 67 6f 6d 65 72 79 2e 70 72  rt;Montgomery.pr
d700: 6f 74 6f 74 79 70 65 2e 72 65 64 75 63 65 3d 6d  ototype.reduce=m
d710: 6f 6e 74 52 65 64 75 63 65 3b 4d 6f 6e 74 67 6f  ontReduce;Montgo
d720: 6d 65 72 79 2e 70 72 6f 74 6f 74 79 70 65 2e 6d  mery.prototype.m
d730: 75 6c 54 6f 3d 6d 6f 6e 74 4d 75 6c 54 6f 3b 4d  ulTo=montMulTo;M
d740: 6f 6e 74 67 6f 6d 65 72 79 2e 70 72 6f 74 6f 74  ontgomery.protot
d750: 79 70 65 2e 73 71 72 54 6f 3d 6d 6f 6e 74 53 71  ype.sqrTo=montSq
d760: 72 54 6f 3b 66 75 6e 63 74 69 6f 6e 20 62 6e 70  rTo;function bnp
d770: 49 73 45 76 65 6e 28 29 7b 72 65 74 75 72 6e 28  IsEven(){return(
d780: 28 74 68 69 73 2e 74 3e 30 29 3f 28 74 68 69 73  (this.t>0)?(this
d790: 5b 30 5d 26 31 29 3a 74 68 69 73 2e 73 29 3d 3d  [0]&1):this.s)==
d7a0: 30 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 70 45 78  0}function bnpEx
d7b0: 70 28 68 2c 6a 29 7b 69 66 28 68 3e 34 32 39 34  p(h,j){if(h>4294
d7c0: 39 36 37 32 39 35 7c 7c 68 3c 31 29 7b 72 65 74  967295||h<1){ret
d7d0: 75 72 6e 20 42 69 67 49 6e 74 65 67 65 72 2e 4f  urn BigInteger.O
d7e0: 4e 45 7d 76 61 72 20 66 3d 6e 62 69 28 29 2c 61  NE}var f=nbi(),a
d7f0: 3d 6e 62 69 28 29 2c 64 3d 6a 2e 63 6f 6e 76 65  =nbi(),d=j.conve
d800: 72 74 28 74 68 69 73 29 2c 63 3d 6e 62 69 74 73  rt(this),c=nbits
d810: 28 68 29 2d 31 3b 64 2e 63 6f 70 79 54 6f 28 66  (h)-1;d.copyTo(f
d820: 29 3b 77 68 69 6c 65 28 2d 2d 63 3e 3d 30 29 7b  );while(--c>=0){
d830: 6a 2e 73 71 72 54 6f 28 66 2c 61 29 3b 69 66 28  j.sqrTo(f,a);if(
d840: 28 68 26 28 31 3c 3c 63 29 29 3e 30 29 7b 6a 2e  (h&(1<<c))>0){j.
d850: 6d 75 6c 54 6f 28 61 2c 64 2c 66 29 7d 65 6c 73  mulTo(a,d,f)}els
d860: 65 7b 76 61 72 20 62 3d 66 3b 66 3d 61 3b 61 3d  e{var b=f;f=a;a=
d870: 62 7d 7d 72 65 74 75 72 6e 20 6a 2e 72 65 76 65  b}}return j.reve
d880: 72 74 28 66 29 7d 66 75 6e 63 74 69 6f 6e 20 62  rt(f)}function b
d890: 6e 4d 6f 64 50 6f 77 49 6e 74 28 62 2c 61 29 7b  nModPowInt(b,a){
d8a0: 76 61 72 20 63 3b 69 66 28 62 3c 32 35 36 7c 7c  var c;if(b<256||
d8b0: 61 2e 69 73 45 76 65 6e 28 29 29 7b 63 3d 6e 65  a.isEven()){c=ne
d8c0: 77 20 43 6c 61 73 73 69 63 28 61 29 7d 65 6c 73  w Classic(a)}els
d8d0: 65 7b 63 3d 6e 65 77 20 4d 6f 6e 74 67 6f 6d 65  e{c=new Montgome
d8e0: 72 79 28 61 29 7d 72 65 74 75 72 6e 20 74 68 69  ry(a)}return thi
d8f0: 73 2e 65 78 70 28 62 2c 63 29 7d 42 69 67 49 6e  s.exp(b,c)}BigIn
d900: 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e  teger.prototype.
d910: 63 6f 70 79 54 6f 3d 62 6e 70 43 6f 70 79 54 6f  copyTo=bnpCopyTo
d920: 3b 42 69 67 49 6e 74 65 67 65 72 2e 70 72 6f 74  ;BigInteger.prot
d930: 6f 74 79 70 65 2e 66 72 6f 6d 49 6e 74 3d 62 6e  otype.fromInt=bn
d940: 70 46 72 6f 6d 49 6e 74 3b 42 69 67 49 6e 74 65  pFromInt;BigInte
d950: 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 66 72  ger.prototype.fr
d960: 6f 6d 53 74 72 69 6e 67 3d 62 6e 70 46 72 6f 6d  omString=bnpFrom
d970: 53 74 72 69 6e 67 3b 42 69 67 49 6e 74 65 67 65  String;BigIntege
d980: 72 2e 70 72 6f 74 6f 74 79 70 65 2e 63 6c 61 6d  r.prototype.clam
d990: 70 3d 62 6e 70 43 6c 61 6d 70 3b 42 69 67 49 6e  p=bnpClamp;BigIn
d9a0: 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e  teger.prototype.
d9b0: 64 6c 53 68 69 66 74 54 6f 3d 62 6e 70 44 4c 53  dlShiftTo=bnpDLS
d9c0: 68 69 66 74 54 6f 3b 42 69 67 49 6e 74 65 67 65  hiftTo;BigIntege
d9d0: 72 2e 70 72 6f 74 6f 74 79 70 65 2e 64 72 53 68  r.prototype.drSh
d9e0: 69 66 74 54 6f 3d 62 6e 70 44 52 53 68 69 66 74  iftTo=bnpDRShift
d9f0: 54 6f 3b 42 69 67 49 6e 74 65 67 65 72 2e 70 72  To;BigInteger.pr
da00: 6f 74 6f 74 79 70 65 2e 6c 53 68 69 66 74 54 6f  ototype.lShiftTo
da10: 3d 62 6e 70 4c 53 68 69 66 74 54 6f 3b 42 69 67  =bnpLShiftTo;Big
da20: 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70  Integer.prototyp
da30: 65 2e 72 53 68 69 66 74 54 6f 3d 62 6e 70 52 53  e.rShiftTo=bnpRS
da40: 68 69 66 74 54 6f 3b 42 69 67 49 6e 74 65 67 65  hiftTo;BigIntege
da50: 72 2e 70 72 6f 74 6f 74 79 70 65 2e 73 75 62 54  r.prototype.subT
da60: 6f 3d 62 6e 70 53 75 62 54 6f 3b 42 69 67 49 6e  o=bnpSubTo;BigIn
da70: 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e  teger.prototype.
da80: 6d 75 6c 74 69 70 6c 79 54 6f 3d 62 6e 70 4d 75  multiplyTo=bnpMu
da90: 6c 74 69 70 6c 79 54 6f 3b 42 69 67 49 6e 74 65  ltiplyTo;BigInte
daa0: 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 73 71  ger.prototype.sq
dab0: 75 61 72 65 54 6f 3d 62 6e 70 53 71 75 61 72 65  uareTo=bnpSquare
dac0: 54 6f 3b 42 69 67 49 6e 74 65 67 65 72 2e 70 72  To;BigInteger.pr
dad0: 6f 74 6f 74 79 70 65 2e 64 69 76 52 65 6d 54 6f  ototype.divRemTo
dae0: 3d 62 6e 70 44 69 76 52 65 6d 54 6f 3b 42 69 67  =bnpDivRemTo;Big
daf0: 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70  Integer.prototyp
db00: 65 2e 69 6e 76 44 69 67 69 74 3d 62 6e 70 49 6e  e.invDigit=bnpIn
db10: 76 44 69 67 69 74 3b 42 69 67 49 6e 74 65 67 65  vDigit;BigIntege
db20: 72 2e 70 72 6f 74 6f 74 79 70 65 2e 69 73 45 76  r.prototype.isEv
db30: 65 6e 3d 62 6e 70 49 73 45 76 65 6e 3b 42 69 67  en=bnpIsEven;Big
db40: 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70  Integer.prototyp
db50: 65 2e 65 78 70 3d 62 6e 70 45 78 70 3b 42 69 67  e.exp=bnpExp;Big
db60: 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70  Integer.prototyp
db70: 65 2e 74 6f 53 74 72 69 6e 67 3d 62 6e 54 6f 53  e.toString=bnToS
db80: 74 72 69 6e 67 3b 42 69 67 49 6e 74 65 67 65 72  tring;BigInteger
db90: 2e 70 72 6f 74 6f 74 79 70 65 2e 6e 65 67 61 74  .prototype.negat
dba0: 65 3d 62 6e 4e 65 67 61 74 65 3b 42 69 67 49 6e  e=bnNegate;BigIn
dbb0: 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e  teger.prototype.
dbc0: 61 62 73 3d 62 6e 41 62 73 3b 42 69 67 49 6e 74  abs=bnAbs;BigInt
dbd0: 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 63  eger.prototype.c
dbe0: 6f 6d 70 61 72 65 54 6f 3d 62 6e 43 6f 6d 70 61  ompareTo=bnCompa
dbf0: 72 65 54 6f 3b 42 69 67 49 6e 74 65 67 65 72 2e  reTo;BigInteger.
dc00: 70 72 6f 74 6f 74 79 70 65 2e 62 69 74 4c 65 6e  prototype.bitLen
dc10: 67 74 68 3d 62 6e 42 69 74 4c 65 6e 67 74 68 3b  gth=bnBitLength;
dc20: 42 69 67 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f  BigInteger.proto
dc30: 74 79 70 65 2e 6d 6f 64 3d 62 6e 4d 6f 64 3b 42  type.mod=bnMod;B
dc40: 69 67 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74  igInteger.protot
dc50: 79 70 65 2e 6d 6f 64 50 6f 77 49 6e 74 3d 62 6e  ype.modPowInt=bn
dc60: 4d 6f 64 50 6f 77 49 6e 74 3b 42 69 67 49 6e 74  ModPowInt;BigInt
dc70: 65 67 65 72 2e 5a 45 52 4f 3d 6e 62 76 28 30 29  eger.ZERO=nbv(0)
dc80: 3b 42 69 67 49 6e 74 65 67 65 72 2e 4f 4e 45 3d  ;BigInteger.ONE=
dc90: 6e 62 76 28 31 29 3b 0a 2f 2a 21 20 28 63 29 20  nbv(1);./*! (c) 
dca0: 54 6f 6d 20 57 75 20 7c 20 68 74 74 70 3a 2f 2f  Tom Wu | http://
dcb0: 77 77 77 2d 63 73 2d 73 74 75 64 65 6e 74 73 2e  www-cs-students.
dcc0: 73 74 61 6e 66 6f 72 64 2e 65 64 75 2f 7e 74 6a  stanford.edu/~tj
dcd0: 77 2f 6a 73 62 6e 2f 0a 20 2a 2f 0a 66 75 6e 63  w/jsbn/. */.func
dce0: 74 69 6f 6e 20 62 6e 43 6c 6f 6e 65 28 29 7b 76  tion bnClone(){v
dcf0: 61 72 20 61 3d 6e 62 69 28 29 3b 74 68 69 73 2e  ar a=nbi();this.
dd00: 63 6f 70 79 54 6f 28 61 29 3b 72 65 74 75 72 6e  copyTo(a);return
dd10: 20 61 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 49 6e   a}function bnIn
dd20: 74 56 61 6c 75 65 28 29 7b 69 66 28 74 68 69 73  tValue(){if(this
dd30: 2e 73 3c 30 29 7b 69 66 28 74 68 69 73 2e 74 3d  .s<0){if(this.t=
dd40: 3d 31 29 7b 72 65 74 75 72 6e 20 74 68 69 73 5b  =1){return this[
dd50: 30 5d 2d 74 68 69 73 2e 44 56 7d 65 6c 73 65 7b  0]-this.DV}else{
dd60: 69 66 28 74 68 69 73 2e 74 3d 3d 30 29 7b 72 65  if(this.t==0){re
dd70: 74 75 72 6e 20 2d 31 7d 7d 7d 65 6c 73 65 7b 69  turn -1}}}else{i
dd80: 66 28 74 68 69 73 2e 74 3d 3d 31 29 7b 72 65 74  f(this.t==1){ret
dd90: 75 72 6e 20 74 68 69 73 5b 30 5d 7d 65 6c 73 65  urn this[0]}else
dda0: 7b 69 66 28 74 68 69 73 2e 74 3d 3d 30 29 7b 72  {if(this.t==0){r
ddb0: 65 74 75 72 6e 20 30 7d 7d 7d 72 65 74 75 72 6e  eturn 0}}}return
ddc0: 28 28 74 68 69 73 5b 31 5d 26 28 28 31 3c 3c 28  ((this[1]&((1<<(
ddd0: 33 32 2d 74 68 69 73 2e 44 42 29 29 2d 31 29 29  32-this.DB))-1))
dde0: 3c 3c 74 68 69 73 2e 44 42 29 7c 74 68 69 73 5b  <<this.DB)|this[
ddf0: 30 5d 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 42 79  0]}function bnBy
de00: 74 65 56 61 6c 75 65 28 29 7b 72 65 74 75 72 6e  teValue(){return
de10: 28 74 68 69 73 2e 74 3d 3d 30 29 3f 74 68 69 73  (this.t==0)?this
de20: 2e 73 3a 28 74 68 69 73 5b 30 5d 3c 3c 32 34 29  .s:(this[0]<<24)
de30: 3e 3e 32 34 7d 66 75 6e 63 74 69 6f 6e 20 62 6e  >>24}function bn
de40: 53 68 6f 72 74 56 61 6c 75 65 28 29 7b 72 65 74  ShortValue(){ret
de50: 75 72 6e 28 74 68 69 73 2e 74 3d 3d 30 29 3f 74  urn(this.t==0)?t
de60: 68 69 73 2e 73 3a 28 74 68 69 73 5b 30 5d 3c 3c  his.s:(this[0]<<
de70: 31 36 29 3e 3e 31 36 7d 66 75 6e 63 74 69 6f 6e  16)>>16}function
de80: 20 62 6e 70 43 68 75 6e 6b 53 69 7a 65 28 61 29   bnpChunkSize(a)
de90: 7b 72 65 74 75 72 6e 20 4d 61 74 68 2e 66 6c 6f  {return Math.flo
dea0: 6f 72 28 4d 61 74 68 2e 4c 4e 32 2a 74 68 69 73  or(Math.LN2*this
deb0: 2e 44 42 2f 4d 61 74 68 2e 6c 6f 67 28 61 29 29  .DB/Math.log(a))
dec0: 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 53 69 67 4e  }function bnSigN
ded0: 75 6d 28 29 7b 69 66 28 74 68 69 73 2e 73 3c 30  um(){if(this.s<0
dee0: 29 7b 72 65 74 75 72 6e 20 2d 31 7d 65 6c 73 65  ){return -1}else
def0: 7b 69 66 28 74 68 69 73 2e 74 3c 3d 30 7c 7c 28  {if(this.t<=0||(
df00: 74 68 69 73 2e 74 3d 3d 31 26 26 74 68 69 73 5b  this.t==1&&this[
df10: 30 5d 3c 3d 30 29 29 7b 72 65 74 75 72 6e 20 30  0]<=0)){return 0
df20: 7d 65 6c 73 65 7b 72 65 74 75 72 6e 20 31 7d 7d  }else{return 1}}
df30: 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 70 54 6f 52  }function bnpToR
df40: 61 64 69 78 28 63 29 7b 69 66 28 63 3d 3d 6e 75  adix(c){if(c==nu
df50: 6c 6c 29 7b 63 3d 31 30 7d 69 66 28 74 68 69 73  ll){c=10}if(this
df60: 2e 73 69 67 6e 75 6d 28 29 3d 3d 30 7c 7c 63 3c  .signum()==0||c<
df70: 32 7c 7c 63 3e 33 36 29 7b 72 65 74 75 72 6e 22  2||c>36){return"
df80: 30 22 7d 76 61 72 20 66 3d 74 68 69 73 2e 63 68  0"}var f=this.ch
df90: 75 6e 6b 53 69 7a 65 28 63 29 3b 76 61 72 20 65  unkSize(c);var e
dfa0: 3d 4d 61 74 68 2e 70 6f 77 28 63 2c 66 29 3b 76  =Math.pow(c,f);v
dfb0: 61 72 20 69 3d 6e 62 76 28 65 29 2c 6a 3d 6e 62  ar i=nbv(e),j=nb
dfc0: 69 28 29 2c 68 3d 6e 62 69 28 29 2c 67 3d 22 22  i(),h=nbi(),g=""
dfd0: 3b 74 68 69 73 2e 64 69 76 52 65 6d 54 6f 28 69  ;this.divRemTo(i
dfe0: 2c 6a 2c 68 29 3b 77 68 69 6c 65 28 6a 2e 73 69  ,j,h);while(j.si
dff0: 67 6e 75 6d 28 29 3e 30 29 7b 67 3d 28 65 2b 68  gnum()>0){g=(e+h
e000: 2e 69 6e 74 56 61 6c 75 65 28 29 29 2e 74 6f 53  .intValue()).toS
e010: 74 72 69 6e 67 28 63 29 2e 73 75 62 73 74 72 28  tring(c).substr(
e020: 31 29 2b 67 3b 6a 2e 64 69 76 52 65 6d 54 6f 28  1)+g;j.divRemTo(
e030: 69 2c 6a 2c 68 29 7d 72 65 74 75 72 6e 20 68 2e  i,j,h)}return h.
e040: 69 6e 74 56 61 6c 75 65 28 29 2e 74 6f 53 74 72  intValue().toStr
e050: 69 6e 67 28 63 29 2b 67 7d 66 75 6e 63 74 69 6f  ing(c)+g}functio
e060: 6e 20 62 6e 70 46 72 6f 6d 52 61 64 69 78 28 6d  n bnpFromRadix(m
e070: 2c 68 29 7b 74 68 69 73 2e 66 72 6f 6d 49 6e 74  ,h){this.fromInt
e080: 28 30 29 3b 69 66 28 68 3d 3d 6e 75 6c 6c 29 7b  (0);if(h==null){
e090: 68 3d 31 30 7d 76 61 72 20 66 3d 74 68 69 73 2e  h=10}var f=this.
e0a0: 63 68 75 6e 6b 53 69 7a 65 28 68 29 3b 76 61 72  chunkSize(h);var
e0b0: 20 67 3d 4d 61 74 68 2e 70 6f 77 28 68 2c 66 29   g=Math.pow(h,f)
e0c0: 2c 65 3d 66 61 6c 73 65 2c 61 3d 30 2c 6c 3d 30  ,e=false,a=0,l=0
e0d0: 3b 66 6f 72 28 76 61 72 20 63 3d 30 3b 63 3c 6d  ;for(var c=0;c<m
e0e0: 2e 6c 65 6e 67 74 68 3b 2b 2b 63 29 7b 76 61 72  .length;++c){var
e0f0: 20 6b 3d 69 6e 74 41 74 28 6d 2c 63 29 3b 69 66   k=intAt(m,c);if
e100: 28 6b 3c 30 29 7b 69 66 28 6d 2e 63 68 61 72 41  (k<0){if(m.charA
e110: 74 28 63 29 3d 3d 22 2d 22 26 26 74 68 69 73 2e  t(c)=="-"&&this.
e120: 73 69 67 6e 75 6d 28 29 3d 3d 30 29 7b 65 3d 74  signum()==0){e=t
e130: 72 75 65 7d 63 6f 6e 74 69 6e 75 65 7d 6c 3d 68  rue}continue}l=h
e140: 2a 6c 2b 6b 3b 69 66 28 2b 2b 61 3e 3d 66 29 7b  *l+k;if(++a>=f){
e150: 74 68 69 73 2e 64 4d 75 6c 74 69 70 6c 79 28 67  this.dMultiply(g
e160: 29 3b 74 68 69 73 2e 64 41 64 64 4f 66 66 73 65  );this.dAddOffse
e170: 74 28 6c 2c 30 29 3b 61 3d 30 3b 6c 3d 30 7d 7d  t(l,0);a=0;l=0}}
e180: 69 66 28 61 3e 30 29 7b 74 68 69 73 2e 64 4d 75  if(a>0){this.dMu
e190: 6c 74 69 70 6c 79 28 4d 61 74 68 2e 70 6f 77 28  ltiply(Math.pow(
e1a0: 68 2c 61 29 29 3b 74 68 69 73 2e 64 41 64 64 4f  h,a));this.dAddO
e1b0: 66 66 73 65 74 28 6c 2c 30 29 7d 69 66 28 65 29  ffset(l,0)}if(e)
e1c0: 7b 42 69 67 49 6e 74 65 67 65 72 2e 5a 45 52 4f  {BigInteger.ZERO
e1d0: 2e 73 75 62 54 6f 28 74 68 69 73 2c 74 68 69 73  .subTo(this,this
e1e0: 29 7d 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 70 46  )}}function bnpF
e1f0: 72 6f 6d 4e 75 6d 62 65 72 28 66 2c 65 2c 68 29  romNumber(f,e,h)
e200: 7b 69 66 28 22 6e 75 6d 62 65 72 22 3d 3d 74 79  {if("number"==ty
e210: 70 65 6f 66 20 65 29 7b 69 66 28 66 3c 32 29 7b  peof e){if(f<2){
e220: 74 68 69 73 2e 66 72 6f 6d 49 6e 74 28 31 29 7d  this.fromInt(1)}
e230: 65 6c 73 65 7b 74 68 69 73 2e 66 72 6f 6d 4e 75  else{this.fromNu
e240: 6d 62 65 72 28 66 2c 68 29 3b 69 66 28 21 74 68  mber(f,h);if(!th
e250: 69 73 2e 74 65 73 74 42 69 74 28 66 2d 31 29 29  is.testBit(f-1))
e260: 7b 74 68 69 73 2e 62 69 74 77 69 73 65 54 6f 28  {this.bitwiseTo(
e270: 42 69 67 49 6e 74 65 67 65 72 2e 4f 4e 45 2e 73  BigInteger.ONE.s
e280: 68 69 66 74 4c 65 66 74 28 66 2d 31 29 2c 6f 70  hiftLeft(f-1),op
e290: 5f 6f 72 2c 74 68 69 73 29 7d 69 66 28 74 68 69  _or,this)}if(thi
e2a0: 73 2e 69 73 45 76 65 6e 28 29 29 7b 74 68 69 73  s.isEven()){this
e2b0: 2e 64 41 64 64 4f 66 66 73 65 74 28 31 2c 30 29  .dAddOffset(1,0)
e2c0: 7d 77 68 69 6c 65 28 21 74 68 69 73 2e 69 73 50  }while(!this.isP
e2d0: 72 6f 62 61 62 6c 65 50 72 69 6d 65 28 65 29 29  robablePrime(e))
e2e0: 7b 74 68 69 73 2e 64 41 64 64 4f 66 66 73 65 74  {this.dAddOffset
e2f0: 28 32 2c 30 29 3b 69 66 28 74 68 69 73 2e 62 69  (2,0);if(this.bi
e300: 74 4c 65 6e 67 74 68 28 29 3e 66 29 7b 74 68 69  tLength()>f){thi
e310: 73 2e 73 75 62 54 6f 28 42 69 67 49 6e 74 65 67  s.subTo(BigInteg
e320: 65 72 2e 4f 4e 45 2e 73 68 69 66 74 4c 65 66 74  er.ONE.shiftLeft
e330: 28 66 2d 31 29 2c 74 68 69 73 29 7d 7d 7d 7d 65  (f-1),this)}}}}e
e340: 6c 73 65 7b 76 61 72 20 64 3d 6e 65 77 20 41 72  lse{var d=new Ar
e350: 72 61 79 28 29 2c 67 3d 66 26 37 3b 64 2e 6c 65  ray(),g=f&7;d.le
e360: 6e 67 74 68 3d 28 66 3e 3e 33 29 2b 31 3b 65 2e  ngth=(f>>3)+1;e.
e370: 6e 65 78 74 42 79 74 65 73 28 64 29 3b 69 66 28  nextBytes(d);if(
e380: 67 3e 30 29 7b 64 5b 30 5d 26 3d 28 28 31 3c 3c  g>0){d[0]&=((1<<
e390: 67 29 2d 31 29 7d 65 6c 73 65 7b 64 5b 30 5d 3d  g)-1)}else{d[0]=
e3a0: 30 7d 74 68 69 73 2e 66 72 6f 6d 53 74 72 69 6e  0}this.fromStrin
e3b0: 67 28 64 2c 32 35 36 29 7d 7d 66 75 6e 63 74 69  g(d,256)}}functi
e3c0: 6f 6e 20 62 6e 54 6f 42 79 74 65 41 72 72 61 79  on bnToByteArray
e3d0: 28 29 7b 76 61 72 20 62 3d 74 68 69 73 2e 74 2c  (){var b=this.t,
e3e0: 63 3d 6e 65 77 20 41 72 72 61 79 28 29 3b 63 5b  c=new Array();c[
e3f0: 30 5d 3d 74 68 69 73 2e 73 3b 76 61 72 20 65 3d  0]=this.s;var e=
e400: 74 68 69 73 2e 44 42 2d 28 62 2a 74 68 69 73 2e  this.DB-(b*this.
e410: 44 42 29 25 38 2c 66 2c 61 3d 30 3b 69 66 28 62  DB)%8,f,a=0;if(b
e420: 2d 2d 3e 30 29 7b 69 66 28 65 3c 74 68 69 73 2e  -->0){if(e<this.
e430: 44 42 26 26 28 66 3d 74 68 69 73 5b 62 5d 3e 3e  DB&&(f=this[b]>>
e440: 65 29 21 3d 28 74 68 69 73 2e 73 26 74 68 69 73  e)!=(this.s&this
e450: 2e 44 4d 29 3e 3e 65 29 7b 63 5b 61 2b 2b 5d 3d  .DM)>>e){c[a++]=
e460: 66 7c 28 74 68 69 73 2e 73 3c 3c 28 74 68 69 73  f|(this.s<<(this
e470: 2e 44 42 2d 65 29 29 7d 77 68 69 6c 65 28 62 3e  .DB-e))}while(b>
e480: 3d 30 29 7b 69 66 28 65 3c 38 29 7b 66 3d 28 74  =0){if(e<8){f=(t
e490: 68 69 73 5b 62 5d 26 28 28 31 3c 3c 65 29 2d 31  his[b]&((1<<e)-1
e4a0: 29 29 3c 3c 28 38 2d 65 29 3b 66 7c 3d 74 68 69  ))<<(8-e);f|=thi
e4b0: 73 5b 2d 2d 62 5d 3e 3e 28 65 2b 3d 74 68 69 73  s[--b]>>(e+=this
e4c0: 2e 44 42 2d 38 29 7d 65 6c 73 65 7b 66 3d 28 74  .DB-8)}else{f=(t
e4d0: 68 69 73 5b 62 5d 3e 3e 28 65 2d 3d 38 29 29 26  his[b]>>(e-=8))&
e4e0: 32 35 35 3b 69 66 28 65 3c 3d 30 29 7b 65 2b 3d  255;if(e<=0){e+=
e4f0: 74 68 69 73 2e 44 42 3b 2d 2d 62 7d 7d 69 66 28  this.DB;--b}}if(
e500: 28 66 26 31 32 38 29 21 3d 30 29 7b 66 7c 3d 2d  (f&128)!=0){f|=-
e510: 32 35 36 7d 69 66 28 61 3d 3d 30 26 26 28 74 68  256}if(a==0&&(th
e520: 69 73 2e 73 26 31 32 38 29 21 3d 28 66 26 31 32  is.s&128)!=(f&12
e530: 38 29 29 7b 2b 2b 61 7d 69 66 28 61 3e 30 7c 7c  8)){++a}if(a>0||
e540: 66 21 3d 74 68 69 73 2e 73 29 7b 63 5b 61 2b 2b  f!=this.s){c[a++
e550: 5d 3d 66 7d 7d 7d 72 65 74 75 72 6e 20 63 7d 66  ]=f}}}return c}f
e560: 75 6e 63 74 69 6f 6e 20 62 6e 45 71 75 61 6c 73  unction bnEquals
e570: 28 62 29 7b 72 65 74 75 72 6e 28 74 68 69 73 2e  (b){return(this.
e580: 63 6f 6d 70 61 72 65 54 6f 28 62 29 3d 3d 30 29  compareTo(b)==0)
e590: 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 4d 69 6e 28  }function bnMin(
e5a0: 62 29 7b 72 65 74 75 72 6e 28 74 68 69 73 2e 63  b){return(this.c
e5b0: 6f 6d 70 61 72 65 54 6f 28 62 29 3c 30 29 3f 74  ompareTo(b)<0)?t
e5c0: 68 69 73 3a 62 7d 66 75 6e 63 74 69 6f 6e 20 62  his:b}function b
e5d0: 6e 4d 61 78 28 62 29 7b 72 65 74 75 72 6e 28 74  nMax(b){return(t
e5e0: 68 69 73 2e 63 6f 6d 70 61 72 65 54 6f 28 62 29  his.compareTo(b)
e5f0: 3e 30 29 3f 74 68 69 73 3a 62 7d 66 75 6e 63 74  >0)?this:b}funct
e600: 69 6f 6e 20 62 6e 70 42 69 74 77 69 73 65 54 6f  ion bnpBitwiseTo
e610: 28 63 2c 68 2c 65 29 7b 76 61 72 20 64 2c 67 2c  (c,h,e){var d,g,
e620: 62 3d 4d 61 74 68 2e 6d 69 6e 28 63 2e 74 2c 74  b=Math.min(c.t,t
e630: 68 69 73 2e 74 29 3b 66 6f 72 28 64 3d 30 3b 64  his.t);for(d=0;d
e640: 3c 62 3b 2b 2b 64 29 7b 65 5b 64 5d 3d 68 28 74  <b;++d){e[d]=h(t
e650: 68 69 73 5b 64 5d 2c 63 5b 64 5d 29 7d 69 66 28  his[d],c[d])}if(
e660: 63 2e 74 3c 74 68 69 73 2e 74 29 7b 67 3d 63 2e  c.t<this.t){g=c.
e670: 73 26 74 68 69 73 2e 44 4d 3b 66 6f 72 28 64 3d  s&this.DM;for(d=
e680: 62 3b 64 3c 74 68 69 73 2e 74 3b 2b 2b 64 29 7b  b;d<this.t;++d){
e690: 65 5b 64 5d 3d 68 28 74 68 69 73 5b 64 5d 2c 67  e[d]=h(this[d],g
e6a0: 29 7d 65 2e 74 3d 74 68 69 73 2e 74 7d 65 6c 73  )}e.t=this.t}els
e6b0: 65 7b 67 3d 74 68 69 73 2e 73 26 74 68 69 73 2e  e{g=this.s&this.
e6c0: 44 4d 3b 66 6f 72 28 64 3d 62 3b 64 3c 63 2e 74  DM;for(d=b;d<c.t
e6d0: 3b 2b 2b 64 29 7b 65 5b 64 5d 3d 68 28 67 2c 63  ;++d){e[d]=h(g,c
e6e0: 5b 64 5d 29 7d 65 2e 74 3d 63 2e 74 7d 65 2e 73  [d])}e.t=c.t}e.s
e6f0: 3d 68 28 74 68 69 73 2e 73 2c 63 2e 73 29 3b 65  =h(this.s,c.s);e
e700: 2e 63 6c 61 6d 70 28 29 7d 66 75 6e 63 74 69 6f  .clamp()}functio
e710: 6e 20 6f 70 5f 61 6e 64 28 61 2c 62 29 7b 72 65  n op_and(a,b){re
e720: 74 75 72 6e 20 61 26 62 7d 66 75 6e 63 74 69 6f  turn a&b}functio
e730: 6e 20 62 6e 41 6e 64 28 62 29 7b 76 61 72 20 63  n bnAnd(b){var c
e740: 3d 6e 62 69 28 29 3b 74 68 69 73 2e 62 69 74 77  =nbi();this.bitw
e750: 69 73 65 54 6f 28 62 2c 6f 70 5f 61 6e 64 2c 63  iseTo(b,op_and,c
e760: 29 3b 72 65 74 75 72 6e 20 63 7d 66 75 6e 63 74  );return c}funct
e770: 69 6f 6e 20 6f 70 5f 6f 72 28 61 2c 62 29 7b 72  ion op_or(a,b){r
e780: 65 74 75 72 6e 20 61 7c 62 7d 66 75 6e 63 74 69  eturn a|b}functi
e790: 6f 6e 20 62 6e 4f 72 28 62 29 7b 76 61 72 20 63  on bnOr(b){var c
e7a0: 3d 6e 62 69 28 29 3b 74 68 69 73 2e 62 69 74 77  =nbi();this.bitw
e7b0: 69 73 65 54 6f 28 62 2c 6f 70 5f 6f 72 2c 63 29  iseTo(b,op_or,c)
e7c0: 3b 72 65 74 75 72 6e 20 63 7d 66 75 6e 63 74 69  ;return c}functi
e7d0: 6f 6e 20 6f 70 5f 78 6f 72 28 61 2c 62 29 7b 72  on op_xor(a,b){r
e7e0: 65 74 75 72 6e 20 61 5e 62 7d 66 75 6e 63 74 69  eturn a^b}functi
e7f0: 6f 6e 20 62 6e 58 6f 72 28 62 29 7b 76 61 72 20  on bnXor(b){var 
e800: 63 3d 6e 62 69 28 29 3b 74 68 69 73 2e 62 69 74  c=nbi();this.bit
e810: 77 69 73 65 54 6f 28 62 2c 6f 70 5f 78 6f 72 2c  wiseTo(b,op_xor,
e820: 63 29 3b 72 65 74 75 72 6e 20 63 7d 66 75 6e 63  c);return c}func
e830: 74 69 6f 6e 20 6f 70 5f 61 6e 64 6e 6f 74 28 61  tion op_andnot(a
e840: 2c 62 29 7b 72 65 74 75 72 6e 20 61 26 7e 62 7d  ,b){return a&~b}
e850: 66 75 6e 63 74 69 6f 6e 20 62 6e 41 6e 64 4e 6f  function bnAndNo
e860: 74 28 62 29 7b 76 61 72 20 63 3d 6e 62 69 28 29  t(b){var c=nbi()
e870: 3b 74 68 69 73 2e 62 69 74 77 69 73 65 54 6f 28  ;this.bitwiseTo(
e880: 62 2c 6f 70 5f 61 6e 64 6e 6f 74 2c 63 29 3b 72  b,op_andnot,c);r
e890: 65 74 75 72 6e 20 63 7d 66 75 6e 63 74 69 6f 6e  eturn c}function
e8a0: 20 62 6e 4e 6f 74 28 29 7b 76 61 72 20 62 3d 6e   bnNot(){var b=n
e8b0: 62 69 28 29 3b 66 6f 72 28 76 61 72 20 61 3d 30  bi();for(var a=0
e8c0: 3b 61 3c 74 68 69 73 2e 74 3b 2b 2b 61 29 7b 62  ;a<this.t;++a){b
e8d0: 5b 61 5d 3d 74 68 69 73 2e 44 4d 26 7e 74 68 69  [a]=this.DM&~thi
e8e0: 73 5b 61 5d 7d 62 2e 74 3d 74 68 69 73 2e 74 3b  s[a]}b.t=this.t;
e8f0: 62 2e 73 3d 7e 74 68 69 73 2e 73 3b 72 65 74 75  b.s=~this.s;retu
e900: 72 6e 20 62 7d 66 75 6e 63 74 69 6f 6e 20 62 6e  rn b}function bn
e910: 53 68 69 66 74 4c 65 66 74 28 62 29 7b 76 61 72  ShiftLeft(b){var
e920: 20 61 3d 6e 62 69 28 29 3b 69 66 28 62 3c 30 29   a=nbi();if(b<0)
e930: 7b 74 68 69 73 2e 72 53 68 69 66 74 54 6f 28 2d  {this.rShiftTo(-
e940: 62 2c 61 29 7d 65 6c 73 65 7b 74 68 69 73 2e 6c  b,a)}else{this.l
e950: 53 68 69 66 74 54 6f 28 62 2c 61 29 7d 72 65 74  ShiftTo(b,a)}ret
e960: 75 72 6e 20 61 7d 66 75 6e 63 74 69 6f 6e 20 62  urn a}function b
e970: 6e 53 68 69 66 74 52 69 67 68 74 28 62 29 7b 76  nShiftRight(b){v
e980: 61 72 20 61 3d 6e 62 69 28 29 3b 69 66 28 62 3c  ar a=nbi();if(b<
e990: 30 29 7b 74 68 69 73 2e 6c 53 68 69 66 74 54 6f  0){this.lShiftTo
e9a0: 28 2d 62 2c 61 29 7d 65 6c 73 65 7b 74 68 69 73  (-b,a)}else{this
e9b0: 2e 72 53 68 69 66 74 54 6f 28 62 2c 61 29 7d 72  .rShiftTo(b,a)}r
e9c0: 65 74 75 72 6e 20 61 7d 66 75 6e 63 74 69 6f 6e  eturn a}function
e9d0: 20 6c 62 69 74 28 61 29 7b 69 66 28 61 3d 3d 30   lbit(a){if(a==0
e9e0: 29 7b 72 65 74 75 72 6e 20 2d 31 7d 76 61 72 20  ){return -1}var 
e9f0: 62 3d 30 3b 69 66 28 28 61 26 36 35 35 33 35 29  b=0;if((a&65535)
ea00: 3d 3d 30 29 7b 61 3e 3e 3d 31 36 3b 62 2b 3d 31  ==0){a>>=16;b+=1
ea10: 36 7d 69 66 28 28 61 26 32 35 35 29 3d 3d 30 29  6}if((a&255)==0)
ea20: 7b 61 3e 3e 3d 38 3b 62 2b 3d 38 7d 69 66 28 28  {a>>=8;b+=8}if((
ea30: 61 26 31 35 29 3d 3d 30 29 7b 61 3e 3e 3d 34 3b  a&15)==0){a>>=4;
ea40: 62 2b 3d 34 7d 69 66 28 28 61 26 33 29 3d 3d 30  b+=4}if((a&3)==0
ea50: 29 7b 61 3e 3e 3d 32 3b 62 2b 3d 32 7d 69 66 28  ){a>>=2;b+=2}if(
ea60: 28 61 26 31 29 3d 3d 30 29 7b 2b 2b 62 7d 72 65  (a&1)==0){++b}re
ea70: 74 75 72 6e 20 62 7d 66 75 6e 63 74 69 6f 6e 20  turn b}function 
ea80: 62 6e 47 65 74 4c 6f 77 65 73 74 53 65 74 42 69  bnGetLowestSetBi
ea90: 74 28 29 7b 66 6f 72 28 76 61 72 20 61 3d 30 3b  t(){for(var a=0;
eaa0: 61 3c 74 68 69 73 2e 74 3b 2b 2b 61 29 7b 69 66  a<this.t;++a){if
eab0: 28 74 68 69 73 5b 61 5d 21 3d 30 29 7b 72 65 74  (this[a]!=0){ret
eac0: 75 72 6e 20 61 2a 74 68 69 73 2e 44 42 2b 6c 62  urn a*this.DB+lb
ead0: 69 74 28 74 68 69 73 5b 61 5d 29 7d 7d 69 66 28  it(this[a])}}if(
eae0: 74 68 69 73 2e 73 3c 30 29 7b 72 65 74 75 72 6e  this.s<0){return
eaf0: 20 74 68 69 73 2e 74 2a 74 68 69 73 2e 44 42 7d   this.t*this.DB}
eb00: 72 65 74 75 72 6e 20 2d 31 7d 66 75 6e 63 74 69  return -1}functi
eb10: 6f 6e 20 63 62 69 74 28 61 29 7b 76 61 72 20 62  on cbit(a){var b
eb20: 3d 30 3b 77 68 69 6c 65 28 61 21 3d 30 29 7b 61  =0;while(a!=0){a
eb30: 26 3d 61 2d 31 3b 2b 2b 62 7d 72 65 74 75 72 6e  &=a-1;++b}return
eb40: 20 62 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 42 69   b}function bnBi
eb50: 74 43 6f 75 6e 74 28 29 7b 76 61 72 20 63 3d 30  tCount(){var c=0
eb60: 2c 61 3d 74 68 69 73 2e 73 26 74 68 69 73 2e 44  ,a=this.s&this.D
eb70: 4d 3b 66 6f 72 28 76 61 72 20 62 3d 30 3b 62 3c  M;for(var b=0;b<
eb80: 74 68 69 73 2e 74 3b 2b 2b 62 29 7b 63 2b 3d 63  this.t;++b){c+=c
eb90: 62 69 74 28 74 68 69 73 5b 62 5d 5e 61 29 7d 72  bit(this[b]^a)}r
eba0: 65 74 75 72 6e 20 63 7d 66 75 6e 63 74 69 6f 6e  eturn c}function
ebb0: 20 62 6e 54 65 73 74 42 69 74 28 62 29 7b 76 61   bnTestBit(b){va
ebc0: 72 20 61 3d 4d 61 74 68 2e 66 6c 6f 6f 72 28 62  r a=Math.floor(b
ebd0: 2f 74 68 69 73 2e 44 42 29 3b 69 66 28 61 3e 3d  /this.DB);if(a>=
ebe0: 74 68 69 73 2e 74 29 7b 72 65 74 75 72 6e 28 74  this.t){return(t
ebf0: 68 69 73 2e 73 21 3d 30 29 7d 72 65 74 75 72 6e  his.s!=0)}return
ec00: 28 28 74 68 69 73 5b 61 5d 26 28 31 3c 3c 28 62  ((this[a]&(1<<(b
ec10: 25 74 68 69 73 2e 44 42 29 29 29 21 3d 30 29 7d  %this.DB)))!=0)}
ec20: 66 75 6e 63 74 69 6f 6e 20 62 6e 70 43 68 61 6e  function bnpChan
ec30: 67 65 42 69 74 28 63 2c 62 29 7b 76 61 72 20 61  geBit(c,b){var a
ec40: 3d 42 69 67 49 6e 74 65 67 65 72 2e 4f 4e 45 2e  =BigInteger.ONE.
ec50: 73 68 69 66 74 4c 65 66 74 28 63 29 3b 74 68 69  shiftLeft(c);thi
ec60: 73 2e 62 69 74 77 69 73 65 54 6f 28 61 2c 62 2c  s.bitwiseTo(a,b,
ec70: 61 29 3b 72 65 74 75 72 6e 20 61 7d 66 75 6e 63  a);return a}func
ec80: 74 69 6f 6e 20 62 6e 53 65 74 42 69 74 28 61 29  tion bnSetBit(a)
ec90: 7b 72 65 74 75 72 6e 20 74 68 69 73 2e 63 68 61  {return this.cha
eca0: 6e 67 65 42 69 74 28 61 2c 6f 70 5f 6f 72 29 7d  ngeBit(a,op_or)}
ecb0: 66 75 6e 63 74 69 6f 6e 20 62 6e 43 6c 65 61 72  function bnClear
ecc0: 42 69 74 28 61 29 7b 72 65 74 75 72 6e 20 74 68  Bit(a){return th
ecd0: 69 73 2e 63 68 61 6e 67 65 42 69 74 28 61 2c 6f  is.changeBit(a,o
ece0: 70 5f 61 6e 64 6e 6f 74 29 7d 66 75 6e 63 74 69  p_andnot)}functi
ecf0: 6f 6e 20 62 6e 46 6c 69 70 42 69 74 28 61 29 7b  on bnFlipBit(a){
ed00: 72 65 74 75 72 6e 20 74 68 69 73 2e 63 68 61 6e  return this.chan
ed10: 67 65 42 69 74 28 61 2c 6f 70 5f 78 6f 72 29 7d  geBit(a,op_xor)}
ed20: 66 75 6e 63 74 69 6f 6e 20 62 6e 70 41 64 64 54  function bnpAddT
ed30: 6f 28 64 2c 66 29 7b 76 61 72 20 65 3d 30 2c 67  o(d,f){var e=0,g
ed40: 3d 30 2c 62 3d 4d 61 74 68 2e 6d 69 6e 28 64 2e  =0,b=Math.min(d.
ed50: 74 2c 74 68 69 73 2e 74 29 3b 77 68 69 6c 65 28  t,this.t);while(
ed60: 65 3c 62 29 7b 67 2b 3d 74 68 69 73 5b 65 5d 2b  e<b){g+=this[e]+
ed70: 64 5b 65 5d 3b 66 5b 65 2b 2b 5d 3d 67 26 74 68  d[e];f[e++]=g&th
ed80: 69 73 2e 44 4d 3b 67 3e 3e 3d 74 68 69 73 2e 44  is.DM;g>>=this.D
ed90: 42 7d 69 66 28 64 2e 74 3c 74 68 69 73 2e 74 29  B}if(d.t<this.t)
eda0: 7b 67 2b 3d 64 2e 73 3b 77 68 69 6c 65 28 65 3c  {g+=d.s;while(e<
edb0: 74 68 69 73 2e 74 29 7b 67 2b 3d 74 68 69 73 5b  this.t){g+=this[
edc0: 65 5d 3b 66 5b 65 2b 2b 5d 3d 67 26 74 68 69 73  e];f[e++]=g&this
edd0: 2e 44 4d 3b 67 3e 3e 3d 74 68 69 73 2e 44 42 7d  .DM;g>>=this.DB}
ede0: 67 2b 3d 74 68 69 73 2e 73 7d 65 6c 73 65 7b 67  g+=this.s}else{g
edf0: 2b 3d 74 68 69 73 2e 73 3b 77 68 69 6c 65 28 65  +=this.s;while(e
ee00: 3c 64 2e 74 29 7b 67 2b 3d 64 5b 65 5d 3b 66 5b  <d.t){g+=d[e];f[
ee10: 65 2b 2b 5d 3d 67 26 74 68 69 73 2e 44 4d 3b 67  e++]=g&this.DM;g
ee20: 3e 3e 3d 74 68 69 73 2e 44 42 7d 67 2b 3d 64 2e  >>=this.DB}g+=d.
ee30: 73 7d 66 2e 73 3d 28 67 3c 30 29 3f 2d 31 3a 30  s}f.s=(g<0)?-1:0
ee40: 3b 69 66 28 67 3e 30 29 7b 66 5b 65 2b 2b 5d 3d  ;if(g>0){f[e++]=
ee50: 67 7d 65 6c 73 65 7b 69 66 28 67 3c 2d 31 29 7b  g}else{if(g<-1){
ee60: 66 5b 65 2b 2b 5d 3d 74 68 69 73 2e 44 56 2b 67  f[e++]=this.DV+g
ee70: 7d 7d 66 2e 74 3d 65 3b 66 2e 63 6c 61 6d 70 28  }}f.t=e;f.clamp(
ee80: 29 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 41 64 64  )}function bnAdd
ee90: 28 62 29 7b 76 61 72 20 63 3d 6e 62 69 28 29 3b  (b){var c=nbi();
eea0: 74 68 69 73 2e 61 64 64 54 6f 28 62 2c 63 29 3b  this.addTo(b,c);
eeb0: 72 65 74 75 72 6e 20 63 7d 66 75 6e 63 74 69 6f  return c}functio
eec0: 6e 20 62 6e 53 75 62 74 72 61 63 74 28 62 29 7b  n bnSubtract(b){
eed0: 76 61 72 20 63 3d 6e 62 69 28 29 3b 74 68 69 73  var c=nbi();this
eee0: 2e 73 75 62 54 6f 28 62 2c 63 29 3b 72 65 74 75  .subTo(b,c);retu
eef0: 72 6e 20 63 7d 66 75 6e 63 74 69 6f 6e 20 62 6e  rn c}function bn
ef00: 4d 75 6c 74 69 70 6c 79 28 62 29 7b 76 61 72 20  Multiply(b){var 
ef10: 63 3d 6e 62 69 28 29 3b 74 68 69 73 2e 6d 75 6c  c=nbi();this.mul
ef20: 74 69 70 6c 79 54 6f 28 62 2c 63 29 3b 72 65 74  tiplyTo(b,c);ret
ef30: 75 72 6e 20 63 7d 66 75 6e 63 74 69 6f 6e 20 62  urn c}function b
ef40: 6e 53 71 75 61 72 65 28 29 7b 76 61 72 20 61 3d  nSquare(){var a=
ef50: 6e 62 69 28 29 3b 74 68 69 73 2e 73 71 75 61 72  nbi();this.squar
ef60: 65 54 6f 28 61 29 3b 72 65 74 75 72 6e 20 61 7d  eTo(a);return a}
ef70: 66 75 6e 63 74 69 6f 6e 20 62 6e 44 69 76 69 64  function bnDivid
ef80: 65 28 62 29 7b 76 61 72 20 63 3d 6e 62 69 28 29  e(b){var c=nbi()
ef90: 3b 74 68 69 73 2e 64 69 76 52 65 6d 54 6f 28 62  ;this.divRemTo(b
efa0: 2c 63 2c 6e 75 6c 6c 29 3b 72 65 74 75 72 6e 20  ,c,null);return 
efb0: 63 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 52 65 6d  c}function bnRem
efc0: 61 69 6e 64 65 72 28 62 29 7b 76 61 72 20 63 3d  ainder(b){var c=
efd0: 6e 62 69 28 29 3b 74 68 69 73 2e 64 69 76 52 65  nbi();this.divRe
efe0: 6d 54 6f 28 62 2c 6e 75 6c 6c 2c 63 29 3b 72 65  mTo(b,null,c);re
eff0: 74 75 72 6e 20 63 7d 66 75 6e 63 74 69 6f 6e 20  turn c}function 
f000: 62 6e 44 69 76 69 64 65 41 6e 64 52 65 6d 61 69  bnDivideAndRemai
f010: 6e 64 65 72 28 62 29 7b 76 61 72 20 64 3d 6e 62  nder(b){var d=nb
f020: 69 28 29 2c 63 3d 6e 62 69 28 29 3b 74 68 69 73  i(),c=nbi();this
f030: 2e 64 69 76 52 65 6d 54 6f 28 62 2c 64 2c 63 29  .divRemTo(b,d,c)
f040: 3b 72 65 74 75 72 6e 20 6e 65 77 20 41 72 72 61  ;return new Arra
f050: 79 28 64 2c 63 29 7d 66 75 6e 63 74 69 6f 6e 20  y(d,c)}function 
f060: 62 6e 70 44 4d 75 6c 74 69 70 6c 79 28 61 29 7b  bnpDMultiply(a){
f070: 74 68 69 73 5b 74 68 69 73 2e 74 5d 3d 74 68 69  this[this.t]=thi
f080: 73 2e 61 6d 28 30 2c 61 2d 31 2c 74 68 69 73 2c  s.am(0,a-1,this,
f090: 30 2c 30 2c 74 68 69 73 2e 74 29 3b 2b 2b 74 68  0,0,this.t);++th
f0a0: 69 73 2e 74 3b 74 68 69 73 2e 63 6c 61 6d 70 28  is.t;this.clamp(
f0b0: 29 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 70 44 41  )}function bnpDA
f0c0: 64 64 4f 66 66 73 65 74 28 62 2c 61 29 7b 69 66  ddOffset(b,a){if
f0d0: 28 62 3d 3d 30 29 7b 72 65 74 75 72 6e 7d 77 68  (b==0){return}wh
f0e0: 69 6c 65 28 74 68 69 73 2e 74 3c 3d 61 29 7b 74  ile(this.t<=a){t
f0f0: 68 69 73 5b 74 68 69 73 2e 74 2b 2b 5d 3d 30 7d  his[this.t++]=0}
f100: 74 68 69 73 5b 61 5d 2b 3d 62 3b 77 68 69 6c 65  this[a]+=b;while
f110: 28 74 68 69 73 5b 61 5d 3e 3d 74 68 69 73 2e 44  (this[a]>=this.D
f120: 56 29 7b 74 68 69 73 5b 61 5d 2d 3d 74 68 69 73  V){this[a]-=this
f130: 2e 44 56 3b 69 66 28 2b 2b 61 3e 3d 74 68 69 73  .DV;if(++a>=this
f140: 2e 74 29 7b 74 68 69 73 5b 74 68 69 73 2e 74 2b  .t){this[this.t+
f150: 2b 5d 3d 30 7d 2b 2b 74 68 69 73 5b 61 5d 7d 7d  +]=0}++this[a]}}
f160: 66 75 6e 63 74 69 6f 6e 20 4e 75 6c 6c 45 78 70  function NullExp
f170: 28 29 7b 7d 66 75 6e 63 74 69 6f 6e 20 6e 4e 6f  (){}function nNo
f180: 70 28 61 29 7b 72 65 74 75 72 6e 20 61 7d 66 75  p(a){return a}fu
f190: 6e 63 74 69 6f 6e 20 6e 4d 75 6c 54 6f 28 61 2c  nction nMulTo(a,
f1a0: 63 2c 62 29 7b 61 2e 6d 75 6c 74 69 70 6c 79 54  c,b){a.multiplyT
f1b0: 6f 28 63 2c 62 29 7d 66 75 6e 63 74 69 6f 6e 20  o(c,b)}function 
f1c0: 6e 53 71 72 54 6f 28 61 2c 62 29 7b 61 2e 73 71  nSqrTo(a,b){a.sq
f1d0: 75 61 72 65 54 6f 28 62 29 7d 4e 75 6c 6c 45 78  uareTo(b)}NullEx
f1e0: 70 2e 70 72 6f 74 6f 74 79 70 65 2e 63 6f 6e 76  p.prototype.conv
f1f0: 65 72 74 3d 6e 4e 6f 70 3b 4e 75 6c 6c 45 78 70  ert=nNop;NullExp
f200: 2e 70 72 6f 74 6f 74 79 70 65 2e 72 65 76 65 72  .prototype.rever
f210: 74 3d 6e 4e 6f 70 3b 4e 75 6c 6c 45 78 70 2e 70  t=nNop;NullExp.p
f220: 72 6f 74 6f 74 79 70 65 2e 6d 75 6c 54 6f 3d 6e  rototype.mulTo=n
f230: 4d 75 6c 54 6f 3b 4e 75 6c 6c 45 78 70 2e 70 72  MulTo;NullExp.pr
f240: 6f 74 6f 74 79 70 65 2e 73 71 72 54 6f 3d 6e 53  ototype.sqrTo=nS
f250: 71 72 54 6f 3b 66 75 6e 63 74 69 6f 6e 20 62 6e  qrTo;function bn
f260: 50 6f 77 28 61 29 7b 72 65 74 75 72 6e 20 74 68  Pow(a){return th
f270: 69 73 2e 65 78 70 28 61 2c 6e 65 77 20 4e 75 6c  is.exp(a,new Nul
f280: 6c 45 78 70 28 29 29 7d 66 75 6e 63 74 69 6f 6e  lExp())}function
f290: 20 62 6e 70 4d 75 6c 74 69 70 6c 79 4c 6f 77 65   bnpMultiplyLowe
f2a0: 72 54 6f 28 62 2c 66 2c 65 29 7b 76 61 72 20 64  rTo(b,f,e){var d
f2b0: 3d 4d 61 74 68 2e 6d 69 6e 28 74 68 69 73 2e 74  =Math.min(this.t
f2c0: 2b 62 2e 74 2c 66 29 3b 65 2e 73 3d 30 3b 65 2e  +b.t,f);e.s=0;e.
f2d0: 74 3d 64 3b 77 68 69 6c 65 28 64 3e 30 29 7b 65  t=d;while(d>0){e
f2e0: 5b 2d 2d 64 5d 3d 30 7d 76 61 72 20 63 3b 66 6f  [--d]=0}var c;fo
f2f0: 72 28 63 3d 65 2e 74 2d 74 68 69 73 2e 74 3b 64  r(c=e.t-this.t;d
f300: 3c 63 3b 2b 2b 64 29 7b 65 5b 64 2b 74 68 69 73  <c;++d){e[d+this
f310: 2e 74 5d 3d 74 68 69 73 2e 61 6d 28 30 2c 62 5b  .t]=this.am(0,b[
f320: 64 5d 2c 65 2c 64 2c 30 2c 74 68 69 73 2e 74 29  d],e,d,0,this.t)
f330: 7d 66 6f 72 28 63 3d 4d 61 74 68 2e 6d 69 6e 28  }for(c=Math.min(
f340: 62 2e 74 2c 66 29 3b 64 3c 63 3b 2b 2b 64 29 7b  b.t,f);d<c;++d){
f350: 74 68 69 73 2e 61 6d 28 30 2c 62 5b 64 5d 2c 65  this.am(0,b[d],e
f360: 2c 64 2c 30 2c 66 2d 64 29 7d 65 2e 63 6c 61 6d  ,d,0,f-d)}e.clam
f370: 70 28 29 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 70  p()}function bnp
f380: 4d 75 6c 74 69 70 6c 79 55 70 70 65 72 54 6f 28  MultiplyUpperTo(
f390: 62 2c 65 2c 64 29 7b 2d 2d 65 3b 76 61 72 20 63  b,e,d){--e;var c
f3a0: 3d 64 2e 74 3d 74 68 69 73 2e 74 2b 62 2e 74 2d  =d.t=this.t+b.t-
f3b0: 65 3b 64 2e 73 3d 30 3b 77 68 69 6c 65 28 2d 2d  e;d.s=0;while(--
f3c0: 63 3e 3d 30 29 7b 64 5b 63 5d 3d 30 7d 66 6f 72  c>=0){d[c]=0}for
f3d0: 28 63 3d 4d 61 74 68 2e 6d 61 78 28 65 2d 74 68  (c=Math.max(e-th
f3e0: 69 73 2e 74 2c 30 29 3b 63 3c 62 2e 74 3b 2b 2b  is.t,0);c<b.t;++
f3f0: 63 29 7b 64 5b 74 68 69 73 2e 74 2b 63 2d 65 5d  c){d[this.t+c-e]
f400: 3d 74 68 69 73 2e 61 6d 28 65 2d 63 2c 62 5b 63  =this.am(e-c,b[c
f410: 5d 2c 64 2c 30 2c 30 2c 74 68 69 73 2e 74 2b 63  ],d,0,0,this.t+c
f420: 2d 65 29 7d 64 2e 63 6c 61 6d 70 28 29 3b 64 2e  -e)}d.clamp();d.
f430: 64 72 53 68 69 66 74 54 6f 28 31 2c 64 29 7d 66  drShiftTo(1,d)}f
f440: 75 6e 63 74 69 6f 6e 20 42 61 72 72 65 74 74 28  unction Barrett(
f450: 61 29 7b 74 68 69 73 2e 72 32 3d 6e 62 69 28 29  a){this.r2=nbi()
f460: 3b 74 68 69 73 2e 71 33 3d 6e 62 69 28 29 3b 42  ;this.q3=nbi();B
f470: 69 67 49 6e 74 65 67 65 72 2e 4f 4e 45 2e 64 6c  igInteger.ONE.dl
f480: 53 68 69 66 74 54 6f 28 32 2a 61 2e 74 2c 74 68  ShiftTo(2*a.t,th
f490: 69 73 2e 72 32 29 3b 74 68 69 73 2e 6d 75 3d 74  is.r2);this.mu=t
f4a0: 68 69 73 2e 72 32 2e 64 69 76 69 64 65 28 61 29  his.r2.divide(a)
f4b0: 3b 74 68 69 73 2e 6d 3d 61 7d 66 75 6e 63 74 69  ;this.m=a}functi
f4c0: 6f 6e 20 62 61 72 72 65 74 74 43 6f 6e 76 65 72  on barrettConver
f4d0: 74 28 61 29 7b 69 66 28 61 2e 73 3c 30 7c 7c 61  t(a){if(a.s<0||a
f4e0: 2e 74 3e 32 2a 74 68 69 73 2e 6d 2e 74 29 7b 72  .t>2*this.m.t){r
f4f0: 65 74 75 72 6e 20 61 2e 6d 6f 64 28 74 68 69 73  eturn a.mod(this
f500: 2e 6d 29 7d 65 6c 73 65 7b 69 66 28 61 2e 63 6f  .m)}else{if(a.co
f510: 6d 70 61 72 65 54 6f 28 74 68 69 73 2e 6d 29 3c  mpareTo(this.m)<
f520: 30 29 7b 72 65 74 75 72 6e 20 61 7d 65 6c 73 65  0){return a}else
f530: 7b 76 61 72 20 62 3d 6e 62 69 28 29 3b 61 2e 63  {var b=nbi();a.c
f540: 6f 70 79 54 6f 28 62 29 3b 74 68 69 73 2e 72 65  opyTo(b);this.re
f550: 64 75 63 65 28 62 29 3b 72 65 74 75 72 6e 20 62  duce(b);return b
f560: 7d 7d 7d 66 75 6e 63 74 69 6f 6e 20 62 61 72 72  }}}function barr
f570: 65 74 74 52 65 76 65 72 74 28 61 29 7b 72 65 74  ettRevert(a){ret
f580: 75 72 6e 20 61 7d 66 75 6e 63 74 69 6f 6e 20 62  urn a}function b
f590: 61 72 72 65 74 74 52 65 64 75 63 65 28 61 29 7b  arrettReduce(a){
f5a0: 61 2e 64 72 53 68 69 66 74 54 6f 28 74 68 69 73  a.drShiftTo(this
f5b0: 2e 6d 2e 74 2d 31 2c 74 68 69 73 2e 72 32 29 3b  .m.t-1,this.r2);
f5c0: 69 66 28 61 2e 74 3e 74 68 69 73 2e 6d 2e 74 2b  if(a.t>this.m.t+
f5d0: 31 29 7b 61 2e 74 3d 74 68 69 73 2e 6d 2e 74 2b  1){a.t=this.m.t+
f5e0: 31 3b 61 2e 63 6c 61 6d 70 28 29 7d 74 68 69 73  1;a.clamp()}this
f5f0: 2e 6d 75 2e 6d 75 6c 74 69 70 6c 79 55 70 70 65  .mu.multiplyUppe
f600: 72 54 6f 28 74 68 69 73 2e 72 32 2c 74 68 69 73  rTo(this.r2,this
f610: 2e 6d 2e 74 2b 31 2c 74 68 69 73 2e 71 33 29 3b  .m.t+1,this.q3);
f620: 74 68 69 73 2e 6d 2e 6d 75 6c 74 69 70 6c 79 4c  this.m.multiplyL
f630: 6f 77 65 72 54 6f 28 74 68 69 73 2e 71 33 2c 74  owerTo(this.q3,t
f640: 68 69 73 2e 6d 2e 74 2b 31 2c 74 68 69 73 2e 72  his.m.t+1,this.r
f650: 32 29 3b 77 68 69 6c 65 28 61 2e 63 6f 6d 70 61  2);while(a.compa
f660: 72 65 54 6f 28 74 68 69 73 2e 72 32 29 3c 30 29  reTo(this.r2)<0)
f670: 7b 61 2e 64 41 64 64 4f 66 66 73 65 74 28 31 2c  {a.dAddOffset(1,
f680: 74 68 69 73 2e 6d 2e 74 2b 31 29 7d 61 2e 73 75  this.m.t+1)}a.su
f690: 62 54 6f 28 74 68 69 73 2e 72 32 2c 61 29 3b 77  bTo(this.r2,a);w
f6a0: 68 69 6c 65 28 61 2e 63 6f 6d 70 61 72 65 54 6f  hile(a.compareTo
f6b0: 28 74 68 69 73 2e 6d 29 3e 3d 30 29 7b 61 2e 73  (this.m)>=0){a.s
f6c0: 75 62 54 6f 28 74 68 69 73 2e 6d 2c 61 29 7d 7d  ubTo(this.m,a)}}
f6d0: 66 75 6e 63 74 69 6f 6e 20 62 61 72 72 65 74 74  function barrett
f6e0: 53 71 72 54 6f 28 61 2c 62 29 7b 61 2e 73 71 75  SqrTo(a,b){a.squ
f6f0: 61 72 65 54 6f 28 62 29 3b 74 68 69 73 2e 72 65  areTo(b);this.re
f700: 64 75 63 65 28 62 29 7d 66 75 6e 63 74 69 6f 6e  duce(b)}function
f710: 20 62 61 72 72 65 74 74 4d 75 6c 54 6f 28 61 2c   barrettMulTo(a,
f720: 63 2c 62 29 7b 61 2e 6d 75 6c 74 69 70 6c 79 54  c,b){a.multiplyT
f730: 6f 28 63 2c 62 29 3b 74 68 69 73 2e 72 65 64 75  o(c,b);this.redu
f740: 63 65 28 62 29 7d 42 61 72 72 65 74 74 2e 70 72  ce(b)}Barrett.pr
f750: 6f 74 6f 74 79 70 65 2e 63 6f 6e 76 65 72 74 3d  ototype.convert=
f760: 62 61 72 72 65 74 74 43 6f 6e 76 65 72 74 3b 42  barrettConvert;B
f770: 61 72 72 65 74 74 2e 70 72 6f 74 6f 74 79 70 65  arrett.prototype
f780: 2e 72 65 76 65 72 74 3d 62 61 72 72 65 74 74 52  .revert=barrettR
f790: 65 76 65 72 74 3b 42 61 72 72 65 74 74 2e 70 72  evert;Barrett.pr
f7a0: 6f 74 6f 74 79 70 65 2e 72 65 64 75 63 65 3d 62  ototype.reduce=b
f7b0: 61 72 72 65 74 74 52 65 64 75 63 65 3b 42 61 72  arrettReduce;Bar
f7c0: 72 65 74 74 2e 70 72 6f 74 6f 74 79 70 65 2e 6d  rett.prototype.m
f7d0: 75 6c 54 6f 3d 62 61 72 72 65 74 74 4d 75 6c 54  ulTo=barrettMulT
f7e0: 6f 3b 42 61 72 72 65 74 74 2e 70 72 6f 74 6f 74  o;Barrett.protot
f7f0: 79 70 65 2e 73 71 72 54 6f 3d 62 61 72 72 65 74  ype.sqrTo=barret
f800: 74 53 71 72 54 6f 3b 66 75 6e 63 74 69 6f 6e 20  tSqrTo;function 
f810: 62 6e 4d 6f 64 50 6f 77 28 71 2c 66 29 7b 76 61  bnModPow(q,f){va
f820: 72 20 6f 3d 71 2e 62 69 74 4c 65 6e 67 74 68 28  r o=q.bitLength(
f830: 29 2c 68 2c 62 3d 6e 62 76 28 31 29 2c 76 3b 69  ),h,b=nbv(1),v;i
f840: 66 28 6f 3c 3d 30 29 7b 72 65 74 75 72 6e 20 62  f(o<=0){return b
f850: 7d 65 6c 73 65 7b 69 66 28 6f 3c 31 38 29 7b 68  }else{if(o<18){h
f860: 3d 31 7d 65 6c 73 65 7b 69 66 28 6f 3c 34 38 29  =1}else{if(o<48)
f870: 7b 68 3d 33 7d 65 6c 73 65 7b 69 66 28 6f 3c 31  {h=3}else{if(o<1
f880: 34 34 29 7b 68 3d 34 7d 65 6c 73 65 7b 69 66 28  44){h=4}else{if(
f890: 6f 3c 37 36 38 29 7b 68 3d 35 7d 65 6c 73 65 7b  o<768){h=5}else{
f8a0: 68 3d 36 7d 7d 7d 7d 7d 69 66 28 6f 3c 38 29 7b  h=6}}}}}if(o<8){
f8b0: 76 3d 6e 65 77 20 43 6c 61 73 73 69 63 28 66 29  v=new Classic(f)
f8c0: 7d 65 6c 73 65 7b 69 66 28 66 2e 69 73 45 76 65  }else{if(f.isEve
f8d0: 6e 28 29 29 7b 76 3d 6e 65 77 20 42 61 72 72 65  n()){v=new Barre
f8e0: 74 74 28 66 29 7d 65 6c 73 65 7b 76 3d 6e 65 77  tt(f)}else{v=new
f8f0: 20 4d 6f 6e 74 67 6f 6d 65 72 79 28 66 29 7d 7d   Montgomery(f)}}
f900: 76 61 72 20 70 3d 6e 65 77 20 41 72 72 61 79 28  var p=new Array(
f910: 29 2c 64 3d 33 2c 73 3d 68 2d 31 2c 61 3d 28 31  ),d=3,s=h-1,a=(1
f920: 3c 3c 68 29 2d 31 3b 70 5b 31 5d 3d 76 2e 63 6f  <<h)-1;p[1]=v.co
f930: 6e 76 65 72 74 28 74 68 69 73 29 3b 69 66 28 68  nvert(this);if(h
f940: 3e 31 29 7b 76 61 72 20 41 3d 6e 62 69 28 29 3b  >1){var A=nbi();
f950: 76 2e 73 71 72 54 6f 28 70 5b 31 5d 2c 41 29 3b  v.sqrTo(p[1],A);
f960: 77 68 69 6c 65 28 64 3c 3d 61 29 7b 70 5b 64 5d  while(d<=a){p[d]
f970: 3d 6e 62 69 28 29 3b 76 2e 6d 75 6c 54 6f 28 41  =nbi();v.mulTo(A
f980: 2c 70 5b 64 2d 32 5d 2c 70 5b 64 5d 29 3b 64 2b  ,p[d-2],p[d]);d+
f990: 3d 32 7d 7d 76 61 72 20 6c 3d 71 2e 74 2d 31 2c  =2}}var l=q.t-1,
f9a0: 78 2c 75 3d 74 72 75 65 2c 63 3d 6e 62 69 28 29  x,u=true,c=nbi()
f9b0: 2c 79 3b 6f 3d 6e 62 69 74 73 28 71 5b 6c 5d 29  ,y;o=nbits(q[l])
f9c0: 2d 31 3b 77 68 69 6c 65 28 6c 3e 3d 30 29 7b 69  -1;while(l>=0){i
f9d0: 66 28 6f 3e 3d 73 29 7b 78 3d 28 71 5b 6c 5d 3e  f(o>=s){x=(q[l]>
f9e0: 3e 28 6f 2d 73 29 29 26 61 7d 65 6c 73 65 7b 78  >(o-s))&a}else{x
f9f0: 3d 28 71 5b 6c 5d 26 28 28 31 3c 3c 28 6f 2b 31  =(q[l]&((1<<(o+1
fa00: 29 29 2d 31 29 29 3c 3c 28 73 2d 6f 29 3b 69 66  ))-1))<<(s-o);if
fa10: 28 6c 3e 30 29 7b 78 7c 3d 71 5b 6c 2d 31 5d 3e  (l>0){x|=q[l-1]>
fa20: 3e 28 74 68 69 73 2e 44 42 2b 6f 2d 73 29 7d 7d  >(this.DB+o-s)}}
fa30: 64 3d 68 3b 77 68 69 6c 65 28 28 78 26 31 29 3d  d=h;while((x&1)=
fa40: 3d 30 29 7b 78 3e 3e 3d 31 3b 2d 2d 64 7d 69 66  =0){x>>=1;--d}if
fa50: 28 28 6f 2d 3d 64 29 3c 30 29 7b 6f 2b 3d 74 68  ((o-=d)<0){o+=th
fa60: 69 73 2e 44 42 3b 2d 2d 6c 7d 69 66 28 75 29 7b  is.DB;--l}if(u){
fa70: 70 5b 78 5d 2e 63 6f 70 79 54 6f 28 62 29 3b 75  p[x].copyTo(b);u
fa80: 3d 66 61 6c 73 65 7d 65 6c 73 65 7b 77 68 69 6c  =false}else{whil
fa90: 65 28 64 3e 31 29 7b 76 2e 73 71 72 54 6f 28 62  e(d>1){v.sqrTo(b
faa0: 2c 63 29 3b 76 2e 73 71 72 54 6f 28 63 2c 62 29  ,c);v.sqrTo(c,b)
fab0: 3b 64 2d 3d 32 7d 69 66 28 64 3e 30 29 7b 76 2e  ;d-=2}if(d>0){v.
fac0: 73 71 72 54 6f 28 62 2c 63 29 7d 65 6c 73 65 7b  sqrTo(b,c)}else{
fad0: 79 3d 62 3b 62 3d 63 3b 63 3d 79 7d 76 2e 6d 75  y=b;b=c;c=y}v.mu
fae0: 6c 54 6f 28 63 2c 70 5b 78 5d 2c 62 29 7d 77 68  lTo(c,p[x],b)}wh
faf0: 69 6c 65 28 6c 3e 3d 30 26 26 28 71 5b 6c 5d 26  ile(l>=0&&(q[l]&
fb00: 28 31 3c 3c 6f 29 29 3d 3d 30 29 7b 76 2e 73 71  (1<<o))==0){v.sq
fb10: 72 54 6f 28 62 2c 63 29 3b 79 3d 62 3b 62 3d 63  rTo(b,c);y=b;b=c
fb20: 3b 63 3d 79 3b 69 66 28 2d 2d 6f 3c 30 29 7b 6f  ;c=y;if(--o<0){o
fb30: 3d 74 68 69 73 2e 44 42 2d 31 3b 2d 2d 6c 7d 7d  =this.DB-1;--l}}
fb40: 7d 72 65 74 75 72 6e 20 76 2e 72 65 76 65 72 74  }return v.revert
fb50: 28 62 29 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 47  (b)}function bnG
fb60: 43 44 28 63 29 7b 76 61 72 20 62 3d 28 74 68 69  CD(c){var b=(thi
fb70: 73 2e 73 3c 30 29 3f 74 68 69 73 2e 6e 65 67 61  s.s<0)?this.nega
fb80: 74 65 28 29 3a 74 68 69 73 2e 63 6c 6f 6e 65 28  te():this.clone(
fb90: 29 3b 76 61 72 20 68 3d 28 63 2e 73 3c 30 29 3f  );var h=(c.s<0)?
fba0: 63 2e 6e 65 67 61 74 65 28 29 3a 63 2e 63 6c 6f  c.negate():c.clo
fbb0: 6e 65 28 29 3b 69 66 28 62 2e 63 6f 6d 70 61 72  ne();if(b.compar
fbc0: 65 54 6f 28 68 29 3c 30 29 7b 76 61 72 20 65 3d  eTo(h)<0){var e=
fbd0: 62 3b 62 3d 68 3b 68 3d 65 7d 76 61 72 20 64 3d  b;b=h;h=e}var d=
fbe0: 62 2e 67 65 74 4c 6f 77 65 73 74 53 65 74 42 69  b.getLowestSetBi
fbf0: 74 28 29 2c 66 3d 68 2e 67 65 74 4c 6f 77 65 73  t(),f=h.getLowes
fc00: 74 53 65 74 42 69 74 28 29 3b 69 66 28 66 3c 30  tSetBit();if(f<0
fc10: 29 7b 72 65 74 75 72 6e 20 62 7d 69 66 28 64 3c  ){return b}if(d<
fc20: 66 29 7b 66 3d 64 7d 69 66 28 66 3e 30 29 7b 62  f){f=d}if(f>0){b
fc30: 2e 72 53 68 69 66 74 54 6f 28 66 2c 62 29 3b 68  .rShiftTo(f,b);h
fc40: 2e 72 53 68 69 66 74 54 6f 28 66 2c 68 29 7d 77  .rShiftTo(f,h)}w
fc50: 68 69 6c 65 28 62 2e 73 69 67 6e 75 6d 28 29 3e  hile(b.signum()>
fc60: 30 29 7b 69 66 28 28 64 3d 62 2e 67 65 74 4c 6f  0){if((d=b.getLo
fc70: 77 65 73 74 53 65 74 42 69 74 28 29 29 3e 30 29  westSetBit())>0)
fc80: 7b 62 2e 72 53 68 69 66 74 54 6f 28 64 2c 62 29  {b.rShiftTo(d,b)
fc90: 7d 69 66 28 28 64 3d 68 2e 67 65 74 4c 6f 77 65  }if((d=h.getLowe
fca0: 73 74 53 65 74 42 69 74 28 29 29 3e 30 29 7b 68  stSetBit())>0){h
fcb0: 2e 72 53 68 69 66 74 54 6f 28 64 2c 68 29 7d 69  .rShiftTo(d,h)}i
fcc0: 66 28 62 2e 63 6f 6d 70 61 72 65 54 6f 28 68 29  f(b.compareTo(h)
fcd0: 3e 3d 30 29 7b 62 2e 73 75 62 54 6f 28 68 2c 62  >=0){b.subTo(h,b
fce0: 29 3b 62 2e 72 53 68 69 66 74 54 6f 28 31 2c 62  );b.rShiftTo(1,b
fcf0: 29 7d 65 6c 73 65 7b 68 2e 73 75 62 54 6f 28 62  )}else{h.subTo(b
fd00: 2c 68 29 3b 68 2e 72 53 68 69 66 74 54 6f 28 31  ,h);h.rShiftTo(1
fd10: 2c 68 29 7d 7d 69 66 28 66 3e 30 29 7b 68 2e 6c  ,h)}}if(f>0){h.l
fd20: 53 68 69 66 74 54 6f 28 66 2c 68 29 7d 72 65 74  ShiftTo(f,h)}ret
fd30: 75 72 6e 20 68 7d 66 75 6e 63 74 69 6f 6e 20 62  urn h}function b
fd40: 6e 70 4d 6f 64 49 6e 74 28 65 29 7b 69 66 28 65  npModInt(e){if(e
fd50: 3c 3d 30 29 7b 72 65 74 75 72 6e 20 30 7d 76 61  <=0){return 0}va
fd60: 72 20 63 3d 74 68 69 73 2e 44 56 25 65 2c 62 3d  r c=this.DV%e,b=
fd70: 28 74 68 69 73 2e 73 3c 30 29 3f 65 2d 31 3a 30  (this.s<0)?e-1:0
fd80: 3b 69 66 28 74 68 69 73 2e 74 3e 30 29 7b 69 66  ;if(this.t>0){if
fd90: 28 63 3d 3d 30 29 7b 62 3d 74 68 69 73 5b 30 5d  (c==0){b=this[0]
fda0: 25 65 7d 65 6c 73 65 7b 66 6f 72 28 76 61 72 20  %e}else{for(var 
fdb0: 61 3d 74 68 69 73 2e 74 2d 31 3b 61 3e 3d 30 3b  a=this.t-1;a>=0;
fdc0: 2d 2d 61 29 7b 62 3d 28 63 2a 62 2b 74 68 69 73  --a){b=(c*b+this
fdd0: 5b 61 5d 29 25 65 7d 7d 7d 72 65 74 75 72 6e 20  [a])%e}}}return 
fde0: 62 7d 66 75 6e 63 74 69 6f 6e 20 62 6e 4d 6f 64  b}function bnMod
fdf0: 49 6e 76 65 72 73 65 28 66 29 7b 76 61 72 20 6a  Inverse(f){var j
fe00: 3d 66 2e 69 73 45 76 65 6e 28 29 3b 69 66 28 28  =f.isEven();if((
fe10: 74 68 69 73 2e 69 73 45 76 65 6e 28 29 26 26 6a  this.isEven()&&j
fe20: 29 7c 7c 66 2e 73 69 67 6e 75 6d 28 29 3d 3d 30  )||f.signum()==0
fe30: 29 7b 72 65 74 75 72 6e 20 42 69 67 49 6e 74 65  ){return BigInte
fe40: 67 65 72 2e 5a 45 52 4f 7d 76 61 72 20 69 3d 66  ger.ZERO}var i=f
fe50: 2e 63 6c 6f 6e 65 28 29 2c 68 3d 74 68 69 73 2e  .clone(),h=this.
fe60: 63 6c 6f 6e 65 28 29 3b 76 61 72 20 67 3d 6e 62  clone();var g=nb
fe70: 76 28 31 29 2c 65 3d 6e 62 76 28 30 29 2c 6c 3d  v(1),e=nbv(0),l=
fe80: 6e 62 76 28 30 29 2c 6b 3d 6e 62 76 28 31 29 3b  nbv(0),k=nbv(1);
fe90: 77 68 69 6c 65 28 69 2e 73 69 67 6e 75 6d 28 29  while(i.signum()
fea0: 21 3d 30 29 7b 77 68 69 6c 65 28 69 2e 69 73 45  !=0){while(i.isE
feb0: 76 65 6e 28 29 29 7b 69 2e 72 53 68 69 66 74 54  ven()){i.rShiftT
fec0: 6f 28 31 2c 69 29 3b 69 66 28 6a 29 7b 69 66 28  o(1,i);if(j){if(
fed0: 21 67 2e 69 73 45 76 65 6e 28 29 7c 7c 21 65 2e  !g.isEven()||!e.
fee0: 69 73 45 76 65 6e 28 29 29 7b 67 2e 61 64 64 54  isEven()){g.addT
fef0: 6f 28 74 68 69 73 2c 67 29 3b 65 2e 73 75 62 54  o(this,g);e.subT
ff00: 6f 28 66 2c 65 29 7d 67 2e 72 53 68 69 66 74 54  o(f,e)}g.rShiftT
ff10: 6f 28 31 2c 67 29 7d 65 6c 73 65 7b 69 66 28 21  o(1,g)}else{if(!
ff20: 65 2e 69 73 45 76 65 6e 28 29 29 7b 65 2e 73 75  e.isEven()){e.su
ff30: 62 54 6f 28 66 2c 65 29 7d 7d 65 2e 72 53 68 69  bTo(f,e)}}e.rShi
ff40: 66 74 54 6f 28 31 2c 65 29 7d 77 68 69 6c 65 28  ftTo(1,e)}while(
ff50: 68 2e 69 73 45 76 65 6e 28 29 29 7b 68 2e 72 53  h.isEven()){h.rS
ff60: 68 69 66 74 54 6f 28 31 2c 68 29 3b 69 66 28 6a  hiftTo(1,h);if(j
ff70: 29 7b 69 66 28 21 6c 2e 69 73 45 76 65 6e 28 29  ){if(!l.isEven()
ff80: 7c 7c 21 6b 2e 69 73 45 76 65 6e 28 29 29 7b 6c  ||!k.isEven()){l
ff90: 2e 61 64 64 54 6f 28 74 68 69 73 2c 6c 29 3b 6b  .addTo(this,l);k
ffa0: 2e 73 75 62 54 6f 28 66 2c 6b 29 7d 6c 2e 72 53  .subTo(f,k)}l.rS
ffb0: 68 69 66 74 54 6f 28 31 2c 6c 29 7d 65 6c 73 65  hiftTo(1,l)}else
ffc0: 7b 69 66 28 21 6b 2e 69 73 45 76 65 6e 28 29 29  {if(!k.isEven())
ffd0: 7b 6b 2e 73 75 62 54 6f 28 66 2c 6b 29 7d 7d 6b  {k.subTo(f,k)}}k
ffe0: 2e 72 53 68 69 66 74 54 6f 28 31 2c 6b 29 7d 69  .rShiftTo(1,k)}i
fff0: 66 28 69 2e 63 6f 6d 70 61 72 65 54 6f 28 68 29  f(i.compareTo(h)
10000 3e 3d 30 29 7b 69 2e 73 75 62 54 6f 28 68 2c 69  >=0){i.subTo(h,i
10010 29 3b 69 66 28 6a 29 7b 67 2e 73 75 62 54 6f 28  );if(j){g.subTo(
10020 6c 2c 67 29 7d 65 2e 73 75 62 54 6f 28 6b 2c 65  l,g)}e.subTo(k,e
10030 29 7d 65 6c 73 65 7b 68 2e 73 75 62 54 6f 28 69  )}else{h.subTo(i
10040 2c 68 29 3b 69 66 28 6a 29 7b 6c 2e 73 75 62 54  ,h);if(j){l.subT
10050 6f 28 67 2c 6c 29 7d 6b 2e 73 75 62 54 6f 28 65  o(g,l)}k.subTo(e
10060 2c 6b 29 7d 7d 69 66 28 68 2e 63 6f 6d 70 61 72  ,k)}}if(h.compar
10070 65 54 6f 28 42 69 67 49 6e 74 65 67 65 72 2e 4f  eTo(BigInteger.O
10080 4e 45 29 21 3d 30 29 7b 72 65 74 75 72 6e 20 42  NE)!=0){return B
10090 69 67 49 6e 74 65 67 65 72 2e 5a 45 52 4f 7d 69  igInteger.ZERO}i
100a0 66 28 6b 2e 63 6f 6d 70 61 72 65 54 6f 28 66 29  f(k.compareTo(f)
100b0 3e 3d 30 29 7b 72 65 74 75 72 6e 20 6b 2e 73 75  >=0){return k.su
100c0 62 74 72 61 63 74 28 66 29 7d 69 66 28 6b 2e 73  btract(f)}if(k.s
100d0 69 67 6e 75 6d 28 29 3c 30 29 7b 6b 2e 61 64 64  ignum()<0){k.add
100e0 54 6f 28 66 2c 6b 29 7d 65 6c 73 65 7b 72 65 74  To(f,k)}else{ret
100f0 75 72 6e 20 6b 7d 69 66 28 6b 2e 73 69 67 6e 75  urn k}if(k.signu
10100 6d 28 29 3c 30 29 7b 72 65 74 75 72 6e 20 6b 2e  m()<0){return k.
10110 61 64 64 28 66 29 7d 65 6c 73 65 7b 72 65 74 75  add(f)}else{retu
10120 72 6e 20 6b 7d 7d 76 61 72 20 6c 6f 77 70 72 69  rn k}}var lowpri
10130 6d 65 73 3d 5b 32 2c 33 2c 35 2c 37 2c 31 31 2c  mes=[2,3,5,7,11,
10140 31 33 2c 31 37 2c 31 39 2c 32 33 2c 32 39 2c 33  13,17,19,23,29,3
10150 31 2c 33 37 2c 34 31 2c 34 33 2c 34 37 2c 35 33  1,37,41,43,47,53
10160 2c 35 39 2c 36 31 2c 36 37 2c 37 31 2c 37 33 2c  ,59,61,67,71,73,
10170 37 39 2c 38 33 2c 38 39 2c 39 37 2c 31 30 31 2c  79,83,89,97,101,
10180 31 30 33 2c 31 30 37 2c 31 30 39 2c 31 31 33 2c  103,107,109,113,
10190 31 32 37 2c 31 33 31 2c 31 33 37 2c 31 33 39 2c  127,131,137,139,
101a0 31 34 39 2c 31 35 31 2c 31 35 37 2c 31 36 33 2c  149,151,157,163,
101b0 31 36 37 2c 31 37 33 2c 31 37 39 2c 31 38 31 2c  167,173,179,181,
101c0 31 39 31 2c 31 39 33 2c 31 39 37 2c 31 39 39 2c  191,193,197,199,
101d0 32 31 31 2c 32 32 33 2c 32 32 37 2c 32 32 39 2c  211,223,227,229,
101e0 32 33 33 2c 32 33 39 2c 32 34 31 2c 32 35 31 2c  233,239,241,251,
101f0 32 35 37 2c 32 36 33 2c 32 36 39 2c 32 37 31 2c  257,263,269,271,
10200 32 37 37 2c 32 38 31 2c 32 38 33 2c 32 39 33 2c  277,281,283,293,
10210 33 30 37 2c 33 31 31 2c 33 31 33 2c 33 31 37 2c  307,311,313,317,
10220 33 33 31 2c 33 33 37 2c 33 34 37 2c 33 34 39 2c  331,337,347,349,
10230 33 35 33 2c 33 35 39 2c 33 36 37 2c 33 37 33 2c  353,359,367,373,
10240 33 37 39 2c 33 38 33 2c 33 38 39 2c 33 39 37 2c  379,383,389,397,
10250 34 30 31 2c 34 30 39 2c 34 31 39 2c 34 32 31 2c  401,409,419,421,
10260 34 33 31 2c 34 33 33 2c 34 33 39 2c 34 34 33 2c  431,433,439,443,
10270 34 34 39 2c 34 35 37 2c 34 36 31 2c 34 36 33 2c  449,457,461,463,
10280 34 36 37 2c 34 37 39 2c 34 38 37 2c 34 39 31 2c  467,479,487,491,
10290 34 39 39 2c 35 30 33 2c 35 30 39 2c 35 32 31 2c  499,503,509,521,
102a0 35 32 33 2c 35 34 31 2c 35 34 37 2c 35 35 37 2c  523,541,547,557,
102b0 35 36 33 2c 35 36 39 2c 35 37 31 2c 35 37 37 2c  563,569,571,577,
102c0 35 38 37 2c 35 39 33 2c 35 39 39 2c 36 30 31 2c  587,593,599,601,
102d0 36 30 37 2c 36 31 33 2c 36 31 37 2c 36 31 39 2c  607,613,617,619,
102e0 36 33 31 2c 36 34 31 2c 36 34 33 2c 36 34 37 2c  631,641,643,647,
102f0 36 35 33 2c 36 35 39 2c 36 36 31 2c 36 37 33 2c  653,659,661,673,
10300 36 37 37 2c 36 38 33 2c 36 39 31 2c 37 30 31 2c  677,683,691,701,
10310 37 30 39 2c 37 31 39 2c 37 32 37 2c 37 33 33 2c  709,719,727,733,
10320 37 33 39 2c 37 34 33 2c 37 35 31 2c 37 35 37 2c  739,743,751,757,
10330 37 36 31 2c 37 36 39 2c 37 37 33 2c 37 38 37 2c  761,769,773,787,
10340 37 39 37 2c 38 30 39 2c 38 31 31 2c 38 32 31 2c  797,809,811,821,
10350 38 32 33 2c 38 32 37 2c 38 32 39 2c 38 33 39 2c  823,827,829,839,
10360 38 35 33 2c 38 35 37 2c 38 35 39 2c 38 36 33 2c  853,857,859,863,
10370 38 37 37 2c 38 38 31 2c 38 38 33 2c 38 38 37 2c  877,881,883,887,
10380 39 30 37 2c 39 31 31 2c 39 31 39 2c 39 32 39 2c  907,911,919,929,
10390 39 33 37 2c 39 34 31 2c 39 34 37 2c 39 35 33 2c  937,941,947,953,
103a0 39 36 37 2c 39 37 31 2c 39 37 37 2c 39 38 33 2c  967,971,977,983,
103b0 39 39 31 2c 39 39 37 5d 3b 76 61 72 20 6c 70 6c  991,997];var lpl
103c0 69 6d 3d 28 31 3c 3c 32 36 29 2f 6c 6f 77 70 72  im=(1<<26)/lowpr
103d0 69 6d 65 73 5b 6c 6f 77 70 72 69 6d 65 73 2e 6c  imes[lowprimes.l
103e0 65 6e 67 74 68 2d 31 5d 3b 66 75 6e 63 74 69 6f  ength-1];functio
103f0 6e 20 62 6e 49 73 50 72 6f 62 61 62 6c 65 50 72  n bnIsProbablePr
10400 69 6d 65 28 65 29 7b 76 61 72 20 64 2c 62 3d 74  ime(e){var d,b=t
10410 68 69 73 2e 61 62 73 28 29 3b 69 66 28 62 2e 74  his.abs();if(b.t
10420 3d 3d 31 26 26 62 5b 30 5d 3c 3d 6c 6f 77 70 72  ==1&&b[0]<=lowpr
10430 69 6d 65 73 5b 6c 6f 77 70 72 69 6d 65 73 2e 6c  imes[lowprimes.l
10440 65 6e 67 74 68 2d 31 5d 29 7b 66 6f 72 28 64 3d  ength-1]){for(d=
10450 30 3b 64 3c 6c 6f 77 70 72 69 6d 65 73 2e 6c 65  0;d<lowprimes.le
10460 6e 67 74 68 3b 2b 2b 64 29 7b 69 66 28 62 5b 30  ngth;++d){if(b[0
10470 5d 3d 3d 6c 6f 77 70 72 69 6d 65 73 5b 64 5d 29  ]==lowprimes[d])
10480 7b 72 65 74 75 72 6e 20 74 72 75 65 7d 7d 72 65  {return true}}re
10490 74 75 72 6e 20 66 61 6c 73 65 7d 69 66 28 62 2e  turn false}if(b.
104a0 69 73 45 76 65 6e 28 29 29 7b 72 65 74 75 72 6e  isEven()){return
104b0 20 66 61 6c 73 65 7d 64 3d 31 3b 77 68 69 6c 65   false}d=1;while
104c0 28 64 3c 6c 6f 77 70 72 69 6d 65 73 2e 6c 65 6e  (d<lowprimes.len
104d0 67 74 68 29 7b 76 61 72 20 61 3d 6c 6f 77 70 72  gth){var a=lowpr
104e0 69 6d 65 73 5b 64 5d 2c 63 3d 64 2b 31 3b 77 68  imes[d],c=d+1;wh
104f0 69 6c 65 28 63 3c 6c 6f 77 70 72 69 6d 65 73 2e  ile(c<lowprimes.
10500 6c 65 6e 67 74 68 26 26 61 3c 6c 70 6c 69 6d 29  length&&a<lplim)
10510 7b 61 2a 3d 6c 6f 77 70 72 69 6d 65 73 5b 63 2b  {a*=lowprimes[c+
10520 2b 5d 7d 61 3d 62 2e 6d 6f 64 49 6e 74 28 61 29  +]}a=b.modInt(a)
10530 3b 77 68 69 6c 65 28 64 3c 63 29 7b 69 66 28 61  ;while(d<c){if(a
10540 25 6c 6f 77 70 72 69 6d 65 73 5b 64 2b 2b 5d 3d  %lowprimes[d++]=
10550 3d 30 29 7b 72 65 74 75 72 6e 20 66 61 6c 73 65  =0){return false
10560 7d 7d 7d 72 65 74 75 72 6e 20 62 2e 6d 69 6c 6c  }}}return b.mill
10570 65 72 52 61 62 69 6e 28 65 29 7d 66 75 6e 63 74  erRabin(e)}funct
10580 69 6f 6e 20 62 6e 70 4d 69 6c 6c 65 72 52 61 62  ion bnpMillerRab
10590 69 6e 28 66 29 7b 76 61 72 20 67 3d 74 68 69 73  in(f){var g=this
105a0 2e 73 75 62 74 72 61 63 74 28 42 69 67 49 6e 74  .subtract(BigInt
105b0 65 67 65 72 2e 4f 4e 45 29 3b 76 61 72 20 63 3d  eger.ONE);var c=
105c0 67 2e 67 65 74 4c 6f 77 65 73 74 53 65 74 42 69  g.getLowestSetBi
105d0 74 28 29 3b 69 66 28 63 3c 3d 30 29 7b 72 65 74  t();if(c<=0){ret
105e0 75 72 6e 20 66 61 6c 73 65 7d 76 61 72 20 68 3d  urn false}var h=
105f0 67 2e 73 68 69 66 74 52 69 67 68 74 28 63 29 3b  g.shiftRight(c);
10600 66 3d 28 66 2b 31 29 3e 3e 31 3b 69 66 28 66 3e  f=(f+1)>>1;if(f>
10610 6c 6f 77 70 72 69 6d 65 73 2e 6c 65 6e 67 74 68  lowprimes.length
10620 29 7b 66 3d 6c 6f 77 70 72 69 6d 65 73 2e 6c 65  ){f=lowprimes.le
10630 6e 67 74 68 7d 76 61 72 20 62 3d 6e 62 69 28 29  ngth}var b=nbi()
10640 3b 66 6f 72 28 76 61 72 20 65 3d 30 3b 65 3c 66  ;for(var e=0;e<f
10650 3b 2b 2b 65 29 7b 62 2e 66 72 6f 6d 49 6e 74 28  ;++e){b.fromInt(
10660 6c 6f 77 70 72 69 6d 65 73 5b 4d 61 74 68 2e 66  lowprimes[Math.f
10670 6c 6f 6f 72 28 4d 61 74 68 2e 72 61 6e 64 6f 6d  loor(Math.random
10680 28 29 2a 6c 6f 77 70 72 69 6d 65 73 2e 6c 65 6e  ()*lowprimes.len
10690 67 74 68 29 5d 29 3b 76 61 72 20 6c 3d 62 2e 6d  gth)]);var l=b.m
106a0 6f 64 50 6f 77 28 68 2c 74 68 69 73 29 3b 69 66  odPow(h,this);if
106b0 28 6c 2e 63 6f 6d 70 61 72 65 54 6f 28 42 69 67  (l.compareTo(Big
106c0 49 6e 74 65 67 65 72 2e 4f 4e 45 29 21 3d 30 26  Integer.ONE)!=0&
106d0 26 6c 2e 63 6f 6d 70 61 72 65 54 6f 28 67 29 21  &l.compareTo(g)!
106e0 3d 30 29 7b 76 61 72 20 64 3d 31 3b 77 68 69 6c  =0){var d=1;whil
106f0 65 28 64 2b 2b 3c 63 26 26 6c 2e 63 6f 6d 70 61  e(d++<c&&l.compa
10700 72 65 54 6f 28 67 29 21 3d 30 29 7b 6c 3d 6c 2e  reTo(g)!=0){l=l.
10710 6d 6f 64 50 6f 77 49 6e 74 28 32 2c 74 68 69 73  modPowInt(2,this
10720 29 3b 69 66 28 6c 2e 63 6f 6d 70 61 72 65 54 6f  );if(l.compareTo
10730 28 42 69 67 49 6e 74 65 67 65 72 2e 4f 4e 45 29  (BigInteger.ONE)
10740 3d 3d 30 29 7b 72 65 74 75 72 6e 20 66 61 6c 73  ==0){return fals
10750 65 7d 7d 69 66 28 6c 2e 63 6f 6d 70 61 72 65 54  e}}if(l.compareT
10760 6f 28 67 29 21 3d 30 29 7b 72 65 74 75 72 6e 20  o(g)!=0){return 
10770 66 61 6c 73 65 7d 7d 7d 72 65 74 75 72 6e 20 74  false}}}return t
10780 72 75 65 7d 42 69 67 49 6e 74 65 67 65 72 2e 70  rue}BigInteger.p
10790 72 6f 74 6f 74 79 70 65 2e 63 68 75 6e 6b 53 69  rototype.chunkSi
107a0 7a 65 3d 62 6e 70 43 68 75 6e 6b 53 69 7a 65 3b  ze=bnpChunkSize;
107b0 42 69 67 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f  BigInteger.proto
107c0 74 79 70 65 2e 74 6f 52 61 64 69 78 3d 62 6e 70  type.toRadix=bnp
107d0 54 6f 52 61 64 69 78 3b 42 69 67 49 6e 74 65 67  ToRadix;BigInteg
107e0 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 66 72 6f  er.prototype.fro
107f0 6d 52 61 64 69 78 3d 62 6e 70 46 72 6f 6d 52 61  mRadix=bnpFromRa
10800 64 69 78 3b 42 69 67 49 6e 74 65 67 65 72 2e 70  dix;BigInteger.p
10810 72 6f 74 6f 74 79 70 65 2e 66 72 6f 6d 4e 75 6d  rototype.fromNum
10820 62 65 72 3d 62 6e 70 46 72 6f 6d 4e 75 6d 62 65  ber=bnpFromNumbe
10830 72 3b 42 69 67 49 6e 74 65 67 65 72 2e 70 72 6f  r;BigInteger.pro
10840 74 6f 74 79 70 65 2e 62 69 74 77 69 73 65 54 6f  totype.bitwiseTo
10850 3d 62 6e 70 42 69 74 77 69 73 65 54 6f 3b 42 69  =bnpBitwiseTo;Bi
10860 67 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79  gInteger.prototy
10870 70 65 2e 63 68 61 6e 67 65 42 69 74 3d 62 6e 70  pe.changeBit=bnp
10880 43 68 61 6e 67 65 42 69 74 3b 42 69 67 49 6e 74  ChangeBit;BigInt
10890 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 61  eger.prototype.a
108a0 64 64 54 6f 3d 62 6e 70 41 64 64 54 6f 3b 42 69  ddTo=bnpAddTo;Bi
108b0 67 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79  gInteger.prototy
108c0 70 65 2e 64 4d 75 6c 74 69 70 6c 79 3d 62 6e 70  pe.dMultiply=bnp
108d0 44 4d 75 6c 74 69 70 6c 79 3b 42 69 67 49 6e 74  DMultiply;BigInt
108e0 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 64  eger.prototype.d
108f0 41 64 64 4f 66 66 73 65 74 3d 62 6e 70 44 41 64  AddOffset=bnpDAd
10900 64 4f 66 66 73 65 74 3b 42 69 67 49 6e 74 65 67  dOffset;BigInteg
10910 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 6d 75 6c  er.prototype.mul
10920 74 69 70 6c 79 4c 6f 77 65 72 54 6f 3d 62 6e 70  tiplyLowerTo=bnp
10930 4d 75 6c 74 69 70 6c 79 4c 6f 77 65 72 54 6f 3b  MultiplyLowerTo;
10940 42 69 67 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f  BigInteger.proto
10950 74 79 70 65 2e 6d 75 6c 74 69 70 6c 79 55 70 70  type.multiplyUpp
10960 65 72 54 6f 3d 62 6e 70 4d 75 6c 74 69 70 6c 79  erTo=bnpMultiply
10970 55 70 70 65 72 54 6f 3b 42 69 67 49 6e 74 65 67  UpperTo;BigInteg
10980 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 6d 6f 64  er.prototype.mod
10990 49 6e 74 3d 62 6e 70 4d 6f 64 49 6e 74 3b 42 69  Int=bnpModInt;Bi
109a0 67 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79  gInteger.prototy
109b0 70 65 2e 6d 69 6c 6c 65 72 52 61 62 69 6e 3d 62  pe.millerRabin=b
109c0 6e 70 4d 69 6c 6c 65 72 52 61 62 69 6e 3b 42 69  npMillerRabin;Bi
109d0 67 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79  gInteger.prototy
109e0 70 65 2e 63 6c 6f 6e 65 3d 62 6e 43 6c 6f 6e 65  pe.clone=bnClone
109f0 3b 42 69 67 49 6e 74 65 67 65 72 2e 70 72 6f 74  ;BigInteger.prot
10a00 6f 74 79 70 65 2e 69 6e 74 56 61 6c 75 65 3d 62  otype.intValue=b
10a10 6e 49 6e 74 56 61 6c 75 65 3b 42 69 67 49 6e 74  nIntValue;BigInt
10a20 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 62  eger.prototype.b
10a30 79 74 65 56 61 6c 75 65 3d 62 6e 42 79 74 65 56  yteValue=bnByteV
10a40 61 6c 75 65 3b 42 69 67 49 6e 74 65 67 65 72 2e  alue;BigInteger.
10a50 70 72 6f 74 6f 74 79 70 65 2e 73 68 6f 72 74 56  prototype.shortV
10a60 61 6c 75 65 3d 62 6e 53 68 6f 72 74 56 61 6c 75  alue=bnShortValu
10a70 65 3b 42 69 67 49 6e 74 65 67 65 72 2e 70 72 6f  e;BigInteger.pro
10a80 74 6f 74 79 70 65 2e 73 69 67 6e 75 6d 3d 62 6e  totype.signum=bn
10a90 53 69 67 4e 75 6d 3b 42 69 67 49 6e 74 65 67 65  SigNum;BigIntege
10aa0 72 2e 70 72 6f 74 6f 74 79 70 65 2e 74 6f 42 79  r.prototype.toBy
10ab0 74 65 41 72 72 61 79 3d 62 6e 54 6f 42 79 74 65  teArray=bnToByte
10ac0 41 72 72 61 79 3b 42 69 67 49 6e 74 65 67 65 72  Array;BigInteger
10ad0 2e 70 72 6f 74 6f 74 79 70 65 2e 65 71 75 61 6c  .prototype.equal
10ae0 73 3d 62 6e 45 71 75 61 6c 73 3b 42 69 67 49 6e  s=bnEquals;BigIn
10af0 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e  teger.prototype.
10b00 6d 69 6e 3d 62 6e 4d 69 6e 3b 42 69 67 49 6e 74  min=bnMin;BigInt
10b10 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 6d  eger.prototype.m
10b20 61 78 3d 62 6e 4d 61 78 3b 42 69 67 49 6e 74 65  ax=bnMax;BigInte
10b30 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 61 6e  ger.prototype.an
10b40 64 3d 62 6e 41 6e 64 3b 42 69 67 49 6e 74 65 67  d=bnAnd;BigInteg
10b50 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 6f 72 3d  er.prototype.or=
10b60 62 6e 4f 72 3b 42 69 67 49 6e 74 65 67 65 72 2e  bnOr;BigInteger.
10b70 70 72 6f 74 6f 74 79 70 65 2e 78 6f 72 3d 62 6e  prototype.xor=bn
10b80 58 6f 72 3b 42 69 67 49 6e 74 65 67 65 72 2e 70  Xor;BigInteger.p
10b90 72 6f 74 6f 74 79 70 65 2e 61 6e 64 4e 6f 74 3d  rototype.andNot=
10ba0 62 6e 41 6e 64 4e 6f 74 3b 42 69 67 49 6e 74 65  bnAndNot;BigInte
10bb0 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 6e 6f  ger.prototype.no
10bc0 74 3d 62 6e 4e 6f 74 3b 42 69 67 49 6e 74 65 67  t=bnNot;BigInteg
10bd0 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 73 68 69  er.prototype.shi
10be0 66 74 4c 65 66 74 3d 62 6e 53 68 69 66 74 4c 65  ftLeft=bnShiftLe
10bf0 66 74 3b 42 69 67 49 6e 74 65 67 65 72 2e 70 72  ft;BigInteger.pr
10c00 6f 74 6f 74 79 70 65 2e 73 68 69 66 74 52 69 67  ototype.shiftRig
10c10 68 74 3d 62 6e 53 68 69 66 74 52 69 67 68 74 3b  ht=bnShiftRight;
10c20 42 69 67 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f  BigInteger.proto
10c30 74 79 70 65 2e 67 65 74 4c 6f 77 65 73 74 53 65  type.getLowestSe
10c40 74 42 69 74 3d 62 6e 47 65 74 4c 6f 77 65 73 74  tBit=bnGetLowest
10c50 53 65 74 42 69 74 3b 42 69 67 49 6e 74 65 67 65  SetBit;BigIntege
10c60 72 2e 70 72 6f 74 6f 74 79 70 65 2e 62 69 74 43  r.prototype.bitC
10c70 6f 75 6e 74 3d 62 6e 42 69 74 43 6f 75 6e 74 3b  ount=bnBitCount;
10c80 42 69 67 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f  BigInteger.proto
10c90 74 79 70 65 2e 74 65 73 74 42 69 74 3d 62 6e 54  type.testBit=bnT
10ca0 65 73 74 42 69 74 3b 42 69 67 49 6e 74 65 67 65  estBit;BigIntege
10cb0 72 2e 70 72 6f 74 6f 74 79 70 65 2e 73 65 74 42  r.prototype.setB
10cc0 69 74 3d 62 6e 53 65 74 42 69 74 3b 42 69 67 49  it=bnSetBit;BigI
10cd0 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65  nteger.prototype
10ce0 2e 63 6c 65 61 72 42 69 74 3d 62 6e 43 6c 65 61  .clearBit=bnClea
10cf0 72 42 69 74 3b 42 69 67 49 6e 74 65 67 65 72 2e  rBit;BigInteger.
10d00 70 72 6f 74 6f 74 79 70 65 2e 66 6c 69 70 42 69  prototype.flipBi
10d10 74 3d 62 6e 46 6c 69 70 42 69 74 3b 42 69 67 49  t=bnFlipBit;BigI
10d20 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65  nteger.prototype
10d30 2e 61 64 64 3d 62 6e 41 64 64 3b 42 69 67 49 6e  .add=bnAdd;BigIn
10d40 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e  teger.prototype.
10d50 73 75 62 74 72 61 63 74 3d 62 6e 53 75 62 74 72  subtract=bnSubtr
10d60 61 63 74 3b 42 69 67 49 6e 74 65 67 65 72 2e 70  act;BigInteger.p
10d70 72 6f 74 6f 74 79 70 65 2e 6d 75 6c 74 69 70 6c  rototype.multipl
10d80 79 3d 62 6e 4d 75 6c 74 69 70 6c 79 3b 42 69 67  y=bnMultiply;Big
10d90 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70  Integer.prototyp
10da0 65 2e 64 69 76 69 64 65 3d 62 6e 44 69 76 69 64  e.divide=bnDivid
10db0 65 3b 42 69 67 49 6e 74 65 67 65 72 2e 70 72 6f  e;BigInteger.pro
10dc0 74 6f 74 79 70 65 2e 72 65 6d 61 69 6e 64 65 72  totype.remainder
10dd0 3d 62 6e 52 65 6d 61 69 6e 64 65 72 3b 42 69 67  =bnRemainder;Big
10de0 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70  Integer.prototyp
10df0 65 2e 64 69 76 69 64 65 41 6e 64 52 65 6d 61 69  e.divideAndRemai
10e00 6e 64 65 72 3d 62 6e 44 69 76 69 64 65 41 6e 64  nder=bnDivideAnd
10e10 52 65 6d 61 69 6e 64 65 72 3b 42 69 67 49 6e 74  Remainder;BigInt
10e20 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 6d  eger.prototype.m
10e30 6f 64 50 6f 77 3d 62 6e 4d 6f 64 50 6f 77 3b 42  odPow=bnModPow;B
10e40 69 67 49 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74  igInteger.protot
10e50 79 70 65 2e 6d 6f 64 49 6e 76 65 72 73 65 3d 62  ype.modInverse=b
10e60 6e 4d 6f 64 49 6e 76 65 72 73 65 3b 42 69 67 49  nModInverse;BigI
10e70 6e 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65  nteger.prototype
10e80 2e 70 6f 77 3d 62 6e 50 6f 77 3b 42 69 67 49 6e  .pow=bnPow;BigIn
10e90 74 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e  teger.prototype.
10ea0 67 63 64 3d 62 6e 47 43 44 3b 42 69 67 49 6e 74  gcd=bnGCD;BigInt
10eb0 65 67 65 72 2e 70 72 6f 74 6f 74 79 70 65 2e 69  eger.prototype.i
10ec0 73 50 72 6f 62 61 62 6c 65 50 72 69 6d 65 3d 62  sProbablePrime=b
10ed0 6e 49 73 50 72 6f 62 61 62 6c 65 50 72 69 6d 65  nIsProbablePrime
10ee0 3b 42 69 67 49 6e 74 65 67 65 72 2e 70 72 6f 74  ;BigInteger.prot
10ef0 6f 74 79 70 65 2e 73 71 75 61 72 65 3d 62 6e 53  otype.square=bnS
10f00 71 75 61 72 65 3b 0a 2f 2a 21 20 28 63 29 20 54  quare;./*! (c) T
10f10 6f 6d 20 57 75 20 7c 20 68 74 74 70 3a 2f 2f 77  om Wu | http://w
10f20 77 77 2d 63 73 2d 73 74 75 64 65 6e 74 73 2e 73  ww-cs-students.s
10f30 74 61 6e 66 6f 72 64 2e 65 64 75 2f 7e 74 6a 77  tanford.edu/~tjw
10f40 2f 6a 73 62 6e 2f 0a 20 2a 2f 0a 66 75 6e 63 74  /jsbn/. */.funct
10f50 69 6f 6e 20 41 72 63 66 6f 75 72 28 29 7b 74 68  ion Arcfour(){th
10f60 69 73 2e 69 3d 30 3b 74 68 69 73 2e 6a 3d 30 3b  is.i=0;this.j=0;
10f70 74 68 69 73 2e 53 3d 6e 65 77 20 41 72 72 61 79  this.S=new Array
10f80 28 29 7d 66 75 6e 63 74 69 6f 6e 20 41 52 43 34  ()}function ARC4
10f90 69 6e 69 74 28 64 29 7b 76 61 72 20 63 2c 61 2c  init(d){var c,a,
10fa0 62 3b 66 6f 72 28 63 3d 30 3b 63 3c 32 35 36 3b  b;for(c=0;c<256;
10fb0 2b 2b 63 29 7b 74 68 69 73 2e 53 5b 63 5d 3d 63  ++c){this.S[c]=c
10fc0 7d 61 3d 30 3b 66 6f 72 28 63 3d 30 3b 63 3c 32  }a=0;for(c=0;c<2
10fd0 35 36 3b 2b 2b 63 29 7b 61 3d 28 61 2b 74 68 69  56;++c){a=(a+thi
10fe0 73 2e 53 5b 63 5d 2b 64 5b 63 25 64 2e 6c 65 6e  s.S[c]+d[c%d.len
10ff0 67 74 68 5d 29 26 32 35 35 3b 62 3d 74 68 69 73  gth])&255;b=this
11000 2e 53 5b 63 5d 3b 74 68 69 73 2e 53 5b 63 5d 3d  .S[c];this.S[c]=
11010 74 68 69 73 2e 53 5b 61 5d 3b 74 68 69 73 2e 53  this.S[a];this.S
11020 5b 61 5d 3d 62 7d 74 68 69 73 2e 69 3d 30 3b 74  [a]=b}this.i=0;t
11030 68 69 73 2e 6a 3d 30 7d 66 75 6e 63 74 69 6f 6e  his.j=0}function
11040 20 41 52 43 34 6e 65 78 74 28 29 7b 76 61 72 20   ARC4next(){var 
11050 61 3b 74 68 69 73 2e 69 3d 28 74 68 69 73 2e 69  a;this.i=(this.i
11060 2b 31 29 26 32 35 35 3b 74 68 69 73 2e 6a 3d 28  +1)&255;this.j=(
11070 74 68 69 73 2e 6a 2b 74 68 69 73 2e 53 5b 74 68  this.j+this.S[th
11080 69 73 2e 69 5d 29 26 32 35 35 3b 61 3d 74 68 69  is.i])&255;a=thi
11090 73 2e 53 5b 74 68 69 73 2e 69 5d 3b 74 68 69 73  s.S[this.i];this
110a0 2e 53 5b 74 68 69 73 2e 69 5d 3d 74 68 69 73 2e  .S[this.i]=this.
110b0 53 5b 74 68 69 73 2e 6a 5d 3b 74 68 69 73 2e 53  S[this.j];this.S
110c0 5b 74 68 69 73 2e 6a 5d 3d 61 3b 72 65 74 75 72  [this.j]=a;retur
110d0 6e 20 74 68 69 73 2e 53 5b 28 61 2b 74 68 69 73  n this.S[(a+this
110e0 2e 53 5b 74 68 69 73 2e 69 5d 29 26 32 35 35 5d  .S[this.i])&255]
110f0 7d 41 72 63 66 6f 75 72 2e 70 72 6f 74 6f 74 79  }Arcfour.prototy
11100 70 65 2e 69 6e 69 74 3d 41 52 43 34 69 6e 69 74  pe.init=ARC4init
11110 3b 41 72 63 66 6f 75 72 2e 70 72 6f 74 6f 74 79  ;Arcfour.prototy
11120 70 65 2e 6e 65 78 74 3d 41 52 43 34 6e 65 78 74  pe.next=ARC4next
11130 3b 66 75 6e 63 74 69 6f 6e 20 70 72 6e 67 5f 6e  ;function prng_n
11140 65 77 73 74 61 74 65 28 29 7b 72 65 74 75 72 6e  ewstate(){return
11150 20 6e 65 77 20 41 72 63 66 6f 75 72 28 29 7d 76   new Arcfour()}v
11160 61 72 20 72 6e 67 5f 70 73 69 7a 65 3d 32 35 36  ar rng_psize=256
11170 3b 0a 2f 2a 21 20 28 63 29 20 54 6f 6d 20 57 75  ;./*! (c) Tom Wu
11180 20 7c 20 68 74 74 70 3a 2f 2f 77 77 77 2d 63 73   | http://www-cs
11190 2d 73 74 75 64 65 6e 74 73 2e 73 74 61 6e 66 6f  -students.stanfo
111a0 72 64 2e 65 64 75 2f 7e 74 6a 77 2f 6a 73 62 6e  rd.edu/~tjw/jsbn
111b0 2f 0a 20 2a 2f 0a 76 61 72 20 72 6e 67 5f 73 74  /. */.var rng_st
111c0 61 74 65 3b 76 61 72 20 72 6e 67 5f 70 6f 6f 6c  ate;var rng_pool
111d0 3b 76 61 72 20 72 6e 67 5f 70 70 74 72 3b 66 75  ;var rng_pptr;fu
111e0 6e 63 74 69 6f 6e 20 72 6e 67 5f 73 65 65 64 5f  nction rng_seed_
111f0 69 6e 74 28 61 29 7b 72 6e 67 5f 70 6f 6f 6c 5b  int(a){rng_pool[
11200 72 6e 67 5f 70 70 74 72 2b 2b 5d 5e 3d 61 26 32  rng_pptr++]^=a&2
11210 35 35 3b 72 6e 67 5f 70 6f 6f 6c 5b 72 6e 67 5f  55;rng_pool[rng_
11220 70 70 74 72 2b 2b 5d 5e 3d 28 61 3e 3e 38 29 26  pptr++]^=(a>>8)&
11230 32 35 35 3b 72 6e 67 5f 70 6f 6f 6c 5b 72 6e 67  255;rng_pool[rng
11240 5f 70 70 74 72 2b 2b 5d 5e 3d 28 61 3e 3e 31 36  _pptr++]^=(a>>16
11250 29 26 32 35 35 3b 72 6e 67 5f 70 6f 6f 6c 5b 72  )&255;rng_pool[r
11260 6e 67 5f 70 70 74 72 2b 2b 5d 5e 3d 28 61 3e 3e  ng_pptr++]^=(a>>
11270 32 34 29 26 32 35 35 3b 69 66 28 72 6e 67 5f 70  24)&255;if(rng_p
11280 70 74 72 3e 3d 72 6e 67 5f 70 73 69 7a 65 29 7b  ptr>=rng_psize){
11290 72 6e 67 5f 70 70 74 72 2d 3d 72 6e 67 5f 70 73  rng_pptr-=rng_ps
112a0 69 7a 65 7d 7d 66 75 6e 63 74 69 6f 6e 20 72 6e  ize}}function rn
112b0 67 5f 73 65 65 64 5f 74 69 6d 65 28 29 7b 72 6e  g_seed_time(){rn
112c0 67 5f 73 65 65 64 5f 69 6e 74 28 6e 65 77 20 44  g_seed_int(new D
112d0 61 74 65 28 29 2e 67 65 74 54 69 6d 65 28 29 29  ate().getTime())
112e0 7d 69 66 28 72 6e 67 5f 70 6f 6f 6c 3d 3d 6e 75  }if(rng_pool==nu
112f0 6c 6c 29 7b 72 6e 67 5f 70 6f 6f 6c 3d 6e 65 77  ll){rng_pool=new
11300 20 41 72 72 61 79 28 29 3b 72 6e 67 5f 70 70 74   Array();rng_ppt
11310 72 3d 30 3b 76 61 72 20 74 3b 69 66 28 6e 61 76  r=0;var t;if(nav
11320 69 67 61 74 6f 72 2e 61 70 70 4e 61 6d 65 3d 3d  igator.appName==
11330 22 4e 65 74 73 63 61 70 65 22 26 26 6e 61 76 69  "Netscape"&&navi
11340 67 61 74 6f 72 2e 61 70 70 56 65 72 73 69 6f 6e  gator.appVersion
11350 3c 22 35 22 26 26 77 69 6e 64 6f 77 2e 63 72 79  <"5"&&window.cry
11360 70 74 6f 29 7b 76 61 72 20 7a 3d 77 69 6e 64 6f  pto){var z=windo
11370 77 2e 63 72 79 70 74 6f 2e 72 61 6e 64 6f 6d 28  w.crypto.random(
11380 33 32 29 3b 66 6f 72 28 74 3d 30 3b 74 3c 7a 2e  32);for(t=0;t<z.
11390 6c 65 6e 67 74 68 3b 2b 2b 74 29 7b 72 6e 67 5f  length;++t){rng_
113a0 70 6f 6f 6c 5b 72 6e 67 5f 70 70 74 72 2b 2b 5d  pool[rng_pptr++]
113b0 3d 7a 2e 63 68 61 72 43 6f 64 65 41 74 28 74 29  =z.charCodeAt(t)
113c0 26 32 35 35 7d 7d 77 68 69 6c 65 28 72 6e 67 5f  &255}}while(rng_
113d0 70 70 74 72 3c 72 6e 67 5f 70 73 69 7a 65 29 7b  pptr<rng_psize){
113e0 74 3d 4d 61 74 68 2e 66 6c 6f 6f 72 28 36 35 35  t=Math.floor(655
113f0 33 36 2a 4d 61 74 68 2e 72 61 6e 64 6f 6d 28 29  36*Math.random()
11400 29 3b 72 6e 67 5f 70 6f 6f 6c 5b 72 6e 67 5f 70  );rng_pool[rng_p
11410 70 74 72 2b 2b 5d 3d 74 3e 3e 3e 38 3b 72 6e 67  ptr++]=t>>>8;rng
11420 5f 70 6f 6f 6c 5b 72 6e 67 5f 70 70 74 72 2b 2b  _pool[rng_pptr++
11430 5d 3d 74 26 32 35 35 7d 72 6e 67 5f 70 70 74 72  ]=t&255}rng_pptr
11440 3d 30 3b 72 6e 67 5f 73 65 65 64 5f 74 69 6d 65  =0;rng_seed_time
11450 28 29 7d 66 75 6e 63 74 69 6f 6e 20 72 6e 67 5f  ()}function rng_
11460 67 65 74 5f 62 79 74 65 28 29 7b 69 66 28 72 6e  get_byte(){if(rn
11470 67 5f 73 74 61 74 65 3d 3d 6e 75 6c 6c 29 7b 72  g_state==null){r
11480 6e 67 5f 73 65 65 64 5f 74 69 6d 65 28 29 3b 72  ng_seed_time();r
11490 6e 67 5f 73 74 61 74 65 3d 70 72 6e 67 5f 6e 65  ng_state=prng_ne
114a0 77 73 74 61 74 65 28 29 3b 72 6e 67 5f 73 74 61  wstate();rng_sta
114b0 74 65 2e 69 6e 69 74 28 72 6e 67 5f 70 6f 6f 6c  te.init(rng_pool
114c0 29 3b 66 6f 72 28 72 6e 67 5f 70 70 74 72 3d 30  );for(rng_pptr=0
114d0 3b 72 6e 67 5f 70 70 74 72 3c 72 6e 67 5f 70 6f  ;rng_pptr<rng_po
114e0 6f 6c 2e 6c 65 6e 67 74 68 3b 2b 2b 72 6e 67 5f  ol.length;++rng_
114f0 70 70 74 72 29 7b 72 6e 67 5f 70 6f 6f 6c 5b 72  pptr){rng_pool[r
11500 6e 67 5f 70 70 74 72 5d 3d 30 7d 72 6e 67 5f 70  ng_pptr]=0}rng_p
11510 70 74 72 3d 30 7d 72 65 74 75 72 6e 20 72 6e 67  ptr=0}return rng
11520 5f 73 74 61 74 65 2e 6e 65 78 74 28 29 7d 66 75  _state.next()}fu
11530 6e 63 74 69 6f 6e 20 72 6e 67 5f 67 65 74 5f 62  nction rng_get_b
11540 79 74 65 73 28 62 29 7b 76 61 72 20 61 3b 66 6f  ytes(b){var a;fo
11550 72 28 61 3d 30 3b 61 3c 62 2e 6c 65 6e 67 74 68  r(a=0;a<b.length
11560 3b 2b 2b 61 29 7b 62 5b 61 5d 3d 72 6e 67 5f 67  ;++a){b[a]=rng_g
11570 65 74 5f 62 79 74 65 28 29 7d 7d 66 75 6e 63 74  et_byte()}}funct
11580 69 6f 6e 20 53 65 63 75 72 65 52 61 6e 64 6f 6d  ion SecureRandom
11590 28 29 7b 7d 53 65 63 75 72 65 52 61 6e 64 6f 6d  (){}SecureRandom
115a0 2e 70 72 6f 74 6f 74 79 70 65 2e 6e 65 78 74 42  .prototype.nextB
115b0 79 74 65 73 3d 72 6e 67 5f 67 65 74 5f 62 79 74  ytes=rng_get_byt
115c0 65 73 3b 0a 2f 2a 21 20 28 63 29 20 54 6f 6d 20  es;./*! (c) Tom 
115d0 57 75 20 7c 20 68 74 74 70 3a 2f 2f 77 77 77 2d  Wu | http://www-
115e0 63 73 2d 73 74 75 64 65 6e 74 73 2e 73 74 61 6e  cs-students.stan
115f0 66 6f 72 64 2e 65 64 75 2f 7e 74 6a 77 2f 6a 73  ford.edu/~tjw/js
11600 62 6e 2f 0a 20 2a 2f 0a 66 75 6e 63 74 69 6f 6e  bn/. */.function
11610 20 70 61 72 73 65 42 69 67 49 6e 74 28 62 2c 61   parseBigInt(b,a
11620 29 7b 72 65 74 75 72 6e 20 6e 65 77 20 42 69 67  ){return new Big
11630 49 6e 74 65 67 65 72 28 62 2c 61 29 7d 66 75 6e  Integer(b,a)}fun
11640 63 74 69 6f 6e 20 6c 69 6e 65 62 72 6b 28 63 2c  ction linebrk(c,
11650 64 29 7b 76 61 72 20 61 3d 22 22 3b 76 61 72 20  d){var a="";var 
11660 62 3d 30 3b 77 68 69 6c 65 28 62 2b 64 3c 63 2e  b=0;while(b+d<c.
11670 6c 65 6e 67 74 68 29 7b 61 2b 3d 63 2e 73 75 62  length){a+=c.sub
11680 73 74 72 69 6e 67 28 62 2c 62 2b 64 29 2b 22 5c  string(b,b+d)+"\
11690 6e 22 3b 62 2b 3d 64 7d 72 65 74 75 72 6e 20 61  n";b+=d}return a
116a0 2b 63 2e 73 75 62 73 74 72 69 6e 67 28 62 2c 63  +c.substring(b,c
116b0 2e 6c 65 6e 67 74 68 29 7d 66 75 6e 63 74 69 6f  .length)}functio
116c0 6e 20 62 79 74 65 32 48 65 78 28 61 29 7b 69 66  n byte2Hex(a){if
116d0 28 61 3c 31 36 29 7b 72 65 74 75 72 6e 22 30 22  (a<16){return"0"
116e0 2b 61 2e 74 6f 53 74 72 69 6e 67 28 31 36 29 7d  +a.toString(16)}
116f0 65 6c 73 65 7b 72 65 74 75 72 6e 20 61 2e 74 6f  else{return a.to
11700 53 74 72 69 6e 67 28 31 36 29 7d 7d 66 75 6e 63  String(16)}}func
11710 74 69 6f 6e 20 70 6b 63 73 31 70 61 64 32 28 65  tion pkcs1pad2(e
11720 2c 68 29 7b 69 66 28 68 3c 65 2e 6c 65 6e 67 74  ,h){if(h<e.lengt
11730 68 2b 31 31 29 7b 61 6c 65 72 74 28 22 4d 65 73  h+11){alert("Mes
11740 73 61 67 65 20 74 6f 6f 20 6c 6f 6e 67 20 66 6f  sage too long fo
11750 72 20 52 53 41 22 29 3b 72 65 74 75 72 6e 20 6e  r RSA");return n
11760 75 6c 6c 7d 76 61 72 20 67 3d 6e 65 77 20 41 72  ull}var g=new Ar
11770 72 61 79 28 29 3b 76 61 72 20 64 3d 65 2e 6c 65  ray();var d=e.le
11780 6e 67 74 68 2d 31 3b 77 68 69 6c 65 28 64 3e 3d  ngth-1;while(d>=
11790 30 26 26 68 3e 30 29 7b 76 61 72 20 66 3d 65 2e  0&&h>0){var f=e.
117a0 63 68 61 72 43 6f 64 65 41 74 28 64 2d 2d 29 3b  charCodeAt(d--);
117b0 69 66 28 66 3c 31 32 38 29 7b 67 5b 2d 2d 68 5d  if(f<128){g[--h]
117c0 3d 66 7d 65 6c 73 65 7b 69 66 28 28 66 3e 31 32  =f}else{if((f>12
117d0 37 29 26 26 28 66 3c 32 30 34 38 29 29 7b 67 5b  7)&&(f<2048)){g[
117e0 2d 2d 68 5d 3d 28 66 26 36 33 29 7c 31 32 38 3b  --h]=(f&63)|128;
117f0 67 5b 2d 2d 68 5d 3d 28 66 3e 3e 36 29 7c 31 39  g[--h]=(f>>6)|19
11800 32 7d 65 6c 73 65 7b 67 5b 2d 2d 68 5d 3d 28 66  2}else{g[--h]=(f
11810 26 36 33 29 7c 31 32 38 3b 67 5b 2d 2d 68 5d 3d  &63)|128;g[--h]=
11820 28 28 66 3e 3e 36 29 26 36 33 29 7c 31 32 38 3b  ((f>>6)&63)|128;
11830 67 5b 2d 2d 68 5d 3d 28 66 3e 3e 31 32 29 7c 32  g[--h]=(f>>12)|2
11840 32 34 7d 7d 7d 67 5b 2d 2d 68 5d 3d 30 3b 76 61  24}}}g[--h]=0;va
11850 72 20 62 3d 6e 65 77 20 53 65 63 75 72 65 52 61  r b=new SecureRa
11860 6e 64 6f 6d 28 29 3b 76 61 72 20 61 3d 6e 65 77  ndom();var a=new
11870 20 41 72 72 61 79 28 29 3b 77 68 69 6c 65 28 68   Array();while(h
11880 3e 32 29 7b 61 5b 30 5d 3d 30 3b 77 68 69 6c 65  >2){a[0]=0;while
11890 28 61 5b 30 5d 3d 3d 30 29 7b 62 2e 6e 65 78 74  (a[0]==0){b.next
118a0 42 79 74 65 73 28 61 29 7d 67 5b 2d 2d 68 5d 3d  Bytes(a)}g[--h]=
118b0 61 5b 30 5d 7d 67 5b 2d 2d 68 5d 3d 32 3b 67 5b  a[0]}g[--h]=2;g[
118c0 2d 2d 68 5d 3d 30 3b 72 65 74 75 72 6e 20 6e 65  --h]=0;return ne
118d0 77 20 42 69 67 49 6e 74 65 67 65 72 28 67 29 7d  w BigInteger(g)}
118e0 66 75 6e 63 74 69 6f 6e 20 6f 61 65 70 5f 6d 67  function oaep_mg
118f0 66 31 5f 61 72 72 28 63 2c 61 2c 65 29 7b 76 61  f1_arr(c,a,e){va
11900 72 20 62 3d 22 22 2c 64 3d 30 3b 77 68 69 6c 65  r b="",d=0;while
11910 28 62 2e 6c 65 6e 67 74 68 3c 61 29 7b 62 2b 3d  (b.length<a){b+=
11920 65 28 53 74 72 69 6e 67 2e 66 72 6f 6d 43 68 61  e(String.fromCha
11930 72 43 6f 64 65 2e 61 70 70 6c 79 28 53 74 72 69  rCode.apply(Stri
11940 6e 67 2c 63 2e 63 6f 6e 63 61 74 28 5b 28 64 26  ng,c.concat([(d&
11950 34 32 37 38 31 39 30 30 38 30 29 3e 3e 32 34 2c  4278190080)>>24,
11960 28 64 26 31 36 37 31 31 36 38 30 29 3e 3e 31 36  (d&16711680)>>16
11970 2c 28 64 26 36 35 32 38 30 29 3e 3e 38 2c 64 26  ,(d&65280)>>8,d&
11980 32 35 35 5d 29 29 29 3b 64 2b 3d 31 7d 72 65 74  255])));d+=1}ret
11990 75 72 6e 20 62 7d 76 61 72 20 53 48 41 31 5f 53  urn b}var SHA1_S
119a0 49 5a 45 3d 32 30 3b 66 75 6e 63 74 69 6f 6e 20  IZE=20;function 
119b0 6f 61 65 70 5f 70 61 64 28 6c 2c 61 2c 63 29 7b  oaep_pad(l,a,c){
119c0 69 66 28 6c 2e 6c 65 6e 67 74 68 2b 32 2a 53 48  if(l.length+2*SH
119d0 41 31 5f 53 49 5a 45 2b 32 3e 61 29 7b 74 68 72  A1_SIZE+2>a){thr
119e0 6f 77 22 4d 65 73 73 61 67 65 20 74 6f 6f 20 6c  ow"Message too l
119f0 6f 6e 67 20 66 6f 72 20 52 53 41 22 7d 76 61 72  ong for RSA"}var
11a00 20 68 3d 22 22 2c 64 3b 66 6f 72 28 64 3d 30 3b   h="",d;for(d=0;
11a10 64 3c 61 2d 6c 2e 6c 65 6e 67 74 68 2d 32 2a 53  d<a-l.length-2*S
11a20 48 41 31 5f 53 49 5a 45 2d 32 3b 64 2b 3d 31 29  HA1_SIZE-2;d+=1)
11a30 7b 68 2b 3d 22 5c 78 30 30 22 7d 76 61 72 20 65  {h+="\x00"}var e
11a40 3d 72 73 74 72 5f 73 68 61 31 28 22 22 29 2b 68  =rstr_sha1("")+h
11a50 2b 22 5c 78 30 31 22 2b 6c 3b 76 61 72 20 66 3d  +"\x01"+l;var f=
11a60 6e 65 77 20 41 72 72 61 79 28 53 48 41 31 5f 53  new Array(SHA1_S
11a70 49 5a 45 29 3b 6e 65 77 20 53 65 63 75 72 65 52  IZE);new SecureR
11a80 61 6e 64 6f 6d 28 29 2e 6e 65 78 74 42 79 74 65  andom().nextByte
11a90 73 28 66 29 3b 76 61 72 20 67 3d 6f 61 65 70 5f  s(f);var g=oaep_
11aa0 6d 67 66 31 5f 61 72 72 28 66 2c 65 2e 6c 65 6e  mgf1_arr(f,e.len
11ab0 67 74 68 2c 63 7c 7c 72 73 74 72 5f 73 68 61 31  gth,c||rstr_sha1
11ac0 29 3b 76 61 72 20 6b 3d 5b 5d 3b 66 6f 72 28 64  );var k=[];for(d
11ad0 3d 30 3b 64 3c 65 2e 6c 65 6e 67 74 68 3b 64 2b  =0;d<e.length;d+
11ae0 3d 31 29 7b 6b 5b 64 5d 3d 65 2e 63 68 61 72 43  =1){k[d]=e.charC
11af0 6f 64 65 41 74 28 64 29 5e 67 2e 63 68 61 72 43  odeAt(d)^g.charC
11b00 6f 64 65 41 74 28 64 29 7d 76 61 72 20 6a 3d 6f  odeAt(d)}var j=o
11b10 61 65 70 5f 6d 67 66 31 5f 61 72 72 28 6b 2c 66  aep_mgf1_arr(k,f
11b20 2e 6c 65 6e 67 74 68 2c 72 73 74 72 5f 73 68 61  .length,rstr_sha
11b30 31 29 3b 76 61 72 20 62 3d 5b 30 5d 3b 66 6f 72  1);var b=[0];for
11b40 28 64 3d 30 3b 64 3c 66 2e 6c 65 6e 67 74 68 3b  (d=0;d<f.length;
11b50 64 2b 3d 31 29 7b 62 5b 64 2b 31 5d 3d 66 5b 64  d+=1){b[d+1]=f[d
11b60 5d 5e 6a 2e 63 68 61 72 43 6f 64 65 41 74 28 64  ]^j.charCodeAt(d
11b70 29 7d 72 65 74 75 72 6e 20 6e 65 77 20 42 69 67  )}return new Big
11b80 49 6e 74 65 67 65 72 28 62 2e 63 6f 6e 63 61 74  Integer(b.concat
11b90 28 6b 29 29 7d 66 75 6e 63 74 69 6f 6e 20 52 53  (k))}function RS
11ba0 41 4b 65 79 28 29 7b 74 68 69 73 2e 6e 3d 6e 75  AKey(){this.n=nu
11bb0 6c 6c 3b 74 68 69 73 2e 65 3d 30 3b 74 68 69 73  ll;this.e=0;this
11bc0 2e 64 3d 6e 75 6c 6c 3b 74 68 69 73 2e 70 3d 6e  .d=null;this.p=n
11bd0 75 6c 6c 3b 74 68 69 73 2e 71 3d 6e 75 6c 6c 3b  ull;this.q=null;
11be0 74 68 69 73 2e 64 6d 70 31 3d 6e 75 6c 6c 3b 74  this.dmp1=null;t
11bf0 68 69 73 2e 64 6d 71 31 3d 6e 75 6c 6c 3b 74 68  his.dmq1=null;th
11c00 69 73 2e 63 6f 65 66 66 3d 6e 75 6c 6c 7d 66 75  is.coeff=null}fu
11c10 6e 63 74 69 6f 6e 20 52 53 41 53 65 74 50 75 62  nction RSASetPub
11c20 6c 69 63 28 62 2c 61 29 7b 74 68 69 73 2e 69 73  lic(b,a){this.is
11c30 50 75 62 6c 69 63 3d 74 72 75 65 3b 69 66 28 74  Public=true;if(t
11c40 79 70 65 6f 66 20 62 21 3d 3d 22 73 74 72 69 6e  ypeof b!=="strin
11c50 67 22 29 7b 74 68 69 73 2e 6e 3d 62 3b 74 68 69  g"){this.n=b;thi
11c60 73 2e 65 3d 61 7d 65 6c 73 65 7b 69 66 28 62 21  s.e=a}else{if(b!
11c70 3d 6e 75 6c 6c 26 26 61 21 3d 6e 75 6c 6c 26 26  =null&&a!=null&&
11c80 62 2e 6c 65 6e 67 74 68 3e 30 26 26 61 2e 6c 65  b.length>0&&a.le
11c90 6e 67 74 68 3e 30 29 7b 74 68 69 73 2e 6e 3d 70  ngth>0){this.n=p
11ca0 61 72 73 65 42 69 67 49 6e 74 28 62 2c 31 36 29  arseBigInt(b,16)
11cb0 3b 74 68 69 73 2e 65 3d 70 61 72 73 65 49 6e 74  ;this.e=parseInt
11cc0 28 61 2c 31 36 29 7d 65 6c 73 65 7b 61 6c 65 72  (a,16)}else{aler
11cd0 74 28 22 49 6e 76 61 6c 69 64 20 52 53 41 20 70  t("Invalid RSA p
11ce0 75 62 6c 69 63 20 6b 65 79 22 29 7d 7d 7d 66 75  ublic key")}}}fu
11cf0 6e 63 74 69 6f 6e 20 52 53 41 44 6f 50 75 62 6c  nction RSADoPubl
11d00 69 63 28 61 29 7b 72 65 74 75 72 6e 20 61 2e 6d  ic(a){return a.m
11d10 6f 64 50 6f 77 49 6e 74 28 74 68 69 73 2e 65 2c  odPowInt(this.e,
11d20 74 68 69 73 2e 6e 29 7d 66 75 6e 63 74 69 6f 6e  this.n)}function
11d30 20 52 53 41 45 6e 63 72 79 70 74 28 64 29 7b 76   RSAEncrypt(d){v
11d40 61 72 20 61 3d 70 6b 63 73 31 70 61 64 32 28 64  ar a=pkcs1pad2(d
11d50 2c 28 74 68 69 73 2e 6e 2e 62 69 74 4c 65 6e 67  ,(this.n.bitLeng
11d60 74 68 28 29 2b 37 29 3e 3e 33 29 3b 69 66 28 61  th()+7)>>3);if(a
11d70 3d 3d 6e 75 6c 6c 29 7b 72 65 74 75 72 6e 20 6e  ==null){return n
11d80 75 6c 6c 7d 76 61 72 20 65 3d 74 68 69 73 2e 64  ull}var e=this.d
11d90 6f 50 75 62 6c 69 63 28 61 29 3b 69 66 28 65 3d  oPublic(a);if(e=
11da0 3d 6e 75 6c 6c 29 7b 72 65 74 75 72 6e 20 6e 75  =null){return nu
11db0 6c 6c 7d 76 61 72 20 62 3d 65 2e 74 6f 53 74 72  ll}var b=e.toStr
11dc0 69 6e 67 28 31 36 29 3b 69 66 28 28 62 2e 6c 65  ing(16);if((b.le
11dd0 6e 67 74 68 26 31 29 3d 3d 30 29 7b 72 65 74 75  ngth&1)==0){retu
11de0 72 6e 20 62 7d 65 6c 73 65 7b 72 65 74 75 72 6e  rn b}else{return
11df0 22 30 22 2b 62 7d 7d 66 75 6e 63 74 69 6f 6e 20  "0"+b}}function 
11e00 52 53 41 45 6e 63 72 79 70 74 4f 41 45 50 28 65  RSAEncryptOAEP(e
11e10 2c 64 29 7b 76 61 72 20 61 3d 6f 61 65 70 5f 70  ,d){var a=oaep_p
11e20 61 64 28 65 2c 28 74 68 69 73 2e 6e 2e 62 69 74  ad(e,(this.n.bit
11e30 4c 65 6e 67 74 68 28 29 2b 37 29 3e 3e 33 2c 64  Length()+7)>>3,d
11e40 29 3b 69 66 28 61 3d 3d 6e 75 6c 6c 29 7b 72 65  );if(a==null){re
11e50 74 75 72 6e 20 6e 75 6c 6c 7d 76 61 72 20 66 3d  turn null}var f=
11e60 74 68 69 73 2e 64 6f 50 75 62 6c 69 63 28 61 29  this.doPublic(a)
11e70 3b 69 66 28 66 3d 3d 6e 75 6c 6c 29 7b 72 65 74  ;if(f==null){ret
11e80 75 72 6e 20 6e 75 6c 6c 7d 76 61 72 20 62 3d 66  urn null}var b=f
11e90 2e 74 6f 53 74 72 69 6e 67 28 31 36 29 3b 69 66  .toString(16);if
11ea0 28 28 62 2e 6c 65 6e 67 74 68 26 31 29 3d 3d 30  ((b.length&1)==0
11eb0 29 7b 72 65 74 75 72 6e 20 62 7d 65 6c 73 65 7b  ){return b}else{
11ec0 72 65 74 75 72 6e 22 30 22 2b 62 7d 7d 52 53 41  return"0"+b}}RSA
11ed0 4b 65 79 2e 70 72 6f 74 6f 74 79 70 65 2e 64 6f  Key.prototype.do
11ee0 50 75 62 6c 69 63 3d 52 53 41 44 6f 50 75 62 6c  Public=RSADoPubl
11ef0 69 63 3b 52 53 41 4b 65 79 2e 70 72 6f 74 6f 74  ic;RSAKey.protot
11f00 79 70 65 2e 73 65 74 50 75 62 6c 69 63 3d 52 53  ype.setPublic=RS
11f10 41 53 65 74 50 75 62 6c 69 63 3b 52 53 41 4b 65  ASetPublic;RSAKe
11f20 79 2e 70 72 6f 74 6f 74 79 70 65 2e 65 6e 63 72  y.prototype.encr
11f30 79 70 74 3d 52 53 41 45 6e 63 72 79 70 74 3b 52  ypt=RSAEncrypt;R
11f40 53 41 4b 65 79 2e 70 72 6f 74 6f 74 79 70 65 2e  SAKey.prototype.
11f50 65 6e 63 72 79 70 74 4f 41 45 50 3d 52 53 41 45  encryptOAEP=RSAE
11f60 6e 63 72 79 70 74 4f 41 45 50 3b 52 53 41 4b 65  ncryptOAEP;RSAKe
11f70 79 2e 70 72 6f 74 6f 74 79 70 65 2e 74 79 70 65  y.prototype.type
11f80 3d 22 52 53 41 22 3b 0a 2f 2a 21 20 28 63 29 20  ="RSA";./*! (c) 
11f90 54 6f 6d 20 57 75 20 7c 20 68 74 74 70 3a 2f 2f  Tom Wu | http://
11fa0 77 77 77 2d 63 73 2d 73 74 75 64 65 6e 74 73 2e  www-cs-students.
11fb0 73 74 61 6e 66 6f 72 64 2e 65 64 75 2f 7e 74 6a  stanford.edu/~tj
11fc0 77 2f 6a 73 62 6e 2f 0a 20 2a 2f 0a 66 75 6e 63  w/jsbn/. */.func
11fd0 74 69 6f 6e 20 70 6b 63 73 31 75 6e 70 61 64 32  tion pkcs1unpad2
11fe0 28 67 2c 6a 29 7b 76 61 72 20 61 3d 67 2e 74 6f  (g,j){var a=g.to
11ff0 42 79 74 65 41 72 72 61 79 28 29 3b 76 61 72 20  ByteArray();var 
12000 66 3d 30 3b 77 68 69 6c 65 28 66 3c 61 2e 6c 65  f=0;while(f<a.le
12010 6e 67 74 68 26 26 61 5b 66 5d 3d 3d 30 29 7b 2b  ngth&&a[f]==0){+
12020 2b 66 7d 69 66 28 61 2e 6c 65 6e 67 74 68 2d 66  +f}if(a.length-f
12030 21 3d 6a 2d 31 7c 7c 61 5b 66 5d 21 3d 32 29 7b  !=j-1||a[f]!=2){
12040 72 65 74 75 72 6e 20 6e 75 6c 6c 7d 2b 2b 66 3b  return null}++f;
12050 77 68 69 6c 65 28 61 5b 66 5d 21 3d 30 29 7b 69  while(a[f]!=0){i
12060 66 28 2b 2b 66 3e 3d 61 2e 6c 65 6e 67 74 68 29  f(++f>=a.length)
12070 7b 72 65 74 75 72 6e 20 6e 75 6c 6c 7d 7d 76 61  {return null}}va
12080 72 20 65 3d 22 22 3b 77 68 69 6c 65 28 2b 2b 66  r e="";while(++f
12090 3c 61 2e 6c 65 6e 67 74 68 29 7b 76 61 72 20 68  <a.length){var h
120a0 3d 61 5b 66 5d 26 32 35 35 3b 69 66 28 68 3c 31  =a[f]&255;if(h<1
120b0 32 38 29 7b 65 2b 3d 53 74 72 69 6e 67 2e 66 72  28){e+=String.fr
120c0 6f 6d 43 68 61 72 43 6f 64 65 28 68 29 7d 65 6c  omCharCode(h)}el
120d0 73 65 7b 69 66 28 28 68 3e 31 39 31 29 26 26 28  se{if((h>191)&&(
120e0 68 3c 32 32 34 29 29 7b 65 2b 3d 53 74 72 69 6e  h<224)){e+=Strin
120f0 67 2e 66 72 6f 6d 43 68 61 72 43 6f 64 65 28 28  g.fromCharCode((
12100 28 68 26 33 31 29 3c 3c 36 29 7c 28 61 5b 66 2b  (h&31)<<6)|(a[f+
12110 31 5d 26 36 33 29 29 3b 2b 2b 66 7d 65 6c 73 65  1]&63));++f}else
12120 7b 65 2b 3d 53 74 72 69 6e 67 2e 66 72 6f 6d 43  {e+=String.fromC
12130 68 61 72 43 6f 64 65 28 28 28 68 26 31 35 29 3c  harCode(((h&15)<
12140 3c 31 32 29 7c 28 28 61 5b 66 2b 31 5d 26 36 33  <12)|((a[f+1]&63
12150 29 3c 3c 36 29 7c 28 61 5b 66 2b 32 5d 26 36 33  )<<6)|(a[f+2]&63
12160 29 29 3b 66 2b 3d 32 7d 7d 7d 72 65 74 75 72 6e  ));f+=2}}}return
12170 20 65 7d 66 75 6e 63 74 69 6f 6e 20 6f 61 65 70   e}function oaep
12180 5f 6d 67 66 31 5f 73 74 72 28 63 2c 61 2c 65 29  _mgf1_str(c,a,e)
12190 7b 76 61 72 20 62 3d 22 22 2c 64 3d 30 3b 77 68  {var b="",d=0;wh
121a0 69 6c 65 28 62 2e 6c 65 6e 67 74 68 3c 61 29 7b  ile(b.length<a){
121b0 62 2b 3d 65 28 63 2b 53 74 72 69 6e 67 2e 66 72  b+=e(c+String.fr
121c0 6f 6d 43 68 61 72 43 6f 64 65 2e 61 70 70 6c 79  omCharCode.apply
121d0 28 53 74 72 69 6e 67 2c 5b 28 64 26 34 32 37 38  (String,[(d&4278
121e0 31 39 30 30 38 30 29 3e 3e 32 34 2c 28 64 26 31  190080)>>24,(d&1
121f0 36 37 31 31 36 38 30 29 3e 3e 31 36 2c 28 64 26  6711680)>>16,(d&
12200 36 35 32 38 30 29 3e 3e 38 2c 64 26 32 35 35 5d  65280)>>8,d&255]
12210 29 29 3b 64 2b 3d 31 7d 72 65 74 75 72 6e 20 62  ));d+=1}return b
12220 7d 76 61 72 20 53 48 41 31 5f 53 49 5a 45 3d 32  }var SHA1_SIZE=2
12230 30 3b 66 75 6e 63 74 69 6f 6e 20 6f 61 65 70 5f  0;function oaep_
12240 75 6e 70 61 64 28 6c 2c 62 2c 65 29 7b 6c 3d 6c  unpad(l,b,e){l=l
12250 2e 74 6f 42 79 74 65 41 72 72 61 79 28 29 3b 76  .toByteArray();v
12260 61 72 20 66 3b 66 6f 72 28 66 3d 30 3b 66 3c 6c  ar f;for(f=0;f<l
12270 2e 6c 65 6e 67 74 68 3b 66 2b 3d 31 29 7b 6c 5b  .length;f+=1){l[
12280 66 5d 26 3d 32 35 35 7d 77 68 69 6c 65 28 6c 2e  f]&=255}while(l.
12290 6c 65 6e 67 74 68 3c 62 29 7b 6c 2e 75 6e 73 68  length<b){l.unsh
122a0 69 66 74 28 30 29 7d 6c 3d 53 74 72 69 6e 67 2e  ift(0)}l=String.
122b0 66 72 6f 6d 43 68 61 72 43 6f 64 65 2e 61 70 70  fromCharCode.app
122c0 6c 79 28 53 74 72 69 6e 67 2c 6c 29 3b 69 66 28  ly(String,l);if(
122d0 6c 2e 6c 65 6e 67 74 68 3c 32 2a 53 48 41 31 5f  l.length<2*SHA1_
122e0 53 49 5a 45 2b 32 29 7b 74 68 72 6f 77 22 43 69  SIZE+2){throw"Ci
122f0 70 68 65 72 20 74 6f 6f 20 73 68 6f 72 74 22 7d  pher too short"}
12300 76 61 72 20 63 3d 6c 2e 73 75 62 73 74 72 28 31  var c=l.substr(1
12310 2c 53 48 41 31 5f 53 49 5a 45 29 3b 76 61 72 20  ,SHA1_SIZE);var 
12320 6f 3d 6c 2e 73 75 62 73 74 72 28 53 48 41 31 5f  o=l.substr(SHA1_
12330 53 49 5a 45 2b 31 29 3b 76 61 72 20 6d 3d 6f 61  SIZE+1);var m=oa
12340 65 70 5f 6d 67 66 31 5f 73 74 72 28 6f 2c 53 48  ep_mgf1_str(o,SH
12350 41 31 5f 53 49 5a 45 2c 65 7c 7c 72 73 74 72 5f  A1_SIZE,e||rstr_
12360 73 68 61 31 29 3b 76 61 72 20 68 3d 5b 5d 2c 66  sha1);var h=[],f
12370 3b 66 6f 72 28 66 3d 30 3b 66 3c 63 2e 6c 65 6e  ;for(f=0;f<c.len
12380 67 74 68 3b 66 2b 3d 31 29 7b 68 5b 66 5d 3d 63  gth;f+=1){h[f]=c
12390 2e 63 68 61 72 43 6f 64 65 41 74 28 66 29 5e 6d  .charCodeAt(f)^m
123a0 2e 63 68 61 72 43 6f 64 65 41 74 28 66 29 7d 76  .charCodeAt(f)}v
123b0 61 72 20 6a 3d 6f 61 65 70 5f 6d 67 66 31 5f 73  ar j=oaep_mgf1_s
123c0 74 72 28 53 74 72 69 6e 67 2e 66 72 6f 6d 43 68  tr(String.fromCh
123d0 61 72 43 6f 64 65 2e 61 70 70 6c 79 28 53 74 72  arCode.apply(Str
123e0 69 6e 67 2c 68 29 2c 6c 2e 6c 65 6e 67 74 68 2d  ing,h),l.length-
123f0 53 48 41 31 5f 53 49 5a 45 2c 72 73 74 72 5f 73  SHA1_SIZE,rstr_s
12400 68 61 31 29 3b 76 61 72 20 67 3d 5b 5d 3b 66 6f  ha1);var g=[];fo
12410 72 28 66 3d 30 3b 66 3c 6f 2e 6c 65 6e 67 74 68  r(f=0;f<o.length
12420 3b 66 2b 3d 31 29 7b 67 5b 66 5d 3d 6f 2e 63 68  ;f+=1){g[f]=o.ch
12430 61 72 43 6f 64 65 41 74 28 66 29 5e 6a 2e 63 68  arCodeAt(f)^j.ch
12440 61 72 43 6f 64 65 41 74 28 66 29 7d 67 3d 53 74  arCodeAt(f)}g=St
12450 72 69 6e 67 2e 66 72 6f 6d 43 68 61 72 43 6f 64  ring.fromCharCod
12460 65 2e 61 70 70 6c 79 28 53 74 72 69 6e 67 2c 67  e.apply(String,g
12470 29 3b 69 66 28 67 2e 73 75 62 73 74 72 28 30 2c  );if(g.substr(0,
12480 53 48 41 31 5f 53 49 5a 45 29 21 3d 3d 72 73 74  SHA1_SIZE)!==rst
12490 72 5f 73 68 61 31 28 22 22 29 29 7b 74 68 72 6f  r_sha1("")){thro
124a0 77 22 48 61 73 68 20 6d 69 73 6d 61 74 63 68 22  w"Hash mismatch"
124b0 7d 67 3d 67 2e 73 75 62 73 74 72 28 53 48 41 31  }g=g.substr(SHA1
124c0 5f 53 49 5a 45 29 3b 76 61 72 20 61 3d 67 2e 69  _SIZE);var a=g.i
124d0 6e 64 65 78 4f 66 28 22 5c 78 30 31 22 29 3b 76  ndexOf("\x01");v
124e0 61 72 20 6b 3d 28 61 21 3d 2d 31 29 3f 67 2e 73  ar k=(a!=-1)?g.s
124f0 75 62 73 74 72 28 30 2c 61 29 2e 6c 61 73 74 49  ubstr(0,a).lastI
12500 6e 64 65 78 4f 66 28 22 5c 78 30 30 22 29 3a 2d  ndexOf("\x00"):-
12510 31 3b 69 66 28 6b 2b 31 21 3d 61 29 7b 74 68 72  1;if(k+1!=a){thr
12520 6f 77 22 4d 61 6c 66 6f 72 6d 65 64 20 64 61 74  ow"Malformed dat
12530 61 22 7d 72 65 74 75 72 6e 20 67 2e 73 75 62 73  a"}return g.subs
12540 74 72 28 61 2b 31 29 7d 66 75 6e 63 74 69 6f 6e  tr(a+1)}function
12550 20 52 53 41 53 65 74 50 72 69 76 61 74 65 28 63   RSASetPrivate(c
12560 2c 61 2c 62 29 7b 74 68 69 73 2e 69 73 50 72 69  ,a,b){this.isPri
12570 76 61 74 65 3d 74 72 75 65 3b 69 66 28 74 79 70  vate=true;if(typ
12580 65 6f 66 20 63 21 3d 3d 22 73 74 72 69 6e 67 22  eof c!=="string"
12590 29 7b 74 68 69 73 2e 6e 3d 63 3b 74 68 69 73 2e  ){this.n=c;this.
125a0 65 3d 61 3b 74 68 69 73 2e 64 3d 62 7d 65 6c 73  e=a;this.d=b}els
125b0 65 7b 69 66 28 63 21 3d 6e 75 6c 6c 26 26 61 21  e{if(c!=null&&a!
125c0 3d 6e 75 6c 6c 26 26 63 2e 6c 65 6e 67 74 68 3e  =null&&c.length>
125d0 30 26 26 61 2e 6c 65 6e 67 74 68 3e 30 29 7b 74  0&&a.length>0){t
125e0 68 69 73 2e 6e 3d 70 61 72 73 65 42 69 67 49 6e  his.n=parseBigIn
125f0 74 28 63 2c 31 36 29 3b 74 68 69 73 2e 65 3d 70  t(c,16);this.e=p
12600 61 72 73 65 49 6e 74 28 61 2c 31 36 29 3b 74 68  arseInt(a,16);th
12610 69 73 2e 64 3d 70 61 72 73 65 42 69 67 49 6e 74  is.d=parseBigInt
12620 28 62 2c 31 36 29 7d 65 6c 73 65 7b 61 6c 65 72  (b,16)}else{aler
12630 74 28 22 49 6e 76 61 6c 69 64 20 52 53 41 20 70  t("Invalid RSA p
12640 72 69 76 61 74 65 20 6b 65 79 22 29 7d 7d 7d 66  rivate key")}}}f
12650 75 6e 63 74 69 6f 6e 20 52 53 41 53 65 74 50 72  unction RSASetPr
12660 69 76 61 74 65 45 78 28 67 2c 64 2c 65 2c 63 2c  ivateEx(g,d,e,c,
12670 62 2c 61 2c 68 2c 66 29 7b 74 68 69 73 2e 69 73  b,a,h,f){this.is
12680 50 72 69 76 61 74 65 3d 74 72 75 65 3b 69 66 28  Private=true;if(
12690 67 3d 3d 6e 75 6c 6c 29 7b 74 68 72 6f 77 22 52  g==null){throw"R
126a0 53 41 53 65 74 50 72 69 76 61 74 65 45 78 20 4e  SASetPrivateEx N
126b0 20 3d 3d 20 6e 75 6c 6c 22 7d 69 66 28 64 3d 3d   == null"}if(d==
126c0 6e 75 6c 6c 29 7b 74 68 72 6f 77 22 52 53 41 53  null){throw"RSAS
126d0 65 74 50 72 69 76 61 74 65 45 78 20 45 20 3d 3d  etPrivateEx E ==
126e0 20 6e 75 6c 6c 22 7d 69 66 28 67 2e 6c 65 6e 67   null"}if(g.leng
126f0 74 68 3d 3d 30 29 7b 74 68 72 6f 77 22 52 53 41  th==0){throw"RSA
12700 53 65 74 50 72 69 76 61 74 65 45 78 20 4e 2e 6c  SetPrivateEx N.l
12710 65 6e 67 74 68 20 3d 3d 20 30 22 7d 69 66 28 64  ength == 0"}if(d
12720 2e 6c 65 6e 67 74 68 3d 3d 30 29 7b 74 68 72 6f  .length==0){thro
12730 77 22 52 53 41 53 65 74 50 72 69 76 61 74 65 45  w"RSASetPrivateE
12740 78 20 45 2e 6c 65 6e 67 74 68 20 3d 3d 20 30 22  x E.length == 0"
12750 7d 69 66 28 67 21 3d 6e 75 6c 6c 26 26 64 21 3d  }if(g!=null&&d!=
12760 6e 75 6c 6c 26 26 67 2e 6c 65 6e 67 74 68 3e 30  null&&g.length>0
12770 26 26 64 2e 6c 65 6e 67 74 68 3e 30 29 7b 74 68  &&d.length>0){th
12780 69 73 2e 6e 3d 70 61 72 73 65 42 69 67 49 6e 74  is.n=parseBigInt
12790 28 67 2c 31 36 29 3b 74 68 69 73 2e 65 3d 70 61  (g,16);this.e=pa
127a0 72 73 65 49 6e 74 28 64 2c 31 36 29 3b 74 68 69  rseInt(d,16);thi
127b0 73 2e 64 3d 70 61 72 73 65 42 69 67 49 6e 74 28  s.d=parseBigInt(
127c0 65 2c 31 36 29 3b 74 68 69 73 2e 70 3d 70 61 72  e,16);this.p=par
127d0 73 65 42 69 67 49 6e 74 28 63 2c 31 36 29 3b 74  seBigInt(c,16);t
127e0 68 69 73 2e 71 3d 70 61 72 73 65 42 69 67 49 6e  his.q=parseBigIn
127f0 74 28 62 2c 31 36 29 3b 74 68 69 73 2e 64 6d 70  t(b,16);this.dmp
12800 31 3d 70 61 72 73 65 42 69 67 49 6e 74 28 61 2c  1=parseBigInt(a,
12810 31 36 29 3b 74 68 69 73 2e 64 6d 71 31 3d 70 61  16);this.dmq1=pa
12820 72 73 65 42 69 67 49 6e 74 28 68 2c 31 36 29 3b  rseBigInt(h,16);
12830 74 68 69 73 2e 63 6f 65 66 66 3d 70 61 72 73 65  this.coeff=parse
12840 42 69 67 49 6e 74 28 66 2c 31 36 29 7d 65 6c 73  BigInt(f,16)}els
12850 65 7b 61 6c 65 72 74 28 22 49 6e 76 61 6c 69 64  e{alert("Invalid
12860 20 52 53 41 20 70 72 69 76 61 74 65 20 6b 65 79   RSA private key
12870 20 69 6e 20 52 53 41 53 65 74 50 72 69 76 61 74   in RSASetPrivat
12880 65 45 78 22 29 7d 7d 66 75 6e 63 74 69 6f 6e 20  eEx")}}function 
12890 52 53 41 47 65 6e 65 72 61 74 65 28 62 2c 69 29  RSAGenerate(b,i)
128a0 7b 76 61 72 20 61 3d 6e 65 77 20 53 65 63 75 72  {var a=new Secur
128b0 65 52 61 6e 64 6f 6d 28 29 3b 76 61 72 20 66 3d  eRandom();var f=
128c0 62 3e 3e 31 3b 74 68 69 73 2e 65 3d 70 61 72 73  b>>1;this.e=pars
128d0 65 49 6e 74 28 69 2c 31 36 29 3b 76 61 72 20 63  eInt(i,16);var c
128e0 3d 6e 65 77 20 42 69 67 49 6e 74 65 67 65 72 28  =new BigInteger(
128f0 69 2c 31 36 29 3b 66 6f 72 28 3b 3b 29 7b 66 6f  i,16);for(;;){fo
12900 72 28 3b 3b 29 7b 74 68 69 73 2e 70 3d 6e 65 77  r(;;){this.p=new
12910 20 42 69 67 49 6e 74 65 67 65 72 28 62 2d 66 2c   BigInteger(b-f,
12920 31 2c 61 29 3b 69 66 28 74 68 69 73 2e 70 2e 73  1,a);if(this.p.s
12930 75 62 74 72 61 63 74 28 42 69 67 49 6e 74 65 67  ubtract(BigInteg
12940 65 72 2e 4f 4e 45 29 2e 67 63 64 28 63 29 2e 63  er.ONE).gcd(c).c
12950 6f 6d 70 61 72 65 54 6f 28 42 69 67 49 6e 74 65  ompareTo(BigInte
12960 67 65 72 2e 4f 4e 45 29 3d 3d 30 26 26 74 68 69  ger.ONE)==0&&thi
12970 73 2e 70 2e 69 73 50 72 6f 62 61 62 6c 65 50 72  s.p.isProbablePr
12980 69 6d 65 28 31 30 29 29 7b 62 72 65 61 6b 7d 7d  ime(10)){break}}
12990 66 6f 72 28 3b 3b 29 7b 74 68 69 73 2e 71 3d 6e  for(;;){this.q=n
129a0 65 77 20 42 69 67 49 6e 74 65 67 65 72 28 66 2c  ew BigInteger(f,
129b0 31 2c 61 29 3b 69 66 28 74 68 69 73 2e 71 2e 73  1,a);if(this.q.s
129c0 75 62 74 72 61 63 74 28 42 69 67 49 6e 74 65 67  ubtract(BigInteg
129d0 65 72 2e 4f 4e 45 29 2e 67 63 64 28 63 29 2e 63  er.ONE).gcd(c).c
129e0 6f 6d 70 61 72 65 54 6f 28 42 69 67 49 6e 74 65  ompareTo(BigInte
129f0 67 65 72 2e 4f 4e 45 29 3d 3d 30 26 26 74 68 69  ger.ONE)==0&&thi
12a00 73 2e 71 2e 69 73 50 72 6f 62 61 62 6c 65 50 72  s.q.isProbablePr
12a10 69 6d 65 28 31 30 29 29 7b 62 72 65 61 6b 7d 7d  ime(10)){break}}
12a20 69 66 28 74 68 69 73 2e 70 2e 63 6f 6d 70 61 72  if(this.p.compar
12a30 65 54 6f 28 74 68 69 73 2e 71 29 3c 3d 30 29 7b  eTo(this.q)<=0){
12a40 76 61 72 20 68 3d 74 68 69 73 2e 70 3b 74 68 69  var h=this.p;thi
12a50 73 2e 70 3d 74 68 69 73 2e 71 3b 74 68 69 73 2e  s.p=this.q;this.
12a60 71 3d 68 7d 76 61 72 20 67 3d 74 68 69 73 2e 70  q=h}var g=this.p
12a70 2e 73 75 62 74 72 61 63 74 28 42 69 67 49 6e 74  .subtract(BigInt
12a80 65 67 65 72 2e 4f 4e 45 29 3b 76 61 72 20 64 3d  eger.ONE);var d=
12a90 74 68 69 73 2e 71 2e 73 75 62 74 72 61 63 74 28  this.q.subtract(
12aa0 42 69 67 49 6e 74 65 67 65 72 2e 4f 4e 45 29 3b  BigInteger.ONE);
12ab0 76 61 72 20 65 3d 67 2e 6d 75 6c 74 69 70 6c 79  var e=g.multiply
12ac0 28 64 29 3b 69 66 28 65 2e 67 63 64 28 63 29 2e  (d);if(e.gcd(c).
12ad0 63 6f 6d 70 61 72 65 54 6f 28 42 69 67 49 6e 74  compareTo(BigInt
12ae0 65 67 65 72 2e 4f 4e 45 29 3d 3d 30 29 7b 74 68  eger.ONE)==0){th
12af0 69 73 2e 6e 3d 74 68 69 73 2e 70 2e 6d 75 6c 74  is.n=this.p.mult
12b00 69 70 6c 79 28 74 68 69 73 2e 71 29 3b 74 68 69  iply(this.q);thi
12b10 73 2e 64 3d 63 2e 6d 6f 64 49 6e 76 65 72 73 65  s.d=c.modInverse
12b20 28 65 29 3b 74 68 69 73 2e 64 6d 70 31 3d 74 68  (e);this.dmp1=th
12b30 69 73 2e 64 2e 6d 6f 64 28 67 29 3b 74 68 69 73  is.d.mod(g);this
12b40 2e 64 6d 71 31 3d 74 68 69 73 2e 64 2e 6d 6f 64  .dmq1=this.d.mod
12b50 28 64 29 3b 74 68 69 73 2e 63 6f 65 66 66 3d 74  (d);this.coeff=t
12b60 68 69 73 2e 71 2e 6d 6f 64 49 6e 76 65 72 73 65  his.q.modInverse
12b70 28 74 68 69 73 2e 70 29 3b 62 72 65 61 6b 7d 7d  (this.p);break}}
12b80 7d 66 75 6e 63 74 69 6f 6e 20 52 53 41 44 6f 50  }function RSADoP
12b90 72 69 76 61 74 65 28 61 29 7b 69 66 28 74 68 69  rivate(a){if(thi
12ba0 73 2e 70 3d 3d 6e 75 6c 6c 7c 7c 74 68 69 73 2e  s.p==null||this.
12bb0 71 3d 3d 6e 75 6c 6c 29 7b 72 65 74 75 72 6e 20  q==null){return 
12bc0 61 2e 6d 6f 64 50 6f 77 28 74 68 69 73 2e 64 2c  a.modPow(this.d,
12bd0 74 68 69 73 2e 6e 29 7d 76 61 72 20 63 3d 61 2e  this.n)}var c=a.
12be0 6d 6f 64 28 74 68 69 73 2e 70 29 2e 6d 6f 64 50  mod(this.p).modP
12bf0 6f 77 28 74 68 69 73 2e 64 6d 70 31 2c 74 68 69  ow(this.dmp1,thi
12c00 73 2e 70 29 3b 76 61 72 20 62 3d 61 2e 6d 6f 64  s.p);var b=a.mod
12c10 28 74 68 69 73 2e 71 29 2e 6d 6f 64 50 6f 77 28  (this.q).modPow(
12c20 74 68 69 73 2e 64 6d 71 31 2c 74 68 69 73 2e 71  this.dmq1,this.q
12c30 29 3b 77 68 69 6c 65 28 63 2e 63 6f 6d 70 61 72  );while(c.compar
12c40 65 54 6f 28 62 29 3c 30 29 7b 63 3d 63 2e 61 64  eTo(b)<0){c=c.ad
12c50 64 28 74 68 69 73 2e 70 29 7d 72 65 74 75 72 6e  d(this.p)}return
12c60 20 63 2e 73 75 62 74 72 61 63 74 28 62 29 2e 6d   c.subtract(b).m
12c70 75 6c 74 69 70 6c 79 28 74 68 69 73 2e 63 6f 65  ultiply(this.coe
12c80 66 66 29 2e 6d 6f 64 28 74 68 69 73 2e 70 29 2e  ff).mod(this.p).
12c90 6d 75 6c 74 69 70 6c 79 28 74 68 69 73 2e 71 29  multiply(this.q)
12ca0 2e 61 64 64 28 62 29 7d 66 75 6e 63 74 69 6f 6e  .add(b)}function
12cb0 20 52 53 41 44 65 63 72 79 70 74 28 62 29 7b 76   RSADecrypt(b){v
12cc0 61 72 20 64 3d 70 61 72 73 65 42 69 67 49 6e 74  ar d=parseBigInt
12cd0 28 62 2c 31 36 29 3b 76 61 72 20 61 3d 74 68 69  (b,16);var a=thi
12ce0 73 2e 64 6f 50 72 69 76 61 74 65 28 64 29 3b 69  s.doPrivate(d);i
12cf0 66 28 61 3d 3d 6e 75 6c 6c 29 7b 72 65 74 75 72  f(a==null){retur
12d00 6e 20 6e 75 6c 6c 7d 72 65 74 75 72 6e 20 70 6b  n null}return pk
12d10 63 73 31 75 6e 70 61 64 32 28 61 2c 28 74 68 69  cs1unpad2(a,(thi
12d20 73 2e 6e 2e 62 69 74 4c 65 6e 67 74 68 28 29 2b  s.n.bitLength()+
12d30 37 29 3e 3e 33 29 7d 66 75 6e 63 74 69 6f 6e 20  7)>>3)}function 
12d40 52 53 41 44 65 63 72 79 70 74 4f 41 45 50 28 64  RSADecryptOAEP(d
12d50 2c 62 29 7b 76 61 72 20 65 3d 70 61 72 73 65 42  ,b){var e=parseB
12d60 69 67 49 6e 74 28 64 2c 31 36 29 3b 76 61 72 20  igInt(d,16);var 
12d70 61 3d 74 68 69 73 2e 64 6f 50 72 69 76 61 74 65  a=this.doPrivate
12d80 28 65 29 3b 69 66 28 61 3d 3d 6e 75 6c 6c 29 7b  (e);if(a==null){
12d90 72 65 74 75 72 6e 20 6e 75 6c 6c 7d 72 65 74 75  return null}retu
12da0 72 6e 20 6f 61 65 70 5f 75 6e 70 61 64 28 61 2c  rn oaep_unpad(a,
12db0 28 74 68 69 73 2e 6e 2e 62 69 74 4c 65 6e 67 74  (this.n.bitLengt
12dc0 68 28 29 2b 37 29 3e 3e 33 2c 62 29 7d 52 53 41  h()+7)>>3,b)}RSA
12dd0 4b 65 79 2e 70 72 6f 74 6f 74 79 70 65 2e 64 6f  Key.prototype.do
12de0 50 72 69 76 61 74 65 3d 52 53 41 44 6f 50 72 69  Private=RSADoPri
12df0 76 61 74 65 3b 52 53 41 4b 65 79 2e 70 72 6f 74  vate;RSAKey.prot
12e00 6f 74 79 70 65 2e 73 65 74 50 72 69 76 61 74 65  otype.setPrivate
12e10 3d 52 53 41 53 65 74 50 72 69 76 61 74 65 3b 52  =RSASetPrivate;R
12e20 53 41 4b 65 79 2e 70 72 6f 74 6f 74 79 70 65 2e  SAKey.prototype.
12e30 73 65 74 50 72 69 76 61 74 65 45 78 3d 52 53 41  setPrivateEx=RSA
12e40 53 65 74 50 72 69 76 61 74 65 45 78 3b 52 53 41  SetPrivateEx;RSA
12e50 4b 65 79 2e 70 72 6f 74 6f 74 79 70 65 2e 67 65  Key.prototype.ge
12e60 6e 65 72 61 74 65 3d 52 53 41 47 65 6e 65 72 61  nerate=RSAGenera
12e70 74 65 3b 52 53 41 4b 65 79 2e 70 72 6f 74 6f 74  te;RSAKey.protot
12e80 79 70 65 2e 64 65 63 72 79 70 74 3d 52 53 41 44  ype.decrypt=RSAD
12e90 65 63 72 79 70 74 3b 52 53 41 4b 65 79 2e 70 72  ecrypt;RSAKey.pr
12ea0 6f 74 6f 74 79 70 65 2e 64 65 63 72 79 70 74 4f  ototype.decryptO
12eb0 41 45 50 3d 52 53 41 44 65 63 72 79 70 74 4f 41  AEP=RSADecryptOA
12ec0 45 50 3b 0a 2f 2a 21 20 28 63 29 20 54 6f 6d 20  EP;./*! (c) Tom 
12ed0 57 75 20 7c 20 68 74 74 70 3a 2f 2f 77 77 77 2d  Wu | http://www-
12ee0 63 73 2d 73 74 75 64 65 6e 74 73 2e 73 74 61 6e  cs-students.stan
12ef0 66 6f 72 64 2e 65 64 75 2f 7e 74 6a 77 2f 6a 73  ford.edu/~tjw/js
12f00 62 6e 2f 0a 20 2a 2f 0a 66 75 6e 63 74 69 6f 6e  bn/. */.function
12f10 20 45 43 46 69 65 6c 64 45 6c 65 6d 65 6e 74 46   ECFieldElementF
12f20 70 28 62 2c 61 29 7b 74 68 69 73 2e 78 3d 61 3b  p(b,a){this.x=a;
12f30 74 68 69 73 2e 71 3d 62 7d 66 75 6e 63 74 69 6f  this.q=b}functio
12f40 6e 20 66 65 46 70 45 71 75 61 6c 73 28 61 29 7b  n feFpEquals(a){
12f50 69 66 28 61 3d 3d 74 68 69 73 29 7b 72 65 74 75  if(a==this){retu
12f60 72 6e 20 74 72 75 65 7d 72 65 74 75 72 6e 28 74  rn true}return(t
12f70 68 69 73 2e 71 2e 65 71 75 61 6c 73 28 61 2e 71  his.q.equals(a.q
12f80 29 26 26 74 68 69 73 2e 78 2e 65 71 75 61 6c 73  )&&this.x.equals
12f90 28 61 2e 78 29 29 7d 66 75 6e 63 74 69 6f 6e 20  (a.x))}function 
12fa0 66 65 46 70 54 6f 42 69 67 49 6e 74 65 67 65 72  feFpToBigInteger
12fb0 28 29 7b 72 65 74 75 72 6e 20 74 68 69 73 2e 78  (){return this.x
12fc0 7d 66 75 6e 63 74 69 6f 6e 20 66 65 46 70 4e 65  }function feFpNe
12fd0 67 61 74 65 28 29 7b 72 65 74 75 72 6e 20 6e 65  gate(){return ne
12fe0 77 20 45 43 46 69 65 6c 64 45 6c 65 6d 65 6e 74  w ECFieldElement
12ff0 46 70 28 74 68 69 73 2e 71 2c 74 68 69 73 2e 78  Fp(this.q,this.x
13000 2e 6e 65 67 61 74 65 28 29 2e 6d 6f 64 28 74 68  .negate().mod(th
13010 69 73 2e 71 29 29 7d 66 75 6e 63 74 69 6f 6e 20  is.q))}function 
13020 66 65 46 70 41 64 64 28 61 29 7b 72 65 74 75 72  feFpAdd(a){retur
13030 6e 20 6e 65 77 20 45 43 46 69 65 6c 64 45 6c 65  n new ECFieldEle
13040 6d 65 6e 74 46 70 28 74 68 69 73 2e 71 2c 74 68  mentFp(this.q,th
13050 69 73 2e 78 2e 61 64 64 28 61 2e 74 6f 42 69 67  is.x.add(a.toBig
13060 49 6e 74 65 67 65 72 28 29 29 2e 6d 6f 64 28 74  Integer()).mod(t
13070 68 69 73 2e 71 29 29 7d 66 75 6e 63 74 69 6f 6e  his.q))}function
13080 20 66 65 46 70 53 75 62 74 72 61 63 74 28 61 29   feFpSubtract(a)
13090 7b 72 65 74 75 72 6e 20 6e 65 77 20 45 43 46 69  {return new ECFi
130a0 65 6c 64 45 6c 65 6d 65 6e 74 46 70 28 74 68 69  eldElementFp(thi
130b0 73 2e 71 2c 74 68 69 73 2e 78 2e 73 75 62 74 72  s.q,this.x.subtr
130c0 61 63 74 28 61 2e 74 6f 42 69 67 49 6e 74 65 67  act(a.toBigInteg
130d0 65 72 28 29 29 2e 6d 6f 64 28 74 68 69 73 2e 71  er()).mod(this.q
130e0 29 29 7d 66 75 6e 63 74 69 6f 6e 20 66 65 46 70  ))}function feFp
130f0 4d 75 6c 74 69 70 6c 79 28 61 29 7b 72 65 74 75  Multiply(a){retu
13100 72 6e 20 6e 65 77 20 45 43 46 69 65 6c 64 45 6c  rn new ECFieldEl
13110 65 6d 65 6e 74 46 70 28 74 68 69 73 2e 71 2c 74  ementFp(this.q,t
13120 68 69 73 2e 78 2e 6d 75 6c 74 69 70 6c 79 28 61  his.x.multiply(a
13130 2e 74 6f 42 69 67 49 6e 74 65 67 65 72 28 29 29  .toBigInteger())
13140 2e 6d 6f 64 28 74 68 69 73 2e 71 29 29 7d 66 75  .mod(this.q))}fu
13150 6e 63 74 69 6f 6e 20 66 65 46 70 53 71 75 61 72  nction feFpSquar
13160 65 28 29 7b 72 65 74 75 72 6e 20 6e 65 77 20 45  e(){return new E
13170 43 46 69 65 6c 64 45 6c 65 6d 65 6e 74 46 70 28  CFieldElementFp(
13180 74 68 69 73 2e 71 2c 74 68 69 73 2e 78 2e 73 71  this.q,this.x.sq
13190 75 61 72 65 28 29 2e 6d 6f 64 28 74 68 69 73 2e  uare().mod(this.
131a0 71 29 29 7d 66 75 6e 63 74 69 6f 6e 20 66 65 46  q))}function feF
131b0 70 44 69 76 69 64 65 28 61 29 7b 72 65 74 75 72  pDivide(a){retur
131c0 6e 20 6e 65 77 20 45 43 46 69 65 6c 64 45 6c 65  n new ECFieldEle
131d0 6d 65 6e 74 46 70 28 74 68 69 73 2e 71 2c 74 68  mentFp(this.q,th
131e0 69 73 2e 78 2e 6d 75 6c 74 69 70 6c 79 28 61 2e  is.x.multiply(a.
131f0 74 6f 42 69 67 49 6e 74 65 67 65 72 28 29 2e 6d  toBigInteger().m
13200 6f 64 49 6e 76 65 72 73 65 28 74 68 69 73 2e 71  odInverse(this.q
13210 29 29 2e 6d 6f 64 28 74 68 69 73 2e 71 29 29 7d  )).mod(this.q))}
13220 45 43 46 69 65 6c 64 45 6c 65 6d 65 6e 74 46 70  ECFieldElementFp
13230 2e 70 72 6f 74 6f 74 79 70 65 2e 65 71 75 61 6c  .prototype.equal
13240 73 3d 66 65 46 70 45 71 75 61 6c 73 3b 45 43 46  s=feFpEquals;ECF
13250 69 65 6c 64 45 6c 65 6d 65 6e 74 46 70 2e 70 72  ieldElementFp.pr
13260 6f 74 6f 74 79 70 65 2e 74 6f 42 69 67 49 6e 74  ototype.toBigInt
13270 65 67 65 72 3d 66 65 46 70 54 6f 42 69 67 49 6e  eger=feFpToBigIn
13280 74 65 67 65 72 3b 45 43 46 69 65 6c 64 45 6c 65  teger;ECFieldEle
13290 6d 65 6e 74 46 70 2e 70 72 6f 74 6f 74 79 70 65  mentFp.prototype
132a0 2e 6e 65 67 61 74 65 3d 66 65 46 70 4e 65 67 61  .negate=feFpNega
132b0 74 65 3b 45 43 46 69 65 6c 64 45 6c 65 6d 65 6e  te;ECFieldElemen
132c0 74 46 70 2e 70 72 6f 74 6f 74 79 70 65 2e 61 64  tFp.prototype.ad
132d0 64 3d 66 65 46 70 41 64 64 3b 45 43 46 69 65 6c  d=feFpAdd;ECFiel
132e0 64 45 6c 65 6d 65 6e 74 46 70 2e 70 72 6f 74 6f  dElementFp.proto
132f0 74 79 70 65 2e 73 75 62 74 72 61 63 74 3d 66 65  type.subtract=fe
13300 46 70 53 75 62 74 72 61 63 74 3b 45 43 46 69 65  FpSubtract;ECFie
13310 6c 64 45 6c 65 6d 65 6e 74 46 70 2e 70 72 6f 74  ldElementFp.prot
13320 6f 74 79 70 65 2e 6d 75 6c 74 69 70 6c 79 3d 66  otype.multiply=f
13330 65 46 70 4d 75 6c 74 69 70 6c 79 3b 45 43 46 69  eFpMultiply;ECFi
13340 65 6c 64 45 6c 65 6d 65 6e 74 46 70 2e 70 72 6f  eldElementFp.pro
13350 74 6f 74 79 70 65 2e 73 71 75 61 72 65 3d 66 65  totype.square=fe
13360 46 70 53 71 75 61 72 65 3b 45 43 46 69 65 6c 64  FpSquare;ECField
13370 45 6c 65 6d 65 6e 74 46 70 2e 70 72 6f 74 6f 74  ElementFp.protot
13380 79 70 65 2e 64 69 76 69 64 65 3d 66 65 46 70 44  ype.divide=feFpD
13390 69 76 69 64 65 3b 66 75 6e 63 74 69 6f 6e 20 45  ivide;function E
133a0 43 50 6f 69 6e 74 46 70 28 63 2c 61 2c 64 2c 62  CPointFp(c,a,d,b
133b0 29 7b 74 68 69 73 2e 63 75 72 76 65 3d 63 3b 74  ){this.curve=c;t
133c0 68 69 73 2e 78 3d 61 3b 74 68 69 73 2e 79 3d 64  his.x=a;this.y=d
133d0 3b 69 66 28 62 3d 3d 6e 75 6c 6c 29 7b 74 68 69  ;if(b==null){thi
133e0 73 2e 7a 3d 42 69 67 49 6e 74 65 67 65 72 2e 4f  s.z=BigInteger.O
133f0 4e 45 7d 65 6c 73 65 7b 74 68 69 73 2e 7a 3d 62  NE}else{this.z=b
13400 7d 74 68 69 73 2e 7a 69 6e 76 3d 6e 75 6c 6c 7d  }this.zinv=null}
13410 66 75 6e 63 74 69 6f 6e 20 70 6f 69 6e 74 46 70  function pointFp
13420 47 65 74 58 28 29 7b 69 66 28 74 68 69 73 2e 7a  GetX(){if(this.z
13430 69 6e 76 3d 3d 6e 75 6c 6c 29 7b 74 68 69 73 2e  inv==null){this.
13440 7a 69 6e 76 3d 74 68 69 73 2e 7a 2e 6d 6f 64 49  zinv=this.z.modI
13450 6e 76 65 72 73 65 28 74 68 69 73 2e 63 75 72 76  nverse(this.curv
13460 65 2e 71 29 7d 72 65 74 75 72 6e 20 74 68 69 73  e.q)}return this
13470 2e 63 75 72 76 65 2e 66 72 6f 6d 42 69 67 49 6e  .curve.fromBigIn
13480 74 65 67 65 72 28 74 68 69 73 2e 78 2e 74 6f 42  teger(this.x.toB
13490 69 67 49 6e 74 65 67 65 72 28 29 2e 6d 75 6c 74  igInteger().mult
134a0 69 70 6c 79 28 74 68 69 73 2e 7a 69 6e 76 29 2e  iply(this.zinv).
134b0 6d 6f 64 28 74 68 69 73 2e 63 75 72 76 65 2e 71  mod(this.curve.q
134c0 29 29 7d 66 75 6e 63 74 69 6f 6e 20 70 6f 69 6e  ))}function poin
134d0 74 46 70 47 65 74 59 28 29 7b 69 66 28 74 68 69  tFpGetY(){if(thi
134e0 73 2e 7a 69 6e 76 3d 3d 6e 75 6c 6c 29 7b 74 68  s.zinv==null){th
134f0 69 73 2e 7a 69 6e 76 3d 74 68 69 73 2e 7a 2e 6d  is.zinv=this.z.m
13500 6f 64 49 6e 76 65 72 73 65 28 74 68 69 73 2e 63  odInverse(this.c
13510 75 72 76 65 2e 71 29 7d 72 65 74 75 72 6e 20 74  urve.q)}return t
13520 68 69 73 2e 63 75 72 76 65 2e 66 72 6f 6d 42 69  his.curve.fromBi
13530 67 49 6e 74 65 67 65 72 28 74 68 69 73 2e 79 2e  gInteger(this.y.
13540 74 6f 42 69 67 49 6e 74 65 67 65 72 28 29 2e 6d  toBigInteger().m
13550 75 6c 74 69 70 6c 79 28 74 68 69 73 2e 7a 69 6e  ultiply(this.zin
13560 76 29 2e 6d 6f 64 28 74 68 69 73 2e 63 75 72 76  v).mod(this.curv
13570 65 2e 71 29 29 7d 66 75 6e 63 74 69 6f 6e 20 70  e.q))}function p
13580 6f 69 6e 74 46 70 45 71 75 61 6c 73 28 61 29 7b  ointFpEquals(a){
13590 69 66 28 61 3d 3d 74 68 69 73 29 7b 72 65 74 75  if(a==this){retu
135a0 72 6e 20 74 72 75 65 7d 69 66 28 74 68 69 73 2e  rn true}if(this.
135b0 69 73 49 6e 66 69 6e 69 74 79 28 29 29 7b 72 65  isInfinity()){re
135c0 74 75 72 6e 20 61 2e 69 73 49 6e 66 69 6e 69 74  turn a.isInfinit
135d0 79 28 29 7d 69 66 28 61 2e 69 73 49 6e 66 69 6e  y()}if(a.isInfin
135e0 69 74 79 28 29 29 7b 72 65 74 75 72 6e 20 74 68  ity()){return th
135f0 69 73 2e 69 73 49 6e 66 69 6e 69 74 79 28 29 7d  is.isInfinity()}
13600 76 61 72 20 63 2c 62 3b 63 3d 61 2e 79 2e 74 6f  var c,b;c=a.y.to
13610 42 69 67 49 6e 74 65 67 65 72 28 29 2e 6d 75 6c  BigInteger().mul
13620 74 69 70 6c 79 28 74 68 69 73 2e 7a 29 2e 73 75  tiply(this.z).su
13630 62 74 72 61 63 74 28 74 68 69 73 2e 79 2e 74 6f  btract(this.y.to
13640 42 69 67 49 6e 74 65 67 65 72 28 29 2e 6d 75 6c  BigInteger().mul
13650 74 69 70 6c 79 28 61 2e 7a 29 29 2e 6d 6f 64 28  tiply(a.z)).mod(
13660 74 68 69 73 2e 63 75 72 76 65 2e 71 29 3b 69 66  this.curve.q);if
13670 28 21 63 2e 65 71 75 61 6c 73 28 42 69 67 49 6e  (!c.equals(BigIn
13680 74 65 67 65 72 2e 5a 45 52 4f 29 29 7b 72 65 74  teger.ZERO)){ret
13690 75 72 6e 20 66 61 6c 73 65 7d 62 3d 61 2e 78 2e  urn false}b=a.x.
136a0 74 6f 42 69 67 49 6e 74 65 67 65 72 28 29 2e 6d  toBigInteger().m
136b0 75 6c 74 69 70 6c 79 28 74 68 69 73 2e 7a 29 2e  ultiply(this.z).
136c0 73 75 62 74 72 61 63 74 28 74 68 69 73 2e 78 2e  subtract(this.x.
136d0 74 6f 42 69 67 49 6e 74 65 67 65 72 28 29 2e 6d  toBigInteger().m
136e0 75 6c 74 69 70 6c 79 28 61 2e 7a 29 29 2e 6d 6f  ultiply(a.z)).mo
136f0 64 28 74 68 69 73 2e 63 75 72 76 65 2e 71 29 3b  d(this.curve.q);
13700 72 65 74 75 72 6e 20 62 2e 65 71 75 61 6c 73 28  return b.equals(
13710 42 69 67 49 6e 74 65 67 65 72 2e 5a 45 52 4f 29  BigInteger.ZERO)
13720 7d 66 75 6e 63 74 69 6f 6e 20 70 6f 69 6e 74 46  }function pointF
13730 70 49 73 49 6e 66 69 6e 69 74 79 28 29 7b 69 66  pIsInfinity(){if
13740 28 28 74 68 69 73 2e 78 3d 3d 6e 75 6c 6c 29 26  ((this.x==null)&
13750 26 28 74 68 69 73 2e 79 3d 3d 6e 75 6c 6c 29 29  &(this.y==null))
13760 7b 72 65 74 75 72 6e 20 74 72 75 65 7d 72 65 74  {return true}ret
13770 75 72 6e 20 74 68 69 73 2e 7a 2e 65 71 75 61 6c  urn this.z.equal
13780 73 28 42 69 67 49 6e 74 65 67 65 72 2e 5a 45 52  s(BigInteger.ZER
13790 4f 29 26 26 21 74 68 69 73 2e 79 2e 74 6f 42 69  O)&&!this.y.toBi
137a0 67 49 6e 74 65 67 65 72 28 29 2e 65 71 75 61 6c  gInteger().equal
137b0 73 28 42 69 67 49 6e 74 65 67 65 72 2e 5a 45 52  s(BigInteger.ZER
137c0 4f 29 7d 66 75 6e 63 74 69 6f 6e 20 70 6f 69 6e  O)}function poin
137d0 74 46 70 4e 65 67 61 74 65 28 29 7b 72 65 74 75  tFpNegate(){retu
137e0 72 6e 20 6e 65 77 20 45 43 50 6f 69 6e 74 46 70  rn new ECPointFp
137f0 28 74 68 69 73 2e 63 75 72 76 65 2c 74 68 69 73  (this.curve,this
13800 2e 78 2c 74 68 69 73 2e 79 2e 6e 65 67 61 74 65  .x,this.y.negate
13810 28 29 2c 74 68 69 73 2e 7a 29 7d 66 75 6e 63 74  (),this.z)}funct
13820 69 6f 6e 20 70 6f 69 6e 74 46 70 41 64 64 28 6c  ion pointFpAdd(l
13830 29 7b 69 66 28 74 68 69 73 2e 69 73 49 6e 66 69  ){if(this.isInfi
13840 6e 69 74 79 28 29 29 7b 72 65 74 75 72 6e 20 6c  nity()){return l
13850 7d 69 66 28 6c 2e 69 73 49 6e 66 69 6e 69 74 79  }if(l.isInfinity
13860 28 29 29 7b 72 65 74 75 72 6e 20 74 68 69 73 7d  ()){return this}
13870 76 61 72 20 70 3d 6c 2e 79 2e 74 6f 42 69 67 49  var p=l.y.toBigI
13880 6e 74 65 67 65 72 28 29 2e 6d 75 6c 74 69 70 6c  nteger().multipl
13890 79 28 74 68 69 73 2e 7a 29 2e 73 75 62 74 72 61  y(this.z).subtra
138a0 63 74 28 74 68 69 73 2e 79 2e 74 6f 42 69 67 49  ct(this.y.toBigI
138b0 6e 74 65 67 65 72 28 29 2e 6d 75 6c 74 69 70 6c  nteger().multipl
138c0 79 28 6c 2e 7a 29 29 2e 6d 6f 64 28 74 68 69 73  y(l.z)).mod(this
138d0 2e 63 75 72 76 65 2e 71 29 3b 76 61 72 20 6f 3d  .curve.q);var o=
138e0 6c 2e 78 2e 74 6f 42 69 67 49 6e 74 65 67 65 72  l.x.toBigInteger
138f0 28 29 2e 6d 75 6c 74 69 70 6c 79 28 74 68 69 73  ().multiply(this
13900 2e 7a 29 2e 73 75 62 74 72 61 63 74 28 74 68 69  .z).subtract(thi
13910 73 2e 78 2e 74 6f 42 69 67 49 6e 74 65 67 65 72  s.x.toBigInteger
13920 28 29 2e 6d 75 6c 74 69 70 6c 79 28 6c 2e 7a 29  ().multiply(l.z)
13930 29 2e 6d 6f 64 28 74 68 69 73 2e 63 75 72 76 65  ).mod(this.curve
13940 2e 71 29 3b 69 66 28 42 69 67 49 6e 74 65 67 65  .q);if(BigIntege
13950 72 2e 5a 45 52 4f 2e 65 71 75 61 6c 73 28 6f 29  r.ZERO.equals(o)
13960 29 7b 69 66 28 42 69 67 49 6e 74 65 67 65 72 2e  ){if(BigInteger.
13970 5a 45 52 4f 2e 65 71 75 61 6c 73 28 70 29 29 7b  ZERO.equals(p)){
13980 72 65 74 75 72 6e 20 74 68 69 73 2e 74 77 69 63  return this.twic
13990 65 28 29 7d 72 65 74 75 72 6e 20 74 68 69 73 2e  e()}return this.
139a0 63 75 72 76 65 2e 67 65 74 49 6e 66 69 6e 69 74  curve.getInfinit
139b0 79 28 29 7d 76 61 72 20 6a 3d 6e 65 77 20 42 69  y()}var j=new Bi
139c0 67 49 6e 74 65 67 65 72 28 22 33 22 29 3b 76 61  gInteger("3");va
139d0 72 20 65 3d 74 68 69 73 2e 78 2e 74 6f 42 69 67  r e=this.x.toBig
139e0 49 6e 74 65 67 65 72 28 29 3b 76 61 72 20 6e 3d  Integer();var n=
139f0 74 68 69 73 2e 79 2e 74 6f 42 69 67 49 6e 74 65  this.y.toBigInte
13a00 67 65 72 28 29 3b 76 61 72 20 63 3d 6c 2e 78 2e  ger();var c=l.x.
13a10 74 6f 42 69 67 49 6e 74 65 67 65 72 28 29 3b 76  toBigInteger();v
13a20 61 72 20 6b 3d 6c 2e 79 2e 74 6f 42 69 67 49 6e  ar k=l.y.toBigIn
13a30 74 65 67 65 72 28 29 3b 76 61 72 20 6d 3d 6f 2e  teger();var m=o.
13a40 73 71 75 61 72 65 28 29 3b 76 61 72 20 69 3d 6d  square();var i=m
13a50 2e 6d 75 6c 74 69 70 6c 79 28 6f 29 3b 76 61 72  .multiply(o);var
13a60 20 64 3d 65 2e 6d 75 6c 74 69 70 6c 79 28 6d 29   d=e.multiply(m)
13a70 3b 76 61 72 20 67 3d 70 2e 73 71 75 61 72 65 28  ;var g=p.square(
13a80 29 2e 6d 75 6c 74 69 70 6c 79 28 74 68 69 73 2e  ).multiply(this.
13a90 7a 29 3b 76 61 72 20 61 3d 67 2e 73 75 62 74 72  z);var a=g.subtr
13aa0 61 63 74 28 64 2e 73 68 69 66 74 4c 65 66 74 28  act(d.shiftLeft(
13ab0 31 29 29 2e 6d 75 6c 74 69 70 6c 79 28 6c 2e 7a  1)).multiply(l.z
13ac0 29 2e 73 75 62 74 72 61 63 74 28 69 29 2e 6d 75  ).subtract(i).mu
13ad0 6c 74 69 70 6c 79 28 6f 29 2e 6d 6f 64 28 74 68  ltiply(o).mod(th
13ae0 69 73 2e 63 75 72 76 65 2e 71 29 3b 76 61 72 20  is.curve.q);var 
13af0 68 3d 64 2e 6d 75 6c 74 69 70 6c 79 28 6a 29 2e  h=d.multiply(j).
13b00 6d 75 6c 74 69 70 6c 79 28 70 29 2e 73 75 62 74  multiply(p).subt
13b10 72 61 63 74 28 6e 2e 6d 75 6c 74 69 70 6c 79 28  ract(n.multiply(
13b20 69 29 29 2e 73 75 62 74 72 61 63 74 28 67 2e 6d  i)).subtract(g.m
13b30 75 6c 74 69 70 6c 79 28 70 29 29 2e 6d 75 6c 74  ultiply(p)).mult
13b40 69 70 6c 79 28 6c 2e 7a 29 2e 61 64 64 28 70 2e  iply(l.z).add(p.
13b50 6d 75 6c 74 69 70 6c 79 28 69 29 29 2e 6d 6f 64  multiply(i)).mod
13b60 28 74 68 69 73 2e 63 75 72 76 65 2e 71 29 3b 76  (this.curve.q);v
13b70 61 72 20 66 3d 69 2e 6d 75 6c 74 69 70 6c 79 28  ar f=i.multiply(
13b80 74 68 69 73 2e 7a 29 2e 6d 75 6c 74 69 70 6c 79  this.z).multiply
13b90 28 6c 2e 7a 29 2e 6d 6f 64 28 74 68 69 73 2e 63  (l.z).mod(this.c
13ba0 75 72 76 65 2e 71 29 3b 72 65 74 75 72 6e 20 6e  urve.q);return n
13bb0 65 77 20 45 43 50 6f 69 6e 74 46 70 28 74 68 69  ew ECPointFp(thi
13bc0 73 2e 63 75 72 76 65 2c 74 68 69 73 2e 63 75 72  s.curve,this.cur
13bd0 76 65 2e 66 72 6f 6d 42 69 67 49 6e 74 65 67 65  ve.fromBigIntege
13be0 72 28 61 29 2c 74 68 69 73 2e 63 75 72 76 65 2e  r(a),this.curve.
13bf0 66 72 6f 6d 42 69 67 49 6e 74 65 67 65 72 28 68  fromBigInteger(h
13c00 29 2c 66 29 7d 66 75 6e 63 74 69 6f 6e 20 70 6f  ),f)}function po
13c10 69 6e 74 46 70 54 77 69 63 65 28 29 7b 69 66 28  intFpTwice(){if(
13c20 74 68 69 73 2e 69 73 49 6e 66 69 6e 69 74 79 28  this.isInfinity(
13c30 29 29 7b 72 65 74 75 72 6e 20 74 68 69 73 7d 69  )){return this}i
13c40 66 28 74 68 69 73 2e 79 2e 74 6f 42 69 67 49 6e  f(this.y.toBigIn
13c50 74 65 67 65 72 28 29 2e 73 69 67 6e 75 6d 28 29  teger().signum()
13c60 3d 3d 30 29 7b 72 65 74 75 72 6e 20 74 68 69 73  ==0){return this
13c70 2e 63 75 72 76 65 2e 67 65 74 49 6e 66 69 6e 69  .curve.getInfini
13c80 74 79 28 29 7d 76 61 72 20 67 3d 6e 65 77 20 42  ty()}var g=new B
13c90 69 67 49 6e 74 65 67 65 72 28 22 33 22 29 3b 76  igInteger("3");v
13ca0 61 72 20 63 3d 74 68 69 73 2e 78 2e 74 6f 42 69  ar c=this.x.toBi
13cb0 67 49 6e 74 65 67 65 72 28 29 3b 76 61 72 20 68  gInteger();var h
13cc0 3d 74 68 69 73 2e 79 2e 74 6f 42 69 67 49 6e 74  =this.y.toBigInt
13cd0 65 67 65 72 28 29 3b 76 61 72 20 65 3d 68 2e 6d  eger();var e=h.m
13ce0 75 6c 74 69 70 6c 79 28 74 68 69 73 2e 7a 29 3b  ultiply(this.z);
13cf0 76 61 72 20 6a 3d 65 2e 6d 75 6c 74 69 70 6c 79  var j=e.multiply
13d00 28 68 29 2e 6d 6f 64 28 74 68 69 73 2e 63 75 72  (h).mod(this.cur
13d10 76 65 2e 71 29 3b 76 61 72 20 69 3d 74 68 69 73  ve.q);var i=this
13d20 2e 63 75 72 76 65 2e 61 2e 74 6f 42 69 67 49 6e  .curve.a.toBigIn
13d30 74 65 67 65 72 28 29 3b 76 61 72 20 6b 3d 63 2e  teger();var k=c.
13d40 73 71 75 61 72 65 28 29 2e 6d 75 6c 74 69 70 6c  square().multipl
13d50 79 28 67 29 3b 69 66 28 21 42 69 67 49 6e 74 65  y(g);if(!BigInte
13d60 67 65 72 2e 5a 45 52 4f 2e 65 71 75 61 6c 73 28  ger.ZERO.equals(
13d70 69 29 29 7b 6b 3d 6b 2e 61 64 64 28 74 68 69 73  i)){k=k.add(this
13d80 2e 7a 2e 73 71 75 61 72 65 28 29 2e 6d 75 6c 74  .z.square().mult
13d90 69 70 6c 79 28 69 29 29 7d 6b 3d 6b 2e 6d 6f 64  iply(i))}k=k.mod
13da0 28 74 68 69 73 2e 63 75 72 76 65 2e 71 29 3b 76  (this.curve.q);v
13db0 61 72 20 62 3d 6b 2e 73 71 75 61 72 65 28 29 2e  ar b=k.square().
13dc0 73 75 62 74 72 61 63 74 28 63 2e 73 68 69 66 74  subtract(c.shift
13dd0 4c 65 66 74 28 33 29 2e 6d 75 6c 74 69 70 6c 79  Left(3).multiply
13de0 28 6a 29 29 2e 73 68 69 66 74 4c 65 66 74 28 31  (j)).shiftLeft(1
13df0 29 2e 6d 75 6c 74 69 70 6c 79 28 65 29 2e 6d 6f  ).multiply(e).mo
13e00 64 28 74 68 69 73 2e 63 75 72 76 65 2e 71 29 3b  d(this.curve.q);
13e10 76 61 72 20 66 3d 6b 2e 6d 75 6c 74 69 70 6c 79  var f=k.multiply
13e20 28 67 29 2e 6d 75 6c 74 69 70 6c 79 28 63 29 2e  (g).multiply(c).
13e30 73 75 62 74 72 61 63 74 28 6a 2e 73 68 69 66 74  subtract(j.shift
13e40 4c 65 66 74 28 31 29 29 2e 73 68 69 66 74 4c 65  Left(1)).shiftLe
13e50 66 74 28 32 29 2e 6d 75 6c 74 69 70 6c 79 28 6a  ft(2).multiply(j
13e60 29 2e 73 75 62 74 72 61 63 74 28 6b 2e 73 71 75  ).subtract(k.squ
13e70 61 72 65 28 29 2e 6d 75 6c 74 69 70 6c 79 28 6b  are().multiply(k
13e80 29 29 2e 6d 6f 64 28 74 68 69 73 2e 63 75 72 76  )).mod(this.curv
13e90 65 2e 71 29 3b 76 61 72 20 64 3d 65 2e 73 71 75  e.q);var d=e.squ
13ea0 61 72 65 28 29 2e 6d 75 6c 74 69 70 6c 79 28 65  are().multiply(e
13eb0 29 2e 73 68 69 66 74 4c 65 66 74 28 33 29 2e 6d  ).shiftLeft(3).m
13ec0 6f 64 28 74 68 69 73 2e 63 75 72 76 65 2e 71 29  od(this.curve.q)
13ed0 3b 72 65 74 75 72 6e 20 6e 65 77 20 45 43 50 6f  ;return new ECPo
13ee0 69 6e 74 46 70 28 74 68 69 73 2e 63 75 72 76 65  intFp(this.curve
13ef0 2c 74 68 69 73 2e 63 75 72 76 65 2e 66 72 6f 6d  ,this.curve.from
13f00 42 69 67 49 6e 74 65 67 65 72 28 62 29 2c 74 68  BigInteger(b),th
13f10 69 73 2e 63 75 72 76 65 2e 66 72 6f 6d 42 69 67  is.curve.fromBig
13f20 49 6e 74 65 67 65 72 28 66 29 2c 64 29 7d 66 75  Integer(f),d)}fu
13f30 6e 63 74 69 6f 6e 20 70 6f 69 6e 74 46 70 4d 75  nction pointFpMu
13f40 6c 74 69 70 6c 79 28 62 29 7b 69 66 28 74 68 69  ltiply(b){if(thi
13f50 73 2e 69 73 49 6e 66 69 6e 69 74 79 28 29 29 7b  s.isInfinity()){
13f60 72 65 74 75 72 6e 20 74 68 69 73 7d 69 66 28 62  return this}if(b
13f70 2e 73 69 67 6e 75 6d 28 29 3d 3d 30 29 7b 72 65  .signum()==0){re
13f80 74 75 72 6e 20 74 68 69 73 2e 63 75 72 76 65 2e  turn this.curve.
13f90 67 65 74 49 6e 66 69 6e 69 74 79 28 29 7d 76 61  getInfinity()}va
13fa0 72 20 67 3d 62 3b 76 61 72 20 66 3d 67 2e 6d 75  r g=b;var f=g.mu
13fb0 6c 74 69 70 6c 79 28 6e 65 77 20 42 69 67 49 6e  ltiply(new BigIn
13fc0 74 65 67 65 72 28 22 33 22 29 29 3b 76 61 72 20  teger("3"));var 
13fd0 6c 3d 74 68 69 73 2e 6e 65 67 61 74 65 28 29 3b  l=this.negate();
13fe0 76 61 72 20 64 3d 74 68 69 73 3b 76 61 72 20 63  var d=this;var c
13ff0 3b 66 6f 72 28 63 3d 66 2e 62 69 74 4c 65 6e 67  ;for(c=f.bitLeng
14000 74 68 28 29 2d 32 3b 63 3e 30 3b 2d 2d 63 29 7b  th()-2;c>0;--c){
14010 64 3d 64 2e 74 77 69 63 65 28 29 3b 76 61 72 20  d=d.twice();var 
14020 61 3d 66 2e 74 65 73 74 42 69 74 28 63 29 3b 76  a=f.testBit(c);v
14030 61 72 20 6a 3d 67 2e 74 65 73 74 42 69 74 28 63  ar j=g.testBit(c
14040 29 3b 69 66 28 61 21 3d 6a 29 7b 64 3d 64 2e 61  );if(a!=j){d=d.a
14050 64 64 28 61 3f 74 68 69 73 3a 6c 29 7d 7d 72 65  dd(a?this:l)}}re
14060 74 75 72 6e 20 64 7d 66 75 6e 63 74 69 6f 6e 20  turn d}function 
14070 70 6f 69 6e 74 46 70 4d 75 6c 74 69 70 6c 79 54  pointFpMultiplyT
14080 77 6f 28 63 2c 61 2c 62 29 7b 76 61 72 20 64 3b  wo(c,a,b){var d;
14090 69 66 28 63 2e 62 69 74 4c 65 6e 67 74 68 28 29  if(c.bitLength()
140a0 3e 62 2e 62 69 74 4c 65 6e 67 74 68 28 29 29 7b  >b.bitLength()){
140b0 64 3d 63 2e 62 69 74 4c 65 6e 67 74 68 28 29 2d  d=c.bitLength()-
140c0 31 7d 65 6c 73 65 7b 64 3d 62 2e 62 69 74 4c 65  1}else{d=b.bitLe
140d0 6e 67 74 68 28 29 2d 31 7d 76 61 72 20 66 3d 74  ngth()-1}var f=t
140e0 68 69 73 2e 63 75 72 76 65 2e 67 65 74 49 6e 66  his.curve.getInf
140f0 69 6e 69 74 79 28 29 3b 76 61 72 20 65 3d 74 68  inity();var e=th
14100 69 73 2e 61 64 64 28 61 29 3b 77 68 69 6c 65 28  is.add(a);while(
14110 64 3e 3d 30 29 7b 66 3d 66 2e 74 77 69 63 65 28  d>=0){f=f.twice(
14120 29 3b 69 66 28 63 2e 74 65 73 74 42 69 74 28 64  );if(c.testBit(d
14130 29 29 7b 69 66 28 62 2e 74 65 73 74 42 69 74 28  )){if(b.testBit(
14140 64 29 29 7b 66 3d 66 2e 61 64 64 28 65 29 7d 65  d)){f=f.add(e)}e
14150 6c 73 65 7b 66 3d 66 2e 61 64 64 28 74 68 69 73  lse{f=f.add(this
14160 29 7d 7d 65 6c 73 65 7b 69 66 28 62 2e 74 65 73  )}}else{if(b.tes
14170 74 42 69 74 28 64 29 29 7b 66 3d 66 2e 61 64 64  tBit(d)){f=f.add
14180 28 61 29 7d 7d 2d 2d 64 7d 72 65 74 75 72 6e 20  (a)}}--d}return 
14190 66 7d 45 43 50 6f 69 6e 74 46 70 2e 70 72 6f 74  f}ECPointFp.prot
141a0 6f 74 79 70 65 2e 67 65 74 58 3d 70 6f 69 6e 74  otype.getX=point
141b0 46 70 47 65 74 58 3b 45 43 50 6f 69 6e 74 46 70  FpGetX;ECPointFp
141c0 2e 70 72 6f 74 6f 74 79 70 65 2e 67 65 74 59 3d  .prototype.getY=
141d0 70 6f 69 6e 74 46 70 47 65 74 59 3b 45 43 50 6f  pointFpGetY;ECPo
141e0 69 6e 74 46 70 2e 70 72 6f 74 6f 74 79 70 65 2e  intFp.prototype.
141f0 65 71 75 61 6c 73 3d 70 6f 69 6e 74 46 70 45 71  equals=pointFpEq
14200 75 61 6c 73 3b 45 43 50 6f 69 6e 74 46 70 2e 70  uals;ECPointFp.p
14210 72 6f 74 6f 74 79 70 65 2e 69 73 49 6e 66 69 6e  rototype.isInfin
14220 69 74 79 3d 70 6f 69 6e 74 46 70 49 73 49 6e 66  ity=pointFpIsInf
14230 69 6e 69 74 79 3b 45 43 50 6f 69 6e 74 46 70 2e  inity;ECPointFp.
14240 70 72 6f 74 6f 74 79 70 65 2e 6e 65 67 61 74 65  prototype.negate
14250 3d 70 6f 69 6e 74 46 70 4e 65 67 61 74 65 3b 45  =pointFpNegate;E
14260 43 50 6f 69 6e 74 46 70 2e 70 72 6f 74 6f 74 79  CPointFp.prototy
14270 70 65 2e 61 64 64 3d 70 6f 69 6e 74 46 70 41 64  pe.add=pointFpAd
14280 64 3b 45 43 50 6f 69 6e 74 46 70 2e 70 72 6f 74  d;ECPointFp.prot
14290 6f 74 79 70 65 2e 74 77 69 63 65 3d 70 6f 69 6e  otype.twice=poin
142a0 74 46 70 54 77 69 63 65 3b 45 43 50 6f 69 6e 74  tFpTwice;ECPoint
142b0 46 70 2e 70 72 6f 74 6f 74 79 70 65 2e 6d 75 6c  Fp.prototype.mul
142c0 74 69 70 6c 79 3d 70 6f 69 6e 74 46 70 4d 75 6c  tiply=pointFpMul
142d0 74 69 70 6c 79 3b 45 43 50 6f 69 6e 74 46 70 2e  tiply;ECPointFp.
142e0 70 72 6f 74 6f 74 79 70 65 2e 6d 75 6c 74 69 70  prototype.multip
142f0 6c 79 54 77 6f 3d 70 6f 69 6e 74 46 70 4d 75 6c  lyTwo=pointFpMul
14300 74 69 70 6c 79 54 77 6f 3b 66 75 6e 63 74 69 6f  tiplyTwo;functio
14310 6e 20 45 43 43 75 72 76 65 46 70 28 65 2c 64 2c  n ECCurveFp(e,d,
14320 63 29 7b 74 68 69 73 2e 71 3d 65 3b 74 68 69 73  c){this.q=e;this
14330 2e 61 3d 74 68 69 73 2e 66 72 6f 6d 42 69 67 49  .a=this.fromBigI
14340 6e 74 65 67 65 72 28 64 29 3b 74 68 69 73 2e 62  nteger(d);this.b
14350 3d 74 68 69 73 2e 66 72 6f 6d 42 69 67 49 6e 74  =this.fromBigInt
14360 65 67 65 72 28 63 29 3b 74 68 69 73 2e 69 6e 66  eger(c);this.inf
14370 69 6e 69 74 79 3d 6e 65 77 20 45 43 50 6f 69 6e  inity=new ECPoin
14380 74 46 70 28 74 68 69 73 2c 6e 75 6c 6c 2c 6e 75  tFp(this,null,nu
14390 6c 6c 29 7d 66 75 6e 63 74 69 6f 6e 20 63 75 72  ll)}function cur
143a0 76 65 46 70 47 65 74 51 28 29 7b 72 65 74 75 72  veFpGetQ(){retur
143b0 6e 20 74 68 69 73 2e 71 7d 66 75 6e 63 74 69 6f  n this.q}functio
143c0 6e 20 63 75 72 76 65 46 70 47 65 74 41 28 29 7b  n curveFpGetA(){
143d0 72 65 74 75 72 6e 20 74 68 69 73 2e 61 7d 66 75  return this.a}fu
143e0 6e 63 74 69 6f 6e 20 63 75 72 76 65 46 70 47 65  nction curveFpGe
143f0 74 42 28 29 7b 72 65 74 75 72 6e 20 74 68 69 73  tB(){return this
14400 2e 62 7d 66 75 6e 63 74 69 6f 6e 20 63 75 72 76  .b}function curv
14410 65 46 70 45 71 75 61 6c 73 28 61 29 7b 69 66 28  eFpEquals(a){if(
14420 61 3d 3d 74 68 69 73 29 7b 72 65 74 75 72 6e 20  a==this){return 
14430 74 72 75 65 7d 72 65 74 75 72 6e 28 74 68 69 73  true}return(this
14440 2e 71 2e 65 71 75 61 6c 73 28 61 2e 71 29 26 26  .q.equals(a.q)&&
14450 74 68 69 73 2e 61 2e 65 71 75 61 6c 73 28 61 2e  this.a.equals(a.
14460 61 29 26 26 74 68 69 73 2e 62 2e 65 71 75 61 6c  a)&&this.b.equal
14470 73 28 61 2e 62 29 29 7d 66 75 6e 63 74 69 6f 6e  s(a.b))}function
14480 20 63 75 72 76 65 46 70 47 65 74 49 6e 66 69 6e   curveFpGetInfin
14490 69 74 79 28 29 7b 72 65 74 75 72 6e 20 74 68 69  ity(){return thi
144a0 73 2e 69 6e 66 69 6e 69 74 79 7d 66 75 6e 63 74  s.infinity}funct
144b0 69 6f 6e 20 63 75 72 76 65 46 70 46 72 6f 6d 42  ion curveFpFromB
144c0 69 67 49 6e 74 65 67 65 72 28 61 29 7b 72 65 74  igInteger(a){ret
144d0 75 72 6e 20 6e 65 77 20 45 43 46 69 65 6c 64 45  urn new ECFieldE
144e0 6c 65 6d 65 6e 74 46 70 28 74 68 69 73 2e 71 2c  lementFp(this.q,
144f0 61 29 7d 66 75 6e 63 74 69 6f 6e 20 63 75 72 76  a)}function curv
14500 65 46 70 44 65 63 6f 64 65 50 6f 69 6e 74 48 65  eFpDecodePointHe
14510 78 28 64 29 7b 73 77 69 74 63 68 28 70 61 72 73  x(d){switch(pars
14520 65 49 6e 74 28 64 2e 73 75 62 73 74 72 28 30 2c  eInt(d.substr(0,
14530 32 29 2c 31 36 29 29 7b 63 61 73 65 20 30 3a 72  2),16)){case 0:r
14540 65 74 75 72 6e 20 74 68 69 73 2e 69 6e 66 69 6e  eturn this.infin
14550 69 74 79 3b 63 61 73 65 20 32 3a 63 61 73 65 20  ity;case 2:case 
14560 33 3a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 63 61  3:return null;ca
14570 73 65 20 34 3a 63 61 73 65 20 36 3a 63 61 73 65  se 4:case 6:case
14580 20 37 3a 76 61 72 20 61 3d 28 64 2e 6c 65 6e 67   7:var a=(d.leng
14590 74 68 2d 32 29 2f 32 3b 76 61 72 20 63 3d 64 2e  th-2)/2;var c=d.
145a0 73 75 62 73 74 72 28 32 2c 61 29 3b 76 61 72 20  substr(2,a);var 
145b0 62 3d 64 2e 73 75 62 73 74 72 28 61 2b 32 2c 61  b=d.substr(a+2,a
145c0 29 3b 72 65 74 75 72 6e 20 6e 65 77 20 45 43 50  );return new ECP
145d0 6f 69 6e 74 46 70 28 74 68 69 73 2c 74 68 69 73  ointFp(this,this
145e0 2e 66 72 6f 6d 42 69 67 49 6e 74 65 67 65 72 28  .fromBigInteger(
145f0 6e 65 77 20 42 69 67 49 6e 74 65 67 65 72 28 63  new BigInteger(c
14600 2c 31 36 29 29 2c 74 68 69 73 2e 66 72 6f 6d 42  ,16)),this.fromB
14610 69 67 49 6e 74 65 67 65 72 28 6e 65 77 20 42 69  igInteger(new Bi
14620 67 49 6e 74 65 67 65 72 28 62 2c 31 36 29 29 29  gInteger(b,16)))
14630 3b 64 65 66 61 75 6c 74 3a 72 65 74 75 72 6e 20  ;default:return 
14640 6e 75 6c 6c 7d 7d 45 43 43 75 72 76 65 46 70 2e  null}}ECCurveFp.
14650 70 72 6f 74 6f 74 79 70 65 2e 67 65 74 51 3d 63  prototype.getQ=c
14660 75 72 76 65 46 70 47 65 74 51 3b 45 43 43 75 72  urveFpGetQ;ECCur
14670 76 65 46 70 2e 70 72 6f 74 6f 74 79 70 65 2e 67  veFp.prototype.g
14680 65 74 41 3d 63 75 72 76 65 46 70 47 65 74 41 3b  etA=curveFpGetA;
14690 45 43 43 75 72 76 65 46 70 2e 70 72 6f 74 6f 74  ECCurveFp.protot
146a0 79 70 65 2e 67 65 74 42 3d 63 75 72 76 65 46 70  ype.getB=curveFp
146b0 47 65 74 42 3b 45 43 43 75 72 76 65 46 70 2e 70  GetB;ECCurveFp.p
146c0 72 6f 74 6f 74 79 70 65 2e 65 71 75 61 6c 73 3d  rototype.equals=
146d0 63 75 72 76 65 46 70 45 71 75 61 6c 73 3b 45 43  curveFpEquals;EC
146e0 43 75 72 76 65 46 70 2e 70 72 6f 74 6f 74 79 70  CurveFp.prototyp
146f0 65 2e 67 65 74 49 6e 66 69 6e 69 74 79 3d 63 75  e.getInfinity=cu
14700 72 76 65 46 70 47 65 74 49 6e 66 69 6e 69 74 79  rveFpGetInfinity
14710 3b 45 43 43 75 72 76 65 46 70 2e 70 72 6f 74 6f  ;ECCurveFp.proto
14720 74 79 70 65 2e 66 72 6f 6d 42 69 67 49 6e 74 65  type.fromBigInte
14730 67 65 72 3d 63 75 72 76 65 46 70 46 72 6f 6d 42  ger=curveFpFromB
14740 69 67 49 6e 74 65 67 65 72 3b 45 43 43 75 72 76  igInteger;ECCurv
14750 65 46 70 2e 70 72 6f 74 6f 74 79 70 65 2e 64 65  eFp.prototype.de
14760 63 6f 64 65 50 6f 69 6e 74 48 65 78 3d 63 75 72  codePointHex=cur
14770 76 65 46 70 44 65 63 6f 64 65 50 6f 69 6e 74 48  veFpDecodePointH
14780 65 78 3b 0a 2f 2a 21 20 28 63 29 20 53 74 65 66  ex;./*! (c) Stef
14790 61 6e 20 54 68 6f 6d 61 73 20 7c 20 68 74 74 70  an Thomas | http
147a0 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 62  s://github.com/b
147b0 69 74 63 6f 69 6e 6a 73 2f 62 69 74 63 6f 69 6e  itcoinjs/bitcoin
147c0 6a 73 2d 6c 69 62 0a 20 2a 2f 0a 45 43 46 69 65  js-lib. */.ECFie
147d0 6c 64 45 6c 65 6d 65 6e 74 46 70 2e 70 72 6f 74  ldElementFp.prot
147e0 6f 74 79 70 65 2e 67 65 74 42 79 74 65 4c 65 6e  otype.getByteLen
147f0 67 74 68 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 72  gth=function(){r
14800 65 74 75 72 6e 20 4d 61 74 68 2e 66 6c 6f 6f 72  eturn Math.floor
14810 28 28 74 68 69 73 2e 74 6f 42 69 67 49 6e 74 65  ((this.toBigInte
14820 67 65 72 28 29 2e 62 69 74 4c 65 6e 67 74 68 28  ger().bitLength(
14830 29 2b 37 29 2f 38 29 7d 3b 45 43 50 6f 69 6e 74  )+7)/8)};ECPoint
14840 46 70 2e 70 72 6f 74 6f 74 79 70 65 2e 67 65 74  Fp.prototype.get
14850 45 6e 63 6f 64 65 64 3d 66 75 6e 63 74 69 6f 6e  Encoded=function
14860 28 63 29 7b 76 61 72 20 64 3d 66 75 6e 63 74 69  (c){var d=functi
14870 6f 6e 28 68 2c 66 29 7b 76 61 72 20 67 3d 68 2e  on(h,f){var g=h.
14880 74 6f 42 79 74 65 41 72 72 61 79 55 6e 73 69 67  toByteArrayUnsig
14890 6e 65 64 28 29 3b 69 66 28 66 3c 67 2e 6c 65 6e  ned();if(f<g.len
148a0 67 74 68 29 7b 67 3d 67 2e 73 6c 69 63 65 28 67  gth){g=g.slice(g
148b0 2e 6c 65 6e 67 74 68 2d 66 29 7d 65 6c 73 65 7b  .length-f)}else{
148c0 77 68 69 6c 65 28 66 3e 67 2e 6c 65 6e 67 74 68  while(f>g.length
148d0 29 7b 67 2e 75 6e 73 68 69 66 74 28 30 29 7d 7d  ){g.unshift(0)}}
148e0 72 65 74 75 72 6e 20 67 7d 3b 76 61 72 20 61 3d  return g};var a=
148f0 74 68 69 73 2e 67 65 74 58 28 29 2e 74 6f 42 69  this.getX().toBi
14900 67 49 6e 74 65 67 65 72 28 29 3b 76 61 72 20 65  gInteger();var e
14910 3d 74 68 69 73 2e 67 65 74 59 28 29 2e 74 6f 42  =this.getY().toB
14920 69 67 49 6e 74 65 67 65 72 28 29 3b 76 61 72 20  igInteger();var 
14930 62 3d 64 28 61 2c 33 32 29 3b 69 66 28 63 29 7b  b=d(a,32);if(c){
14940 69 66 28 65 2e 69 73 45 76 65 6e 28 29 29 7b 62  if(e.isEven()){b
14950 2e 75 6e 73 68 69 66 74 28 32 29 7d 65 6c 73 65  .unshift(2)}else
14960 7b 62 2e 75 6e 73 68 69 66 74 28 33 29 7d 7d 65  {b.unshift(3)}}e
14970 6c 73 65 7b 62 2e 75 6e 73 68 69 66 74 28 34 29  lse{b.unshift(4)
14980 3b 62 3d 62 2e 63 6f 6e 63 61 74 28 64 28 65 2c  ;b=b.concat(d(e,
14990 33 32 29 29 7d 72 65 74 75 72 6e 20 62 7d 3b 45  32))}return b};E
149a0 43 50 6f 69 6e 74 46 70 2e 64 65 63 6f 64 65 46  CPointFp.decodeF
149b0 72 6f 6d 3d 66 75 6e 63 74 69 6f 6e 28 67 2c 63  rom=function(g,c
149c0 29 7b 76 61 72 20 66 3d 63 5b 30 5d 3b 76 61 72  ){var f=c[0];var
149d0 20 65 3d 63 2e 6c 65 6e 67 74 68 2d 31 3b 76 61   e=c.length-1;va
149e0 72 20 64 3d 63 2e 73 6c 69 63 65 28 31 2c 31 2b  r d=c.slice(1,1+
149f0 65 2f 32 29 3b 76 61 72 20 62 3d 63 2e 73 6c 69  e/2);var b=c.sli
14a00 63 65 28 31 2b 65 2f 32 2c 31 2b 65 29 3b 64 2e  ce(1+e/2,1+e);d.
14a10 75 6e 73 68 69 66 74 28 30 29 3b 62 2e 75 6e 73  unshift(0);b.uns
14a20 68 69 66 74 28 30 29 3b 76 61 72 20 61 3d 6e 65  hift(0);var a=ne
14a30 77 20 42 69 67 49 6e 74 65 67 65 72 28 64 29 3b  w BigInteger(d);
14a40 76 61 72 20 68 3d 6e 65 77 20 42 69 67 49 6e 74  var h=new BigInt
14a50 65 67 65 72 28 62 29 3b 72 65 74 75 72 6e 20 6e  eger(b);return n
14a60 65 77 20 45 43 50 6f 69 6e 74 46 70 28 67 2c 67  ew ECPointFp(g,g
14a70 2e 66 72 6f 6d 42 69 67 49 6e 74 65 67 65 72 28  .fromBigInteger(
14a80 61 29 2c 67 2e 66 72 6f 6d 42 69 67 49 6e 74 65  a),g.fromBigInte
14a90 67 65 72 28 68 29 29 7d 3b 45 43 50 6f 69 6e 74  ger(h))};ECPoint
14aa0 46 70 2e 64 65 63 6f 64 65 46 72 6f 6d 48 65 78  Fp.decodeFromHex
14ab0 3d 66 75 6e 63 74 69 6f 6e 28 67 2c 63 29 7b 76  =function(g,c){v
14ac0 61 72 20 66 3d 63 2e 73 75 62 73 74 72 28 30 2c  ar f=c.substr(0,
14ad0 32 29 3b 76 61 72 20 65 3d 63 2e 6c 65 6e 67 74  2);var e=c.lengt
14ae0 68 2d 32 3b 76 61 72 20 64 3d 63 2e 73 75 62 73  h-2;var d=c.subs
14af0 74 72 28 32 2c 65 2f 32 29 3b 76 61 72 20 62 3d  tr(2,e/2);var b=
14b00 63 2e 73 75 62 73 74 72 28 32 2b 65 2f 32 2c 65  c.substr(2+e/2,e
14b10 2f 32 29 3b 76 61 72 20 61 3d 6e 65 77 20 42 69  /2);var a=new Bi
14b20 67 49 6e 74 65 67 65 72 28 64 2c 31 36 29 3b 76  gInteger(d,16);v
14b30 61 72 20 68 3d 6e 65 77 20 42 69 67 49 6e 74 65  ar h=new BigInte
14b40 67 65 72 28 62 2c 31 36 29 3b 72 65 74 75 72 6e  ger(b,16);return
14b50 20 6e 65 77 20 45 43 50 6f 69 6e 74 46 70 28 67   new ECPointFp(g
14b60 2c 67 2e 66 72 6f 6d 42 69 67 49 6e 74 65 67 65  ,g.fromBigIntege
14b70 72 28 61 29 2c 67 2e 66 72 6f 6d 42 69 67 49 6e  r(a),g.fromBigIn
14b80 74 65 67 65 72 28 68 29 29 7d 3b 45 43 50 6f 69  teger(h))};ECPoi
14b90 6e 74 46 70 2e 70 72 6f 74 6f 74 79 70 65 2e 61  ntFp.prototype.a
14ba0 64 64 32 44 3d 66 75 6e 63 74 69 6f 6e 28 63 29  dd2D=function(c)
14bb0 7b 69 66 28 74 68 69 73 2e 69 73 49 6e 66 69 6e  {if(this.isInfin
14bc0 69 74 79 28 29 29 7b 72 65 74 75 72 6e 20 63 7d  ity()){return c}
14bd0 69 66 28 63 2e 69 73 49 6e 66 69 6e 69 74 79 28  if(c.isInfinity(
14be0 29 29 7b 72 65 74 75 72 6e 20 74 68 69 73 7d 69  )){return this}i
14bf0 66 28 74 68 69 73 2e 78 2e 65 71 75 61 6c 73 28  f(this.x.equals(
14c00 63 2e 78 29 29 7b 69 66 28 74 68 69 73 2e 79 2e  c.x)){if(this.y.
14c10 65 71 75 61 6c 73 28 63 2e 79 29 29 7b 72 65 74  equals(c.y)){ret
14c20 75 72 6e 20 74 68 69 73 2e 74 77 69 63 65 28 29  urn this.twice()
14c30 7d 72 65 74 75 72 6e 20 74 68 69 73 2e 63 75 72  }return this.cur
14c40 76 65 2e 67 65 74 49 6e 66 69 6e 69 74 79 28 29  ve.getInfinity()
14c50 7d 76 61 72 20 67 3d 63 2e 78 2e 73 75 62 74 72  }var g=c.x.subtr
14c60 61 63 74 28 74 68 69 73 2e 78 29 3b 76 61 72 20  act(this.x);var 
14c70 65 3d 63 2e 79 2e 73 75 62 74 72 61 63 74 28 74  e=c.y.subtract(t
14c80 68 69 73 2e 79 29 3b 76 61 72 20 61 3d 65 2e 64  his.y);var a=e.d
14c90 69 76 69 64 65 28 67 29 3b 76 61 72 20 64 3d 61  ivide(g);var d=a
14ca0 2e 73 71 75 61 72 65 28 29 2e 73 75 62 74 72 61  .square().subtra
14cb0 63 74 28 74 68 69 73 2e 78 29 2e 73 75 62 74 72  ct(this.x).subtr
14cc0 61 63 74 28 63 2e 78 29 3b 76 61 72 20 66 3d 61  act(c.x);var f=a
14cd0 2e 6d 75 6c 74 69 70 6c 79 28 74 68 69 73 2e 78  .multiply(this.x
14ce0 2e 73 75 62 74 72 61 63 74 28 64 29 29 2e 73 75  .subtract(d)).su
14cf0 62 74 72 61 63 74 28 74 68 69 73 2e 79 29 3b 72  btract(this.y);r
14d00 65 74 75 72 6e 20 6e 65 77 20 45 43 50 6f 69 6e  eturn new ECPoin
14d10 74 46 70 28 74 68 69 73 2e 63 75 72 76 65 2c 64  tFp(this.curve,d
14d20 2c 66 29 7d 3b 45 43 50 6f 69 6e 74 46 70 2e 70  ,f)};ECPointFp.p
14d30 72 6f 74 6f 74 79 70 65 2e 74 77 69 63 65 32 44  rototype.twice2D
14d40 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 69 66 28 74  =function(){if(t
14d50 68 69 73 2e 69 73 49 6e 66 69 6e 69 74 79 28 29  his.isInfinity()
14d60 29 7b 72 65 74 75 72 6e 20 74 68 69 73 7d 69 66  ){return this}if
14d70 28 74 68 69 73 2e 79 2e 74 6f 42 69 67 49 6e 74  (this.y.toBigInt
14d80 65 67 65 72 28 29 2e 73 69 67 6e 75 6d 28 29 3d  eger().signum()=
14d90 3d 30 29 7b 72 65 74 75 72 6e 20 74 68 69 73 2e  =0){return this.
14da0 63 75 72 76 65 2e 67 65 74 49 6e 66 69 6e 69 74  curve.getInfinit
14db0 79 28 29 7d 76 61 72 20 62 3d 74 68 69 73 2e 63  y()}var b=this.c
14dc0 75 72 76 65 2e 66 72 6f 6d 42 69 67 49 6e 74 65  urve.fromBigInte
14dd0 67 65 72 28 42 69 67 49 6e 74 65 67 65 72 2e 76  ger(BigInteger.v
14de0 61 6c 75 65 4f 66 28 32 29 29 3b 76 61 72 20 65  alueOf(2));var e
14df0 3d 74 68 69 73 2e 63 75 72 76 65 2e 66 72 6f 6d  =this.curve.from
14e00 42 69 67 49 6e 74 65 67 65 72 28 42 69 67 49 6e  BigInteger(BigIn
14e10 74 65 67 65 72 2e 76 61 6c 75 65 4f 66 28 33 29  teger.valueOf(3)
14e20 29 3b 76 61 72 20 61 3d 74 68 69 73 2e 78 2e 73  );var a=this.x.s
14e30 71 75 61 72 65 28 29 2e 6d 75 6c 74 69 70 6c 79  quare().multiply
14e40 28 65 29 2e 61 64 64 28 74 68 69 73 2e 63 75 72  (e).add(this.cur
14e50 76 65 2e 61 29 2e 64 69 76 69 64 65 28 74 68 69  ve.a).divide(thi
14e60 73 2e 79 2e 6d 75 6c 74 69 70 6c 79 28 62 29 29  s.y.multiply(b))
14e70 3b 76 61 72 20 63 3d 61 2e 73 71 75 61 72 65 28  ;var c=a.square(
14e80 29 2e 73 75 62 74 72 61 63 74 28 74 68 69 73 2e  ).subtract(this.
14e90 78 2e 6d 75 6c 74 69 70 6c 79 28 62 29 29 3b 76  x.multiply(b));v
14ea0 61 72 20 64 3d 61 2e 6d 75 6c 74 69 70 6c 79 28  ar d=a.multiply(
14eb0 74 68 69 73 2e 78 2e 73 75 62 74 72 61 63 74 28  this.x.subtract(
14ec0 63 29 29 2e 73 75 62 74 72 61 63 74 28 74 68 69  c)).subtract(thi
14ed0 73 2e 79 29 3b 72 65 74 75 72 6e 20 6e 65 77 20  s.y);return new 
14ee0 45 43 50 6f 69 6e 74 46 70 28 74 68 69 73 2e 63  ECPointFp(this.c
14ef0 75 72 76 65 2c 63 2c 64 29 7d 3b 45 43 50 6f 69  urve,c,d)};ECPoi
14f00 6e 74 46 70 2e 70 72 6f 74 6f 74 79 70 65 2e 6d  ntFp.prototype.m
14f10 75 6c 74 69 70 6c 79 32 44 3d 66 75 6e 63 74 69  ultiply2D=functi
14f20 6f 6e 28 62 29 7b 69 66 28 74 68 69 73 2e 69 73  on(b){if(this.is
14f30 49 6e 66 69 6e 69 74 79 28 29 29 7b 72 65 74 75  Infinity()){retu
14f40 72 6e 20 74 68 69 73 7d 69 66 28 62 2e 73 69 67  rn this}if(b.sig
14f50 6e 75 6d 28 29 3d 3d 30 29 7b 72 65 74 75 72 6e  num()==0){return
14f60 20 74 68 69 73 2e 63 75 72 76 65 2e 67 65 74 49   this.curve.getI
14f70 6e 66 69 6e 69 74 79 28 29 7d 76 61 72 20 67 3d  nfinity()}var g=
14f80 62 3b 76 61 72 20 66 3d 67 2e 6d 75 6c 74 69 70  b;var f=g.multip
14f90 6c 79 28 6e 65 77 20 42 69 67 49 6e 74 65 67 65  ly(new BigIntege
14fa0 72 28 22 33 22 29 29 3b 76 61 72 20 6c 3d 74 68  r("3"));var l=th
14fb0 69 73 2e 6e 65 67 61 74 65 28 29 3b 76 61 72 20  is.negate();var 
14fc0 64 3d 74 68 69 73 3b 76 61 72 20 63 3b 66 6f 72  d=this;var c;for
14fd0 28 63 3d 66 2e 62 69 74 4c 65 6e 67 74 68 28 29  (c=f.bitLength()
14fe0 2d 32 3b 63 3e 30 3b 2d 2d 63 29 7b 64 3d 64 2e  -2;c>0;--c){d=d.
14ff0 74 77 69 63 65 28 29 3b 76 61 72 20 61 3d 66 2e  twice();var a=f.
15000 74 65 73 74 42 69 74 28 63 29 3b 76 61 72 20 6a  testBit(c);var j
15010 3d 67 2e 74 65 73 74 42 69 74 28 63 29 3b 69 66  =g.testBit(c);if
15020 28 61 21 3d 6a 29 7b 64 3d 64 2e 61 64 64 32 44  (a!=j){d=d.add2D
15030 28 61 3f 74 68 69 73 3a 6c 29 7d 7d 72 65 74 75  (a?this:l)}}retu
15040 72 6e 20 64 7d 3b 45 43 50 6f 69 6e 74 46 70 2e  rn d};ECPointFp.
15050 70 72 6f 74 6f 74 79 70 65 2e 69 73 4f 6e 43 75  prototype.isOnCu
15060 72 76 65 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 76  rve=function(){v
15070 61 72 20 64 3d 74 68 69 73 2e 67 65 74 58 28 29  ar d=this.getX()
15080 2e 74 6f 42 69 67 49 6e 74 65 67 65 72 28 29 3b  .toBigInteger();
15090 76 61 72 20 69 3d 74 68 69 73 2e 67 65 74 59 28  var i=this.getY(
150a0 29 2e 74 6f 42 69 67 49 6e 74 65 67 65 72 28 29  ).toBigInteger()
150b0 3b 76 61 72 20 66 3d 74 68 69 73 2e 63 75 72 76  ;var f=this.curv
150c0 65 2e 67 65 74 41 28 29 2e 74 6f 42 69 67 49 6e  e.getA().toBigIn
150d0 74 65 67 65 72 28 29 3b 76 61 72 20 63 3d 74 68  teger();var c=th
150e0 69 73 2e 63 75 72 76 65 2e 67 65 74 42 28 29 2e  is.curve.getB().
150f0 74 6f 42 69 67 49 6e 74 65 67 65 72 28 29 3b 76  toBigInteger();v
15100 61 72 20 68 3d 74 68 69 73 2e 63 75 72 76 65 2e  ar h=this.curve.
15110 67 65 74 51 28 29 3b 76 61 72 20 65 3d 69 2e 6d  getQ();var e=i.m
15120 75 6c 74 69 70 6c 79 28 69 29 2e 6d 6f 64 28 68  ultiply(i).mod(h
15130 29 3b 76 61 72 20 67 3d 64 2e 6d 75 6c 74 69 70  );var g=d.multip
15140 6c 79 28 64 29 2e 6d 75 6c 74 69 70 6c 79 28 64  ly(d).multiply(d
15150 29 2e 61 64 64 28 66 2e 6d 75 6c 74 69 70 6c 79  ).add(f.multiply
15160 28 64 29 29 2e 61 64 64 28 63 29 2e 6d 6f 64 28  (d)).add(c).mod(
15170 68 29 3b 72 65 74 75 72 6e 20 65 2e 65 71 75 61  h);return e.equa
15180 6c 73 28 67 29 7d 3b 45 43 50 6f 69 6e 74 46 70  ls(g)};ECPointFp
15190 2e 70 72 6f 74 6f 74 79 70 65 2e 74 6f 53 74 72  .prototype.toStr
151a0 69 6e 67 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 72  ing=function(){r
151b0 65 74 75 72 6e 22 28 22 2b 74 68 69 73 2e 67 65  eturn"("+this.ge
151c0 74 58 28 29 2e 74 6f 42 69 67 49 6e 74 65 67 65  tX().toBigIntege
151d0 72 28 29 2e 74 6f 53 74 72 69 6e 67 28 29 2b 22  r().toString()+"
151e0 2c 22 2b 74 68 69 73 2e 67 65 74 59 28 29 2e 74  ,"+this.getY().t
151f0 6f 42 69 67 49 6e 74 65 67 65 72 28 29 2e 74 6f  oBigInteger().to
15200 53 74 72 69 6e 67 28 29 2b 22 29 22 7d 3b 45 43  String()+")"};EC
15210 50 6f 69 6e 74 46 70 2e 70 72 6f 74 6f 74 79 70  PointFp.prototyp
15220 65 2e 76 61 6c 69 64 61 74 65 3d 66 75 6e 63 74  e.validate=funct
15230 69 6f 6e 28 29 7b 76 61 72 20 63 3d 74 68 69 73  ion(){var c=this
15240 2e 63 75 72 76 65 2e 67 65 74 51 28 29 3b 69 66  .curve.getQ();if
15250 28 74 68 69 73 2e 69 73 49 6e 66 69 6e 69 74 79  (this.isInfinity
15260 28 29 29 7b 74 68 72 6f 77 20 6e 65 77 20 45 72  ()){throw new Er
15270 72 6f 72 28 22 50 6f 69 6e 74 20 69 73 20 61 74  ror("Point is at
15280 20 69 6e 66 69 6e 69 74 79 2e 22 29 7d 76 61 72   infinity.")}var
15290 20 61 3d 74 68 69 73 2e 67 65 74 58 28 29 2e 74   a=this.getX().t
152a0 6f 42 69 67 49 6e 74 65 67 65 72 28 29 3b 76 61  oBigInteger();va
152b0 72 20 62 3d 74 68 69 73 2e 67 65 74 59 28 29 2e  r b=this.getY().
152c0 74 6f 42 69 67 49 6e 74 65 67 65 72 28 29 3b 69  toBigInteger();i
152d0 66 28 61 2e 63 6f 6d 70 61 72 65 54 6f 28 42 69  f(a.compareTo(Bi
152e0 67 49 6e 74 65 67 65 72 2e 4f 4e 45 29 3c 30 7c  gInteger.ONE)<0|
152f0 7c 61 2e 63 6f 6d 70 61 72 65 54 6f 28 63 2e 73  |a.compareTo(c.s
15300 75 62 74 72 61 63 74 28 42 69 67 49 6e 74 65 67  ubtract(BigInteg
15310 65 72 2e 4f 4e 45 29 29 3e 30 29 7b 74 68 72 6f  er.ONE))>0){thro
15320 77 20 6e 65 77 20 45 72 72 6f 72 28 22 78 20 63  w new Error("x c
15330 6f 6f 72 64 69 6e 61 74 65 20 6f 75 74 20 6f 66  oordinate out of
15340 20 62 6f 75 6e 64 73 22 29 7d 69 66 28 62 2e 63   bounds")}if(b.c
15350 6f 6d 70 61 72 65 54 6f 28 42 69 67 49 6e 74 65  ompareTo(BigInte
15360 67 65 72 2e 4f 4e 45 29 3c 30 7c 7c 62 2e 63 6f  ger.ONE)<0||b.co
15370 6d 70 61 72 65 54 6f 28 63 2e 73 75 62 74 72 61  mpareTo(c.subtra
15380 63 74 28 42 69 67 49 6e 74 65 67 65 72 2e 4f 4e  ct(BigInteger.ON
15390 45 29 29 3e 30 29 7b 74 68 72 6f 77 20 6e 65 77  E))>0){throw new
153a0 20 45 72 72 6f 72 28 22 79 20 63 6f 6f 72 64 69   Error("y coordi
153b0 6e 61 74 65 20 6f 75 74 20 6f 66 20 62 6f 75 6e  nate out of boun
153c0 64 73 22 29 7d 69 66 28 21 74 68 69 73 2e 69 73  ds")}if(!this.is
153d0 4f 6e 43 75 72 76 65 28 29 29 7b 74 68 72 6f 77  OnCurve()){throw
153e0 20 6e 65 77 20 45 72 72 6f 72 28 22 50 6f 69 6e   new Error("Poin
153f0 74 20 69 73 20 6e 6f 74 20 6f 6e 20 74 68 65 20  t is not on the 
15400 63 75 72 76 65 2e 22 29 7d 69 66 28 74 68 69 73  curve.")}if(this
15410 2e 6d 75 6c 74 69 70 6c 79 28 63 29 2e 69 73 49  .multiply(c).isI
15420 6e 66 69 6e 69 74 79 28 29 29 7b 74 68 72 6f 77  nfinity()){throw
15430 20 6e 65 77 20 45 72 72 6f 72 28 22 50 6f 69 6e   new Error("Poin
15440 74 20 69 73 20 6e 6f 74 20 61 20 73 63 61 6c 61  t is not a scala
15450 72 20 6d 75 6c 74 69 70 6c 65 20 6f 66 20 47 2e  r multiple of G.
15460 22 29 7d 72 65 74 75 72 6e 20 74 72 75 65 7d 3b  ")}return true};
15470 0a 2f 2a 21 20 61 73 6e 31 2d 31 2e 30 2e 38 2e  ./*! asn1-1.0.8.
15480 6a 73 20 28 63 29 20 32 30 31 33 2d 32 30 31 35  js (c) 2013-2015
15490 20 4b 65 6e 6a 69 20 55 72 75 73 68 69 6d 61 20   Kenji Urushima 
154a0 7c 20 6b 6a 75 72 2e 67 69 74 68 75 62 2e 63 6f  | kjur.github.co
154b0 6d 2f 6a 73 72 73 61 73 69 67 6e 2f 6c 69 63 65  m/jsrsasign/lice
154c0 6e 73 65 0a 20 2a 2f 0a 69 66 28 74 79 70 65 6f  nse. */.if(typeo
154d0 66 20 4b 4a 55 52 3d 3d 22 75 6e 64 65 66 69 6e  f KJUR=="undefin
154e0 65 64 22 7c 7c 21 4b 4a 55 52 29 7b 4b 4a 55 52  ed"||!KJUR){KJUR
154f0 3d 7b 7d 7d 69 66 28 74 79 70 65 6f 66 20 4b 4a  ={}}if(typeof KJ
15500 55 52 2e 61 73 6e 31 3d 3d 22 75 6e 64 65 66 69  UR.asn1=="undefi
15510 6e 65 64 22 7c 7c 21 4b 4a 55 52 2e 61 73 6e 31  ned"||!KJUR.asn1
15520 29 7b 4b 4a 55 52 2e 61 73 6e 31 3d 7b 7d 7d 4b  ){KJUR.asn1={}}K
15530 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 55 74 69  JUR.asn1.ASN1Uti
15540 6c 3d 6e 65 77 20 66 75 6e 63 74 69 6f 6e 28 29  l=new function()
15550 7b 74 68 69 73 2e 69 6e 74 65 67 65 72 54 6f 42  {this.integerToB
15560 79 74 65 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28  yteHex=function(
15570 61 29 7b 76 61 72 20 62 3d 61 2e 74 6f 53 74 72  a){var b=a.toStr
15580 69 6e 67 28 31 36 29 3b 69 66 28 28 62 2e 6c 65  ing(16);if((b.le
15590 6e 67 74 68 25 32 29 3d 3d 31 29 7b 62 3d 22 30  ngth%2)==1){b="0
155a0 22 2b 62 7d 72 65 74 75 72 6e 20 62 7d 3b 74 68  "+b}return b};th
155b0 69 73 2e 62 69 67 49 6e 74 54 6f 4d 69 6e 54 77  is.bigIntToMinTw
155c0 6f 73 43 6f 6d 70 6c 65 6d 65 6e 74 73 48 65 78  osComplementsHex
155d0 3d 66 75 6e 63 74 69 6f 6e 28 6a 29 7b 76 61 72  =function(j){var
155e0 20 66 3d 6a 2e 74 6f 53 74 72 69 6e 67 28 31 36   f=j.toString(16
155f0 29 3b 69 66 28 66 2e 73 75 62 73 74 72 28 30 2c  );if(f.substr(0,
15600 31 29 21 3d 22 2d 22 29 7b 69 66 28 66 2e 6c 65  1)!="-"){if(f.le
15610 6e 67 74 68 25 32 3d 3d 31 29 7b 66 3d 22 30 22  ngth%2==1){f="0"
15620 2b 66 7d 65 6c 73 65 7b 69 66 28 21 66 2e 6d 61  +f}else{if(!f.ma
15630 74 63 68 28 2f 5e 5b 30 2d 37 5d 2f 29 29 7b 66  tch(/^[0-7]/)){f
15640 3d 22 30 30 22 2b 66 7d 7d 7d 65 6c 73 65 7b 76  ="00"+f}}}else{v
15650 61 72 20 61 3d 66 2e 73 75 62 73 74 72 28 31 29  ar a=f.substr(1)
15660 3b 76 61 72 20 65 3d 61 2e 6c 65 6e 67 74 68 3b  ;var e=a.length;
15670 69 66 28 65 25 32 3d 3d 31 29 7b 65 2b 3d 31 7d  if(e%2==1){e+=1}
15680 65 6c 73 65 7b 69 66 28 21 66 2e 6d 61 74 63 68  else{if(!f.match
15690 28 2f 5e 5b 30 2d 37 5d 2f 29 29 7b 65 2b 3d 32  (/^[0-7]/)){e+=2
156a0 7d 7d 76 61 72 20 67 3d 22 22 3b 66 6f 72 28 76  }}var g="";for(v
156b0 61 72 20 64 3d 30 3b 64 3c 65 3b 64 2b 2b 29 7b  ar d=0;d<e;d++){
156c0 67 2b 3d 22 66 22 7d 76 61 72 20 63 3d 6e 65 77  g+="f"}var c=new
156d0 20 42 69 67 49 6e 74 65 67 65 72 28 67 2c 31 36   BigInteger(g,16
156e0 29 3b 76 61 72 20 62 3d 63 2e 78 6f 72 28 6a 29  );var b=c.xor(j)
156f0 2e 61 64 64 28 42 69 67 49 6e 74 65 67 65 72 2e  .add(BigInteger.
15700 4f 4e 45 29 3b 66 3d 62 2e 74 6f 53 74 72 69 6e  ONE);f=b.toStrin
15710 67 28 31 36 29 2e 72 65 70 6c 61 63 65 28 2f 5e  g(16).replace(/^
15720 2d 2f 2c 22 22 29 7d 72 65 74 75 72 6e 20 66 7d  -/,"")}return f}
15730 3b 74 68 69 73 2e 67 65 74 50 45 4d 53 74 72 69  ;this.getPEMStri
15740 6e 67 46 72 6f 6d 48 65 78 3d 66 75 6e 63 74 69  ngFromHex=functi
15750 6f 6e 28 61 2c 62 29 7b 76 61 72 20 63 3d 4b 4a  on(a,b){var c=KJ
15760 55 52 2e 61 73 6e 31 3b 76 61 72 20 66 3d 43 72  UR.asn1;var f=Cr
15770 79 70 74 6f 4a 53 2e 65 6e 63 2e 48 65 78 2e 70  yptoJS.enc.Hex.p
15780 61 72 73 65 28 61 29 3b 76 61 72 20 64 3d 43 72  arse(a);var d=Cr
15790 79 70 74 6f 4a 53 2e 65 6e 63 2e 42 61 73 65 36  yptoJS.enc.Base6
157a0 34 2e 73 74 72 69 6e 67 69 66 79 28 66 29 3b 76  4.stringify(f);v
157b0 61 72 20 65 3d 64 2e 72 65 70 6c 61 63 65 28 2f  ar e=d.replace(/
157c0 28 2e 7b 36 34 7d 29 2f 67 2c 22 24 31 5c 72 5c  (.{64})/g,"$1\r\
157d0 6e 22 29 3b 65 3d 65 2e 72 65 70 6c 61 63 65 28  n");e=e.replace(
157e0 2f 5c 72 5c 6e 24 2f 2c 22 22 29 3b 72 65 74 75  /\r\n$/,"");retu
157f0 72 6e 22 2d 2d 2d 2d 2d 42 45 47 49 4e 20 22 2b  rn"-----BEGIN "+
15800 62 2b 22 2d 2d 2d 2d 2d 5c 72 5c 6e 22 2b 65 2b  b+"-----\r\n"+e+
15810 22 5c 72 5c 6e 2d 2d 2d 2d 2d 45 4e 44 20 22 2b  "\r\n-----END "+
15820 62 2b 22 2d 2d 2d 2d 2d 5c 72 5c 6e 22 7d 3b 74  b+"-----\r\n"};t
15830 68 69 73 2e 6e 65 77 4f 62 6a 65 63 74 3d 66 75  his.newObject=fu
15840 6e 63 74 69 6f 6e 28 62 29 7b 76 61 72 20 67 3d  nction(b){var g=
15850 4b 4a 55 52 2e 61 73 6e 31 3b 76 61 72 20 6b 3d  KJUR.asn1;var k=
15860 4f 62 6a 65 63 74 2e 6b 65 79 73 28 62 29 3b 69  Object.keys(b);i
15870 66 28 6b 2e 6c 65 6e 67 74 68 21 3d 31 29 7b 74  f(k.length!=1){t
15880 68 72 6f 77 22 6b 65 79 20 6f 66 20 70 61 72 61  hrow"key of para
15890 6d 20 73 68 61 6c 6c 20 62 65 20 6f 6e 6c 79 20  m shall be only 
158a0 6f 6e 65 2e 22 7d 76 61 72 20 6a 3d 6b 5b 30 5d  one."}var j=k[0]
158b0 3b 69 66 28 22 3a 62 6f 6f 6c 3a 69 6e 74 3a 62  ;if(":bool:int:b
158c0 69 74 73 74 72 3a 6f 63 74 73 74 72 3a 6e 75 6c  itstr:octstr:nul
158d0 6c 3a 6f 69 64 3a 65 6e 75 6d 3a 75 74 66 38 73  l:oid:enum:utf8s
158e0 74 72 3a 6e 75 6d 73 74 72 3a 70 72 6e 73 74 72  tr:numstr:prnstr
158f0 3a 74 65 6c 73 74 72 3a 69 61 35 73 74 72 3a 75  :telstr:ia5str:u
15900 74 63 74 69 6d 65 3a 67 65 6e 74 69 6d 65 3a 73  tctime:gentime:s
15910 65 71 3a 73 65 74 3a 74 61 67 3a 22 2e 69 6e 64  eq:set:tag:".ind
15920 65 78 4f 66 28 22 3a 22 2b 6a 2b 22 3a 22 29 3d  exOf(":"+j+":")=
15930 3d 2d 31 29 7b 74 68 72 6f 77 22 75 6e 64 65 66  =-1){throw"undef
15940 69 6e 65 64 20 6b 65 79 3a 20 22 2b 6a 7d 69 66  ined key: "+j}if
15950 28 6a 3d 3d 22 62 6f 6f 6c 22 29 7b 72 65 74 75  (j=="bool"){retu
15960 72 6e 20 6e 65 77 20 67 2e 44 45 52 42 6f 6f 6c  rn new g.DERBool
15970 65 61 6e 28 62 5b 6a 5d 29 7d 69 66 28 6a 3d 3d  ean(b[j])}if(j==
15980 22 69 6e 74 22 29 7b 72 65 74 75 72 6e 20 6e 65  "int"){return ne
15990 77 20 67 2e 44 45 52 49 6e 74 65 67 65 72 28 62  w g.DERInteger(b
159a0 5b 6a 5d 29 7d 69 66 28 6a 3d 3d 22 62 69 74 73  [j])}if(j=="bits
159b0 74 72 22 29 7b 72 65 74 75 72 6e 20 6e 65 77 20  tr"){return new 
159c0 67 2e 44 45 52 42 69 74 53 74 72 69 6e 67 28 62  g.DERBitString(b
159d0 5b 6a 5d 29 7d 69 66 28 6a 3d 3d 22 6f 63 74 73  [j])}if(j=="octs
159e0 74 72 22 29 7b 72 65 74 75 72 6e 20 6e 65 77 20  tr"){return new 
159f0 67 2e 44 45 52 4f 63 74 65 74 53 74 72 69 6e 67  g.DEROctetString
15a00 28 62 5b 6a 5d 29 7d 69 66 28 6a 3d 3d 22 6e 75  (b[j])}if(j=="nu
15a10 6c 6c 22 29 7b 72 65 74 75 72 6e 20 6e 65 77 20  ll"){return new 
15a20 67 2e 44 45 52 4e 75 6c 6c 28 62 5b 6a 5d 29 7d  g.DERNull(b[j])}
15a30 69 66 28 6a 3d 3d 22 6f 69 64 22 29 7b 72 65 74  if(j=="oid"){ret
15a40 75 72 6e 20 6e 65 77 20 67 2e 44 45 52 4f 62 6a  urn new g.DERObj
15a50 65 63 74 49 64 65 6e 74 69 66 69 65 72 28 62 5b  ectIdentifier(b[
15a60 6a 5d 29 7d 69 66 28 6a 3d 3d 22 65 6e 75 6d 22  j])}if(j=="enum"
15a70 29 7b 72 65 74 75 72 6e 20 6e 65 77 20 67 2e 44  ){return new g.D
15a80 45 52 45 6e 75 6d 65 72 61 74 65 64 28 62 5b 6a  EREnumerated(b[j
15a90 5d 29 7d 69 66 28 6a 3d 3d 22 75 74 66 38 73 74  ])}if(j=="utf8st
15aa0 72 22 29 7b 72 65 74 75 72 6e 20 6e 65 77 20 67  r"){return new g
15ab0 2e 44 45 52 55 54 46 38 53 74 72 69 6e 67 28 62  .DERUTF8String(b
15ac0 5b 6a 5d 29 7d 69 66 28 6a 3d 3d 22 6e 75 6d 73  [j])}if(j=="nums
15ad0 74 72 22 29 7b 72 65 74 75 72 6e 20 6e 65 77 20  tr"){return new 
15ae0 67 2e 44 45 52 4e 75 6d 65 72 69 63 53 74 72 69  g.DERNumericStri
15af0 6e 67 28 62 5b 6a 5d 29 7d 69 66 28 6a 3d 3d 22  ng(b[j])}if(j=="
15b00 70 72 6e 73 74 72 22 29 7b 72 65 74 75 72 6e 20  prnstr"){return 
15b10 6e 65 77 20 67 2e 44 45 52 50 72 69 6e 74 61 62  new g.DERPrintab
15b20 6c 65 53 74 72 69 6e 67 28 62 5b 6a 5d 29 7d 69  leString(b[j])}i
15b30 66 28 6a 3d 3d 22 74 65 6c 73 74 72 22 29 7b 72  f(j=="telstr"){r
15b40 65 74 75 72 6e 20 6e 65 77 20 67 2e 44 45 52 54  eturn new g.DERT
15b50 65 6c 65 74 65 78 53 74 72 69 6e 67 28 62 5b 6a  eletexString(b[j
15b60 5d 29 7d 69 66 28 6a 3d 3d 22 69 61 35 73 74 72  ])}if(j=="ia5str
15b70 22 29 7b 72 65 74 75 72 6e 20 6e 65 77 20 67 2e  "){return new g.
15b80 44 45 52 49 41 35 53 74 72 69 6e 67 28 62 5b 6a  DERIA5String(b[j
15b90 5d 29 7d 69 66 28 6a 3d 3d 22 75 74 63 74 69 6d  ])}if(j=="utctim
15ba0 65 22 29 7b 72 65 74 75 72 6e 20 6e 65 77 20 67  e"){return new g
15bb0 2e 44 45 52 55 54 43 54 69 6d 65 28 62 5b 6a 5d  .DERUTCTime(b[j]
15bc0 29 7d 69 66 28 6a 3d 3d 22 67 65 6e 74 69 6d 65  )}if(j=="gentime
15bd0 22 29 7b 72 65 74 75 72 6e 20 6e 65 77 20 67 2e  "){return new g.
15be0 44 45 52 47 65 6e 65 72 61 6c 69 7a 65 64 54 69  DERGeneralizedTi
15bf0 6d 65 28 62 5b 6a 5d 29 7d 69 66 28 6a 3d 3d 22  me(b[j])}if(j=="
15c00 73 65 71 22 29 7b 76 61 72 20 6d 3d 62 5b 6a 5d  seq"){var m=b[j]
15c10 3b 76 61 72 20 68 3d 5b 5d 3b 66 6f 72 28 76 61  ;var h=[];for(va
15c20 72 20 65 3d 30 3b 65 3c 6d 2e 6c 65 6e 67 74 68  r e=0;e<m.length
15c30 3b 65 2b 2b 29 7b 76 61 72 20 6c 3d 67 2e 41 53  ;e++){var l=g.AS
15c40 4e 31 55 74 69 6c 2e 6e 65 77 4f 62 6a 65 63 74  N1Util.newObject
15c50 28 6d 5b 65 5d 29 3b 68 2e 70 75 73 68 28 6c 29  (m[e]);h.push(l)
15c60 7d 72 65 74 75 72 6e 20 6e 65 77 20 67 2e 44 45  }return new g.DE
15c70 52 53 65 71 75 65 6e 63 65 28 7b 61 72 72 61 79  RSequence({array
15c80 3a 68 7d 29 7d 69 66 28 6a 3d 3d 22 73 65 74 22  :h})}if(j=="set"
15c90 29 7b 76 61 72 20 6d 3d 62 5b 6a 5d 3b 76 61 72  ){var m=b[j];var
15ca0 20 68 3d 5b 5d 3b 66 6f 72 28 76 61 72 20 65 3d   h=[];for(var e=
15cb0 30 3b 65 3c 6d 2e 6c 65 6e 67 74 68 3b 65 2b 2b  0;e<m.length;e++
15cc0 29 7b 76 61 72 20 6c 3d 67 2e 41 53 4e 31 55 74  ){var l=g.ASN1Ut
15cd0 69 6c 2e 6e 65 77 4f 62 6a 65 63 74 28 6d 5b 65  il.newObject(m[e
15ce0 5d 29 3b 68 2e 70 75 73 68 28 6c 29 7d 72 65 74  ]);h.push(l)}ret
15cf0 75 72 6e 20 6e 65 77 20 67 2e 44 45 52 53 65 74  urn new g.DERSet
15d00 28 7b 61 72 72 61 79 3a 68 7d 29 7d 69 66 28 6a  ({array:h})}if(j
15d10 3d 3d 22 74 61 67 22 29 7b 76 61 72 20 63 3d 62  =="tag"){var c=b
15d20 5b 6a 5d 3b 69 66 28 4f 62 6a 65 63 74 2e 70 72  [j];if(Object.pr
15d30 6f 74 6f 74 79 70 65 2e 74 6f 53 74 72 69 6e 67  ototype.toString
15d40 2e 63 61 6c 6c 28 63 29 3d 3d 3d 22 5b 6f 62 6a  .call(c)==="[obj
15d50 65 63 74 20 41 72 72 61 79 5d 22 26 26 63 2e 6c  ect Array]"&&c.l
15d60 65 6e 67 74 68 3d 3d 33 29 7b 76 61 72 20 64 3d  ength==3){var d=
15d70 67 2e 41 53 4e 31 55 74 69 6c 2e 6e 65 77 4f 62  g.ASN1Util.newOb
15d80 6a 65 63 74 28 63 5b 32 5d 29 3b 72 65 74 75 72  ject(c[2]);retur
15d90 6e 20 6e 65 77 20 67 2e 44 45 52 54 61 67 67 65  n new g.DERTagge
15da0 64 4f 62 6a 65 63 74 28 7b 74 61 67 3a 63 5b 30  dObject({tag:c[0
15db0 5d 2c 65 78 70 6c 69 63 69 74 3a 63 5b 31 5d 2c  ],explicit:c[1],
15dc0 6f 62 6a 3a 64 7d 29 7d 65 6c 73 65 7b 76 61 72  obj:d})}else{var
15dd0 20 66 3d 7b 7d 3b 69 66 28 63 2e 65 78 70 6c 69   f={};if(c.expli
15de0 63 69 74 21 3d 3d 75 6e 64 65 66 69 6e 65 64 29  cit!==undefined)
15df0 7b 66 2e 65 78 70 6c 69 63 69 74 3d 63 2e 65 78  {f.explicit=c.ex
15e00 70 6c 69 63 69 74 7d 69 66 28 63 2e 74 61 67 21  plicit}if(c.tag!
15e10 3d 3d 75 6e 64 65 66 69 6e 65 64 29 7b 66 2e 74  ==undefined){f.t
15e20 61 67 3d 63 2e 74 61 67 7d 69 66 28 63 2e 6f 62  ag=c.tag}if(c.ob
15e30 6a 3d 3d 3d 75 6e 64 65 66 69 6e 65 64 29 7b 74  j===undefined){t
15e40 68 72 6f 77 22 6f 62 6a 20 73 68 61 6c 6c 20 62  hrow"obj shall b
15e50 65 20 73 70 65 63 69 66 69 65 64 20 66 6f 72 20  e specified for 
15e60 27 74 61 67 27 2e 22 7d 66 2e 6f 62 6a 3d 67 2e  'tag'."}f.obj=g.
15e70 41 53 4e 31 55 74 69 6c 2e 6e 65 77 4f 62 6a 65  ASN1Util.newObje
15e80 63 74 28 63 2e 6f 62 6a 29 3b 72 65 74 75 72 6e  ct(c.obj);return
15e90 20 6e 65 77 20 67 2e 44 45 52 54 61 67 67 65 64   new g.DERTagged
15ea0 4f 62 6a 65 63 74 28 66 29 7d 7d 7d 3b 74 68 69  Object(f)}}};thi
15eb0 73 2e 6a 73 6f 6e 54 6f 41 53 4e 31 48 45 58 3d  s.jsonToASN1HEX=
15ec0 66 75 6e 63 74 69 6f 6e 28 62 29 7b 76 61 72 20  function(b){var 
15ed0 61 3d 74 68 69 73 2e 6e 65 77 4f 62 6a 65 63 74  a=this.newObject
15ee0 28 62 29 3b 72 65 74 75 72 6e 20 61 2e 67 65 74  (b);return a.get
15ef0 45 6e 63 6f 64 65 64 48 65 78 28 29 7d 7d 3b 4b  EncodedHex()}};K
15f00 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 55 74 69  JUR.asn1.ASN1Uti
15f10 6c 2e 6f 69 64 48 65 78 54 6f 49 6e 74 3d 66 75  l.oidHexToInt=fu
15f20 6e 63 74 69 6f 6e 28 61 29 7b 76 61 72 20 6a 3d  nction(a){var j=
15f30 22 22 3b 76 61 72 20 6b 3d 70 61 72 73 65 49 6e  "";var k=parseIn
15f40 74 28 61 2e 73 75 62 73 74 72 28 30 2c 32 29 2c  t(a.substr(0,2),
15f50 31 36 29 3b 76 61 72 20 64 3d 4d 61 74 68 2e 66  16);var d=Math.f
15f60 6c 6f 6f 72 28 6b 2f 34 30 29 3b 76 61 72 20 63  loor(k/40);var c
15f70 3d 6b 25 34 30 3b 76 61 72 20 6a 3d 64 2b 22 2e  =k%40;var j=d+".
15f80 22 2b 63 3b 76 61 72 20 65 3d 22 22 3b 66 6f 72  "+c;var e="";for
15f90 28 76 61 72 20 66 3d 32 3b 66 3c 61 2e 6c 65 6e  (var f=2;f<a.len
15fa0 67 74 68 3b 66 2b 3d 32 29 7b 76 61 72 20 67 3d  gth;f+=2){var g=
15fb0 70 61 72 73 65 49 6e 74 28 61 2e 73 75 62 73 74  parseInt(a.subst
15fc0 72 28 66 2c 32 29 2c 31 36 29 3b 76 61 72 20 68  r(f,2),16);var h
15fd0 3d 28 22 30 30 30 30 30 30 30 30 22 2b 67 2e 74  =("00000000"+g.t
15fe0 6f 53 74 72 69 6e 67 28 32 29 29 2e 73 6c 69 63  oString(2)).slic
15ff0 65 28 2d 38 29 3b 65 3d 65 2b 68 2e 73 75 62 73  e(-8);e=e+h.subs
16000 74 72 28 31 2c 37 29 3b 69 66 28 68 2e 73 75 62  tr(1,7);if(h.sub
16010 73 74 72 28 30 2c 31 29 3d 3d 22 30 22 29 7b 76  str(0,1)=="0"){v
16020 61 72 20 62 3d 6e 65 77 20 42 69 67 49 6e 74 65  ar b=new BigInte
16030 67 65 72 28 65 2c 32 29 3b 6a 3d 6a 2b 22 2e 22  ger(e,2);j=j+"."
16040 2b 62 2e 74 6f 53 74 72 69 6e 67 28 31 30 29 3b  +b.toString(10);
16050 65 3d 22 22 7d 7d 72 65 74 75 72 6e 20 6a 7d 3b  e=""}}return j};
16060 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 55 74  KJUR.asn1.ASN1Ut
16070 69 6c 2e 6f 69 64 49 6e 74 54 6f 48 65 78 3d 66  il.oidIntToHex=f
16080 75 6e 63 74 69 6f 6e 28 66 29 7b 76 61 72 20 65  unction(f){var e
16090 3d 66 75 6e 63 74 69 6f 6e 28 61 29 7b 76 61 72  =function(a){var
160a0 20 6b 3d 61 2e 74 6f 53 74 72 69 6e 67 28 31 36   k=a.toString(16
160b0 29 3b 69 66 28 6b 2e 6c 65 6e 67 74 68 3d 3d 31  );if(k.length==1
160c0 29 7b 6b 3d 22 30 22 2b 6b 7d 72 65 74 75 72 6e  ){k="0"+k}return
160d0 20 6b 7d 3b 76 61 72 20 64 3d 66 75 6e 63 74 69   k};var d=functi
160e0 6f 6e 28 6f 29 7b 76 61 72 20 6e 3d 22 22 3b 76  on(o){var n="";v
160f0 61 72 20 6b 3d 6e 65 77 20 42 69 67 49 6e 74 65  ar k=new BigInte
16100 67 65 72 28 6f 2c 31 30 29 3b 76 61 72 20 61 3d  ger(o,10);var a=
16110 6b 2e 74 6f 53 74 72 69 6e 67 28 32 29 3b 76 61  k.toString(2);va
16120 72 20 6c 3d 37 2d 61 2e 6c 65 6e 67 74 68 25 37  r l=7-a.length%7
16130 3b 69 66 28 6c 3d 3d 37 29 7b 6c 3d 30 7d 76 61  ;if(l==7){l=0}va
16140 72 20 71 3d 22 22 3b 66 6f 72 28 76 61 72 20 6d  r q="";for(var m
16150 3d 30 3b 6d 3c 6c 3b 6d 2b 2b 29 7b 71 2b 3d 22  =0;m<l;m++){q+="
16160 30 22 7d 61 3d 71 2b 61 3b 66 6f 72 28 76 61 72  0"}a=q+a;for(var
16170 20 6d 3d 30 3b 6d 3c 61 2e 6c 65 6e 67 74 68 2d   m=0;m<a.length-
16180 31 3b 6d 2b 3d 37 29 7b 76 61 72 20 70 3d 61 2e  1;m+=7){var p=a.
16190 73 75 62 73 74 72 28 6d 2c 37 29 3b 69 66 28 6d  substr(m,7);if(m
161a0 21 3d 61 2e 6c 65 6e 67 74 68 2d 37 29 7b 70 3d  !=a.length-7){p=
161b0 22 31 22 2b 70 7d 6e 2b 3d 65 28 70 61 72 73 65  "1"+p}n+=e(parse
161c0 49 6e 74 28 70 2c 32 29 29 7d 72 65 74 75 72 6e  Int(p,2))}return
161d0 20 6e 7d 3b 69 66 28 21 66 2e 6d 61 74 63 68 28   n};if(!f.match(
161e0 2f 5e 5b 30 2d 39 2e 5d 2b 24 2f 29 29 7b 74 68  /^[0-9.]+$/)){th
161f0 72 6f 77 22 6d 61 6c 66 6f 72 6d 65 64 20 6f 69  row"malformed oi
16200 64 20 73 74 72 69 6e 67 3a 20 22 2b 66 7d 76 61  d string: "+f}va
16210 72 20 67 3d 22 22 3b 76 61 72 20 62 3d 66 2e 73  r g="";var b=f.s
16220 70 6c 69 74 28 22 2e 22 29 3b 76 61 72 20 6a 3d  plit(".");var j=
16230 70 61 72 73 65 49 6e 74 28 62 5b 30 5d 29 2a 34  parseInt(b[0])*4
16240 30 2b 70 61 72 73 65 49 6e 74 28 62 5b 31 5d 29  0+parseInt(b[1])
16250 3b 67 2b 3d 65 28 6a 29 3b 62 2e 73 70 6c 69 63  ;g+=e(j);b.splic
16260 65 28 30 2c 32 29 3b 66 6f 72 28 76 61 72 20 63  e(0,2);for(var c
16270 3d 30 3b 63 3c 62 2e 6c 65 6e 67 74 68 3b 63 2b  =0;c<b.length;c+
16280 2b 29 7b 67 2b 3d 64 28 62 5b 63 5d 29 7d 72 65  +){g+=d(b[c])}re
16290 74 75 72 6e 20 67 7d 3b 4b 4a 55 52 2e 61 73 6e  turn g};KJUR.asn
162a0 31 2e 41 53 4e 31 4f 62 6a 65 63 74 3d 66 75 6e  1.ASN1Object=fun
162b0 63 74 69 6f 6e 28 29 7b 76 61 72 20 63 3d 74 72  ction(){var c=tr
162c0 75 65 3b 76 61 72 20 62 3d 6e 75 6c 6c 3b 76 61  ue;var b=null;va
162d0 72 20 64 3d 22 30 30 22 3b 76 61 72 20 65 3d 22  r d="00";var e="
162e0 30 30 22 3b 76 61 72 20 61 3d 22 22 3b 74 68 69  00";var a="";thi
162f0 73 2e 67 65 74 4c 65 6e 67 74 68 48 65 78 46 72  s.getLengthHexFr
16300 6f 6d 56 61 6c 75 65 3d 66 75 6e 63 74 69 6f 6e  omValue=function
16310 28 29 7b 69 66 28 74 79 70 65 6f 66 20 74 68 69  (){if(typeof thi
16320 73 2e 68 56 3d 3d 22 75 6e 64 65 66 69 6e 65 64  s.hV=="undefined
16330 22 7c 7c 74 68 69 73 2e 68 56 3d 3d 6e 75 6c 6c  "||this.hV==null
16340 29 7b 74 68 72 6f 77 22 74 68 69 73 2e 68 56 20  ){throw"this.hV 
16350 69 73 20 6e 75 6c 6c 20 6f 72 20 75 6e 64 65 66  is null or undef
16360 69 6e 65 64 2e 22 7d 69 66 28 74 68 69 73 2e 68  ined."}if(this.h
16370 56 2e 6c 65 6e 67 74 68 25 32 3d 3d 31 29 7b 74  V.length%2==1){t
16380 68 72 6f 77 22 76 61 6c 75 65 20 68 65 78 20 6d  hrow"value hex m
16390 75 73 74 20 62 65 20 65 76 65 6e 20 6c 65 6e 67  ust be even leng
163a0 74 68 3a 20 6e 3d 22 2b 61 2e 6c 65 6e 67 74 68  th: n="+a.length
163b0 2b 22 2c 76 3d 22 2b 74 68 69 73 2e 68 56 7d 76  +",v="+this.hV}v
163c0 61 72 20 69 3d 74 68 69 73 2e 68 56 2e 6c 65 6e  ar i=this.hV.len
163d0 67 74 68 2f 32 3b 76 61 72 20 68 3d 69 2e 74 6f  gth/2;var h=i.to
163e0 53 74 72 69 6e 67 28 31 36 29 3b 69 66 28 68 2e  String(16);if(h.
163f0 6c 65 6e 67 74 68 25 32 3d 3d 31 29 7b 68 3d 22  length%2==1){h="
16400 30 22 2b 68 7d 69 66 28 69 3c 31 32 38 29 7b 72  0"+h}if(i<128){r
16410 65 74 75 72 6e 20 68 7d 65 6c 73 65 7b 76 61 72  eturn h}else{var
16420 20 67 3d 68 2e 6c 65 6e 67 74 68 2f 32 3b 69 66   g=h.length/2;if
16430 28 67 3e 31 35 29 7b 74 68 72 6f 77 22 41 53 4e  (g>15){throw"ASN
16440 2e 31 20 6c 65 6e 67 74 68 20 74 6f 6f 20 6c 6f  .1 length too lo
16450 6e 67 20 74 6f 20 72 65 70 72 65 73 65 6e 74 20  ng to represent 
16460 62 79 20 38 78 3a 20 6e 20 3d 20 22 2b 69 2e 74  by 8x: n = "+i.t
16470 6f 53 74 72 69 6e 67 28 31 36 29 7d 76 61 72 20  oString(16)}var 
16480 66 3d 31 32 38 2b 67 3b 72 65 74 75 72 6e 20 66  f=128+g;return f
16490 2e 74 6f 53 74 72 69 6e 67 28 31 36 29 2b 68 7d  .toString(16)+h}
164a0 7d 3b 74 68 69 73 2e 67 65 74 45 6e 63 6f 64 65  };this.getEncode
164b0 64 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29 7b  dHex=function(){
164c0 69 66 28 74 68 69 73 2e 68 54 4c 56 3d 3d 6e 75  if(this.hTLV==nu
164d0 6c 6c 7c 7c 74 68 69 73 2e 69 73 4d 6f 64 69 66  ll||this.isModif
164e0 69 65 64 29 7b 74 68 69 73 2e 68 56 3d 74 68 69  ied){this.hV=thi
164f0 73 2e 67 65 74 46 72 65 73 68 56 61 6c 75 65 48  s.getFreshValueH
16500 65 78 28 29 3b 74 68 69 73 2e 68 4c 3d 74 68 69  ex();this.hL=thi
16510 73 2e 67 65 74 4c 65 6e 67 74 68 48 65 78 46 72  s.getLengthHexFr
16520 6f 6d 56 61 6c 75 65 28 29 3b 74 68 69 73 2e 68  omValue();this.h
16530 54 4c 56 3d 74 68 69 73 2e 68 54 2b 74 68 69 73  TLV=this.hT+this
16540 2e 68 4c 2b 74 68 69 73 2e 68 56 3b 74 68 69 73  .hL+this.hV;this
16550 2e 69 73 4d 6f 64 69 66 69 65 64 3d 66 61 6c 73  .isModified=fals
16560 65 7d 72 65 74 75 72 6e 20 74 68 69 73 2e 68 54  e}return this.hT
16570 4c 56 7d 3b 74 68 69 73 2e 67 65 74 56 61 6c 75  LV};this.getValu
16580 65 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29 7b  eHex=function(){
16590 74 68 69 73 2e 67 65 74 45 6e 63 6f 64 65 64 48  this.getEncodedH
165a0 65 78 28 29 3b 72 65 74 75 72 6e 20 74 68 69 73  ex();return this
165b0 2e 68 56 7d 3b 74 68 69 73 2e 67 65 74 46 72 65  .hV};this.getFre
165c0 73 68 56 61 6c 75 65 48 65 78 3d 66 75 6e 63 74  shValueHex=funct
165d0 69 6f 6e 28 29 7b 72 65 74 75 72 6e 22 22 7d 7d  ion(){return""}}
165e0 3b 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 41 62  ;KJUR.asn1.DERAb
165f0 73 74 72 61 63 74 53 74 72 69 6e 67 3d 66 75 6e  stractString=fun
16600 63 74 69 6f 6e 28 63 29 7b 4b 4a 55 52 2e 61 73  ction(c){KJUR.as
16610 6e 31 2e 44 45 52 41 62 73 74 72 61 63 74 53 74  n1.DERAbstractSt
16620 72 69 6e 67 2e 73 75 70 65 72 63 6c 61 73 73 2e  ring.superclass.
16630 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c 6c  constructor.call
16640 28 74 68 69 73 29 3b 76 61 72 20 62 3d 6e 75 6c  (this);var b=nul
16650 6c 3b 76 61 72 20 61 3d 6e 75 6c 6c 3b 74 68 69  l;var a=null;thi
16660 73 2e 67 65 74 53 74 72 69 6e 67 3d 66 75 6e 63  s.getString=func
16670 74 69 6f 6e 28 29 7b 72 65 74 75 72 6e 20 74 68  tion(){return th
16680 69 73 2e 73 7d 3b 74 68 69 73 2e 73 65 74 53 74  is.s};this.setSt
16690 72 69 6e 67 3d 66 75 6e 63 74 69 6f 6e 28 64 29  ring=function(d)
166a0 7b 74 68 69 73 2e 68 54 4c 56 3d 6e 75 6c 6c 3b  {this.hTLV=null;
166b0 74 68 69 73 2e 69 73 4d 6f 64 69 66 69 65 64 3d  this.isModified=
166c0 74 72 75 65 3b 74 68 69 73 2e 73 3d 64 3b 74 68  true;this.s=d;th
166d0 69 73 2e 68 56 3d 73 74 6f 68 65 78 28 74 68 69  is.hV=stohex(thi
166e0 73 2e 73 29 7d 3b 74 68 69 73 2e 73 65 74 53 74  s.s)};this.setSt
166f0 72 69 6e 67 48 65 78 3d 66 75 6e 63 74 69 6f 6e  ringHex=function
16700 28 64 29 7b 74 68 69 73 2e 68 54 4c 56 3d 6e 75  (d){this.hTLV=nu
16710 6c 6c 3b 74 68 69 73 2e 69 73 4d 6f 64 69 66 69  ll;this.isModifi
16720 65 64 3d 74 72 75 65 3b 74 68 69 73 2e 73 3d 6e  ed=true;this.s=n
16730 75 6c 6c 3b 74 68 69 73 2e 68 56 3d 64 7d 3b 74  ull;this.hV=d};t
16740 68 69 73 2e 67 65 74 46 72 65 73 68 56 61 6c 75  his.getFreshValu
16750 65 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29 7b  eHex=function(){
16760 72 65 74 75 72 6e 20 74 68 69 73 2e 68 56 7d 3b  return this.hV};
16770 69 66 28 74 79 70 65 6f 66 20 63 21 3d 22 75 6e  if(typeof c!="un
16780 64 65 66 69 6e 65 64 22 29 7b 69 66 28 74 79 70  defined"){if(typ
16790 65 6f 66 20 63 3d 3d 22 73 74 72 69 6e 67 22 29  eof c=="string")
167a0 7b 74 68 69 73 2e 73 65 74 53 74 72 69 6e 67 28  {this.setString(
167b0 63 29 7d 65 6c 73 65 7b 69 66 28 74 79 70 65 6f  c)}else{if(typeo
167c0 66 20 63 2e 73 74 72 21 3d 22 75 6e 64 65 66 69  f c.str!="undefi
167d0 6e 65 64 22 29 7b 74 68 69 73 2e 73 65 74 53 74  ned"){this.setSt
167e0 72 69 6e 67 28 63 2e 73 74 72 29 7d 65 6c 73 65  ring(c.str)}else
167f0 7b 69 66 28 74 79 70 65 6f 66 20 63 2e 68 65 78  {if(typeof c.hex
16800 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74  !="undefined"){t
16810 68 69 73 2e 73 65 74 53 74 72 69 6e 67 48 65 78  his.setStringHex
16820 28 63 2e 68 65 78 29 7d 7d 7d 7d 7d 3b 59 41 48  (c.hex)}}}}};YAH
16830 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b  OO.lang.extend(K
16840 4a 55 52 2e 61 73 6e 31 2e 44 45 52 41 62 73 74  JUR.asn1.DERAbst
16850 72 61 63 74 53 74 72 69 6e 67 2c 4b 4a 55 52 2e  ractString,KJUR.
16860 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74 29  asn1.ASN1Object)
16870 3b 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 41 62  ;KJUR.asn1.DERAb
16880 73 74 72 61 63 74 54 69 6d 65 3d 66 75 6e 63 74  stractTime=funct
16890 69 6f 6e 28 63 29 7b 4b 4a 55 52 2e 61 73 6e 31  ion(c){KJUR.asn1
168a0 2e 44 45 52 41 62 73 74 72 61 63 74 54 69 6d 65  .DERAbstractTime
168b0 2e 73 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73  .superclass.cons
168c0 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69  tructor.call(thi
168d0 73 29 3b 76 61 72 20 62 3d 6e 75 6c 6c 3b 76 61  s);var b=null;va
168e0 72 20 61 3d 6e 75 6c 6c 3b 74 68 69 73 2e 6c 6f  r a=null;this.lo
168f0 63 61 6c 44 61 74 65 54 6f 55 54 43 3d 66 75 6e  calDateToUTC=fun
16900 63 74 69 6f 6e 28 66 29 7b 75 74 63 3d 66 2e 67  ction(f){utc=f.g
16910 65 74 54 69 6d 65 28 29 2b 28 66 2e 67 65 74 54  etTime()+(f.getT
16920 69 6d 65 7a 6f 6e 65 4f 66 66 73 65 74 28 29 2a  imezoneOffset()*
16930 36 30 30 30 30 29 3b 76 61 72 20 65 3d 6e 65 77  60000);var e=new
16940 20 44 61 74 65 28 75 74 63 29 3b 72 65 74 75 72   Date(utc);retur
16950 6e 20 65 7d 3b 74 68 69 73 2e 66 6f 72 6d 61 74  n e};this.format
16960 44 61 74 65 3d 66 75 6e 63 74 69 6f 6e 28 6d 2c  Date=function(m,
16970 6f 2c 65 29 7b 76 61 72 20 67 3d 74 68 69 73 2e  o,e){var g=this.
16980 7a 65 72 6f 50 61 64 64 69 6e 67 3b 76 61 72 20  zeroPadding;var 
16990 6e 3d 74 68 69 73 2e 6c 6f 63 61 6c 44 61 74 65  n=this.localDate
169a0 54 6f 55 54 43 28 6d 29 3b 76 61 72 20 70 3d 53  ToUTC(m);var p=S
169b0 74 72 69 6e 67 28 6e 2e 67 65 74 46 75 6c 6c 59  tring(n.getFullY
169c0 65 61 72 28 29 29 3b 69 66 28 6f 3d 3d 22 75 74  ear());if(o=="ut
169d0 63 22 29 7b 70 3d 70 2e 73 75 62 73 74 72 28 32  c"){p=p.substr(2
169e0 2c 32 29 7d 76 61 72 20 6c 3d 67 28 53 74 72 69  ,2)}var l=g(Stri
169f0 6e 67 28 6e 2e 67 65 74 4d 6f 6e 74 68 28 29 2b  ng(n.getMonth()+
16a00 31 29 2c 32 29 3b 76 61 72 20 71 3d 67 28 53 74  1),2);var q=g(St
16a10 72 69 6e 67 28 6e 2e 67 65 74 44 61 74 65 28 29  ring(n.getDate()
16a20 29 2c 32 29 3b 76 61 72 20 68 3d 67 28 53 74 72  ),2);var h=g(Str
16a30 69 6e 67 28 6e 2e 67 65 74 48 6f 75 72 73 28 29  ing(n.getHours()
16a40 29 2c 32 29 3b 76 61 72 20 69 3d 67 28 53 74 72  ),2);var i=g(Str
16a50 69 6e 67 28 6e 2e 67 65 74 4d 69 6e 75 74 65 73  ing(n.getMinutes
16a60 28 29 29 2c 32 29 3b 76 61 72 20 6a 3d 67 28 53  ()),2);var j=g(S
16a70 74 72 69 6e 67 28 6e 2e 67 65 74 53 65 63 6f 6e  tring(n.getSecon
16a80 64 73 28 29 29 2c 32 29 3b 76 61 72 20 72 3d 70  ds()),2);var r=p
16a90 2b 6c 2b 71 2b 68 2b 69 2b 6a 3b 69 66 28 65 3d  +l+q+h+i+j;if(e=
16aa0 3d 3d 74 72 75 65 29 7b 76 61 72 20 66 3d 6e 2e  ==true){var f=n.
16ab0 67 65 74 4d 69 6c 6c 69 73 65 63 6f 6e 64 73 28  getMilliseconds(
16ac0 29 3b 69 66 28 66 21 3d 30 29 7b 76 61 72 20 6b  );if(f!=0){var k
16ad0 3d 67 28 53 74 72 69 6e 67 28 66 29 2c 33 29 3b  =g(String(f),3);
16ae0 6b 3d 6b 2e 72 65 70 6c 61 63 65 28 2f 5b 30 5d  k=k.replace(/[0]
16af0 2b 24 2f 2c 22 22 29 3b 72 3d 72 2b 22 2e 22 2b  +$/,"");r=r+"."+
16b00 6b 7d 7d 72 65 74 75 72 6e 20 72 2b 22 5a 22 7d  k}}return r+"Z"}
16b10 3b 74 68 69 73 2e 7a 65 72 6f 50 61 64 64 69 6e  ;this.zeroPaddin
16b20 67 3d 66 75 6e 63 74 69 6f 6e 28 65 2c 64 29 7b  g=function(e,d){
16b30 69 66 28 65 2e 6c 65 6e 67 74 68 3e 3d 64 29 7b  if(e.length>=d){
16b40 72 65 74 75 72 6e 20 65 7d 72 65 74 75 72 6e 20  return e}return 
16b50 6e 65 77 20 41 72 72 61 79 28 64 2d 65 2e 6c 65  new Array(d-e.le
16b60 6e 67 74 68 2b 31 29 2e 6a 6f 69 6e 28 22 30 22  ngth+1).join("0"
16b70 29 2b 65 7d 3b 74 68 69 73 2e 67 65 74 53 74 72  )+e};this.getStr
16b80 69 6e 67 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 72  ing=function(){r
16b90 65 74 75 72 6e 20 74 68 69 73 2e 73 7d 3b 74 68  eturn this.s};th
16ba0 69 73 2e 73 65 74 53 74 72 69 6e 67 3d 66 75 6e  is.setString=fun
16bb0 63 74 69 6f 6e 28 64 29 7b 74 68 69 73 2e 68 54  ction(d){this.hT
16bc0 4c 56 3d 6e 75 6c 6c 3b 74 68 69 73 2e 69 73 4d  LV=null;this.isM
16bd0 6f 64 69 66 69 65 64 3d 74 72 75 65 3b 74 68 69  odified=true;thi
16be0 73 2e 73 3d 64 3b 74 68 69 73 2e 68 56 3d 73 74  s.s=d;this.hV=st
16bf0 6f 68 65 78 28 64 29 7d 3b 74 68 69 73 2e 73 65  ohex(d)};this.se
16c00 74 42 79 44 61 74 65 56 61 6c 75 65 3d 66 75 6e  tByDateValue=fun
16c10 63 74 69 6f 6e 28 68 2c 6a 2c 65 2c 64 2c 66 2c  ction(h,j,e,d,f,
16c20 67 29 7b 76 61 72 20 69 3d 6e 65 77 20 44 61 74  g){var i=new Dat
16c30 65 28 44 61 74 65 2e 55 54 43 28 68 2c 6a 2d 31  e(Date.UTC(h,j-1
16c40 2c 65 2c 64 2c 66 2c 67 2c 30 29 29 3b 74 68 69  ,e,d,f,g,0));thi
16c50 73 2e 73 65 74 42 79 44 61 74 65 28 69 29 7d 3b  s.setByDate(i)};
16c60 74 68 69 73 2e 67 65 74 46 72 65 73 68 56 61 6c  this.getFreshVal
16c70 75 65 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29  ueHex=function()
16c80 7b 72 65 74 75 72 6e 20 74 68 69 73 2e 68 56 7d  {return this.hV}
16c90 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74  };YAHOO.lang.ext
16ca0 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  end(KJUR.asn1.DE
16cb0 52 41 62 73 74 72 61 63 74 54 69 6d 65 2c 4b 4a  RAbstractTime,KJ
16cc0 55 52 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65  UR.asn1.ASN1Obje
16cd0 63 74 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  ct);KJUR.asn1.DE
16ce0 52 41 62 73 74 72 61 63 74 53 74 72 75 63 74 75  RAbstractStructu
16cf0 72 65 64 3d 66 75 6e 63 74 69 6f 6e 28 62 29 7b  red=function(b){
16d00 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 41 62 73  KJUR.asn1.DERAbs
16d10 74 72 61 63 74 53 74 72 69 6e 67 2e 73 75 70 65  tractString.supe
16d20 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63 74  rclass.construct
16d30 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29 3b 76 61  or.call(this);va
16d40 72 20 61 3d 6e 75 6c 6c 3b 74 68 69 73 2e 73 65  r a=null;this.se
16d50 74 42 79 41 53 4e 31 4f 62 6a 65 63 74 41 72 72  tByASN1ObjectArr
16d60 61 79 3d 66 75 6e 63 74 69 6f 6e 28 63 29 7b 74  ay=function(c){t
16d70 68 69 73 2e 68 54 4c 56 3d 6e 75 6c 6c 3b 74 68  his.hTLV=null;th
16d80 69 73 2e 69 73 4d 6f 64 69 66 69 65 64 3d 74 72  is.isModified=tr
16d90 75 65 3b 74 68 69 73 2e 61 73 6e 31 41 72 72 61  ue;this.asn1Arra
16da0 79 3d 63 7d 3b 74 68 69 73 2e 61 70 70 65 6e 64  y=c};this.append
16db0 41 53 4e 31 4f 62 6a 65 63 74 3d 66 75 6e 63 74  ASN1Object=funct
16dc0 69 6f 6e 28 63 29 7b 74 68 69 73 2e 68 54 4c 56  ion(c){this.hTLV
16dd0 3d 6e 75 6c 6c 3b 74 68 69 73 2e 69 73 4d 6f 64  =null;this.isMod
16de0 69 66 69 65 64 3d 74 72 75 65 3b 74 68 69 73 2e  ified=true;this.
16df0 61 73 6e 31 41 72 72 61 79 2e 70 75 73 68 28 63  asn1Array.push(c
16e00 29 7d 3b 74 68 69 73 2e 61 73 6e 31 41 72 72 61  )};this.asn1Arra
16e10 79 3d 6e 65 77 20 41 72 72 61 79 28 29 3b 69 66  y=new Array();if
16e20 28 74 79 70 65 6f 66 20 62 21 3d 22 75 6e 64 65  (typeof b!="unde
16e30 66 69 6e 65 64 22 29 7b 69 66 28 74 79 70 65 6f  fined"){if(typeo
16e40 66 20 62 2e 61 72 72 61 79 21 3d 22 75 6e 64 65  f b.array!="unde
16e50 66 69 6e 65 64 22 29 7b 74 68 69 73 2e 61 73 6e  fined"){this.asn
16e60 31 41 72 72 61 79 3d 62 2e 61 72 72 61 79 7d 7d  1Array=b.array}}
16e70 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74  };YAHOO.lang.ext
16e80 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  end(KJUR.asn1.DE
16e90 52 41 62 73 74 72 61 63 74 53 74 72 75 63 74 75  RAbstractStructu
16ea0 72 65 64 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41 53  red,KJUR.asn1.AS
16eb0 4e 31 4f 62 6a 65 63 74 29 3b 4b 4a 55 52 2e 61  N1Object);KJUR.a
16ec0 73 6e 31 2e 44 45 52 42 6f 6f 6c 65 61 6e 3d 66  sn1.DERBoolean=f
16ed0 75 6e 63 74 69 6f 6e 28 29 7b 4b 4a 55 52 2e 61  unction(){KJUR.a
16ee0 73 6e 31 2e 44 45 52 42 6f 6f 6c 65 61 6e 2e 73  sn1.DERBoolean.s
16ef0 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72  uperclass.constr
16f00 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29  uctor.call(this)
16f10 3b 74 68 69 73 2e 68 54 3d 22 30 31 22 3b 74 68  ;this.hT="01";th
16f20 69 73 2e 68 54 4c 56 3d 22 30 31 30 31 66 66 22  is.hTLV="0101ff"
16f30 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74  };YAHOO.lang.ext
16f40 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  end(KJUR.asn1.DE
16f50 52 42 6f 6f 6c 65 61 6e 2c 4b 4a 55 52 2e 61 73  RBoolean,KJUR.as
16f60 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74 29 3b 4b  n1.ASN1Object);K
16f70 4a 55 52 2e 61 73 6e 31 2e 44 45 52 49 6e 74 65  JUR.asn1.DERInte
16f80 67 65 72 3d 66 75 6e 63 74 69 6f 6e 28 61 29 7b  ger=function(a){
16f90 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 49 6e 74  KJUR.asn1.DERInt
16fa0 65 67 65 72 2e 73 75 70 65 72 63 6c 61 73 73 2e  eger.superclass.
16fb0 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c 6c  constructor.call
16fc0 28 74 68 69 73 29 3b 74 68 69 73 2e 68 54 3d 22  (this);this.hT="
16fd0 30 32 22 3b 74 68 69 73 2e 73 65 74 42 79 42 69  02";this.setByBi
16fe0 67 49 6e 74 65 67 65 72 3d 66 75 6e 63 74 69 6f  gInteger=functio
16ff0 6e 28 62 29 7b 74 68 69 73 2e 68 54 4c 56 3d 6e  n(b){this.hTLV=n
17000 75 6c 6c 3b 74 68 69 73 2e 69 73 4d 6f 64 69 66  ull;this.isModif
17010 69 65 64 3d 74 72 75 65 3b 74 68 69 73 2e 68 56  ied=true;this.hV
17020 3d 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 55  =KJUR.asn1.ASN1U
17030 74 69 6c 2e 62 69 67 49 6e 74 54 6f 4d 69 6e 54  til.bigIntToMinT
17040 77 6f 73 43 6f 6d 70 6c 65 6d 65 6e 74 73 48 65  wosComplementsHe
17050 78 28 62 29 7d 3b 74 68 69 73 2e 73 65 74 42 79  x(b)};this.setBy
17060 49 6e 74 65 67 65 72 3d 66 75 6e 63 74 69 6f 6e  Integer=function
17070 28 63 29 7b 76 61 72 20 62 3d 6e 65 77 20 42 69  (c){var b=new Bi
17080 67 49 6e 74 65 67 65 72 28 53 74 72 69 6e 67 28  gInteger(String(
17090 63 29 2c 31 30 29 3b 74 68 69 73 2e 73 65 74 42  c),10);this.setB
170a0 79 42 69 67 49 6e 74 65 67 65 72 28 62 29 7d 3b  yBigInteger(b)};
170b0 74 68 69 73 2e 73 65 74 56 61 6c 75 65 48 65 78  this.setValueHex
170c0 3d 66 75 6e 63 74 69 6f 6e 28 62 29 7b 74 68 69  =function(b){thi
170d0 73 2e 68 56 3d 62 7d 3b 74 68 69 73 2e 67 65 74  s.hV=b};this.get
170e0 46 72 65 73 68 56 61 6c 75 65 48 65 78 3d 66 75  FreshValueHex=fu
170f0 6e 63 74 69 6f 6e 28 29 7b 72 65 74 75 72 6e 20  nction(){return 
17100 74 68 69 73 2e 68 56 7d 3b 69 66 28 74 79 70 65  this.hV};if(type
17110 6f 66 20 61 21 3d 22 75 6e 64 65 66 69 6e 65 64  of a!="undefined
17120 22 29 7b 69 66 28 74 79 70 65 6f 66 20 61 2e 62  "){if(typeof a.b
17130 69 67 69 6e 74 21 3d 22 75 6e 64 65 66 69 6e 65  igint!="undefine
17140 64 22 29 7b 74 68 69 73 2e 73 65 74 42 79 42 69  d"){this.setByBi
17150 67 49 6e 74 65 67 65 72 28 61 2e 62 69 67 69 6e  gInteger(a.bigin
17160 74 29 7d 65 6c 73 65 7b 69 66 28 74 79 70 65 6f  t)}else{if(typeo
17170 66 20 61 5b 22 69 6e 74 22 5d 21 3d 22 75 6e 64  f a["int"]!="und
17180 65 66 69 6e 65 64 22 29 7b 74 68 69 73 2e 73 65  efined"){this.se
17190 74 42 79 49 6e 74 65 67 65 72 28 61 5b 22 69 6e  tByInteger(a["in
171a0 74 22 5d 29 7d 65 6c 73 65 7b 69 66 28 74 79 70  t"])}else{if(typ
171b0 65 6f 66 20 61 3d 3d 22 6e 75 6d 62 65 72 22 29  eof a=="number")
171c0 7b 74 68 69 73 2e 73 65 74 42 79 49 6e 74 65 67  {this.setByInteg
171d0 65 72 28 61 29 7d 65 6c 73 65 7b 69 66 28 74 79  er(a)}else{if(ty
171e0 70 65 6f 66 20 61 2e 68 65 78 21 3d 22 75 6e 64  peof a.hex!="und
171f0 65 66 69 6e 65 64 22 29 7b 74 68 69 73 2e 73 65  efined"){this.se
17200 74 56 61 6c 75 65 48 65 78 28 61 2e 68 65 78 29  tValueHex(a.hex)
17210 7d 7d 7d 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e  }}}}}};YAHOO.lan
17220 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73  g.extend(KJUR.as
17230 6e 31 2e 44 45 52 49 6e 74 65 67 65 72 2c 4b 4a  n1.DERInteger,KJ
17240 55 52 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65  UR.asn1.ASN1Obje
17250 63 74 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  ct);KJUR.asn1.DE
17260 52 42 69 74 53 74 72 69 6e 67 3d 66 75 6e 63 74  RBitString=funct
17270 69 6f 6e 28 61 29 7b 4b 4a 55 52 2e 61 73 6e 31  ion(a){KJUR.asn1
17280 2e 44 45 52 42 69 74 53 74 72 69 6e 67 2e 73 75  .DERBitString.su
17290 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75  perclass.constru
172a0 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29 3b  ctor.call(this);
172b0 74 68 69 73 2e 68 54 3d 22 30 33 22 3b 74 68 69  this.hT="03";thi
172c0 73 2e 73 65 74 48 65 78 56 61 6c 75 65 49 6e 63  s.setHexValueInc
172d0 6c 75 64 69 6e 67 55 6e 75 73 65 64 42 69 74 73  ludingUnusedBits
172e0 3d 66 75 6e 63 74 69 6f 6e 28 62 29 7b 74 68 69  =function(b){thi
172f0 73 2e 68 54 4c 56 3d 6e 75 6c 6c 3b 74 68 69 73  s.hTLV=null;this
17300 2e 69 73 4d 6f 64 69 66 69 65 64 3d 74 72 75 65  .isModified=true
17310 3b 74 68 69 73 2e 68 56 3d 62 7d 3b 74 68 69 73  ;this.hV=b};this
17320 2e 73 65 74 55 6e 75 73 65 64 42 69 74 73 41 6e  .setUnusedBitsAn
17330 64 48 65 78 56 61 6c 75 65 3d 66 75 6e 63 74 69  dHexValue=functi
17340 6f 6e 28 62 2c 64 29 7b 69 66 28 62 3c 30 7c 7c  on(b,d){if(b<0||
17350 37 3c 62 29 7b 74 68 72 6f 77 22 75 6e 75 73 65  7<b){throw"unuse
17360 64 20 62 69 74 73 20 73 68 61 6c 6c 20 62 65 20  d bits shall be 
17370 66 72 6f 6d 20 30 20 74 6f 20 37 3a 20 75 20 3d  from 0 to 7: u =
17380 20 22 2b 62 7d 76 61 72 20 63 3d 22 30 22 2b 62   "+b}var c="0"+b
17390 3b 74 68 69 73 2e 68 54 4c 56 3d 6e 75 6c 6c 3b  ;this.hTLV=null;
173a0 74 68 69 73 2e 69 73 4d 6f 64 69 66 69 65 64 3d  this.isModified=
173b0 74 72 75 65 3b 74 68 69 73 2e 68 56 3d 63 2b 64  true;this.hV=c+d
173c0 7d 3b 74 68 69 73 2e 73 65 74 42 79 42 69 6e 61  };this.setByBina
173d0 72 79 53 74 72 69 6e 67 3d 66 75 6e 63 74 69 6f  ryString=functio
173e0 6e 28 65 29 7b 65 3d 65 2e 72 65 70 6c 61 63 65  n(e){e=e.replace
173f0 28 2f 30 2b 24 2f 2c 22 22 29 3b 76 61 72 20 66  (/0+$/,"");var f
17400 3d 38 2d 65 2e 6c 65 6e 67 74 68 25 38 3b 69 66  =8-e.length%8;if
17410 28 66 3d 3d 38 29 7b 66 3d 30 7d 66 6f 72 28 76  (f==8){f=0}for(v
17420 61 72 20 67 3d 30 3b 67 3c 3d 66 3b 67 2b 2b 29  ar g=0;g<=f;g++)
17430 7b 65 2b 3d 22 30 22 7d 76 61 72 20 6a 3d 22 22  {e+="0"}var j=""
17440 3b 66 6f 72 28 76 61 72 20 67 3d 30 3b 67 3c 65  ;for(var g=0;g<e
17450 2e 6c 65 6e 67 74 68 2d 31 3b 67 2b 3d 38 29 7b  .length-1;g+=8){
17460 76 61 72 20 64 3d 65 2e 73 75 62 73 74 72 28 67  var d=e.substr(g
17470 2c 38 29 3b 76 61 72 20 63 3d 70 61 72 73 65 49  ,8);var c=parseI
17480 6e 74 28 64 2c 32 29 2e 74 6f 53 74 72 69 6e 67  nt(d,2).toString
17490 28 31 36 29 3b 69 66 28 63 2e 6c 65 6e 67 74 68  (16);if(c.length
174a0 3d 3d 31 29 7b 63 3d 22 30 22 2b 63 7d 6a 2b 3d  ==1){c="0"+c}j+=
174b0 63 7d 74 68 69 73 2e 68 54 4c 56 3d 6e 75 6c 6c  c}this.hTLV=null
174c0 3b 74 68 69 73 2e 69 73 4d 6f 64 69 66 69 65 64  ;this.isModified
174d0 3d 74 72 75 65 3b 74 68 69 73 2e 68 56 3d 22 30  =true;this.hV="0
174e0 22 2b 66 2b 6a 7d 3b 74 68 69 73 2e 73 65 74 42  "+f+j};this.setB
174f0 79 42 6f 6f 6c 65 61 6e 41 72 72 61 79 3d 66 75  yBooleanArray=fu
17500 6e 63 74 69 6f 6e 28 64 29 7b 76 61 72 20 63 3d  nction(d){var c=
17510 22 22 3b 66 6f 72 28 76 61 72 20 62 3d 30 3b 62  "";for(var b=0;b
17520 3c 64 2e 6c 65 6e 67 74 68 3b 62 2b 2b 29 7b 69  <d.length;b++){i
17530 66 28 64 5b 62 5d 3d 3d 74 72 75 65 29 7b 63 2b  f(d[b]==true){c+
17540 3d 22 31 22 7d 65 6c 73 65 7b 63 2b 3d 22 30 22  ="1"}else{c+="0"
17550 7d 7d 74 68 69 73 2e 73 65 74 42 79 42 69 6e 61  }}this.setByBina
17560 72 79 53 74 72 69 6e 67 28 63 29 7d 3b 74 68 69  ryString(c)};thi
17570 73 2e 6e 65 77 46 61 6c 73 65 41 72 72 61 79 3d  s.newFalseArray=
17580 66 75 6e 63 74 69 6f 6e 28 64 29 7b 76 61 72 20  function(d){var 
17590 62 3d 6e 65 77 20 41 72 72 61 79 28 64 29 3b 66  b=new Array(d);f
175a0 6f 72 28 76 61 72 20 63 3d 30 3b 63 3c 64 3b 63  or(var c=0;c<d;c
175b0 2b 2b 29 7b 62 5b 63 5d 3d 66 61 6c 73 65 7d 72  ++){b[c]=false}r
175c0 65 74 75 72 6e 20 62 7d 3b 74 68 69 73 2e 67 65  eturn b};this.ge
175d0 74 46 72 65 73 68 56 61 6c 75 65 48 65 78 3d 66  tFreshValueHex=f
175e0 75 6e 63 74 69 6f 6e 28 29 7b 72 65 74 75 72 6e  unction(){return
175f0 20 74 68 69 73 2e 68 56 7d 3b 69 66 28 74 79 70   this.hV};if(typ
17600 65 6f 66 20 61 21 3d 22 75 6e 64 65 66 69 6e 65  eof a!="undefine
17610 64 22 29 7b 69 66 28 74 79 70 65 6f 66 20 61 3d  d"){if(typeof a=
17620 3d 22 73 74 72 69 6e 67 22 26 26 61 2e 74 6f 4c  ="string"&&a.toL
17630 6f 77 65 72 43 61 73 65 28 29 2e 6d 61 74 63 68  owerCase().match
17640 28 2f 5e 5b 30 2d 39 61 2d 66 5d 2b 24 2f 29 29  (/^[0-9a-f]+$/))
17650 7b 74 68 69 73 2e 73 65 74 48 65 78 56 61 6c 75  {this.setHexValu
17660 65 49 6e 63 6c 75 64 69 6e 67 55 6e 75 73 65 64  eIncludingUnused
17670 42 69 74 73 28 61 29 7d 65 6c 73 65 7b 69 66 28  Bits(a)}else{if(
17680 74 79 70 65 6f 66 20 61 2e 68 65 78 21 3d 22 75  typeof a.hex!="u
17690 6e 64 65 66 69 6e 65 64 22 29 7b 74 68 69 73 2e  ndefined"){this.
176a0 73 65 74 48 65 78 56 61 6c 75 65 49 6e 63 6c 75  setHexValueInclu
176b0 64 69 6e 67 55 6e 75 73 65 64 42 69 74 73 28 61  dingUnusedBits(a
176c0 2e 68 65 78 29 7d 65 6c 73 65 7b 69 66 28 74 79  .hex)}else{if(ty
176d0 70 65 6f 66 20 61 2e 62 69 6e 21 3d 22 75 6e 64  peof a.bin!="und
176e0 65 66 69 6e 65 64 22 29 7b 74 68 69 73 2e 73 65  efined"){this.se
176f0 74 42 79 42 69 6e 61 72 79 53 74 72 69 6e 67 28  tByBinaryString(
17700 61 2e 62 69 6e 29 7d 65 6c 73 65 7b 69 66 28 74  a.bin)}else{if(t
17710 79 70 65 6f 66 20 61 2e 61 72 72 61 79 21 3d 22  ypeof a.array!="
17720 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68 69 73  undefined"){this
17730 2e 73 65 74 42 79 42 6f 6f 6c 65 61 6e 41 72 72  .setByBooleanArr
17740 61 79 28 61 2e 61 72 72 61 79 29 7d 7d 7d 7d 7d  ay(a.array)}}}}}
17750 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74  };YAHOO.lang.ext
17760 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  end(KJUR.asn1.DE
17770 52 42 69 74 53 74 72 69 6e 67 2c 4b 4a 55 52 2e  RBitString,KJUR.
17780 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74 29  asn1.ASN1Object)
17790 3b 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 4f 63  ;KJUR.asn1.DEROc
177a0 74 65 74 53 74 72 69 6e 67 3d 66 75 6e 63 74 69  tetString=functi
177b0 6f 6e 28 61 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e  on(a){KJUR.asn1.
177c0 44 45 52 4f 63 74 65 74 53 74 72 69 6e 67 2e 73  DEROctetString.s
177d0 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72  uperclass.constr
177e0 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 2c  uctor.call(this,
177f0 61 29 3b 74 68 69 73 2e 68 54 3d 22 30 34 22 7d  a);this.hT="04"}
17800 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65  ;YAHOO.lang.exte
17810 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52  nd(KJUR.asn1.DER
17820 4f 63 74 65 74 53 74 72 69 6e 67 2c 4b 4a 55 52  OctetString,KJUR
17830 2e 61 73 6e 31 2e 44 45 52 41 62 73 74 72 61 63  .asn1.DERAbstrac
17840 74 53 74 72 69 6e 67 29 3b 4b 4a 55 52 2e 61 73  tString);KJUR.as
17850 6e 31 2e 44 45 52 4e 75 6c 6c 3d 66 75 6e 63 74  n1.DERNull=funct
17860 69 6f 6e 28 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e  ion(){KJUR.asn1.
17870 44 45 52 4e 75 6c 6c 2e 73 75 70 65 72 63 6c 61  DERNull.supercla
17880 73 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63  ss.constructor.c
17890 61 6c 6c 28 74 68 69 73 29 3b 74 68 69 73 2e 68  all(this);this.h
178a0 54 3d 22 30 35 22 3b 74 68 69 73 2e 68 54 4c 56  T="05";this.hTLV
178b0 3d 22 30 35 30 30 22 7d 3b 59 41 48 4f 4f 2e 6c  ="0500"};YAHOO.l
178c0 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e  ang.extend(KJUR.
178d0 61 73 6e 31 2e 44 45 52 4e 75 6c 6c 2c 4b 4a 55  asn1.DERNull,KJU
178e0 52 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63  R.asn1.ASN1Objec
178f0 74 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52  t);KJUR.asn1.DER
17900 4f 62 6a 65 63 74 49 64 65 6e 74 69 66 69 65 72  ObjectIdentifier
17910 3d 66 75 6e 63 74 69 6f 6e 28 63 29 7b 76 61 72  =function(c){var
17920 20 62 3d 66 75 6e 63 74 69 6f 6e 28 64 29 7b 76   b=function(d){v
17930 61 72 20 65 3d 64 2e 74 6f 53 74 72 69 6e 67 28  ar e=d.toString(
17940 31 36 29 3b 69 66 28 65 2e 6c 65 6e 67 74 68 3d  16);if(e.length=
17950 3d 31 29 7b 65 3d 22 30 22 2b 65 7d 72 65 74 75  =1){e="0"+e}retu
17960 72 6e 20 65 7d 3b 76 61 72 20 61 3d 66 75 6e 63  rn e};var a=func
17970 74 69 6f 6e 28 6b 29 7b 76 61 72 20 6a 3d 22 22  tion(k){var j=""
17980 3b 76 61 72 20 65 3d 6e 65 77 20 42 69 67 49 6e  ;var e=new BigIn
17990 74 65 67 65 72 28 6b 2c 31 30 29 3b 76 61 72 20  teger(k,10);var 
179a0 64 3d 65 2e 74 6f 53 74 72 69 6e 67 28 32 29 3b  d=e.toString(2);
179b0 76 61 72 20 66 3d 37 2d 64 2e 6c 65 6e 67 74 68  var f=7-d.length
179c0 25 37 3b 69 66 28 66 3d 3d 37 29 7b 66 3d 30 7d  %7;if(f==7){f=0}
179d0 76 61 72 20 6d 3d 22 22 3b 66 6f 72 28 76 61 72  var m="";for(var
179e0 20 67 3d 30 3b 67 3c 66 3b 67 2b 2b 29 7b 6d 2b   g=0;g<f;g++){m+
179f0 3d 22 30 22 7d 64 3d 6d 2b 64 3b 66 6f 72 28 76  ="0"}d=m+d;for(v
17a00 61 72 20 67 3d 30 3b 67 3c 64 2e 6c 65 6e 67 74  ar g=0;g<d.lengt
17a10 68 2d 31 3b 67 2b 3d 37 29 7b 76 61 72 20 6c 3d  h-1;g+=7){var l=
17a20 64 2e 73 75 62 73 74 72 28 67 2c 37 29 3b 69 66  d.substr(g,7);if
17a30 28 67 21 3d 64 2e 6c 65 6e 67 74 68 2d 37 29 7b  (g!=d.length-7){
17a40 6c 3d 22 31 22 2b 6c 7d 6a 2b 3d 62 28 70 61 72  l="1"+l}j+=b(par
17a50 73 65 49 6e 74 28 6c 2c 32 29 29 7d 72 65 74 75  seInt(l,2))}retu
17a60 72 6e 20 6a 7d 3b 4b 4a 55 52 2e 61 73 6e 31 2e  rn j};KJUR.asn1.
17a70 44 45 52 4f 62 6a 65 63 74 49 64 65 6e 74 69 66  DERObjectIdentif
17a80 69 65 72 2e 73 75 70 65 72 63 6c 61 73 73 2e 63  ier.superclass.c
17a90 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28  onstructor.call(
17aa0 74 68 69 73 29 3b 74 68 69 73 2e 68 54 3d 22 30  this);this.hT="0
17ab0 36 22 3b 74 68 69 73 2e 73 65 74 56 61 6c 75 65  6";this.setValue
17ac0 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 64 29 7b  Hex=function(d){
17ad0 74 68 69 73 2e 68 54 4c 56 3d 6e 75 6c 6c 3b 74  this.hTLV=null;t
17ae0 68 69 73 2e 69 73 4d 6f 64 69 66 69 65 64 3d 74  his.isModified=t
17af0 72 75 65 3b 74 68 69 73 2e 73 3d 6e 75 6c 6c 3b  rue;this.s=null;
17b00 74 68 69 73 2e 68 56 3d 64 7d 3b 74 68 69 73 2e  this.hV=d};this.
17b10 73 65 74 56 61 6c 75 65 4f 69 64 53 74 72 69 6e  setValueOidStrin
17b20 67 3d 66 75 6e 63 74 69 6f 6e 28 66 29 7b 69 66  g=function(f){if
17b30 28 21 66 2e 6d 61 74 63 68 28 2f 5e 5b 30 2d 39  (!f.match(/^[0-9
17b40 2e 5d 2b 24 2f 29 29 7b 74 68 72 6f 77 22 6d 61  .]+$/)){throw"ma
17b50 6c 66 6f 72 6d 65 64 20 6f 69 64 20 73 74 72 69  lformed oid stri
17b60 6e 67 3a 20 22 2b 66 7d 76 61 72 20 67 3d 22 22  ng: "+f}var g=""
17b70 3b 76 61 72 20 64 3d 66 2e 73 70 6c 69 74 28 22  ;var d=f.split("
17b80 2e 22 29 3b 76 61 72 20 6a 3d 70 61 72 73 65 49  .");var j=parseI
17b90 6e 74 28 64 5b 30 5d 29 2a 34 30 2b 70 61 72 73  nt(d[0])*40+pars
17ba0 65 49 6e 74 28 64 5b 31 5d 29 3b 67 2b 3d 62 28  eInt(d[1]);g+=b(
17bb0 6a 29 3b 64 2e 73 70 6c 69 63 65 28 30 2c 32 29  j);d.splice(0,2)
17bc0 3b 66 6f 72 28 76 61 72 20 65 3d 30 3b 65 3c 64  ;for(var e=0;e<d
17bd0 2e 6c 65 6e 67 74 68 3b 65 2b 2b 29 7b 67 2b 3d  .length;e++){g+=
17be0 61 28 64 5b 65 5d 29 7d 74 68 69 73 2e 68 54 4c  a(d[e])}this.hTL
17bf0 56 3d 6e 75 6c 6c 3b 74 68 69 73 2e 69 73 4d 6f  V=null;this.isMo
17c00 64 69 66 69 65 64 3d 74 72 75 65 3b 74 68 69 73  dified=true;this
17c10 2e 73 3d 6e 75 6c 6c 3b 74 68 69 73 2e 68 56 3d  .s=null;this.hV=
17c20 67 7d 3b 74 68 69 73 2e 73 65 74 56 61 6c 75 65  g};this.setValue
17c30 4e 61 6d 65 3d 66 75 6e 63 74 69 6f 6e 28 65 29  Name=function(e)
17c40 7b 69 66 28 74 79 70 65 6f 66 20 4b 4a 55 52 2e  {if(typeof KJUR.
17c50 61 73 6e 31 2e 78 35 30 39 2e 4f 49 44 2e 6e 61  asn1.x509.OID.na
17c60 6d 65 32 6f 69 64 4c 69 73 74 5b 65 5d 21 3d 22  me2oidList[e]!="
17c70 75 6e 64 65 66 69 6e 65 64 22 29 7b 76 61 72 20  undefined"){var 
17c80 64 3d 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39  d=KJUR.asn1.x509
17c90 2e 4f 49 44 2e 6e 61 6d 65 32 6f 69 64 4c 69 73  .OID.name2oidLis
17ca0 74 5b 65 5d 3b 74 68 69 73 2e 73 65 74 56 61 6c  t[e];this.setVal
17cb0 75 65 4f 69 64 53 74 72 69 6e 67 28 64 29 7d 65  ueOidString(d)}e
17cc0 6c 73 65 7b 74 68 72 6f 77 22 44 45 52 4f 62 6a  lse{throw"DERObj
17cd0 65 63 74 49 64 65 6e 74 69 66 69 65 72 20 6f 69  ectIdentifier oi
17ce0 64 4e 61 6d 65 20 75 6e 64 65 66 69 6e 65 64 3a  dName undefined:
17cf0 20 22 2b 65 7d 7d 3b 74 68 69 73 2e 67 65 74 46   "+e}};this.getF
17d00 72 65 73 68 56 61 6c 75 65 48 65 78 3d 66 75 6e  reshValueHex=fun
17d10 63 74 69 6f 6e 28 29 7b 72 65 74 75 72 6e 20 74  ction(){return t
17d20 68 69 73 2e 68 56 7d 3b 69 66 28 74 79 70 65 6f  his.hV};if(typeo
17d30 66 20 63 21 3d 22 75 6e 64 65 66 69 6e 65 64 22  f c!="undefined"
17d40 29 7b 69 66 28 74 79 70 65 6f 66 20 63 3d 3d 22  ){if(typeof c=="
17d50 73 74 72 69 6e 67 22 26 26 63 2e 6d 61 74 63 68  string"&&c.match
17d60 28 2f 5e 5b 30 2d 32 5d 2e 5b 30 2d 39 2e 5d 2b  (/^[0-2].[0-9.]+
17d70 24 2f 29 29 7b 74 68 69 73 2e 73 65 74 56 61 6c  $/)){this.setVal
17d80 75 65 4f 69 64 53 74 72 69 6e 67 28 63 29 7d 65  ueOidString(c)}e
17d90 6c 73 65 7b 69 66 28 4b 4a 55 52 2e 61 73 6e 31  lse{if(KJUR.asn1
17da0 2e 78 35 30 39 2e 4f 49 44 2e 6e 61 6d 65 32 6f  .x509.OID.name2o
17db0 69 64 4c 69 73 74 5b 63 5d 21 3d 3d 75 6e 64 65  idList[c]!==unde
17dc0 66 69 6e 65 64 29 7b 74 68 69 73 2e 73 65 74 56  fined){this.setV
17dd0 61 6c 75 65 4f 69 64 53 74 72 69 6e 67 28 4b 4a  alueOidString(KJ
17de0 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 4f 49 44  UR.asn1.x509.OID
17df0 2e 6e 61 6d 65 32 6f 69 64 4c 69 73 74 5b 63 5d  .name2oidList[c]
17e00 29 7d 65 6c 73 65 7b 69 66 28 74 79 70 65 6f 66  )}else{if(typeof
17e10 20 63 2e 6f 69 64 21 3d 22 75 6e 64 65 66 69 6e   c.oid!="undefin
17e20 65 64 22 29 7b 74 68 69 73 2e 73 65 74 56 61 6c  ed"){this.setVal
17e30 75 65 4f 69 64 53 74 72 69 6e 67 28 63 2e 6f 69  ueOidString(c.oi
17e40 64 29 7d 65 6c 73 65 7b 69 66 28 74 79 70 65 6f  d)}else{if(typeo
17e50 66 20 63 2e 68 65 78 21 3d 22 75 6e 64 65 66 69  f c.hex!="undefi
17e60 6e 65 64 22 29 7b 74 68 69 73 2e 73 65 74 56 61  ned"){this.setVa
17e70 6c 75 65 48 65 78 28 63 2e 68 65 78 29 7d 65 6c  lueHex(c.hex)}el
17e80 73 65 7b 69 66 28 74 79 70 65 6f 66 20 63 2e 6e  se{if(typeof c.n
17e90 61 6d 65 21 3d 22 75 6e 64 65 66 69 6e 65 64 22  ame!="undefined"
17ea0 29 7b 74 68 69 73 2e 73 65 74 56 61 6c 75 65 4e  ){this.setValueN
17eb0 61 6d 65 28 63 2e 6e 61 6d 65 29 7d 7d 7d 7d 7d  ame(c.name)}}}}}
17ec0 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78  }};YAHOO.lang.ex
17ed0 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 44  tend(KJUR.asn1.D
17ee0 45 52 4f 62 6a 65 63 74 49 64 65 6e 74 69 66 69  ERObjectIdentifi
17ef0 65 72 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e  er,KJUR.asn1.ASN
17f00 31 4f 62 6a 65 63 74 29 3b 4b 4a 55 52 2e 61 73  1Object);KJUR.as
17f10 6e 31 2e 44 45 52 45 6e 75 6d 65 72 61 74 65 64  n1.DEREnumerated
17f20 3d 66 75 6e 63 74 69 6f 6e 28 61 29 7b 4b 4a 55  =function(a){KJU
17f30 52 2e 61 73 6e 31 2e 44 45 52 45 6e 75 6d 65 72  R.asn1.DEREnumer
17f40 61 74 65 64 2e 73 75 70 65 72 63 6c 61 73 73 2e  ated.superclass.
17f50 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c 6c  constructor.call
17f60 28 74 68 69 73 29 3b 74 68 69 73 2e 68 54 3d 22  (this);this.hT="
17f70 30 61 22 3b 74 68 69 73 2e 73 65 74 42 79 42 69  0a";this.setByBi
17f80 67 49 6e 74 65 67 65 72 3d 66 75 6e 63 74 69 6f  gInteger=functio
17f90 6e 28 62 29 7b 74 68 69 73 2e 68 54 4c 56 3d 6e  n(b){this.hTLV=n
17fa0 75 6c 6c 3b 74 68 69 73 2e 69 73 4d 6f 64 69 66  ull;this.isModif
17fb0 69 65 64 3d 74 72 75 65 3b 74 68 69 73 2e 68 56  ied=true;this.hV
17fc0 3d 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 55  =KJUR.asn1.ASN1U
17fd0 74 69 6c 2e 62 69 67 49 6e 74 54 6f 4d 69 6e 54  til.bigIntToMinT
17fe0 77 6f 73 43 6f 6d 70 6c 65 6d 65 6e 74 73 48 65  wosComplementsHe
17ff0 78 28 62 29 7d 3b 74 68 69 73 2e 73 65 74 42 79  x(b)};this.setBy
18000 49 6e 74 65 67 65 72 3d 66 75 6e 63 74 69 6f 6e  Integer=function
18010 28 63 29 7b 76 61 72 20 62 3d 6e 65 77 20 42 69  (c){var b=new Bi
18020 67 49 6e 74 65 67 65 72 28 53 74 72 69 6e 67 28  gInteger(String(
18030 63 29 2c 31 30 29 3b 74 68 69 73 2e 73 65 74 42  c),10);this.setB
18040 79 42 69 67 49 6e 74 65 67 65 72 28 62 29 7d 3b  yBigInteger(b)};
18050 74 68 69 73 2e 73 65 74 56 61 6c 75 65 48 65 78  this.setValueHex
18060 3d 66 75 6e 63 74 69 6f 6e 28 62 29 7b 74 68 69  =function(b){thi
18070 73 2e 68 56 3d 62 7d 3b 74 68 69 73 2e 67 65 74  s.hV=b};this.get
18080 46 72 65 73 68 56 61 6c 75 65 48 65 78 3d 66 75  FreshValueHex=fu
18090 6e 63 74 69 6f 6e 28 29 7b 72 65 74 75 72 6e 20  nction(){return 
180a0 74 68 69 73 2e 68 56 7d 3b 69 66 28 74 79 70 65  this.hV};if(type
180b0 6f 66 20 61 21 3d 22 75 6e 64 65 66 69 6e 65 64  of a!="undefined
180c0 22 29 7b 69 66 28 74 79 70 65 6f 66 20 61 5b 22  "){if(typeof a["
180d0 69 6e 74 22 5d 21 3d 22 75 6e 64 65 66 69 6e 65  int"]!="undefine
180e0 64 22 29 7b 74 68 69 73 2e 73 65 74 42 79 49 6e  d"){this.setByIn
180f0 74 65 67 65 72 28 61 5b 22 69 6e 74 22 5d 29 7d  teger(a["int"])}
18100 65 6c 73 65 7b 69 66 28 74 79 70 65 6f 66 20 61  else{if(typeof a
18110 3d 3d 22 6e 75 6d 62 65 72 22 29 7b 74 68 69 73  =="number"){this
18120 2e 73 65 74 42 79 49 6e 74 65 67 65 72 28 61 29  .setByInteger(a)
18130 7d 65 6c 73 65 7b 69 66 28 74 79 70 65 6f 66 20  }else{if(typeof 
18140 61 2e 68 65 78 21 3d 22 75 6e 64 65 66 69 6e 65  a.hex!="undefine
18150 64 22 29 7b 74 68 69 73 2e 73 65 74 56 61 6c 75  d"){this.setValu
18160 65 48 65 78 28 61 2e 68 65 78 29 7d 7d 7d 7d 7d  eHex(a.hex)}}}}}
18170 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65  ;YAHOO.lang.exte
18180 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52  nd(KJUR.asn1.DER
18190 45 6e 75 6d 65 72 61 74 65 64 2c 4b 4a 55 52 2e  Enumerated,KJUR.
181a0 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74 29  asn1.ASN1Object)
181b0 3b 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 55 54  ;KJUR.asn1.DERUT
181c0 46 38 53 74 72 69 6e 67 3d 66 75 6e 63 74 69 6f  F8String=functio
181d0 6e 28 61 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e 44  n(a){KJUR.asn1.D
181e0 45 52 55 54 46 38 53 74 72 69 6e 67 2e 73 75 70  ERUTF8String.sup
181f0 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63  erclass.construc
18200 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 2c 61 29  tor.call(this,a)
18210 3b 74 68 69 73 2e 68 54 3d 22 30 63 22 7d 3b 59  ;this.hT="0c"};Y
18220 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64  AHOO.lang.extend
18230 28 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 55 54  (KJUR.asn1.DERUT
18240 46 38 53 74 72 69 6e 67 2c 4b 4a 55 52 2e 61 73  F8String,KJUR.as
18250 6e 31 2e 44 45 52 41 62 73 74 72 61 63 74 53 74  n1.DERAbstractSt
18260 72 69 6e 67 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e  ring);KJUR.asn1.
18270 44 45 52 4e 75 6d 65 72 69 63 53 74 72 69 6e 67  DERNumericString
18280 3d 66 75 6e 63 74 69 6f 6e 28 61 29 7b 4b 4a 55  =function(a){KJU
18290 52 2e 61 73 6e 31 2e 44 45 52 4e 75 6d 65 72 69  R.asn1.DERNumeri
182a0 63 53 74 72 69 6e 67 2e 73 75 70 65 72 63 6c 61  cString.supercla
182b0 73 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63  ss.constructor.c
182c0 61 6c 6c 28 74 68 69 73 2c 61 29 3b 74 68 69 73  all(this,a);this
182d0 2e 68 54 3d 22 31 32 22 7d 3b 59 41 48 4f 4f 2e  .hT="12"};YAHOO.
182e0 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52  lang.extend(KJUR
182f0 2e 61 73 6e 31 2e 44 45 52 4e 75 6d 65 72 69 63  .asn1.DERNumeric
18300 53 74 72 69 6e 67 2c 4b 4a 55 52 2e 61 73 6e 31  String,KJUR.asn1
18310 2e 44 45 52 41 62 73 74 72 61 63 74 53 74 72 69  .DERAbstractStri
18320 6e 67 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  ng);KJUR.asn1.DE
18330 52 50 72 69 6e 74 61 62 6c 65 53 74 72 69 6e 67  RPrintableString
18340 3d 66 75 6e 63 74 69 6f 6e 28 61 29 7b 4b 4a 55  =function(a){KJU
18350 52 2e 61 73 6e 31 2e 44 45 52 50 72 69 6e 74 61  R.asn1.DERPrinta
18360 62 6c 65 53 74 72 69 6e 67 2e 73 75 70 65 72 63  bleString.superc
18370 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72  lass.constructor
18380 2e 63 61 6c 6c 28 74 68 69 73 2c 61 29 3b 74 68  .call(this,a);th
18390 69 73 2e 68 54 3d 22 31 33 22 7d 3b 59 41 48 4f  is.hT="13"};YAHO
183a0 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a  O.lang.extend(KJ
183b0 55 52 2e 61 73 6e 31 2e 44 45 52 50 72 69 6e 74  UR.asn1.DERPrint
183c0 61 62 6c 65 53 74 72 69 6e 67 2c 4b 4a 55 52 2e  ableString,KJUR.
183d0 61 73 6e 31 2e 44 45 52 41 62 73 74 72 61 63 74  asn1.DERAbstract
183e0 53 74 72 69 6e 67 29 3b 4b 4a 55 52 2e 61 73 6e  String);KJUR.asn
183f0 31 2e 44 45 52 54 65 6c 65 74 65 78 53 74 72 69  1.DERTeletexStri
18400 6e 67 3d 66 75 6e 63 74 69 6f 6e 28 61 29 7b 4b  ng=function(a){K
18410 4a 55 52 2e 61 73 6e 31 2e 44 45 52 54 65 6c 65  JUR.asn1.DERTele
18420 74 65 78 53 74 72 69 6e 67 2e 73 75 70 65 72 63  texString.superc
18430 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72  lass.constructor
18440 2e 63 61 6c 6c 28 74 68 69 73 2c 61 29 3b 74 68  .call(this,a);th
18450 69 73 2e 68 54 3d 22 31 34 22 7d 3b 59 41 48 4f  is.hT="14"};YAHO
18460 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a  O.lang.extend(KJ
18470 55 52 2e 61 73 6e 31 2e 44 45 52 54 65 6c 65 74  UR.asn1.DERTelet
18480 65 78 53 74 72 69 6e 67 2c 4b 4a 55 52 2e 61 73  exString,KJUR.as
18490 6e 31 2e 44 45 52 41 62 73 74 72 61 63 74 53 74  n1.DERAbstractSt
184a0 72 69 6e 67 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e  ring);KJUR.asn1.
184b0 44 45 52 49 41 35 53 74 72 69 6e 67 3d 66 75 6e  DERIA5String=fun
184c0 63 74 69 6f 6e 28 61 29 7b 4b 4a 55 52 2e 61 73  ction(a){KJUR.as
184d0 6e 31 2e 44 45 52 49 41 35 53 74 72 69 6e 67 2e  n1.DERIA5String.
184e0 73 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74  superclass.const
184f0 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73  ructor.call(this
18500 2c 61 29 3b 74 68 69 73 2e 68 54 3d 22 31 36 22  ,a);this.hT="16"
18510 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74  };YAHOO.lang.ext
18520 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  end(KJUR.asn1.DE
18530 52 49 41 35 53 74 72 69 6e 67 2c 4b 4a 55 52 2e  RIA5String,KJUR.
18540 61 73 6e 31 2e 44 45 52 41 62 73 74 72 61 63 74  asn1.DERAbstract
18550 53 74 72 69 6e 67 29 3b 4b 4a 55 52 2e 61 73 6e  String);KJUR.asn
18560 31 2e 44 45 52 55 54 43 54 69 6d 65 3d 66 75 6e  1.DERUTCTime=fun
18570 63 74 69 6f 6e 28 61 29 7b 4b 4a 55 52 2e 61 73  ction(a){KJUR.as
18580 6e 31 2e 44 45 52 55 54 43 54 69 6d 65 2e 73 75  n1.DERUTCTime.su
18590 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75  perclass.constru
185a0 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 2c 61  ctor.call(this,a
185b0 29 3b 74 68 69 73 2e 68 54 3d 22 31 37 22 3b 74  );this.hT="17";t
185c0 68 69 73 2e 73 65 74 42 79 44 61 74 65 3d 66 75  his.setByDate=fu
185d0 6e 63 74 69 6f 6e 28 62 29 7b 74 68 69 73 2e 68  nction(b){this.h
185e0 54 4c 56 3d 6e 75 6c 6c 3b 74 68 69 73 2e 69 73  TLV=null;this.is
185f0 4d 6f 64 69 66 69 65 64 3d 74 72 75 65 3b 74 68  Modified=true;th
18600 69 73 2e 64 61 74 65 3d 62 3b 74 68 69 73 2e 73  is.date=b;this.s
18610 3d 74 68 69 73 2e 66 6f 72 6d 61 74 44 61 74 65  =this.formatDate
18620 28 74 68 69 73 2e 64 61 74 65 2c 22 75 74 63 22  (this.date,"utc"
18630 29 3b 74 68 69 73 2e 68 56 3d 73 74 6f 68 65 78  );this.hV=stohex
18640 28 74 68 69 73 2e 73 29 7d 3b 74 68 69 73 2e 67  (this.s)};this.g
18650 65 74 46 72 65 73 68 56 61 6c 75 65 48 65 78 3d  etFreshValueHex=
18660 66 75 6e 63 74 69 6f 6e 28 29 7b 69 66 28 74 79  function(){if(ty
18670 70 65 6f 66 20 74 68 69 73 2e 64 61 74 65 3d 3d  peof this.date==
18680 22 75 6e 64 65 66 69 6e 65 64 22 26 26 74 79 70  "undefined"&&typ
18690 65 6f 66 20 74 68 69 73 2e 73 3d 3d 22 75 6e 64  eof this.s=="und
186a0 65 66 69 6e 65 64 22 29 7b 74 68 69 73 2e 64 61  efined"){this.da
186b0 74 65 3d 6e 65 77 20 44 61 74 65 28 29 3b 74 68  te=new Date();th
186c0 69 73 2e 73 3d 74 68 69 73 2e 66 6f 72 6d 61 74  is.s=this.format
186d0 44 61 74 65 28 74 68 69 73 2e 64 61 74 65 2c 22  Date(this.date,"
186e0 75 74 63 22 29 3b 74 68 69 73 2e 68 56 3d 73 74  utc");this.hV=st
186f0 6f 68 65 78 28 74 68 69 73 2e 73 29 7d 72 65 74  ohex(this.s)}ret
18700 75 72 6e 20 74 68 69 73 2e 68 56 7d 3b 69 66 28  urn this.hV};if(
18710 74 79 70 65 6f 66 20 61 21 3d 22 75 6e 64 65 66  typeof a!="undef
18720 69 6e 65 64 22 29 7b 69 66 28 74 79 70 65 6f 66  ined"){if(typeof
18730 20 61 2e 73 74 72 21 3d 22 75 6e 64 65 66 69 6e   a.str!="undefin
18740 65 64 22 29 7b 74 68 69 73 2e 73 65 74 53 74 72  ed"){this.setStr
18750 69 6e 67 28 61 2e 73 74 72 29 7d 65 6c 73 65 7b  ing(a.str)}else{
18760 69 66 28 74 79 70 65 6f 66 20 61 3d 3d 22 73 74  if(typeof a=="st
18770 72 69 6e 67 22 26 26 61 2e 6d 61 74 63 68 28 2f  ring"&&a.match(/
18780 5e 5b 30 2d 39 5d 7b 31 32 7d 5a 24 2f 29 29 7b  ^[0-9]{12}Z$/)){
18790 74 68 69 73 2e 73 65 74 53 74 72 69 6e 67 28 61  this.setString(a
187a0 29 7d 65 6c 73 65 7b 69 66 28 74 79 70 65 6f 66  )}else{if(typeof
187b0 20 61 2e 68 65 78 21 3d 22 75 6e 64 65 66 69 6e   a.hex!="undefin
187c0 65 64 22 29 7b 74 68 69 73 2e 73 65 74 53 74 72  ed"){this.setStr
187d0 69 6e 67 48 65 78 28 61 2e 68 65 78 29 7d 65 6c  ingHex(a.hex)}el
187e0 73 65 7b 69 66 28 74 79 70 65 6f 66 20 61 2e 64  se{if(typeof a.d
187f0 61 74 65 21 3d 22 75 6e 64 65 66 69 6e 65 64 22  ate!="undefined"
18800 29 7b 74 68 69 73 2e 73 65 74 42 79 44 61 74 65  ){this.setByDate
18810 28 61 2e 64 61 74 65 29 7d 7d 7d 7d 7d 7d 3b 59  (a.date)}}}}}};Y
18820 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64  AHOO.lang.extend
18830 28 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 55 54  (KJUR.asn1.DERUT
18840 43 54 69 6d 65 2c 4b 4a 55 52 2e 61 73 6e 31 2e  CTime,KJUR.asn1.
18850 44 45 52 41 62 73 74 72 61 63 74 54 69 6d 65 29  DERAbstractTime)
18860 3b 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 47 65  ;KJUR.asn1.DERGe
18870 6e 65 72 61 6c 69 7a 65 64 54 69 6d 65 3d 66 75  neralizedTime=fu
18880 6e 63 74 69 6f 6e 28 61 29 7b 4b 4a 55 52 2e 61  nction(a){KJUR.a
18890 73 6e 31 2e 44 45 52 47 65 6e 65 72 61 6c 69 7a  sn1.DERGeneraliz
188a0 65 64 54 69 6d 65 2e 73 75 70 65 72 63 6c 61 73  edTime.superclas
188b0 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61  s.constructor.ca
188c0 6c 6c 28 74 68 69 73 2c 61 29 3b 74 68 69 73 2e  ll(this,a);this.
188d0 68 54 3d 22 31 38 22 3b 74 68 69 73 2e 77 69 74  hT="18";this.wit
188e0 68 4d 69 6c 6c 69 73 3d 66 61 6c 73 65 3b 74 68  hMillis=false;th
188f0 69 73 2e 73 65 74 42 79 44 61 74 65 3d 66 75 6e  is.setByDate=fun
18900 63 74 69 6f 6e 28 62 29 7b 74 68 69 73 2e 68 54  ction(b){this.hT
18910 4c 56 3d 6e 75 6c 6c 3b 74 68 69 73 2e 69 73 4d  LV=null;this.isM
18920 6f 64 69 66 69 65 64 3d 74 72 75 65 3b 74 68 69  odified=true;thi
18930 73 2e 64 61 74 65 3d 62 3b 74 68 69 73 2e 73 3d  s.date=b;this.s=
18940 74 68 69 73 2e 66 6f 72 6d 61 74 44 61 74 65 28  this.formatDate(
18950 74 68 69 73 2e 64 61 74 65 2c 22 67 65 6e 22 2c  this.date,"gen",
18960 74 68 69 73 2e 77 69 74 68 4d 69 6c 6c 69 73 29  this.withMillis)
18970 3b 74 68 69 73 2e 68 56 3d 73 74 6f 68 65 78 28  ;this.hV=stohex(
18980 74 68 69 73 2e 73 29 7d 3b 74 68 69 73 2e 67 65  this.s)};this.ge
18990 74 46 72 65 73 68 56 61 6c 75 65 48 65 78 3d 66  tFreshValueHex=f
189a0 75 6e 63 74 69 6f 6e 28 29 7b 69 66 28 74 79 70  unction(){if(typ
189b0 65 6f 66 20 74 68 69 73 2e 64 61 74 65 3d 3d 22  eof this.date=="
189c0 75 6e 64 65 66 69 6e 65 64 22 26 26 74 79 70 65  undefined"&&type
189d0 6f 66 20 74 68 69 73 2e 73 3d 3d 22 75 6e 64 65  of this.s=="unde
189e0 66 69 6e 65 64 22 29 7b 74 68 69 73 2e 64 61 74  fined"){this.dat
189f0 65 3d 6e 65 77 20 44 61 74 65 28 29 3b 74 68 69  e=new Date();thi
18a00 73 2e 73 3d 74 68 69 73 2e 66 6f 72 6d 61 74 44  s.s=this.formatD
18a10 61 74 65 28 74 68 69 73 2e 64 61 74 65 2c 22 67  ate(this.date,"g
18a20 65 6e 22 2c 74 68 69 73 2e 77 69 74 68 4d 69 6c  en",this.withMil
18a30 6c 69 73 29 3b 74 68 69 73 2e 68 56 3d 73 74 6f  lis);this.hV=sto
18a40 68 65 78 28 74 68 69 73 2e 73 29 7d 72 65 74 75  hex(this.s)}retu
18a50 72 6e 20 74 68 69 73 2e 68 56 7d 3b 69 66 28 74  rn this.hV};if(t
18a60 79 70 65 6f 66 20 61 21 3d 22 75 6e 64 65 66 69  ypeof a!="undefi
18a70 6e 65 64 22 29 7b 69 66 28 74 79 70 65 6f 66 20  ned"){if(typeof 
18a80 61 2e 73 74 72 21 3d 22 75 6e 64 65 66 69 6e 65  a.str!="undefine
18a90 64 22 29 7b 74 68 69 73 2e 73 65 74 53 74 72 69  d"){this.setStri
18aa0 6e 67 28 61 2e 73 74 72 29 7d 65 6c 73 65 7b 69  ng(a.str)}else{i
18ab0 66 28 74 79 70 65 6f 66 20 61 3d 3d 22 73 74 72  f(typeof a=="str
18ac0 69 6e 67 22 26 26 61 2e 6d 61 74 63 68 28 2f 5e  ing"&&a.match(/^
18ad0 5b 30 2d 39 5d 7b 31 34 7d 5a 24 2f 29 29 7b 74  [0-9]{14}Z$/)){t
18ae0 68 69 73 2e 73 65 74 53 74 72 69 6e 67 28 61 29  his.setString(a)
18af0 7d 65 6c 73 65 7b 69 66 28 74 79 70 65 6f 66 20  }else{if(typeof 
18b00 61 2e 68 65 78 21 3d 22 75 6e 64 65 66 69 6e 65  a.hex!="undefine
18b10 64 22 29 7b 74 68 69 73 2e 73 65 74 53 74 72 69  d"){this.setStri
18b20 6e 67 48 65 78 28 61 2e 68 65 78 29 7d 65 6c 73  ngHex(a.hex)}els
18b30 65 7b 69 66 28 74 79 70 65 6f 66 20 61 2e 64 61  e{if(typeof a.da
18b40 74 65 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29  te!="undefined")
18b50 7b 74 68 69 73 2e 73 65 74 42 79 44 61 74 65 28  {this.setByDate(
18b60 61 2e 64 61 74 65 29 7d 65 6c 73 65 7b 69 66 28  a.date)}else{if(
18b70 61 2e 6d 69 6c 6c 69 73 3d 3d 3d 74 72 75 65 29  a.millis===true)
18b80 7b 74 68 69 73 2e 77 69 74 68 4d 69 6c 6c 69 73  {this.withMillis
18b90 3d 74 72 75 65 7d 7d 7d 7d 7d 7d 7d 3b 59 41 48  =true}}}}}}};YAH
18ba0 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b  OO.lang.extend(K
18bb0 4a 55 52 2e 61 73 6e 31 2e 44 45 52 47 65 6e 65  JUR.asn1.DERGene
18bc0 72 61 6c 69 7a 65 64 54 69 6d 65 2c 4b 4a 55 52  ralizedTime,KJUR
18bd0 2e 61 73 6e 31 2e 44 45 52 41 62 73 74 72 61 63  .asn1.DERAbstrac
18be0 74 54 69 6d 65 29 3b 4b 4a 55 52 2e 61 73 6e 31  tTime);KJUR.asn1
18bf0 2e 44 45 52 53 65 71 75 65 6e 63 65 3d 66 75 6e  .DERSequence=fun
18c00 63 74 69 6f 6e 28 61 29 7b 4b 4a 55 52 2e 61 73  ction(a){KJUR.as
18c10 6e 31 2e 44 45 52 53 65 71 75 65 6e 63 65 2e 73  n1.DERSequence.s
18c20 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72  uperclass.constr
18c30 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 2c  uctor.call(this,
18c40 61 29 3b 74 68 69 73 2e 68 54 3d 22 33 30 22 3b  a);this.hT="30";
18c50 74 68 69 73 2e 67 65 74 46 72 65 73 68 56 61 6c  this.getFreshVal
18c60 75 65 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29  ueHex=function()
18c70 7b 76 61 72 20 63 3d 22 22 3b 66 6f 72 28 76 61  {var c="";for(va
18c80 72 20 62 3d 30 3b 62 3c 74 68 69 73 2e 61 73 6e  r b=0;b<this.asn
18c90 31 41 72 72 61 79 2e 6c 65 6e 67 74 68 3b 62 2b  1Array.length;b+
18ca0 2b 29 7b 76 61 72 20 64 3d 74 68 69 73 2e 61 73  +){var d=this.as
18cb0 6e 31 41 72 72 61 79 5b 62 5d 3b 63 2b 3d 64 2e  n1Array[b];c+=d.
18cc0 67 65 74 45 6e 63 6f 64 65 64 48 65 78 28 29 7d  getEncodedHex()}
18cd0 74 68 69 73 2e 68 56 3d 63 3b 72 65 74 75 72 6e  this.hV=c;return
18ce0 20 74 68 69 73 2e 68 56 7d 7d 3b 59 41 48 4f 4f   this.hV}};YAHOO
18cf0 2e 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55  .lang.extend(KJU
18d00 52 2e 61 73 6e 31 2e 44 45 52 53 65 71 75 65 6e  R.asn1.DERSequen
18d10 63 65 2c 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52  ce,KJUR.asn1.DER
18d20 41 62 73 74 72 61 63 74 53 74 72 75 63 74 75 72  AbstractStructur
18d30 65 64 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  ed);KJUR.asn1.DE
18d40 52 53 65 74 3d 66 75 6e 63 74 69 6f 6e 28 61 29  RSet=function(a)
18d50 7b 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 53 65  {KJUR.asn1.DERSe
18d60 74 2e 73 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e  t.superclass.con
18d70 73 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68  structor.call(th
18d80 69 73 2c 61 29 3b 74 68 69 73 2e 68 54 3d 22 33  is,a);this.hT="3
18d90 31 22 3b 74 68 69 73 2e 73 6f 72 74 46 6c 61 67  1";this.sortFlag
18da0 3d 74 72 75 65 3b 74 68 69 73 2e 67 65 74 46 72  =true;this.getFr
18db0 65 73 68 56 61 6c 75 65 48 65 78 3d 66 75 6e 63  eshValueHex=func
18dc0 74 69 6f 6e 28 29 7b 76 61 72 20 62 3d 6e 65 77  tion(){var b=new
18dd0 20 41 72 72 61 79 28 29 3b 66 6f 72 28 76 61 72   Array();for(var
18de0 20 63 3d 30 3b 63 3c 74 68 69 73 2e 61 73 6e 31   c=0;c<this.asn1
18df0 41 72 72 61 79 2e 6c 65 6e 67 74 68 3b 63 2b 2b  Array.length;c++
18e00 29 7b 76 61 72 20 64 3d 74 68 69 73 2e 61 73 6e  ){var d=this.asn
18e10 31 41 72 72 61 79 5b 63 5d 3b 62 2e 70 75 73 68  1Array[c];b.push
18e20 28 64 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78  (d.getEncodedHex
18e30 28 29 29 7d 69 66 28 74 68 69 73 2e 73 6f 72 74  ())}if(this.sort
18e40 46 6c 61 67 3d 3d 74 72 75 65 29 7b 62 2e 73 6f  Flag==true){b.so
18e50 72 74 28 29 7d 74 68 69 73 2e 68 56 3d 62 2e 6a  rt()}this.hV=b.j
18e60 6f 69 6e 28 22 22 29 3b 72 65 74 75 72 6e 20 74  oin("");return t
18e70 68 69 73 2e 68 56 7d 3b 69 66 28 74 79 70 65 6f  his.hV};if(typeo
18e80 66 20 61 21 3d 22 75 6e 64 65 66 69 6e 65 64 22  f a!="undefined"
18e90 29 7b 69 66 28 74 79 70 65 6f 66 20 61 2e 73 6f  ){if(typeof a.so
18ea0 72 74 66 6c 61 67 21 3d 22 75 6e 64 65 66 69 6e  rtflag!="undefin
18eb0 65 64 22 26 26 61 2e 73 6f 72 74 66 6c 61 67 3d  ed"&&a.sortflag=
18ec0 3d 66 61 6c 73 65 29 7b 74 68 69 73 2e 73 6f 72  =false){this.sor
18ed0 74 46 6c 61 67 3d 66 61 6c 73 65 7d 7d 7d 3b 59  tFlag=false}}};Y
18ee0 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64  AHOO.lang.extend
18ef0 28 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 53 65  (KJUR.asn1.DERSe
18f00 74 2c 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 41  t,KJUR.asn1.DERA
18f10 62 73 74 72 61 63 74 53 74 72 75 63 74 75 72 65  bstractStructure
18f20 64 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52  d);KJUR.asn1.DER
18f30 54 61 67 67 65 64 4f 62 6a 65 63 74 3d 66 75 6e  TaggedObject=fun
18f40 63 74 69 6f 6e 28 61 29 7b 4b 4a 55 52 2e 61 73  ction(a){KJUR.as
18f50 6e 31 2e 44 45 52 54 61 67 67 65 64 4f 62 6a 65  n1.DERTaggedObje
18f60 63 74 2e 73 75 70 65 72 63 6c 61 73 73 2e 63 6f  ct.superclass.co
18f70 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74  nstructor.call(t
18f80 68 69 73 29 3b 74 68 69 73 2e 68 54 3d 22 61 30  his);this.hT="a0
18f90 22 3b 74 68 69 73 2e 68 56 3d 22 22 3b 74 68 69  ";this.hV="";thi
18fa0 73 2e 69 73 45 78 70 6c 69 63 69 74 3d 74 72 75  s.isExplicit=tru
18fb0 65 3b 74 68 69 73 2e 61 73 6e 31 4f 62 6a 65 63  e;this.asn1Objec
18fc0 74 3d 6e 75 6c 6c 3b 74 68 69 73 2e 73 65 74 41  t=null;this.setA
18fd0 53 4e 31 4f 62 6a 65 63 74 3d 66 75 6e 63 74 69  SN1Object=functi
18fe0 6f 6e 28 62 2c 63 2c 64 29 7b 74 68 69 73 2e 68  on(b,c,d){this.h
18ff0 54 3d 63 3b 74 68 69 73 2e 69 73 45 78 70 6c 69  T=c;this.isExpli
19000 63 69 74 3d 62 3b 74 68 69 73 2e 61 73 6e 31 4f  cit=b;this.asn1O
19010 62 6a 65 63 74 3d 64 3b 69 66 28 74 68 69 73 2e  bject=d;if(this.
19020 69 73 45 78 70 6c 69 63 69 74 29 7b 74 68 69 73  isExplicit){this
19030 2e 68 56 3d 74 68 69 73 2e 61 73 6e 31 4f 62 6a  .hV=this.asn1Obj
19040 65 63 74 2e 67 65 74 45 6e 63 6f 64 65 64 48 65  ect.getEncodedHe
19050 78 28 29 3b 74 68 69 73 2e 68 54 4c 56 3d 6e 75  x();this.hTLV=nu
19060 6c 6c 3b 74 68 69 73 2e 69 73 4d 6f 64 69 66 69  ll;this.isModifi
19070 65 64 3d 74 72 75 65 7d 65 6c 73 65 7b 74 68 69  ed=true}else{thi
19080 73 2e 68 56 3d 6e 75 6c 6c 3b 74 68 69 73 2e 68  s.hV=null;this.h
19090 54 4c 56 3d 64 2e 67 65 74 45 6e 63 6f 64 65 64  TLV=d.getEncoded
190a0 48 65 78 28 29 3b 74 68 69 73 2e 68 54 4c 56 3d  Hex();this.hTLV=
190b0 74 68 69 73 2e 68 54 4c 56 2e 72 65 70 6c 61 63  this.hTLV.replac
190c0 65 28 2f 5e 2e 2e 2f 2c 63 29 3b 74 68 69 73 2e  e(/^../,c);this.
190d0 69 73 4d 6f 64 69 66 69 65 64 3d 66 61 6c 73 65  isModified=false
190e0 7d 7d 3b 74 68 69 73 2e 67 65 74 46 72 65 73 68  }};this.getFresh
190f0 56 61 6c 75 65 48 65 78 3d 66 75 6e 63 74 69 6f  ValueHex=functio
19100 6e 28 29 7b 72 65 74 75 72 6e 20 74 68 69 73 2e  n(){return this.
19110 68 56 7d 3b 69 66 28 74 79 70 65 6f 66 20 61 21  hV};if(typeof a!
19120 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 69 66  ="undefined"){if
19130 28 74 79 70 65 6f 66 20 61 2e 74 61 67 21 3d 22  (typeof a.tag!="
19140 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68 69 73  undefined"){this
19150 2e 68 54 3d 61 2e 74 61 67 7d 69 66 28 74 79 70  .hT=a.tag}if(typ
19160 65 6f 66 20 61 2e 65 78 70 6c 69 63 69 74 21 3d  eof a.explicit!=
19170 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68 69  "undefined"){thi
19180 73 2e 69 73 45 78 70 6c 69 63 69 74 3d 61 2e 65  s.isExplicit=a.e
19190 78 70 6c 69 63 69 74 7d 69 66 28 74 79 70 65 6f  xplicit}if(typeo
191a0 66 20 61 2e 6f 62 6a 21 3d 22 75 6e 64 65 66 69  f a.obj!="undefi
191b0 6e 65 64 22 29 7b 74 68 69 73 2e 61 73 6e 31 4f  ned"){this.asn1O
191c0 62 6a 65 63 74 3d 61 2e 6f 62 6a 3b 74 68 69 73  bject=a.obj;this
191d0 2e 73 65 74 41 53 4e 31 4f 62 6a 65 63 74 28 74  .setASN1Object(t
191e0 68 69 73 2e 69 73 45 78 70 6c 69 63 69 74 2c 74  his.isExplicit,t
191f0 68 69 73 2e 68 54 2c 74 68 69 73 2e 61 73 6e 31  his.hT,this.asn1
19200 4f 62 6a 65 63 74 29 7d 7d 7d 3b 59 41 48 4f 4f  Object)}}};YAHOO
19210 2e 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55  .lang.extend(KJU
19220 52 2e 61 73 6e 31 2e 44 45 52 54 61 67 67 65 64  R.asn1.DERTagged
19230 4f 62 6a 65 63 74 2c 4b 4a 55 52 2e 61 73 6e 31  Object,KJUR.asn1
19240 2e 41 53 4e 31 4f 62 6a 65 63 74 29 3b 0a 2f 2a  .ASN1Object);./*
19250 21 20 61 73 6e 31 68 65 78 2d 31 2e 31 2e 36 2e  ! asn1hex-1.1.6.
19260 6a 73 20 28 63 29 20 32 30 31 32 2d 32 30 31 35  js (c) 2012-2015
19270 20 4b 65 6e 6a 69 20 55 72 75 73 68 69 6d 61 20   Kenji Urushima 
19280 7c 20 6b 6a 75 72 2e 67 69 74 68 75 62 2e 63 6f  | kjur.github.co
19290 6d 2f 6a 73 72 73 61 73 69 67 6e 2f 6c 69 63 65  m/jsrsasign/lice
192a0 6e 73 65 0a 20 2a 2f 0a 76 61 72 20 41 53 4e 31  nse. */.var ASN1
192b0 48 45 58 3d 6e 65 77 20 66 75 6e 63 74 69 6f 6e  HEX=new function
192c0 28 29 7b 74 68 69 73 2e 67 65 74 42 79 74 65 4c  (){this.getByteL
192d0 65 6e 67 74 68 4f 66 4c 5f 41 74 4f 62 6a 3d 66  engthOfL_AtObj=f
192e0 75 6e 63 74 69 6f 6e 28 62 2c 63 29 7b 69 66 28  unction(b,c){if(
192f0 62 2e 73 75 62 73 74 72 69 6e 67 28 63 2b 32 2c  b.substring(c+2,
19300 63 2b 33 29 21 3d 22 38 22 29 7b 72 65 74 75 72  c+3)!="8"){retur
19310 6e 20 31 7d 76 61 72 20 61 3d 70 61 72 73 65 49  n 1}var a=parseI
19320 6e 74 28 62 2e 73 75 62 73 74 72 69 6e 67 28 63  nt(b.substring(c
19330 2b 33 2c 63 2b 34 29 29 3b 69 66 28 61 3d 3d 30  +3,c+4));if(a==0
19340 29 7b 72 65 74 75 72 6e 20 2d 31 7d 69 66 28 30  ){return -1}if(0
19350 3c 61 26 26 61 3c 31 30 29 7b 72 65 74 75 72 6e  <a&&a<10){return
19360 20 61 2b 31 7d 72 65 74 75 72 6e 20 2d 32 7d 3b   a+1}return -2};
19370 74 68 69 73 2e 67 65 74 48 65 78 4f 66 4c 5f 41  this.getHexOfL_A
19380 74 4f 62 6a 3d 66 75 6e 63 74 69 6f 6e 28 62 2c  tObj=function(b,
19390 63 29 7b 76 61 72 20 61 3d 74 68 69 73 2e 67 65  c){var a=this.ge
193a0 74 42 79 74 65 4c 65 6e 67 74 68 4f 66 4c 5f 41  tByteLengthOfL_A
193b0 74 4f 62 6a 28 62 2c 63 29 3b 69 66 28 61 3c 31  tObj(b,c);if(a<1
193c0 29 7b 72 65 74 75 72 6e 22 22 7d 72 65 74 75 72  ){return""}retur
193d0 6e 20 62 2e 73 75 62 73 74 72 69 6e 67 28 63 2b  n b.substring(c+
193e0 32 2c 63 2b 32 2b 61 2a 32 29 7d 3b 74 68 69 73  2,c+2+a*2)};this
193f0 2e 67 65 74 49 6e 74 4f 66 4c 5f 41 74 4f 62 6a  .getIntOfL_AtObj
19400 3d 66 75 6e 63 74 69 6f 6e 28 63 2c 64 29 7b 76  =function(c,d){v
19410 61 72 20 62 3d 74 68 69 73 2e 67 65 74 48 65 78  ar b=this.getHex
19420 4f 66 4c 5f 41 74 4f 62 6a 28 63 2c 64 29 3b 69  OfL_AtObj(c,d);i
19430 66 28 62 3d 3d 22 22 29 7b 72 65 74 75 72 6e 20  f(b==""){return 
19440 2d 31 7d 76 61 72 20 61 3b 69 66 28 70 61 72 73  -1}var a;if(pars
19450 65 49 6e 74 28 62 2e 73 75 62 73 74 72 69 6e 67  eInt(b.substring
19460 28 30 2c 31 29 29 3c 38 29 7b 61 3d 6e 65 77 20  (0,1))<8){a=new 
19470 42 69 67 49 6e 74 65 67 65 72 28 62 2c 31 36 29  BigInteger(b,16)
19480 7d 65 6c 73 65 7b 61 3d 6e 65 77 20 42 69 67 49  }else{a=new BigI
19490 6e 74 65 67 65 72 28 62 2e 73 75 62 73 74 72 69  nteger(b.substri
194a0 6e 67 28 32 29 2c 31 36 29 7d 72 65 74 75 72 6e  ng(2),16)}return
194b0 20 61 2e 69 6e 74 56 61 6c 75 65 28 29 7d 3b 74   a.intValue()};t
194c0 68 69 73 2e 67 65 74 53 74 61 72 74 50 6f 73 4f  his.getStartPosO
194d0 66 56 5f 41 74 4f 62 6a 3d 66 75 6e 63 74 69 6f  fV_AtObj=functio
194e0 6e 28 62 2c 63 29 7b 76 61 72 20 61 3d 74 68 69  n(b,c){var a=thi
194f0 73 2e 67 65 74 42 79 74 65 4c 65 6e 67 74 68 4f  s.getByteLengthO
19500 66 4c 5f 41 74 4f 62 6a 28 62 2c 63 29 3b 69 66  fL_AtObj(b,c);if
19510 28 61 3c 30 29 7b 72 65 74 75 72 6e 20 61 7d 72  (a<0){return a}r
19520 65 74 75 72 6e 20 63 2b 28 61 2b 31 29 2a 32 7d  eturn c+(a+1)*2}
19530 3b 74 68 69 73 2e 67 65 74 48 65 78 4f 66 56 5f  ;this.getHexOfV_
19540 41 74 4f 62 6a 3d 66 75 6e 63 74 69 6f 6e 28 63  AtObj=function(c
19550 2c 64 29 7b 76 61 72 20 62 3d 74 68 69 73 2e 67  ,d){var b=this.g
19560 65 74 53 74 61 72 74 50 6f 73 4f 66 56 5f 41 74  etStartPosOfV_At
19570 4f 62 6a 28 63 2c 64 29 3b 76 61 72 20 61 3d 74  Obj(c,d);var a=t
19580 68 69 73 2e 67 65 74 49 6e 74 4f 66 4c 5f 41 74  his.getIntOfL_At
19590 4f 62 6a 28 63 2c 64 29 3b 72 65 74 75 72 6e 20  Obj(c,d);return 
195a0 63 2e 73 75 62 73 74 72 69 6e 67 28 62 2c 62 2b  c.substring(b,b+
195b0 61 2a 32 29 7d 3b 74 68 69 73 2e 67 65 74 48 65  a*2)};this.getHe
195c0 78 4f 66 54 4c 56 5f 41 74 4f 62 6a 3d 66 75 6e  xOfTLV_AtObj=fun
195d0 63 74 69 6f 6e 28 63 2c 65 29 7b 76 61 72 20 62  ction(c,e){var b
195e0 3d 63 2e 73 75 62 73 74 72 28 65 2c 32 29 3b 76  =c.substr(e,2);v
195f0 61 72 20 64 3d 74 68 69 73 2e 67 65 74 48 65 78  ar d=this.getHex
19600 4f 66 4c 5f 41 74 4f 62 6a 28 63 2c 65 29 3b 76  OfL_AtObj(c,e);v
19610 61 72 20 61 3d 74 68 69 73 2e 67 65 74 48 65 78  ar a=this.getHex
19620 4f 66 56 5f 41 74 4f 62 6a 28 63 2c 65 29 3b 72  OfV_AtObj(c,e);r
19630 65 74 75 72 6e 20 62 2b 64 2b 61 7d 3b 74 68 69  eturn b+d+a};thi
19640 73 2e 67 65 74 50 6f 73 4f 66 4e 65 78 74 53 69  s.getPosOfNextSi
19650 62 6c 69 6e 67 5f 41 74 4f 62 6a 3d 66 75 6e 63  bling_AtObj=func
19660 74 69 6f 6e 28 63 2c 64 29 7b 76 61 72 20 62 3d  tion(c,d){var b=
19670 74 68 69 73 2e 67 65 74 53 74 61 72 74 50 6f 73  this.getStartPos
19680 4f 66 56 5f 41 74 4f 62 6a 28 63 2c 64 29 3b 76  OfV_AtObj(c,d);v
19690 61 72 20 61 3d 74 68 69 73 2e 67 65 74 49 6e 74  ar a=this.getInt
196a0 4f 66 4c 5f 41 74 4f 62 6a 28 63 2c 64 29 3b 72  OfL_AtObj(c,d);r
196b0 65 74 75 72 6e 20 62 2b 61 2a 32 7d 3b 74 68 69  eturn b+a*2};thi
196c0 73 2e 67 65 74 50 6f 73 41 72 72 61 79 4f 66 43  s.getPosArrayOfC
196d0 68 69 6c 64 72 65 6e 5f 41 74 4f 62 6a 3d 66 75  hildren_AtObj=fu
196e0 6e 63 74 69 6f 6e 28 66 2c 6a 29 7b 76 61 72 20  nction(f,j){var 
196f0 63 3d 6e 65 77 20 41 72 72 61 79 28 29 3b 76 61  c=new Array();va
19700 72 20 69 3d 74 68 69 73 2e 67 65 74 53 74 61 72  r i=this.getStar
19710 74 50 6f 73 4f 66 56 5f 41 74 4f 62 6a 28 66 2c  tPosOfV_AtObj(f,
19720 6a 29 3b 63 2e 70 75 73 68 28 69 29 3b 76 61 72  j);c.push(i);var
19730 20 62 3d 74 68 69 73 2e 67 65 74 49 6e 74 4f 66   b=this.getIntOf
19740 4c 5f 41 74 4f 62 6a 28 66 2c 6a 29 3b 76 61 72  L_AtObj(f,j);var
19750 20 67 3d 69 3b 76 61 72 20 64 3d 30 3b 77 68 69   g=i;var d=0;whi
19760 6c 65 28 31 29 7b 76 61 72 20 65 3d 74 68 69 73  le(1){var e=this
19770 2e 67 65 74 50 6f 73 4f 66 4e 65 78 74 53 69 62  .getPosOfNextSib
19780 6c 69 6e 67 5f 41 74 4f 62 6a 28 66 2c 67 29 3b  ling_AtObj(f,g);
19790 69 66 28 65 3d 3d 6e 75 6c 6c 7c 7c 28 65 2d 69  if(e==null||(e-i
197a0 3e 3d 28 62 2a 32 29 29 29 7b 62 72 65 61 6b 7d  >=(b*2))){break}
197b0 69 66 28 64 3e 3d 32 30 30 29 7b 62 72 65 61 6b  if(d>=200){break
197c0 7d 63 2e 70 75 73 68 28 65 29 3b 67 3d 65 3b 64  }c.push(e);g=e;d
197d0 2b 2b 7d 72 65 74 75 72 6e 20 63 7d 3b 74 68 69  ++}return c};thi
197e0 73 2e 67 65 74 4e 74 68 43 68 69 6c 64 49 6e 64  s.getNthChildInd
197f0 65 78 5f 41 74 4f 62 6a 3d 66 75 6e 63 74 69 6f  ex_AtObj=functio
19800 6e 28 64 2c 62 2c 65 29 7b 76 61 72 20 63 3d 74  n(d,b,e){var c=t
19810 68 69 73 2e 67 65 74 50 6f 73 41 72 72 61 79 4f  his.getPosArrayO
19820 66 43 68 69 6c 64 72 65 6e 5f 41 74 4f 62 6a 28  fChildren_AtObj(
19830 64 2c 62 29 3b 72 65 74 75 72 6e 20 63 5b 65 5d  d,b);return c[e]
19840 7d 3b 74 68 69 73 2e 67 65 74 44 65 63 65 6e 64  };this.getDecend
19850 61 6e 74 49 6e 64 65 78 42 79 4e 74 68 4c 69 73  antIndexByNthLis
19860 74 3d 66 75 6e 63 74 69 6f 6e 28 65 2c 64 2c 63  t=function(e,d,c
19870 29 7b 69 66 28 63 2e 6c 65 6e 67 74 68 3d 3d 30  ){if(c.length==0
19880 29 7b 72 65 74 75 72 6e 20 64 7d 76 61 72 20 66  ){return d}var f
19890 3d 63 2e 73 68 69 66 74 28 29 3b 76 61 72 20 62  =c.shift();var b
198a0 3d 74 68 69 73 2e 67 65 74 50 6f 73 41 72 72 61  =this.getPosArra
198b0 79 4f 66 43 68 69 6c 64 72 65 6e 5f 41 74 4f 62  yOfChildren_AtOb
198c0 6a 28 65 2c 64 29 3b 72 65 74 75 72 6e 20 74 68  j(e,d);return th
198d0 69 73 2e 67 65 74 44 65 63 65 6e 64 61 6e 74 49  is.getDecendantI
198e0 6e 64 65 78 42 79 4e 74 68 4c 69 73 74 28 65 2c  ndexByNthList(e,
198f0 62 5b 66 5d 2c 63 29 7d 3b 74 68 69 73 2e 67 65  b[f],c)};this.ge
19900 74 44 65 63 65 6e 64 61 6e 74 48 65 78 54 4c 56  tDecendantHexTLV
19910 42 79 4e 74 68 4c 69 73 74 3d 66 75 6e 63 74 69  ByNthList=functi
19920 6f 6e 28 64 2c 63 2c 62 29 7b 76 61 72 20 61 3d  on(d,c,b){var a=
19930 74 68 69 73 2e 67 65 74 44 65 63 65 6e 64 61 6e  this.getDecendan
19940 74 49 6e 64 65 78 42 79 4e 74 68 4c 69 73 74 28  tIndexByNthList(
19950 64 2c 63 2c 62 29 3b 72 65 74 75 72 6e 20 74 68  d,c,b);return th
19960 69 73 2e 67 65 74 48 65 78 4f 66 54 4c 56 5f 41  is.getHexOfTLV_A
19970 74 4f 62 6a 28 64 2c 61 29 7d 3b 74 68 69 73 2e  tObj(d,a)};this.
19980 67 65 74 44 65 63 65 6e 64 61 6e 74 48 65 78 56  getDecendantHexV
19990 42 79 4e 74 68 4c 69 73 74 3d 66 75 6e 63 74 69  ByNthList=functi
199a0 6f 6e 28 64 2c 63 2c 62 29 7b 76 61 72 20 61 3d  on(d,c,b){var a=
199b0 74 68 69 73 2e 67 65 74 44 65 63 65 6e 64 61 6e  this.getDecendan
199c0 74 49 6e 64 65 78 42 79 4e 74 68 4c 69 73 74 28  tIndexByNthList(
199d0 64 2c 63 2c 62 29 3b 72 65 74 75 72 6e 20 74 68  d,c,b);return th
199e0 69 73 2e 67 65 74 48 65 78 4f 66 56 5f 41 74 4f  is.getHexOfV_AtO
199f0 62 6a 28 64 2c 61 29 7d 7d 3b 41 53 4e 31 48 45  bj(d,a)}};ASN1HE
19a00 58 2e 67 65 74 56 62 79 4c 69 73 74 3d 66 75 6e  X.getVbyList=fun
19a10 63 74 69 6f 6e 28 64 2c 63 2c 62 2c 65 29 7b 76  ction(d,c,b,e){v
19a20 61 72 20 61 3d 74 68 69 73 2e 67 65 74 44 65 63  ar a=this.getDec
19a30 65 6e 64 61 6e 74 49 6e 64 65 78 42 79 4e 74 68  endantIndexByNth
19a40 4c 69 73 74 28 64 2c 63 2c 62 29 3b 69 66 28 61  List(d,c,b);if(a
19a50 3d 3d 3d 75 6e 64 65 66 69 6e 65 64 29 7b 74 68  ===undefined){th
19a60 72 6f 77 22 63 61 6e 27 74 20 66 69 6e 64 20 6e  row"can't find n
19a70 74 68 4c 69 73 74 20 6f 62 6a 65 63 74 22 7d 69  thList object"}i
19a80 66 28 65 21 3d 3d 75 6e 64 65 66 69 6e 65 64 29  f(e!==undefined)
19a90 7b 69 66 28 64 2e 73 75 62 73 74 72 28 61 2c 32  {if(d.substr(a,2
19aa0 29 21 3d 65 29 7b 74 68 72 6f 77 22 63 68 65 63  )!=e){throw"chec
19ab0 6b 69 6e 67 20 74 61 67 20 64 6f 65 73 6e 27 74  king tag doesn't
19ac0 20 6d 61 74 63 68 3a 20 22 2b 64 2e 73 75 62 73   match: "+d.subs
19ad0 74 72 28 61 2c 32 29 2b 22 21 3d 22 2b 65 7d 7d  tr(a,2)+"!="+e}}
19ae0 72 65 74 75 72 6e 20 74 68 69 73 2e 67 65 74 48  return this.getH
19af0 65 78 4f 66 56 5f 41 74 4f 62 6a 28 64 2c 61 29  exOfV_AtObj(d,a)
19b00 7d 3b 41 53 4e 31 48 45 58 2e 68 65 78 74 6f 6f  };ASN1HEX.hextoo
19b10 69 64 73 74 72 3d 66 75 6e 63 74 69 6f 6e 28 65  idstr=function(e
19b20 29 7b 76 61 72 20 68 3d 66 75 6e 63 74 69 6f 6e  ){var h=function
19b30 28 62 2c 61 29 7b 69 66 28 62 2e 6c 65 6e 67 74  (b,a){if(b.lengt
19b40 68 3e 3d 61 29 7b 72 65 74 75 72 6e 20 62 7d 72  h>=a){return b}r
19b50 65 74 75 72 6e 20 6e 65 77 20 41 72 72 61 79 28  eturn new Array(
19b60 61 2d 62 2e 6c 65 6e 67 74 68 2b 31 29 2e 6a 6f  a-b.length+1).jo
19b70 69 6e 28 22 30 22 29 2b 62 7d 3b 76 61 72 20 6c  in("0")+b};var l
19b80 3d 5b 5d 3b 76 61 72 20 6f 3d 65 2e 73 75 62 73  =[];var o=e.subs
19b90 74 72 28 30 2c 32 29 3b 76 61 72 20 66 3d 70 61  tr(0,2);var f=pa
19ba0 72 73 65 49 6e 74 28 6f 2c 31 36 29 3b 6c 5b 30  rseInt(o,16);l[0
19bb0 5d 3d 6e 65 77 20 53 74 72 69 6e 67 28 4d 61 74  ]=new String(Mat
19bc0 68 2e 66 6c 6f 6f 72 28 66 2f 34 30 29 29 3b 6c  h.floor(f/40));l
19bd0 5b 31 5d 3d 6e 65 77 20 53 74 72 69 6e 67 28 66  [1]=new String(f
19be0 25 34 30 29 3b 76 61 72 20 6d 3d 65 2e 73 75 62  %40);var m=e.sub
19bf0 73 74 72 28 32 29 3b 76 61 72 20 6b 3d 5b 5d 3b  str(2);var k=[];
19c00 66 6f 72 28 76 61 72 20 67 3d 30 3b 67 3c 6d 2e  for(var g=0;g<m.
19c10 6c 65 6e 67 74 68 2f 32 3b 67 2b 2b 29 7b 6b 2e  length/2;g++){k.
19c20 70 75 73 68 28 70 61 72 73 65 49 6e 74 28 6d 2e  push(parseInt(m.
19c30 73 75 62 73 74 72 28 67 2a 32 2c 32 29 2c 31 36  substr(g*2,2),16
19c40 29 29 7d 76 61 72 20 6a 3d 5b 5d 3b 76 61 72 20  ))}var j=[];var 
19c50 64 3d 22 22 3b 66 6f 72 28 76 61 72 20 67 3d 30  d="";for(var g=0
19c60 3b 67 3c 6b 2e 6c 65 6e 67 74 68 3b 67 2b 2b 29  ;g<k.length;g++)
19c70 7b 69 66 28 6b 5b 67 5d 26 31 32 38 29 7b 64 3d  {if(k[g]&128){d=
19c80 64 2b 68 28 28 6b 5b 67 5d 26 31 32 37 29 2e 74  d+h((k[g]&127).t
19c90 6f 53 74 72 69 6e 67 28 32 29 2c 37 29 7d 65 6c  oString(2),7)}el
19ca0 73 65 7b 64 3d 64 2b 68 28 28 6b 5b 67 5d 26 31  se{d=d+h((k[g]&1
19cb0 32 37 29 2e 74 6f 53 74 72 69 6e 67 28 32 29 2c  27).toString(2),
19cc0 37 29 3b 6a 2e 70 75 73 68 28 6e 65 77 20 53 74  7);j.push(new St
19cd0 72 69 6e 67 28 70 61 72 73 65 49 6e 74 28 64 2c  ring(parseInt(d,
19ce0 32 29 29 29 3b 64 3d 22 22 7d 7d 76 61 72 20 6e  2)));d=""}}var n
19cf0 3d 6c 2e 6a 6f 69 6e 28 22 2e 22 29 3b 69 66 28  =l.join(".");if(
19d00 6a 2e 6c 65 6e 67 74 68 3e 30 29 7b 6e 3d 6e 2b  j.length>0){n=n+
19d10 22 2e 22 2b 6a 2e 6a 6f 69 6e 28 22 2e 22 29 7d  "."+j.join(".")}
19d20 72 65 74 75 72 6e 20 6e 7d 3b 41 53 4e 31 48 45  return n};ASN1HE
19d30 58 2e 64 75 6d 70 3d 66 75 6e 63 74 69 6f 6e 28  X.dump=function(
19d40 65 2c 63 2c 6b 2c 67 29 7b 76 61 72 20 6f 3d 66  e,c,k,g){var o=f
19d50 75 6e 63 74 69 6f 6e 28 77 2c 69 29 7b 69 66 28  unction(w,i){if(
19d60 77 2e 6c 65 6e 67 74 68 3c 3d 69 2a 32 29 7b 72  w.length<=i*2){r
19d70 65 74 75 72 6e 20 77 7d 65 6c 73 65 7b 76 61 72  eturn w}else{var
19d80 20 76 3d 77 2e 73 75 62 73 74 72 28 30 2c 69 29   v=w.substr(0,i)
19d90 2b 22 2e 2e 28 74 6f 74 61 6c 20 22 2b 77 2e 6c  +"..(total "+w.l
19da0 65 6e 67 74 68 2f 32 2b 22 62 79 74 65 73 29 2e  ength/2+"bytes).
19db0 2e 22 2b 77 2e 73 75 62 73 74 72 28 77 2e 6c 65  ."+w.substr(w.le
19dc0 6e 67 74 68 2d 69 2c 69 29 3b 72 65 74 75 72 6e  ngth-i,i);return
19dd0 20 76 7d 7d 3b 69 66 28 63 3d 3d 3d 75 6e 64 65   v}};if(c===unde
19de0 66 69 6e 65 64 29 7b 63 3d 7b 6f 6d 6d 69 74 5f  fined){c={ommit_
19df0 6c 6f 6e 67 5f 6f 63 74 65 74 3a 33 32 7d 7d 69  long_octet:32}}i
19e00 66 28 6b 3d 3d 3d 75 6e 64 65 66 69 6e 65 64 29  f(k===undefined)
19e10 7b 6b 3d 30 7d 69 66 28 67 3d 3d 3d 75 6e 64 65  {k=0}if(g===unde
19e20 66 69 6e 65 64 29 7b 67 3d 22 22 7d 76 61 72 20  fined){g=""}var 
19e30 72 3d 63 2e 6f 6d 6d 69 74 5f 6c 6f 6e 67 5f 6f  r=c.ommit_long_o
19e40 63 74 65 74 3b 69 66 28 65 2e 73 75 62 73 74 72  ctet;if(e.substr
19e50 28 6b 2c 32 29 3d 3d 22 30 31 22 29 7b 76 61 72  (k,2)=="01"){var
19e60 20 68 3d 41 53 4e 31 48 45 58 2e 67 65 74 48 65   h=ASN1HEX.getHe
19e70 78 4f 66 56 5f 41 74 4f 62 6a 28 65 2c 6b 29 3b  xOfV_AtObj(e,k);
19e80 69 66 28 68 3d 3d 22 30 30 22 29 7b 72 65 74 75  if(h=="00"){retu
19e90 72 6e 20 67 2b 22 42 4f 4f 4c 45 41 4e 20 46 41  rn g+"BOOLEAN FA
19ea0 4c 53 45 5c 6e 22 7d 65 6c 73 65 7b 72 65 74 75  LSE\n"}else{retu
19eb0 72 6e 20 67 2b 22 42 4f 4f 4c 45 41 4e 20 54 52  rn g+"BOOLEAN TR
19ec0 55 45 5c 6e 22 7d 7d 69 66 28 65 2e 73 75 62 73  UE\n"}}if(e.subs
19ed0 74 72 28 6b 2c 32 29 3d 3d 22 30 32 22 29 7b 76  tr(k,2)=="02"){v
19ee0 61 72 20 68 3d 41 53 4e 31 48 45 58 2e 67 65 74  ar h=ASN1HEX.get
19ef0 48 65 78 4f 66 56 5f 41 74 4f 62 6a 28 65 2c 6b  HexOfV_AtObj(e,k
19f00 29 3b 72 65 74 75 72 6e 20 67 2b 22 49 4e 54 45  );return g+"INTE
19f10 47 45 52 20 22 2b 6f 28 68 2c 72 29 2b 22 5c 6e  GER "+o(h,r)+"\n
19f20 22 7d 69 66 28 65 2e 73 75 62 73 74 72 28 6b 2c  "}if(e.substr(k,
19f30 32 29 3d 3d 22 30 33 22 29 7b 76 61 72 20 68 3d  2)=="03"){var h=
19f40 41 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66  ASN1HEX.getHexOf
19f50 56 5f 41 74 4f 62 6a 28 65 2c 6b 29 3b 72 65 74  V_AtObj(e,k);ret
19f60 75 72 6e 20 67 2b 22 42 49 54 53 54 52 49 4e 47  urn g+"BITSTRING
19f70 20 22 2b 6f 28 68 2c 72 29 2b 22 5c 6e 22 7d 69   "+o(h,r)+"\n"}i
19f80 66 28 65 2e 73 75 62 73 74 72 28 6b 2c 32 29 3d  f(e.substr(k,2)=
19f90 3d 22 30 34 22 29 7b 76 61 72 20 68 3d 41 53 4e  ="04"){var h=ASN
19fa0 31 48 45 58 2e 67 65 74 48 65 78 4f 66 56 5f 41  1HEX.getHexOfV_A
19fb0 74 4f 62 6a 28 65 2c 6b 29 3b 69 66 28 41 53 4e  tObj(e,k);if(ASN
19fc0 31 48 45 58 2e 69 73 41 53 4e 31 48 45 58 28 68  1HEX.isASN1HEX(h
19fd0 29 29 7b 76 61 72 20 6a 3d 67 2b 22 4f 43 54 45  )){var j=g+"OCTE
19fe0 54 53 54 52 49 4e 47 2c 20 65 6e 63 61 70 73 75  TSTRING, encapsu
19ff0 6c 61 74 65 73 5c 6e 22 3b 6a 3d 6a 2b 41 53 4e  lates\n";j=j+ASN
1a000 31 48 45 58 2e 64 75 6d 70 28 68 2c 63 2c 30 2c  1HEX.dump(h,c,0,
1a010 67 2b 22 20 20 22 29 3b 72 65 74 75 72 6e 20 6a  g+"  ");return j
1a020 7d 65 6c 73 65 7b 72 65 74 75 72 6e 20 67 2b 22  }else{return g+"
1a030 4f 43 54 45 54 53 54 52 49 4e 47 20 22 2b 6f 28  OCTETSTRING "+o(
1a040 68 2c 72 29 2b 22 5c 6e 22 7d 7d 69 66 28 65 2e  h,r)+"\n"}}if(e.
1a050 73 75 62 73 74 72 28 6b 2c 32 29 3d 3d 22 30 35  substr(k,2)=="05
1a060 22 29 7b 72 65 74 75 72 6e 20 67 2b 22 4e 55 4c  "){return g+"NUL
1a070 4c 5c 6e 22 7d 69 66 28 65 2e 73 75 62 73 74 72  L\n"}if(e.substr
1a080 28 6b 2c 32 29 3d 3d 22 30 36 22 29 7b 76 61 72  (k,2)=="06"){var
1a090 20 6c 3d 41 53 4e 31 48 45 58 2e 67 65 74 48 65   l=ASN1HEX.getHe
1a0a0 78 4f 66 56 5f 41 74 4f 62 6a 28 65 2c 6b 29 3b  xOfV_AtObj(e,k);
1a0b0 76 61 72 20 61 3d 4b 4a 55 52 2e 61 73 6e 31 2e  var a=KJUR.asn1.
1a0c0 41 53 4e 31 55 74 69 6c 2e 6f 69 64 48 65 78 54  ASN1Util.oidHexT
1a0d0 6f 49 6e 74 28 6c 29 3b 76 61 72 20 6e 3d 4b 4a  oInt(l);var n=KJ
1a0e0 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 4f 49 44  UR.asn1.x509.OID
1a0f0 2e 6f 69 64 32 6e 61 6d 65 28 61 29 3b 76 61 72  .oid2name(a);var
1a100 20 62 3d 61 2e 72 65 70 6c 61 63 65 28 2f 5c 2e   b=a.replace(/\.
1a110 2f 67 2c 22 20 22 29 3b 69 66 28 6e 21 3d 22 22  /g," ");if(n!=""
1a120 29 7b 72 65 74 75 72 6e 20 67 2b 22 4f 62 6a 65  ){return g+"Obje
1a130 63 74 49 64 65 6e 74 69 66 69 65 72 20 22 2b 6e  ctIdentifier "+n
1a140 2b 22 20 28 22 2b 62 2b 22 29 5c 6e 22 7d 65 6c  +" ("+b+")\n"}el
1a150 73 65 7b 72 65 74 75 72 6e 20 67 2b 22 4f 62 6a  se{return g+"Obj
1a160 65 63 74 49 64 65 6e 74 69 66 69 65 72 20 28 22  ectIdentifier ("
1a170 2b 62 2b 22 29 5c 6e 22 7d 7d 69 66 28 65 2e 73  +b+")\n"}}if(e.s
1a180 75 62 73 74 72 28 6b 2c 32 29 3d 3d 22 30 63 22  ubstr(k,2)=="0c"
1a190 29 7b 72 65 74 75 72 6e 20 67 2b 22 55 54 46 38  ){return g+"UTF8
1a1a0 53 74 72 69 6e 67 20 27 22 2b 68 65 78 74 6f 75  String '"+hextou
1a1b0 74 66 38 28 41 53 4e 31 48 45 58 2e 67 65 74 48  tf8(ASN1HEX.getH
1a1c0 65 78 4f 66 56 5f 41 74 4f 62 6a 28 65 2c 6b 29  exOfV_AtObj(e,k)
1a1d0 29 2b 22 27 5c 6e 22 7d 69 66 28 65 2e 73 75 62  )+"'\n"}if(e.sub
1a1e0 73 74 72 28 6b 2c 32 29 3d 3d 22 31 33 22 29 7b  str(k,2)=="13"){
1a1f0 72 65 74 75 72 6e 20 67 2b 22 50 72 69 6e 74 61  return g+"Printa
1a200 62 6c 65 53 74 72 69 6e 67 20 27 22 2b 68 65 78  bleString '"+hex
1a210 74 6f 75 74 66 38 28 41 53 4e 31 48 45 58 2e 67  toutf8(ASN1HEX.g
1a220 65 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a 28 65  etHexOfV_AtObj(e
1a230 2c 6b 29 29 2b 22 27 5c 6e 22 7d 69 66 28 65 2e  ,k))+"'\n"}if(e.
1a240 73 75 62 73 74 72 28 6b 2c 32 29 3d 3d 22 31 34  substr(k,2)=="14
1a250 22 29 7b 72 65 74 75 72 6e 20 67 2b 22 54 65 6c  "){return g+"Tel
1a260 65 74 65 78 53 74 72 69 6e 67 20 27 22 2b 68 65  etexString '"+he
1a270 78 74 6f 75 74 66 38 28 41 53 4e 31 48 45 58 2e  xtoutf8(ASN1HEX.
1a280 67 65 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a 28  getHexOfV_AtObj(
1a290 65 2c 6b 29 29 2b 22 27 5c 6e 22 7d 69 66 28 65  e,k))+"'\n"}if(e
1a2a0 2e 73 75 62 73 74 72 28 6b 2c 32 29 3d 3d 22 31  .substr(k,2)=="1
1a2b0 36 22 29 7b 72 65 74 75 72 6e 20 67 2b 22 49 41  6"){return g+"IA
1a2c0 35 53 74 72 69 6e 67 20 27 22 2b 68 65 78 74 6f  5String '"+hexto
1a2d0 75 74 66 38 28 41 53 4e 31 48 45 58 2e 67 65 74  utf8(ASN1HEX.get
1a2e0 48 65 78 4f 66 56 5f 41 74 4f 62 6a 28 65 2c 6b  HexOfV_AtObj(e,k
1a2f0 29 29 2b 22 27 5c 6e 22 7d 69 66 28 65 2e 73 75  ))+"'\n"}if(e.su
1a300 62 73 74 72 28 6b 2c 32 29 3d 3d 22 31 37 22 29  bstr(k,2)=="17")
1a310 7b 72 65 74 75 72 6e 20 67 2b 22 55 54 43 54 69  {return g+"UTCTi
1a320 6d 65 20 22 2b 68 65 78 74 6f 75 74 66 38 28 41  me "+hextoutf8(A
1a330 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66 56  SN1HEX.getHexOfV
1a340 5f 41 74 4f 62 6a 28 65 2c 6b 29 29 2b 22 5c 6e  _AtObj(e,k))+"\n
1a350 22 7d 69 66 28 65 2e 73 75 62 73 74 72 28 6b 2c  "}if(e.substr(k,
1a360 32 29 3d 3d 22 31 38 22 29 7b 72 65 74 75 72 6e  2)=="18"){return
1a370 20 67 2b 22 47 65 6e 65 72 61 6c 69 7a 65 64 54   g+"GeneralizedT
1a380 69 6d 65 20 22 2b 68 65 78 74 6f 75 74 66 38 28  ime "+hextoutf8(
1a390 41 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66  ASN1HEX.getHexOf
1a3a0 56 5f 41 74 4f 62 6a 28 65 2c 6b 29 29 2b 22 5c  V_AtObj(e,k))+"\
1a3b0 6e 22 7d 69 66 28 65 2e 73 75 62 73 74 72 28 6b  n"}if(e.substr(k
1a3c0 2c 32 29 3d 3d 22 33 30 22 29 7b 69 66 28 65 2e  ,2)=="30"){if(e.
1a3d0 73 75 62 73 74 72 28 6b 2c 34 29 3d 3d 22 33 30  substr(k,4)=="30
1a3e0 30 30 22 29 7b 72 65 74 75 72 6e 20 67 2b 22 53  00"){return g+"S
1a3f0 45 51 55 45 4e 43 45 20 7b 7d 5c 6e 22 7d 76 61  EQUENCE {}\n"}va
1a400 72 20 6a 3d 67 2b 22 53 45 51 55 45 4e 43 45 5c  r j=g+"SEQUENCE\
1a410 6e 22 3b 76 61 72 20 64 3d 41 53 4e 31 48 45 58  n";var d=ASN1HEX
1a420 2e 67 65 74 50 6f 73 41 72 72 61 79 4f 66 43 68  .getPosArrayOfCh
1a430 69 6c 64 72 65 6e 5f 41 74 4f 62 6a 28 65 2c 6b  ildren_AtObj(e,k
1a440 29 3b 76 61 72 20 66 3d 63 3b 69 66 28 28 64 2e  );var f=c;if((d.
1a450 6c 65 6e 67 74 68 3d 3d 32 7c 7c 64 2e 6c 65 6e  length==2||d.len
1a460 67 74 68 3d 3d 33 29 26 26 65 2e 73 75 62 73 74  gth==3)&&e.subst
1a470 72 28 64 5b 30 5d 2c 32 29 3d 3d 22 30 36 22 26  r(d[0],2)=="06"&
1a480 26 65 2e 73 75 62 73 74 72 28 64 5b 64 2e 6c 65  &e.substr(d[d.le
1a490 6e 67 74 68 2d 31 5d 2c 32 29 3d 3d 22 30 34 22  ngth-1],2)=="04"
1a4a0 29 7b 76 61 72 20 74 3d 41 53 4e 31 48 45 58 2e  ){var t=ASN1HEX.
1a4b0 67 65 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a 28  getHexOfV_AtObj(
1a4c0 65 2c 64 5b 30 5d 29 3b 76 61 72 20 61 3d 4b 4a  e,d[0]);var a=KJ
1a4d0 55 52 2e 61 73 6e 31 2e 41 53 4e 31 55 74 69 6c  UR.asn1.ASN1Util
1a4e0 2e 6f 69 64 48 65 78 54 6f 49 6e 74 28 74 29 3b  .oidHexToInt(t);
1a4f0 76 61 72 20 6e 3d 4b 4a 55 52 2e 61 73 6e 31 2e  var n=KJUR.asn1.
1a500 78 35 30 39 2e 4f 49 44 2e 6f 69 64 32 6e 61 6d  x509.OID.oid2nam
1a510 65 28 61 29 3b 76 61 72 20 70 3d 4a 53 4f 4e 2e  e(a);var p=JSON.
1a520 70 61 72 73 65 28 4a 53 4f 4e 2e 73 74 72 69 6e  parse(JSON.strin
1a530 67 69 66 79 28 63 29 29 3b 70 2e 78 35 30 39 45  gify(c));p.x509E
1a540 78 74 4e 61 6d 65 3d 6e 3b 66 3d 70 7d 66 6f 72  xtName=n;f=p}for
1a550 28 76 61 72 20 71 3d 30 3b 71 3c 64 2e 6c 65 6e  (var q=0;q<d.len
1a560 67 74 68 3b 71 2b 2b 29 7b 6a 3d 6a 2b 41 53 4e  gth;q++){j=j+ASN
1a570 31 48 45 58 2e 64 75 6d 70 28 65 2c 66 2c 64 5b  1HEX.dump(e,f,d[
1a580 71 5d 2c 67 2b 22 20 20 22 29 7d 72 65 74 75 72  q],g+"  ")}retur
1a590 6e 20 6a 7d 69 66 28 65 2e 73 75 62 73 74 72 28  n j}if(e.substr(
1a5a0 6b 2c 32 29 3d 3d 22 33 31 22 29 7b 76 61 72 20  k,2)=="31"){var 
1a5b0 6a 3d 67 2b 22 53 45 54 5c 6e 22 3b 76 61 72 20  j=g+"SET\n";var 
1a5c0 64 3d 41 53 4e 31 48 45 58 2e 67 65 74 50 6f 73  d=ASN1HEX.getPos
1a5d0 41 72 72 61 79 4f 66 43 68 69 6c 64 72 65 6e 5f  ArrayOfChildren_
1a5e0 41 74 4f 62 6a 28 65 2c 6b 29 3b 66 6f 72 28 76  AtObj(e,k);for(v
1a5f0 61 72 20 71 3d 30 3b 71 3c 64 2e 6c 65 6e 67 74  ar q=0;q<d.lengt
1a600 68 3b 71 2b 2b 29 7b 6a 3d 6a 2b 41 53 4e 31 48  h;q++){j=j+ASN1H
1a610 45 58 2e 64 75 6d 70 28 65 2c 63 2c 64 5b 71 5d  EX.dump(e,c,d[q]
1a620 2c 67 2b 22 20 20 22 29 7d 72 65 74 75 72 6e 20  ,g+"  ")}return 
1a630 6a 7d 76 61 72 20 75 3d 70 61 72 73 65 49 6e 74  j}var u=parseInt
1a640 28 65 2e 73 75 62 73 74 72 28 6b 2c 32 29 2c 31  (e.substr(k,2),1
1a650 36 29 3b 69 66 28 28 75 26 31 32 38 29 21 3d 30  6);if((u&128)!=0
1a660 29 7b 76 61 72 20 6d 3d 75 26 33 31 3b 69 66 28  ){var m=u&31;if(
1a670 28 75 26 33 32 29 21 3d 30 29 7b 76 61 72 20 6a  (u&32)!=0){var j
1a680 3d 67 2b 22 5b 22 2b 6d 2b 22 5d 5c 6e 22 3b 76  =g+"["+m+"]\n";v
1a690 61 72 20 64 3d 41 53 4e 31 48 45 58 2e 67 65 74  ar d=ASN1HEX.get
1a6a0 50 6f 73 41 72 72 61 79 4f 66 43 68 69 6c 64 72  PosArrayOfChildr
1a6b0 65 6e 5f 41 74 4f 62 6a 28 65 2c 6b 29 3b 66 6f  en_AtObj(e,k);fo
1a6c0 72 28 76 61 72 20 71 3d 30 3b 71 3c 64 2e 6c 65  r(var q=0;q<d.le
1a6d0 6e 67 74 68 3b 71 2b 2b 29 7b 6a 3d 6a 2b 41 53  ngth;q++){j=j+AS
1a6e0 4e 31 48 45 58 2e 64 75 6d 70 28 65 2c 63 2c 64  N1HEX.dump(e,c,d
1a6f0 5b 71 5d 2c 67 2b 22 20 20 22 29 7d 72 65 74 75  [q],g+"  ")}retu
1a700 72 6e 20 6a 7d 65 6c 73 65 7b 76 61 72 20 68 3d  rn j}else{var h=
1a710 41 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66  ASN1HEX.getHexOf
1a720 56 5f 41 74 4f 62 6a 28 65 2c 6b 29 3b 69 66 28  V_AtObj(e,k);if(
1a730 68 2e 73 75 62 73 74 72 28 30 2c 38 29 3d 3d 22  h.substr(0,8)=="
1a740 36 38 37 34 37 34 37 30 22 29 7b 68 3d 68 65 78  68747470"){h=hex
1a750 74 6f 75 74 66 38 28 68 29 7d 69 66 28 63 2e 78  toutf8(h)}if(c.x
1a760 35 30 39 45 78 74 4e 61 6d 65 3d 3d 3d 22 73 75  509ExtName==="su
1a770 62 6a 65 63 74 41 6c 74 4e 61 6d 65 22 26 26 6d  bjectAltName"&&m
1a780 3d 3d 32 29 7b 68 3d 68 65 78 74 6f 75 74 66 38  ==2){h=hextoutf8
1a790 28 68 29 7d 76 61 72 20 6a 3d 67 2b 22 5b 22 2b  (h)}var j=g+"["+
1a7a0 6d 2b 22 5d 20 22 2b 68 2b 22 5c 6e 22 3b 72 65  m+"] "+h+"\n";re
1a7b0 74 75 72 6e 20 6a 7d 7d 72 65 74 75 72 6e 20 67  turn j}}return g
1a7c0 2b 22 55 4e 4b 4e 4f 57 4e 28 22 2b 65 2e 73 75  +"UNKNOWN("+e.su
1a7d0 62 73 74 72 28 6b 2c 32 29 2b 22 29 20 22 2b 41  bstr(k,2)+") "+A
1a7e0 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66 56  SN1HEX.getHexOfV
1a7f0 5f 41 74 4f 62 6a 28 65 2c 6b 29 2b 22 5c 6e 22  _AtObj(e,k)+"\n"
1a800 7d 3b 41 53 4e 31 48 45 58 2e 69 73 41 53 4e 31  };ASN1HEX.isASN1
1a810 48 45 58 3d 66 75 6e 63 74 69 6f 6e 28 64 29 7b  HEX=function(d){
1a820 69 66 28 64 2e 6c 65 6e 67 74 68 25 32 3d 3d 31  if(d.length%2==1
1a830 29 7b 72 65 74 75 72 6e 20 66 61 6c 73 65 7d 76  ){return false}v
1a840 61 72 20 63 3d 41 53 4e 31 48 45 58 2e 67 65 74  ar c=ASN1HEX.get
1a850 49 6e 74 4f 66 4c 5f 41 74 4f 62 6a 28 64 2c 30  IntOfL_AtObj(d,0
1a860 29 3b 76 61 72 20 62 3d 64 2e 73 75 62 73 74 72  );var b=d.substr
1a870 28 30 2c 32 29 3b 76 61 72 20 65 3d 41 53 4e 31  (0,2);var e=ASN1
1a880 48 45 58 2e 67 65 74 48 65 78 4f 66 4c 5f 41 74  HEX.getHexOfL_At
1a890 4f 62 6a 28 64 2c 30 29 3b 76 61 72 20 61 3d 64  Obj(d,0);var a=d
1a8a0 2e 6c 65 6e 67 74 68 2d 62 2e 6c 65 6e 67 74 68  .length-b.length
1a8b0 2d 65 2e 6c 65 6e 67 74 68 3b 69 66 28 61 3d 3d  -e.length;if(a==
1a8c0 63 2a 32 29 7b 72 65 74 75 72 6e 20 74 72 75 65  c*2){return true
1a8d0 7d 72 65 74 75 72 6e 20 66 61 6c 73 65 7d 3b 0a  }return false};.
1a8e0 2f 2a 21 20 61 73 6e 31 78 35 30 39 2d 31 2e 30  /*! asn1x509-1.0
1a8f0 2e 31 33 2e 6a 73 20 28 63 29 20 32 30 31 33 2d  .13.js (c) 2013-
1a900 32 30 31 35 20 4b 65 6e 6a 69 20 55 72 75 73 68  2015 Kenji Urush
1a910 69 6d 61 20 7c 20 6b 6a 75 72 2e 67 69 74 68 75  ima | kjur.githu
1a920 62 2e 63 6f 6d 2f 6a 73 72 73 61 73 69 67 6e 2f  b.com/jsrsasign/
1a930 6c 69 63 65 6e 73 65 0a 20 2a 2f 0a 69 66 28 74  license. */.if(t
1a940 79 70 65 6f 66 20 4b 4a 55 52 3d 3d 22 75 6e 64  ypeof KJUR=="und
1a950 65 66 69 6e 65 64 22 7c 7c 21 4b 4a 55 52 29 7b  efined"||!KJUR){
1a960 4b 4a 55 52 3d 7b 7d 7d 69 66 28 74 79 70 65 6f  KJUR={}}if(typeo
1a970 66 20 4b 4a 55 52 2e 61 73 6e 31 3d 3d 22 75 6e  f KJUR.asn1=="un
1a980 64 65 66 69 6e 65 64 22 7c 7c 21 4b 4a 55 52 2e  defined"||!KJUR.
1a990 61 73 6e 31 29 7b 4b 4a 55 52 2e 61 73 6e 31 3d  asn1){KJUR.asn1=
1a9a0 7b 7d 7d 69 66 28 74 79 70 65 6f 66 20 4b 4a 55  {}}if(typeof KJU
1a9b0 52 2e 61 73 6e 31 2e 78 35 30 39 3d 3d 22 75 6e  R.asn1.x509=="un
1a9c0 64 65 66 69 6e 65 64 22 7c 7c 21 4b 4a 55 52 2e  defined"||!KJUR.
1a9d0 61 73 6e 31 2e 78 35 30 39 29 7b 4b 4a 55 52 2e  asn1.x509){KJUR.
1a9e0 61 73 6e 31 2e 78 35 30 39 3d 7b 7d 7d 4b 4a 55  asn1.x509={}}KJU
1a9f0 52 2e 61 73 6e 31 2e 78 35 30 39 2e 43 65 72 74  R.asn1.x509.Cert
1aa00 69 66 69 63 61 74 65 3d 66 75 6e 63 74 69 6f 6e  ificate=function
1aa10 28 67 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e 78 35  (g){KJUR.asn1.x5
1aa20 30 39 2e 43 65 72 74 69 66 69 63 61 74 65 2e 73  09.Certificate.s
1aa30 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72  uperclass.constr
1aa40 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29  uctor.call(this)
1aa50 3b 76 61 72 20 62 3d 6e 75 6c 6c 3b 76 61 72 20  ;var b=null;var 
1aa60 64 3d 6e 75 6c 6c 3b 76 61 72 20 66 3d 6e 75 6c  d=null;var f=nul
1aa70 6c 3b 76 61 72 20 63 3d 6e 75 6c 6c 3b 76 61 72  l;var c=null;var
1aa80 20 61 3d 6e 75 6c 6c 3b 76 61 72 20 65 3d 6e 75   a=null;var e=nu
1aa90 6c 6c 3b 74 68 69 73 2e 73 65 74 52 73 61 50 72  ll;this.setRsaPr
1aaa0 76 4b 65 79 42 79 50 45 4d 61 6e 64 50 61 73 73  vKeyByPEMandPass
1aab0 3d 66 75 6e 63 74 69 6f 6e 28 69 2c 6b 29 7b 76  =function(i,k){v
1aac0 61 72 20 68 3d 50 4b 43 53 35 50 4b 45 59 2e 67  ar h=PKCS5PKEY.g
1aad0 65 74 44 65 63 72 79 70 74 65 64 4b 65 79 48 65  etDecryptedKeyHe
1aae0 78 28 69 2c 6b 29 3b 76 61 72 20 6a 3d 6e 65 77  x(i,k);var j=new
1aaf0 20 52 53 41 4b 65 79 28 29 3b 6a 2e 72 65 61 64   RSAKey();j.read
1ab00 50 72 69 76 61 74 65 4b 65 79 46 72 6f 6d 41 53  PrivateKeyFromAS
1ab10 4e 31 48 65 78 53 74 72 69 6e 67 28 68 29 3b 74  N1HexString(h);t
1ab20 68 69 73 2e 70 72 76 4b 65 79 3d 6a 7d 3b 74 68  his.prvKey=j};th
1ab30 69 73 2e 73 69 67 6e 3d 66 75 6e 63 74 69 6f 6e  is.sign=function
1ab40 28 29 7b 74 68 69 73 2e 61 73 6e 31 53 69 67 6e  (){this.asn1Sign
1ab50 61 74 75 72 65 41 6c 67 3d 74 68 69 73 2e 61 73  atureAlg=this.as
1ab60 6e 31 54 42 53 43 65 72 74 2e 61 73 6e 31 53 69  n1TBSCert.asn1Si
1ab70 67 6e 61 74 75 72 65 41 6c 67 3b 73 69 67 3d 6e  gnatureAlg;sig=n
1ab80 65 77 20 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 53  ew KJUR.crypto.S
1ab90 69 67 6e 61 74 75 72 65 28 7b 61 6c 67 3a 22 53  ignature({alg:"S
1aba0 48 41 31 77 69 74 68 52 53 41 22 7d 29 3b 73 69  HA1withRSA"});si
1abb0 67 2e 69 6e 69 74 28 74 68 69 73 2e 70 72 76 4b  g.init(this.prvK
1abc0 65 79 29 3b 73 69 67 2e 75 70 64 61 74 65 48 65  ey);sig.updateHe
1abd0 78 28 74 68 69 73 2e 61 73 6e 31 54 42 53 43 65  x(this.asn1TBSCe
1abe0 72 74 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78  rt.getEncodedHex
1abf0 28 29 29 3b 74 68 69 73 2e 68 65 78 53 69 67 3d  ());this.hexSig=
1ac00 73 69 67 2e 73 69 67 6e 28 29 3b 74 68 69 73 2e  sig.sign();this.
1ac10 61 73 6e 31 53 69 67 3d 6e 65 77 20 4b 4a 55 52  asn1Sig=new KJUR
1ac20 2e 61 73 6e 31 2e 44 45 52 42 69 74 53 74 72 69  .asn1.DERBitStri
1ac30 6e 67 28 7b 68 65 78 3a 22 30 30 22 2b 74 68 69  ng({hex:"00"+thi
1ac40 73 2e 68 65 78 53 69 67 7d 29 3b 76 61 72 20 68  s.hexSig});var h
1ac50 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44  =new KJUR.asn1.D
1ac60 45 52 53 65 71 75 65 6e 63 65 28 7b 61 72 72 61  ERSequence({arra
1ac70 79 3a 5b 74 68 69 73 2e 61 73 6e 31 54 42 53 43  y:[this.asn1TBSC
1ac80 65 72 74 2c 74 68 69 73 2e 61 73 6e 31 53 69 67  ert,this.asn1Sig
1ac90 6e 61 74 75 72 65 41 6c 67 2c 74 68 69 73 2e 61  natureAlg,this.a
1aca0 73 6e 31 53 69 67 5d 7d 29 3b 74 68 69 73 2e 68  sn1Sig]});this.h
1acb0 54 4c 56 3d 68 2e 67 65 74 45 6e 63 6f 64 65 64  TLV=h.getEncoded
1acc0 48 65 78 28 29 3b 74 68 69 73 2e 69 73 4d 6f 64  Hex();this.isMod
1acd0 69 66 69 65 64 3d 66 61 6c 73 65 7d 3b 74 68 69  ified=false};thi
1ace0 73 2e 73 65 74 53 69 67 6e 61 74 75 72 65 48 65  s.setSignatureHe
1acf0 78 3d 66 75 6e 63 74 69 6f 6e 28 68 29 7b 74 68  x=function(h){th
1ad00 69 73 2e 61 73 6e 31 53 69 67 6e 61 74 75 72 65  is.asn1Signature
1ad10 41 6c 67 3d 74 68 69 73 2e 61 73 6e 31 54 42 53  Alg=this.asn1TBS
1ad20 43 65 72 74 2e 61 73 6e 31 53 69 67 6e 61 74 75  Cert.asn1Signatu
1ad30 72 65 41 6c 67 3b 74 68 69 73 2e 68 65 78 53 69  reAlg;this.hexSi
1ad40 67 3d 68 3b 74 68 69 73 2e 61 73 6e 31 53 69 67  g=h;this.asn1Sig
1ad50 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44  =new KJUR.asn1.D
1ad60 45 52 42 69 74 53 74 72 69 6e 67 28 7b 68 65 78  ERBitString({hex
1ad70 3a 22 30 30 22 2b 74 68 69 73 2e 68 65 78 53 69  :"00"+this.hexSi
1ad80 67 7d 29 3b 76 61 72 20 69 3d 6e 65 77 20 4b 4a  g});var i=new KJ
1ad90 55 52 2e 61 73 6e 31 2e 44 45 52 53 65 71 75 65  UR.asn1.DERSeque
1ada0 6e 63 65 28 7b 61 72 72 61 79 3a 5b 74 68 69 73  nce({array:[this
1adb0 2e 61 73 6e 31 54 42 53 43 65 72 74 2c 74 68 69  .asn1TBSCert,thi
1adc0 73 2e 61 73 6e 31 53 69 67 6e 61 74 75 72 65 41  s.asn1SignatureA
1add0 6c 67 2c 74 68 69 73 2e 61 73 6e 31 53 69 67 5d  lg,this.asn1Sig]
1ade0 7d 29 3b 74 68 69 73 2e 68 54 4c 56 3d 69 2e 67  });this.hTLV=i.g
1adf0 65 74 45 6e 63 6f 64 65 64 48 65 78 28 29 3b 74  etEncodedHex();t
1ae00 68 69 73 2e 69 73 4d 6f 64 69 66 69 65 64 3d 66  his.isModified=f
1ae10 61 6c 73 65 7d 3b 74 68 69 73 2e 67 65 74 45 6e  alse};this.getEn
1ae20 63 6f 64 65 64 48 65 78 3d 66 75 6e 63 74 69 6f  codedHex=functio
1ae30 6e 28 29 7b 69 66 28 74 68 69 73 2e 69 73 4d 6f  n(){if(this.isMo
1ae40 64 69 66 69 65 64 3d 3d 66 61 6c 73 65 26 26 74  dified==false&&t
1ae50 68 69 73 2e 68 54 4c 56 21 3d 6e 75 6c 6c 29 7b  his.hTLV!=null){
1ae60 72 65 74 75 72 6e 20 74 68 69 73 2e 68 54 4c 56  return this.hTLV
1ae70 7d 74 68 72 6f 77 22 6e 6f 74 20 73 69 67 6e 65  }throw"not signe
1ae80 64 20 79 65 74 22 7d 3b 74 68 69 73 2e 67 65 74  d yet"};this.get
1ae90 50 45 4d 53 74 72 69 6e 67 3d 66 75 6e 63 74 69  PEMString=functi
1aea0 6f 6e 28 29 7b 76 61 72 20 6a 3d 74 68 69 73 2e  on(){var j=this.
1aeb0 67 65 74 45 6e 63 6f 64 65 64 48 65 78 28 29 3b  getEncodedHex();
1aec0 76 61 72 20 68 3d 43 72 79 70 74 6f 4a 53 2e 65  var h=CryptoJS.e
1aed0 6e 63 2e 48 65 78 2e 70 61 72 73 65 28 6a 29 3b  nc.Hex.parse(j);
1aee0 76 61 72 20 69 3d 43 72 79 70 74 6f 4a 53 2e 65  var i=CryptoJS.e
1aef0 6e 63 2e 42 61 73 65 36 34 2e 73 74 72 69 6e 67  nc.Base64.string
1af00 69 66 79 28 68 29 3b 76 61 72 20 6b 3d 69 2e 72  ify(h);var k=i.r
1af10 65 70 6c 61 63 65 28 2f 28 2e 7b 36 34 7d 29 2f  eplace(/(.{64})/
1af20 67 2c 22 24 31 5c 72 5c 6e 22 29 3b 72 65 74 75  g,"$1\r\n");retu
1af30 72 6e 22 2d 2d 2d 2d 2d 42 45 47 49 4e 20 43 45  rn"-----BEGIN CE
1af40 52 54 49 46 49 43 41 54 45 2d 2d 2d 2d 2d 5c 72  RTIFICATE-----\r
1af50 5c 6e 22 2b 6b 2b 22 5c 72 5c 6e 2d 2d 2d 2d 2d  \n"+k+"\r\n-----
1af60 45 4e 44 20 43 45 52 54 49 46 49 43 41 54 45 2d  END CERTIFICATE-
1af70 2d 2d 2d 2d 5c 72 5c 6e 22 7d 3b 69 66 28 74 79  ----\r\n"};if(ty
1af80 70 65 6f 66 20 67 21 3d 22 75 6e 64 65 66 69 6e  peof g!="undefin
1af90 65 64 22 29 7b 69 66 28 74 79 70 65 6f 66 20 67  ed"){if(typeof g
1afa0 2e 74 62 73 63 65 72 74 6f 62 6a 21 3d 22 75 6e  .tbscertobj!="un
1afb0 64 65 66 69 6e 65 64 22 29 7b 74 68 69 73 2e 61  defined"){this.a
1afc0 73 6e 31 54 42 53 43 65 72 74 3d 67 2e 74 62 73  sn1TBSCert=g.tbs
1afd0 63 65 72 74 6f 62 6a 7d 69 66 28 74 79 70 65 6f  certobj}if(typeo
1afe0 66 20 67 2e 70 72 76 6b 65 79 6f 62 6a 21 3d 22  f g.prvkeyobj!="
1aff0 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68 69 73  undefined"){this
1b000 2e 70 72 76 4b 65 79 3d 67 2e 70 72 76 6b 65 79  .prvKey=g.prvkey
1b010 6f 62 6a 7d 65 6c 73 65 7b 69 66 28 74 79 70 65  obj}else{if(type
1b020 6f 66 20 67 2e 72 73 61 70 72 76 6b 65 79 21 3d  of g.rsaprvkey!=
1b030 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68 69  "undefined"){thi
1b040 73 2e 70 72 76 4b 65 79 3d 67 2e 72 73 61 70 72  s.prvKey=g.rsapr
1b050 76 6b 65 79 7d 65 6c 73 65 7b 69 66 28 28 74 79  vkey}else{if((ty
1b060 70 65 6f 66 20 67 2e 72 73 61 70 72 76 70 65 6d  peof g.rsaprvpem
1b070 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 26 26  !="undefined")&&
1b080 28 74 79 70 65 6f 66 20 67 2e 72 73 61 70 72 76  (typeof g.rsaprv
1b090 70 61 73 21 3d 22 75 6e 64 65 66 69 6e 65 64 22  pas!="undefined"
1b0a0 29 29 7b 74 68 69 73 2e 73 65 74 52 73 61 50 72  )){this.setRsaPr
1b0b0 76 4b 65 79 42 79 50 45 4d 61 6e 64 50 61 73 73  vKeyByPEMandPass
1b0c0 28 67 2e 72 73 61 70 72 76 70 65 6d 2c 67 2e 72  (g.rsaprvpem,g.r
1b0d0 73 61 70 72 76 70 61 73 29 7d 7d 7d 7d 7d 3b 59  saprvpas)}}}}};Y
1b0e0 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64  AHOO.lang.extend
1b0f0 28 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e  (KJUR.asn1.x509.
1b100 43 65 72 74 69 66 69 63 61 74 65 2c 4b 4a 55 52  Certificate,KJUR
1b110 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74  .asn1.ASN1Object
1b120 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39  );KJUR.asn1.x509
1b130 2e 54 42 53 43 65 72 74 69 66 69 63 61 74 65 3d  .TBSCertificate=
1b140 66 75 6e 63 74 69 6f 6e 28 61 29 7b 4b 4a 55 52  function(a){KJUR
1b150 2e 61 73 6e 31 2e 78 35 30 39 2e 54 42 53 43 65  .asn1.x509.TBSCe
1b160 72 74 69 66 69 63 61 74 65 2e 73 75 70 65 72 63  rtificate.superc
1b170 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72  lass.constructor
1b180 2e 63 61 6c 6c 28 74 68 69 73 29 3b 74 68 69 73  .call(this);this
1b190 2e 5f 69 6e 69 74 69 61 6c 69 7a 65 3d 66 75 6e  ._initialize=fun
1b1a0 63 74 69 6f 6e 28 29 7b 74 68 69 73 2e 61 73 6e  ction(){this.asn
1b1b0 31 41 72 72 61 79 3d 6e 65 77 20 41 72 72 61 79  1Array=new Array
1b1c0 28 29 3b 74 68 69 73 2e 61 73 6e 31 56 65 72 73  ();this.asn1Vers
1b1d0 69 6f 6e 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e  ion=new KJUR.asn
1b1e0 31 2e 44 45 52 54 61 67 67 65 64 4f 62 6a 65 63  1.DERTaggedObjec
1b1f0 74 28 7b 6f 62 6a 3a 6e 65 77 20 4b 4a 55 52 2e  t({obj:new KJUR.
1b200 61 73 6e 31 2e 44 45 52 49 6e 74 65 67 65 72 28  asn1.DERInteger(
1b210 7b 22 69 6e 74 22 3a 32 7d 29 7d 29 3b 74 68 69  {"int":2})});thi
1b220 73 2e 61 73 6e 31 53 65 72 69 61 6c 4e 75 6d 62  s.asn1SerialNumb
1b230 65 72 3d 6e 75 6c 6c 3b 74 68 69 73 2e 61 73 6e  er=null;this.asn
1b240 31 53 69 67 6e 61 74 75 72 65 41 6c 67 3d 6e 75  1SignatureAlg=nu
1b250 6c 6c 3b 74 68 69 73 2e 61 73 6e 31 49 73 73 75  ll;this.asn1Issu
1b260 65 72 3d 6e 75 6c 6c 3b 74 68 69 73 2e 61 73 6e  er=null;this.asn
1b270 31 4e 6f 74 42 65 66 6f 72 65 3d 6e 75 6c 6c 3b  1NotBefore=null;
1b280 74 68 69 73 2e 61 73 6e 31 4e 6f 74 41 66 74 65  this.asn1NotAfte
1b290 72 3d 6e 75 6c 6c 3b 74 68 69 73 2e 61 73 6e 31  r=null;this.asn1
1b2a0 53 75 62 6a 65 63 74 3d 6e 75 6c 6c 3b 74 68 69  Subject=null;thi
1b2b0 73 2e 61 73 6e 31 53 75 62 6a 50 4b 65 79 3d 6e  s.asn1SubjPKey=n
1b2c0 75 6c 6c 3b 74 68 69 73 2e 65 78 74 65 6e 73 69  ull;this.extensi
1b2d0 6f 6e 73 41 72 72 61 79 3d 6e 65 77 20 41 72 72  onsArray=new Arr
1b2e0 61 79 28 29 7d 3b 74 68 69 73 2e 73 65 74 53 65  ay()};this.setSe
1b2f0 72 69 61 6c 4e 75 6d 62 65 72 42 79 50 61 72 61  rialNumberByPara
1b300 6d 3d 66 75 6e 63 74 69 6f 6e 28 62 29 7b 74 68  m=function(b){th
1b310 69 73 2e 61 73 6e 31 53 65 72 69 61 6c 4e 75 6d  is.asn1SerialNum
1b320 62 65 72 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e  ber=new KJUR.asn
1b330 31 2e 44 45 52 49 6e 74 65 67 65 72 28 62 29 7d  1.DERInteger(b)}
1b340 3b 74 68 69 73 2e 73 65 74 53 69 67 6e 61 74 75  ;this.setSignatu
1b350 72 65 41 6c 67 42 79 50 61 72 61 6d 3d 66 75 6e  reAlgByParam=fun
1b360 63 74 69 6f 6e 28 62 29 7b 74 68 69 73 2e 61 73  ction(b){this.as
1b370 6e 31 53 69 67 6e 61 74 75 72 65 41 6c 67 3d 6e  n1SignatureAlg=n
1b380 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30  ew KJUR.asn1.x50
1b390 39 2e 41 6c 67 6f 72 69 74 68 6d 49 64 65 6e 74  9.AlgorithmIdent
1b3a0 69 66 69 65 72 28 62 29 7d 3b 74 68 69 73 2e 73  ifier(b)};this.s
1b3b0 65 74 49 73 73 75 65 72 42 79 50 61 72 61 6d 3d  etIssuerByParam=
1b3c0 66 75 6e 63 74 69 6f 6e 28 62 29 7b 74 68 69 73  function(b){this
1b3d0 2e 61 73 6e 31 49 73 73 75 65 72 3d 6e 65 77 20  .asn1Issuer=new 
1b3e0 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 58  KJUR.asn1.x509.X
1b3f0 35 30 30 4e 61 6d 65 28 62 29 7d 3b 74 68 69 73  500Name(b)};this
1b400 2e 73 65 74 4e 6f 74 42 65 66 6f 72 65 42 79 50  .setNotBeforeByP
1b410 61 72 61 6d 3d 66 75 6e 63 74 69 6f 6e 28 62 29  aram=function(b)
1b420 7b 74 68 69 73 2e 61 73 6e 31 4e 6f 74 42 65 66  {this.asn1NotBef
1b430 6f 72 65 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e  ore=new KJUR.asn
1b440 31 2e 78 35 30 39 2e 54 69 6d 65 28 62 29 7d 3b  1.x509.Time(b)};
1b450 74 68 69 73 2e 73 65 74 4e 6f 74 41 66 74 65 72  this.setNotAfter
1b460 42 79 50 61 72 61 6d 3d 66 75 6e 63 74 69 6f 6e  ByParam=function
1b470 28 62 29 7b 74 68 69 73 2e 61 73 6e 31 4e 6f 74  (b){this.asn1Not
1b480 41 66 74 65 72 3d 6e 65 77 20 4b 4a 55 52 2e 61  After=new KJUR.a
1b490 73 6e 31 2e 78 35 30 39 2e 54 69 6d 65 28 62 29  sn1.x509.Time(b)
1b4a0 7d 3b 74 68 69 73 2e 73 65 74 53 75 62 6a 65 63  };this.setSubjec
1b4b0 74 42 79 50 61 72 61 6d 3d 66 75 6e 63 74 69 6f  tByParam=functio
1b4c0 6e 28 62 29 7b 74 68 69 73 2e 61 73 6e 31 53 75  n(b){this.asn1Su
1b4d0 62 6a 65 63 74 3d 6e 65 77 20 4b 4a 55 52 2e 61  bject=new KJUR.a
1b4e0 73 6e 31 2e 78 35 30 39 2e 58 35 30 30 4e 61 6d  sn1.x509.X500Nam
1b4f0 65 28 62 29 7d 3b 74 68 69 73 2e 73 65 74 53 75  e(b)};this.setSu
1b500 62 6a 65 63 74 50 75 62 6c 69 63 4b 65 79 42 79  bjectPublicKeyBy
1b510 50 61 72 61 6d 3d 66 75 6e 63 74 69 6f 6e 28 62  Param=function(b
1b520 29 7b 74 68 69 73 2e 61 73 6e 31 53 75 62 6a 50  ){this.asn1SubjP
1b530 4b 65 79 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e  Key=new KJUR.asn
1b540 31 2e 78 35 30 39 2e 53 75 62 6a 65 63 74 50 75  1.x509.SubjectPu
1b550 62 6c 69 63 4b 65 79 49 6e 66 6f 28 62 29 7d 3b  blicKeyInfo(b)};
1b560 74 68 69 73 2e 73 65 74 53 75 62 6a 65 63 74 50  this.setSubjectP
1b570 75 62 6c 69 63 4b 65 79 42 79 47 65 74 4b 65 79  ublicKeyByGetKey
1b580 3d 66 75 6e 63 74 69 6f 6e 28 63 29 7b 76 61 72  =function(c){var
1b590 20 62 3d 4b 45 59 55 54 49 4c 2e 67 65 74 4b 65   b=KEYUTIL.getKe
1b5a0 79 28 63 29 3b 74 68 69 73 2e 61 73 6e 31 53 75  y(c);this.asn1Su
1b5b0 62 6a 50 4b 65 79 3d 6e 65 77 20 4b 4a 55 52 2e  bjPKey=new KJUR.
1b5c0 61 73 6e 31 2e 78 35 30 39 2e 53 75 62 6a 65 63  asn1.x509.Subjec
1b5d0 74 50 75 62 6c 69 63 4b 65 79 49 6e 66 6f 28 62  tPublicKeyInfo(b
1b5e0 29 7d 3b 74 68 69 73 2e 61 70 70 65 6e 64 45 78  )};this.appendEx
1b5f0 74 65 6e 73 69 6f 6e 3d 66 75 6e 63 74 69 6f 6e  tension=function
1b600 28 62 29 7b 74 68 69 73 2e 65 78 74 65 6e 73 69  (b){this.extensi
1b610 6f 6e 73 41 72 72 61 79 2e 70 75 73 68 28 62 29  onsArray.push(b)
1b620 7d 3b 74 68 69 73 2e 61 70 70 65 6e 64 45 78 74  };this.appendExt
1b630 65 6e 73 69 6f 6e 42 79 4e 61 6d 65 3d 66 75 6e  ensionByName=fun
1b640 63 74 69 6f 6e 28 64 2c 62 29 7b 69 66 28 64 2e  ction(d,b){if(d.
1b650 74 6f 4c 6f 77 65 72 43 61 73 65 28 29 3d 3d 22  toLowerCase()=="
1b660 62 61 73 69 63 63 6f 6e 73 74 72 61 69 6e 74 73  basicconstraints
1b670 22 29 7b 76 61 72 20 63 3d 6e 65 77 20 4b 4a 55  "){var c=new KJU
1b680 52 2e 61 73 6e 31 2e 78 35 30 39 2e 42 61 73 69  R.asn1.x509.Basi
1b690 63 43 6f 6e 73 74 72 61 69 6e 74 73 28 62 29 3b  cConstraints(b);
1b6a0 74 68 69 73 2e 61 70 70 65 6e 64 45 78 74 65 6e  this.appendExten
1b6b0 73 69 6f 6e 28 63 29 7d 65 6c 73 65 7b 69 66 28  sion(c)}else{if(
1b6c0 64 2e 74 6f 4c 6f 77 65 72 43 61 73 65 28 29 3d  d.toLowerCase()=
1b6d0 3d 22 6b 65 79 75 73 61 67 65 22 29 7b 76 61 72  ="keyusage"){var
1b6e0 20 63 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31   c=new KJUR.asn1
1b6f0 2e 78 35 30 39 2e 4b 65 79 55 73 61 67 65 28 62  .x509.KeyUsage(b
1b700 29 3b 74 68 69 73 2e 61 70 70 65 6e 64 45 78 74  );this.appendExt
1b710 65 6e 73 69 6f 6e 28 63 29 7d 65 6c 73 65 7b 69  ension(c)}else{i
1b720 66 28 64 2e 74 6f 4c 6f 77 65 72 43 61 73 65 28  f(d.toLowerCase(
1b730 29 3d 3d 22 63 72 6c 64 69 73 74 72 69 62 75 74  )=="crldistribut
1b740 69 6f 6e 70 6f 69 6e 74 73 22 29 7b 76 61 72 20  ionpoints"){var 
1b750 63 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e  c=new KJUR.asn1.
1b760 78 35 30 39 2e 43 52 4c 44 69 73 74 72 69 62 75  x509.CRLDistribu
1b770 74 69 6f 6e 50 6f 69 6e 74 73 28 62 29 3b 74 68  tionPoints(b);th
1b780 69 73 2e 61 70 70 65 6e 64 45 78 74 65 6e 73 69  is.appendExtensi
1b790 6f 6e 28 63 29 7d 65 6c 73 65 7b 69 66 28 64 2e  on(c)}else{if(d.
1b7a0 74 6f 4c 6f 77 65 72 43 61 73 65 28 29 3d 3d 22  toLowerCase()=="
1b7b0 65 78 74 6b 65 79 75 73 61 67 65 22 29 7b 76 61  extkeyusage"){va
1b7c0 72 20 63 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e  r c=new KJUR.asn
1b7d0 31 2e 78 35 30 39 2e 45 78 74 4b 65 79 55 73 61  1.x509.ExtKeyUsa
1b7e0 67 65 28 62 29 3b 74 68 69 73 2e 61 70 70 65 6e  ge(b);this.appen
1b7f0 64 45 78 74 65 6e 73 69 6f 6e 28 63 29 7d 65 6c  dExtension(c)}el
1b800 73 65 7b 69 66 28 64 2e 74 6f 4c 6f 77 65 72 43  se{if(d.toLowerC
1b810 61 73 65 28 29 3d 3d 22 61 75 74 68 6f 72 69 74  ase()=="authorit
1b820 79 6b 65 79 69 64 65 6e 74 69 66 69 65 72 22 29  ykeyidentifier")
1b830 7b 76 61 72 20 63 3d 6e 65 77 20 4b 4a 55 52 2e  {var c=new KJUR.
1b840 61 73 6e 31 2e 78 35 30 39 2e 41 75 74 68 6f 72  asn1.x509.Author
1b850 69 74 79 4b 65 79 49 64 65 6e 74 69 66 69 65 72  ityKeyIdentifier
1b860 28 62 29 3b 74 68 69 73 2e 61 70 70 65 6e 64 45  (b);this.appendE
1b870 78 74 65 6e 73 69 6f 6e 28 63 29 7d 65 6c 73 65  xtension(c)}else
1b880 7b 74 68 72 6f 77 22 75 6e 73 75 70 70 6f 72 74  {throw"unsupport
1b890 65 64 20 65 78 74 65 6e 73 69 6f 6e 20 6e 61 6d  ed extension nam
1b8a0 65 3a 20 22 2b 64 7d 7d 7d 7d 7d 7d 3b 74 68 69  e: "+d}}}}}};thi
1b8b0 73 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78 3d  s.getEncodedHex=
1b8c0 66 75 6e 63 74 69 6f 6e 28 29 7b 69 66 28 74 68  function(){if(th
1b8d0 69 73 2e 61 73 6e 31 4e 6f 74 42 65 66 6f 72 65  is.asn1NotBefore
1b8e0 3d 3d 6e 75 6c 6c 7c 7c 74 68 69 73 2e 61 73 6e  ==null||this.asn
1b8f0 31 4e 6f 74 41 66 74 65 72 3d 3d 6e 75 6c 6c 29  1NotAfter==null)
1b900 7b 74 68 72 6f 77 22 6e 6f 74 42 65 66 6f 72 65  {throw"notBefore
1b910 20 61 6e 64 2f 6f 72 20 6e 6f 74 41 66 74 65 72   and/or notAfter
1b920 20 6e 6f 74 20 73 65 74 22 7d 76 61 72 20 63 3d   not set"}var c=
1b930 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  new KJUR.asn1.DE
1b940 52 53 65 71 75 65 6e 63 65 28 7b 61 72 72 61 79  RSequence({array
1b950 3a 5b 74 68 69 73 2e 61 73 6e 31 4e 6f 74 42 65  :[this.asn1NotBe
1b960 66 6f 72 65 2c 74 68 69 73 2e 61 73 6e 31 4e 6f  fore,this.asn1No
1b970 74 41 66 74 65 72 5d 7d 29 3b 74 68 69 73 2e 61  tAfter]});this.a
1b980 73 6e 31 41 72 72 61 79 3d 6e 65 77 20 41 72 72  sn1Array=new Arr
1b990 61 79 28 29 3b 74 68 69 73 2e 61 73 6e 31 41 72  ay();this.asn1Ar
1b9a0 72 61 79 2e 70 75 73 68 28 74 68 69 73 2e 61 73  ray.push(this.as
1b9b0 6e 31 56 65 72 73 69 6f 6e 29 3b 74 68 69 73 2e  n1Version);this.
1b9c0 61 73 6e 31 41 72 72 61 79 2e 70 75 73 68 28 74  asn1Array.push(t
1b9d0 68 69 73 2e 61 73 6e 31 53 65 72 69 61 6c 4e 75  his.asn1SerialNu
1b9e0 6d 62 65 72 29 3b 74 68 69 73 2e 61 73 6e 31 41  mber);this.asn1A
1b9f0 72 72 61 79 2e 70 75 73 68 28 74 68 69 73 2e 61  rray.push(this.a
1ba00 73 6e 31 53 69 67 6e 61 74 75 72 65 41 6c 67 29  sn1SignatureAlg)
1ba10 3b 74 68 69 73 2e 61 73 6e 31 41 72 72 61 79 2e  ;this.asn1Array.
1ba20 70 75 73 68 28 74 68 69 73 2e 61 73 6e 31 49 73  push(this.asn1Is
1ba30 73 75 65 72 29 3b 74 68 69 73 2e 61 73 6e 31 41  suer);this.asn1A
1ba40 72 72 61 79 2e 70 75 73 68 28 63 29 3b 74 68 69  rray.push(c);thi
1ba50 73 2e 61 73 6e 31 41 72 72 61 79 2e 70 75 73 68  s.asn1Array.push
1ba60 28 74 68 69 73 2e 61 73 6e 31 53 75 62 6a 65 63  (this.asn1Subjec
1ba70 74 29 3b 74 68 69 73 2e 61 73 6e 31 41 72 72 61  t);this.asn1Arra
1ba80 79 2e 70 75 73 68 28 74 68 69 73 2e 61 73 6e 31  y.push(this.asn1
1ba90 53 75 62 6a 50 4b 65 79 29 3b 69 66 28 74 68 69  SubjPKey);if(thi
1baa0 73 2e 65 78 74 65 6e 73 69 6f 6e 73 41 72 72 61  s.extensionsArra
1bab0 79 2e 6c 65 6e 67 74 68 3e 30 29 7b 76 61 72 20  y.length>0){var 
1bac0 64 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e  d=new KJUR.asn1.
1bad0 44 45 52 53 65 71 75 65 6e 63 65 28 7b 61 72 72  DERSequence({arr
1bae0 61 79 3a 74 68 69 73 2e 65 78 74 65 6e 73 69 6f  ay:this.extensio
1baf0 6e 73 41 72 72 61 79 7d 29 3b 76 61 72 20 62 3d  nsArray});var b=
1bb00 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  new KJUR.asn1.DE
1bb10 52 54 61 67 67 65 64 4f 62 6a 65 63 74 28 7b 65  RTaggedObject({e
1bb20 78 70 6c 69 63 69 74 3a 74 72 75 65 2c 74 61 67  xplicit:true,tag
1bb30 3a 22 61 33 22 2c 6f 62 6a 3a 64 7d 29 3b 74 68  :"a3",obj:d});th
1bb40 69 73 2e 61 73 6e 31 41 72 72 61 79 2e 70 75 73  is.asn1Array.pus
1bb50 68 28 62 29 7d 76 61 72 20 65 3d 6e 65 77 20 4b  h(b)}var e=new K
1bb60 4a 55 52 2e 61 73 6e 31 2e 44 45 52 53 65 71 75  JUR.asn1.DERSequ
1bb70 65 6e 63 65 28 7b 61 72 72 61 79 3a 74 68 69 73  ence({array:this
1bb80 2e 61 73 6e 31 41 72 72 61 79 7d 29 3b 74 68 69  .asn1Array});thi
1bb90 73 2e 68 54 4c 56 3d 65 2e 67 65 74 45 6e 63 6f  s.hTLV=e.getEnco
1bba0 64 65 64 48 65 78 28 29 3b 74 68 69 73 2e 69 73  dedHex();this.is
1bbb0 4d 6f 64 69 66 69 65 64 3d 66 61 6c 73 65 3b 72  Modified=false;r
1bbc0 65 74 75 72 6e 20 74 68 69 73 2e 68 54 4c 56 7d  eturn this.hTLV}
1bbd0 3b 74 68 69 73 2e 5f 69 6e 69 74 69 61 6c 69 7a  ;this._initializ
1bbe0 65 28 29 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e  e()};YAHOO.lang.
1bbf0 65 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31  extend(KJUR.asn1
1bc00 2e 78 35 30 39 2e 54 42 53 43 65 72 74 69 66 69  .x509.TBSCertifi
1bc10 63 61 74 65 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41  cate,KJUR.asn1.A
1bc20 53 4e 31 4f 62 6a 65 63 74 29 3b 4b 4a 55 52 2e  SN1Object);KJUR.
1bc30 61 73 6e 31 2e 78 35 30 39 2e 45 78 74 65 6e 73  asn1.x509.Extens
1bc40 69 6f 6e 3d 66 75 6e 63 74 69 6f 6e 28 62 29 7b  ion=function(b){
1bc50 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 45  KJUR.asn1.x509.E
1bc60 78 74 65 6e 73 69 6f 6e 2e 73 75 70 65 72 63 6c  xtension.supercl
1bc70 61 73 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e  ass.constructor.
1bc80 63 61 6c 6c 28 74 68 69 73 29 3b 76 61 72 20 61  call(this);var a
1bc90 3d 6e 75 6c 6c 3b 74 68 69 73 2e 67 65 74 45 6e  =null;this.getEn
1bca0 63 6f 64 65 64 48 65 78 3d 66 75 6e 63 74 69 6f  codedHex=functio
1bcb0 6e 28 29 7b 76 61 72 20 66 3d 6e 65 77 20 4b 4a  n(){var f=new KJ
1bcc0 55 52 2e 61 73 6e 31 2e 44 45 52 4f 62 6a 65 63  UR.asn1.DERObjec
1bcd0 74 49 64 65 6e 74 69 66 69 65 72 28 7b 6f 69 64  tIdentifier({oid
1bce0 3a 74 68 69 73 2e 6f 69 64 7d 29 3b 76 61 72 20  :this.oid});var 
1bcf0 65 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e  e=new KJUR.asn1.
1bd00 44 45 52 4f 63 74 65 74 53 74 72 69 6e 67 28 7b  DEROctetString({
1bd10 68 65 78 3a 74 68 69 73 2e 67 65 74 45 78 74 6e  hex:this.getExtn
1bd20 56 61 6c 75 65 48 65 78 28 29 7d 29 3b 76 61 72  ValueHex()});var
1bd30 20 64 3d 6e 65 77 20 41 72 72 61 79 28 29 3b 64   d=new Array();d
1bd40 2e 70 75 73 68 28 66 29 3b 69 66 28 74 68 69 73  .push(f);if(this
1bd50 2e 63 72 69 74 69 63 61 6c 29 7b 64 2e 70 75 73  .critical){d.pus
1bd60 68 28 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e  h(new KJUR.asn1.
1bd70 44 45 52 42 6f 6f 6c 65 61 6e 28 29 29 7d 64 2e  DERBoolean())}d.
1bd80 70 75 73 68 28 65 29 3b 76 61 72 20 63 3d 6e 65  push(e);var c=ne
1bd90 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 53  w KJUR.asn1.DERS
1bda0 65 71 75 65 6e 63 65 28 7b 61 72 72 61 79 3a 64  equence({array:d
1bdb0 7d 29 3b 72 65 74 75 72 6e 20 63 2e 67 65 74 45  });return c.getE
1bdc0 6e 63 6f 64 65 64 48 65 78 28 29 7d 3b 74 68 69  ncodedHex()};thi
1bdd0 73 2e 63 72 69 74 69 63 61 6c 3d 66 61 6c 73 65  s.critical=false
1bde0 3b 69 66 28 74 79 70 65 6f 66 20 62 21 3d 22 75  ;if(typeof b!="u
1bdf0 6e 64 65 66 69 6e 65 64 22 29 7b 69 66 28 74 79  ndefined"){if(ty
1be00 70 65 6f 66 20 62 2e 63 72 69 74 69 63 61 6c 21  peof b.critical!
1be10 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68  ="undefined"){th
1be20 69 73 2e 63 72 69 74 69 63 61 6c 3d 62 2e 63 72  is.critical=b.cr
1be30 69 74 69 63 61 6c 7d 7d 7d 3b 59 41 48 4f 4f 2e  itical}}};YAHOO.
1be40 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52  lang.extend(KJUR
1be50 2e 61 73 6e 31 2e 78 35 30 39 2e 45 78 74 65 6e  .asn1.x509.Exten
1be60 73 69 6f 6e 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41  sion,KJUR.asn1.A
1be70 53 4e 31 4f 62 6a 65 63 74 29 3b 4b 4a 55 52 2e  SN1Object);KJUR.
1be80 61 73 6e 31 2e 78 35 30 39 2e 4b 65 79 55 73 61  asn1.x509.KeyUsa
1be90 67 65 3d 66 75 6e 63 74 69 6f 6e 28 61 29 7b 4b  ge=function(a){K
1bea0 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 4b 65  JUR.asn1.x509.Ke
1beb0 79 55 73 61 67 65 2e 73 75 70 65 72 63 6c 61 73  yUsage.superclas
1bec0 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61  s.constructor.ca
1bed0 6c 6c 28 74 68 69 73 2c 61 29 3b 74 68 69 73 2e  ll(this,a);this.
1bee0 67 65 74 45 78 74 6e 56 61 6c 75 65 48 65 78 3d  getExtnValueHex=
1bef0 66 75 6e 63 74 69 6f 6e 28 29 7b 72 65 74 75 72  function(){retur
1bf00 6e 20 74 68 69 73 2e 61 73 6e 31 45 78 74 6e 56  n this.asn1ExtnV
1bf10 61 6c 75 65 2e 67 65 74 45 6e 63 6f 64 65 64 48  alue.getEncodedH
1bf20 65 78 28 29 7d 3b 74 68 69 73 2e 6f 69 64 3d 22  ex()};this.oid="
1bf30 32 2e 35 2e 32 39 2e 31 35 22 3b 69 66 28 74 79  2.5.29.15";if(ty
1bf40 70 65 6f 66 20 61 21 3d 22 75 6e 64 65 66 69 6e  peof a!="undefin
1bf50 65 64 22 29 7b 69 66 28 74 79 70 65 6f 66 20 61  ed"){if(typeof a
1bf60 2e 62 69 6e 21 3d 22 75 6e 64 65 66 69 6e 65 64  .bin!="undefined
1bf70 22 29 7b 74 68 69 73 2e 61 73 6e 31 45 78 74 6e  "){this.asn1Extn
1bf80 56 61 6c 75 65 3d 6e 65 77 20 4b 4a 55 52 2e 61  Value=new KJUR.a
1bf90 73 6e 31 2e 44 45 52 42 69 74 53 74 72 69 6e 67  sn1.DERBitString
1bfa0 28 61 29 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e  (a)}}};YAHOO.lan
1bfb0 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73  g.extend(KJUR.as
1bfc0 6e 31 2e 78 35 30 39 2e 4b 65 79 55 73 61 67 65  n1.x509.KeyUsage
1bfd0 2c 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e  ,KJUR.asn1.x509.
1bfe0 45 78 74 65 6e 73 69 6f 6e 29 3b 4b 4a 55 52 2e  Extension);KJUR.
1bff0 61 73 6e 31 2e 78 35 30 39 2e 42 61 73 69 63 43  asn1.x509.BasicC
1c000 6f 6e 73 74 72 61 69 6e 74 73 3d 66 75 6e 63 74  onstraints=funct
1c010 69 6f 6e 28 63 29 7b 4b 4a 55 52 2e 61 73 6e 31  ion(c){KJUR.asn1
1c020 2e 78 35 30 39 2e 42 61 73 69 63 43 6f 6e 73 74  .x509.BasicConst
1c030 72 61 69 6e 74 73 2e 73 75 70 65 72 63 6c 61 73  raints.superclas
1c040 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61  s.constructor.ca
1c050 6c 6c 28 74 68 69 73 2c 63 29 3b 76 61 72 20 61  ll(this,c);var a
1c060 3d 66 61 6c 73 65 3b 76 61 72 20 62 3d 2d 31 3b  =false;var b=-1;
1c070 74 68 69 73 2e 67 65 74 45 78 74 6e 56 61 6c 75  this.getExtnValu
1c080 65 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29 7b  eHex=function(){
1c090 76 61 72 20 65 3d 6e 65 77 20 41 72 72 61 79 28  var e=new Array(
1c0a0 29 3b 69 66 28 74 68 69 73 2e 63 41 29 7b 65 2e  );if(this.cA){e.
1c0b0 70 75 73 68 28 6e 65 77 20 4b 4a 55 52 2e 61 73  push(new KJUR.as
1c0c0 6e 31 2e 44 45 52 42 6f 6f 6c 65 61 6e 28 29 29  n1.DERBoolean())
1c0d0 7d 69 66 28 74 68 69 73 2e 70 61 74 68 4c 65 6e  }if(this.pathLen
1c0e0 3e 2d 31 29 7b 65 2e 70 75 73 68 28 6e 65 77 20  >-1){e.push(new 
1c0f0 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 49 6e 74  KJUR.asn1.DERInt
1c100 65 67 65 72 28 7b 22 69 6e 74 22 3a 74 68 69 73  eger({"int":this
1c110 2e 70 61 74 68 4c 65 6e 7d 29 29 7d 76 61 72 20  .pathLen}))}var 
1c120 64 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e  d=new KJUR.asn1.
1c130 44 45 52 53 65 71 75 65 6e 63 65 28 7b 61 72 72  DERSequence({arr
1c140 61 79 3a 65 7d 29 3b 74 68 69 73 2e 61 73 6e 31  ay:e});this.asn1
1c150 45 78 74 6e 56 61 6c 75 65 3d 64 3b 72 65 74 75  ExtnValue=d;retu
1c160 72 6e 20 74 68 69 73 2e 61 73 6e 31 45 78 74 6e  rn this.asn1Extn
1c170 56 61 6c 75 65 2e 67 65 74 45 6e 63 6f 64 65 64  Value.getEncoded
1c180 48 65 78 28 29 7d 3b 74 68 69 73 2e 6f 69 64 3d  Hex()};this.oid=
1c190 22 32 2e 35 2e 32 39 2e 31 39 22 3b 74 68 69 73  "2.5.29.19";this
1c1a0 2e 63 41 3d 66 61 6c 73 65 3b 74 68 69 73 2e 70  .cA=false;this.p
1c1b0 61 74 68 4c 65 6e 3d 2d 31 3b 69 66 28 74 79 70  athLen=-1;if(typ
1c1c0 65 6f 66 20 63 21 3d 22 75 6e 64 65 66 69 6e 65  eof c!="undefine
1c1d0 64 22 29 7b 69 66 28 74 79 70 65 6f 66 20 63 2e  d"){if(typeof c.
1c1e0 63 41 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29  cA!="undefined")
1c1f0 7b 74 68 69 73 2e 63 41 3d 63 2e 63 41 7d 69 66  {this.cA=c.cA}if
1c200 28 74 79 70 65 6f 66 20 63 2e 70 61 74 68 4c 65  (typeof c.pathLe
1c210 6e 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b  n!="undefined"){
1c220 74 68 69 73 2e 70 61 74 68 4c 65 6e 3d 63 2e 70  this.pathLen=c.p
1c230 61 74 68 4c 65 6e 7d 7d 7d 3b 59 41 48 4f 4f 2e  athLen}}};YAHOO.
1c240 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52  lang.extend(KJUR
1c250 2e 61 73 6e 31 2e 78 35 30 39 2e 42 61 73 69 63  .asn1.x509.Basic
1c260 43 6f 6e 73 74 72 61 69 6e 74 73 2c 4b 4a 55 52  Constraints,KJUR
1c270 2e 61 73 6e 31 2e 78 35 30 39 2e 45 78 74 65 6e  .asn1.x509.Exten
1c280 73 69 6f 6e 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e  sion);KJUR.asn1.
1c290 78 35 30 39 2e 43 52 4c 44 69 73 74 72 69 62 75  x509.CRLDistribu
1c2a0 74 69 6f 6e 50 6f 69 6e 74 73 3d 66 75 6e 63 74  tionPoints=funct
1c2b0 69 6f 6e 28 61 29 7b 4b 4a 55 52 2e 61 73 6e 31  ion(a){KJUR.asn1
1c2c0 2e 78 35 30 39 2e 43 52 4c 44 69 73 74 72 69 62  .x509.CRLDistrib
1c2d0 75 74 69 6f 6e 50 6f 69 6e 74 73 2e 73 75 70 65  utionPoints.supe
1c2e0 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63 74  rclass.construct
1c2f0 6f 72 2e 63 61 6c 6c 28 74 68 69 73 2c 61 29 3b  or.call(this,a);
1c300 74 68 69 73 2e 67 65 74 45 78 74 6e 56 61 6c 75  this.getExtnValu
1c310 65 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29 7b  eHex=function(){
1c320 72 65 74 75 72 6e 20 74 68 69 73 2e 61 73 6e 31  return this.asn1
1c330 45 78 74 6e 56 61 6c 75 65 2e 67 65 74 45 6e 63  ExtnValue.getEnc
1c340 6f 64 65 64 48 65 78 28 29 7d 3b 74 68 69 73 2e  odedHex()};this.
1c350 73 65 74 42 79 44 50 41 72 72 61 79 3d 66 75 6e  setByDPArray=fun
1c360 63 74 69 6f 6e 28 62 29 7b 74 68 69 73 2e 61 73  ction(b){this.as
1c370 6e 31 45 78 74 6e 56 61 6c 75 65 3d 6e 65 77 20  n1ExtnValue=new 
1c380 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 53 65 71  KJUR.asn1.DERSeq
1c390 75 65 6e 63 65 28 7b 61 72 72 61 79 3a 62 7d 29  uence({array:b})
1c3a0 7d 3b 74 68 69 73 2e 73 65 74 42 79 4f 6e 65 55  };this.setByOneU
1c3b0 52 49 3d 66 75 6e 63 74 69 6f 6e 28 65 29 7b 76  RI=function(e){v
1c3c0 61 72 20 62 3d 6e 65 77 20 4b 4a 55 52 2e 61 73  ar b=new KJUR.as
1c3d0 6e 31 2e 78 35 30 39 2e 47 65 6e 65 72 61 6c 4e  n1.x509.GeneralN
1c3e0 61 6d 65 73 28 5b 7b 75 72 69 3a 65 7d 5d 29 3b  ames([{uri:e}]);
1c3f0 76 61 72 20 64 3d 6e 65 77 20 4b 4a 55 52 2e 61  var d=new KJUR.a
1c400 73 6e 31 2e 78 35 30 39 2e 44 69 73 74 72 69 62  sn1.x509.Distrib
1c410 75 74 69 6f 6e 50 6f 69 6e 74 4e 61 6d 65 28 62  utionPointName(b
1c420 29 3b 76 61 72 20 63 3d 6e 65 77 20 4b 4a 55 52  );var c=new KJUR
1c430 2e 61 73 6e 31 2e 78 35 30 39 2e 44 69 73 74 72  .asn1.x509.Distr
1c440 69 62 75 74 69 6f 6e 50 6f 69 6e 74 28 7b 64 70  ibutionPoint({dp
1c450 6f 62 6a 3a 64 7d 29 3b 74 68 69 73 2e 73 65 74  obj:d});this.set
1c460 42 79 44 50 41 72 72 61 79 28 5b 63 5d 29 7d 3b  ByDPArray([c])};
1c470 74 68 69 73 2e 6f 69 64 3d 22 32 2e 35 2e 32 39  this.oid="2.5.29
1c480 2e 33 31 22 3b 69 66 28 74 79 70 65 6f 66 20 61  .31";if(typeof a
1c490 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 69  !="undefined"){i
1c4a0 66 28 74 79 70 65 6f 66 20 61 2e 61 72 72 61 79  f(typeof a.array
1c4b0 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74  !="undefined"){t
1c4c0 68 69 73 2e 73 65 74 42 79 44 50 41 72 72 61 79  his.setByDPArray
1c4d0 28 61 2e 61 72 72 61 79 29 7d 65 6c 73 65 7b 69  (a.array)}else{i
1c4e0 66 28 74 79 70 65 6f 66 20 61 2e 75 72 69 21 3d  f(typeof a.uri!=
1c4f0 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68 69  "undefined"){thi
1c500 73 2e 73 65 74 42 79 4f 6e 65 55 52 49 28 61 2e  s.setByOneURI(a.
1c510 75 72 69 29 7d 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c  uri)}}}};YAHOO.l
1c520 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e  ang.extend(KJUR.
1c530 61 73 6e 31 2e 78 35 30 39 2e 43 52 4c 44 69 73  asn1.x509.CRLDis
1c540 74 72 69 62 75 74 69 6f 6e 50 6f 69 6e 74 73 2c  tributionPoints,
1c550 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 45  KJUR.asn1.x509.E
1c560 78 74 65 6e 73 69 6f 6e 29 3b 4b 4a 55 52 2e 61  xtension);KJUR.a
1c570 73 6e 31 2e 78 35 30 39 2e 45 78 74 4b 65 79 55  sn1.x509.ExtKeyU
1c580 73 61 67 65 3d 66 75 6e 63 74 69 6f 6e 28 61 29  sage=function(a)
1c590 7b 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e  {KJUR.asn1.x509.
1c5a0 45 78 74 4b 65 79 55 73 61 67 65 2e 73 75 70 65  ExtKeyUsage.supe
1c5b0 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63 74  rclass.construct
1c5c0 6f 72 2e 63 61 6c 6c 28 74 68 69 73 2c 61 29 3b  or.call(this,a);
1c5d0 74 68 69 73 2e 73 65 74 50 75 72 70 6f 73 65 41  this.setPurposeA
1c5e0 72 72 61 79 3d 66 75 6e 63 74 69 6f 6e 28 62 29  rray=function(b)
1c5f0 7b 74 68 69 73 2e 61 73 6e 31 45 78 74 6e 56 61  {this.asn1ExtnVa
1c600 6c 75 65 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e  lue=new KJUR.asn
1c610 31 2e 44 45 52 53 65 71 75 65 6e 63 65 28 29 3b  1.DERSequence();
1c620 66 6f 72 28 76 61 72 20 63 3d 30 3b 63 3c 62 2e  for(var c=0;c<b.
1c630 6c 65 6e 67 74 68 3b 63 2b 2b 29 7b 76 61 72 20  length;c++){var 
1c640 64 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e  d=new KJUR.asn1.
1c650 44 45 52 4f 62 6a 65 63 74 49 64 65 6e 74 69 66  DERObjectIdentif
1c660 69 65 72 28 62 5b 63 5d 29 3b 74 68 69 73 2e 61  ier(b[c]);this.a
1c670 73 6e 31 45 78 74 6e 56 61 6c 75 65 2e 61 70 70  sn1ExtnValue.app
1c680 65 6e 64 41 53 4e 31 4f 62 6a 65 63 74 28 64 29  endASN1Object(d)
1c690 7d 7d 3b 74 68 69 73 2e 67 65 74 45 78 74 6e 56  }};this.getExtnV
1c6a0 61 6c 75 65 48 65 78 3d 66 75 6e 63 74 69 6f 6e  alueHex=function
1c6b0 28 29 7b 72 65 74 75 72 6e 20 74 68 69 73 2e 61  (){return this.a
1c6c0 73 6e 31 45 78 74 6e 56 61 6c 75 65 2e 67 65 74  sn1ExtnValue.get
1c6d0 45 6e 63 6f 64 65 64 48 65 78 28 29 7d 3b 74 68  EncodedHex()};th
1c6e0 69 73 2e 6f 69 64 3d 22 32 2e 35 2e 32 39 2e 33  is.oid="2.5.29.3
1c6f0 37 22 3b 69 66 28 74 79 70 65 6f 66 20 61 21 3d  7";if(typeof a!=
1c700 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 69 66 28  "undefined"){if(
1c710 74 79 70 65 6f 66 20 61 2e 61 72 72 61 79 21 3d  typeof a.array!=
1c720 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68 69  "undefined"){thi
1c730 73 2e 73 65 74 50 75 72 70 6f 73 65 41 72 72 61  s.setPurposeArra
1c740 79 28 61 2e 61 72 72 61 79 29 7d 7d 7d 3b 59 41  y(a.array)}}};YA
1c750 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64 28  HOO.lang.extend(
1c760 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 45  KJUR.asn1.x509.E
1c770 78 74 4b 65 79 55 73 61 67 65 2c 4b 4a 55 52 2e  xtKeyUsage,KJUR.
1c780 61 73 6e 31 2e 78 35 30 39 2e 45 78 74 65 6e 73  asn1.x509.Extens
1c790 69 6f 6e 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 78  ion);KJUR.asn1.x
1c7a0 35 30 39 2e 41 75 74 68 6f 72 69 74 79 4b 65 79  509.AuthorityKey
1c7b0 49 64 65 6e 74 69 66 69 65 72 3d 66 75 6e 63 74  Identifier=funct
1c7c0 69 6f 6e 28 61 29 7b 4b 4a 55 52 2e 61 73 6e 31  ion(a){KJUR.asn1
1c7d0 2e 78 35 30 39 2e 41 75 74 68 6f 72 69 74 79 4b  .x509.AuthorityK
1c7e0 65 79 49 64 65 6e 74 69 66 69 65 72 2e 73 75 70  eyIdentifier.sup
1c7f0 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63  erclass.construc
1c800 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 2c 61 29  tor.call(this,a)
1c810 3b 74 68 69 73 2e 61 73 6e 31 4b 49 44 3d 6e 75  ;this.asn1KID=nu
1c820 6c 6c 3b 74 68 69 73 2e 61 73 6e 31 43 65 72 74  ll;this.asn1Cert
1c830 49 73 73 75 65 72 3d 6e 75 6c 6c 3b 74 68 69 73  Issuer=null;this
1c840 2e 61 73 6e 31 43 65 72 74 53 4e 3d 6e 75 6c 6c  .asn1CertSN=null
1c850 3b 74 68 69 73 2e 67 65 74 45 78 74 6e 56 61 6c  ;this.getExtnVal
1c860 75 65 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29  ueHex=function()
1c870 7b 76 61 72 20 63 3d 6e 65 77 20 41 72 72 61 79  {var c=new Array
1c880 28 29 3b 69 66 28 74 68 69 73 2e 61 73 6e 31 4b  ();if(this.asn1K
1c890 49 44 29 7b 63 2e 70 75 73 68 28 6e 65 77 20 4b  ID){c.push(new K
1c8a0 4a 55 52 2e 61 73 6e 31 2e 44 45 52 54 61 67 67  JUR.asn1.DERTagg
1c8b0 65 64 4f 62 6a 65 63 74 28 7b 65 78 70 6c 69 63  edObject({explic
1c8c0 69 74 3a 66 61 6c 73 65 2c 74 61 67 3a 22 38 30  it:false,tag:"80
1c8d0 22 2c 6f 62 6a 3a 74 68 69 73 2e 61 73 6e 31 4b  ",obj:this.asn1K
1c8e0 49 44 7d 29 29 7d 69 66 28 74 68 69 73 2e 61 73  ID}))}if(this.as
1c8f0 6e 31 43 65 72 74 49 73 73 75 65 72 29 7b 63 2e  n1CertIssuer){c.
1c900 70 75 73 68 28 6e 65 77 20 4b 4a 55 52 2e 61 73  push(new KJUR.as
1c910 6e 31 2e 44 45 52 54 61 67 67 65 64 4f 62 6a 65  n1.DERTaggedObje
1c920 63 74 28 7b 65 78 70 6c 69 63 69 74 3a 66 61 6c  ct({explicit:fal
1c930 73 65 2c 74 61 67 3a 22 61 31 22 2c 6f 62 6a 3a  se,tag:"a1",obj:
1c940 74 68 69 73 2e 61 73 6e 31 43 65 72 74 49 73 73  this.asn1CertIss
1c950 75 65 72 7d 29 29 7d 69 66 28 74 68 69 73 2e 61  uer}))}if(this.a
1c960 73 6e 31 43 65 72 74 53 4e 29 7b 63 2e 70 75 73  sn1CertSN){c.pus
1c970 68 28 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e  h(new KJUR.asn1.
1c980 44 45 52 54 61 67 67 65 64 4f 62 6a 65 63 74 28  DERTaggedObject(
1c990 7b 65 78 70 6c 69 63 69 74 3a 66 61 6c 73 65 2c  {explicit:false,
1c9a0 74 61 67 3a 22 38 32 22 2c 6f 62 6a 3a 74 68 69  tag:"82",obj:thi
1c9b0 73 2e 61 73 6e 31 43 65 72 74 53 4e 7d 29 29 7d  s.asn1CertSN}))}
1c9c0 76 61 72 20 62 3d 6e 65 77 20 4b 4a 55 52 2e 61  var b=new KJUR.a
1c9d0 73 6e 31 2e 44 45 52 53 65 71 75 65 6e 63 65 28  sn1.DERSequence(
1c9e0 7b 61 72 72 61 79 3a 63 7d 29 3b 74 68 69 73 2e  {array:c});this.
1c9f0 61 73 6e 31 45 78 74 6e 56 61 6c 75 65 3d 62 3b  asn1ExtnValue=b;
1ca00 72 65 74 75 72 6e 20 74 68 69 73 2e 61 73 6e 31  return this.asn1
1ca10 45 78 74 6e 56 61 6c 75 65 2e 67 65 74 45 6e 63  ExtnValue.getEnc
1ca20 6f 64 65 64 48 65 78 28 29 7d 3b 74 68 69 73 2e  odedHex()};this.
1ca30 73 65 74 4b 49 44 42 79 50 61 72 61 6d 3d 66 75  setKIDByParam=fu
1ca40 6e 63 74 69 6f 6e 28 62 29 7b 74 68 69 73 2e 61  nction(b){this.a
1ca50 73 6e 31 4b 49 44 3d 6e 65 77 20 4b 4a 55 52 2e  sn1KID=new KJUR.
1ca60 61 73 6e 31 2e 44 45 52 4f 63 74 65 74 53 74 72  asn1.DEROctetStr
1ca70 69 6e 67 28 62 29 7d 3b 74 68 69 73 2e 73 65 74  ing(b)};this.set
1ca80 43 65 72 74 49 73 73 75 65 72 42 79 50 61 72 61  CertIssuerByPara
1ca90 6d 3d 66 75 6e 63 74 69 6f 6e 28 62 29 7b 74 68  m=function(b){th
1caa0 69 73 2e 61 73 6e 31 43 65 72 74 49 73 73 75 65  is.asn1CertIssue
1cab0 72 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e  r=new KJUR.asn1.
1cac0 78 35 30 39 2e 58 35 30 30 4e 61 6d 65 28 62 29  x509.X500Name(b)
1cad0 7d 3b 74 68 69 73 2e 73 65 74 43 65 72 74 53 4e  };this.setCertSN
1cae0 42 79 50 61 72 61 6d 3d 66 75 6e 63 74 69 6f 6e  ByParam=function
1caf0 28 62 29 7b 74 68 69 73 2e 61 73 6e 31 43 65 72  (b){this.asn1Cer
1cb00 74 53 4e 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e  tSN=new KJUR.asn
1cb10 31 2e 44 45 52 49 6e 74 65 67 65 72 28 62 29 7d  1.DERInteger(b)}
1cb20 3b 74 68 69 73 2e 6f 69 64 3d 22 32 2e 35 2e 32  ;this.oid="2.5.2
1cb30 39 2e 33 35 22 3b 69 66 28 74 79 70 65 6f 66 20  9.35";if(typeof 
1cb40 61 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b  a!="undefined"){
1cb50 69 66 28 74 79 70 65 6f 66 20 61 2e 6b 69 64 21  if(typeof a.kid!
1cb60 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68  ="undefined"){th
1cb70 69 73 2e 73 65 74 4b 49 44 42 79 50 61 72 61 6d  is.setKIDByParam
1cb80 28 61 2e 6b 69 64 29 7d 69 66 28 74 79 70 65 6f  (a.kid)}if(typeo
1cb90 66 20 61 2e 69 73 73 75 65 72 21 3d 22 75 6e 64  f a.issuer!="und
1cba0 65 66 69 6e 65 64 22 29 7b 74 68 69 73 2e 73 65  efined"){this.se
1cbb0 74 43 65 72 74 49 73 73 75 65 72 42 79 50 61 72  tCertIssuerByPar
1cbc0 61 6d 28 61 2e 69 73 73 75 65 72 29 7d 69 66 28  am(a.issuer)}if(
1cbd0 74 79 70 65 6f 66 20 61 2e 73 6e 21 3d 22 75 6e  typeof a.sn!="un
1cbe0 64 65 66 69 6e 65 64 22 29 7b 74 68 69 73 2e 73  defined"){this.s
1cbf0 65 74 43 65 72 74 53 4e 42 79 50 61 72 61 6d 28  etCertSNByParam(
1cc00 61 2e 73 6e 29 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c  a.sn)}}};YAHOO.l
1cc10 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e  ang.extend(KJUR.
1cc20 61 73 6e 31 2e 78 35 30 39 2e 41 75 74 68 6f 72  asn1.x509.Author
1cc30 69 74 79 4b 65 79 49 64 65 6e 74 69 66 69 65 72  ityKeyIdentifier
1cc40 2c 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e  ,KJUR.asn1.x509.
1cc50 45 78 74 65 6e 73 69 6f 6e 29 3b 4b 4a 55 52 2e  Extension);KJUR.
1cc60 61 73 6e 31 2e 78 35 30 39 2e 43 52 4c 3d 66 75  asn1.x509.CRL=fu
1cc70 6e 63 74 69 6f 6e 28 66 29 7b 4b 4a 55 52 2e 61  nction(f){KJUR.a
1cc80 73 6e 31 2e 78 35 30 39 2e 43 52 4c 2e 73 75 70  sn1.x509.CRL.sup
1cc90 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63  erclass.construc
1cca0 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29 3b 76  tor.call(this);v
1ccb0 61 72 20 61 3d 6e 75 6c 6c 3b 76 61 72 20 63 3d  ar a=null;var c=
1ccc0 6e 75 6c 6c 3b 76 61 72 20 65 3d 6e 75 6c 6c 3b  null;var e=null;
1ccd0 76 61 72 20 62 3d 6e 75 6c 6c 3b 76 61 72 20 64  var b=null;var d
1cce0 3d 6e 75 6c 6c 3b 74 68 69 73 2e 73 65 74 52 73  =null;this.setRs
1ccf0 61 50 72 76 4b 65 79 42 79 50 45 4d 61 6e 64 50  aPrvKeyByPEMandP
1cd00 61 73 73 3d 66 75 6e 63 74 69 6f 6e 28 68 2c 6a  ass=function(h,j
1cd10 29 7b 76 61 72 20 67 3d 50 4b 43 53 35 50 4b 45  ){var g=PKCS5PKE
1cd20 59 2e 67 65 74 44 65 63 72 79 70 74 65 64 4b 65  Y.getDecryptedKe
1cd30 79 48 65 78 28 68 2c 6a 29 3b 76 61 72 20 69 3d  yHex(h,j);var i=
1cd40 6e 65 77 20 52 53 41 4b 65 79 28 29 3b 69 2e 72  new RSAKey();i.r
1cd50 65 61 64 50 72 69 76 61 74 65 4b 65 79 46 72 6f  eadPrivateKeyFro
1cd60 6d 41 53 4e 31 48 65 78 53 74 72 69 6e 67 28 67  mASN1HexString(g
1cd70 29 3b 74 68 69 73 2e 72 73 61 50 72 76 4b 65 79  );this.rsaPrvKey
1cd80 3d 69 7d 3b 74 68 69 73 2e 73 69 67 6e 3d 66 75  =i};this.sign=fu
1cd90 6e 63 74 69 6f 6e 28 29 7b 74 68 69 73 2e 61 73  nction(){this.as
1cda0 6e 31 53 69 67 6e 61 74 75 72 65 41 6c 67 3d 74  n1SignatureAlg=t
1cdb0 68 69 73 2e 61 73 6e 31 54 42 53 43 65 72 74 4c  his.asn1TBSCertL
1cdc0 69 73 74 2e 61 73 6e 31 53 69 67 6e 61 74 75 72  ist.asn1Signatur
1cdd0 65 41 6c 67 3b 73 69 67 3d 6e 65 77 20 4b 4a 55  eAlg;sig=new KJU
1cde0 52 2e 63 72 79 70 74 6f 2e 53 69 67 6e 61 74 75  R.crypto.Signatu
1cdf0 72 65 28 7b 61 6c 67 3a 22 53 48 41 31 77 69 74  re({alg:"SHA1wit
1ce00 68 52 53 41 22 2c 70 72 6f 76 3a 22 63 72 79 70  hRSA",prov:"cryp
1ce10 74 6f 6a 73 2f 6a 73 72 73 61 22 7d 29 3b 73 69  tojs/jsrsa"});si
1ce20 67 2e 69 6e 69 74 53 69 67 6e 28 74 68 69 73 2e  g.initSign(this.
1ce30 72 73 61 50 72 76 4b 65 79 29 3b 73 69 67 2e 75  rsaPrvKey);sig.u
1ce40 70 64 61 74 65 48 65 78 28 74 68 69 73 2e 61 73  pdateHex(this.as
1ce50 6e 31 54 42 53 43 65 72 74 4c 69 73 74 2e 67 65  n1TBSCertList.ge
1ce60 74 45 6e 63 6f 64 65 64 48 65 78 28 29 29 3b 74  tEncodedHex());t
1ce70 68 69 73 2e 68 65 78 53 69 67 3d 73 69 67 2e 73  his.hexSig=sig.s
1ce80 69 67 6e 28 29 3b 74 68 69 73 2e 61 73 6e 31 53  ign();this.asn1S
1ce90 69 67 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31  ig=new KJUR.asn1
1cea0 2e 44 45 52 42 69 74 53 74 72 69 6e 67 28 7b 68  .DERBitString({h
1ceb0 65 78 3a 22 30 30 22 2b 74 68 69 73 2e 68 65 78  ex:"00"+this.hex
1cec0 53 69 67 7d 29 3b 76 61 72 20 67 3d 6e 65 77 20  Sig});var g=new 
1ced0 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 53 65 71  KJUR.asn1.DERSeq
1cee0 75 65 6e 63 65 28 7b 61 72 72 61 79 3a 5b 74 68  uence({array:[th
1cef0 69 73 2e 61 73 6e 31 54 42 53 43 65 72 74 4c 69  is.asn1TBSCertLi
1cf00 73 74 2c 74 68 69 73 2e 61 73 6e 31 53 69 67 6e  st,this.asn1Sign
1cf10 61 74 75 72 65 41 6c 67 2c 74 68 69 73 2e 61 73  atureAlg,this.as
1cf20 6e 31 53 69 67 5d 7d 29 3b 74 68 69 73 2e 68 54  n1Sig]});this.hT
1cf30 4c 56 3d 67 2e 67 65 74 45 6e 63 6f 64 65 64 48  LV=g.getEncodedH
1cf40 65 78 28 29 3b 74 68 69 73 2e 69 73 4d 6f 64 69  ex();this.isModi
1cf50 66 69 65 64 3d 66 61 6c 73 65 7d 3b 74 68 69 73  fied=false};this
1cf60 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78 3d 66  .getEncodedHex=f
1cf70 75 6e 63 74 69 6f 6e 28 29 7b 69 66 28 74 68 69  unction(){if(thi
1cf80 73 2e 69 73 4d 6f 64 69 66 69 65 64 3d 3d 66 61  s.isModified==fa
1cf90 6c 73 65 26 26 74 68 69 73 2e 68 54 4c 56 21 3d  lse&&this.hTLV!=
1cfa0 6e 75 6c 6c 29 7b 72 65 74 75 72 6e 20 74 68 69  null){return thi
1cfb0 73 2e 68 54 4c 56 7d 74 68 72 6f 77 22 6e 6f 74  s.hTLV}throw"not
1cfc0 20 73 69 67 6e 65 64 20 79 65 74 22 7d 3b 74 68   signed yet"};th
1cfd0 69 73 2e 67 65 74 50 45 4d 53 74 72 69 6e 67 3d  is.getPEMString=
1cfe0 66 75 6e 63 74 69 6f 6e 28 29 7b 76 61 72 20 69  function(){var i
1cff0 3d 74 68 69 73 2e 67 65 74 45 6e 63 6f 64 65 64  =this.getEncoded
1d000 48 65 78 28 29 3b 76 61 72 20 67 3d 43 72 79 70  Hex();var g=Cryp
1d010 74 6f 4a 53 2e 65 6e 63 2e 48 65 78 2e 70 61 72  toJS.enc.Hex.par
1d020 73 65 28 69 29 3b 76 61 72 20 68 3d 43 72 79 70  se(i);var h=Cryp
1d030 74 6f 4a 53 2e 65 6e 63 2e 42 61 73 65 36 34 2e  toJS.enc.Base64.
1d040 73 74 72 69 6e 67 69 66 79 28 67 29 3b 76 61 72  stringify(g);var
1d050 20 6a 3d 68 2e 72 65 70 6c 61 63 65 28 2f 28 2e   j=h.replace(/(.
1d060 7b 36 34 7d 29 2f 67 2c 22 24 31 5c 72 5c 6e 22  {64})/g,"$1\r\n"
1d070 29 3b 72 65 74 75 72 6e 22 2d 2d 2d 2d 2d 42 45  );return"-----BE
1d080 47 49 4e 20 58 35 30 39 20 43 52 4c 2d 2d 2d 2d  GIN X509 CRL----
1d090 2d 5c 72 5c 6e 22 2b 6a 2b 22 5c 72 5c 6e 2d 2d  -\r\n"+j+"\r\n--
1d0a0 2d 2d 2d 45 4e 44 20 58 35 30 39 20 43 52 4c 2d  ---END X509 CRL-
1d0b0 2d 2d 2d 2d 5c 72 5c 6e 22 7d 3b 69 66 28 74 79  ----\r\n"};if(ty
1d0c0 70 65 6f 66 20 66 21 3d 22 75 6e 64 65 66 69 6e  peof f!="undefin
1d0d0 65 64 22 29 7b 69 66 28 74 79 70 65 6f 66 20 66  ed"){if(typeof f
1d0e0 2e 74 62 73 6f 62 6a 21 3d 22 75 6e 64 65 66 69  .tbsobj!="undefi
1d0f0 6e 65 64 22 29 7b 74 68 69 73 2e 61 73 6e 31 54  ned"){this.asn1T
1d100 42 53 43 65 72 74 4c 69 73 74 3d 66 2e 74 62 73  BSCertList=f.tbs
1d110 6f 62 6a 7d 69 66 28 74 79 70 65 6f 66 20 66 2e  obj}if(typeof f.
1d120 72 73 61 70 72 76 6b 65 79 21 3d 22 75 6e 64 65  rsaprvkey!="unde
1d130 66 69 6e 65 64 22 29 7b 74 68 69 73 2e 72 73 61  fined"){this.rsa
1d140 50 72 76 4b 65 79 3d 66 2e 72 73 61 70 72 76 6b  PrvKey=f.rsaprvk
1d150 65 79 7d 69 66 28 28 74 79 70 65 6f 66 20 66 2e  ey}if((typeof f.
1d160 72 73 61 70 72 76 70 65 6d 21 3d 22 75 6e 64 65  rsaprvpem!="unde
1d170 66 69 6e 65 64 22 29 26 26 28 74 79 70 65 6f 66  fined")&&(typeof
1d180 20 66 2e 72 73 61 70 72 76 70 61 73 21 3d 22 75   f.rsaprvpas!="u
1d190 6e 64 65 66 69 6e 65 64 22 29 29 7b 74 68 69 73  ndefined")){this
1d1a0 2e 73 65 74 52 73 61 50 72 76 4b 65 79 42 79 50  .setRsaPrvKeyByP
1d1b0 45 4d 61 6e 64 50 61 73 73 28 66 2e 72 73 61 70  EMandPass(f.rsap
1d1c0 72 76 70 65 6d 2c 66 2e 72 73 61 70 72 76 70 61  rvpem,f.rsaprvpa
1d1d0 73 29 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67  s)}}};YAHOO.lang
1d1e0 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e  .extend(KJUR.asn
1d1f0 31 2e 78 35 30 39 2e 43 52 4c 2c 4b 4a 55 52 2e  1.x509.CRL,KJUR.
1d200 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74 29  asn1.ASN1Object)
1d210 3b 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e  ;KJUR.asn1.x509.
1d220 54 42 53 43 65 72 74 4c 69 73 74 3d 66 75 6e 63  TBSCertList=func
1d230 74 69 6f 6e 28 62 29 7b 4b 4a 55 52 2e 61 73 6e  tion(b){KJUR.asn
1d240 31 2e 78 35 30 39 2e 54 42 53 43 65 72 74 4c 69  1.x509.TBSCertLi
1d250 73 74 2e 73 75 70 65 72 63 6c 61 73 73 2e 63 6f  st.superclass.co
1d260 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74  nstructor.call(t
1d270 68 69 73 29 3b 76 61 72 20 61 3d 6e 75 6c 6c 3b  his);var a=null;
1d280 74 68 69 73 2e 73 65 74 53 69 67 6e 61 74 75 72  this.setSignatur
1d290 65 41 6c 67 42 79 50 61 72 61 6d 3d 66 75 6e 63  eAlgByParam=func
1d2a0 74 69 6f 6e 28 63 29 7b 74 68 69 73 2e 61 73 6e  tion(c){this.asn
1d2b0 31 53 69 67 6e 61 74 75 72 65 41 6c 67 3d 6e 65  1SignatureAlg=ne
1d2c0 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39  w KJUR.asn1.x509
1d2d0 2e 41 6c 67 6f 72 69 74 68 6d 49 64 65 6e 74 69  .AlgorithmIdenti
1d2e0 66 69 65 72 28 63 29 7d 3b 74 68 69 73 2e 73 65  fier(c)};this.se
1d2f0 74 49 73 73 75 65 72 42 79 50 61 72 61 6d 3d 66  tIssuerByParam=f
1d300 75 6e 63 74 69 6f 6e 28 63 29 7b 74 68 69 73 2e  unction(c){this.
1d310 61 73 6e 31 49 73 73 75 65 72 3d 6e 65 77 20 4b  asn1Issuer=new K
1d320 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 58 35  JUR.asn1.x509.X5
1d330 30 30 4e 61 6d 65 28 63 29 7d 3b 74 68 69 73 2e  00Name(c)};this.
1d340 73 65 74 54 68 69 73 55 70 64 61 74 65 42 79 50  setThisUpdateByP
1d350 61 72 61 6d 3d 66 75 6e 63 74 69 6f 6e 28 63 29  aram=function(c)
1d360 7b 74 68 69 73 2e 61 73 6e 31 54 68 69 73 55 70  {this.asn1ThisUp
1d370 64 61 74 65 3d 6e 65 77 20 4b 4a 55 52 2e 61 73  date=new KJUR.as
1d380 6e 31 2e 78 35 30 39 2e 54 69 6d 65 28 63 29 7d  n1.x509.Time(c)}
1d390 3b 74 68 69 73 2e 73 65 74 4e 65 78 74 55 70 64  ;this.setNextUpd
1d3a0 61 74 65 42 79 50 61 72 61 6d 3d 66 75 6e 63 74  ateByParam=funct
1d3b0 69 6f 6e 28 63 29 7b 74 68 69 73 2e 61 73 6e 31  ion(c){this.asn1
1d3c0 4e 65 78 74 55 70 64 61 74 65 3d 6e 65 77 20 4b  NextUpdate=new K
1d3d0 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 54 69  JUR.asn1.x509.Ti
1d3e0 6d 65 28 63 29 7d 3b 74 68 69 73 2e 61 64 64 52  me(c)};this.addR
1d3f0 65 76 6f 6b 65 64 43 65 72 74 3d 66 75 6e 63 74  evokedCert=funct
1d400 69 6f 6e 28 63 2c 64 29 7b 76 61 72 20 66 3d 7b  ion(c,d){var f={
1d410 7d 3b 69 66 28 63 21 3d 75 6e 64 65 66 69 6e 65  };if(c!=undefine
1d420 64 26 26 63 21 3d 6e 75 6c 6c 29 7b 66 2e 73 6e  d&&c!=null){f.sn
1d430 3d 63 7d 69 66 28 64 21 3d 75 6e 64 65 66 69 6e  =c}if(d!=undefin
1d440 65 64 26 26 64 21 3d 6e 75 6c 6c 29 7b 66 2e 74  ed&&d!=null){f.t
1d450 69 6d 65 3d 64 7d 76 61 72 20 65 3d 6e 65 77 20  ime=d}var e=new 
1d460 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 43  KJUR.asn1.x509.C
1d470 52 4c 45 6e 74 72 79 28 66 29 3b 74 68 69 73 2e  RLEntry(f);this.
1d480 61 52 65 76 6f 6b 65 64 43 65 72 74 2e 70 75 73  aRevokedCert.pus
1d490 68 28 65 29 7d 3b 74 68 69 73 2e 67 65 74 45 6e  h(e)};this.getEn
1d4a0 63 6f 64 65 64 48 65 78 3d 66 75 6e 63 74 69 6f  codedHex=functio
1d4b0 6e 28 29 7b 74 68 69 73 2e 61 73 6e 31 41 72 72  n(){this.asn1Arr
1d4c0 61 79 3d 6e 65 77 20 41 72 72 61 79 28 29 3b 69  ay=new Array();i
1d4d0 66 28 74 68 69 73 2e 61 73 6e 31 56 65 72 73 69  f(this.asn1Versi
1d4e0 6f 6e 21 3d 6e 75 6c 6c 29 7b 74 68 69 73 2e 61  on!=null){this.a
1d4f0 73 6e 31 41 72 72 61 79 2e 70 75 73 68 28 74 68  sn1Array.push(th
1d500 69 73 2e 61 73 6e 31 56 65 72 73 69 6f 6e 29 7d  is.asn1Version)}
1d510 74 68 69 73 2e 61 73 6e 31 41 72 72 61 79 2e 70  this.asn1Array.p
1d520 75 73 68 28 74 68 69 73 2e 61 73 6e 31 53 69 67  ush(this.asn1Sig
1d530 6e 61 74 75 72 65 41 6c 67 29 3b 74 68 69 73 2e  natureAlg);this.
1d540 61 73 6e 31 41 72 72 61 79 2e 70 75 73 68 28 74  asn1Array.push(t
1d550 68 69 73 2e 61 73 6e 31 49 73 73 75 65 72 29 3b  his.asn1Issuer);
1d560 74 68 69 73 2e 61 73 6e 31 41 72 72 61 79 2e 70  this.asn1Array.p
1d570 75 73 68 28 74 68 69 73 2e 61 73 6e 31 54 68 69  ush(this.asn1Thi
1d580 73 55 70 64 61 74 65 29 3b 69 66 28 74 68 69 73  sUpdate);if(this
1d590 2e 61 73 6e 31 4e 65 78 74 55 70 64 61 74 65 21  .asn1NextUpdate!
1d5a0 3d 6e 75 6c 6c 29 7b 74 68 69 73 2e 61 73 6e 31  =null){this.asn1
1d5b0 41 72 72 61 79 2e 70 75 73 68 28 74 68 69 73 2e  Array.push(this.
1d5c0 61 73 6e 31 4e 65 78 74 55 70 64 61 74 65 29 7d  asn1NextUpdate)}
1d5d0 69 66 28 74 68 69 73 2e 61 52 65 76 6f 6b 65 64  if(this.aRevoked
1d5e0 43 65 72 74 2e 6c 65 6e 67 74 68 3e 30 29 7b 76  Cert.length>0){v
1d5f0 61 72 20 63 3d 6e 65 77 20 4b 4a 55 52 2e 61 73  ar c=new KJUR.as
1d600 6e 31 2e 44 45 52 53 65 71 75 65 6e 63 65 28 7b  n1.DERSequence({
1d610 61 72 72 61 79 3a 74 68 69 73 2e 61 52 65 76 6f  array:this.aRevo
1d620 6b 65 64 43 65 72 74 7d 29 3b 74 68 69 73 2e 61  kedCert});this.a
1d630 73 6e 31 41 72 72 61 79 2e 70 75 73 68 28 63 29  sn1Array.push(c)
1d640 7d 76 61 72 20 64 3d 6e 65 77 20 4b 4a 55 52 2e  }var d=new KJUR.
1d650 61 73 6e 31 2e 44 45 52 53 65 71 75 65 6e 63 65  asn1.DERSequence
1d660 28 7b 61 72 72 61 79 3a 74 68 69 73 2e 61 73 6e  ({array:this.asn
1d670 31 41 72 72 61 79 7d 29 3b 74 68 69 73 2e 68 54  1Array});this.hT
1d680 4c 56 3d 64 2e 67 65 74 45 6e 63 6f 64 65 64 48  LV=d.getEncodedH
1d690 65 78 28 29 3b 74 68 69 73 2e 69 73 4d 6f 64 69  ex();this.isModi
1d6a0 66 69 65 64 3d 66 61 6c 73 65 3b 72 65 74 75 72  fied=false;retur
1d6b0 6e 20 74 68 69 73 2e 68 54 4c 56 7d 3b 74 68 69  n this.hTLV};thi
1d6c0 73 2e 5f 69 6e 69 74 69 61 6c 69 7a 65 3d 66 75  s._initialize=fu
1d6d0 6e 63 74 69 6f 6e 28 29 7b 74 68 69 73 2e 61 73  nction(){this.as
1d6e0 6e 31 56 65 72 73 69 6f 6e 3d 6e 75 6c 6c 3b 74  n1Version=null;t
1d6f0 68 69 73 2e 61 73 6e 31 53 69 67 6e 61 74 75 72  his.asn1Signatur
1d700 65 41 6c 67 3d 6e 75 6c 6c 3b 74 68 69 73 2e 61  eAlg=null;this.a
1d710 73 6e 31 49 73 73 75 65 72 3d 6e 75 6c 6c 3b 74  sn1Issuer=null;t
1d720 68 69 73 2e 61 73 6e 31 54 68 69 73 55 70 64 61  his.asn1ThisUpda
1d730 74 65 3d 6e 75 6c 6c 3b 74 68 69 73 2e 61 73 6e  te=null;this.asn
1d740 31 4e 65 78 74 55 70 64 61 74 65 3d 6e 75 6c 6c  1NextUpdate=null
1d750 3b 74 68 69 73 2e 61 52 65 76 6f 6b 65 64 43 65  ;this.aRevokedCe
1d760 72 74 3d 6e 65 77 20 41 72 72 61 79 28 29 7d 3b  rt=new Array()};
1d770 74 68 69 73 2e 5f 69 6e 69 74 69 61 6c 69 7a 65  this._initialize
1d780 28 29 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65  ()};YAHOO.lang.e
1d790 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e  xtend(KJUR.asn1.
1d7a0 78 35 30 39 2e 54 42 53 43 65 72 74 4c 69 73 74  x509.TBSCertList
1d7b0 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 4f  ,KJUR.asn1.ASN1O
1d7c0 62 6a 65 63 74 29 3b 4b 4a 55 52 2e 61 73 6e 31  bject);KJUR.asn1
1d7d0 2e 78 35 30 39 2e 43 52 4c 45 6e 74 72 79 3d 66  .x509.CRLEntry=f
1d7e0 75 6e 63 74 69 6f 6e 28 63 29 7b 4b 4a 55 52 2e  unction(c){KJUR.
1d7f0 61 73 6e 31 2e 78 35 30 39 2e 43 52 4c 45 6e 74  asn1.x509.CRLEnt
1d800 72 79 2e 73 75 70 65 72 63 6c 61 73 73 2e 63 6f  ry.superclass.co
1d810 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74  nstructor.call(t
1d820 68 69 73 29 3b 76 61 72 20 62 3d 6e 75 6c 6c 3b  his);var b=null;
1d830 76 61 72 20 61 3d 6e 75 6c 6c 3b 74 68 69 73 2e  var a=null;this.
1d840 73 65 74 43 65 72 74 53 65 72 69 61 6c 3d 66 75  setCertSerial=fu
1d850 6e 63 74 69 6f 6e 28 64 29 7b 74 68 69 73 2e 73  nction(d){this.s
1d860 6e 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e  n=new KJUR.asn1.
1d870 44 45 52 49 6e 74 65 67 65 72 28 64 29 7d 3b 74  DERInteger(d)};t
1d880 68 69 73 2e 73 65 74 52 65 76 6f 63 61 74 69 6f  his.setRevocatio
1d890 6e 44 61 74 65 3d 66 75 6e 63 74 69 6f 6e 28 64  nDate=function(d
1d8a0 29 7b 74 68 69 73 2e 74 69 6d 65 3d 6e 65 77 20  ){this.time=new 
1d8b0 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 54  KJUR.asn1.x509.T
1d8c0 69 6d 65 28 64 29 7d 3b 74 68 69 73 2e 67 65 74  ime(d)};this.get
1d8d0 45 6e 63 6f 64 65 64 48 65 78 3d 66 75 6e 63 74  EncodedHex=funct
1d8e0 69 6f 6e 28 29 7b 76 61 72 20 64 3d 6e 65 77 20  ion(){var d=new 
1d8f0 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 53 65 71  KJUR.asn1.DERSeq
1d900 75 65 6e 63 65 28 7b 61 72 72 61 79 3a 5b 74 68  uence({array:[th
1d910 69 73 2e 73 6e 2c 74 68 69 73 2e 74 69 6d 65 5d  is.sn,this.time]
1d920 7d 29 3b 74 68 69 73 2e 54 4c 56 3d 64 2e 67 65  });this.TLV=d.ge
1d930 74 45 6e 63 6f 64 65 64 48 65 78 28 29 3b 72 65  tEncodedHex();re
1d940 74 75 72 6e 20 74 68 69 73 2e 54 4c 56 7d 3b 69  turn this.TLV};i
1d950 66 28 74 79 70 65 6f 66 20 63 21 3d 22 75 6e 64  f(typeof c!="und
1d960 65 66 69 6e 65 64 22 29 7b 69 66 28 74 79 70 65  efined"){if(type
1d970 6f 66 20 63 2e 74 69 6d 65 21 3d 22 75 6e 64 65  of c.time!="unde
1d980 66 69 6e 65 64 22 29 7b 74 68 69 73 2e 73 65 74  fined"){this.set
1d990 52 65 76 6f 63 61 74 69 6f 6e 44 61 74 65 28 63  RevocationDate(c
1d9a0 2e 74 69 6d 65 29 7d 69 66 28 74 79 70 65 6f 66  .time)}if(typeof
1d9b0 20 63 2e 73 6e 21 3d 22 75 6e 64 65 66 69 6e 65   c.sn!="undefine
1d9c0 64 22 29 7b 74 68 69 73 2e 73 65 74 43 65 72 74  d"){this.setCert
1d9d0 53 65 72 69 61 6c 28 63 2e 73 6e 29 7d 7d 7d 3b  Serial(c.sn)}}};
1d9e0 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e  YAHOO.lang.exten
1d9f0 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39  d(KJUR.asn1.x509
1da00 2e 43 52 4c 45 6e 74 72 79 2c 4b 4a 55 52 2e 61  .CRLEntry,KJUR.a
1da10 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74 29 3b  sn1.ASN1Object);
1da20 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 58  KJUR.asn1.x509.X
1da30 35 30 30 4e 61 6d 65 3d 66 75 6e 63 74 69 6f 6e  500Name=function
1da40 28 62 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e 78 35  (b){KJUR.asn1.x5
1da50 30 39 2e 58 35 30 30 4e 61 6d 65 2e 73 75 70 65  09.X500Name.supe
1da60 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63 74  rclass.construct
1da70 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29 3b 74 68  or.call(this);th
1da80 69 73 2e 61 73 6e 31 41 72 72 61 79 3d 6e 65 77  is.asn1Array=new
1da90 20 41 72 72 61 79 28 29 3b 74 68 69 73 2e 73 65   Array();this.se
1daa0 74 42 79 53 74 72 69 6e 67 3d 66 75 6e 63 74 69  tByString=functi
1dab0 6f 6e 28 63 29 7b 76 61 72 20 64 3d 63 2e 73 70  on(c){var d=c.sp
1dac0 6c 69 74 28 22 2f 22 29 3b 64 2e 73 68 69 66 74  lit("/");d.shift
1dad0 28 29 3b 66 6f 72 28 76 61 72 20 65 3d 30 3b 65  ();for(var e=0;e
1dae0 3c 64 2e 6c 65 6e 67 74 68 3b 65 2b 2b 29 7b 74  <d.length;e++){t
1daf0 68 69 73 2e 61 73 6e 31 41 72 72 61 79 2e 70 75  his.asn1Array.pu
1db00 73 68 28 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31  sh(new KJUR.asn1
1db10 2e 78 35 30 39 2e 52 44 4e 28 7b 73 74 72 3a 64  .x509.RDN({str:d
1db20 5b 65 5d 7d 29 29 7d 7d 3b 74 68 69 73 2e 73 65  [e]}))}};this.se
1db30 74 42 79 4f 62 6a 65 63 74 3d 66 75 6e 63 74 69  tByObject=functi
1db40 6f 6e 28 65 29 7b 66 6f 72 28 76 61 72 20 63 20  on(e){for(var c 
1db50 69 6e 20 65 29 7b 69 66 28 65 2e 68 61 73 4f 77  in e){if(e.hasOw
1db60 6e 50 72 6f 70 65 72 74 79 28 63 29 29 7b 76 61  nProperty(c)){va
1db70 72 20 64 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e  r d=new KJUR.asn
1db80 31 2e 78 35 30 39 2e 52 44 4e 28 7b 73 74 72 3a  1.x509.RDN({str:
1db90 63 2b 22 3d 22 2b 65 5b 63 5d 7d 29 3b 74 68 69  c+"="+e[c]});thi
1dba0 73 2e 61 73 6e 31 41 72 72 61 79 3f 74 68 69 73  s.asn1Array?this
1dbb0 2e 61 73 6e 31 41 72 72 61 79 2e 70 75 73 68 28  .asn1Array.push(
1dbc0 64 29 3a 74 68 69 73 2e 61 73 6e 31 41 72 72 61  d):this.asn1Arra
1dbd0 79 3d 5b 64 5d 7d 7d 7d 3b 74 68 69 73 2e 67 65  y=[d]}}};this.ge
1dbe0 74 45 6e 63 6f 64 65 64 48 65 78 3d 66 75 6e 63  tEncodedHex=func
1dbf0 74 69 6f 6e 28 29 7b 69 66 28 74 79 70 65 6f 66  tion(){if(typeof
1dc00 20 74 68 69 73 2e 68 54 4c 56 3d 3d 22 73 74 72   this.hTLV=="str
1dc10 69 6e 67 22 29 7b 72 65 74 75 72 6e 20 74 68 69  ing"){return thi
1dc20 73 2e 68 54 4c 56 7d 76 61 72 20 63 3d 6e 65 77  s.hTLV}var c=new
1dc30 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 53 65   KJUR.asn1.DERSe
1dc40 71 75 65 6e 63 65 28 7b 61 72 72 61 79 3a 74 68  quence({array:th
1dc50 69 73 2e 61 73 6e 31 41 72 72 61 79 7d 29 3b 74  is.asn1Array});t
1dc60 68 69 73 2e 68 54 4c 56 3d 63 2e 67 65 74 45 6e  his.hTLV=c.getEn
1dc70 63 6f 64 65 64 48 65 78 28 29 3b 72 65 74 75 72  codedHex();retur
1dc80 6e 20 74 68 69 73 2e 68 54 4c 56 7d 3b 69 66 28  n this.hTLV};if(
1dc90 74 79 70 65 6f 66 20 62 21 3d 22 75 6e 64 65 66  typeof b!="undef
1dca0 69 6e 65 64 22 29 7b 69 66 28 74 79 70 65 6f 66  ined"){if(typeof
1dcb0 20 62 2e 73 74 72 21 3d 22 75 6e 64 65 66 69 6e   b.str!="undefin
1dcc0 65 64 22 29 7b 74 68 69 73 2e 73 65 74 42 79 53  ed"){this.setByS
1dcd0 74 72 69 6e 67 28 62 2e 73 74 72 29 7d 65 6c 73  tring(b.str)}els
1dce0 65 7b 69 66 28 74 79 70 65 6f 66 20 62 3d 3d 3d  e{if(typeof b===
1dcf0 22 6f 62 6a 65 63 74 22 29 7b 74 68 69 73 2e 73  "object"){this.s
1dd00 65 74 42 79 4f 62 6a 65 63 74 28 62 29 7d 7d 69  etByObject(b)}}i
1dd10 66 28 74 79 70 65 6f 66 20 62 2e 63 65 72 74 69  f(typeof b.certi
1dd20 73 73 75 65 72 21 3d 22 75 6e 64 65 66 69 6e 65  ssuer!="undefine
1dd30 64 22 29 7b 76 61 72 20 61 3d 6e 65 77 20 58 35  d"){var a=new X5
1dd40 30 39 28 29 3b 61 2e 68 65 78 3d 58 35 30 39 2e  09();a.hex=X509.
1dd50 70 65 6d 54 6f 48 65 78 28 62 2e 63 65 72 74 69  pemToHex(b.certi
1dd60 73 73 75 65 72 29 3b 74 68 69 73 2e 68 54 4c 56  ssuer);this.hTLV
1dd70 3d 61 2e 67 65 74 49 73 73 75 65 72 48 65 78 28  =a.getIssuerHex(
1dd80 29 7d 69 66 28 74 79 70 65 6f 66 20 62 2e 63 65  )}if(typeof b.ce
1dd90 72 74 73 75 62 6a 65 63 74 21 3d 22 75 6e 64 65  rtsubject!="unde
1dda0 66 69 6e 65 64 22 29 7b 76 61 72 20 61 3d 6e 65  fined"){var a=ne
1ddb0 77 20 58 35 30 39 28 29 3b 61 2e 68 65 78 3d 58  w X509();a.hex=X
1ddc0 35 30 39 2e 70 65 6d 54 6f 48 65 78 28 62 2e 63  509.pemToHex(b.c
1ddd0 65 72 74 73 75 62 6a 65 63 74 29 3b 74 68 69 73  ertsubject);this
1dde0 2e 68 54 4c 56 3d 61 2e 67 65 74 53 75 62 6a 65  .hTLV=a.getSubje
1ddf0 63 74 48 65 78 28 29 7d 7d 7d 3b 59 41 48 4f 4f  ctHex()}}};YAHOO
1de00 2e 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55  .lang.extend(KJU
1de10 52 2e 61 73 6e 31 2e 78 35 30 39 2e 58 35 30 30  R.asn1.x509.X500
1de20 4e 61 6d 65 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41  Name,KJUR.asn1.A
1de30 53 4e 31 4f 62 6a 65 63 74 29 3b 4b 4a 55 52 2e  SN1Object);KJUR.
1de40 61 73 6e 31 2e 78 35 30 39 2e 52 44 4e 3d 66 75  asn1.x509.RDN=fu
1de50 6e 63 74 69 6f 6e 28 61 29 7b 4b 4a 55 52 2e 61  nction(a){KJUR.a
1de60 73 6e 31 2e 78 35 30 39 2e 52 44 4e 2e 73 75 70  sn1.x509.RDN.sup
1de70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63  erclass.construc
1de80 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29 3b 74  tor.call(this);t
1de90 68 69 73 2e 61 73 6e 31 41 72 72 61 79 3d 6e 65  his.asn1Array=ne
1dea0 77 20 41 72 72 61 79 28 29 3b 74 68 69 73 2e 61  w Array();this.a
1deb0 64 64 42 79 53 74 72 69 6e 67 3d 66 75 6e 63 74  ddByString=funct
1dec0 69 6f 6e 28 62 29 7b 74 68 69 73 2e 61 73 6e 31  ion(b){this.asn1
1ded0 41 72 72 61 79 2e 70 75 73 68 28 6e 65 77 20 4b  Array.push(new K
1dee0 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 41 74  JUR.asn1.x509.At
1def0 74 72 69 62 75 74 65 54 79 70 65 41 6e 64 56 61  tributeTypeAndVa
1df00 6c 75 65 28 7b 73 74 72 3a 62 7d 29 29 7d 3b 74  lue({str:b}))};t
1df10 68 69 73 2e 67 65 74 45 6e 63 6f 64 65 64 48 65  his.getEncodedHe
1df20 78 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 76 61 72  x=function(){var
1df30 20 62 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31   b=new KJUR.asn1
1df40 2e 44 45 52 53 65 74 28 7b 61 72 72 61 79 3a 74  .DERSet({array:t
1df50 68 69 73 2e 61 73 6e 31 41 72 72 61 79 7d 29 3b  his.asn1Array});
1df60 74 68 69 73 2e 54 4c 56 3d 62 2e 67 65 74 45 6e  this.TLV=b.getEn
1df70 63 6f 64 65 64 48 65 78 28 29 3b 72 65 74 75 72  codedHex();retur
1df80 6e 20 74 68 69 73 2e 54 4c 56 7d 3b 69 66 28 74  n this.TLV};if(t
1df90 79 70 65 6f 66 20 61 21 3d 22 75 6e 64 65 66 69  ypeof a!="undefi
1dfa0 6e 65 64 22 29 7b 69 66 28 74 79 70 65 6f 66 20  ned"){if(typeof 
1dfb0 61 2e 73 74 72 21 3d 22 75 6e 64 65 66 69 6e 65  a.str!="undefine
1dfc0 64 22 29 7b 74 68 69 73 2e 61 64 64 42 79 53 74  d"){this.addBySt
1dfd0 72 69 6e 67 28 61 2e 73 74 72 29 7d 7d 7d 3b 59  ring(a.str)}}};Y
1dfe0 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64  AHOO.lang.extend
1dff0 28 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e  (KJUR.asn1.x509.
1e000 52 44 4e 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41 53  RDN,KJUR.asn1.AS
1e010 4e 31 4f 62 6a 65 63 74 29 3b 4b 4a 55 52 2e 61  N1Object);KJUR.a
1e020 73 6e 31 2e 78 35 30 39 2e 41 74 74 72 69 62 75  sn1.x509.Attribu
1e030 74 65 54 79 70 65 41 6e 64 56 61 6c 75 65 3d 66  teTypeAndValue=f
1e040 75 6e 63 74 69 6f 6e 28 62 29 7b 4b 4a 55 52 2e  unction(b){KJUR.
1e050 61 73 6e 31 2e 78 35 30 39 2e 41 74 74 72 69 62  asn1.x509.Attrib
1e060 75 74 65 54 79 70 65 41 6e 64 56 61 6c 75 65 2e  uteTypeAndValue.
1e070 73 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74  superclass.const
1e080 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73  ructor.call(this
1e090 29 3b 76 61 72 20 64 3d 6e 75 6c 6c 3b 76 61 72  );var d=null;var
1e0a0 20 63 3d 6e 75 6c 6c 3b 76 61 72 20 61 3d 22 75   c=null;var a="u
1e0b0 74 66 38 22 3b 74 68 69 73 2e 73 65 74 42 79 53  tf8";this.setByS
1e0c0 74 72 69 6e 67 3d 66 75 6e 63 74 69 6f 6e 28 65  tring=function(e
1e0d0 29 7b 69 66 28 65 2e 6d 61 74 63 68 28 2f 5e 28  ){if(e.match(/^(
1e0e0 5b 5e 3d 5d 2b 29 3d 28 2e 2b 29 24 2f 29 29 7b  [^=]+)=(.+)$/)){
1e0f0 74 68 69 73 2e 73 65 74 42 79 41 74 74 72 54 79  this.setByAttrTy
1e100 70 65 41 6e 64 56 61 6c 75 65 53 74 72 28 52 65  peAndValueStr(Re
1e110 67 45 78 70 2e 24 31 2c 52 65 67 45 78 70 2e 24  gExp.$1,RegExp.$
1e120 32 29 7d 65 6c 73 65 7b 74 68 72 6f 77 22 6d 61  2)}else{throw"ma
1e130 6c 66 6f 72 6d 65 64 20 61 74 74 72 54 79 70 65  lformed attrType
1e140 41 6e 64 56 61 6c 75 65 53 74 72 3a 20 22 2b 65  AndValueStr: "+e
1e150 7d 7d 3b 74 68 69 73 2e 73 65 74 42 79 41 74 74  }};this.setByAtt
1e160 72 54 79 70 65 41 6e 64 56 61 6c 75 65 53 74 72  rTypeAndValueStr
1e170 3d 66 75 6e 63 74 69 6f 6e 28 67 2c 66 29 7b 74  =function(g,f){t
1e180 68 69 73 2e 74 79 70 65 4f 62 6a 3d 4b 4a 55 52  his.typeObj=KJUR
1e190 2e 61 73 6e 31 2e 78 35 30 39 2e 4f 49 44 2e 61  .asn1.x509.OID.a
1e1a0 74 79 70 65 32 6f 62 6a 28 67 29 3b 76 61 72 20  type2obj(g);var 
1e1b0 65 3d 61 3b 69 66 28 67 3d 3d 22 43 22 29 7b 65  e=a;if(g=="C"){e
1e1c0 3d 22 70 72 6e 22 7d 74 68 69 73 2e 76 61 6c 75  ="prn"}this.valu
1e1d0 65 4f 62 6a 3d 74 68 69 73 2e 67 65 74 56 61 6c  eObj=this.getVal
1e1e0 75 65 4f 62 6a 28 65 2c 66 29 7d 3b 74 68 69 73  ueObj(e,f)};this
1e1f0 2e 67 65 74 56 61 6c 75 65 4f 62 6a 3d 66 75 6e  .getValueObj=fun
1e200 63 74 69 6f 6e 28 66 2c 65 29 7b 69 66 28 66 3d  ction(f,e){if(f=
1e210 3d 22 75 74 66 38 22 29 7b 72 65 74 75 72 6e 20  ="utf8"){return 
1e220 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  new KJUR.asn1.DE
1e230 52 55 54 46 38 53 74 72 69 6e 67 28 7b 73 74 72  RUTF8String({str
1e240 3a 65 7d 29 7d 69 66 28 66 3d 3d 22 70 72 6e 22  :e})}if(f=="prn"
1e250 29 7b 72 65 74 75 72 6e 20 6e 65 77 20 4b 4a 55  ){return new KJU
1e260 52 2e 61 73 6e 31 2e 44 45 52 50 72 69 6e 74 61  R.asn1.DERPrinta
1e270 62 6c 65 53 74 72 69 6e 67 28 7b 73 74 72 3a 65  bleString({str:e
1e280 7d 29 7d 69 66 28 66 3d 3d 22 74 65 6c 22 29 7b  })}if(f=="tel"){
1e290 72 65 74 75 72 6e 20 6e 65 77 20 4b 4a 55 52 2e  return new KJUR.
1e2a0 61 73 6e 31 2e 44 45 52 54 65 6c 65 74 65 78 53  asn1.DERTeletexS
1e2b0 74 72 69 6e 67 28 7b 73 74 72 3a 65 7d 29 7d 69  tring({str:e})}i
1e2c0 66 28 66 3d 3d 22 69 61 35 22 29 7b 72 65 74 75  f(f=="ia5"){retu
1e2d0 72 6e 20 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31  rn new KJUR.asn1
1e2e0 2e 44 45 52 49 41 35 53 74 72 69 6e 67 28 7b 73  .DERIA5String({s
1e2f0 74 72 3a 65 7d 29 7d 74 68 72 6f 77 22 75 6e 73  tr:e})}throw"uns
1e300 75 70 70 6f 72 74 65 64 20 64 69 72 65 63 74 6f  upported directo
1e310 72 79 20 73 74 72 69 6e 67 20 74 79 70 65 3a 20  ry string type: 
1e320 74 79 70 65 3d 22 2b 66 2b 22 20 76 61 6c 75 65  type="+f+" value
1e330 3d 22 2b 65 7d 3b 74 68 69 73 2e 67 65 74 45 6e  ="+e};this.getEn
1e340 63 6f 64 65 64 48 65 78 3d 66 75 6e 63 74 69 6f  codedHex=functio
1e350 6e 28 29 7b 76 61 72 20 65 3d 6e 65 77 20 4b 4a  n(){var e=new KJ
1e360 55 52 2e 61 73 6e 31 2e 44 45 52 53 65 71 75 65  UR.asn1.DERSeque
1e370 6e 63 65 28 7b 61 72 72 61 79 3a 5b 74 68 69 73  nce({array:[this
1e380 2e 74 79 70 65 4f 62 6a 2c 74 68 69 73 2e 76 61  .typeObj,this.va
1e390 6c 75 65 4f 62 6a 5d 7d 29 3b 74 68 69 73 2e 54  lueObj]});this.T
1e3a0 4c 56 3d 65 2e 67 65 74 45 6e 63 6f 64 65 64 48  LV=e.getEncodedH
1e3b0 65 78 28 29 3b 72 65 74 75 72 6e 20 74 68 69 73  ex();return this
1e3c0 2e 54 4c 56 7d 3b 69 66 28 74 79 70 65 6f 66 20  .TLV};if(typeof 
1e3d0 62 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b  b!="undefined"){
1e3e0 69 66 28 74 79 70 65 6f 66 20 62 2e 73 74 72 21  if(typeof b.str!
1e3f0 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68  ="undefined"){th
1e400 69 73 2e 73 65 74 42 79 53 74 72 69 6e 67 28 62  is.setByString(b
1e410 2e 73 74 72 29 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c  .str)}}};YAHOO.l
1e420 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e  ang.extend(KJUR.
1e430 61 73 6e 31 2e 78 35 30 39 2e 41 74 74 72 69 62  asn1.x509.Attrib
1e440 75 74 65 54 79 70 65 41 6e 64 56 61 6c 75 65 2c  uteTypeAndValue,
1e450 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 4f 62  KJUR.asn1.ASN1Ob
1e460 6a 65 63 74 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e  ject);KJUR.asn1.
1e470 78 35 30 39 2e 53 75 62 6a 65 63 74 50 75 62 6c  x509.SubjectPubl
1e480 69 63 4b 65 79 49 6e 66 6f 3d 66 75 6e 63 74 69  icKeyInfo=functi
1e490 6f 6e 28 64 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e  on(d){KJUR.asn1.
1e4a0 78 35 30 39 2e 53 75 62 6a 65 63 74 50 75 62 6c  x509.SubjectPubl
1e4b0 69 63 4b 65 79 49 6e 66 6f 2e 73 75 70 65 72 63  icKeyInfo.superc
1e4c0 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72  lass.constructor
1e4d0 2e 63 61 6c 6c 28 74 68 69 73 29 3b 76 61 72 20  .call(this);var 
1e4e0 62 3d 6e 75 6c 6c 3b 76 61 72 20 63 3d 6e 75 6c  b=null;var c=nul
1e4f0 6c 3b 76 61 72 20 61 3d 6e 75 6c 6c 3b 74 68 69  l;var a=null;thi
1e500 73 2e 73 65 74 52 53 41 4b 65 79 3d 66 75 6e 63  s.setRSAKey=func
1e510 74 69 6f 6e 28 65 29 7b 69 66 28 21 52 53 41 4b  tion(e){if(!RSAK
1e520 65 79 2e 70 72 6f 74 6f 74 79 70 65 2e 69 73 50  ey.prototype.isP
1e530 72 6f 74 6f 74 79 70 65 4f 66 28 65 29 29 7b 74  rototypeOf(e)){t
1e540 68 72 6f 77 22 61 72 67 75 6d 65 6e 74 20 69 73  hrow"argument is
1e550 20 6e 6f 74 20 52 53 41 4b 65 79 20 69 6e 73 74   not RSAKey inst
1e560 61 6e 63 65 22 7d 74 68 69 73 2e 72 73 61 4b 65  ance"}this.rsaKe
1e570 79 3d 65 3b 76 61 72 20 67 3d 6e 65 77 20 4b 4a  y=e;var g=new KJ
1e580 55 52 2e 61 73 6e 31 2e 44 45 52 49 6e 74 65 67  UR.asn1.DERInteg
1e590 65 72 28 7b 62 69 67 69 6e 74 3a 65 2e 6e 7d 29  er({bigint:e.n})
1e5a0 3b 76 61 72 20 66 3d 6e 65 77 20 4b 4a 55 52 2e  ;var f=new KJUR.
1e5b0 61 73 6e 31 2e 44 45 52 49 6e 74 65 67 65 72 28  asn1.DERInteger(
1e5c0 7b 22 69 6e 74 22 3a 65 2e 65 7d 29 3b 76 61 72  {"int":e.e});var
1e5d0 20 69 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31   i=new KJUR.asn1
1e5e0 2e 44 45 52 53 65 71 75 65 6e 63 65 28 7b 61 72  .DERSequence({ar
1e5f0 72 61 79 3a 5b 67 2c 66 5d 7d 29 3b 76 61 72 20  ray:[g,f]});var 
1e600 68 3d 69 2e 67 65 74 45 6e 63 6f 64 65 64 48 65  h=i.getEncodedHe
1e610 78 28 29 3b 74 68 69 73 2e 61 73 6e 31 41 6c 67  x();this.asn1Alg
1e620 49 64 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31  Id=new KJUR.asn1
1e630 2e 78 35 30 39 2e 41 6c 67 6f 72 69 74 68 6d 49  .x509.AlgorithmI
1e640 64 65 6e 74 69 66 69 65 72 28 7b 6e 61 6d 65 3a  dentifier({name:
1e650 22 72 73 61 45 6e 63 72 79 70 74 69 6f 6e 22 7d  "rsaEncryption"}
1e660 29 3b 74 68 69 73 2e 61 73 6e 31 53 75 62 6a 50  );this.asn1SubjP
1e670 4b 65 79 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e  Key=new KJUR.asn
1e680 31 2e 44 45 52 42 69 74 53 74 72 69 6e 67 28 7b  1.DERBitString({
1e690 68 65 78 3a 22 30 30 22 2b 68 7d 29 7d 3b 74 68  hex:"00"+h})};th
1e6a0 69 73 2e 73 65 74 52 53 41 50 45 4d 3d 66 75 6e  is.setRSAPEM=fun
1e6b0 63 74 69 6f 6e 28 67 29 7b 69 66 28 67 2e 6d 61  ction(g){if(g.ma
1e6c0 74 63 68 28 2f 2d 2d 2d 2d 2d 42 45 47 49 4e 20  tch(/-----BEGIN 
1e6d0 50 55 42 4c 49 43 20 4b 45 59 2d 2d 2d 2d 2d 2f  PUBLIC KEY-----/
1e6e0 29 29 7b 76 61 72 20 6e 3d 67 3b 6e 3d 6e 2e 72  )){var n=g;n=n.r
1e6f0 65 70 6c 61 63 65 28 2f 5e 2d 2d 2d 2d 2d 5b 5e  eplace(/^-----[^
1e700 2d 5d 2b 2d 2d 2d 2d 2d 2f 2c 22 22 29 3b 6e 3d  -]+-----/,"");n=
1e710 6e 2e 72 65 70 6c 61 63 65 28 2f 2d 2d 2d 2d 2d  n.replace(/-----
1e720 5b 5e 2d 5d 2b 2d 2d 2d 2d 2d 5c 73 2a 24 2f 2c  [^-]+-----\s*$/,
1e730 22 22 29 3b 76 61 72 20 6d 3d 6e 2e 72 65 70 6c  "");var m=n.repl
1e740 61 63 65 28 2f 5c 73 2b 2f 67 2c 22 22 29 3b 76  ace(/\s+/g,"");v
1e750 61 72 20 66 3d 43 72 79 70 74 6f 4a 53 2e 65 6e  ar f=CryptoJS.en
1e760 63 2e 42 61 73 65 36 34 2e 70 61 72 73 65 28 6d  c.Base64.parse(m
1e770 29 3b 76 61 72 20 69 3d 43 72 79 70 74 6f 4a 53  );var i=CryptoJS
1e780 2e 65 6e 63 2e 48 65 78 2e 73 74 72 69 6e 67 69  .enc.Hex.stringi
1e790 66 79 28 66 29 3b 76 61 72 20 6b 3d 5f 72 73 61  fy(f);var k=_rsa
1e7a0 70 65 6d 5f 67 65 74 48 65 78 56 61 6c 75 65 41  pem_getHexValueA
1e7b0 72 72 61 79 4f 66 43 68 69 6c 64 72 65 6e 46 72  rrayOfChildrenFr
1e7c0 6f 6d 48 65 78 28 69 29 3b 76 61 72 20 68 3d 6b  omHex(i);var h=k
1e7d0 5b 31 5d 3b 76 61 72 20 6c 3d 68 2e 73 75 62 73  [1];var l=h.subs
1e7e0 74 72 28 32 29 3b 76 61 72 20 65 3d 5f 72 73 61  tr(2);var e=_rsa
1e7f0 70 65 6d 5f 67 65 74 48 65 78 56 61 6c 75 65 41  pem_getHexValueA
1e800 72 72 61 79 4f 66 43 68 69 6c 64 72 65 6e 46 72  rrayOfChildrenFr
1e810 6f 6d 48 65 78 28 6c 29 3b 76 61 72 20 6a 3d 6e  omHex(l);var j=n
1e820 65 77 20 52 53 41 4b 65 79 28 29 3b 6a 2e 73 65  ew RSAKey();j.se
1e830 74 50 75 62 6c 69 63 28 65 5b 30 5d 2c 65 5b 31  tPublic(e[0],e[1
1e840 5d 29 3b 74 68 69 73 2e 73 65 74 52 53 41 4b 65  ]);this.setRSAKe
1e850 79 28 6a 29 7d 65 6c 73 65 7b 74 68 72 6f 77 22  y(j)}else{throw"
1e860 6b 65 79 20 6e 6f 74 20 73 75 70 70 6f 72 74 65  key not supporte
1e870 64 22 7d 7d 3b 74 68 69 73 2e 67 65 74 41 53 4e  d"}};this.getASN
1e880 31 4f 62 6a 65 63 74 3d 66 75 6e 63 74 69 6f 6e  1Object=function
1e890 28 29 7b 69 66 28 74 68 69 73 2e 61 73 6e 31 41  (){if(this.asn1A
1e8a0 6c 67 49 64 3d 3d 6e 75 6c 6c 7c 7c 74 68 69 73  lgId==null||this
1e8b0 2e 61 73 6e 31 53 75 62 6a 50 4b 65 79 3d 3d 6e  .asn1SubjPKey==n
1e8c0 75 6c 6c 29 7b 74 68 72 6f 77 22 61 6c 67 49 64  ull){throw"algId
1e8d0 20 61 6e 64 2f 6f 72 20 73 75 62 6a 50 75 62 4b   and/or subjPubK
1e8e0 65 79 20 6e 6f 74 20 73 65 74 22 7d 76 61 72 20  ey not set"}var 
1e8f0 65 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e  e=new KJUR.asn1.
1e900 44 45 52 53 65 71 75 65 6e 63 65 28 7b 61 72 72  DERSequence({arr
1e910 61 79 3a 5b 74 68 69 73 2e 61 73 6e 31 41 6c 67  ay:[this.asn1Alg
1e920 49 64 2c 74 68 69 73 2e 61 73 6e 31 53 75 62 6a  Id,this.asn1Subj
1e930 50 4b 65 79 5d 7d 29 3b 72 65 74 75 72 6e 20 65  PKey]});return e
1e940 7d 3b 74 68 69 73 2e 67 65 74 45 6e 63 6f 64 65  };this.getEncode
1e950 64 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29 7b  dHex=function(){
1e960 76 61 72 20 65 3d 74 68 69 73 2e 67 65 74 41 53  var e=this.getAS
1e970 4e 31 4f 62 6a 65 63 74 28 29 3b 74 68 69 73 2e  N1Object();this.
1e980 68 54 4c 56 3d 65 2e 67 65 74 45 6e 63 6f 64 65  hTLV=e.getEncode
1e990 64 48 65 78 28 29 3b 72 65 74 75 72 6e 20 74 68  dHex();return th
1e9a0 69 73 2e 68 54 4c 56 7d 3b 74 68 69 73 2e 5f 73  is.hTLV};this._s
1e9b0 65 74 52 53 41 4b 65 79 3d 66 75 6e 63 74 69 6f  etRSAKey=functio
1e9c0 6e 28 65 29 7b 76 61 72 20 67 3d 4b 4a 55 52 2e  n(e){var g=KJUR.
1e9d0 61 73 6e 31 2e 41 53 4e 31 55 74 69 6c 2e 6e 65  asn1.ASN1Util.ne
1e9e0 77 4f 62 6a 65 63 74 28 7b 73 65 71 3a 5b 7b 22  wObject({seq:[{"
1e9f0 69 6e 74 22 3a 7b 62 69 67 69 6e 74 3a 65 2e 6e  int":{bigint:e.n
1ea00 7d 7d 2c 7b 22 69 6e 74 22 3a 7b 22 69 6e 74 22  }},{"int":{"int"
1ea10 3a 65 2e 65 7d 7d 5d 7d 29 3b 76 61 72 20 66 3d  :e.e}}]});var f=
1ea20 67 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78 28  g.getEncodedHex(
1ea30 29 3b 74 68 69 73 2e 61 73 6e 31 41 6c 67 49 64  );this.asn1AlgId
1ea40 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 78  =new KJUR.asn1.x
1ea50 35 30 39 2e 41 6c 67 6f 72 69 74 68 6d 49 64 65  509.AlgorithmIde
1ea60 6e 74 69 66 69 65 72 28 7b 6e 61 6d 65 3a 22 72  ntifier({name:"r
1ea70 73 61 45 6e 63 72 79 70 74 69 6f 6e 22 7d 29 3b  saEncryption"});
1ea80 74 68 69 73 2e 61 73 6e 31 53 75 62 6a 50 4b 65  this.asn1SubjPKe
1ea90 79 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e  y=new KJUR.asn1.
1eaa0 44 45 52 42 69 74 53 74 72 69 6e 67 28 7b 68 65  DERBitString({he
1eab0 78 3a 22 30 30 22 2b 66 7d 29 7d 3b 74 68 69 73  x:"00"+f})};this
1eac0 2e 5f 73 65 74 45 43 3d 66 75 6e 63 74 69 6f 6e  ._setEC=function
1ead0 28 65 29 7b 76 61 72 20 66 3d 6e 65 77 20 4b 4a  (e){var f=new KJ
1eae0 55 52 2e 61 73 6e 31 2e 44 45 52 4f 62 6a 65 63  UR.asn1.DERObjec
1eaf0 74 49 64 65 6e 74 69 66 69 65 72 28 7b 6e 61 6d  tIdentifier({nam
1eb00 65 3a 65 2e 63 75 72 76 65 4e 61 6d 65 7d 29 3b  e:e.curveName});
1eb10 74 68 69 73 2e 61 73 6e 31 41 6c 67 49 64 3d 6e  this.asn1AlgId=n
1eb20 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30  ew KJUR.asn1.x50
1eb30 39 2e 41 6c 67 6f 72 69 74 68 6d 49 64 65 6e 74  9.AlgorithmIdent
1eb40 69 66 69 65 72 28 7b 6e 61 6d 65 3a 22 65 63 50  ifier({name:"ecP
1eb50 75 62 6c 69 63 4b 65 79 22 2c 61 73 6e 31 70 61  ublicKey",asn1pa
1eb60 72 61 6d 73 3a 66 7d 29 3b 74 68 69 73 2e 61 73  rams:f});this.as
1eb70 6e 31 53 75 62 6a 50 4b 65 79 3d 6e 65 77 20 4b  n1SubjPKey=new K
1eb80 4a 55 52 2e 61 73 6e 31 2e 44 45 52 42 69 74 53  JUR.asn1.DERBitS
1eb90 74 72 69 6e 67 28 7b 68 65 78 3a 22 30 30 22 2b  tring({hex:"00"+
1eba0 65 2e 70 75 62 4b 65 79 48 65 78 7d 29 7d 3b 74  e.pubKeyHex})};t
1ebb0 68 69 73 2e 5f 73 65 74 44 53 41 3d 66 75 6e 63  his._setDSA=func
1ebc0 74 69 6f 6e 28 65 29 7b 76 61 72 20 66 3d 6e 65  tion(e){var f=ne
1ebd0 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31  w KJUR.asn1.ASN1
1ebe0 55 74 69 6c 2e 6e 65 77 4f 62 6a 65 63 74 28 7b  Util.newObject({
1ebf0 73 65 71 3a 5b 7b 22 69 6e 74 22 3a 7b 62 69 67  seq:[{"int":{big
1ec00 69 6e 74 3a 65 2e 70 7d 7d 2c 7b 22 69 6e 74 22  int:e.p}},{"int"
1ec10 3a 7b 62 69 67 69 6e 74 3a 65 2e 71 7d 7d 2c 7b  :{bigint:e.q}},{
1ec20 22 69 6e 74 22 3a 7b 62 69 67 69 6e 74 3a 65 2e  "int":{bigint:e.
1ec30 67 7d 7d 5d 7d 29 3b 74 68 69 73 2e 61 73 6e 31  g}}]});this.asn1
1ec40 41 6c 67 49 64 3d 6e 65 77 20 4b 4a 55 52 2e 61  AlgId=new KJUR.a
1ec50 73 6e 31 2e 78 35 30 39 2e 41 6c 67 6f 72 69 74  sn1.x509.Algorit
1ec60 68 6d 49 64 65 6e 74 69 66 69 65 72 28 7b 6e 61  hmIdentifier({na
1ec70 6d 65 3a 22 64 73 61 22 2c 61 73 6e 31 70 61 72  me:"dsa",asn1par
1ec80 61 6d 73 3a 66 7d 29 3b 76 61 72 20 67 3d 6e 65  ams:f});var g=ne
1ec90 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 49  w KJUR.asn1.DERI
1eca0 6e 74 65 67 65 72 28 7b 62 69 67 69 6e 74 3a 65  nteger({bigint:e
1ecb0 2e 79 7d 29 3b 74 68 69 73 2e 61 73 6e 31 53 75  .y});this.asn1Su
1ecc0 62 6a 50 4b 65 79 3d 6e 65 77 20 4b 4a 55 52 2e  bjPKey=new KJUR.
1ecd0 61 73 6e 31 2e 44 45 52 42 69 74 53 74 72 69 6e  asn1.DERBitStrin
1ece0 67 28 7b 68 65 78 3a 22 30 30 22 2b 67 2e 67 65  g({hex:"00"+g.ge
1ecf0 74 45 6e 63 6f 64 65 64 48 65 78 28 29 7d 29 7d  tEncodedHex()})}
1ed00 3b 69 66 28 74 79 70 65 6f 66 20 64 21 3d 22 75  ;if(typeof d!="u
1ed10 6e 64 65 66 69 6e 65 64 22 29 7b 69 66 28 74 79  ndefined"){if(ty
1ed20 70 65 6f 66 20 52 53 41 4b 65 79 21 3d 22 75 6e  peof RSAKey!="un
1ed30 64 65 66 69 6e 65 64 22 26 26 64 20 69 6e 73 74  defined"&&d inst
1ed40 61 6e 63 65 6f 66 20 52 53 41 4b 65 79 29 7b 74  anceof RSAKey){t
1ed50 68 69 73 2e 5f 73 65 74 52 53 41 4b 65 79 28 64  his._setRSAKey(d
1ed60 29 7d 65 6c 73 65 7b 69 66 28 74 79 70 65 6f 66  )}else{if(typeof
1ed70 20 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 45 43 44   KJUR.crypto.ECD
1ed80 53 41 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 26  SA!="undefined"&
1ed90 26 64 20 69 6e 73 74 61 6e 63 65 6f 66 20 4b 4a  &d instanceof KJ
1eda0 55 52 2e 63 72 79 70 74 6f 2e 45 43 44 53 41 29  UR.crypto.ECDSA)
1edb0 7b 74 68 69 73 2e 5f 73 65 74 45 43 28 64 29 7d  {this._setEC(d)}
1edc0 65 6c 73 65 7b 69 66 28 74 79 70 65 6f 66 20 4b  else{if(typeof K
1edd0 4a 55 52 2e 63 72 79 70 74 6f 2e 44 53 41 21 3d  JUR.crypto.DSA!=
1ede0 22 75 6e 64 65 66 69 6e 65 64 22 26 26 64 20 69  "undefined"&&d i
1edf0 6e 73 74 61 6e 63 65 6f 66 20 4b 4a 55 52 2e 63  nstanceof KJUR.c
1ee00 72 79 70 74 6f 2e 44 53 41 29 7b 74 68 69 73 2e  rypto.DSA){this.
1ee10 5f 73 65 74 44 53 41 28 64 29 7d 65 6c 73 65 7b  _setDSA(d)}else{
1ee20 69 66 28 74 79 70 65 6f 66 20 64 2e 72 73 61 6b  if(typeof d.rsak
1ee30 65 79 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29  ey!="undefined")
1ee40 7b 74 68 69 73 2e 73 65 74 52 53 41 4b 65 79 28  {this.setRSAKey(
1ee50 64 2e 72 73 61 6b 65 79 29 7d 65 6c 73 65 7b 69  d.rsakey)}else{i
1ee60 66 28 74 79 70 65 6f 66 20 64 2e 72 73 61 70 65  f(typeof d.rsape
1ee70 6d 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b  m!="undefined"){
1ee80 74 68 69 73 2e 73 65 74 52 53 41 50 45 4d 28 64  this.setRSAPEM(d
1ee90 2e 72 73 61 70 65 6d 29 7d 7d 7d 7d 7d 7d 7d 3b  .rsapem)}}}}}}};
1eea0 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e  YAHOO.lang.exten
1eeb0 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39  d(KJUR.asn1.x509
1eec0 2e 53 75 62 6a 65 63 74 50 75 62 6c 69 63 4b 65  .SubjectPublicKe
1eed0 79 49 6e 66 6f 2c 4b 4a 55 52 2e 61 73 6e 31 2e  yInfo,KJUR.asn1.
1eee0 41 53 4e 31 4f 62 6a 65 63 74 29 3b 4b 4a 55 52  ASN1Object);KJUR
1eef0 2e 61 73 6e 31 2e 78 35 30 39 2e 54 69 6d 65 3d  .asn1.x509.Time=
1ef00 66 75 6e 63 74 69 6f 6e 28 63 29 7b 4b 4a 55 52  function(c){KJUR
1ef10 2e 61 73 6e 31 2e 78 35 30 39 2e 54 69 6d 65 2e  .asn1.x509.Time.
1ef20 73 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74  superclass.const
1ef30 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73  ructor.call(this
1ef40 29 3b 76 61 72 20 62 3d 6e 75 6c 6c 3b 76 61 72  );var b=null;var
1ef50 20 61 3d 6e 75 6c 6c 3b 74 68 69 73 2e 73 65 74   a=null;this.set
1ef60 54 69 6d 65 50 61 72 61 6d 73 3d 66 75 6e 63 74  TimeParams=funct
1ef70 69 6f 6e 28 64 29 7b 74 68 69 73 2e 74 69 6d 65  ion(d){this.time
1ef80 50 61 72 61 6d 73 3d 64 7d 3b 74 68 69 73 2e 67  Params=d};this.g
1ef90 65 74 45 6e 63 6f 64 65 64 48 65 78 3d 66 75 6e  etEncodedHex=fun
1efa0 63 74 69 6f 6e 28 29 7b 76 61 72 20 64 3d 6e 75  ction(){var d=nu
1efb0 6c 6c 3b 69 66 28 74 68 69 73 2e 74 69 6d 65 50  ll;if(this.timeP
1efc0 61 72 61 6d 73 21 3d 6e 75 6c 6c 29 7b 69 66 28  arams!=null){if(
1efd0 74 68 69 73 2e 74 79 70 65 3d 3d 22 75 74 63 22  this.type=="utc"
1efe0 29 7b 64 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e  ){d=new KJUR.asn
1eff0 31 2e 44 45 52 55 54 43 54 69 6d 65 28 74 68 69  1.DERUTCTime(thi
1f000 73 2e 74 69 6d 65 50 61 72 61 6d 73 29 7d 65 6c  s.timeParams)}el
1f010 73 65 7b 64 3d 6e 65 77 20 4b 4a 55 52 2e 61 73  se{d=new KJUR.as
1f020 6e 31 2e 44 45 52 47 65 6e 65 72 61 6c 69 7a 65  n1.DERGeneralize
1f030 64 54 69 6d 65 28 74 68 69 73 2e 74 69 6d 65 50  dTime(this.timeP
1f040 61 72 61 6d 73 29 7d 7d 65 6c 73 65 7b 69 66 28  arams)}}else{if(
1f050 74 68 69 73 2e 74 79 70 65 3d 3d 22 75 74 63 22  this.type=="utc"
1f060 29 7b 64 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e  ){d=new KJUR.asn
1f070 31 2e 44 45 52 55 54 43 54 69 6d 65 28 29 7d 65  1.DERUTCTime()}e
1f080 6c 73 65 7b 64 3d 6e 65 77 20 4b 4a 55 52 2e 61  lse{d=new KJUR.a
1f090 73 6e 31 2e 44 45 52 47 65 6e 65 72 61 6c 69 7a  sn1.DERGeneraliz
1f0a0 65 64 54 69 6d 65 28 29 7d 7d 74 68 69 73 2e 54  edTime()}}this.T
1f0b0 4c 56 3d 64 2e 67 65 74 45 6e 63 6f 64 65 64 48  LV=d.getEncodedH
1f0c0 65 78 28 29 3b 72 65 74 75 72 6e 20 74 68 69 73  ex();return this
1f0d0 2e 54 4c 56 7d 3b 74 68 69 73 2e 74 79 70 65 3d  .TLV};this.type=
1f0e0 22 75 74 63 22 3b 69 66 28 74 79 70 65 6f 66 20  "utc";if(typeof 
1f0f0 63 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b  c!="undefined"){
1f100 69 66 28 74 79 70 65 6f 66 20 63 2e 74 79 70 65  if(typeof c.type
1f110 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74  !="undefined"){t
1f120 68 69 73 2e 74 79 70 65 3d 63 2e 74 79 70 65 7d  his.type=c.type}
1f130 65 6c 73 65 7b 69 66 28 74 79 70 65 6f 66 20 63  else{if(typeof c
1f140 2e 73 74 72 21 3d 22 75 6e 64 65 66 69 6e 65 64  .str!="undefined
1f150 22 29 7b 69 66 28 63 2e 73 74 72 2e 6d 61 74 63  "){if(c.str.matc
1f160 68 28 2f 5e 5b 30 2d 39 5d 7b 31 32 7d 5a 24 2f  h(/^[0-9]{12}Z$/
1f170 29 29 7b 74 68 69 73 2e 74 79 70 65 3d 22 75 74  )){this.type="ut
1f180 63 22 7d 69 66 28 63 2e 73 74 72 2e 6d 61 74 63  c"}if(c.str.matc
1f190 68 28 2f 5e 5b 30 2d 39 5d 7b 31 34 7d 5a 24 2f  h(/^[0-9]{14}Z$/
1f1a0 29 29 7b 74 68 69 73 2e 74 79 70 65 3d 22 67 65  )){this.type="ge
1f1b0 6e 22 7d 7d 7d 74 68 69 73 2e 74 69 6d 65 50 61  n"}}}this.timePa
1f1c0 72 61 6d 73 3d 63 7d 7d 3b 59 41 48 4f 4f 2e 6c  rams=c}};YAHOO.l
1f1d0 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e  ang.extend(KJUR.
1f1e0 61 73 6e 31 2e 78 35 30 39 2e 54 69 6d 65 2c 4b  asn1.x509.Time,K
1f1f0 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a  JUR.asn1.ASN1Obj
1f200 65 63 74 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 78  ect);KJUR.asn1.x
1f210 35 30 39 2e 41 6c 67 6f 72 69 74 68 6d 49 64 65  509.AlgorithmIde
1f220 6e 74 69 66 69 65 72 3d 66 75 6e 63 74 69 6f 6e  ntifier=function
1f230 28 65 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e 78 35  (e){KJUR.asn1.x5
1f240 30 39 2e 41 6c 67 6f 72 69 74 68 6d 49 64 65 6e  09.AlgorithmIden
1f250 74 69 66 69 65 72 2e 73 75 70 65 72 63 6c 61 73  tifier.superclas
1f260 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61  s.constructor.ca
1f270 6c 6c 28 74 68 69 73 29 3b 76 61 72 20 61 3d 6e  ll(this);var a=n
1f280 75 6c 6c 3b 76 61 72 20 64 3d 6e 75 6c 6c 3b 76  ull;var d=null;v
1f290 61 72 20 62 3d 6e 75 6c 6c 3b 76 61 72 20 63 3d  ar b=null;var c=
1f2a0 66 61 6c 73 65 3b 74 68 69 73 2e 67 65 74 45 6e  false;this.getEn
1f2b0 63 6f 64 65 64 48 65 78 3d 66 75 6e 63 74 69 6f  codedHex=functio
1f2c0 6e 28 29 7b 69 66 28 74 68 69 73 2e 6e 61 6d 65  n(){if(this.name
1f2d0 41 6c 67 3d 3d 6e 75 6c 6c 26 26 74 68 69 73 2e  Alg==null&&this.
1f2e0 61 73 6e 31 41 6c 67 3d 3d 6e 75 6c 6c 29 7b 74  asn1Alg==null){t
1f2f0 68 72 6f 77 22 61 6c 67 6f 72 69 74 68 6d 20 6e  hrow"algorithm n
1f300 6f 74 20 73 70 65 63 69 66 69 65 64 22 7d 69 66  ot specified"}if
1f310 28 74 68 69 73 2e 6e 61 6d 65 41 6c 67 21 3d 6e  (this.nameAlg!=n
1f320 75 6c 6c 26 26 74 68 69 73 2e 61 73 6e 31 41 6c  ull&&this.asn1Al
1f330 67 3d 3d 6e 75 6c 6c 29 7b 74 68 69 73 2e 61 73  g==null){this.as
1f340 6e 31 41 6c 67 3d 4b 4a 55 52 2e 61 73 6e 31 2e  n1Alg=KJUR.asn1.
1f350 78 35 30 39 2e 4f 49 44 2e 6e 61 6d 65 32 6f 62  x509.OID.name2ob
1f360 6a 28 74 68 69 73 2e 6e 61 6d 65 41 6c 67 29 7d  j(this.nameAlg)}
1f370 76 61 72 20 66 3d 5b 74 68 69 73 2e 61 73 6e 31  var f=[this.asn1
1f380 41 6c 67 5d 3b 69 66 28 21 74 68 69 73 2e 70 61  Alg];if(!this.pa
1f390 72 61 6d 45 6d 70 74 79 29 7b 66 2e 70 75 73 68  ramEmpty){f.push
1f3a0 28 74 68 69 73 2e 61 73 6e 31 50 61 72 61 6d 73  (this.asn1Params
1f3b0 29 7d 76 61 72 20 67 3d 6e 65 77 20 4b 4a 55 52  )}var g=new KJUR
1f3c0 2e 61 73 6e 31 2e 44 45 52 53 65 71 75 65 6e 63  .asn1.DERSequenc
1f3d0 65 28 7b 61 72 72 61 79 3a 66 7d 29 3b 74 68 69  e({array:f});thi
1f3e0 73 2e 68 54 4c 56 3d 67 2e 67 65 74 45 6e 63 6f  s.hTLV=g.getEnco
1f3f0 64 65 64 48 65 78 28 29 3b 72 65 74 75 72 6e 20  dedHex();return 
1f400 74 68 69 73 2e 68 54 4c 56 7d 3b 69 66 28 74 79  this.hTLV};if(ty
1f410 70 65 6f 66 20 65 21 3d 22 75 6e 64 65 66 69 6e  peof e!="undefin
1f420 65 64 22 29 7b 69 66 28 74 79 70 65 6f 66 20 65  ed"){if(typeof e
1f430 2e 6e 61 6d 65 21 3d 22 75 6e 64 65 66 69 6e 65  .name!="undefine
1f440 64 22 29 7b 74 68 69 73 2e 6e 61 6d 65 41 6c 67  d"){this.nameAlg
1f450 3d 65 2e 6e 61 6d 65 7d 69 66 28 74 79 70 65 6f  =e.name}if(typeo
1f460 66 20 65 2e 61 73 6e 31 70 61 72 61 6d 73 21 3d  f e.asn1params!=
1f470 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68 69  "undefined"){thi
1f480 73 2e 61 73 6e 31 50 61 72 61 6d 73 3d 65 2e 61  s.asn1Params=e.a
1f490 73 6e 31 70 61 72 61 6d 73 7d 69 66 28 74 79 70  sn1params}if(typ
1f4a0 65 6f 66 20 65 2e 70 61 72 61 6d 65 6d 70 74 79  eof e.paramempty
1f4b0 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74  !="undefined"){t
1f4c0 68 69 73 2e 70 61 72 61 6d 45 6d 70 74 79 3d 65  his.paramEmpty=e
1f4d0 2e 70 61 72 61 6d 65 6d 70 74 79 7d 7d 69 66 28  .paramempty}}if(
1f4e0 74 68 69 73 2e 61 73 6e 31 50 61 72 61 6d 73 3d  this.asn1Params=
1f4f0 3d 6e 75 6c 6c 29 7b 74 68 69 73 2e 61 73 6e 31  =null){this.asn1
1f500 50 61 72 61 6d 73 3d 6e 65 77 20 4b 4a 55 52 2e  Params=new KJUR.
1f510 61 73 6e 31 2e 44 45 52 4e 75 6c 6c 28 29 7d 7d  asn1.DERNull()}}
1f520 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65  ;YAHOO.lang.exte
1f530 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30  nd(KJUR.asn1.x50
1f540 39 2e 41 6c 67 6f 72 69 74 68 6d 49 64 65 6e 74  9.AlgorithmIdent
1f550 69 66 69 65 72 2c 4b 4a 55 52 2e 61 73 6e 31 2e  ifier,KJUR.asn1.
1f560 41 53 4e 31 4f 62 6a 65 63 74 29 3b 4b 4a 55 52  ASN1Object);KJUR
1f570 2e 61 73 6e 31 2e 78 35 30 39 2e 47 65 6e 65 72  .asn1.x509.Gener
1f580 61 6c 4e 61 6d 65 3d 66 75 6e 63 74 69 6f 6e 28  alName=function(
1f590 64 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30  d){KJUR.asn1.x50
1f5a0 39 2e 47 65 6e 65 72 61 6c 4e 61 6d 65 2e 73 75  9.GeneralName.su
1f5b0 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75  perclass.constru
1f5c0 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29 3b  ctor.call(this);
1f5d0 76 61 72 20 63 3d 6e 75 6c 6c 3b 76 61 72 20 62  var c=null;var b
1f5e0 3d 6e 75 6c 6c 3b 76 61 72 20 61 3d 7b 72 66 63  =null;var a={rfc
1f5f0 38 32 32 3a 22 38 31 22 2c 64 6e 73 3a 22 38 32  822:"81",dns:"82
1f600 22 2c 64 6e 3a 22 61 34 22 2c 75 72 69 3a 22 38  ",dn:"a4",uri:"8
1f610 36 22 7d 3b 74 68 69 73 2e 65 78 70 6c 69 63 69  6"};this.explici
1f620 74 3d 66 61 6c 73 65 3b 74 68 69 73 2e 73 65 74  t=false;this.set
1f630 42 79 50 61 72 61 6d 3d 66 75 6e 63 74 69 6f 6e  ByParam=function
1f640 28 6b 29 7b 76 61 72 20 6a 3d 6e 75 6c 6c 3b 76  (k){var j=null;v
1f650 61 72 20 67 3d 6e 75 6c 6c 3b 69 66 28 74 79 70  ar g=null;if(typ
1f660 65 6f 66 20 6b 3d 3d 22 75 6e 64 65 66 69 6e 65  eof k=="undefine
1f670 64 22 29 7b 72 65 74 75 72 6e 7d 69 66 28 74 79  d"){return}if(ty
1f680 70 65 6f 66 20 6b 2e 72 66 63 38 32 32 21 3d 22  peof k.rfc822!="
1f690 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68 69 73  undefined"){this
1f6a0 2e 74 79 70 65 3d 22 72 66 63 38 32 32 22 3b 67  .type="rfc822";g
1f6b0 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44  =new KJUR.asn1.D
1f6c0 45 52 49 41 35 53 74 72 69 6e 67 28 7b 73 74 72  ERIA5String({str
1f6d0 3a 6b 5b 74 68 69 73 2e 74 79 70 65 5d 7d 29 7d  :k[this.type]})}
1f6e0 69 66 28 74 79 70 65 6f 66 20 6b 2e 64 6e 73 21  if(typeof k.dns!
1f6f0 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68  ="undefined"){th
1f700 69 73 2e 74 79 70 65 3d 22 64 6e 73 22 3b 67 3d  is.type="dns";g=
1f710 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  new KJUR.asn1.DE
1f720 52 49 41 35 53 74 72 69 6e 67 28 7b 73 74 72 3a  RIA5String({str:
1f730 6b 5b 74 68 69 73 2e 74 79 70 65 5d 7d 29 7d 69  k[this.type]})}i
1f740 66 28 74 79 70 65 6f 66 20 6b 2e 75 72 69 21 3d  f(typeof k.uri!=
1f750 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68 69  "undefined"){thi
1f760 73 2e 74 79 70 65 3d 22 75 72 69 22 3b 67 3d 6e  s.type="uri";g=n
1f770 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52  ew KJUR.asn1.DER
1f780 49 41 35 53 74 72 69 6e 67 28 7b 73 74 72 3a 6b  IA5String({str:k
1f790 5b 74 68 69 73 2e 74 79 70 65 5d 7d 29 7d 69 66  [this.type]})}if
1f7a0 28 74 79 70 65 6f 66 20 6b 2e 63 65 72 74 69 73  (typeof k.certis
1f7b0 73 75 65 72 21 3d 22 75 6e 64 65 66 69 6e 65 64  suer!="undefined
1f7c0 22 29 7b 74 68 69 73 2e 74 79 70 65 3d 22 64 6e  "){this.type="dn
1f7d0 22 3b 74 68 69 73 2e 65 78 70 6c 69 63 69 74 3d  ";this.explicit=
1f7e0 74 72 75 65 3b 76 61 72 20 68 3d 6b 2e 63 65 72  true;var h=k.cer
1f7f0 74 69 73 73 75 65 72 3b 76 61 72 20 66 3d 6e 75  tissuer;var f=nu
1f800 6c 6c 3b 69 66 28 68 2e 6d 61 74 63 68 28 2f 5e  ll;if(h.match(/^
1f810 5b 30 2d 39 41 2d 46 61 2d 66 5d 2b 24 2f 29 29  [0-9A-Fa-f]+$/))
1f820 7b 66 3d 3d 68 7d 69 66 28 68 2e 69 6e 64 65 78  {f==h}if(h.index
1f830 4f 66 28 22 2d 2d 2d 2d 2d 42 45 47 49 4e 20 22  Of("-----BEGIN "
1f840 29 21 3d 2d 31 29 7b 66 3d 58 35 30 39 2e 70 65  )!=-1){f=X509.pe
1f850 6d 54 6f 48 65 78 28 68 29 7d 69 66 28 66 3d 3d  mToHex(h)}if(f==
1f860 6e 75 6c 6c 29 7b 74 68 72 6f 77 22 63 65 72 74  null){throw"cert
1f870 69 73 73 75 65 72 20 70 61 72 61 6d 20 6e 6f 74  issuer param not
1f880 20 63 65 72 74 22 7d 76 61 72 20 65 3d 6e 65 77   cert"}var e=new
1f890 20 58 35 30 39 28 29 3b 65 2e 68 65 78 3d 66 3b   X509();e.hex=f;
1f8a0 76 61 72 20 69 3d 65 2e 67 65 74 49 73 73 75 65  var i=e.getIssue
1f8b0 72 48 65 78 28 29 3b 67 3d 6e 65 77 20 4b 4a 55  rHex();g=new KJU
1f8c0 52 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63  R.asn1.ASN1Objec
1f8d0 74 28 29 3b 67 2e 68 54 4c 56 3d 69 7d 69 66 28  t();g.hTLV=i}if(
1f8e0 74 79 70 65 6f 66 20 6b 2e 63 65 72 74 73 75 62  typeof k.certsub
1f8f0 6a 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b  j!="undefined"){
1f900 74 68 69 73 2e 74 79 70 65 3d 22 64 6e 22 3b 74  this.type="dn";t
1f910 68 69 73 2e 65 78 70 6c 69 63 69 74 3d 74 72 75  his.explicit=tru
1f920 65 3b 76 61 72 20 68 3d 6b 2e 63 65 72 74 73 75  e;var h=k.certsu
1f930 62 6a 3b 76 61 72 20 66 3d 6e 75 6c 6c 3b 69 66  bj;var f=null;if
1f940 28 68 2e 6d 61 74 63 68 28 2f 5e 5b 30 2d 39 41  (h.match(/^[0-9A
1f950 2d 46 61 2d 66 5d 2b 24 2f 29 29 7b 66 3d 3d 68  -Fa-f]+$/)){f==h
1f960 7d 69 66 28 68 2e 69 6e 64 65 78 4f 66 28 22 2d  }if(h.indexOf("-
1f970 2d 2d 2d 2d 42 45 47 49 4e 20 22 29 21 3d 2d 31  ----BEGIN ")!=-1
1f980 29 7b 66 3d 58 35 30 39 2e 70 65 6d 54 6f 48 65  ){f=X509.pemToHe
1f990 78 28 68 29 7d 69 66 28 66 3d 3d 6e 75 6c 6c 29  x(h)}if(f==null)
1f9a0 7b 74 68 72 6f 77 22 63 65 72 74 73 75 62 6a 20  {throw"certsubj 
1f9b0 70 61 72 61 6d 20 6e 6f 74 20 63 65 72 74 22 7d  param not cert"}
1f9c0 76 61 72 20 65 3d 6e 65 77 20 58 35 30 39 28 29  var e=new X509()
1f9d0 3b 65 2e 68 65 78 3d 66 3b 76 61 72 20 69 3d 65  ;e.hex=f;var i=e
1f9e0 2e 67 65 74 53 75 62 6a 65 63 74 48 65 78 28 29  .getSubjectHex()
1f9f0 3b 67 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31  ;g=new KJUR.asn1
1fa00 2e 41 53 4e 31 4f 62 6a 65 63 74 28 29 3b 67 2e  .ASN1Object();g.
1fa10 68 54 4c 56 3d 69 7d 69 66 28 74 68 69 73 2e 74  hTLV=i}if(this.t
1fa20 79 70 65 3d 3d 6e 75 6c 6c 29 7b 74 68 72 6f 77  ype==null){throw
1fa30 22 75 6e 73 75 70 70 6f 72 74 65 64 20 74 79 70  "unsupported typ
1fa40 65 20 69 6e 20 70 61 72 61 6d 73 3d 22 2b 6b 7d  e in params="+k}
1fa50 74 68 69 73 2e 61 73 6e 31 4f 62 6a 3d 6e 65 77  this.asn1Obj=new
1fa60 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 54 61   KJUR.asn1.DERTa
1fa70 67 67 65 64 4f 62 6a 65 63 74 28 7b 65 78 70 6c  ggedObject({expl
1fa80 69 63 69 74 3a 74 68 69 73 2e 65 78 70 6c 69 63  icit:this.explic
1fa90 69 74 2c 74 61 67 3a 61 5b 74 68 69 73 2e 74 79  it,tag:a[this.ty
1faa0 70 65 5d 2c 6f 62 6a 3a 67 7d 29 7d 3b 74 68 69  pe],obj:g})};thi
1fab0 73 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78 3d  s.getEncodedHex=
1fac0 66 75 6e 63 74 69 6f 6e 28 29 7b 72 65 74 75 72  function(){retur
1fad0 6e 20 74 68 69 73 2e 61 73 6e 31 4f 62 6a 2e 67  n this.asn1Obj.g
1fae0 65 74 45 6e 63 6f 64 65 64 48 65 78 28 29 7d 3b  etEncodedHex()};
1faf0 69 66 28 74 79 70 65 6f 66 20 64 21 3d 22 75 6e  if(typeof d!="un
1fb00 64 65 66 69 6e 65 64 22 29 7b 74 68 69 73 2e 73  defined"){this.s
1fb10 65 74 42 79 50 61 72 61 6d 28 64 29 7d 7d 3b 59  etByParam(d)}};Y
1fb20 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64  AHOO.lang.extend
1fb30 28 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e  (KJUR.asn1.x509.
1fb40 47 65 6e 65 72 61 6c 4e 61 6d 65 2c 4b 4a 55 52  GeneralName,KJUR
1fb50 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74  .asn1.ASN1Object
1fb60 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39  );KJUR.asn1.x509
1fb70 2e 47 65 6e 65 72 61 6c 4e 61 6d 65 73 3d 66 75  .GeneralNames=fu
1fb80 6e 63 74 69 6f 6e 28 62 29 7b 4b 4a 55 52 2e 61  nction(b){KJUR.a
1fb90 73 6e 31 2e 78 35 30 39 2e 47 65 6e 65 72 61 6c  sn1.x509.General
1fba0 4e 61 6d 65 73 2e 73 75 70 65 72 63 6c 61 73 73  Names.superclass
1fbb0 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c  .constructor.cal
1fbc0 6c 28 74 68 69 73 29 3b 76 61 72 20 61 3d 6e 75  l(this);var a=nu
1fbd0 6c 6c 3b 74 68 69 73 2e 73 65 74 42 79 50 61 72  ll;this.setByPar
1fbe0 61 6d 41 72 72 61 79 3d 66 75 6e 63 74 69 6f 6e  amArray=function
1fbf0 28 65 29 7b 66 6f 72 28 76 61 72 20 63 3d 30 3b  (e){for(var c=0;
1fc00 63 3c 65 2e 6c 65 6e 67 74 68 3b 63 2b 2b 29 7b  c<e.length;c++){
1fc10 76 61 72 20 64 3d 6e 65 77 20 4b 4a 55 52 2e 61  var d=new KJUR.a
1fc20 73 6e 31 2e 78 35 30 39 2e 47 65 6e 65 72 61 6c  sn1.x509.General
1fc30 4e 61 6d 65 28 65 5b 63 5d 29 3b 74 68 69 73 2e  Name(e[c]);this.
1fc40 61 73 6e 31 41 72 72 61 79 2e 70 75 73 68 28 64  asn1Array.push(d
1fc50 29 7d 7d 3b 74 68 69 73 2e 67 65 74 45 6e 63 6f  )}};this.getEnco
1fc60 64 65 64 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28  dedHex=function(
1fc70 29 7b 76 61 72 20 63 3d 6e 65 77 20 4b 4a 55 52  ){var c=new KJUR
1fc80 2e 61 73 6e 31 2e 44 45 52 53 65 71 75 65 6e 63  .asn1.DERSequenc
1fc90 65 28 7b 61 72 72 61 79 3a 74 68 69 73 2e 61 73  e({array:this.as
1fca0 6e 31 41 72 72 61 79 7d 29 3b 72 65 74 75 72 6e  n1Array});return
1fcb0 20 63 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78   c.getEncodedHex
1fcc0 28 29 7d 3b 74 68 69 73 2e 61 73 6e 31 41 72 72  ()};this.asn1Arr
1fcd0 61 79 3d 6e 65 77 20 41 72 72 61 79 28 29 3b 69  ay=new Array();i
1fce0 66 28 74 79 70 65 6f 66 20 62 21 3d 22 75 6e 64  f(typeof b!="und
1fcf0 65 66 69 6e 65 64 22 29 7b 74 68 69 73 2e 73 65  efined"){this.se
1fd00 74 42 79 50 61 72 61 6d 41 72 72 61 79 28 62 29  tByParamArray(b)
1fd10 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78  }};YAHOO.lang.ex
1fd20 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 78  tend(KJUR.asn1.x
1fd30 35 30 39 2e 47 65 6e 65 72 61 6c 4e 61 6d 65 73  509.GeneralNames
1fd40 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 4f  ,KJUR.asn1.ASN1O
1fd50 62 6a 65 63 74 29 3b 4b 4a 55 52 2e 61 73 6e 31  bject);KJUR.asn1
1fd60 2e 78 35 30 39 2e 44 69 73 74 72 69 62 75 74 69  .x509.Distributi
1fd70 6f 6e 50 6f 69 6e 74 4e 61 6d 65 3d 66 75 6e 63  onPointName=func
1fd80 74 69 6f 6e 28 62 29 7b 4b 4a 55 52 2e 61 73 6e  tion(b){KJUR.asn
1fd90 31 2e 78 35 30 39 2e 44 69 73 74 72 69 62 75 74  1.x509.Distribut
1fda0 69 6f 6e 50 6f 69 6e 74 4e 61 6d 65 2e 73 75 70  ionPointName.sup
1fdb0 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63  erclass.construc
1fdc0 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29 3b 76  tor.call(this);v
1fdd0 61 72 20 65 3d 6e 75 6c 6c 3b 76 61 72 20 63 3d  ar e=null;var c=
1fde0 6e 75 6c 6c 3b 76 61 72 20 61 3d 6e 75 6c 6c 3b  null;var a=null;
1fdf0 76 61 72 20 64 3d 6e 75 6c 6c 3b 74 68 69 73 2e  var d=null;this.
1fe00 67 65 74 45 6e 63 6f 64 65 64 48 65 78 3d 66 75  getEncodedHex=fu
1fe10 6e 63 74 69 6f 6e 28 29 7b 69 66 28 74 68 69 73  nction(){if(this
1fe20 2e 74 79 70 65 21 3d 22 66 75 6c 6c 22 29 7b 74  .type!="full"){t
1fe30 68 72 6f 77 22 63 75 72 72 65 6e 74 6c 79 20 74  hrow"currently t
1fe40 79 70 65 20 73 68 61 6c 6c 20 62 65 20 27 66 75  ype shall be 'fu
1fe50 6c 6c 27 3a 20 22 2b 74 68 69 73 2e 74 79 70 65  ll': "+this.type
1fe60 7d 74 68 69 73 2e 61 73 6e 31 4f 62 6a 3d 6e 65  }this.asn1Obj=ne
1fe70 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 54  w KJUR.asn1.DERT
1fe80 61 67 67 65 64 4f 62 6a 65 63 74 28 7b 65 78 70  aggedObject({exp
1fe90 6c 69 63 69 74 3a 66 61 6c 73 65 2c 74 61 67 3a  licit:false,tag:
1fea0 74 68 69 73 2e 74 61 67 2c 6f 62 6a 3a 74 68 69  this.tag,obj:thi
1feb0 73 2e 61 73 6e 31 56 7d 29 3b 74 68 69 73 2e 68  s.asn1V});this.h
1fec0 54 4c 56 3d 74 68 69 73 2e 61 73 6e 31 4f 62 6a  TLV=this.asn1Obj
1fed0 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78 28 29  .getEncodedHex()
1fee0 3b 72 65 74 75 72 6e 20 74 68 69 73 2e 68 54 4c  ;return this.hTL
1fef0 56 7d 3b 69 66 28 74 79 70 65 6f 66 20 62 21 3d  V};if(typeof b!=
1ff00 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 69 66 28  "undefined"){if(
1ff10 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 47  KJUR.asn1.x509.G
1ff20 65 6e 65 72 61 6c 4e 61 6d 65 73 2e 70 72 6f 74  eneralNames.prot
1ff30 6f 74 79 70 65 2e 69 73 50 72 6f 74 6f 74 79 70  otype.isPrototyp
1ff40 65 4f 66 28 62 29 29 7b 74 68 69 73 2e 74 79 70  eOf(b)){this.typ
1ff50 65 3d 22 66 75 6c 6c 22 3b 74 68 69 73 2e 74 61  e="full";this.ta
1ff60 67 3d 22 61 30 22 3b 74 68 69 73 2e 61 73 6e 31  g="a0";this.asn1
1ff70 56 3d 62 7d 65 6c 73 65 7b 74 68 72 6f 77 22 54  V=b}else{throw"T
1ff80 68 69 73 20 63 6c 61 73 73 20 73 75 70 70 6f 72  his class suppor
1ff90 74 73 20 47 65 6e 65 72 61 6c 4e 61 6d 65 73 20  ts GeneralNames 
1ffa0 6f 6e 6c 79 20 61 73 20 61 72 67 75 6d 65 6e 74  only as argument
1ffb0 22 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e  "}}};YAHOO.lang.
1ffc0 65 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31  extend(KJUR.asn1
1ffd0 2e 78 35 30 39 2e 44 69 73 74 72 69 62 75 74 69  .x509.Distributi
1ffe0 6f 6e 50 6f 69 6e 74 4e 61 6d 65 2c 4b 4a 55 52  onPointName,KJUR
1fff0 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74  .asn1.ASN1Object
20000 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39  );KJUR.asn1.x509
20010 2e 44 69 73 74 72 69 62 75 74 69 6f 6e 50 6f 69  .DistributionPoi
20020 6e 74 3d 66 75 6e 63 74 69 6f 6e 28 62 29 7b 4b  nt=function(b){K
20030 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 44 69  JUR.asn1.x509.Di
20040 73 74 72 69 62 75 74 69 6f 6e 50 6f 69 6e 74 2e  stributionPoint.
20050 73 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74  superclass.const
20060 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73  ructor.call(this
20070 29 3b 76 61 72 20 61 3d 6e 75 6c 6c 3b 74 68 69  );var a=null;thi
20080 73 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78 3d  s.getEncodedHex=
20090 66 75 6e 63 74 69 6f 6e 28 29 7b 76 61 72 20 63  function(){var c
200a0 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44  =new KJUR.asn1.D
200b0 45 52 53 65 71 75 65 6e 63 65 28 29 3b 69 66 28  ERSequence();if(
200c0 74 68 69 73 2e 61 73 6e 31 44 50 21 3d 6e 75 6c  this.asn1DP!=nul
200d0 6c 29 7b 76 61 72 20 64 3d 6e 65 77 20 4b 4a 55  l){var d=new KJU
200e0 52 2e 61 73 6e 31 2e 44 45 52 54 61 67 67 65 64  R.asn1.DERTagged
200f0 4f 62 6a 65 63 74 28 7b 65 78 70 6c 69 63 69 74  Object({explicit
20100 3a 74 72 75 65 2c 74 61 67 3a 22 61 30 22 2c 6f  :true,tag:"a0",o
20110 62 6a 3a 74 68 69 73 2e 61 73 6e 31 44 50 7d 29  bj:this.asn1DP})
20120 3b 63 2e 61 70 70 65 6e 64 41 53 4e 31 4f 62 6a  ;c.appendASN1Obj
20130 65 63 74 28 64 29 7d 74 68 69 73 2e 68 54 4c 56  ect(d)}this.hTLV
20140 3d 63 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78  =c.getEncodedHex
20150 28 29 3b 72 65 74 75 72 6e 20 74 68 69 73 2e 68  ();return this.h
20160 54 4c 56 7d 3b 69 66 28 74 79 70 65 6f 66 20 62  TLV};if(typeof b
20170 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 69  !="undefined"){i
20180 66 28 74 79 70 65 6f 66 20 62 2e 64 70 6f 62 6a  f(typeof b.dpobj
20190 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74  !="undefined"){t
201a0 68 69 73 2e 61 73 6e 31 44 50 3d 62 2e 64 70 6f  his.asn1DP=b.dpo
201b0 62 6a 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67  bj}}};YAHOO.lang
201c0 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e  .extend(KJUR.asn
201d0 31 2e 78 35 30 39 2e 44 69 73 74 72 69 62 75 74  1.x509.Distribut
201e0 69 6f 6e 50 6f 69 6e 74 2c 4b 4a 55 52 2e 61 73  ionPoint,KJUR.as
201f0 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74 29 3b 4b  n1.ASN1Object);K
20200 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 4f 49  JUR.asn1.x509.OI
20210 44 3d 6e 65 77 20 66 75 6e 63 74 69 6f 6e 28 61  D=new function(a
20220 29 7b 74 68 69 73 2e 61 74 79 70 65 32 6f 69 64  ){this.atype2oid
20230 4c 69 73 74 3d 7b 43 3a 22 32 2e 35 2e 34 2e 36  List={C:"2.5.4.6
20240 22 2c 4f 3a 22 32 2e 35 2e 34 2e 31 30 22 2c 4f  ",O:"2.5.4.10",O
20250 55 3a 22 32 2e 35 2e 34 2e 31 31 22 2c 53 54 3a  U:"2.5.4.11",ST:
20260 22 32 2e 35 2e 34 2e 38 22 2c 4c 3a 22 32 2e 35  "2.5.4.8",L:"2.5
20270 2e 34 2e 37 22 2c 43 4e 3a 22 32 2e 35 2e 34 2e  .4.7",CN:"2.5.4.
20280 33 22 2c 44 4e 3a 22 32 2e 35 2e 34 2e 34 39 22  3",DN:"2.5.4.49"
20290 2c 44 43 3a 22 30 2e 39 2e 32 33 34 32 2e 31 39  ,DC:"0.9.2342.19
202a0 32 30 30 33 30 30 2e 31 30 30 2e 31 2e 32 35 22  200300.100.1.25"
202b0 2c 7d 3b 74 68 69 73 2e 6e 61 6d 65 32 6f 69 64  ,};this.name2oid
202c0 4c 69 73 74 3d 7b 73 68 61 31 3a 22 31 2e 33 2e  List={sha1:"1.3.
202d0 31 34 2e 33 2e 32 2e 32 36 22 2c 73 68 61 32 35  14.3.2.26",sha25
202e0 36 3a 22 32 2e 31 36 2e 38 34 30 2e 31 2e 31 30  6:"2.16.840.1.10
202f0 31 2e 33 2e 34 2e 32 2e 31 22 2c 73 68 61 33 38  1.3.4.2.1",sha38
20300 34 3a 22 32 2e 31 36 2e 38 34 30 2e 31 2e 31 30  4:"2.16.840.1.10
20310 31 2e 33 2e 34 2e 32 2e 32 22 2c 73 68 61 35 31  1.3.4.2.2",sha51
20320 32 3a 22 32 2e 31 36 2e 38 34 30 2e 31 2e 31 30  2:"2.16.840.1.10
20330 31 2e 33 2e 34 2e 32 2e 33 22 2c 73 68 61 32 32  1.3.4.2.3",sha22
20340 34 3a 22 32 2e 31 36 2e 38 34 30 2e 31 2e 31 30  4:"2.16.840.1.10
20350 31 2e 33 2e 34 2e 32 2e 34 22 2c 6d 64 35 3a 22  1.3.4.2.4",md5:"
20360 31 2e 32 2e 38 34 30 2e 31 31 33 35 34 39 2e 32  1.2.840.113549.2
20370 2e 35 22 2c 6d 64 32 3a 22 31 2e 33 2e 31 34 2e  .5",md2:"1.3.14.
20380 37 2e 32 2e 32 2e 31 22 2c 72 69 70 65 6d 64 31  7.2.2.1",ripemd1
20390 36 30 3a 22 31 2e 33 2e 33 36 2e 33 2e 32 2e 31  60:"1.3.36.3.2.1
203a0 22 2c 4d 44 32 77 69 74 68 52 53 41 3a 22 31 2e  ",MD2withRSA:"1.
203b0 32 2e 38 34 30 2e 31 31 33 35 34 39 2e 31 2e 31  2.840.113549.1.1
203c0 2e 32 22 2c 4d 44 34 77 69 74 68 52 53 41 3a 22  .2",MD4withRSA:"
203d0 31 2e 32 2e 38 34 30 2e 31 31 33 35 34 39 2e 31  1.2.840.113549.1
203e0 2e 31 2e 33 22 2c 4d 44 35 77 69 74 68 52 53 41  .1.3",MD5withRSA
203f0 3a 22 31 2e 32 2e 38 34 30 2e 31 31 33 35 34 39  :"1.2.840.113549
20400 2e 31 2e 31 2e 34 22 2c 53 48 41 31 77 69 74 68  .1.1.4",SHA1with
20410 52 53 41 3a 22 31 2e 32 2e 38 34 30 2e 31 31 33  RSA:"1.2.840.113
20420 35 34 39 2e 31 2e 31 2e 35 22 2c 53 48 41 32 32  549.1.1.5",SHA22
20430 34 77 69 74 68 52 53 41 3a 22 31 2e 32 2e 38 34  4withRSA:"1.2.84
20440 30 2e 31 31 33 35 34 39 2e 31 2e 31 2e 31 34 22  0.113549.1.1.14"
20450 2c 53 48 41 32 35 36 77 69 74 68 52 53 41 3a 22  ,SHA256withRSA:"
20460 31 2e 32 2e 38 34 30 2e 31 31 33 35 34 39 2e 31  1.2.840.113549.1
20470 2e 31 2e 31 31 22 2c 53 48 41 33 38 34 77 69 74  .1.11",SHA384wit
20480 68 52 53 41 3a 22 31 2e 32 2e 38 34 30 2e 31 31  hRSA:"1.2.840.11
20490 33 35 34 39 2e 31 2e 31 2e 31 32 22 2c 53 48 41  3549.1.1.12",SHA
204a0 35 31 32 77 69 74 68 52 53 41 3a 22 31 2e 32 2e  512withRSA:"1.2.
204b0 38 34 30 2e 31 31 33 35 34 39 2e 31 2e 31 2e 31  840.113549.1.1.1
204c0 33 22 2c 53 48 41 31 77 69 74 68 45 43 44 53 41  3",SHA1withECDSA
204d0 3a 22 31 2e 32 2e 38 34 30 2e 31 30 30 34 35 2e  :"1.2.840.10045.
204e0 34 2e 31 22 2c 53 48 41 32 32 34 77 69 74 68 45  4.1",SHA224withE
204f0 43 44 53 41 3a 22 31 2e 32 2e 38 34 30 2e 31 30  CDSA:"1.2.840.10
20500 30 34 35 2e 34 2e 33 2e 31 22 2c 53 48 41 32 35  045.4.3.1",SHA25
20510 36 77 69 74 68 45 43 44 53 41 3a 22 31 2e 32 2e  6withECDSA:"1.2.
20520 38 34 30 2e 31 30 30 34 35 2e 34 2e 33 2e 32 22  840.10045.4.3.2"
20530 2c 53 48 41 33 38 34 77 69 74 68 45 43 44 53 41  ,SHA384withECDSA
20540 3a 22 31 2e 32 2e 38 34 30 2e 31 30 30 34 35 2e  :"1.2.840.10045.
20550 34 2e 33 2e 33 22 2c 53 48 41 35 31 32 77 69 74  4.3.3",SHA512wit
20560 68 45 43 44 53 41 3a 22 31 2e 32 2e 38 34 30 2e  hECDSA:"1.2.840.
20570 31 30 30 34 35 2e 34 2e 33 2e 34 22 2c 64 73 61  10045.4.3.4",dsa
20580 3a 22 31 2e 32 2e 38 34 30 2e 31 30 30 34 30 2e  :"1.2.840.10040.
20590 34 2e 31 22 2c 53 48 41 31 77 69 74 68 44 53 41  4.1",SHA1withDSA
205a0 3a 22 31 2e 32 2e 38 34 30 2e 31 30 30 34 30 2e  :"1.2.840.10040.
205b0 34 2e 33 22 2c 53 48 41 32 32 34 77 69 74 68 44  4.3",SHA224withD
205c0 53 41 3a 22 32 2e 31 36 2e 38 34 30 2e 31 2e 31  SA:"2.16.840.1.1
205d0 30 31 2e 33 2e 34 2e 33 2e 31 22 2c 53 48 41 32  01.3.4.3.1",SHA2
205e0 35 36 77 69 74 68 44 53 41 3a 22 32 2e 31 36 2e  56withDSA:"2.16.
205f0 38 34 30 2e 31 2e 31 30 31 2e 33 2e 34 2e 33 2e  840.1.101.3.4.3.
20600 32 22 2c 72 73 61 45 6e 63 72 79 70 74 69 6f 6e  2",rsaEncryption
20610 3a 22 31 2e 32 2e 38 34 30 2e 31 31 33 35 34 39  :"1.2.840.113549
20620 2e 31 2e 31 2e 31 22 2c 63 6f 75 6e 74 72 79 4e  .1.1.1",countryN
20630 61 6d 65 3a 22 32 2e 35 2e 34 2e 36 22 2c 6f 72  ame:"2.5.4.6",or
20640 67 61 6e 69 7a 61 74 69 6f 6e 3a 22 32 2e 35 2e  ganization:"2.5.
20650 34 2e 31 30 22 2c 6f 72 67 61 6e 69 7a 61 74 69  4.10",organizati
20660 6f 6e 61 6c 55 6e 69 74 3a 22 32 2e 35 2e 34 2e  onalUnit:"2.5.4.
20670 31 31 22 2c 73 74 61 74 65 4f 72 50 72 6f 76 69  11",stateOrProvi
20680 6e 63 65 4e 61 6d 65 3a 22 32 2e 35 2e 34 2e 38  nceName:"2.5.4.8
20690 22 2c 6c 6f 63 61 6c 69 74 79 3a 22 32 2e 35 2e  ",locality:"2.5.
206a0 34 2e 37 22 2c 63 6f 6d 6d 6f 6e 4e 61 6d 65 3a  4.7",commonName:
206b0 22 32 2e 35 2e 34 2e 33 22 2c 73 75 62 6a 65 63  "2.5.4.3",subjec
206c0 74 4b 65 79 49 64 65 6e 74 69 66 69 65 72 3a 22  tKeyIdentifier:"
206d0 32 2e 35 2e 32 39 2e 31 34 22 2c 6b 65 79 55 73  2.5.29.14",keyUs
206e0 61 67 65 3a 22 32 2e 35 2e 32 39 2e 31 35 22 2c  age:"2.5.29.15",
206f0 73 75 62 6a 65 63 74 41 6c 74 4e 61 6d 65 3a 22  subjectAltName:"
20700 32 2e 35 2e 32 39 2e 31 37 22 2c 62 61 73 69 63  2.5.29.17",basic
20710 43 6f 6e 73 74 72 61 69 6e 74 73 3a 22 32 2e 35  Constraints:"2.5
20720 2e 32 39 2e 31 39 22 2c 6e 61 6d 65 43 6f 6e 73  .29.19",nameCons
20730 74 72 61 69 6e 74 73 3a 22 32 2e 35 2e 32 39 2e  traints:"2.5.29.
20740 33 30 22 2c 63 52 4c 44 69 73 74 72 69 62 75 74  30",cRLDistribut
20750 69 6f 6e 50 6f 69 6e 74 73 3a 22 32 2e 35 2e 32  ionPoints:"2.5.2
20760 39 2e 33 31 22 2c 63 65 72 74 69 66 69 63 61 74  9.31",certificat
20770 65 50 6f 6c 69 63 69 65 73 3a 22 32 2e 35 2e 32  ePolicies:"2.5.2
20780 39 2e 33 32 22 2c 61 75 74 68 6f 72 69 74 79 4b  9.32",authorityK
20790 65 79 49 64 65 6e 74 69 66 69 65 72 3a 22 32 2e  eyIdentifier:"2.
207a0 35 2e 32 39 2e 33 35 22 2c 70 6f 6c 69 63 79 43  5.29.35",policyC
207b0 6f 6e 73 74 72 61 69 6e 74 73 3a 22 32 2e 35 2e  onstraints:"2.5.
207c0 32 39 2e 33 36 22 2c 65 78 74 4b 65 79 55 73 61  29.36",extKeyUsa
207d0 67 65 3a 22 32 2e 35 2e 32 39 2e 33 37 22 2c 61  ge:"2.5.29.37",a
207e0 75 74 68 6f 72 69 74 79 49 6e 66 6f 41 63 63 65  uthorityInfoAcce
207f0 73 73 3a 22 31 2e 33 2e 36 2e 31 2e 35 2e 35 2e  ss:"1.3.6.1.5.5.
20800 37 2e 31 2e 31 22 2c 61 6e 79 45 78 74 65 6e 64  7.1.1",anyExtend
20810 65 64 4b 65 79 55 73 61 67 65 3a 22 32 2e 35 2e  edKeyUsage:"2.5.
20820 32 39 2e 33 37 2e 30 22 2c 73 65 72 76 65 72 41  29.37.0",serverA
20830 75 74 68 3a 22 31 2e 33 2e 36 2e 31 2e 35 2e 35  uth:"1.3.6.1.5.5
20840 2e 37 2e 33 2e 31 22 2c 63 6c 69 65 6e 74 41 75  .7.3.1",clientAu
20850 74 68 3a 22 31 2e 33 2e 36 2e 31 2e 35 2e 35 2e  th:"1.3.6.1.5.5.
20860 37 2e 33 2e 32 22 2c 63 6f 64 65 53 69 67 6e 69  7.3.2",codeSigni
20870 6e 67 3a 22 31 2e 33 2e 36 2e 31 2e 35 2e 35 2e  ng:"1.3.6.1.5.5.
20880 37 2e 33 2e 33 22 2c 65 6d 61 69 6c 50 72 6f 74  7.3.3",emailProt
20890 65 63 74 69 6f 6e 3a 22 31 2e 33 2e 36 2e 31 2e  ection:"1.3.6.1.
208a0 35 2e 35 2e 37 2e 33 2e 34 22 2c 74 69 6d 65 53  5.5.7.3.4",timeS
208b0 74 61 6d 70 69 6e 67 3a 22 31 2e 33 2e 36 2e 31  tamping:"1.3.6.1
208c0 2e 35 2e 35 2e 37 2e 33 2e 38 22 2c 6f 63 73 70  .5.5.7.3.8",ocsp
208d0 53 69 67 6e 69 6e 67 3a 22 31 2e 33 2e 36 2e 31  Signing:"1.3.6.1
208e0 2e 35 2e 35 2e 37 2e 33 2e 39 22 2c 65 63 50 75  .5.5.7.3.9",ecPu
208f0 62 6c 69 63 4b 65 79 3a 22 31 2e 32 2e 38 34 30  blicKey:"1.2.840
20900 2e 31 30 30 34 35 2e 32 2e 31 22 2c 73 65 63 70  .10045.2.1",secp
20910 32 35 36 72 31 3a 22 31 2e 32 2e 38 34 30 2e 31  256r1:"1.2.840.1
20920 30 30 34 35 2e 33 2e 31 2e 37 22 2c 73 65 63 70  0045.3.1.7",secp
20930 32 35 36 6b 31 3a 22 31 2e 33 2e 31 33 32 2e 30  256k1:"1.3.132.0
20940 2e 31 30 22 2c 73 65 63 70 33 38 34 72 31 3a 22  .10",secp384r1:"
20950 31 2e 33 2e 31 33 32 2e 30 2e 33 34 22 2c 70 6b  1.3.132.0.34",pk
20960 63 73 35 50 42 45 53 32 3a 22 31 2e 32 2e 38 34  cs5PBES2:"1.2.84
20970 30 2e 31 31 33 35 34 39 2e 31 2e 35 2e 31 33 22  0.113549.1.5.13"
20980 2c 70 6b 63 73 35 50 42 4b 44 46 32 3a 22 31 2e  ,pkcs5PBKDF2:"1.
20990 32 2e 38 34 30 2e 31 31 33 35 34 39 2e 31 2e 35  2.840.113549.1.5
209a0 2e 31 32 22 2c 22 64 65 73 2d 45 44 45 33 2d 43  .12","des-EDE3-C
209b0 42 43 22 3a 22 31 2e 32 2e 38 34 30 2e 31 31 33  BC":"1.2.840.113
209c0 35 34 39 2e 33 2e 37 22 2c 64 61 74 61 3a 22 31  549.3.7",data:"1
209d0 2e 32 2e 38 34 30 2e 31 31 33 35 34 39 2e 31 2e  .2.840.113549.1.
209e0 37 2e 31 22 2c 22 73 69 67 6e 65 64 2d 64 61 74  7.1","signed-dat
209f0 61 22 3a 22 31 2e 32 2e 38 34 30 2e 31 31 33 35  a":"1.2.840.1135
20a00 34 39 2e 31 2e 37 2e 32 22 2c 22 65 6e 76 65 6c  49.1.7.2","envel
20a10 6f 70 65 64 2d 64 61 74 61 22 3a 22 31 2e 32 2e  oped-data":"1.2.
20a20 38 34 30 2e 31 31 33 35 34 39 2e 31 2e 37 2e 33  840.113549.1.7.3
20a30 22 2c 22 64 69 67 65 73 74 65 64 2d 64 61 74 61  ","digested-data
20a40 22 3a 22 31 2e 32 2e 38 34 30 2e 31 31 33 35 34  ":"1.2.840.11354
20a50 39 2e 31 2e 37 2e 35 22 2c 22 65 6e 63 72 79 70  9.1.7.5","encryp
20a60 74 65 64 2d 64 61 74 61 22 3a 22 31 2e 32 2e 38  ted-data":"1.2.8
20a70 34 30 2e 31 31 33 35 34 39 2e 31 2e 37 2e 36 22  40.113549.1.7.6"
20a80 2c 22 61 75 74 68 65 6e 74 69 63 61 74 65 64 2d  ,"authenticated-
20a90 64 61 74 61 22 3a 22 31 2e 32 2e 38 34 30 2e 31  data":"1.2.840.1
20aa0 31 33 35 34 39 2e 31 2e 39 2e 31 36 2e 31 2e 32  13549.1.9.16.1.2
20ab0 22 2c 74 73 74 69 6e 66 6f 3a 22 31 2e 32 2e 38  ",tstinfo:"1.2.8
20ac0 34 30 2e 31 31 33 35 34 39 2e 31 2e 39 2e 31 36  40.113549.1.9.16
20ad0 2e 31 2e 34 22 2c 7d 3b 74 68 69 73 2e 6f 62 6a  .1.4",};this.obj
20ae0 43 61 63 68 65 3d 7b 7d 3b 74 68 69 73 2e 6e 61  Cache={};this.na
20af0 6d 65 32 6f 62 6a 3d 66 75 6e 63 74 69 6f 6e 28  me2obj=function(
20b00 62 29 7b 69 66 28 74 79 70 65 6f 66 20 74 68 69  b){if(typeof thi
20b10 73 2e 6f 62 6a 43 61 63 68 65 5b 62 5d 21 3d 22  s.objCache[b]!="
20b20 75 6e 64 65 66 69 6e 65 64 22 29 7b 72 65 74 75  undefined"){retu
20b30 72 6e 20 74 68 69 73 2e 6f 62 6a 43 61 63 68 65  rn this.objCache
20b40 5b 62 5d 7d 69 66 28 74 79 70 65 6f 66 20 74 68  [b]}if(typeof th
20b50 69 73 2e 6e 61 6d 65 32 6f 69 64 4c 69 73 74 5b  is.name2oidList[
20b60 62 5d 3d 3d 22 75 6e 64 65 66 69 6e 65 64 22 29  b]=="undefined")
20b70 7b 74 68 72 6f 77 22 4e 61 6d 65 20 6f 66 20 4f  {throw"Name of O
20b80 62 6a 65 63 74 49 64 65 6e 74 69 66 69 65 72 20  bjectIdentifier 
20b90 6e 6f 74 20 64 65 66 69 6e 65 64 3a 20 22 2b 62  not defined: "+b
20ba0 7d 76 61 72 20 63 3d 74 68 69 73 2e 6e 61 6d 65  }var c=this.name
20bb0 32 6f 69 64 4c 69 73 74 5b 62 5d 3b 76 61 72 20  2oidList[b];var 
20bc0 64 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e  d=new KJUR.asn1.
20bd0 44 45 52 4f 62 6a 65 63 74 49 64 65 6e 74 69 66  DERObjectIdentif
20be0 69 65 72 28 7b 6f 69 64 3a 63 7d 29 3b 74 68 69  ier({oid:c});thi
20bf0 73 2e 6f 62 6a 43 61 63 68 65 5b 62 5d 3d 64 3b  s.objCache[b]=d;
20c00 72 65 74 75 72 6e 20 64 7d 3b 74 68 69 73 2e 61  return d};this.a
20c10 74 79 70 65 32 6f 62 6a 3d 66 75 6e 63 74 69 6f  type2obj=functio
20c20 6e 28 62 29 7b 69 66 28 74 79 70 65 6f 66 20 74  n(b){if(typeof t
20c30 68 69 73 2e 6f 62 6a 43 61 63 68 65 5b 62 5d 21  his.objCache[b]!
20c40 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 72 65  ="undefined"){re
20c50 74 75 72 6e 20 74 68 69 73 2e 6f 62 6a 43 61 63  turn this.objCac
20c60 68 65 5b 62 5d 7d 69 66 28 74 79 70 65 6f 66 20  he[b]}if(typeof 
20c70 74 68 69 73 2e 61 74 79 70 65 32 6f 69 64 4c 69  this.atype2oidLi
20c80 73 74 5b 62 5d 3d 3d 22 75 6e 64 65 66 69 6e 65  st[b]=="undefine
20c90 64 22 29 7b 74 68 72 6f 77 22 41 74 74 72 69 62  d"){throw"Attrib
20ca0 75 74 65 54 79 70 65 20 6e 61 6d 65 20 75 6e 64  uteType name und
20cb0 65 66 69 6e 65 64 3a 20 22 2b 62 7d 76 61 72 20  efined: "+b}var 
20cc0 63 3d 74 68 69 73 2e 61 74 79 70 65 32 6f 69 64  c=this.atype2oid
20cd0 4c 69 73 74 5b 62 5d 3b 76 61 72 20 64 3d 6e 65  List[b];var d=ne
20ce0 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 4f  w KJUR.asn1.DERO
20cf0 62 6a 65 63 74 49 64 65 6e 74 69 66 69 65 72 28  bjectIdentifier(
20d00 7b 6f 69 64 3a 63 7d 29 3b 74 68 69 73 2e 6f 62  {oid:c});this.ob
20d10 6a 43 61 63 68 65 5b 62 5d 3d 64 3b 72 65 74 75  jCache[b]=d;retu
20d20 72 6e 20 64 7d 7d 3b 4b 4a 55 52 2e 61 73 6e 31  rn d}};KJUR.asn1
20d30 2e 78 35 30 39 2e 4f 49 44 2e 6f 69 64 32 6e 61  .x509.OID.oid2na
20d40 6d 65 3d 66 75 6e 63 74 69 6f 6e 28 62 29 7b 76  me=function(b){v
20d50 61 72 20 63 3d 4b 4a 55 52 2e 61 73 6e 31 2e 78  ar c=KJUR.asn1.x
20d60 35 30 39 2e 4f 49 44 2e 6e 61 6d 65 32 6f 69 64  509.OID.name2oid
20d70 4c 69 73 74 3b 66 6f 72 28 76 61 72 20 61 20 69  List;for(var a i
20d80 6e 20 63 29 7b 69 66 28 63 5b 61 5d 3d 3d 62 29  n c){if(c[a]==b)
20d90 7b 72 65 74 75 72 6e 20 61 7d 7d 72 65 74 75 72  {return a}}retur
20da0 6e 22 22 7d 3b 4b 4a 55 52 2e 61 73 6e 31 2e 78  n""};KJUR.asn1.x
20db0 35 30 39 2e 4f 49 44 2e 6e 61 6d 65 32 6f 69 64  509.OID.name2oid
20dc0 3d 66 75 6e 63 74 69 6f 6e 28 61 29 7b 76 61 72  =function(a){var
20dd0 20 62 3d 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30   b=KJUR.asn1.x50
20de0 39 2e 4f 49 44 2e 6e 61 6d 65 32 6f 69 64 4c 69  9.OID.name2oidLi
20df0 73 74 3b 69 66 28 62 5b 61 5d 3d 3d 3d 75 6e 64  st;if(b[a]===und
20e00 65 66 69 6e 65 64 29 7b 72 65 74 75 72 6e 22 22  efined){return""
20e10 7d 72 65 74 75 72 6e 20 62 5b 61 5d 7d 3b 4b 4a  }return b[a]};KJ
20e20 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 58 35 30  UR.asn1.x509.X50
20e30 39 55 74 69 6c 3d 6e 65 77 20 66 75 6e 63 74 69  9Util=new functi
20e40 6f 6e 28 29 7b 74 68 69 73 2e 67 65 74 50 4b 43  on(){this.getPKC
20e50 53 38 50 75 62 4b 65 79 50 45 4d 66 72 6f 6d 52  S8PubKeyPEMfromR
20e60 53 41 4b 65 79 3d 66 75 6e 63 74 69 6f 6e 28 69  SAKey=function(i
20e70 29 7b 76 61 72 20 68 3d 6e 75 6c 6c 3b 76 61 72  ){var h=null;var
20e80 20 66 3d 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e   f=KJUR.asn1.ASN
20e90 31 55 74 69 6c 2e 62 69 67 49 6e 74 54 6f 4d 69  1Util.bigIntToMi
20ea0 6e 54 77 6f 73 43 6f 6d 70 6c 65 6d 65 6e 74 73  nTwosComplements
20eb0 48 65 78 28 69 2e 6e 29 3b 76 61 72 20 6a 3d 4b  Hex(i.n);var j=K
20ec0 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 55 74 69  JUR.asn1.ASN1Uti
20ed0 6c 2e 69 6e 74 65 67 65 72 54 6f 42 79 74 65 48  l.integerToByteH
20ee0 65 78 28 69 2e 65 29 3b 76 61 72 20 61 3d 6e 65  ex(i.e);var a=ne
20ef0 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 49  w KJUR.asn1.DERI
20f00 6e 74 65 67 65 72 28 7b 68 65 78 3a 66 7d 29 3b  nteger({hex:f});
20f10 76 61 72 20 67 3d 6e 65 77 20 4b 4a 55 52 2e 61  var g=new KJUR.a
20f20 73 6e 31 2e 44 45 52 49 6e 74 65 67 65 72 28 7b  sn1.DERInteger({
20f30 68 65 78 3a 6a 7d 29 3b 76 61 72 20 6c 3d 6e 65  hex:j});var l=ne
20f40 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 53  w KJUR.asn1.DERS
20f50 65 71 75 65 6e 63 65 28 7b 61 72 72 61 79 3a 5b  equence({array:[
20f60 61 2c 67 5d 7d 29 3b 76 61 72 20 63 3d 6c 2e 67  a,g]});var c=l.g
20f70 65 74 45 6e 63 6f 64 65 64 48 65 78 28 29 3b 76  etEncodedHex();v
20f80 61 72 20 64 3d 6e 65 77 20 4b 4a 55 52 2e 61 73  ar d=new KJUR.as
20f90 6e 31 2e 78 35 30 39 2e 41 6c 67 6f 72 69 74 68  n1.x509.Algorith
20fa0 6d 49 64 65 6e 74 69 66 69 65 72 28 7b 6e 61 6d  mIdentifier({nam
20fb0 65 3a 22 72 73 61 45 6e 63 72 79 70 74 69 6f 6e  e:"rsaEncryption
20fc0 22 7d 29 3b 76 61 72 20 62 3d 6e 65 77 20 4b 4a  "});var b=new KJ
20fd0 55 52 2e 61 73 6e 31 2e 44 45 52 42 69 74 53 74  UR.asn1.DERBitSt
20fe0 72 69 6e 67 28 7b 68 65 78 3a 22 30 30 22 2b 63  ring({hex:"00"+c
20ff0 7d 29 3b 76 61 72 20 6b 3d 6e 65 77 20 4b 4a 55  });var k=new KJU
21000 52 2e 61 73 6e 31 2e 44 45 52 53 65 71 75 65 6e  R.asn1.DERSequen
21010 63 65 28 7b 61 72 72 61 79 3a 5b 64 2c 62 5d 7d  ce({array:[d,b]}
21020 29 3b 76 61 72 20 65 3d 6b 2e 67 65 74 45 6e 63  );var e=k.getEnc
21030 6f 64 65 64 48 65 78 28 29 3b 76 61 72 20 68 3d  odedHex();var h=
21040 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 55 74  KJUR.asn1.ASN1Ut
21050 69 6c 2e 67 65 74 50 45 4d 53 74 72 69 6e 67 46  il.getPEMStringF
21060 72 6f 6d 48 65 78 28 65 2c 22 50 55 42 4c 49 43  romHex(e,"PUBLIC
21070 20 4b 45 59 22 29 3b 72 65 74 75 72 6e 20 68 7d   KEY");return h}
21080 7d 3b 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39  };KJUR.asn1.x509
21090 2e 58 35 30 39 55 74 69 6c 2e 6e 65 77 43 65 72  .X509Util.newCer
210a0 74 50 45 4d 3d 66 75 6e 63 74 69 6f 6e 28 66 29  tPEM=function(f)
210b0 7b 76 61 72 20 63 3d 4b 4a 55 52 2e 61 73 6e 31  {var c=KJUR.asn1
210c0 2e 78 35 30 39 3b 76 61 72 20 65 3d 6e 65 77 20  .x509;var e=new 
210d0 63 2e 54 42 53 43 65 72 74 69 66 69 63 61 74 65  c.TBSCertificate
210e0 28 29 3b 69 66 28 66 2e 73 65 72 69 61 6c 21 3d  ();if(f.serial!=
210f0 3d 75 6e 64 65 66 69 6e 65 64 29 7b 65 2e 73 65  =undefined){e.se
21100 74 53 65 72 69 61 6c 4e 75 6d 62 65 72 42 79 50  tSerialNumberByP
21110 61 72 61 6d 28 66 2e 73 65 72 69 61 6c 29 7d 65  aram(f.serial)}e
21120 6c 73 65 7b 74 68 72 6f 77 22 73 65 72 69 61 6c  lse{throw"serial
21130 20 6e 75 6d 62 65 72 20 75 6e 64 65 66 69 6e 65   number undefine
21140 64 2e 22 7d 69 66 28 74 79 70 65 6f 66 20 66 2e  d."}if(typeof f.
21150 73 69 67 61 6c 67 2e 6e 61 6d 65 3d 3d 22 73 74  sigalg.name=="st
21160 72 69 6e 67 22 29 7b 65 2e 73 65 74 53 69 67 6e  ring"){e.setSign
21170 61 74 75 72 65 41 6c 67 42 79 50 61 72 61 6d 28  atureAlgByParam(
21180 66 2e 73 69 67 61 6c 67 29 7d 65 6c 73 65 7b 74  f.sigalg)}else{t
21190 68 72 6f 77 22 75 6e 70 72 6f 70 65 72 20 73 69  hrow"unproper si
211a0 67 6e 61 74 75 72 65 20 61 6c 67 6f 72 69 74 68  gnature algorith
211b0 6d 20 6e 61 6d 65 22 7d 69 66 28 66 2e 69 73 73  m name"}if(f.iss
211c0 75 65 72 21 3d 3d 75 6e 64 65 66 69 6e 65 64 29  uer!==undefined)
211d0 7b 65 2e 73 65 74 49 73 73 75 65 72 42 79 50 61  {e.setIssuerByPa
211e0 72 61 6d 28 66 2e 69 73 73 75 65 72 29 7d 65 6c  ram(f.issuer)}el
211f0 73 65 7b 74 68 72 6f 77 22 69 73 73 75 65 72 20  se{throw"issuer 
21200 6e 61 6d 65 20 75 6e 64 65 66 69 6e 65 64 2e 22  name undefined."
21210 7d 69 66 28 66 2e 6e 6f 74 62 65 66 6f 72 65 21  }if(f.notbefore!
21220 3d 3d 75 6e 64 65 66 69 6e 65 64 29 7b 65 2e 73  ==undefined){e.s
21230 65 74 4e 6f 74 42 65 66 6f 72 65 42 79 50 61 72  etNotBeforeByPar
21240 61 6d 28 66 2e 6e 6f 74 62 65 66 6f 72 65 29 7d  am(f.notbefore)}
21250 65 6c 73 65 7b 74 68 72 6f 77 22 6e 6f 74 62 65  else{throw"notbe
21260 66 6f 72 65 20 75 6e 64 65 66 69 6e 65 64 2e 22  fore undefined."
21270 7d 69 66 28 66 2e 6e 6f 74 61 66 74 65 72 21 3d  }if(f.notafter!=
21280 3d 75 6e 64 65 66 69 6e 65 64 29 7b 65 2e 73 65  =undefined){e.se
21290 74 4e 6f 74 41 66 74 65 72 42 79 50 61 72 61 6d  tNotAfterByParam
212a0 28 66 2e 6e 6f 74 61 66 74 65 72 29 7d 65 6c 73  (f.notafter)}els
212b0 65 7b 74 68 72 6f 77 22 6e 6f 74 61 66 74 65 72  e{throw"notafter
212c0 20 75 6e 64 65 66 69 6e 65 64 2e 22 7d 69 66 28   undefined."}if(
212d0 66 2e 73 75 62 6a 65 63 74 21 3d 3d 75 6e 64 65  f.subject!==unde
212e0 66 69 6e 65 64 29 7b 65 2e 73 65 74 53 75 62 6a  fined){e.setSubj
212f0 65 63 74 42 79 50 61 72 61 6d 28 66 2e 73 75 62  ectByParam(f.sub
21300 6a 65 63 74 29 7d 65 6c 73 65 7b 74 68 72 6f 77  ject)}else{throw
21310 22 73 75 62 6a 65 63 74 20 6e 61 6d 65 20 75 6e  "subject name un
21320 64 65 66 69 6e 65 64 2e 22 7d 69 66 28 66 2e 73  defined."}if(f.s
21330 62 6a 70 75 62 6b 65 79 21 3d 3d 75 6e 64 65 66  bjpubkey!==undef
21340 69 6e 65 64 29 7b 65 2e 73 65 74 53 75 62 6a 65  ined){e.setSubje
21350 63 74 50 75 62 6c 69 63 4b 65 79 42 79 47 65 74  ctPublicKeyByGet
21360 4b 65 79 28 66 2e 73 62 6a 70 75 62 6b 65 79 29  Key(f.sbjpubkey)
21370 7d 65 6c 73 65 7b 74 68 72 6f 77 22 73 75 62 6a  }else{throw"subj
21380 65 63 74 20 70 75 62 6c 69 63 20 6b 65 79 20 75  ect public key u
21390 6e 64 65 66 69 6e 65 64 2e 22 7d 69 66 28 66 2e  ndefined."}if(f.
213a0 65 78 74 21 3d 3d 75 6e 64 65 66 69 6e 65 64 26  ext!==undefined&
213b0 26 66 2e 65 78 74 2e 6c 65 6e 67 74 68 21 3d 3d  &f.ext.length!==
213c0 75 6e 64 65 66 69 6e 65 64 29 7b 66 6f 72 28 76  undefined){for(v
213d0 61 72 20 62 3d 30 3b 62 3c 66 2e 65 78 74 2e 6c  ar b=0;b<f.ext.l
213e0 65 6e 67 74 68 3b 62 2b 2b 29 7b 66 6f 72 28 6b  ength;b++){for(k
213f0 65 79 20 69 6e 20 66 2e 65 78 74 5b 62 5d 29 7b  ey in f.ext[b]){
21400 65 2e 61 70 70 65 6e 64 45 78 74 65 6e 73 69 6f  e.appendExtensio
21410 6e 42 79 4e 61 6d 65 28 6b 65 79 2c 66 2e 65 78  nByName(key,f.ex
21420 74 5b 62 5d 5b 6b 65 79 5d 29 7d 7d 7d 69 66 28  t[b][key])}}}if(
21430 66 2e 63 61 6b 65 79 3d 3d 3d 75 6e 64 65 66 69  f.cakey===undefi
21440 6e 65 64 26 26 66 2e 73 69 67 68 65 78 3d 3d 3d  ned&&f.sighex===
21450 75 6e 64 65 66 69 6e 65 64 29 7b 74 68 72 6f 77  undefined){throw
21460 22 70 61 72 61 6d 20 63 61 6b 65 79 20 61 6e 64  "param cakey and
21470 20 73 69 67 68 65 78 20 75 6e 64 65 66 69 6e 65   sighex undefine
21480 64 2e 22 7d 76 61 72 20 64 3d 6e 75 6c 6c 3b 76  d."}var d=null;v
21490 61 72 20 61 3d 6e 75 6c 6c 3b 69 66 28 66 2e 63  ar a=null;if(f.c
214a0 61 6b 65 79 29 7b 64 3d 4b 45 59 55 54 49 4c 2e  akey){d=KEYUTIL.
214b0 67 65 74 4b 65 79 2e 61 70 70 6c 79 28 6e 75 6c  getKey.apply(nul
214c0 6c 2c 66 2e 63 61 6b 65 79 29 3b 61 3d 6e 65 77  l,f.cakey);a=new
214d0 20 63 2e 43 65 72 74 69 66 69 63 61 74 65 28 7b   c.Certificate({
214e0 74 62 73 63 65 72 74 6f 62 6a 3a 65 2c 70 72 76  tbscertobj:e,prv
214f0 6b 65 79 6f 62 6a 3a 64 7d 29 3b 61 2e 73 69 67  keyobj:d});a.sig
21500 6e 28 29 7d 69 66 28 66 2e 73 69 67 68 65 78 29  n()}if(f.sighex)
21510 7b 61 3d 6e 65 77 20 63 2e 43 65 72 74 69 66 69  {a=new c.Certifi
21520 63 61 74 65 28 7b 74 62 73 63 65 72 74 6f 62 6a  cate({tbscertobj
21530 3a 65 7d 29 3b 61 2e 73 65 74 53 69 67 6e 61 74  :e});a.setSignat
21540 75 72 65 48 65 78 28 66 2e 73 69 67 68 65 78 29  ureHex(f.sighex)
21550 7d 72 65 74 75 72 6e 20 61 2e 67 65 74 50 45 4d  }return a.getPEM
21560 53 74 72 69 6e 67 28 29 7d 3b 0a 2f 2a 21 20 61  String()};./*! a
21570 73 6e 31 63 6d 73 2d 31 2e 30 2e 32 2e 6a 73 20  sn1cms-1.0.2.js 
21580 28 63 29 20 32 30 31 33 2d 32 30 31 34 20 4b 65  (c) 2013-2014 Ke
21590 6e 6a 69 20 55 72 75 73 68 69 6d 61 20 7c 20 6b  nji Urushima | k
215a0 6a 75 72 2e 67 69 74 68 75 62 2e 63 6f 6d 2f 6a  jur.github.com/j
215b0 73 72 73 61 73 69 67 6e 2f 6c 69 63 65 6e 73 65  srsasign/license
215c0 0a 20 2a 2f 0a 69 66 28 74 79 70 65 6f 66 20 4b  . */.if(typeof K
215d0 4a 55 52 3d 3d 22 75 6e 64 65 66 69 6e 65 64 22  JUR=="undefined"
215e0 7c 7c 21 4b 4a 55 52 29 7b 4b 4a 55 52 3d 7b 7d  ||!KJUR){KJUR={}
215f0 7d 69 66 28 74 79 70 65 6f 66 20 4b 4a 55 52 2e  }if(typeof KJUR.
21600 61 73 6e 31 3d 3d 22 75 6e 64 65 66 69 6e 65 64  asn1=="undefined
21610 22 7c 7c 21 4b 4a 55 52 2e 61 73 6e 31 29 7b 4b  "||!KJUR.asn1){K
21620 4a 55 52 2e 61 73 6e 31 3d 7b 7d 7d 69 66 28 74  JUR.asn1={}}if(t
21630 79 70 65 6f 66 20 4b 4a 55 52 2e 61 73 6e 31 2e  ypeof KJUR.asn1.
21640 63 6d 73 3d 3d 22 75 6e 64 65 66 69 6e 65 64 22  cms=="undefined"
21650 7c 7c 21 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73  ||!KJUR.asn1.cms
21660 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 3d  ){KJUR.asn1.cms=
21670 7b 7d 7d 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73  {}}KJUR.asn1.cms
21680 2e 41 74 74 72 69 62 75 74 65 3d 66 75 6e 63 74  .Attribute=funct
21690 69 6f 6e 28 62 29 7b 4b 4a 55 52 2e 61 73 6e 31  ion(b){KJUR.asn1
216a0 2e 63 6d 73 2e 41 74 74 72 69 62 75 74 65 2e 73  .cms.Attribute.s
216b0 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72  uperclass.constr
216c0 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29  uctor.call(this)
216d0 3b 76 61 72 20 61 3d 5b 5d 3b 74 68 69 73 2e 67  ;var a=[];this.g
216e0 65 74 45 6e 63 6f 64 65 64 48 65 78 3d 66 75 6e  etEncodedHex=fun
216f0 63 74 69 6f 6e 28 29 7b 76 61 72 20 66 2c 65 2c  ction(){var f,e,
21700 63 3b 66 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e  c;f=new KJUR.asn
21710 31 2e 44 45 52 4f 62 6a 65 63 74 49 64 65 6e 74  1.DERObjectIdent
21720 69 66 69 65 72 28 7b 6f 69 64 3a 74 68 69 73 2e  ifier({oid:this.
21730 61 74 74 72 54 79 70 65 4f 69 64 7d 29 3b 65 3d  attrTypeOid});e=
21740 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  new KJUR.asn1.DE
21750 52 53 65 74 28 7b 61 72 72 61 79 3a 74 68 69 73  RSet({array:this
21760 2e 76 61 6c 75 65 4c 69 73 74 7d 29 3b 74 72 79  .valueList});try
21770 7b 65 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78  {e.getEncodedHex
21780 28 29 7d 63 61 74 63 68 28 64 29 7b 74 68 72 6f  ()}catch(d){thro
21790 77 22 66 61 69 6c 20 76 61 6c 75 65 53 65 74 2e  w"fail valueSet.
217a0 67 65 74 45 6e 63 6f 64 65 64 48 65 78 20 69 6e  getEncodedHex in
217b0 20 41 74 74 72 69 62 75 74 65 28 31 29 2f 22 2b   Attribute(1)/"+
217c0 64 7d 63 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e  d}c=new KJUR.asn
217d0 31 2e 44 45 52 53 65 71 75 65 6e 63 65 28 7b 61  1.DERSequence({a
217e0 72 72 61 79 3a 5b 66 2c 65 5d 7d 29 3b 74 72 79  rray:[f,e]});try
217f0 7b 74 68 69 73 2e 68 54 4c 56 3d 63 2e 67 65 74  {this.hTLV=c.get
21800 45 6e 63 6f 64 65 64 48 65 78 28 29 7d 63 61 74  EncodedHex()}cat
21810 63 68 28 64 29 7b 74 68 72 6f 77 22 66 61 69 6c  ch(d){throw"fail
21820 65 64 20 73 65 71 2e 67 65 74 45 6e 63 6f 64 65  ed seq.getEncode
21830 64 48 65 78 20 69 6e 20 41 74 74 72 69 62 75 74  dHex in Attribut
21840 65 28 32 29 2f 22 2b 64 7d 72 65 74 75 72 6e 20  e(2)/"+d}return 
21850 74 68 69 73 2e 68 54 4c 56 7d 7d 3b 59 41 48 4f  this.hTLV}};YAHO
21860 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a  O.lang.extend(KJ
21870 55 52 2e 61 73 6e 31 2e 63 6d 73 2e 41 74 74 72  UR.asn1.cms.Attr
21880 69 62 75 74 65 2c 4b 4a 55 52 2e 61 73 6e 31 2e  ibute,KJUR.asn1.
21890 41 53 4e 31 4f 62 6a 65 63 74 29 3b 4b 4a 55 52  ASN1Object);KJUR
218a0 2e 61 73 6e 31 2e 63 6d 73 2e 43 6f 6e 74 65 6e  .asn1.cms.Conten
218b0 74 54 79 70 65 3d 66 75 6e 63 74 69 6f 6e 28 62  tType=function(b
218c0 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 2e  ){KJUR.asn1.cms.
218d0 43 6f 6e 74 65 6e 74 54 79 70 65 2e 73 75 70 65  ContentType.supe
218e0 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63 74  rclass.construct
218f0 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29 3b 74 68  or.call(this);th
21900 69 73 2e 61 74 74 72 54 79 70 65 4f 69 64 3d 22  is.attrTypeOid="
21910 31 2e 32 2e 38 34 30 2e 31 31 33 35 34 39 2e 31  1.2.840.113549.1
21920 2e 39 2e 33 22 3b 76 61 72 20 61 3d 6e 75 6c 6c  .9.3";var a=null
21930 3b 69 66 28 74 79 70 65 6f 66 20 62 21 3d 22 75  ;if(typeof b!="u
21940 6e 64 65 66 69 6e 65 64 22 29 7b 76 61 72 20 61  ndefined"){var a
21950 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44  =new KJUR.asn1.D
21960 45 52 4f 62 6a 65 63 74 49 64 65 6e 74 69 66 69  ERObjectIdentifi
21970 65 72 28 62 29 3b 74 68 69 73 2e 76 61 6c 75 65  er(b);this.value
21980 4c 69 73 74 3d 5b 61 5d 7d 7d 3b 59 41 48 4f 4f  List=[a]}};YAHOO
21990 2e 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55  .lang.extend(KJU
219a0 52 2e 61 73 6e 31 2e 63 6d 73 2e 43 6f 6e 74 65  R.asn1.cms.Conte
219b0 6e 74 54 79 70 65 2c 4b 4a 55 52 2e 61 73 6e 31  ntType,KJUR.asn1
219c0 2e 63 6d 73 2e 41 74 74 72 69 62 75 74 65 29 3b  .cms.Attribute);
219d0 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 2e 4d 65  KJUR.asn1.cms.Me
219e0 73 73 61 67 65 44 69 67 65 73 74 3d 66 75 6e 63  ssageDigest=func
219f0 74 69 6f 6e 28 65 29 7b 4b 4a 55 52 2e 61 73 6e  tion(e){KJUR.asn
21a00 31 2e 63 6d 73 2e 4d 65 73 73 61 67 65 44 69 67  1.cms.MessageDig
21a10 65 73 74 2e 73 75 70 65 72 63 6c 61 73 73 2e 63  est.superclass.c
21a20 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28  onstructor.call(
21a30 74 68 69 73 29 3b 74 68 69 73 2e 61 74 74 72 54  this);this.attrT
21a40 79 70 65 4f 69 64 3d 22 31 2e 32 2e 38 34 30 2e  ypeOid="1.2.840.
21a50 31 31 33 35 34 39 2e 31 2e 39 2e 34 22 3b 69 66  113549.1.9.4";if
21a60 28 74 79 70 65 6f 66 20 65 21 3d 22 75 6e 64 65  (typeof e!="unde
21a70 66 69 6e 65 64 22 29 7b 69 66 28 65 2e 65 63 69  fined"){if(e.eci
21a80 4f 62 6a 20 69 6e 73 74 61 6e 63 65 6f 66 20 4b  Obj instanceof K
21a90 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 2e 45 6e 63  JUR.asn1.cms.Enc
21aa0 61 70 73 75 6c 61 74 65 64 43 6f 6e 74 65 6e 74  apsulatedContent
21ab0 49 6e 66 6f 26 26 74 79 70 65 6f 66 20 65 2e 68  Info&&typeof e.h
21ac0 61 73 68 41 6c 67 3d 3d 22 73 74 72 69 6e 67 22  ashAlg=="string"
21ad0 29 7b 76 61 72 20 62 3d 65 2e 65 63 69 4f 62 6a  ){var b=e.eciObj
21ae0 2e 65 43 6f 6e 74 65 6e 74 56 61 6c 75 65 48 65  .eContentValueHe
21af0 78 3b 76 61 72 20 61 3d 65 2e 68 61 73 68 41 6c  x;var a=e.hashAl
21b00 67 3b 76 61 72 20 63 3d 4b 4a 55 52 2e 63 72 79  g;var c=KJUR.cry
21b10 70 74 6f 2e 55 74 69 6c 2e 68 61 73 68 48 65 78  pto.Util.hashHex
21b20 28 62 2c 61 29 3b 76 61 72 20 64 3d 6e 65 77 20  (b,a);var d=new 
21b30 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 4f 63 74  KJUR.asn1.DEROct
21b40 65 74 53 74 72 69 6e 67 28 7b 68 65 78 3a 63 7d  etString({hex:c}
21b50 29 3b 64 2e 67 65 74 45 6e 63 6f 64 65 64 48 65  );d.getEncodedHe
21b60 78 28 29 3b 74 68 69 73 2e 76 61 6c 75 65 4c 69  x();this.valueLi
21b70 73 74 3d 5b 64 5d 7d 65 6c 73 65 7b 76 61 72 20  st=[d]}else{var 
21b80 64 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e  d=new KJUR.asn1.
21b90 44 45 52 4f 63 74 65 74 53 74 72 69 6e 67 28 65  DEROctetString(e
21ba0 29 3b 64 2e 67 65 74 45 6e 63 6f 64 65 64 48 65  );d.getEncodedHe
21bb0 78 28 29 3b 74 68 69 73 2e 76 61 6c 75 65 4c 69  x();this.valueLi
21bc0 73 74 3d 5b 64 5d 7d 7d 7d 3b 59 41 48 4f 4f 2e  st=[d]}}};YAHOO.
21bd0 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52  lang.extend(KJUR
21be0 2e 61 73 6e 31 2e 63 6d 73 2e 4d 65 73 73 61 67  .asn1.cms.Messag
21bf0 65 44 69 67 65 73 74 2c 4b 4a 55 52 2e 61 73 6e  eDigest,KJUR.asn
21c00 31 2e 63 6d 73 2e 41 74 74 72 69 62 75 74 65 29  1.cms.Attribute)
21c10 3b 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 2e 53  ;KJUR.asn1.cms.S
21c20 69 67 6e 69 6e 67 54 69 6d 65 3d 66 75 6e 63 74  igningTime=funct
21c30 69 6f 6e 28 63 29 7b 4b 4a 55 52 2e 61 73 6e 31  ion(c){KJUR.asn1
21c40 2e 63 6d 73 2e 53 69 67 6e 69 6e 67 54 69 6d 65  .cms.SigningTime
21c50 2e 73 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73  .superclass.cons
21c60 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69  tructor.call(thi
21c70 73 29 3b 74 68 69 73 2e 61 74 74 72 54 79 70 65  s);this.attrType
21c80 4f 69 64 3d 22 31 2e 32 2e 38 34 30 2e 31 31 33  Oid="1.2.840.113
21c90 35 34 39 2e 31 2e 39 2e 35 22 3b 69 66 28 74 79  549.1.9.5";if(ty
21ca0 70 65 6f 66 20 63 21 3d 22 75 6e 64 65 66 69 6e  peof c!="undefin
21cb0 65 64 22 29 7b 76 61 72 20 61 3d 6e 65 77 20 4b  ed"){var a=new K
21cc0 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 54 69  JUR.asn1.x509.Ti
21cd0 6d 65 28 63 29 3b 74 72 79 7b 61 2e 67 65 74 45  me(c);try{a.getE
21ce0 6e 63 6f 64 65 64 48 65 78 28 29 7d 63 61 74 63  ncodedHex()}catc
21cf0 68 28 62 29 7b 74 68 72 6f 77 22 53 69 67 6e 69  h(b){throw"Signi
21d00 6e 67 54 69 6d 65 2e 67 65 74 45 6e 63 6f 64 65  ngTime.getEncode
21d10 64 48 65 78 28 29 20 66 61 69 6c 65 64 2f 22 2b  dHex() failed/"+
21d20 62 7d 74 68 69 73 2e 76 61 6c 75 65 4c 69 73 74  b}this.valueList
21d30 3d 5b 61 5d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e  =[a]}};YAHOO.lan
21d40 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73  g.extend(KJUR.as
21d50 6e 31 2e 63 6d 73 2e 53 69 67 6e 69 6e 67 54 69  n1.cms.SigningTi
21d60 6d 65 2c 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73  me,KJUR.asn1.cms
21d70 2e 41 74 74 72 69 62 75 74 65 29 3b 4b 4a 55 52  .Attribute);KJUR
21d80 2e 61 73 6e 31 2e 63 6d 73 2e 53 69 67 6e 69 6e  .asn1.cms.Signin
21d90 67 43 65 72 74 69 66 69 63 61 74 65 3d 66 75 6e  gCertificate=fun
21da0 63 74 69 6f 6e 28 64 29 7b 4b 4a 55 52 2e 61 73  ction(d){KJUR.as
21db0 6e 31 2e 63 6d 73 2e 53 69 67 6e 69 6e 67 43 65  n1.cms.SigningCe
21dc0 72 74 69 66 69 63 61 74 65 2e 73 75 70 65 72 63  rtificate.superc
21dd0 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72  lass.constructor
21de0 2e 63 61 6c 6c 28 74 68 69 73 29 3b 74 68 69 73  .call(this);this
21df0 2e 61 74 74 72 54 79 70 65 4f 69 64 3d 22 31 2e  .attrTypeOid="1.
21e00 32 2e 38 34 30 2e 31 31 33 35 34 39 2e 31 2e 39  2.840.113549.1.9
21e10 2e 31 36 2e 32 2e 31 32 22 3b 76 61 72 20 61 3d  .16.2.12";var a=
21e20 4b 4a 55 52 2e 61 73 6e 31 3b 76 61 72 20 63 3d  KJUR.asn1;var c=
21e30 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 3b 76 61  KJUR.asn1.cms;va
21e40 72 20 62 3d 4b 4a 55 52 2e 63 72 79 70 74 6f 3b  r b=KJUR.crypto;
21e50 74 68 69 73 2e 73 65 74 43 65 72 74 73 3d 66 75  this.setCerts=fu
21e60 6e 63 74 69 6f 6e 28 6c 29 7b 76 61 72 20 6a 3d  nction(l){var j=
21e70 5b 5d 3b 66 6f 72 28 76 61 72 20 68 3d 30 3b 68  [];for(var h=0;h
21e80 3c 6c 2e 6c 65 6e 67 74 68 3b 68 2b 2b 29 7b 76  <l.length;h++){v
21e90 61 72 20 66 3d 4b 45 59 55 54 49 4c 2e 67 65 74  ar f=KEYUTIL.get
21ea0 48 65 78 46 72 6f 6d 50 45 4d 28 6c 5b 68 5d 29  HexFromPEM(l[h])
21eb0 3b 76 61 72 20 65 3d 62 2e 55 74 69 6c 2e 68 61  ;var e=b.Util.ha
21ec0 73 68 48 65 78 28 66 2c 22 73 68 61 31 22 29 3b  shHex(f,"sha1");
21ed0 76 61 72 20 6d 3d 6e 65 77 20 61 2e 44 45 52 4f  var m=new a.DERO
21ee0 63 74 65 74 53 74 72 69 6e 67 28 7b 68 65 78 3a  ctetString({hex:
21ef0 65 7d 29 3b 6d 2e 67 65 74 45 6e 63 6f 64 65 64  e});m.getEncoded
21f00 48 65 78 28 29 3b 76 61 72 20 6b 3d 6e 65 77 20  Hex();var k=new 
21f10 63 2e 49 73 73 75 65 72 41 6e 64 53 65 72 69 61  c.IssuerAndSeria
21f20 6c 4e 75 6d 62 65 72 28 7b 63 65 72 74 3a 6c 5b  lNumber({cert:l[
21f30 68 5d 7d 29 3b 6b 2e 67 65 74 45 6e 63 6f 64 65  h]});k.getEncode
21f40 64 48 65 78 28 29 3b 76 61 72 20 6e 3d 6e 65 77  dHex();var n=new
21f50 20 61 2e 44 45 52 53 65 71 75 65 6e 63 65 28 7b   a.DERSequence({
21f60 61 72 72 61 79 3a 5b 6d 2c 6b 5d 7d 29 3b 6e 2e  array:[m,k]});n.
21f70 67 65 74 45 6e 63 6f 64 65 64 48 65 78 28 29 3b  getEncodedHex();
21f80 6a 2e 70 75 73 68 28 6e 29 7d 76 61 72 20 67 3d  j.push(n)}var g=
21f90 6e 65 77 20 61 2e 44 45 52 53 65 71 75 65 6e 63  new a.DERSequenc
21fa0 65 28 7b 61 72 72 61 79 3a 6a 7d 29 3b 67 2e 67  e({array:j});g.g
21fb0 65 74 45 6e 63 6f 64 65 64 48 65 78 28 29 3b 74  etEncodedHex();t
21fc0 68 69 73 2e 76 61 6c 75 65 4c 69 73 74 3d 5b 67  his.valueList=[g
21fd0 5d 7d 3b 69 66 28 74 79 70 65 6f 66 20 64 21 3d  ]};if(typeof d!=
21fe0 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 69 66 28  "undefined"){if(
21ff0 74 79 70 65 6f 66 20 64 2e 61 72 72 61 79 3d 3d  typeof d.array==
22000 22 6f 62 6a 65 63 74 22 29 7b 74 68 69 73 2e 73  "object"){this.s
22010 65 74 43 65 72 74 73 28 64 2e 61 72 72 61 79 29  etCerts(d.array)
22020 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65  }}};YAHOO.lang.e
22030 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e  xtend(KJUR.asn1.
22040 63 6d 73 2e 53 69 67 6e 69 6e 67 43 65 72 74 69  cms.SigningCerti
22050 66 69 63 61 74 65 2c 4b 4a 55 52 2e 61 73 6e 31  ficate,KJUR.asn1
22060 2e 63 6d 73 2e 41 74 74 72 69 62 75 74 65 29 3b  .cms.Attribute);
22070 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 2e 53 69  KJUR.asn1.cms.Si
22080 67 6e 69 6e 67 43 65 72 74 69 66 69 63 61 74 65  gningCertificate
22090 56 32 3d 66 75 6e 63 74 69 6f 6e 28 65 29 7b 4b  V2=function(e){K
220a0 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 2e 53 69 67  JUR.asn1.cms.Sig
220b0 6e 69 6e 67 43 65 72 74 69 66 69 63 61 74 65 56  ningCertificateV
220c0 32 2e 73 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e  2.superclass.con
220d0 73 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68  structor.call(th
220e0 69 73 29 3b 74 68 69 73 2e 61 74 74 72 54 79 70  is);this.attrTyp
220f0 65 4f 69 64 3d 22 31 2e 32 2e 38 34 30 2e 31 31  eOid="1.2.840.11
22100 33 35 34 39 2e 31 2e 39 2e 31 36 2e 32 2e 34 37  3549.1.9.16.2.47
22110 22 3b 76 61 72 20 62 3d 4b 4a 55 52 2e 61 73 6e  ";var b=KJUR.asn
22120 31 3b 76 61 72 20 66 3d 4b 4a 55 52 2e 61 73 6e  1;var f=KJUR.asn
22130 31 2e 78 35 30 39 3b 76 61 72 20 64 3d 4b 4a 55  1.x509;var d=KJU
22140 52 2e 61 73 6e 31 2e 63 6d 73 3b 76 61 72 20 63  R.asn1.cms;var c
22150 3d 4b 4a 55 52 2e 63 72 79 70 74 6f 3b 74 68 69  =KJUR.crypto;thi
22160 73 2e 73 65 74 43 65 72 74 73 3d 66 75 6e 63 74  s.setCerts=funct
22170 69 6f 6e 28 70 2c 68 29 7b 76 61 72 20 6e 3d 5b  ion(p,h){var n=[
22180 5d 3b 66 6f 72 28 76 61 72 20 6c 3d 30 3b 6c 3c  ];for(var l=0;l<
22190 70 2e 6c 65 6e 67 74 68 3b 6c 2b 2b 29 7b 76 61  p.length;l++){va
221a0 72 20 6a 3d 4b 45 59 55 54 49 4c 2e 67 65 74 48  r j=KEYUTIL.getH
221b0 65 78 46 72 6f 6d 50 45 4d 28 70 5b 6c 5d 29 3b  exFromPEM(p[l]);
221c0 76 61 72 20 72 3d 5b 5d 3b 69 66 28 68 21 3d 22  var r=[];if(h!="
221d0 73 68 61 32 35 36 22 29 7b 72 2e 70 75 73 68 28  sha256"){r.push(
221e0 6e 65 77 20 66 2e 41 6c 67 6f 72 69 74 68 6d 49  new f.AlgorithmI
221f0 64 65 6e 74 69 66 69 65 72 28 7b 6e 61 6d 65 3a  dentifier({name:
22200 68 7d 29 29 7d 76 61 72 20 67 3d 63 2e 55 74 69  h}))}var g=c.Uti
22210 6c 2e 68 61 73 68 48 65 78 28 6a 2c 68 29 3b 76  l.hashHex(j,h);v
22220 61 72 20 71 3d 6e 65 77 20 62 2e 44 45 52 4f 63  ar q=new b.DEROc
22230 74 65 74 53 74 72 69 6e 67 28 7b 68 65 78 3a 67  tetString({hex:g
22240 7d 29 3b 71 2e 67 65 74 45 6e 63 6f 64 65 64 48  });q.getEncodedH
22250 65 78 28 29 3b 72 2e 70 75 73 68 28 71 29 3b 76  ex();r.push(q);v
22260 61 72 20 6d 3d 6e 65 77 20 64 2e 49 73 73 75 65  ar m=new d.Issue
22270 72 41 6e 64 53 65 72 69 61 6c 4e 75 6d 62 65 72  rAndSerialNumber
22280 28 7b 63 65 72 74 3a 70 5b 6c 5d 7d 29 3b 6d 2e  ({cert:p[l]});m.
22290 67 65 74 45 6e 63 6f 64 65 64 48 65 78 28 29 3b  getEncodedHex();
222a0 72 2e 70 75 73 68 28 6d 29 3b 76 61 72 20 6f 3d  r.push(m);var o=
222b0 6e 65 77 20 62 2e 44 45 52 53 65 71 75 65 6e 63  new b.DERSequenc
222c0 65 28 7b 61 72 72 61 79 3a 72 7d 29 3b 6f 2e 67  e({array:r});o.g
222d0 65 74 45 6e 63 6f 64 65 64 48 65 78 28 29 3b 6e  etEncodedHex();n
222e0 2e 70 75 73 68 28 6f 29 7d 76 61 72 20 6b 3d 6e  .push(o)}var k=n
222f0 65 77 20 62 2e 44 45 52 53 65 71 75 65 6e 63 65  ew b.DERSequence
22300 28 7b 61 72 72 61 79 3a 6e 7d 29 3b 6b 2e 67 65  ({array:n});k.ge
22310 74 45 6e 63 6f 64 65 64 48 65 78 28 29 3b 74 68  tEncodedHex();th
22320 69 73 2e 76 61 6c 75 65 4c 69 73 74 3d 5b 6b 5d  is.valueList=[k]
22330 7d 3b 69 66 28 74 79 70 65 6f 66 20 65 21 3d 22  };if(typeof e!="
22340 75 6e 64 65 66 69 6e 65 64 22 29 7b 69 66 28 74  undefined"){if(t
22350 79 70 65 6f 66 20 65 2e 61 72 72 61 79 3d 3d 22  ypeof e.array=="
22360 6f 62 6a 65 63 74 22 29 7b 76 61 72 20 61 3d 22  object"){var a="
22370 73 68 61 32 35 36 22 3b 69 66 28 74 79 70 65 6f  sha256";if(typeo
22380 66 20 65 2e 68 61 73 68 41 6c 67 3d 3d 22 73 74  f e.hashAlg=="st
22390 72 69 6e 67 22 29 7b 61 3d 65 2e 68 61 73 68 41  ring"){a=e.hashA
223a0 6c 67 7d 74 68 69 73 2e 73 65 74 43 65 72 74 73  lg}this.setCerts
223b0 28 65 2e 61 72 72 61 79 2c 61 29 7d 7d 7d 3b 59  (e.array,a)}}};Y
223c0 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64  AHOO.lang.extend
223d0 28 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 2e 53  (KJUR.asn1.cms.S
223e0 69 67 6e 69 6e 67 43 65 72 74 69 66 69 63 61 74  igningCertificat
223f0 65 56 32 2c 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d  eV2,KJUR.asn1.cm
22400 73 2e 41 74 74 72 69 62 75 74 65 29 3b 4b 4a 55  s.Attribute);KJU
22410 52 2e 61 73 6e 31 2e 63 6d 73 2e 49 73 73 75 65  R.asn1.cms.Issue
22420 72 41 6e 64 53 65 72 69 61 6c 4e 75 6d 62 65 72  rAndSerialNumber
22430 3d 66 75 6e 63 74 69 6f 6e 28 63 29 7b 4b 4a 55  =function(c){KJU
22440 52 2e 61 73 6e 31 2e 63 6d 73 2e 49 73 73 75 65  R.asn1.cms.Issue
22450 72 41 6e 64 53 65 72 69 61 6c 4e 75 6d 62 65 72  rAndSerialNumber
22460 2e 73 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73  .superclass.cons
22470 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69  tructor.call(thi
22480 73 29 3b 76 61 72 20 65 3d 6e 75 6c 6c 3b 76 61  s);var e=null;va
22490 72 20 62 3d 6e 75 6c 6c 3b 76 61 72 20 61 3d 4b  r b=null;var a=K
224a0 4a 55 52 2e 61 73 6e 31 3b 76 61 72 20 64 3d 61  JUR.asn1;var d=a
224b0 2e 78 35 30 39 3b 74 68 69 73 2e 73 65 74 42 79  .x509;this.setBy
224c0 43 65 72 74 50 45 4d 3d 66 75 6e 63 74 69 6f 6e  CertPEM=function
224d0 28 69 29 7b 76 61 72 20 67 3d 4b 45 59 55 54 49  (i){var g=KEYUTI
224e0 4c 2e 67 65 74 48 65 78 46 72 6f 6d 50 45 4d 28  L.getHexFromPEM(
224f0 69 29 3b 76 61 72 20 66 3d 6e 65 77 20 58 35 30  i);var f=new X50
22500 39 28 29 3b 66 2e 68 65 78 3d 67 3b 76 61 72 20  9();f.hex=g;var 
22510 6a 3d 66 2e 67 65 74 49 73 73 75 65 72 48 65 78  j=f.getIssuerHex
22520 28 29 3b 74 68 69 73 2e 64 49 73 73 75 65 72 3d  ();this.dIssuer=
22530 6e 65 77 20 64 2e 58 35 30 30 4e 61 6d 65 28 29  new d.X500Name()
22540 3b 74 68 69 73 2e 64 49 73 73 75 65 72 2e 68 54  ;this.dIssuer.hT
22550 4c 56 3d 6a 3b 76 61 72 20 68 3d 66 2e 67 65 74  LV=j;var h=f.get
22560 53 65 72 69 61 6c 4e 75 6d 62 65 72 48 65 78 28  SerialNumberHex(
22570 29 3b 74 68 69 73 2e 64 53 65 72 69 61 6c 3d 6e  );this.dSerial=n
22580 65 77 20 61 2e 44 45 52 49 6e 74 65 67 65 72 28  ew a.DERInteger(
22590 7b 68 65 78 3a 68 7d 29 7d 3b 74 68 69 73 2e 67  {hex:h})};this.g
225a0 65 74 45 6e 63 6f 64 65 64 48 65 78 3d 66 75 6e  etEncodedHex=fun
225b0 63 74 69 6f 6e 28 29 7b 76 61 72 20 66 3d 6e 65  ction(){var f=ne
225c0 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 53  w KJUR.asn1.DERS
225d0 65 71 75 65 6e 63 65 28 7b 61 72 72 61 79 3a 5b  equence({array:[
225e0 74 68 69 73 2e 64 49 73 73 75 65 72 2c 74 68 69  this.dIssuer,thi
225f0 73 2e 64 53 65 72 69 61 6c 5d 7d 29 3b 74 68 69  s.dSerial]});thi
22600 73 2e 68 54 4c 56 3d 66 2e 67 65 74 45 6e 63 6f  s.hTLV=f.getEnco
22610 64 65 64 48 65 78 28 29 3b 72 65 74 75 72 6e 20  dedHex();return 
22620 74 68 69 73 2e 68 54 4c 56 7d 3b 69 66 28 74 79  this.hTLV};if(ty
22630 70 65 6f 66 20 63 21 3d 22 75 6e 64 65 66 69 6e  peof c!="undefin
22640 65 64 22 29 7b 69 66 28 74 79 70 65 6f 66 20 63  ed"){if(typeof c
22650 3d 3d 22 73 74 72 69 6e 67 22 26 26 63 2e 69 6e  =="string"&&c.in
22660 64 65 78 4f 66 28 22 2d 2d 2d 2d 2d 42 45 47 49  dexOf("-----BEGI
22670 4e 20 22 29 21 3d 2d 31 29 7b 74 68 69 73 2e 73  N ")!=-1){this.s
22680 65 74 42 79 43 65 72 74 50 45 4d 28 63 29 7d 69  etByCertPEM(c)}i
22690 66 28 63 2e 69 73 73 75 65 72 26 26 63 2e 73 65  f(c.issuer&&c.se
226a0 72 69 61 6c 29 7b 69 66 28 63 2e 69 73 73 75 65  rial){if(c.issue
226b0 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 4b 4a 55  r instanceof KJU
226c0 52 2e 61 73 6e 31 2e 78 35 30 39 2e 58 35 30 30  R.asn1.x509.X500
226d0 4e 61 6d 65 29 7b 74 68 69 73 2e 64 49 73 73 75  Name){this.dIssu
226e0 65 72 3d 63 2e 69 73 73 75 65 72 7d 65 6c 73 65  er=c.issuer}else
226f0 7b 74 68 69 73 2e 64 49 73 73 75 65 72 3d 6e 65  {this.dIssuer=ne
22700 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39  w KJUR.asn1.x509
22710 2e 58 35 30 30 4e 61 6d 65 28 63 2e 69 73 73 75  .X500Name(c.issu
22720 65 72 29 7d 69 66 28 63 2e 73 65 72 69 61 6c 20  er)}if(c.serial 
22730 69 6e 73 74 61 6e 63 65 6f 66 20 4b 4a 55 52 2e  instanceof KJUR.
22740 61 73 6e 31 2e 44 45 52 49 6e 74 65 67 65 72 29  asn1.DERInteger)
22750 7b 74 68 69 73 2e 64 53 65 72 69 61 6c 3d 63 2e  {this.dSerial=c.
22760 73 65 72 69 61 6c 7d 65 6c 73 65 7b 74 68 69 73  serial}else{this
22770 2e 64 53 65 72 69 61 6c 3d 6e 65 77 20 4b 4a 55  .dSerial=new KJU
22780 52 2e 61 73 6e 31 2e 44 45 52 49 6e 74 65 67 65  R.asn1.DERIntege
22790 72 28 63 2e 73 65 72 69 61 6c 29 7d 7d 69 66 28  r(c.serial)}}if(
227a0 74 79 70 65 6f 66 20 63 2e 63 65 72 74 3d 3d 22  typeof c.cert=="
227b0 73 74 72 69 6e 67 22 29 7b 74 68 69 73 2e 73 65  string"){this.se
227c0 74 42 79 43 65 72 74 50 45 4d 28 63 2e 63 65 72  tByCertPEM(c.cer
227d0 74 29 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67  t)}}};YAHOO.lang
227e0 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e  .extend(KJUR.asn
227f0 31 2e 63 6d 73 2e 49 73 73 75 65 72 41 6e 64 53  1.cms.IssuerAndS
22800 65 72 69 61 6c 4e 75 6d 62 65 72 2c 4b 4a 55 52  erialNumber,KJUR
22810 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74  .asn1.ASN1Object
22820 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 2e  );KJUR.asn1.cms.
22830 41 74 74 72 69 62 75 74 65 4c 69 73 74 3d 66 75  AttributeList=fu
22840 6e 63 74 69 6f 6e 28 61 29 7b 4b 4a 55 52 2e 61  nction(a){KJUR.a
22850 73 6e 31 2e 63 6d 73 2e 41 74 74 72 69 62 75 74  sn1.cms.Attribut
22860 65 4c 69 73 74 2e 73 75 70 65 72 63 6c 61 73 73  eList.superclass
22870 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c  .constructor.cal
22880 6c 28 74 68 69 73 29 3b 74 68 69 73 2e 6c 69 73  l(this);this.lis
22890 74 3d 6e 65 77 20 41 72 72 61 79 28 29 3b 74 68  t=new Array();th
228a0 69 73 2e 73 6f 72 74 46 6c 61 67 3d 74 72 75 65  is.sortFlag=true
228b0 3b 74 68 69 73 2e 61 64 64 3d 66 75 6e 63 74 69  ;this.add=functi
228c0 6f 6e 28 62 29 7b 69 66 28 62 20 69 6e 73 74 61  on(b){if(b insta
228d0 6e 63 65 6f 66 20 4b 4a 55 52 2e 61 73 6e 31 2e  nceof KJUR.asn1.
228e0 63 6d 73 2e 41 74 74 72 69 62 75 74 65 29 7b 74  cms.Attribute){t
228f0 68 69 73 2e 6c 69 73 74 2e 70 75 73 68 28 62 29  his.list.push(b)
22900 7d 7d 3b 74 68 69 73 2e 6c 65 6e 67 74 68 3d 66  }};this.length=f
22910 75 6e 63 74 69 6f 6e 28 29 7b 72 65 74 75 72 6e  unction(){return
22920 20 74 68 69 73 2e 6c 69 73 74 2e 6c 65 6e 67 74   this.list.lengt
22930 68 7d 3b 74 68 69 73 2e 63 6c 65 61 72 3d 66 75  h};this.clear=fu
22940 6e 63 74 69 6f 6e 28 29 7b 74 68 69 73 2e 6c 69  nction(){this.li
22950 73 74 3d 6e 65 77 20 41 72 72 61 79 28 29 3b 74  st=new Array();t
22960 68 69 73 2e 68 54 4c 56 3d 6e 75 6c 6c 3b 74 68  his.hTLV=null;th
22970 69 73 2e 68 56 3d 6e 75 6c 6c 7d 3b 74 68 69 73  is.hV=null};this
22980 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78 3d 66  .getEncodedHex=f
22990 75 6e 63 74 69 6f 6e 28 29 7b 69 66 28 74 79 70  unction(){if(typ
229a0 65 6f 66 20 74 68 69 73 2e 68 54 4c 56 3d 3d 22  eof this.hTLV=="
229b0 73 74 72 69 6e 67 22 29 7b 72 65 74 75 72 6e 20  string"){return 
229c0 74 68 69 73 2e 68 54 4c 56 7d 76 61 72 20 62 3d  this.hTLV}var b=
229d0 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  new KJUR.asn1.DE
229e0 52 53 65 74 28 7b 61 72 72 61 79 3a 74 68 69 73  RSet({array:this
229f0 2e 6c 69 73 74 2c 73 6f 72 74 66 6c 61 67 3a 74  .list,sortflag:t
22a00 68 69 73 2e 73 6f 72 74 46 6c 61 67 7d 29 3b 74  his.sortFlag});t
22a10 68 69 73 2e 68 54 4c 56 3d 62 2e 67 65 74 45 6e  his.hTLV=b.getEn
22a20 63 6f 64 65 64 48 65 78 28 29 3b 72 65 74 75 72  codedHex();retur
22a30 6e 20 74 68 69 73 2e 68 54 4c 56 7d 3b 69 66 28  n this.hTLV};if(
22a40 74 79 70 65 6f 66 20 61 21 3d 22 75 6e 64 65 66  typeof a!="undef
22a50 69 6e 65 64 22 29 7b 69 66 28 74 79 70 65 6f 66  ined"){if(typeof
22a60 20 61 2e 73 6f 72 74 66 6c 61 67 21 3d 22 75 6e   a.sortflag!="un
22a70 64 65 66 69 6e 65 64 22 26 26 61 2e 73 6f 72 74  defined"&&a.sort
22a80 66 6c 61 67 3d 3d 66 61 6c 73 65 29 7b 74 68 69  flag==false){thi
22a90 73 2e 73 6f 72 74 46 6c 61 67 3d 66 61 6c 73 65  s.sortFlag=false
22aa0 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65  }}};YAHOO.lang.e
22ab0 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e  xtend(KJUR.asn1.
22ac0 63 6d 73 2e 41 74 74 72 69 62 75 74 65 4c 69 73  cms.AttributeLis
22ad0 74 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31  t,KJUR.asn1.ASN1
22ae0 4f 62 6a 65 63 74 29 3b 4b 4a 55 52 2e 61 73 6e  Object);KJUR.asn
22af0 31 2e 63 6d 73 2e 53 69 67 6e 65 72 49 6e 66 6f  1.cms.SignerInfo
22b00 3d 66 75 6e 63 74 69 6f 6e 28 63 29 7b 4b 4a 55  =function(c){KJU
22b10 52 2e 61 73 6e 31 2e 63 6d 73 2e 53 69 67 6e 65  R.asn1.cms.Signe
22b20 72 49 6e 66 6f 2e 73 75 70 65 72 63 6c 61 73 73  rInfo.superclass
22b30 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c  .constructor.cal
22b40 6c 28 74 68 69 73 29 3b 76 61 72 20 61 3d 4b 4a  l(this);var a=KJ
22b50 55 52 2e 61 73 6e 31 3b 76 61 72 20 62 3d 4b 4a  UR.asn1;var b=KJ
22b60 55 52 2e 61 73 6e 31 2e 63 6d 73 3b 76 61 72 20  UR.asn1.cms;var 
22b70 64 3d 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39  d=KJUR.asn1.x509
22b80 3b 74 68 69 73 2e 64 43 4d 53 56 65 72 73 69 6f  ;this.dCMSVersio
22b90 6e 3d 6e 65 77 20 61 2e 44 45 52 49 6e 74 65 67  n=new a.DERInteg
22ba0 65 72 28 7b 22 69 6e 74 22 3a 31 7d 29 3b 74 68  er({"int":1});th
22bb0 69 73 2e 64 53 69 67 6e 65 72 49 64 65 6e 74 69  is.dSignerIdenti
22bc0 66 69 65 72 3d 6e 75 6c 6c 3b 74 68 69 73 2e 64  fier=null;this.d
22bd0 44 69 67 65 73 74 41 6c 67 6f 72 69 74 68 6d 3d  DigestAlgorithm=
22be0 6e 75 6c 6c 3b 74 68 69 73 2e 64 53 69 67 6e 65  null;this.dSigne
22bf0 64 41 74 74 72 73 3d 6e 65 77 20 62 2e 41 74 74  dAttrs=new b.Att
22c00 72 69 62 75 74 65 4c 69 73 74 28 29 3b 74 68 69  ributeList();thi
22c10 73 2e 64 53 69 67 41 6c 67 3d 6e 75 6c 6c 3b 74  s.dSigAlg=null;t
22c20 68 69 73 2e 64 53 69 67 3d 6e 75 6c 6c 3b 74 68  his.dSig=null;th
22c30 69 73 2e 64 55 6e 73 69 67 6e 65 64 41 74 74 72  is.dUnsignedAttr
22c40 73 3d 6e 65 77 20 62 2e 41 74 74 72 69 62 75 74  s=new b.Attribut
22c50 65 4c 69 73 74 28 29 3b 74 68 69 73 2e 73 65 74  eList();this.set
22c60 53 69 67 6e 65 72 49 64 65 6e 74 69 66 69 65 72  SignerIdentifier
22c70 3d 66 75 6e 63 74 69 6f 6e 28 66 29 7b 69 66 28  =function(f){if(
22c80 74 79 70 65 6f 66 20 66 3d 3d 22 73 74 72 69 6e  typeof f=="strin
22c90 67 22 26 26 66 2e 69 6e 64 65 78 4f 66 28 22 43  g"&&f.indexOf("C
22ca0 45 52 54 49 46 49 43 41 54 45 22 29 21 3d 2d 31  ERTIFICATE")!=-1
22cb0 26 26 66 2e 69 6e 64 65 78 4f 66 28 22 42 45 47  &&f.indexOf("BEG
22cc0 49 4e 22 29 21 3d 2d 31 26 26 66 2e 69 6e 64 65  IN")!=-1&&f.inde
22cd0 78 4f 66 28 22 45 4e 44 22 29 21 3d 2d 31 29 7b  xOf("END")!=-1){
22ce0 76 61 72 20 65 3d 66 3b 74 68 69 73 2e 64 53 69  var e=f;this.dSi
22cf0 67 6e 65 72 49 64 65 6e 74 69 66 69 65 72 3d 6e  gnerIdentifier=n
22d00 65 77 20 62 2e 49 73 73 75 65 72 41 6e 64 53 65  ew b.IssuerAndSe
22d10 72 69 61 6c 4e 75 6d 62 65 72 28 7b 63 65 72 74  rialNumber({cert
22d20 3a 66 7d 29 7d 7d 3b 74 68 69 73 2e 73 65 74 46  :f})}};this.setF
22d30 6f 72 43 6f 6e 74 65 6e 74 41 6e 64 48 61 73 68  orContentAndHash
22d40 3d 66 75 6e 63 74 69 6f 6e 28 65 29 7b 69 66 28  =function(e){if(
22d50 74 79 70 65 6f 66 20 65 21 3d 22 75 6e 64 65 66  typeof e!="undef
22d60 69 6e 65 64 22 29 7b 69 66 28 65 2e 65 63 69 4f  ined"){if(e.eciO
22d70 62 6a 20 69 6e 73 74 61 6e 63 65 6f 66 20 4b 4a  bj instanceof KJ
22d80 55 52 2e 61 73 6e 31 2e 63 6d 73 2e 45 6e 63 61  UR.asn1.cms.Enca
22d90 70 73 75 6c 61 74 65 64 43 6f 6e 74 65 6e 74 49  psulatedContentI
22da0 6e 66 6f 29 7b 74 68 69 73 2e 64 53 69 67 6e 65  nfo){this.dSigne
22db0 64 41 74 74 72 73 2e 61 64 64 28 6e 65 77 20 62  dAttrs.add(new b
22dc0 2e 43 6f 6e 74 65 6e 74 54 79 70 65 28 7b 6f 69  .ContentType({oi
22dd0 64 3a 22 31 2e 32 2e 38 34 30 2e 31 31 33 35 34  d:"1.2.840.11354
22de0 39 2e 31 2e 37 2e 31 22 7d 29 29 3b 74 68 69 73  9.1.7.1"}));this
22df0 2e 64 53 69 67 6e 65 64 41 74 74 72 73 2e 61 64  .dSignedAttrs.ad
22e00 64 28 6e 65 77 20 62 2e 4d 65 73 73 61 67 65 44  d(new b.MessageD
22e10 69 67 65 73 74 28 7b 65 63 69 4f 62 6a 3a 65 2e  igest({eciObj:e.
22e20 65 63 69 4f 62 6a 2c 68 61 73 68 41 6c 67 3a 65  eciObj,hashAlg:e
22e30 2e 68 61 73 68 41 6c 67 7d 29 29 7d 69 66 28 74  .hashAlg}))}if(t
22e40 79 70 65 6f 66 20 65 2e 73 64 4f 62 6a 21 3d 22  ypeof e.sdObj!="
22e50 75 6e 64 65 66 69 6e 65 64 22 26 26 65 2e 73 64  undefined"&&e.sd
22e60 4f 62 6a 20 69 6e 73 74 61 6e 63 65 6f 66 20 4b  Obj instanceof K
22e70 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 2e 53 69 67  JUR.asn1.cms.Sig
22e80 6e 65 64 44 61 74 61 29 7b 69 66 28 65 2e 73 64  nedData){if(e.sd
22e90 4f 62 6a 2e 64 69 67 65 73 74 41 6c 67 4e 61 6d  Obj.digestAlgNam
22ea0 65 4c 69 73 74 2e 6a 6f 69 6e 28 22 3a 22 29 2e  eList.join(":").
22eb0 69 6e 64 65 78 4f 66 28 65 2e 68 61 73 68 41 6c  indexOf(e.hashAl
22ec0 67 29 3d 3d 2d 31 29 7b 65 2e 73 64 4f 62 6a 2e  g)==-1){e.sdObj.
22ed0 64 69 67 65 73 74 41 6c 67 4e 61 6d 65 4c 69 73  digestAlgNameLis
22ee0 74 2e 70 75 73 68 28 65 2e 68 61 73 68 41 6c 67  t.push(e.hashAlg
22ef0 29 7d 7d 69 66 28 74 79 70 65 6f 66 20 65 2e 68  )}}if(typeof e.h
22f00 61 73 68 41 6c 67 3d 3d 22 73 74 72 69 6e 67 22  ashAlg=="string"
22f10 29 7b 74 68 69 73 2e 64 44 69 67 65 73 74 41 6c  ){this.dDigestAl
22f20 67 6f 72 69 74 68 6d 3d 6e 65 77 20 64 2e 41 6c  gorithm=new d.Al
22f30 67 6f 72 69 74 68 6d 49 64 65 6e 74 69 66 69 65  gorithmIdentifie
22f40 72 28 7b 6e 61 6d 65 3a 65 2e 68 61 73 68 41 6c  r({name:e.hashAl
22f50 67 7d 29 7d 7d 7d 3b 74 68 69 73 2e 73 69 67 6e  g})}}};this.sign
22f60 3d 66 75 6e 63 74 69 6f 6e 28 6a 2c 66 29 7b 74  =function(j,f){t
22f70 68 69 73 2e 64 53 69 67 41 6c 67 3d 6e 65 77 20  his.dSigAlg=new 
22f80 64 2e 41 6c 67 6f 72 69 74 68 6d 49 64 65 6e 74  d.AlgorithmIdent
22f90 69 66 69 65 72 28 7b 6e 61 6d 65 3a 66 7d 29 3b  ifier({name:f});
22fa0 76 61 72 20 67 3d 74 68 69 73 2e 64 53 69 67 6e  var g=this.dSign
22fb0 65 64 41 74 74 72 73 2e 67 65 74 45 6e 63 6f 64  edAttrs.getEncod
22fc0 65 64 48 65 78 28 29 3b 76 61 72 20 65 3d 4b 45  edHex();var e=KE
22fd0 59 55 54 49 4c 2e 67 65 74 4b 65 79 28 6a 29 3b  YUTIL.getKey(j);
22fe0 76 61 72 20 69 3d 6e 65 77 20 4b 4a 55 52 2e 63  var i=new KJUR.c
22ff0 72 79 70 74 6f 2e 53 69 67 6e 61 74 75 72 65 28  rypto.Signature(
23000 7b 61 6c 67 3a 66 7d 29 3b 69 2e 69 6e 69 74 28  {alg:f});i.init(
23010 65 29 3b 69 2e 75 70 64 61 74 65 48 65 78 28 67  e);i.updateHex(g
23020 29 3b 76 61 72 20 68 3d 69 2e 73 69 67 6e 28 29  );var h=i.sign()
23030 3b 74 68 69 73 2e 64 53 69 67 3d 6e 65 77 20 61  ;this.dSig=new a
23040 2e 44 45 52 4f 63 74 65 74 53 74 72 69 6e 67 28  .DEROctetString(
23050 7b 68 65 78 3a 68 7d 29 7d 3b 74 68 69 73 2e 61  {hex:h})};this.a
23060 64 64 55 6e 73 69 67 6e 65 64 3d 66 75 6e 63 74  ddUnsigned=funct
23070 69 6f 6e 28 65 29 7b 74 68 69 73 2e 68 54 4c 56  ion(e){this.hTLV
23080 3d 6e 75 6c 6c 3b 74 68 69 73 2e 64 55 6e 73 69  =null;this.dUnsi
23090 67 6e 65 64 41 74 74 72 73 2e 68 54 4c 56 3d 6e  gnedAttrs.hTLV=n
230a0 75 6c 6c 3b 74 68 69 73 2e 64 55 6e 73 69 67 6e  ull;this.dUnsign
230b0 65 64 41 74 74 72 73 2e 61 64 64 28 65 29 7d 3b  edAttrs.add(e)};
230c0 74 68 69 73 2e 67 65 74 45 6e 63 6f 64 65 64 48  this.getEncodedH
230d0 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 69 66  ex=function(){if
230e0 28 74 68 69 73 2e 64 53 69 67 6e 65 64 41 74 74  (this.dSignedAtt
230f0 72 73 20 69 6e 73 74 61 6e 63 65 6f 66 20 4b 4a  rs instanceof KJ
23100 55 52 2e 61 73 6e 31 2e 63 6d 73 2e 41 74 74 72  UR.asn1.cms.Attr
23110 69 62 75 74 65 4c 69 73 74 26 26 74 68 69 73 2e  ibuteList&&this.
23120 64 53 69 67 6e 65 64 41 74 74 72 73 2e 6c 65 6e  dSignedAttrs.len
23130 67 74 68 28 29 3d 3d 30 29 7b 74 68 72 6f 77 22  gth()==0){throw"
23140 53 69 67 6e 65 64 41 74 74 72 73 20 6c 65 6e 67  SignedAttrs leng
23150 74 68 20 3d 20 30 20 28 65 6d 70 74 79 29 22 7d  th = 0 (empty)"}
23160 76 61 72 20 65 3d 6e 65 77 20 61 2e 44 45 52 54  var e=new a.DERT
23170 61 67 67 65 64 4f 62 6a 65 63 74 28 7b 6f 62 6a  aggedObject({obj
23180 3a 74 68 69 73 2e 64 53 69 67 6e 65 64 41 74 74  :this.dSignedAtt
23190 72 73 2c 74 61 67 3a 22 61 30 22 2c 65 78 70 6c  rs,tag:"a0",expl
231a0 69 63 69 74 3a 66 61 6c 73 65 7d 29 3b 76 61 72  icit:false});var
231b0 20 68 3d 6e 75 6c 6c 3b 69 66 28 74 68 69 73 2e   h=null;if(this.
231c0 64 55 6e 73 69 67 6e 65 64 41 74 74 72 73 2e 6c  dUnsignedAttrs.l
231d0 65 6e 67 74 68 28 29 3e 30 29 7b 68 3d 6e 65 77  ength()>0){h=new
231e0 20 61 2e 44 45 52 54 61 67 67 65 64 4f 62 6a 65   a.DERTaggedObje
231f0 63 74 28 7b 6f 62 6a 3a 74 68 69 73 2e 64 55 6e  ct({obj:this.dUn
23200 73 69 67 6e 65 64 41 74 74 72 73 2c 74 61 67 3a  signedAttrs,tag:
23210 22 61 31 22 2c 65 78 70 6c 69 63 69 74 3a 66 61  "a1",explicit:fa
23220 6c 73 65 7d 29 7d 76 61 72 20 67 3d 5b 74 68 69  lse})}var g=[thi
23230 73 2e 64 43 4d 53 56 65 72 73 69 6f 6e 2c 74 68  s.dCMSVersion,th
23240 69 73 2e 64 53 69 67 6e 65 72 49 64 65 6e 74 69  is.dSignerIdenti
23250 66 69 65 72 2c 74 68 69 73 2e 64 44 69 67 65 73  fier,this.dDiges
23260 74 41 6c 67 6f 72 69 74 68 6d 2c 65 2c 74 68 69  tAlgorithm,e,thi
23270 73 2e 64 53 69 67 41 6c 67 2c 74 68 69 73 2e 64  s.dSigAlg,this.d
23280 53 69 67 2c 5d 3b 69 66 28 68 21 3d 6e 75 6c 6c  Sig,];if(h!=null
23290 29 7b 67 2e 70 75 73 68 28 68 29 7d 76 61 72 20  ){g.push(h)}var 
232a0 66 3d 6e 65 77 20 61 2e 44 45 52 53 65 71 75 65  f=new a.DERSeque
232b0 6e 63 65 28 7b 61 72 72 61 79 3a 67 7d 29 3b 74  nce({array:g});t
232c0 68 69 73 2e 68 54 4c 56 3d 66 2e 67 65 74 45 6e  his.hTLV=f.getEn
232d0 63 6f 64 65 64 48 65 78 28 29 3b 72 65 74 75 72  codedHex();retur
232e0 6e 20 74 68 69 73 2e 68 54 4c 56 7d 7d 3b 59 41  n this.hTLV}};YA
232f0 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64 28  HOO.lang.extend(
23300 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 2e 53 69  KJUR.asn1.cms.Si
23310 67 6e 65 72 49 6e 66 6f 2c 4b 4a 55 52 2e 61 73  gnerInfo,KJUR.as
23320 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74 29 3b 4b  n1.ASN1Object);K
23330 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 2e 45 6e 63  JUR.asn1.cms.Enc
23340 61 70 73 75 6c 61 74 65 64 43 6f 6e 74 65 6e 74  apsulatedContent
23350 49 6e 66 6f 3d 66 75 6e 63 74 69 6f 6e 28 63 29  Info=function(c)
23360 7b 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 2e 45  {KJUR.asn1.cms.E
23370 6e 63 61 70 73 75 6c 61 74 65 64 43 6f 6e 74 65  ncapsulatedConte
23380 6e 74 49 6e 66 6f 2e 73 75 70 65 72 63 6c 61 73  ntInfo.superclas
23390 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61  s.constructor.ca
233a0 6c 6c 28 74 68 69 73 29 3b 76 61 72 20 61 3d 4b  ll(this);var a=K
233b0 4a 55 52 2e 61 73 6e 31 3b 76 61 72 20 62 3d 4b  JUR.asn1;var b=K
233c0 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 3b 76 61 72  JUR.asn1.cms;var
233d0 20 64 3d 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30   d=KJUR.asn1.x50
233e0 39 3b 74 68 69 73 2e 64 45 43 6f 6e 74 65 6e 74  9;this.dEContent
233f0 54 79 70 65 3d 6e 65 77 20 61 2e 44 45 52 4f 62  Type=new a.DEROb
23400 6a 65 63 74 49 64 65 6e 74 69 66 69 65 72 28 7b  jectIdentifier({
23410 6e 61 6d 65 3a 22 64 61 74 61 22 7d 29 3b 74 68  name:"data"});th
23420 69 73 2e 64 45 43 6f 6e 74 65 6e 74 3d 6e 75 6c  is.dEContent=nul
23430 6c 3b 74 68 69 73 2e 69 73 44 65 74 61 63 68 65  l;this.isDetache
23440 64 3d 66 61 6c 73 65 3b 74 68 69 73 2e 65 43 6f  d=false;this.eCo
23450 6e 74 65 6e 74 56 61 6c 75 65 48 65 78 3d 6e 75  ntentValueHex=nu
23460 6c 6c 3b 74 68 69 73 2e 73 65 74 43 6f 6e 74 65  ll;this.setConte
23470 6e 74 54 79 70 65 3d 66 75 6e 63 74 69 6f 6e 28  ntType=function(
23480 65 29 7b 69 66 28 65 2e 6d 61 74 63 68 28 2f 5e  e){if(e.match(/^
23490 5b 30 2d 32 5d 5b 2e 5d 5b 30 2d 39 2e 5d 2b 24  [0-2][.][0-9.]+$
234a0 2f 29 29 7b 74 68 69 73 2e 64 45 43 6f 6e 74 65  /)){this.dEConte
234b0 6e 74 54 79 70 65 3d 6e 65 77 20 61 2e 44 45 52  ntType=new a.DER
234c0 4f 62 6a 65 63 74 49 64 65 6e 74 69 66 69 65 72  ObjectIdentifier
234d0 28 7b 6f 69 64 3a 65 7d 29 7d 65 6c 73 65 7b 74  ({oid:e})}else{t
234e0 68 69 73 2e 64 45 43 6f 6e 74 65 6e 74 54 79 70  his.dEContentTyp
234f0 65 3d 6e 65 77 20 61 2e 44 45 52 4f 62 6a 65 63  e=new a.DERObjec
23500 74 49 64 65 6e 74 69 66 69 65 72 28 7b 6e 61 6d  tIdentifier({nam
23510 65 3a 65 7d 29 7d 7d 3b 74 68 69 73 2e 73 65 74  e:e})}};this.set
23520 43 6f 6e 74 65 6e 74 56 61 6c 75 65 3d 66 75 6e  ContentValue=fun
23530 63 74 69 6f 6e 28 65 29 7b 69 66 28 74 79 70 65  ction(e){if(type
23540 6f 66 20 65 21 3d 22 75 6e 64 65 66 69 6e 65 64  of e!="undefined
23550 22 29 7b 69 66 28 74 79 70 65 6f 66 20 65 2e 68  "){if(typeof e.h
23560 65 78 3d 3d 22 73 74 72 69 6e 67 22 29 7b 74 68  ex=="string"){th
23570 69 73 2e 65 43 6f 6e 74 65 6e 74 56 61 6c 75 65  is.eContentValue
23580 48 65 78 3d 65 2e 68 65 78 7d 65 6c 73 65 7b 69  Hex=e.hex}else{i
23590 66 28 74 79 70 65 6f 66 20 65 2e 73 74 72 3d 3d  f(typeof e.str==
235a0 22 73 74 72 69 6e 67 22 29 7b 74 68 69 73 2e 65  "string"){this.e
235b0 43 6f 6e 74 65 6e 74 56 61 6c 75 65 48 65 78 3d  ContentValueHex=
235c0 75 74 66 38 74 6f 68 65 78 28 65 2e 73 74 72 29  utf8tohex(e.str)
235d0 7d 7d 7d 7d 3b 74 68 69 73 2e 73 65 74 43 6f 6e  }}}};this.setCon
235e0 74 65 6e 74 56 61 6c 75 65 48 65 78 3d 66 75 6e  tentValueHex=fun
235f0 63 74 69 6f 6e 28 65 29 7b 74 68 69 73 2e 65 43  ction(e){this.eC
23600 6f 6e 74 65 6e 74 56 61 6c 75 65 48 65 78 3d 65  ontentValueHex=e
23610 7d 3b 74 68 69 73 2e 73 65 74 43 6f 6e 74 65 6e  };this.setConten
23620 74 56 61 6c 75 65 53 74 72 3d 66 75 6e 63 74 69  tValueStr=functi
23630 6f 6e 28 65 29 7b 74 68 69 73 2e 65 43 6f 6e 74  on(e){this.eCont
23640 65 6e 74 56 61 6c 75 65 48 65 78 3d 75 74 66 38  entValueHex=utf8
23650 74 6f 68 65 78 28 65 29 7d 3b 74 68 69 73 2e 67  tohex(e)};this.g
23660 65 74 45 6e 63 6f 64 65 64 48 65 78 3d 66 75 6e  etEncodedHex=fun
23670 63 74 69 6f 6e 28 29 7b 69 66 28 74 79 70 65 6f  ction(){if(typeo
23680 66 20 74 68 69 73 2e 65 43 6f 6e 74 65 6e 74 56  f this.eContentV
23690 61 6c 75 65 48 65 78 21 3d 22 73 74 72 69 6e 67  alueHex!="string
236a0 22 29 7b 74 68 72 6f 77 22 65 43 6f 6e 74 65 6e  "){throw"eConten
236b0 74 56 61 6c 75 65 20 6e 6f 74 20 79 65 74 20 73  tValue not yet s
236c0 65 74 22 7d 76 61 72 20 67 3d 6e 65 77 20 61 2e  et"}var g=new a.
236d0 44 45 52 4f 63 74 65 74 53 74 72 69 6e 67 28 7b  DEROctetString({
236e0 68 65 78 3a 74 68 69 73 2e 65 43 6f 6e 74 65 6e  hex:this.eConten
236f0 74 56 61 6c 75 65 48 65 78 7d 29 3b 74 68 69 73  tValueHex});this
23700 2e 64 45 43 6f 6e 74 65 6e 74 3d 6e 65 77 20 61  .dEContent=new a
23710 2e 44 45 52 54 61 67 67 65 64 4f 62 6a 65 63 74  .DERTaggedObject
23720 28 7b 6f 62 6a 3a 67 2c 74 61 67 3a 22 61 30 22  ({obj:g,tag:"a0"
23730 2c 65 78 70 6c 69 63 69 74 3a 74 72 75 65 7d 29  ,explicit:true})
23740 3b 76 61 72 20 65 3d 5b 74 68 69 73 2e 64 45 43  ;var e=[this.dEC
23750 6f 6e 74 65 6e 74 54 79 70 65 5d 3b 69 66 28 21  ontentType];if(!
23760 74 68 69 73 2e 69 73 44 65 74 61 63 68 65 64 29  this.isDetached)
23770 7b 65 2e 70 75 73 68 28 74 68 69 73 2e 64 45 43  {e.push(this.dEC
23780 6f 6e 74 65 6e 74 29 7d 76 61 72 20 66 3d 6e 65  ontent)}var f=ne
23790 77 20 61 2e 44 45 52 53 65 71 75 65 6e 63 65 28  w a.DERSequence(
237a0 7b 61 72 72 61 79 3a 65 7d 29 3b 74 68 69 73 2e  {array:e});this.
237b0 68 54 4c 56 3d 66 2e 67 65 74 45 6e 63 6f 64 65  hTLV=f.getEncode
237c0 64 48 65 78 28 29 3b 72 65 74 75 72 6e 20 74 68  dHex();return th
237d0 69 73 2e 68 54 4c 56 7d 7d 3b 59 41 48 4f 4f 2e  is.hTLV}};YAHOO.
237e0 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52  lang.extend(KJUR
237f0 2e 61 73 6e 31 2e 63 6d 73 2e 45 6e 63 61 70 73  .asn1.cms.Encaps
23800 75 6c 61 74 65 64 43 6f 6e 74 65 6e 74 49 6e 66  ulatedContentInf
23810 6f 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31  o,KJUR.asn1.ASN1
23820 4f 62 6a 65 63 74 29 3b 4b 4a 55 52 2e 61 73 6e  Object);KJUR.asn
23830 31 2e 63 6d 73 2e 43 6f 6e 74 65 6e 74 49 6e 66  1.cms.ContentInf
23840 6f 3d 66 75 6e 63 74 69 6f 6e 28 63 29 7b 4b 4a  o=function(c){KJ
23850 55 52 2e 61 73 6e 31 2e 63 6d 73 2e 43 6f 6e 74  UR.asn1.cms.Cont
23860 65 6e 74 49 6e 66 6f 2e 73 75 70 65 72 63 6c 61  entInfo.supercla
23870 73 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63  ss.constructor.c
23880 61 6c 6c 28 74 68 69 73 29 3b 76 61 72 20 61 3d  all(this);var a=
23890 4b 4a 55 52 2e 61 73 6e 31 3b 76 61 72 20 62 3d  KJUR.asn1;var b=
238a0 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 3b 76 61  KJUR.asn1.cms;va
238b0 72 20 64 3d 4b 4a 55 52 2e 61 73 6e 31 2e 78 35  r d=KJUR.asn1.x5
238c0 30 39 3b 74 68 69 73 2e 64 43 6f 6e 74 65 6e 74  09;this.dContent
238d0 54 79 70 65 3d 6e 75 6c 6c 3b 74 68 69 73 2e 64  Type=null;this.d
238e0 43 6f 6e 74 65 6e 74 3d 6e 75 6c 6c 3b 74 68 69  Content=null;thi
238f0 73 2e 73 65 74 43 6f 6e 74 65 6e 74 54 79 70 65  s.setContentType
23900 3d 66 75 6e 63 74 69 6f 6e 28 65 29 7b 69 66 28  =function(e){if(
23910 74 79 70 65 6f 66 20 65 3d 3d 22 73 74 72 69 6e  typeof e=="strin
23920 67 22 29 7b 74 68 69 73 2e 64 43 6f 6e 74 65 6e  g"){this.dConten
23930 74 54 79 70 65 3d 64 2e 4f 49 44 2e 6e 61 6d 65  tType=d.OID.name
23940 32 6f 62 6a 28 65 29 7d 7d 3b 74 68 69 73 2e 67  2obj(e)}};this.g
23950 65 74 45 6e 63 6f 64 65 64 48 65 78 3d 66 75 6e  etEncodedHex=fun
23960 63 74 69 6f 6e 28 29 7b 76 61 72 20 66 3d 6e 65  ction(){var f=ne
23970 77 20 61 2e 44 45 52 54 61 67 67 65 64 4f 62 6a  w a.DERTaggedObj
23980 65 63 74 28 7b 6f 62 6a 3a 74 68 69 73 2e 64 43  ect({obj:this.dC
23990 6f 6e 74 65 6e 74 2c 74 61 67 3a 22 61 30 22 2c  ontent,tag:"a0",
239a0 65 78 70 6c 69 63 69 74 3a 74 72 75 65 7d 29 3b  explicit:true});
239b0 76 61 72 20 65 3d 6e 65 77 20 61 2e 44 45 52 53  var e=new a.DERS
239c0 65 71 75 65 6e 63 65 28 7b 61 72 72 61 79 3a 5b  equence({array:[
239d0 74 68 69 73 2e 64 43 6f 6e 74 65 6e 74 54 79 70  this.dContentTyp
239e0 65 2c 66 5d 7d 29 3b 74 68 69 73 2e 68 54 4c 56  e,f]});this.hTLV
239f0 3d 65 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78  =e.getEncodedHex
23a00 28 29 3b 72 65 74 75 72 6e 20 74 68 69 73 2e 68  ();return this.h
23a10 54 4c 56 7d 3b 69 66 28 74 79 70 65 6f 66 20 63  TLV};if(typeof c
23a20 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 69  !="undefined"){i
23a30 66 28 63 2e 74 79 70 65 29 7b 74 68 69 73 2e 73  f(c.type){this.s
23a40 65 74 43 6f 6e 74 65 6e 74 54 79 70 65 28 63 2e  etContentType(c.
23a50 74 79 70 65 29 7d 69 66 28 63 2e 6f 62 6a 26 26  type)}if(c.obj&&
23a60 63 2e 6f 62 6a 20 69 6e 73 74 61 6e 63 65 6f 66  c.obj instanceof
23a70 20 61 2e 41 53 4e 31 4f 62 6a 65 63 74 29 7b 74   a.ASN1Object){t
23a80 68 69 73 2e 64 43 6f 6e 74 65 6e 74 3d 63 2e 6f  his.dContent=c.o
23a90 62 6a 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67  bj}}};YAHOO.lang
23aa0 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e  .extend(KJUR.asn
23ab0 31 2e 63 6d 73 2e 43 6f 6e 74 65 6e 74 49 6e 66  1.cms.ContentInf
23ac0 6f 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31  o,KJUR.asn1.ASN1
23ad0 4f 62 6a 65 63 74 29 3b 4b 4a 55 52 2e 61 73 6e  Object);KJUR.asn
23ae0 31 2e 63 6d 73 2e 53 69 67 6e 65 64 44 61 74 61  1.cms.SignedData
23af0 3d 66 75 6e 63 74 69 6f 6e 28 63 29 7b 4b 4a 55  =function(c){KJU
23b00 52 2e 61 73 6e 31 2e 63 6d 73 2e 53 69 67 6e 65  R.asn1.cms.Signe
23b10 64 44 61 74 61 2e 73 75 70 65 72 63 6c 61 73 73  dData.superclass
23b20 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c  .constructor.cal
23b30 6c 28 74 68 69 73 29 3b 76 61 72 20 61 3d 4b 4a  l(this);var a=KJ
23b40 55 52 2e 61 73 6e 31 3b 76 61 72 20 62 3d 4b 4a  UR.asn1;var b=KJ
23b50 55 52 2e 61 73 6e 31 2e 63 6d 73 3b 76 61 72 20  UR.asn1.cms;var 
23b60 64 3d 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39  d=KJUR.asn1.x509
23b70 3b 74 68 69 73 2e 64 43 4d 53 56 65 72 73 69 6f  ;this.dCMSVersio
23b80 6e 3d 6e 65 77 20 61 2e 44 45 52 49 6e 74 65 67  n=new a.DERInteg
23b90 65 72 28 7b 22 69 6e 74 22 3a 31 7d 29 3b 74 68  er({"int":1});th
23ba0 69 73 2e 64 44 69 67 65 73 74 41 6c 67 73 3d 6e  is.dDigestAlgs=n
23bb0 75 6c 6c 3b 74 68 69 73 2e 64 69 67 65 73 74 41  ull;this.digestA
23bc0 6c 67 4e 61 6d 65 4c 69 73 74 3d 5b 5d 3b 74 68  lgNameList=[];th
23bd0 69 73 2e 64 45 6e 63 61 70 43 6f 6e 74 65 6e 74  is.dEncapContent
23be0 49 6e 66 6f 3d 6e 65 77 20 62 2e 45 6e 63 61 70  Info=new b.Encap
23bf0 73 75 6c 61 74 65 64 43 6f 6e 74 65 6e 74 49 6e  sulatedContentIn
23c00 66 6f 28 29 3b 74 68 69 73 2e 64 43 65 72 74 73  fo();this.dCerts
23c10 3d 6e 75 6c 6c 3b 74 68 69 73 2e 63 65 72 74 69  =null;this.certi
23c20 66 69 63 61 74 65 4c 69 73 74 3d 5b 5d 3b 74 68  ficateList=[];th
23c30 69 73 2e 63 72 6c 4c 69 73 74 3d 5b 5d 3b 74 68  is.crlList=[];th
23c40 69 73 2e 73 69 67 6e 65 72 49 6e 66 6f 4c 69 73  is.signerInfoLis
23c50 74 3d 5b 6e 65 77 20 62 2e 53 69 67 6e 65 72 49  t=[new b.SignerI
23c60 6e 66 6f 28 29 5d 3b 74 68 69 73 2e 61 64 64 43  nfo()];this.addC
23c70 65 72 74 69 66 69 63 61 74 65 73 42 79 50 45 4d  ertificatesByPEM
23c80 3d 66 75 6e 63 74 69 6f 6e 28 65 29 7b 76 61 72  =function(e){var
23c90 20 66 3d 4b 45 59 55 54 49 4c 2e 67 65 74 48 65   f=KEYUTIL.getHe
23ca0 78 46 72 6f 6d 50 45 4d 28 65 29 3b 76 61 72 20  xFromPEM(e);var 
23cb0 67 3d 6e 65 77 20 61 2e 41 53 4e 31 4f 62 6a 65  g=new a.ASN1Obje
23cc0 63 74 28 29 3b 67 2e 68 54 4c 56 3d 66 3b 74 68  ct();g.hTLV=f;th
23cd0 69 73 2e 63 65 72 74 69 66 69 63 61 74 65 4c 69  is.certificateLi
23ce0 73 74 2e 70 75 73 68 28 67 29 7d 3b 74 68 69 73  st.push(g)};this
23cf0 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78 3d 66  .getEncodedHex=f
23d00 75 6e 63 74 69 6f 6e 28 29 7b 69 66 28 74 79 70  unction(){if(typ
23d10 65 6f 66 20 74 68 69 73 2e 68 54 4c 56 3d 3d 22  eof this.hTLV=="
23d20 73 74 72 69 6e 67 22 29 7b 72 65 74 75 72 6e 20  string"){return 
23d30 74 68 69 73 2e 68 54 4c 56 7d 69 66 28 74 68 69  this.hTLV}if(thi
23d40 73 2e 64 44 69 67 65 73 74 41 6c 67 73 3d 3d 6e  s.dDigestAlgs==n
23d50 75 6c 6c 29 7b 76 61 72 20 6b 3d 5b 5d 3b 66 6f  ull){var k=[];fo
23d60 72 28 76 61 72 20 6a 3d 30 3b 6a 3c 74 68 69 73  r(var j=0;j<this
23d70 2e 64 69 67 65 73 74 41 6c 67 4e 61 6d 65 4c 69  .digestAlgNameLi
23d80 73 74 2e 6c 65 6e 67 74 68 3b 6a 2b 2b 29 7b 76  st.length;j++){v
23d90 61 72 20 68 3d 74 68 69 73 2e 64 69 67 65 73 74  ar h=this.digest
23da0 41 6c 67 4e 61 6d 65 4c 69 73 74 5b 6a 5d 3b 76  AlgNameList[j];v
23db0 61 72 20 6d 3d 6e 65 77 20 64 2e 41 6c 67 6f 72  ar m=new d.Algor
23dc0 69 74 68 6d 49 64 65 6e 74 69 66 69 65 72 28 7b  ithmIdentifier({
23dd0 6e 61 6d 65 3a 68 7d 29 3b 6b 2e 70 75 73 68 28  name:h});k.push(
23de0 6d 29 7d 74 68 69 73 2e 64 44 69 67 65 73 74 41  m)}this.dDigestA
23df0 6c 67 73 3d 6e 65 77 20 61 2e 44 45 52 53 65 74  lgs=new a.DERSet
23e00 28 7b 61 72 72 61 79 3a 6b 7d 29 7d 76 61 72 20  ({array:k})}var 
23e10 65 3d 5b 74 68 69 73 2e 64 43 4d 53 56 65 72 73  e=[this.dCMSVers
23e20 69 6f 6e 2c 74 68 69 73 2e 64 44 69 67 65 73 74  ion,this.dDigest
23e30 41 6c 67 73 2c 74 68 69 73 2e 64 45 6e 63 61 70  Algs,this.dEncap
23e40 43 6f 6e 74 65 6e 74 49 6e 66 6f 5d 3b 69 66 28  ContentInfo];if(
23e50 74 68 69 73 2e 64 43 65 72 74 73 3d 3d 6e 75 6c  this.dCerts==nul
23e60 6c 29 7b 69 66 28 74 68 69 73 2e 63 65 72 74 69  l){if(this.certi
23e70 66 69 63 61 74 65 4c 69 73 74 2e 6c 65 6e 67 74  ficateList.lengt
23e80 68 3e 30 29 7b 76 61 72 20 6c 3d 6e 65 77 20 61  h>0){var l=new a
23e90 2e 44 45 52 53 65 74 28 7b 61 72 72 61 79 3a 74  .DERSet({array:t
23ea0 68 69 73 2e 63 65 72 74 69 66 69 63 61 74 65 4c  his.certificateL
23eb0 69 73 74 7d 29 3b 74 68 69 73 2e 64 43 65 72 74  ist});this.dCert
23ec0 73 3d 6e 65 77 20 61 2e 44 45 52 54 61 67 67 65  s=new a.DERTagge
23ed0 64 4f 62 6a 65 63 74 28 7b 6f 62 6a 3a 6c 2c 74  dObject({obj:l,t
23ee0 61 67 3a 22 61 30 22 2c 65 78 70 6c 69 63 69 74  ag:"a0",explicit
23ef0 3a 66 61 6c 73 65 7d 29 7d 7d 69 66 28 74 68 69  :false})}}if(thi
23f00 73 2e 64 43 65 72 74 73 21 3d 6e 75 6c 6c 29 7b  s.dCerts!=null){
23f10 65 2e 70 75 73 68 28 74 68 69 73 2e 64 43 65 72  e.push(this.dCer
23f20 74 73 29 7d 76 61 72 20 67 3d 6e 65 77 20 61 2e  ts)}var g=new a.
23f30 44 45 52 53 65 74 28 7b 61 72 72 61 79 3a 74 68  DERSet({array:th
23f40 69 73 2e 73 69 67 6e 65 72 49 6e 66 6f 4c 69 73  is.signerInfoLis
23f50 74 7d 29 3b 65 2e 70 75 73 68 28 67 29 3b 76 61  t});e.push(g);va
23f60 72 20 66 3d 6e 65 77 20 61 2e 44 45 52 53 65 71  r f=new a.DERSeq
23f70 75 65 6e 63 65 28 7b 61 72 72 61 79 3a 65 7d 29  uence({array:e})
23f80 3b 74 68 69 73 2e 68 54 4c 56 3d 66 2e 67 65 74  ;this.hTLV=f.get
23f90 45 6e 63 6f 64 65 64 48 65 78 28 29 3b 72 65 74  EncodedHex();ret
23fa0 75 72 6e 20 74 68 69 73 2e 68 54 4c 56 7d 3b 74  urn this.hTLV};t
23fb0 68 69 73 2e 67 65 74 43 6f 6e 74 65 6e 74 49 6e  his.getContentIn
23fc0 66 6f 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 74 68  fo=function(){th
23fd0 69 73 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78  is.getEncodedHex
23fe0 28 29 3b 76 61 72 20 65 3d 6e 65 77 20 62 2e 43  ();var e=new b.C
23ff0 6f 6e 74 65 6e 74 49 6e 66 6f 28 7b 74 79 70 65  ontentInfo({type
24000 3a 22 73 69 67 6e 65 64 2d 64 61 74 61 22 2c 6f  :"signed-data",o
24010 62 6a 3a 74 68 69 73 7d 29 3b 72 65 74 75 72 6e  bj:this});return
24020 20 65 7d 3b 74 68 69 73 2e 67 65 74 43 6f 6e 74   e};this.getCont
24030 65 6e 74 49 6e 66 6f 45 6e 63 6f 64 65 64 48 65  entInfoEncodedHe
24040 78 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 76 61 72  x=function(){var
24050 20 65 3d 74 68 69 73 2e 67 65 74 43 6f 6e 74 65   e=this.getConte
24060 6e 74 49 6e 66 6f 28 29 3b 76 61 72 20 66 3d 65  ntInfo();var f=e
24070 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78 28 29  .getEncodedHex()
24080 3b 72 65 74 75 72 6e 20 66 7d 3b 74 68 69 73 2e  ;return f};this.
24090 67 65 74 50 45 4d 3d 66 75 6e 63 74 69 6f 6e 28  getPEM=function(
240a0 29 7b 76 61 72 20 65 3d 74 68 69 73 2e 67 65 74  ){var e=this.get
240b0 43 6f 6e 74 65 6e 74 49 6e 66 6f 45 6e 63 6f 64  ContentInfoEncod
240c0 65 64 48 65 78 28 29 3b 76 61 72 20 66 3d 61 2e  edHex();var f=a.
240d0 41 53 4e 31 55 74 69 6c 2e 67 65 74 50 45 4d 53  ASN1Util.getPEMS
240e0 74 72 69 6e 67 46 72 6f 6d 48 65 78 28 65 2c 22  tringFromHex(e,"
240f0 43 4d 53 22 29 3b 72 65 74 75 72 6e 20 66 7d 7d  CMS");return f}}
24100 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65  ;YAHOO.lang.exte
24110 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73  nd(KJUR.asn1.cms
24120 2e 53 69 67 6e 65 64 44 61 74 61 2c 4b 4a 55 52  .SignedData,KJUR
24130 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74  .asn1.ASN1Object
24140 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 2e  );KJUR.asn1.cms.
24150 43 4d 53 55 74 69 6c 3d 6e 65 77 20 66 75 6e 63  CMSUtil=new func
24160 74 69 6f 6e 28 29 7b 7d 3b 4b 4a 55 52 2e 61 73  tion(){};KJUR.as
24170 6e 31 2e 63 6d 73 2e 43 4d 53 55 74 69 6c 2e 6e  n1.cms.CMSUtil.n
24180 65 77 53 69 67 6e 65 64 44 61 74 61 3d 66 75 6e  ewSignedData=fun
24190 63 74 69 6f 6e 28 61 29 7b 76 61 72 20 68 3d 4b  ction(a){var h=K
241a0 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 3b 76 61 72  JUR.asn1.cms;var
241b0 20 67 3d 4b 4a 55 52 2e 61 73 6e 31 2e 63 61 64   g=KJUR.asn1.cad
241c0 65 73 3b 76 61 72 20 66 3d 6e 65 77 20 68 2e 53  es;var f=new h.S
241d0 69 67 6e 65 64 44 61 74 61 28 29 3b 66 2e 64 45  ignedData();f.dE
241e0 6e 63 61 70 43 6f 6e 74 65 6e 74 49 6e 66 6f 2e  ncapContentInfo.
241f0 73 65 74 43 6f 6e 74 65 6e 74 56 61 6c 75 65 28  setContentValue(
24200 61 2e 63 6f 6e 74 65 6e 74 29 3b 69 66 28 74 79  a.content);if(ty
24210 70 65 6f 66 20 61 2e 63 65 72 74 73 3d 3d 22 6f  peof a.certs=="o
24220 62 6a 65 63 74 22 29 7b 66 6f 72 28 76 61 72 20  bject"){for(var 
24230 62 3d 30 3b 62 3c 61 2e 63 65 72 74 73 2e 6c 65  b=0;b<a.certs.le
24240 6e 67 74 68 3b 62 2b 2b 29 7b 66 2e 61 64 64 43  ngth;b++){f.addC
24250 65 72 74 69 66 69 63 61 74 65 73 42 79 50 45 4d  ertificatesByPEM
24260 28 61 2e 63 65 72 74 73 5b 62 5d 29 7d 7d 66 2e  (a.certs[b])}}f.
24270 73 69 67 6e 65 72 49 6e 66 6f 4c 69 73 74 3d 5b  signerInfoList=[
24280 5d 3b 66 6f 72 28 76 61 72 20 62 3d 30 3b 62 3c  ];for(var b=0;b<
24290 61 2e 73 69 67 6e 65 72 49 6e 66 6f 73 2e 6c 65  a.signerInfos.le
242a0 6e 67 74 68 3b 62 2b 2b 29 7b 76 61 72 20 64 3d  ngth;b++){var d=
242b0 61 2e 73 69 67 6e 65 72 49 6e 66 6f 73 5b 62 5d  a.signerInfos[b]
242c0 3b 76 61 72 20 63 3d 6e 65 77 20 68 2e 53 69 67  ;var c=new h.Sig
242d0 6e 65 72 49 6e 66 6f 28 29 3b 63 2e 73 65 74 53  nerInfo();c.setS
242e0 69 67 6e 65 72 49 64 65 6e 74 69 66 69 65 72 28  ignerIdentifier(
242f0 64 2e 73 69 67 6e 65 72 43 65 72 74 29 3b 63 2e  d.signerCert);c.
24300 73 65 74 46 6f 72 43 6f 6e 74 65 6e 74 41 6e 64  setForContentAnd
24310 48 61 73 68 28 7b 73 64 4f 62 6a 3a 66 2c 65 63  Hash({sdObj:f,ec
24320 69 4f 62 6a 3a 66 2e 64 45 6e 63 61 70 43 6f 6e  iObj:f.dEncapCon
24330 74 65 6e 74 49 6e 66 6f 2c 68 61 73 68 41 6c 67  tentInfo,hashAlg
24340 3a 64 2e 68 61 73 68 41 6c 67 7d 29 3b 66 6f 72  :d.hashAlg});for
24350 28 61 74 74 72 4e 61 6d 65 20 69 6e 20 64 2e 73  (attrName in d.s
24360 41 74 74 72 29 7b 76 61 72 20 6a 3d 64 2e 73 41  Attr){var j=d.sA
24370 74 74 72 5b 61 74 74 72 4e 61 6d 65 5d 3b 69 66  ttr[attrName];if
24380 28 61 74 74 72 4e 61 6d 65 3d 3d 22 53 69 67 6e  (attrName=="Sign
24390 69 6e 67 54 69 6d 65 22 29 7b 76 61 72 20 65 3d  ingTime"){var e=
243a0 6e 65 77 20 68 2e 53 69 67 6e 69 6e 67 54 69 6d  new h.SigningTim
243b0 65 28 6a 29 3b 63 2e 64 53 69 67 6e 65 64 41 74  e(j);c.dSignedAt
243c0 74 72 73 2e 61 64 64 28 65 29 7d 69 66 28 61 74  trs.add(e)}if(at
243d0 74 72 4e 61 6d 65 3d 3d 22 53 69 67 6e 69 6e 67  trName=="Signing
243e0 43 65 72 74 69 66 69 63 61 74 65 22 29 7b 76 61  Certificate"){va
243f0 72 20 65 3d 6e 65 77 20 68 2e 53 69 67 6e 69 6e  r e=new h.Signin
24400 67 43 65 72 74 69 66 69 63 61 74 65 28 6a 29 3b  gCertificate(j);
24410 63 2e 64 53 69 67 6e 65 64 41 74 74 72 73 2e 61  c.dSignedAttrs.a
24420 64 64 28 65 29 7d 69 66 28 61 74 74 72 4e 61 6d  dd(e)}if(attrNam
24430 65 3d 3d 22 53 69 67 6e 69 6e 67 43 65 72 74 69  e=="SigningCerti
24440 66 69 63 61 74 65 56 32 22 29 7b 76 61 72 20 65  ficateV2"){var e
24450 3d 6e 65 77 20 68 2e 53 69 67 6e 69 6e 67 43 65  =new h.SigningCe
24460 72 74 69 66 69 63 61 74 65 56 32 28 6a 29 3b 63  rtificateV2(j);c
24470 2e 64 53 69 67 6e 65 64 41 74 74 72 73 2e 61 64  .dSignedAttrs.ad
24480 64 28 65 29 7d 69 66 28 61 74 74 72 4e 61 6d 65  d(e)}if(attrName
24490 3d 3d 22 53 69 67 6e 61 74 75 72 65 50 6f 6c 69  =="SignaturePoli
244a0 63 79 49 64 65 6e 74 69 66 69 65 72 22 29 7b 76  cyIdentifier"){v
244b0 61 72 20 65 3d 6e 65 77 20 67 2e 53 69 67 6e 61  ar e=new g.Signa
244c0 74 75 72 65 50 6f 6c 69 63 79 49 64 65 6e 74 69  turePolicyIdenti
244d0 66 69 65 72 28 6a 29 3b 63 2e 64 53 69 67 6e 65  fier(j);c.dSigne
244e0 64 41 74 74 72 73 2e 61 64 64 28 65 29 7d 7d 63  dAttrs.add(e)}}c
244f0 2e 73 69 67 6e 28 64 2e 73 69 67 6e 65 72 50 72  .sign(d.signerPr
24500 76 4b 65 79 2c 64 2e 73 69 67 41 6c 67 29 3b 66  vKey,d.sigAlg);f
24510 2e 73 69 67 6e 65 72 49 6e 66 6f 4c 69 73 74 2e  .signerInfoList.
24520 70 75 73 68 28 63 29 7d 72 65 74 75 72 6e 20 66  push(c)}return f
24530 7d 3b 0a 2f 2a 21 20 61 73 6e 31 74 73 70 2d 31  };./*! asn1tsp-1
24540 2e 30 2e 31 2e 6a 73 20 28 63 29 20 32 30 31 34  .0.1.js (c) 2014
24550 20 4b 65 6e 6a 69 20 55 72 75 73 68 69 6d 61 20   Kenji Urushima 
24560 7c 20 6b 6a 75 72 2e 67 69 74 68 75 62 2e 63 6f  | kjur.github.co
24570 6d 2f 6a 73 72 73 61 73 69 67 6e 2f 6c 69 63 65  m/jsrsasign/lice
24580 6e 73 65 0a 20 2a 2f 0a 69 66 28 74 79 70 65 6f  nse. */.if(typeo
24590 66 20 4b 4a 55 52 3d 3d 22 75 6e 64 65 66 69 6e  f KJUR=="undefin
245a0 65 64 22 7c 7c 21 4b 4a 55 52 29 7b 4b 4a 55 52  ed"||!KJUR){KJUR
245b0 3d 7b 7d 7d 69 66 28 74 79 70 65 6f 66 20 4b 4a  ={}}if(typeof KJ
245c0 55 52 2e 61 73 6e 31 3d 3d 22 75 6e 64 65 66 69  UR.asn1=="undefi
245d0 6e 65 64 22 7c 7c 21 4b 4a 55 52 2e 61 73 6e 31  ned"||!KJUR.asn1
245e0 29 7b 4b 4a 55 52 2e 61 73 6e 31 3d 7b 7d 7d 69  ){KJUR.asn1={}}i
245f0 66 28 74 79 70 65 6f 66 20 4b 4a 55 52 2e 61 73  f(typeof KJUR.as
24600 6e 31 2e 74 73 70 3d 3d 22 75 6e 64 65 66 69 6e  n1.tsp=="undefin
24610 65 64 22 7c 7c 21 4b 4a 55 52 2e 61 73 6e 31 2e  ed"||!KJUR.asn1.
24620 74 73 70 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e 74  tsp){KJUR.asn1.t
24630 73 70 3d 7b 7d 7d 4b 4a 55 52 2e 61 73 6e 31 2e  sp={}}KJUR.asn1.
24640 74 73 70 2e 41 63 63 75 72 61 63 79 3d 66 75 6e  tsp.Accuracy=fun
24650 63 74 69 6f 6e 28 62 29 7b 4b 4a 55 52 2e 61 73  ction(b){KJUR.as
24660 6e 31 2e 74 73 70 2e 41 63 63 75 72 61 63 79 2e  n1.tsp.Accuracy.
24670 73 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74  superclass.const
24680 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73  ructor.call(this
24690 29 3b 76 61 72 20 61 3d 4b 4a 55 52 2e 61 73 6e  );var a=KJUR.asn
246a0 31 3b 74 68 69 73 2e 73 65 63 6f 6e 64 73 3d 6e  1;this.seconds=n
246b0 75 6c 6c 3b 74 68 69 73 2e 6d 69 6c 6c 69 73 3d  ull;this.millis=
246c0 6e 75 6c 6c 3b 74 68 69 73 2e 6d 69 63 72 6f 73  null;this.micros
246d0 3d 6e 75 6c 6c 3b 74 68 69 73 2e 67 65 74 45 6e  =null;this.getEn
246e0 63 6f 64 65 64 48 65 78 3d 66 75 6e 63 74 69 6f  codedHex=functio
246f0 6e 28 29 7b 76 61 72 20 65 3d 6e 75 6c 6c 3b 76  n(){var e=null;v
24700 61 72 20 67 3d 6e 75 6c 6c 3b 76 61 72 20 69 3d  ar g=null;var i=
24710 6e 75 6c 6c 3b 76 61 72 20 63 3d 5b 5d 3b 69 66  null;var c=[];if
24720 28 74 68 69 73 2e 73 65 63 6f 6e 64 73 21 3d 6e  (this.seconds!=n
24730 75 6c 6c 29 7b 65 3d 6e 65 77 20 61 2e 44 45 52  ull){e=new a.DER
24740 49 6e 74 65 67 65 72 28 7b 22 69 6e 74 22 3a 74  Integer({"int":t
24750 68 69 73 2e 73 65 63 6f 6e 64 73 7d 29 3b 63 2e  his.seconds});c.
24760 70 75 73 68 28 65 29 7d 69 66 28 74 68 69 73 2e  push(e)}if(this.
24770 6d 69 6c 6c 69 73 21 3d 6e 75 6c 6c 29 7b 76 61  millis!=null){va
24780 72 20 68 3d 6e 65 77 20 61 2e 44 45 52 49 6e 74  r h=new a.DERInt
24790 65 67 65 72 28 7b 22 69 6e 74 22 3a 74 68 69 73  eger({"int":this
247a0 2e 6d 69 6c 6c 69 73 7d 29 3b 67 3d 6e 65 77 20  .millis});g=new 
247b0 61 2e 44 45 52 54 61 67 67 65 64 4f 62 6a 65 63  a.DERTaggedObjec
247c0 74 28 7b 6f 62 6a 3a 68 2c 74 61 67 3a 22 38 30  t({obj:h,tag:"80
247d0 22 2c 65 78 70 6c 69 63 69 74 3a 66 61 6c 73 65  ",explicit:false
247e0 7d 29 3b 63 2e 70 75 73 68 28 67 29 7d 69 66 28  });c.push(g)}if(
247f0 74 68 69 73 2e 6d 69 63 72 6f 73 21 3d 6e 75 6c  this.micros!=nul
24800 6c 29 7b 76 61 72 20 66 3d 6e 65 77 20 61 2e 44  l){var f=new a.D
24810 45 52 49 6e 74 65 67 65 72 28 7b 22 69 6e 74 22  ERInteger({"int"
24820 3a 74 68 69 73 2e 6d 69 63 72 6f 73 7d 29 3b 69  :this.micros});i
24830 3d 6e 65 77 20 61 2e 44 45 52 54 61 67 67 65 64  =new a.DERTagged
24840 4f 62 6a 65 63 74 28 7b 6f 62 6a 3a 66 2c 74 61  Object({obj:f,ta
24850 67 3a 22 38 31 22 2c 65 78 70 6c 69 63 69 74 3a  g:"81",explicit:
24860 66 61 6c 73 65 7d 29 3b 63 2e 70 75 73 68 28 69  false});c.push(i
24870 29 7d 76 61 72 20 64 3d 6e 65 77 20 61 2e 44 45  )}var d=new a.DE
24880 52 53 65 71 75 65 6e 63 65 28 7b 61 72 72 61 79  RSequence({array
24890 3a 63 7d 29 3b 74 68 69 73 2e 68 54 4c 56 3d 64  :c});this.hTLV=d
248a0 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78 28 29  .getEncodedHex()
248b0 3b 72 65 74 75 72 6e 20 74 68 69 73 2e 68 54 4c  ;return this.hTL
248c0 56 7d 3b 69 66 28 74 79 70 65 6f 66 20 62 21 3d  V};if(typeof b!=
248d0 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 69 66 28  "undefined"){if(
248e0 74 79 70 65 6f 66 20 62 2e 73 65 63 6f 6e 64 73  typeof b.seconds
248f0 3d 3d 22 6e 75 6d 62 65 72 22 29 7b 74 68 69 73  =="number"){this
24900 2e 73 65 63 6f 6e 64 73 3d 62 2e 73 65 63 6f 6e  .seconds=b.secon
24910 64 73 7d 69 66 28 74 79 70 65 6f 66 20 62 2e 6d  ds}if(typeof b.m
24920 69 6c 6c 69 73 3d 3d 22 6e 75 6d 62 65 72 22 29  illis=="number")
24930 7b 74 68 69 73 2e 6d 69 6c 6c 69 73 3d 62 2e 6d  {this.millis=b.m
24940 69 6c 6c 69 73 7d 69 66 28 74 79 70 65 6f 66 20  illis}if(typeof 
24950 62 2e 6d 69 63 72 6f 73 3d 3d 22 6e 75 6d 62 65  b.micros=="numbe
24960 72 22 29 7b 74 68 69 73 2e 6d 69 63 72 6f 73 3d  r"){this.micros=
24970 62 2e 6d 69 63 72 6f 73 7d 7d 7d 3b 59 41 48 4f  b.micros}}};YAHO
24980 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a  O.lang.extend(KJ
24990 55 52 2e 61 73 6e 31 2e 74 73 70 2e 41 63 63 75  UR.asn1.tsp.Accu
249a0 72 61 63 79 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41  racy,KJUR.asn1.A
249b0 53 4e 31 4f 62 6a 65 63 74 29 3b 4b 4a 55 52 2e  SN1Object);KJUR.
249c0 61 73 6e 31 2e 74 73 70 2e 4d 65 73 73 61 67 65  asn1.tsp.Message
249d0 49 6d 70 72 69 6e 74 3d 66 75 6e 63 74 69 6f 6e  Imprint=function
249e0 28 62 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e 74 73  (b){KJUR.asn1.ts
249f0 70 2e 4d 65 73 73 61 67 65 49 6d 70 72 69 6e 74  p.MessageImprint
24a00 2e 73 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73  .superclass.cons
24a10 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69  tructor.call(thi
24a20 73 29 3b 76 61 72 20 61 3d 4b 4a 55 52 2e 61 73  s);var a=KJUR.as
24a30 6e 31 3b 76 61 72 20 63 3d 4b 4a 55 52 2e 61 73  n1;var c=KJUR.as
24a40 6e 31 2e 78 35 30 39 3b 74 68 69 73 2e 64 48 61  n1.x509;this.dHa
24a50 73 68 41 6c 67 3d 6e 75 6c 6c 3b 74 68 69 73 2e  shAlg=null;this.
24a60 64 48 61 73 68 56 61 6c 75 65 3d 6e 75 6c 6c 3b  dHashValue=null;
24a70 74 68 69 73 2e 67 65 74 45 6e 63 6f 64 65 64 48  this.getEncodedH
24a80 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 69 66  ex=function(){if
24a90 28 74 79 70 65 6f 66 20 74 68 69 73 2e 68 54 4c  (typeof this.hTL
24aa0 56 3d 3d 22 73 74 72 69 6e 67 22 29 7b 72 65 74  V=="string"){ret
24ab0 75 72 6e 20 74 68 69 73 2e 68 54 4c 56 7d 76 61  urn this.hTLV}va
24ac0 72 20 64 3d 6e 65 77 20 61 2e 44 45 52 53 65 71  r d=new a.DERSeq
24ad0 75 65 6e 63 65 28 7b 61 72 72 61 79 3a 5b 74 68  uence({array:[th
24ae0 69 73 2e 64 48 61 73 68 41 6c 67 2c 74 68 69 73  is.dHashAlg,this
24af0 2e 64 48 61 73 68 56 61 6c 75 65 5d 7d 29 3b 72  .dHashValue]});r
24b00 65 74 75 72 6e 20 64 2e 67 65 74 45 6e 63 6f 64  eturn d.getEncod
24b10 65 64 48 65 78 28 29 7d 3b 69 66 28 74 79 70 65  edHex()};if(type
24b20 6f 66 20 62 21 3d 22 75 6e 64 65 66 69 6e 65 64  of b!="undefined
24b30 22 29 7b 69 66 28 74 79 70 65 6f 66 20 62 2e 68  "){if(typeof b.h
24b40 61 73 68 41 6c 67 3d 3d 22 73 74 72 69 6e 67 22  ashAlg=="string"
24b50 29 7b 74 68 69 73 2e 64 48 61 73 68 41 6c 67 3d  ){this.dHashAlg=
24b60 6e 65 77 20 63 2e 41 6c 67 6f 72 69 74 68 6d 49  new c.AlgorithmI
24b70 64 65 6e 74 69 66 69 65 72 28 7b 6e 61 6d 65 3a  dentifier({name:
24b80 62 2e 68 61 73 68 41 6c 67 7d 29 7d 69 66 28 74  b.hashAlg})}if(t
24b90 79 70 65 6f 66 20 62 2e 68 61 73 68 56 61 6c 75  ypeof b.hashValu
24ba0 65 3d 3d 22 73 74 72 69 6e 67 22 29 7b 74 68 69  e=="string"){thi
24bb0 73 2e 64 48 61 73 68 56 61 6c 75 65 3d 6e 65 77  s.dHashValue=new
24bc0 20 61 2e 44 45 52 4f 63 74 65 74 53 74 72 69 6e   a.DEROctetStrin
24bd0 67 28 7b 68 65 78 3a 62 2e 68 61 73 68 56 61 6c  g({hex:b.hashVal
24be0 75 65 7d 29 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61  ue})}}};YAHOO.la
24bf0 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e 61  ng.extend(KJUR.a
24c00 73 6e 31 2e 74 73 70 2e 4d 65 73 73 61 67 65 49  sn1.tsp.MessageI
24c10 6d 70 72 69 6e 74 2c 4b 4a 55 52 2e 61 73 6e 31  mprint,KJUR.asn1
24c20 2e 41 53 4e 31 4f 62 6a 65 63 74 29 3b 4b 4a 55  .ASN1Object);KJU
24c30 52 2e 61 73 6e 31 2e 74 73 70 2e 54 69 6d 65 53  R.asn1.tsp.TimeS
24c40 74 61 6d 70 52 65 71 3d 66 75 6e 63 74 69 6f 6e  tampReq=function
24c50 28 63 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e 74 73  (c){KJUR.asn1.ts
24c60 70 2e 54 69 6d 65 53 74 61 6d 70 52 65 71 2e 73  p.TimeStampReq.s
24c70 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72  uperclass.constr
24c80 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29  uctor.call(this)
24c90 3b 76 61 72 20 61 3d 4b 4a 55 52 2e 61 73 6e 31  ;var a=KJUR.asn1
24ca0 3b 76 61 72 20 62 3d 4b 4a 55 52 2e 61 73 6e 31  ;var b=KJUR.asn1
24cb0 2e 74 73 70 3b 74 68 69 73 2e 64 56 65 72 73 69  .tsp;this.dVersi
24cc0 6f 6e 3d 6e 65 77 20 61 2e 44 45 52 49 6e 74 65  on=new a.DERInte
24cd0 67 65 72 28 7b 22 69 6e 74 22 3a 31 7d 29 3b 74  ger({"int":1});t
24ce0 68 69 73 2e 64 4d 65 73 73 61 67 65 49 6d 70 72  his.dMessageImpr
24cf0 69 6e 74 3d 6e 75 6c 6c 3b 74 68 69 73 2e 64 50  int=null;this.dP
24d00 6f 6c 69 63 79 3d 6e 75 6c 6c 3b 74 68 69 73 2e  olicy=null;this.
24d10 64 4e 6f 6e 63 65 3d 6e 75 6c 6c 3b 74 68 69 73  dNonce=null;this
24d20 2e 63 65 72 74 52 65 71 3d 74 72 75 65 3b 74 68  .certReq=true;th
24d30 69 73 2e 73 65 74 4d 65 73 73 61 67 65 49 6d 70  is.setMessageImp
24d40 72 69 6e 74 3d 66 75 6e 63 74 69 6f 6e 28 64 29  rint=function(d)
24d50 7b 69 66 28 64 20 69 6e 73 74 61 6e 63 65 6f 66  {if(d instanceof
24d60 20 4b 4a 55 52 2e 61 73 6e 31 2e 74 73 70 2e 4d   KJUR.asn1.tsp.M
24d70 65 73 73 61 67 65 49 6d 70 72 69 6e 74 29 7b 74  essageImprint){t
24d80 68 69 73 2e 64 4d 65 73 73 61 67 65 49 6d 70 72  his.dMessageImpr
24d90 69 6e 74 3d 64 3b 72 65 74 75 72 6e 7d 69 66 28  int=d;return}if(
24da0 74 79 70 65 6f 66 20 64 3d 3d 22 6f 62 6a 65 63  typeof d=="objec
24db0 74 22 29 7b 74 68 69 73 2e 64 4d 65 73 73 61 67  t"){this.dMessag
24dc0 65 49 6d 70 72 69 6e 74 3d 6e 65 77 20 62 2e 4d  eImprint=new b.M
24dd0 65 73 73 61 67 65 49 6d 70 72 69 6e 74 28 64 29  essageImprint(d)
24de0 7d 7d 3b 74 68 69 73 2e 67 65 74 45 6e 63 6f 64  }};this.getEncod
24df0 65 64 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29  edHex=function()
24e00 7b 69 66 28 74 68 69 73 2e 64 4d 65 73 73 61 67  {if(this.dMessag
24e10 65 49 6d 70 72 69 6e 74 3d 3d 6e 75 6c 6c 29 7b  eImprint==null){
24e20 74 68 72 6f 77 22 6d 65 73 73 61 67 65 49 6d 70  throw"messageImp
24e30 72 69 6e 74 20 73 68 61 6c 6c 20 62 65 20 73 70  rint shall be sp
24e40 65 63 69 66 69 65 64 22 7d 76 61 72 20 64 3d 5b  ecified"}var d=[
24e50 74 68 69 73 2e 64 56 65 72 73 69 6f 6e 2c 74 68  this.dVersion,th
24e60 69 73 2e 64 4d 65 73 73 61 67 65 49 6d 70 72 69  is.dMessageImpri
24e70 6e 74 5d 3b 69 66 28 74 68 69 73 2e 64 50 6f 6c  nt];if(this.dPol
24e80 69 63 79 21 3d 6e 75 6c 6c 29 7b 64 2e 70 75 73  icy!=null){d.pus
24e90 68 28 74 68 69 73 2e 64 50 6f 6c 69 63 79 29 7d  h(this.dPolicy)}
24ea0 69 66 28 74 68 69 73 2e 64 4e 6f 6e 63 65 21 3d  if(this.dNonce!=
24eb0 6e 75 6c 6c 29 7b 64 2e 70 75 73 68 28 74 68 69  null){d.push(thi
24ec0 73 2e 64 4e 6f 6e 63 65 29 7d 69 66 28 74 68 69  s.dNonce)}if(thi
24ed0 73 2e 63 65 72 74 52 65 71 29 7b 64 2e 70 75 73  s.certReq){d.pus
24ee0 68 28 6e 65 77 20 61 2e 44 45 52 42 6f 6f 6c 65  h(new a.DERBoole
24ef0 61 6e 28 29 29 7d 76 61 72 20 65 3d 6e 65 77 20  an())}var e=new 
24f00 61 2e 44 45 52 53 65 71 75 65 6e 63 65 28 7b 61  a.DERSequence({a
24f10 72 72 61 79 3a 64 7d 29 3b 74 68 69 73 2e 68 54  rray:d});this.hT
24f20 4c 56 3d 65 2e 67 65 74 45 6e 63 6f 64 65 64 48  LV=e.getEncodedH
24f30 65 78 28 29 3b 72 65 74 75 72 6e 20 74 68 69 73  ex();return this
24f40 2e 68 54 4c 56 7d 3b 69 66 28 74 79 70 65 6f 66  .hTLV};if(typeof
24f50 20 63 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29   c!="undefined")
24f60 7b 69 66 28 74 79 70 65 6f 66 20 63 2e 6d 69 3d  {if(typeof c.mi=
24f70 3d 22 6f 62 6a 65 63 74 22 29 7b 74 68 69 73 2e  ="object"){this.
24f80 73 65 74 4d 65 73 73 61 67 65 49 6d 70 72 69 6e  setMessageImprin
24f90 74 28 63 2e 6d 69 29 7d 69 66 28 74 79 70 65 6f  t(c.mi)}if(typeo
24fa0 66 20 63 2e 70 6f 6c 69 63 79 3d 3d 22 6f 62 6a  f c.policy=="obj
24fb0 65 63 74 22 29 7b 74 68 69 73 2e 64 50 6f 6c 69  ect"){this.dPoli
24fc0 63 79 3d 6e 65 77 20 61 2e 44 45 52 4f 62 6a 65  cy=new a.DERObje
24fd0 63 74 49 64 65 6e 74 69 66 69 65 72 28 63 2e 70  ctIdentifier(c.p
24fe0 6f 6c 69 63 79 29 7d 69 66 28 74 79 70 65 6f 66  olicy)}if(typeof
24ff0 20 63 2e 6e 6f 6e 63 65 3d 3d 22 6f 62 6a 65 63   c.nonce=="objec
25000 74 22 29 7b 74 68 69 73 2e 64 4e 6f 6e 63 65 3d  t"){this.dNonce=
25010 6e 65 77 20 61 2e 44 45 52 49 6e 74 65 67 65 72  new a.DERInteger
25020 28 63 2e 6e 6f 6e 63 65 29 7d 69 66 28 74 79 70  (c.nonce)}if(typ
25030 65 6f 66 20 63 2e 63 65 72 74 72 65 71 3d 3d 22  eof c.certreq=="
25040 62 6f 6f 6c 65 61 6e 22 29 7b 74 68 69 73 2e 63  boolean"){this.c
25050 65 72 74 52 65 71 3d 63 2e 63 65 72 74 72 65 71  ertReq=c.certreq
25060 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65  }}};YAHOO.lang.e
25070 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e  xtend(KJUR.asn1.
25080 74 73 70 2e 54 69 6d 65 53 74 61 6d 70 52 65 71  tsp.TimeStampReq
25090 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 4f  ,KJUR.asn1.ASN1O
250a0 62 6a 65 63 74 29 3b 4b 4a 55 52 2e 61 73 6e 31  bject);KJUR.asn1
250b0 2e 74 73 70 2e 54 53 54 49 6e 66 6f 3d 66 75 6e  .tsp.TSTInfo=fun
250c0 63 74 69 6f 6e 28 63 29 7b 4b 4a 55 52 2e 61 73  ction(c){KJUR.as
250d0 6e 31 2e 74 73 70 2e 54 53 54 49 6e 66 6f 2e 73  n1.tsp.TSTInfo.s
250e0 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72  uperclass.constr
250f0 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29  uctor.call(this)
25100 3b 76 61 72 20 61 3d 4b 4a 55 52 2e 61 73 6e 31  ;var a=KJUR.asn1
25110 3b 76 61 72 20 64 3d 4b 4a 55 52 2e 61 73 6e 31  ;var d=KJUR.asn1
25120 2e 78 35 30 39 3b 76 61 72 20 62 3d 4b 4a 55 52  .x509;var b=KJUR
25130 2e 61 73 6e 31 2e 74 73 70 3b 74 68 69 73 2e 64  .asn1.tsp;this.d
25140 56 65 72 73 69 6f 6e 3d 6e 65 77 20 61 2e 44 45  Version=new a.DE
25150 52 49 6e 74 65 67 65 72 28 7b 22 69 6e 74 22 3a  RInteger({"int":
25160 31 7d 29 3b 74 68 69 73 2e 64 50 6f 6c 69 63 79  1});this.dPolicy
25170 3d 6e 75 6c 6c 3b 74 68 69 73 2e 64 4d 65 73 73  =null;this.dMess
25180 61 67 65 49 6d 70 72 69 6e 74 3d 6e 75 6c 6c 3b  ageImprint=null;
25190 74 68 69 73 2e 64 53 65 72 69 61 6c 4e 75 6d 62  this.dSerialNumb
251a0 65 72 3d 6e 75 6c 6c 3b 74 68 69 73 2e 64 47 65  er=null;this.dGe
251b0 6e 54 69 6d 65 3d 6e 75 6c 6c 3b 74 68 69 73 2e  nTime=null;this.
251c0 64 41 63 63 75 72 61 63 79 3d 6e 75 6c 6c 3b 74  dAccuracy=null;t
251d0 68 69 73 2e 64 4f 72 64 65 72 69 6e 67 3d 6e 75  his.dOrdering=nu
251e0 6c 6c 3b 74 68 69 73 2e 64 4e 6f 6e 63 65 3d 6e  ll;this.dNonce=n
251f0 75 6c 6c 3b 74 68 69 73 2e 64 54 73 61 3d 6e 75  ull;this.dTsa=nu
25200 6c 6c 3b 74 68 69 73 2e 67 65 74 45 6e 63 6f 64  ll;this.getEncod
25210 65 64 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29  edHex=function()
25220 7b 76 61 72 20 65 3d 5b 74 68 69 73 2e 64 56 65  {var e=[this.dVe
25230 72 73 69 6f 6e 5d 3b 69 66 28 74 68 69 73 2e 64  rsion];if(this.d
25240 50 6f 6c 69 63 79 3d 3d 6e 75 6c 6c 29 7b 74 68  Policy==null){th
25250 72 6f 77 22 70 6f 6c 69 63 79 20 73 68 61 6c 6c  row"policy shall
25260 20 62 65 20 73 70 65 63 69 66 69 65 64 2e 22 7d   be specified."}
25270 65 2e 70 75 73 68 28 74 68 69 73 2e 64 50 6f 6c  e.push(this.dPol
25280 69 63 79 29 3b 69 66 28 74 68 69 73 2e 64 4d 65  icy);if(this.dMe
25290 73 73 61 67 65 49 6d 70 72 69 6e 74 3d 3d 6e 75  ssageImprint==nu
252a0 6c 6c 29 7b 74 68 72 6f 77 22 6d 65 73 73 61 67  ll){throw"messag
252b0 65 49 6d 70 72 69 6e 74 20 73 68 61 6c 6c 20 62  eImprint shall b
252c0 65 20 73 70 65 63 69 66 69 65 64 2e 22 7d 65 2e  e specified."}e.
252d0 70 75 73 68 28 74 68 69 73 2e 64 4d 65 73 73 61  push(this.dMessa
252e0 67 65 49 6d 70 72 69 6e 74 29 3b 69 66 28 74 68  geImprint);if(th
252f0 69 73 2e 64 53 65 72 69 61 6c 4e 75 6d 62 65 72  is.dSerialNumber
25300 3d 3d 6e 75 6c 6c 29 7b 74 68 72 6f 77 22 73 65  ==null){throw"se
25310 72 69 61 6c 4e 75 6d 62 65 72 20 73 68 61 6c 6c  rialNumber shall
25320 20 62 65 20 73 70 65 63 69 66 69 65 64 2e 22 7d   be specified."}
25330 65 2e 70 75 73 68 28 74 68 69 73 2e 64 53 65 72  e.push(this.dSer
25340 69 61 6c 4e 75 6d 62 65 72 29 3b 69 66 28 74 68  ialNumber);if(th
25350 69 73 2e 64 47 65 6e 54 69 6d 65 3d 3d 6e 75 6c  is.dGenTime==nul
25360 6c 29 7b 74 68 72 6f 77 22 67 65 6e 54 69 6d 65  l){throw"genTime
25370 20 73 68 61 6c 6c 20 62 65 20 73 70 65 63 69 66   shall be specif
25380 69 65 64 2e 22 7d 65 2e 70 75 73 68 28 74 68 69  ied."}e.push(thi
25390 73 2e 64 47 65 6e 54 69 6d 65 29 3b 69 66 28 74  s.dGenTime);if(t
253a0 68 69 73 2e 64 41 63 63 75 72 61 63 79 21 3d 6e  his.dAccuracy!=n
253b0 75 6c 6c 29 7b 65 2e 70 75 73 68 28 74 68 69 73  ull){e.push(this
253c0 2e 64 41 63 63 75 72 61 63 79 29 7d 69 66 28 74  .dAccuracy)}if(t
253d0 68 69 73 2e 64 4f 72 64 65 72 69 6e 67 21 3d 6e  his.dOrdering!=n
253e0 75 6c 6c 29 7b 65 2e 70 75 73 68 28 74 68 69 73  ull){e.push(this
253f0 2e 64 4f 72 64 65 72 69 6e 67 29 7d 69 66 28 74  .dOrdering)}if(t
25400 68 69 73 2e 64 4e 6f 6e 63 65 21 3d 6e 75 6c 6c  his.dNonce!=null
25410 29 7b 65 2e 70 75 73 68 28 74 68 69 73 2e 64 4e  ){e.push(this.dN
25420 6f 6e 63 65 29 7d 69 66 28 74 68 69 73 2e 64 54  once)}if(this.dT
25430 73 61 21 3d 6e 75 6c 6c 29 7b 65 2e 70 75 73 68  sa!=null){e.push
25440 28 74 68 69 73 2e 64 54 73 61 29 7d 76 61 72 20  (this.dTsa)}var 
25450 66 3d 6e 65 77 20 61 2e 44 45 52 53 65 71 75 65  f=new a.DERSeque
25460 6e 63 65 28 7b 61 72 72 61 79 3a 65 7d 29 3b 74  nce({array:e});t
25470 68 69 73 2e 68 54 4c 56 3d 66 2e 67 65 74 45 6e  his.hTLV=f.getEn
25480 63 6f 64 65 64 48 65 78 28 29 3b 72 65 74 75 72  codedHex();retur
25490 6e 20 74 68 69 73 2e 68 54 4c 56 7d 3b 69 66 28  n this.hTLV};if(
254a0 74 79 70 65 6f 66 20 63 21 3d 22 75 6e 64 65 66  typeof c!="undef
254b0 69 6e 65 64 22 29 7b 69 66 28 74 79 70 65 6f 66  ined"){if(typeof
254c0 20 63 2e 70 6f 6c 69 63 79 3d 3d 22 73 74 72 69   c.policy=="stri
254d0 6e 67 22 29 7b 69 66 28 21 63 2e 70 6f 6c 69 63  ng"){if(!c.polic
254e0 79 2e 6d 61 74 63 68 28 2f 5e 5b 30 2d 39 2e 5d  y.match(/^[0-9.]
254f0 2b 24 2f 29 29 7b 74 68 72 6f 77 22 70 6f 6c 69  +$/)){throw"poli
25500 63 79 20 73 68 61 6c 6c 20 62 65 20 6f 69 64 20  cy shall be oid 
25510 6c 69 6b 65 20 30 2e 31 2e 34 2e 31 33 34 22 7d  like 0.1.4.134"}
25520 74 68 69 73 2e 64 50 6f 6c 69 63 79 3d 6e 65 77  this.dPolicy=new
25530 20 61 2e 44 45 52 4f 62 6a 65 63 74 49 64 65 6e   a.DERObjectIden
25540 74 69 66 69 65 72 28 7b 6f 69 64 3a 63 2e 70 6f  tifier({oid:c.po
25550 6c 69 63 79 7d 29 7d 69 66 28 74 79 70 65 6f 66  licy})}if(typeof
25560 20 63 2e 6d 65 73 73 61 67 65 49 6d 70 72 69 6e   c.messageImprin
25570 74 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b  t!="undefined"){
25580 74 68 69 73 2e 64 4d 65 73 73 61 67 65 49 6d 70  this.dMessageImp
25590 72 69 6e 74 3d 6e 65 77 20 62 2e 4d 65 73 73 61  rint=new b.Messa
255a0 67 65 49 6d 70 72 69 6e 74 28 63 2e 6d 65 73 73  geImprint(c.mess
255b0 61 67 65 49 6d 70 72 69 6e 74 29 7d 69 66 28 74  ageImprint)}if(t
255c0 79 70 65 6f 66 20 63 2e 73 65 72 69 61 6c 4e 75  ypeof c.serialNu
255d0 6d 62 65 72 21 3d 22 75 6e 64 65 66 69 6e 65 64  mber!="undefined
255e0 22 29 7b 74 68 69 73 2e 64 53 65 72 69 61 6c 4e  "){this.dSerialN
255f0 75 6d 62 65 72 3d 6e 65 77 20 61 2e 44 45 52 49  umber=new a.DERI
25600 6e 74 65 67 65 72 28 63 2e 73 65 72 69 61 6c 4e  nteger(c.serialN
25610 75 6d 62 65 72 29 7d 69 66 28 74 79 70 65 6f 66  umber)}if(typeof
25620 20 63 2e 67 65 6e 54 69 6d 65 21 3d 22 75 6e 64   c.genTime!="und
25630 65 66 69 6e 65 64 22 29 7b 74 68 69 73 2e 64 47  efined"){this.dG
25640 65 6e 54 69 6d 65 3d 6e 65 77 20 61 2e 44 45 52  enTime=new a.DER
25650 47 65 6e 65 72 61 6c 69 7a 65 64 54 69 6d 65 28  GeneralizedTime(
25660 63 2e 67 65 6e 54 69 6d 65 29 7d 69 66 28 74 79  c.genTime)}if(ty
25670 70 65 6f 66 20 63 2e 61 63 63 75 72 61 63 79 21  peof c.accuracy!
25680 3d 22 75 6e 64 65 66 69 6e 64 22 29 7b 74 68 69  ="undefind"){thi
25690 73 2e 64 41 63 63 75 72 61 63 79 3d 6e 65 77 20  s.dAccuracy=new 
256a0 62 2e 41 63 63 75 72 61 63 79 28 63 2e 61 63 63  b.Accuracy(c.acc
256b0 75 72 61 63 79 29 7d 69 66 28 74 79 70 65 6f 66  uracy)}if(typeof
256c0 20 63 2e 6f 72 64 65 72 69 6e 67 21 3d 22 75 6e   c.ordering!="un
256d0 64 65 66 69 6e 65 64 22 26 26 63 2e 6f 72 64 65  defined"&&c.orde
256e0 72 69 6e 67 3d 3d 74 72 75 65 29 7b 74 68 69 73  ring==true){this
256f0 2e 64 4f 72 64 65 72 69 6e 67 3d 6e 65 77 20 61  .dOrdering=new a
25700 2e 44 45 52 42 6f 6f 6c 65 61 6e 28 29 7d 69 66  .DERBoolean()}if
25710 28 74 79 70 65 6f 66 20 63 2e 6e 6f 6e 63 65 21  (typeof c.nonce!
25720 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68  ="undefined"){th
25730 69 73 2e 64 4e 6f 6e 63 65 3d 6e 65 77 20 61 2e  is.dNonce=new a.
25740 44 45 52 49 6e 74 65 67 65 72 28 63 2e 6e 6f 6e  DERInteger(c.non
25750 63 65 29 7d 69 66 28 74 79 70 65 6f 66 20 63 2e  ce)}if(typeof c.
25760 74 73 61 21 3d 22 75 6e 64 65 66 69 6e 65 64 22  tsa!="undefined"
25770 29 7b 74 68 69 73 2e 64 54 73 61 3d 6e 65 77 20  ){this.dTsa=new 
25780 64 2e 58 35 30 30 4e 61 6d 65 28 63 2e 74 73 61  d.X500Name(c.tsa
25790 29 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e  )}}};YAHOO.lang.
257a0 65 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31  extend(KJUR.asn1
257b0 2e 74 73 70 2e 54 53 54 49 6e 66 6f 2c 4b 4a 55  .tsp.TSTInfo,KJU
257c0 52 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63  R.asn1.ASN1Objec
257d0 74 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 74 73 70  t);KJUR.asn1.tsp
257e0 2e 54 69 6d 65 53 74 61 6d 70 52 65 73 70 3d 66  .TimeStampResp=f
257f0 75 6e 63 74 69 6f 6e 28 63 29 7b 4b 4a 55 52 2e  unction(c){KJUR.
25800 61 73 6e 31 2e 74 73 70 2e 54 69 6d 65 53 74 61  asn1.tsp.TimeSta
25810 6d 70 52 65 73 70 2e 73 75 70 65 72 63 6c 61 73  mpResp.superclas
25820 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61  s.constructor.ca
25830 6c 6c 28 74 68 69 73 29 3b 76 61 72 20 61 3d 4b  ll(this);var a=K
25840 4a 55 52 2e 61 73 6e 31 3b 76 61 72 20 62 3d 4b  JUR.asn1;var b=K
25850 4a 55 52 2e 61 73 6e 31 2e 74 73 70 3b 74 68 69  JUR.asn1.tsp;thi
25860 73 2e 64 53 74 61 74 75 73 3d 6e 75 6c 6c 3b 74  s.dStatus=null;t
25870 68 69 73 2e 64 54 53 54 3d 6e 75 6c 6c 3b 74 68  his.dTST=null;th
25880 69 73 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78  is.getEncodedHex
25890 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 69 66 28 74  =function(){if(t
258a0 68 69 73 2e 64 53 74 61 74 75 73 3d 3d 6e 75 6c  his.dStatus==nul
258b0 6c 29 7b 74 68 72 6f 77 22 73 74 61 74 75 73 20  l){throw"status 
258c0 73 68 61 6c 6c 20 62 65 20 73 70 65 63 69 66 69  shall be specifi
258d0 65 64 22 7d 76 61 72 20 64 3d 5b 74 68 69 73 2e  ed"}var d=[this.
258e0 64 53 74 61 74 75 73 5d 3b 69 66 28 74 68 69 73  dStatus];if(this
258f0 2e 64 54 53 54 21 3d 6e 75 6c 6c 29 7b 64 2e 70  .dTST!=null){d.p
25900 75 73 68 28 74 68 69 73 2e 64 54 53 54 29 7d 76  ush(this.dTST)}v
25910 61 72 20 65 3d 6e 65 77 20 61 2e 44 45 52 53 65  ar e=new a.DERSe
25920 71 75 65 6e 63 65 28 7b 61 72 72 61 79 3a 64 7d  quence({array:d}
25930 29 3b 74 68 69 73 2e 68 54 4c 56 3d 65 2e 67 65  );this.hTLV=e.ge
25940 74 45 6e 63 6f 64 65 64 48 65 78 28 29 3b 72 65  tEncodedHex();re
25950 74 75 72 6e 20 74 68 69 73 2e 68 54 4c 56 7d 3b  turn this.hTLV};
25960 69 66 28 74 79 70 65 6f 66 20 63 21 3d 22 75 6e  if(typeof c!="un
25970 64 65 66 69 6e 65 64 22 29 7b 69 66 28 74 79 70  defined"){if(typ
25980 65 6f 66 20 63 2e 73 74 61 74 75 73 3d 3d 22 6f  eof c.status=="o
25990 62 6a 65 63 74 22 29 7b 74 68 69 73 2e 64 53 74  bject"){this.dSt
259a0 61 74 75 73 3d 6e 65 77 20 62 2e 50 4b 49 53 74  atus=new b.PKISt
259b0 61 74 75 73 49 6e 66 6f 28 63 2e 73 74 61 74 75  atusInfo(c.statu
259c0 73 29 7d 69 66 28 74 79 70 65 6f 66 20 63 2e 74  s)}if(typeof c.t
259d0 73 74 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 26  st!="undefined"&
259e0 26 63 2e 74 73 74 20 69 6e 73 74 61 6e 63 65 6f  &c.tst instanceo
259f0 66 20 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31  f KJUR.asn1.ASN1
25a00 4f 62 6a 65 63 74 29 7b 74 68 69 73 2e 64 54 53  Object){this.dTS
25a10 54 3d 63 2e 74 73 74 2e 67 65 74 43 6f 6e 74 65  T=c.tst.getConte
25a20 6e 74 49 6e 66 6f 28 29 7d 7d 7d 3b 59 41 48 4f  ntInfo()}}};YAHO
25a30 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a  O.lang.extend(KJ
25a40 55 52 2e 61 73 6e 31 2e 74 73 70 2e 54 69 6d 65  UR.asn1.tsp.Time
25a50 53 74 61 6d 70 52 65 73 70 2c 4b 4a 55 52 2e 61  StampResp,KJUR.a
25a60 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74 29 3b  sn1.ASN1Object);
25a70 4b 4a 55 52 2e 61 73 6e 31 2e 74 73 70 2e 50 4b  KJUR.asn1.tsp.PK
25a80 49 53 74 61 74 75 73 49 6e 66 6f 3d 66 75 6e 63  IStatusInfo=func
25a90 74 69 6f 6e 28 63 29 7b 4b 4a 55 52 2e 61 73 6e  tion(c){KJUR.asn
25aa0 31 2e 74 73 70 2e 50 4b 49 53 74 61 74 75 73 49  1.tsp.PKIStatusI
25ab0 6e 66 6f 2e 73 75 70 65 72 63 6c 61 73 73 2e 63  nfo.superclass.c
25ac0 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28  onstructor.call(
25ad0 74 68 69 73 29 3b 76 61 72 20 61 3d 4b 4a 55 52  this);var a=KJUR
25ae0 2e 61 73 6e 31 3b 76 61 72 20 62 3d 4b 4a 55 52  .asn1;var b=KJUR
25af0 2e 61 73 6e 31 2e 74 73 70 3b 74 68 69 73 2e 64  .asn1.tsp;this.d
25b00 53 74 61 74 75 73 3d 6e 75 6c 6c 3b 74 68 69 73  Status=null;this
25b10 2e 64 53 74 61 74 75 73 53 74 72 69 6e 67 3d 6e  .dStatusString=n
25b20 75 6c 6c 3b 74 68 69 73 2e 64 46 61 69 6c 75 72  ull;this.dFailur
25b30 65 49 6e 66 6f 3d 6e 75 6c 6c 3b 74 68 69 73 2e  eInfo=null;this.
25b40 67 65 74 45 6e 63 6f 64 65 64 48 65 78 3d 66 75  getEncodedHex=fu
25b50 6e 63 74 69 6f 6e 28 29 7b 69 66 28 74 68 69 73  nction(){if(this
25b60 2e 64 53 74 61 74 75 73 3d 3d 6e 75 6c 6c 29 7b  .dStatus==null){
25b70 74 68 72 6f 77 22 73 74 61 74 75 73 20 73 68 61  throw"status sha
25b80 6c 6c 20 62 65 20 73 70 65 63 69 66 69 65 64 22  ll be specified"
25b90 7d 76 61 72 20 64 3d 5b 74 68 69 73 2e 64 53 74  }var d=[this.dSt
25ba0 61 74 75 73 5d 3b 69 66 28 74 68 69 73 2e 64 53  atus];if(this.dS
25bb0 74 61 74 75 73 53 74 72 69 6e 67 21 3d 6e 75 6c  tatusString!=nul
25bc0 6c 29 7b 64 2e 70 75 73 68 28 74 68 69 73 2e 64  l){d.push(this.d
25bd0 53 74 61 74 75 73 53 74 72 69 6e 67 29 7d 69 66  StatusString)}if
25be0 28 74 68 69 73 2e 64 46 61 69 6c 75 72 65 49 6e  (this.dFailureIn
25bf0 66 6f 21 3d 6e 75 6c 6c 29 7b 64 2e 70 75 73 68  fo!=null){d.push
25c00 28 74 68 69 73 2e 64 46 61 69 6c 75 72 65 49 6e  (this.dFailureIn
25c10 66 6f 29 7d 76 61 72 20 65 3d 6e 65 77 20 61 2e  fo)}var e=new a.
25c20 44 45 52 53 65 71 75 65 6e 63 65 28 7b 61 72 72  DERSequence({arr
25c30 61 79 3a 64 7d 29 3b 74 68 69 73 2e 68 54 4c 56  ay:d});this.hTLV
25c40 3d 65 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78  =e.getEncodedHex
25c50 28 29 3b 72 65 74 75 72 6e 20 74 68 69 73 2e 68  ();return this.h
25c60 54 4c 56 7d 3b 69 66 28 74 79 70 65 6f 66 20 63  TLV};if(typeof c
25c70 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 69  !="undefined"){i
25c80 66 28 74 79 70 65 6f 66 20 63 2e 73 74 61 74 75  f(typeof c.statu
25c90 73 3d 3d 22 6f 62 6a 65 63 74 22 29 7b 74 68 69  s=="object"){thi
25ca0 73 2e 64 53 74 61 74 75 73 3d 6e 65 77 20 62 2e  s.dStatus=new b.
25cb0 50 4b 49 53 74 61 74 75 73 28 63 2e 73 74 61 74  PKIStatus(c.stat
25cc0 75 73 29 7d 69 66 28 74 79 70 65 6f 66 20 63 2e  us)}if(typeof c.
25cd0 73 74 61 74 73 74 72 3d 3d 22 6f 62 6a 65 63 74  statstr=="object
25ce0 22 29 7b 74 68 69 73 2e 64 53 74 61 74 75 73 53  "){this.dStatusS
25cf0 74 72 69 6e 67 3d 6e 65 77 20 62 2e 50 4b 49 46  tring=new b.PKIF
25d00 72 65 65 54 65 78 74 28 7b 61 72 72 61 79 3a 63  reeText({array:c
25d10 2e 73 74 61 74 73 74 72 7d 29 7d 69 66 28 74 79  .statstr})}if(ty
25d20 70 65 6f 66 20 63 2e 66 61 69 6c 69 6e 66 6f 3d  peof c.failinfo=
25d30 3d 22 6f 62 6a 65 63 74 22 29 7b 74 68 69 73 2e  ="object"){this.
25d40 64 46 61 69 6c 75 72 65 49 6e 66 6f 3d 6e 65 77  dFailureInfo=new
25d50 20 62 2e 50 4b 49 46 61 69 6c 75 72 65 49 6e 66   b.PKIFailureInf
25d60 6f 28 63 2e 66 61 69 6c 69 6e 66 6f 29 7d 7d 7d  o(c.failinfo)}}}
25d70 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65  ;YAHOO.lang.exte
25d80 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 74 73 70  nd(KJUR.asn1.tsp
25d90 2e 50 4b 49 53 74 61 74 75 73 49 6e 66 6f 2c 4b  .PKIStatusInfo,K
25da0 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a  JUR.asn1.ASN1Obj
25db0 65 63 74 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 74  ect);KJUR.asn1.t
25dc0 73 70 2e 50 4b 49 53 74 61 74 75 73 3d 66 75 6e  sp.PKIStatus=fun
25dd0 63 74 69 6f 6e 28 65 29 7b 4b 4a 55 52 2e 61 73  ction(e){KJUR.as
25de0 6e 31 2e 74 73 70 2e 50 4b 49 53 74 61 74 75 73  n1.tsp.PKIStatus
25df0 2e 73 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73  .superclass.cons
25e00 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69  tructor.call(thi
25e10 73 29 3b 76 61 72 20 61 3d 4b 4a 55 52 2e 61 73  s);var a=KJUR.as
25e20 6e 31 3b 76 61 72 20 62 3d 4b 4a 55 52 2e 61 73  n1;var b=KJUR.as
25e30 6e 31 2e 74 73 70 3b 76 61 72 20 64 3d 6e 75 6c  n1.tsp;var d=nul
25e40 6c 3b 74 68 69 73 2e 67 65 74 45 6e 63 6f 64 65  l;this.getEncode
25e50 64 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29 7b  dHex=function(){
25e60 74 68 69 73 2e 68 54 4c 56 3d 74 68 69 73 2e 64  this.hTLV=this.d
25e70 53 74 61 74 75 73 2e 67 65 74 45 6e 63 6f 64 65  Status.getEncode
25e80 64 48 65 78 28 29 3b 72 65 74 75 72 6e 20 74 68  dHex();return th
25e90 69 73 2e 68 54 4c 56 7d 3b 69 66 28 74 79 70 65  is.hTLV};if(type
25ea0 6f 66 20 65 21 3d 22 75 6e 64 65 66 69 6e 65 64  of e!="undefined
25eb0 22 29 7b 69 66 28 74 79 70 65 6f 66 20 65 2e 6e  "){if(typeof e.n
25ec0 61 6d 65 21 3d 22 75 6e 64 65 66 69 6e 65 64 22  ame!="undefined"
25ed0 29 7b 76 61 72 20 63 3d 62 2e 50 4b 49 53 74 61  ){var c=b.PKISta
25ee0 74 75 73 2e 76 61 6c 75 65 4c 69 73 74 3b 69 66  tus.valueList;if
25ef0 28 74 79 70 65 6f 66 20 63 5b 65 2e 6e 61 6d 65  (typeof c[e.name
25f00 5d 3d 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b  ]=="undefined"){
25f10 74 68 72 6f 77 22 6e 61 6d 65 20 75 6e 64 65 66  throw"name undef
25f20 69 6e 65 64 3a 20 22 2b 65 2e 6e 61 6d 65 7d 74  ined: "+e.name}t
25f30 68 69 73 2e 64 53 74 61 74 75 73 3d 6e 65 77 20  his.dStatus=new 
25f40 61 2e 44 45 52 49 6e 74 65 67 65 72 28 7b 22 69  a.DERInteger({"i
25f50 6e 74 22 3a 63 5b 65 2e 6e 61 6d 65 5d 7d 29 7d  nt":c[e.name]})}
25f60 65 6c 73 65 7b 74 68 69 73 2e 64 53 74 61 74 75  else{this.dStatu
25f70 73 3d 6e 65 77 20 61 2e 44 45 52 49 6e 74 65 67  s=new a.DERInteg
25f80 65 72 28 65 29 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c  er(e)}}};YAHOO.l
25f90 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e  ang.extend(KJUR.
25fa0 61 73 6e 31 2e 74 73 70 2e 50 4b 49 53 74 61 74  asn1.tsp.PKIStat
25fb0 75 73 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e  us,KJUR.asn1.ASN
25fc0 31 4f 62 6a 65 63 74 29 3b 4b 4a 55 52 2e 61 73  1Object);KJUR.as
25fd0 6e 31 2e 74 73 70 2e 50 4b 49 53 74 61 74 75 73  n1.tsp.PKIStatus
25fe0 2e 76 61 6c 75 65 4c 69 73 74 3d 7b 67 72 61 6e  .valueList={gran
25ff0 74 65 64 3a 30 2c 67 72 61 6e 74 65 64 57 69 74  ted:0,grantedWit
26000 68 4d 6f 64 73 3a 31 2c 72 65 6a 65 63 74 69 6f  hMods:1,rejectio
26010 6e 3a 32 2c 77 61 69 74 69 6e 67 3a 33 2c 72 65  n:2,waiting:3,re
26020 76 6f 63 61 74 69 6f 6e 57 61 72 6e 69 6e 67 3a  vocationWarning:
26030 34 2c 72 65 76 6f 63 61 74 69 6f 6e 4e 6f 74 69  4,revocationNoti
26040 66 69 63 61 74 69 6f 6e 3a 35 7d 3b 4b 4a 55 52  fication:5};KJUR
26050 2e 61 73 6e 31 2e 74 73 70 2e 50 4b 49 46 72 65  .asn1.tsp.PKIFre
26060 65 54 65 78 74 3d 66 75 6e 63 74 69 6f 6e 28 62  eText=function(b
26070 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e 74 73 70 2e  ){KJUR.asn1.tsp.
26080 50 4b 49 46 72 65 65 54 65 78 74 2e 73 75 70 65  PKIFreeText.supe
26090 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63 74  rclass.construct
260a0 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29 3b 76 61  or.call(this);va
260b0 72 20 61 3d 4b 4a 55 52 2e 61 73 6e 31 3b 74 68  r a=KJUR.asn1;th
260c0 69 73 2e 74 65 78 74 4c 69 73 74 3d 5b 5d 3b 74  is.textList=[];t
260d0 68 69 73 2e 67 65 74 45 6e 63 6f 64 65 64 48 65  his.getEncodedHe
260e0 78 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 76 61 72  x=function(){var
260f0 20 63 3d 5b 5d 3b 66 6f 72 28 76 61 72 20 65 3d   c=[];for(var e=
26100 30 3b 65 3c 74 68 69 73 2e 74 65 78 74 4c 69 73  0;e<this.textLis
26110 74 2e 6c 65 6e 67 74 68 3b 65 2b 2b 29 7b 63 2e  t.length;e++){c.
26120 70 75 73 68 28 6e 65 77 20 61 2e 44 45 52 55 54  push(new a.DERUT
26130 46 38 53 74 72 69 6e 67 28 7b 73 74 72 3a 74 68  F8String({str:th
26140 69 73 2e 74 65 78 74 4c 69 73 74 5b 65 5d 7d 29  is.textList[e]})
26150 29 7d 76 61 72 20 64 3d 6e 65 77 20 61 2e 44 45  )}var d=new a.DE
26160 52 53 65 71 75 65 6e 63 65 28 7b 61 72 72 61 79  RSequence({array
26170 3a 63 7d 29 3b 74 68 69 73 2e 68 54 4c 56 3d 64  :c});this.hTLV=d
26180 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78 28 29  .getEncodedHex()
26190 3b 72 65 74 75 72 6e 20 74 68 69 73 2e 68 54 4c  ;return this.hTL
261a0 56 7d 3b 69 66 28 74 79 70 65 6f 66 20 62 21 3d  V};if(typeof b!=
261b0 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 69 66 28  "undefined"){if(
261c0 74 79 70 65 6f 66 20 62 2e 61 72 72 61 79 3d 3d  typeof b.array==
261d0 22 6f 62 6a 65 63 74 22 29 7b 74 68 69 73 2e 74  "object"){this.t
261e0 65 78 74 4c 69 73 74 3d 62 2e 61 72 72 61 79 7d  extList=b.array}
261f0 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78  }};YAHOO.lang.ex
26200 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 74  tend(KJUR.asn1.t
26210 73 70 2e 50 4b 49 46 72 65 65 54 65 78 74 2c 4b  sp.PKIFreeText,K
26220 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a  JUR.asn1.ASN1Obj
26230 65 63 74 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 74  ect);KJUR.asn1.t
26240 73 70 2e 50 4b 49 46 61 69 6c 75 72 65 49 6e 66  sp.PKIFailureInf
26250 6f 3d 66 75 6e 63 74 69 6f 6e 28 64 29 7b 4b 4a  o=function(d){KJ
26260 55 52 2e 61 73 6e 31 2e 74 73 70 2e 50 4b 49 46  UR.asn1.tsp.PKIF
26270 61 69 6c 75 72 65 49 6e 66 6f 2e 73 75 70 65 72  ailureInfo.super
26280 63 6c 61 73 73 2e 63 6f 6e 73 74 72 75 63 74 6f  class.constructo
26290 72 2e 63 61 6c 6c 28 74 68 69 73 29 3b 76 61 72  r.call(this);var
262a0 20 61 3d 4b 4a 55 52 2e 61 73 6e 31 3b 76 61 72   a=KJUR.asn1;var
262b0 20 62 3d 4b 4a 55 52 2e 61 73 6e 31 2e 74 73 70   b=KJUR.asn1.tsp
262c0 3b 74 68 69 73 2e 76 61 6c 75 65 3d 6e 75 6c 6c  ;this.value=null
262d0 3b 74 68 69 73 2e 67 65 74 45 6e 63 6f 64 65 64  ;this.getEncoded
262e0 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 69  Hex=function(){i
262f0 66 28 74 68 69 73 2e 76 61 6c 75 65 3d 3d 6e 75  f(this.value==nu
26300 6c 6c 29 7b 74 68 72 6f 77 22 76 61 6c 75 65 20  ll){throw"value 
26310 73 68 61 6c 6c 20 62 65 20 73 70 65 63 69 66 69  shall be specifi
26320 65 64 22 7d 76 61 72 20 65 3d 6e 65 77 20 4e 75  ed"}var e=new Nu
26330 6d 62 65 72 28 74 68 69 73 2e 76 61 6c 75 65 29  mber(this.value)
26340 2e 74 6f 53 74 72 69 6e 67 28 32 29 3b 76 61 72  .toString(2);var
26350 20 66 3d 6e 65 77 20 61 2e 44 45 52 42 69 74 53   f=new a.DERBitS
26360 74 72 69 6e 67 28 29 3b 66 2e 73 65 74 42 79 42  tring();f.setByB
26370 69 6e 61 72 79 53 74 72 69 6e 67 28 65 29 3b 74  inaryString(e);t
26380 68 69 73 2e 68 54 4c 56 3d 66 2e 67 65 74 45 6e  his.hTLV=f.getEn
26390 63 6f 64 65 64 48 65 78 28 29 3b 72 65 74 75 72  codedHex();retur
263a0 6e 20 74 68 69 73 2e 68 54 4c 56 7d 3b 69 66 28  n this.hTLV};if(
263b0 74 79 70 65 6f 66 20 64 21 3d 22 75 6e 64 65 66  typeof d!="undef
263c0 69 6e 65 64 22 29 7b 69 66 28 74 79 70 65 6f 66  ined"){if(typeof
263d0 20 64 2e 6e 61 6d 65 3d 3d 22 73 74 72 69 6e 67   d.name=="string
263e0 22 29 7b 76 61 72 20 63 3d 62 2e 50 4b 49 46 61  "){var c=b.PKIFa
263f0 69 6c 75 72 65 49 6e 66 6f 2e 76 61 6c 75 65 4c  ilureInfo.valueL
26400 69 73 74 3b 69 66 28 74 79 70 65 6f 66 20 63 5b  ist;if(typeof c[
26410 64 2e 6e 61 6d 65 5d 3d 3d 22 75 6e 64 65 66 69  d.name]=="undefi
26420 6e 65 64 22 29 7b 74 68 72 6f 77 22 6e 61 6d 65  ned"){throw"name
26430 20 75 6e 64 65 66 69 6e 65 64 3a 20 22 2b 64 2e   undefined: "+d.
26440 6e 61 6d 65 7d 74 68 69 73 2e 76 61 6c 75 65 3d  name}this.value=
26450 63 5b 64 2e 6e 61 6d 65 5d 7d 65 6c 73 65 7b 69  c[d.name]}else{i
26460 66 28 74 79 70 65 6f 66 20 64 5b 22 69 6e 74 22  f(typeof d["int"
26470 5d 3d 3d 22 6e 75 6d 62 65 72 22 29 7b 74 68 69  ]=="number"){thi
26480 73 2e 76 61 6c 75 65 3d 64 5b 22 69 6e 74 22 5d  s.value=d["int"]
26490 7d 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e  }}}};YAHOO.lang.
264a0 65 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31  extend(KJUR.asn1
264b0 2e 74 73 70 2e 50 4b 49 46 61 69 6c 75 72 65 49  .tsp.PKIFailureI
264c0 6e 66 6f 2c 4b 4a 55 52 2e 61 73 6e 31 2e 41 53  nfo,KJUR.asn1.AS
264d0 4e 31 4f 62 6a 65 63 74 29 3b 4b 4a 55 52 2e 61  N1Object);KJUR.a
264e0 73 6e 31 2e 74 73 70 2e 50 4b 49 46 61 69 6c 75  sn1.tsp.PKIFailu
264f0 72 65 49 6e 66 6f 2e 76 61 6c 75 65 4c 69 73 74  reInfo.valueList
26500 3d 7b 62 61 64 41 6c 67 3a 30 2c 62 61 64 52 65  ={badAlg:0,badRe
26510 71 75 65 73 74 3a 32 2c 62 61 64 44 61 74 61 46  quest:2,badDataF
26520 6f 72 6d 61 74 3a 35 2c 74 69 6d 65 4e 6f 74 41  ormat:5,timeNotA
26530 76 61 69 6c 61 62 6c 65 3a 31 34 2c 75 6e 61 63  vailable:14,unac
26540 63 65 70 74 65 64 50 6f 6c 69 63 79 3a 31 35 2c  ceptedPolicy:15,
26550 75 6e 61 63 63 65 70 74 65 64 45 78 74 65 6e 73  unacceptedExtens
26560 69 6f 6e 3a 31 36 2c 61 64 64 49 6e 66 6f 4e 6f  ion:16,addInfoNo
26570 74 41 76 61 69 6c 61 62 6c 65 3a 31 37 2c 73 79  tAvailable:17,sy
26580 73 74 65 6d 46 61 69 6c 75 72 65 3a 32 35 7d 3b  stemFailure:25};
26590 4b 4a 55 52 2e 61 73 6e 31 2e 74 73 70 2e 41 62  KJUR.asn1.tsp.Ab
265a0 73 74 72 61 63 74 54 53 41 41 64 61 70 74 65 72  stractTSAAdapter
265b0 3d 66 75 6e 63 74 69 6f 6e 28 61 29 7b 74 68 69  =function(a){thi
265c0 73 2e 67 65 74 54 53 54 48 65 78 3d 66 75 6e 63  s.getTSTHex=func
265d0 74 69 6f 6e 28 63 2c 62 29 7b 74 68 72 6f 77 22  tion(c,b){throw"
265e0 6e 6f 74 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20  not implemented 
265f0 79 65 74 22 7d 7d 3b 4b 4a 55 52 2e 61 73 6e 31  yet"}};KJUR.asn1
26600 2e 74 73 70 2e 53 69 6d 70 6c 65 54 53 41 41 64  .tsp.SimpleTSAAd
26610 61 70 74 65 72 3d 66 75 6e 63 74 69 6f 6e 28 61  apter=function(a
26620 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e 74 73 70 2e  ){KJUR.asn1.tsp.
26630 53 69 6d 70 6c 65 54 53 41 41 64 61 70 74 65 72  SimpleTSAAdapter
26640 2e 73 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73  .superclass.cons
26650 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69  tructor.call(thi
26660 73 29 3b 74 68 69 73 2e 70 61 72 61 6d 73 3d 6e  s);this.params=n
26670 75 6c 6c 3b 74 68 69 73 2e 73 65 72 69 61 6c 3d  ull;this.serial=
26680 30 3b 74 68 69 73 2e 67 65 74 54 53 54 48 65 78  0;this.getTSTHex
26690 3d 66 75 6e 63 74 69 6f 6e 28 63 2c 62 29 7b 76  =function(c,b){v
266a0 61 72 20 65 3d 4b 4a 55 52 2e 63 72 79 70 74 6f  ar e=KJUR.crypto
266b0 2e 55 74 69 6c 2e 68 61 73 68 48 65 78 28 63 2c  .Util.hashHex(c,
266c0 62 29 3b 74 68 69 73 2e 70 61 72 61 6d 73 2e 74  b);this.params.t
266d0 73 74 49 6e 66 6f 2e 6d 65 73 73 61 67 65 49 6d  stInfo.messageIm
266e0 70 72 69 6e 74 3d 7b 68 61 73 68 41 6c 67 3a 62  print={hashAlg:b
266f0 2c 68 61 73 68 56 61 6c 75 65 3a 65 7d 3b 74 68  ,hashValue:e};th
26700 69 73 2e 70 61 72 61 6d 73 2e 74 73 74 49 6e 66  is.params.tstInf
26710 6f 2e 73 65 72 69 61 6c 4e 75 6d 62 65 72 3d 7b  o.serialNumber={
26720 22 69 6e 74 22 3a 74 68 69 73 2e 73 65 72 69 61  "int":this.seria
26730 6c 2b 2b 7d 3b 76 61 72 20 64 3d 4d 61 74 68 2e  l++};var d=Math.
26740 66 6c 6f 6f 72 28 4d 61 74 68 2e 72 61 6e 64 6f  floor(Math.rando
26750 6d 28 29 2a 31 30 30 30 30 30 30 30 30 30 29 3b  m()*1000000000);
26760 74 68 69 73 2e 70 61 72 61 6d 73 2e 74 73 74 49  this.params.tstI
26770 6e 66 6f 2e 6e 6f 6e 63 65 3d 7b 22 69 6e 74 22  nfo.nonce={"int"
26780 3a 64 7d 3b 76 61 72 20 66 3d 4b 4a 55 52 2e 61  :d};var f=KJUR.a
26790 73 6e 31 2e 74 73 70 2e 54 53 50 55 74 69 6c 2e  sn1.tsp.TSPUtil.
267a0 6e 65 77 54 69 6d 65 53 74 61 6d 70 54 6f 6b 65  newTimeStampToke
267b0 6e 28 74 68 69 73 2e 70 61 72 61 6d 73 29 3b 72  n(this.params);r
267c0 65 74 75 72 6e 20 66 2e 67 65 74 43 6f 6e 74 65  eturn f.getConte
267d0 6e 74 49 6e 66 6f 45 6e 63 6f 64 65 64 48 65 78  ntInfoEncodedHex
267e0 28 29 7d 3b 69 66 28 74 79 70 65 6f 66 20 61 21  ()};if(typeof a!
267f0 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 74 68  ="undefined"){th
26800 69 73 2e 70 61 72 61 6d 73 3d 61 7d 7d 3b 59 41  is.params=a}};YA
26810 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64 28  HOO.lang.extend(
26820 4b 4a 55 52 2e 61 73 6e 31 2e 74 73 70 2e 53 69  KJUR.asn1.tsp.Si
26830 6d 70 6c 65 54 53 41 41 64 61 70 74 65 72 2c 4b  mpleTSAAdapter,K
26840 4a 55 52 2e 61 73 6e 31 2e 74 73 70 2e 41 62 73  JUR.asn1.tsp.Abs
26850 74 72 61 63 74 54 53 41 41 64 61 70 74 65 72 29  tractTSAAdapter)
26860 3b 4b 4a 55 52 2e 61 73 6e 31 2e 74 73 70 2e 46  ;KJUR.asn1.tsp.F
26870 69 78 65 64 54 53 41 41 64 61 70 74 65 72 3d 66  ixedTSAAdapter=f
26880 75 6e 63 74 69 6f 6e 28 61 29 7b 4b 4a 55 52 2e  unction(a){KJUR.
26890 61 73 6e 31 2e 74 73 70 2e 46 69 78 65 64 54 53  asn1.tsp.FixedTS
268a0 41 41 64 61 70 74 65 72 2e 73 75 70 65 72 63 6c  AAdapter.supercl
268b0 61 73 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e  ass.constructor.
268c0 63 61 6c 6c 28 74 68 69 73 29 3b 74 68 69 73 2e  call(this);this.
268d0 70 61 72 61 6d 73 3d 6e 75 6c 6c 3b 74 68 69 73  params=null;this
268e0 2e 67 65 74 54 53 54 48 65 78 3d 66 75 6e 63 74  .getTSTHex=funct
268f0 69 6f 6e 28 63 2c 62 29 7b 76 61 72 20 64 3d 4b  ion(c,b){var d=K
26900 4a 55 52 2e 63 72 79 70 74 6f 2e 55 74 69 6c 2e  JUR.crypto.Util.
26910 68 61 73 68 48 65 78 28 63 2c 62 29 3b 74 68 69  hashHex(c,b);thi
26920 73 2e 70 61 72 61 6d 73 2e 74 73 74 49 6e 66 6f  s.params.tstInfo
26930 2e 6d 65 73 73 61 67 65 49 6d 70 72 69 6e 74 3d  .messageImprint=
26940 7b 68 61 73 68 41 6c 67 3a 62 2c 68 61 73 68 56  {hashAlg:b,hashV
26950 61 6c 75 65 3a 64 7d 3b 76 61 72 20 65 3d 4b 4a  alue:d};var e=KJ
26960 55 52 2e 61 73 6e 31 2e 74 73 70 2e 54 53 50 55  UR.asn1.tsp.TSPU
26970 74 69 6c 2e 6e 65 77 54 69 6d 65 53 74 61 6d 70  til.newTimeStamp
26980 54 6f 6b 65 6e 28 74 68 69 73 2e 70 61 72 61 6d  Token(this.param
26990 73 29 3b 72 65 74 75 72 6e 20 65 2e 67 65 74 43  s);return e.getC
269a0 6f 6e 74 65 6e 74 49 6e 66 6f 45 6e 63 6f 64 65  ontentInfoEncode
269b0 64 48 65 78 28 29 7d 3b 69 66 28 74 79 70 65 6f  dHex()};if(typeo
269c0 66 20 61 21 3d 22 75 6e 64 65 66 69 6e 65 64 22  f a!="undefined"
269d0 29 7b 74 68 69 73 2e 70 61 72 61 6d 73 3d 61 7d  ){this.params=a}
269e0 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74  };YAHOO.lang.ext
269f0 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 74 73  end(KJUR.asn1.ts
26a00 70 2e 46 69 78 65 64 54 53 41 41 64 61 70 74 65  p.FixedTSAAdapte
26a10 72 2c 4b 4a 55 52 2e 61 73 6e 31 2e 74 73 70 2e  r,KJUR.asn1.tsp.
26a20 41 62 73 74 72 61 63 74 54 53 41 41 64 61 70 74  AbstractTSAAdapt
26a30 65 72 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 74 73  er);KJUR.asn1.ts
26a40 70 2e 54 53 50 55 74 69 6c 3d 6e 65 77 20 66 75  p.TSPUtil=new fu
26a50 6e 63 74 69 6f 6e 28 29 7b 7d 3b 4b 4a 55 52 2e  nction(){};KJUR.
26a60 61 73 6e 31 2e 74 73 70 2e 54 53 50 55 74 69 6c  asn1.tsp.TSPUtil
26a70 2e 6e 65 77 54 69 6d 65 53 74 61 6d 70 54 6f 6b  .newTimeStampTok
26a80 65 6e 3d 66 75 6e 63 74 69 6f 6e 28 62 29 7b 76  en=function(b){v
26a90 61 72 20 6a 3d 4b 4a 55 52 2e 61 73 6e 31 2e 63  ar j=KJUR.asn1.c
26aa0 6d 73 3b 76 61 72 20 61 3d 4b 4a 55 52 2e 61 73  ms;var a=KJUR.as
26ab0 6e 31 2e 74 73 70 3b 76 61 72 20 67 3d 6e 65 77  n1.tsp;var g=new
26ac0 20 6a 2e 53 69 67 6e 65 64 44 61 74 61 28 29 3b   j.SignedData();
26ad0 76 61 72 20 65 3d 6e 65 77 20 61 2e 54 53 54 49  var e=new a.TSTI
26ae0 6e 66 6f 28 62 2e 74 73 74 49 6e 66 6f 29 3b 76  nfo(b.tstInfo);v
26af0 61 72 20 66 3d 65 2e 67 65 74 45 6e 63 6f 64 65  ar f=e.getEncode
26b00 64 48 65 78 28 29 3b 67 2e 64 45 6e 63 61 70 43  dHex();g.dEncapC
26b10 6f 6e 74 65 6e 74 49 6e 66 6f 2e 73 65 74 43 6f  ontentInfo.setCo
26b20 6e 74 65 6e 74 56 61 6c 75 65 28 7b 68 65 78 3a  ntentValue({hex:
26b30 66 7d 29 3b 67 2e 64 45 6e 63 61 70 43 6f 6e 74  f});g.dEncapCont
26b40 65 6e 74 49 6e 66 6f 2e 73 65 74 43 6f 6e 74 65  entInfo.setConte
26b50 6e 74 54 79 70 65 28 22 74 73 74 69 6e 66 6f 22  ntType("tstinfo"
26b60 29 3b 69 66 28 74 79 70 65 6f 66 20 62 2e 63 65  );if(typeof b.ce
26b70 72 74 73 3d 3d 22 6f 62 6a 65 63 74 22 29 7b 66  rts=="object"){f
26b80 6f 72 28 76 61 72 20 63 3d 30 3b 63 3c 62 2e 63  or(var c=0;c<b.c
26b90 65 72 74 73 2e 6c 65 6e 67 74 68 3b 63 2b 2b 29  erts.length;c++)
26ba0 7b 67 2e 61 64 64 43 65 72 74 69 66 69 63 61 74  {g.addCertificat
26bb0 65 73 42 79 50 45 4d 28 62 2e 63 65 72 74 73 5b  esByPEM(b.certs[
26bc0 63 5d 29 7d 7d 76 61 72 20 64 3d 67 2e 73 69 67  c])}}var d=g.sig
26bd0 6e 65 72 49 6e 66 6f 4c 69 73 74 5b 30 5d 3b 64  nerInfoList[0];d
26be0 2e 73 65 74 53 69 67 6e 65 72 49 64 65 6e 74 69  .setSignerIdenti
26bf0 66 69 65 72 28 62 2e 73 69 67 6e 65 72 43 65 72  fier(b.signerCer
26c00 74 29 3b 64 2e 73 65 74 46 6f 72 43 6f 6e 74 65  t);d.setForConte
26c10 6e 74 41 6e 64 48 61 73 68 28 7b 73 64 4f 62 6a  ntAndHash({sdObj
26c20 3a 67 2c 65 63 69 4f 62 6a 3a 67 2e 64 45 6e 63  :g,eciObj:g.dEnc
26c30 61 70 43 6f 6e 74 65 6e 74 49 6e 66 6f 2c 68 61  apContentInfo,ha
26c40 73 68 41 6c 67 3a 62 2e 68 61 73 68 41 6c 67 7d  shAlg:b.hashAlg}
26c50 29 3b 76 61 72 20 68 3d 6e 65 77 20 6a 2e 53 69  );var h=new j.Si
26c60 67 6e 69 6e 67 43 65 72 74 69 66 69 63 61 74 65  gningCertificate
26c70 28 7b 61 72 72 61 79 3a 5b 62 2e 73 69 67 6e 65  ({array:[b.signe
26c80 72 43 65 72 74 5d 7d 29 3b 64 2e 64 53 69 67 6e  rCert]});d.dSign
26c90 65 64 41 74 74 72 73 2e 61 64 64 28 68 29 3b 64  edAttrs.add(h);d
26ca0 2e 73 69 67 6e 28 62 2e 73 69 67 6e 65 72 50 72  .sign(b.signerPr
26cb0 76 4b 65 79 2c 62 2e 73 69 67 41 6c 67 29 3b 72  vKey,b.sigAlg);r
26cc0 65 74 75 72 6e 20 67 7d 3b 4b 4a 55 52 2e 61 73  eturn g};KJUR.as
26cd0 6e 31 2e 74 73 70 2e 54 53 50 55 74 69 6c 2e 70  n1.tsp.TSPUtil.p
26ce0 61 72 73 65 54 69 6d 65 53 74 61 6d 70 52 65 71  arseTimeStampReq
26cf0 3d 66 75 6e 63 74 69 6f 6e 28 64 29 7b 76 61 72  =function(d){var
26d00 20 66 3d 7b 7d 3b 66 2e 63 65 72 74 72 65 71 3d   f={};f.certreq=
26d10 66 61 6c 73 65 3b 76 61 72 20 68 3d 41 53 4e 31  false;var h=ASN1
26d20 48 45 58 2e 67 65 74 50 6f 73 41 72 72 61 79 4f  HEX.getPosArrayO
26d30 66 43 68 69 6c 64 72 65 6e 5f 41 74 4f 62 6a 28  fChildren_AtObj(
26d40 64 2c 30 29 3b 69 66 28 68 2e 6c 65 6e 67 74 68  d,0);if(h.length
26d50 3c 32 29 7b 74 68 72 6f 77 22 54 69 6d 65 53 74  <2){throw"TimeSt
26d60 61 6d 70 52 65 71 20 6d 75 73 74 20 68 61 76 65  ampReq must have
26d70 20 61 74 20 6c 65 61 73 74 20 32 20 69 74 65 6d   at least 2 item
26d80 73 22 7d 76 61 72 20 63 3d 41 53 4e 31 48 45 58  s"}var c=ASN1HEX
26d90 2e 67 65 74 48 65 78 4f 66 54 4c 56 5f 41 74 4f  .getHexOfTLV_AtO
26da0 62 6a 28 64 2c 68 5b 31 5d 29 3b 66 2e 6d 69 3d  bj(d,h[1]);f.mi=
26db0 4b 4a 55 52 2e 61 73 6e 31 2e 74 73 70 2e 54 53  KJUR.asn1.tsp.TS
26dc0 50 55 74 69 6c 2e 70 61 72 73 65 4d 65 73 73 61  PUtil.parseMessa
26dd0 67 65 49 6d 70 72 69 6e 74 28 63 29 3b 66 6f 72  geImprint(c);for
26de0 28 76 61 72 20 65 3d 32 3b 65 3c 68 2e 6c 65 6e  (var e=2;e<h.len
26df0 67 74 68 3b 65 2b 2b 29 7b 76 61 72 20 62 3d 68  gth;e++){var b=h
26e00 5b 65 5d 3b 76 61 72 20 61 3d 64 2e 73 75 62 73  [e];var a=d.subs
26e10 74 72 28 62 2c 32 29 3b 69 66 28 61 3d 3d 22 30  tr(b,2);if(a=="0
26e20 36 22 29 7b 76 61 72 20 67 3d 41 53 4e 31 48 45  6"){var g=ASN1HE
26e30 58 2e 67 65 74 48 65 78 4f 66 56 5f 41 74 4f 62  X.getHexOfV_AtOb
26e40 6a 28 64 2c 62 29 3b 66 2e 70 6f 6c 69 63 79 3d  j(d,b);f.policy=
26e50 41 53 4e 31 48 45 58 2e 68 65 78 74 6f 6f 69 64  ASN1HEX.hextooid
26e60 73 74 72 28 67 29 7d 69 66 28 61 3d 3d 22 30 32  str(g)}if(a=="02
26e70 22 29 7b 66 2e 6e 6f 6e 63 65 3d 41 53 4e 31 48  "){f.nonce=ASN1H
26e80 45 58 2e 67 65 74 48 65 78 4f 66 56 5f 41 74 4f  EX.getHexOfV_AtO
26e90 62 6a 28 64 2c 62 29 7d 69 66 28 61 3d 3d 22 30  bj(d,b)}if(a=="0
26ea0 31 22 29 7b 66 2e 63 65 72 74 72 65 71 3d 74 72  1"){f.certreq=tr
26eb0 75 65 7d 7d 72 65 74 75 72 6e 20 66 7d 3b 4b 4a  ue}}return f};KJ
26ec0 55 52 2e 61 73 6e 31 2e 74 73 70 2e 54 53 50 55  UR.asn1.tsp.TSPU
26ed0 74 69 6c 2e 70 61 72 73 65 4d 65 73 73 61 67 65  til.parseMessage
26ee0 49 6d 70 72 69 6e 74 3d 66 75 6e 63 74 69 6f 6e  Imprint=function
26ef0 28 63 29 7b 76 61 72 20 68 3d 7b 7d 3b 69 66 28  (c){var h={};if(
26f00 63 2e 73 75 62 73 74 72 28 30 2c 32 29 21 3d 22  c.substr(0,2)!="
26f10 33 30 22 29 7b 74 68 72 6f 77 22 68 65 61 64 20  30"){throw"head 
26f20 6f 66 20 6d 65 73 73 61 67 65 49 6d 70 72 69 6e  of messageImprin
26f30 74 20 68 65 78 20 73 68 61 6c 6c 20 62 65 20 27  t hex shall be '
26f40 33 30 27 22 7d 76 61 72 20 61 3d 41 53 4e 31 48  30'"}var a=ASN1H
26f50 45 58 2e 67 65 74 50 6f 73 41 72 72 61 79 4f 66  EX.getPosArrayOf
26f60 43 68 69 6c 64 72 65 6e 5f 41 74 4f 62 6a 28 63  Children_AtObj(c
26f70 2c 30 29 3b 76 61 72 20 69 3d 41 53 4e 31 48 45  ,0);var i=ASN1HE
26f80 58 2e 67 65 74 44 65 63 65 6e 64 61 6e 74 49 6e  X.getDecendantIn
26f90 64 65 78 42 79 4e 74 68 4c 69 73 74 28 63 2c 30  dexByNthList(c,0
26fa0 2c 5b 30 2c 30 5d 29 3b 76 61 72 20 64 3d 41 53  ,[0,0]);var d=AS
26fb0 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66 56 5f  N1HEX.getHexOfV_
26fc0 41 74 4f 62 6a 28 63 2c 69 29 3b 76 61 72 20 65  AtObj(c,i);var e
26fd0 3d 41 53 4e 31 48 45 58 2e 68 65 78 74 6f 6f 69  =ASN1HEX.hextooi
26fe0 64 73 74 72 28 64 29 3b 76 61 72 20 67 3d 4b 4a  dstr(d);var g=KJ
26ff0 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 4f 49 44  UR.asn1.x509.OID
27000 2e 6f 69 64 32 6e 61 6d 65 28 65 29 3b 69 66 28  .oid2name(e);if(
27010 67 3d 3d 22 22 29 7b 74 68 72 6f 77 22 68 61 73  g==""){throw"has
27020 68 41 6c 67 20 6e 61 6d 65 20 75 6e 64 65 66 69  hAlg name undefi
27030 6e 65 64 3a 20 22 2b 65 7d 76 61 72 20 62 3d 67  ned: "+e}var b=g
27040 3b 76 61 72 20 66 3d 41 53 4e 31 48 45 58 2e 67  ;var f=ASN1HEX.g
27050 65 74 44 65 63 65 6e 64 61 6e 74 49 6e 64 65 78  etDecendantIndex
27060 42 79 4e 74 68 4c 69 73 74 28 63 2c 30 2c 5b 31  ByNthList(c,0,[1
27070 5d 29 3b 68 2e 68 61 73 68 41 6c 67 3d 62 3b 68  ]);h.hashAlg=b;h
27080 2e 68 61 73 68 56 61 6c 75 65 3d 41 53 4e 31 48  .hashValue=ASN1H
27090 45 58 2e 67 65 74 48 65 78 4f 66 56 5f 41 74 4f  EX.getHexOfV_AtO
270a0 62 6a 28 63 2c 66 29 3b 72 65 74 75 72 6e 20 68  bj(c,f);return h
270b0 7d 3b 0a 2f 2a 21 20 61 73 6e 31 63 61 64 65 73  };./*! asn1cades
270c0 2d 31 2e 30 2e 30 2e 6a 73 20 28 63 29 20 32 30  -1.0.0.js (c) 20
270d0 31 33 2d 32 30 31 34 20 4b 65 6e 6a 69 20 55 72  13-2014 Kenji Ur
270e0 75 73 68 69 6d 61 20 7c 20 6b 6a 75 72 2e 67 69  ushima | kjur.gi
270f0 74 68 75 62 2e 63 6f 6d 2f 6a 73 72 73 61 73 69  thub.com/jsrsasi
27100 67 6e 2f 6c 69 63 65 6e 73 65 0a 20 2a 2f 0a 69  gn/license. */.i
27110 66 28 74 79 70 65 6f 66 20 4b 4a 55 52 3d 3d 22  f(typeof KJUR=="
27120 75 6e 64 65 66 69 6e 65 64 22 7c 7c 21 4b 4a 55  undefined"||!KJU
27130 52 29 7b 4b 4a 55 52 3d 7b 7d 7d 69 66 28 74 79  R){KJUR={}}if(ty
27140 70 65 6f 66 20 4b 4a 55 52 2e 61 73 6e 31 3d 3d  peof KJUR.asn1==
27150 22 75 6e 64 65 66 69 6e 65 64 22 7c 7c 21 4b 4a  "undefined"||!KJ
27160 55 52 2e 61 73 6e 31 29 7b 4b 4a 55 52 2e 61 73  UR.asn1){KJUR.as
27170 6e 31 3d 7b 7d 7d 69 66 28 74 79 70 65 6f 66 20  n1={}}if(typeof 
27180 4b 4a 55 52 2e 61 73 6e 31 2e 63 61 64 65 73 3d  KJUR.asn1.cades=
27190 3d 22 75 6e 64 65 66 69 6e 65 64 22 7c 7c 21 4b  ="undefined"||!K
271a0 4a 55 52 2e 61 73 6e 31 2e 63 61 64 65 73 29 7b  JUR.asn1.cades){
271b0 4b 4a 55 52 2e 61 73 6e 31 2e 63 61 64 65 73 3d  KJUR.asn1.cades=
271c0 7b 7d 7d 4b 4a 55 52 2e 61 73 6e 31 2e 63 61 64  {}}KJUR.asn1.cad
271d0 65 73 2e 53 69 67 6e 61 74 75 72 65 50 6f 6c 69  es.SignaturePoli
271e0 63 79 49 64 65 6e 74 69 66 69 65 72 3d 66 75 6e  cyIdentifier=fun
271f0 63 74 69 6f 6e 28 65 29 7b 4b 4a 55 52 2e 61 73  ction(e){KJUR.as
27200 6e 31 2e 63 61 64 65 73 2e 53 69 67 6e 61 74 75  n1.cades.Signatu
27210 72 65 50 6f 6c 69 63 79 49 64 65 6e 74 69 66 69  rePolicyIdentifi
27220 65 72 2e 73 75 70 65 72 63 6c 61 73 73 2e 63 6f  er.superclass.co
27230 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74  nstructor.call(t
27240 68 69 73 29 3b 74 68 69 73 2e 61 74 74 72 54 79  his);this.attrTy
27250 70 65 4f 69 64 3d 22 31 2e 32 2e 38 34 30 2e 31  peOid="1.2.840.1
27260 31 33 35 34 39 2e 31 2e 39 2e 31 36 2e 32 2e 31  13549.1.9.16.2.1
27270 35 22 3b 76 61 72 20 62 3d 4b 4a 55 52 2e 61 73  5";var b=KJUR.as
27280 6e 31 3b 76 61 72 20 64 3d 4b 4a 55 52 2e 61 73  n1;var d=KJUR.as
27290 6e 31 2e 63 61 64 65 73 3b 69 66 28 74 79 70 65  n1.cades;if(type
272a0 6f 66 20 65 21 3d 22 75 6e 64 65 66 69 6e 65 64  of e!="undefined
272b0 22 29 7b 69 66 28 74 79 70 65 6f 66 20 65 2e 6f  "){if(typeof e.o
272c0 69 64 3d 3d 22 73 74 72 69 6e 67 22 26 26 74 79  id=="string"&&ty
272d0 70 65 6f 66 20 65 2e 68 61 73 68 3d 3d 22 6f 62  peof e.hash=="ob
272e0 6a 65 63 74 22 29 7b 76 61 72 20 66 3d 6e 65 77  ject"){var f=new
272f0 20 62 2e 44 45 52 4f 62 6a 65 63 74 49 64 65 6e   b.DERObjectIden
27300 74 69 66 69 65 72 28 7b 6f 69 64 3a 65 2e 6f 69  tifier({oid:e.oi
27310 64 7d 29 3b 76 61 72 20 61 3d 6e 65 77 20 64 2e  d});var a=new d.
27320 4f 74 68 65 72 48 61 73 68 41 6c 67 41 6e 64 56  OtherHashAlgAndV
27330 61 6c 75 65 28 65 2e 68 61 73 68 29 3b 76 61 72  alue(e.hash);var
27340 20 63 3d 6e 65 77 20 62 2e 44 45 52 53 65 71 75   c=new b.DERSequ
27350 65 6e 63 65 28 7b 61 72 72 61 79 3a 5b 66 2c 61  ence({array:[f,a
27360 5d 7d 29 3b 74 68 69 73 2e 76 61 6c 75 65 4c 69  ]});this.valueLi
27370 73 74 3d 5b 63 5d 7d 7d 7d 3b 59 41 48 4f 4f 2e  st=[c]}}};YAHOO.
27380 6c 61 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52  lang.extend(KJUR
27390 2e 61 73 6e 31 2e 63 61 64 65 73 2e 53 69 67 6e  .asn1.cades.Sign
273a0 61 74 75 72 65 50 6f 6c 69 63 79 49 64 65 6e 74  aturePolicyIdent
273b0 69 66 69 65 72 2c 4b 4a 55 52 2e 61 73 6e 31 2e  ifier,KJUR.asn1.
273c0 63 6d 73 2e 41 74 74 72 69 62 75 74 65 29 3b 4b  cms.Attribute);K
273d0 4a 55 52 2e 61 73 6e 31 2e 63 61 64 65 73 2e 4f  JUR.asn1.cades.O
273e0 74 68 65 72 48 61 73 68 41 6c 67 41 6e 64 56 61  therHashAlgAndVa
273f0 6c 75 65 3d 66 75 6e 63 74 69 6f 6e 28 62 29 7b  lue=function(b){
27400 4b 4a 55 52 2e 61 73 6e 31 2e 63 61 64 65 73 2e  KJUR.asn1.cades.
27410 4f 74 68 65 72 48 61 73 68 41 6c 67 41 6e 64 56  OtherHashAlgAndV
27420 61 6c 75 65 2e 73 75 70 65 72 63 6c 61 73 73 2e  alue.superclass.
27430 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c 6c  constructor.call
27440 28 74 68 69 73 29 3b 76 61 72 20 61 3d 4b 4a 55  (this);var a=KJU
27450 52 2e 61 73 6e 31 3b 76 61 72 20 63 3d 4b 4a 55  R.asn1;var c=KJU
27460 52 2e 61 73 6e 31 2e 78 35 30 39 3b 74 68 69 73  R.asn1.x509;this
27470 2e 64 41 6c 67 3d 6e 75 6c 6c 3b 74 68 69 73 2e  .dAlg=null;this.
27480 64 48 61 73 68 3d 6e 75 6c 6c 3b 74 68 69 73 2e  dHash=null;this.
27490 67 65 74 45 6e 63 6f 64 65 64 48 65 78 3d 66 75  getEncodedHex=fu
274a0 6e 63 74 69 6f 6e 28 29 7b 76 61 72 20 64 3d 6e  nction(){var d=n
274b0 65 77 20 61 2e 44 45 52 53 65 71 75 65 6e 63 65  ew a.DERSequence
274c0 28 7b 61 72 72 61 79 3a 5b 74 68 69 73 2e 64 41  ({array:[this.dA
274d0 6c 67 2c 74 68 69 73 2e 64 48 61 73 68 5d 7d 29  lg,this.dHash]})
274e0 3b 74 68 69 73 2e 68 54 4c 56 3d 64 2e 67 65 74  ;this.hTLV=d.get
274f0 45 6e 63 6f 64 65 64 48 65 78 28 29 3b 72 65 74  EncodedHex();ret
27500 75 72 6e 20 74 68 69 73 2e 68 54 4c 56 7d 3b 69  urn this.hTLV};i
27510 66 28 74 79 70 65 6f 66 20 62 21 3d 22 75 6e 64  f(typeof b!="und
27520 65 66 69 6e 65 64 22 29 7b 69 66 28 74 79 70 65  efined"){if(type
27530 6f 66 20 62 2e 61 6c 67 3d 3d 22 73 74 72 69 6e  of b.alg=="strin
27540 67 22 26 26 74 79 70 65 6f 66 20 62 2e 68 61 73  g"&&typeof b.has
27550 68 3d 3d 22 73 74 72 69 6e 67 22 29 7b 74 68 69  h=="string"){thi
27560 73 2e 64 41 6c 67 3d 6e 65 77 20 63 2e 41 6c 67  s.dAlg=new c.Alg
27570 6f 72 69 74 68 6d 49 64 65 6e 74 69 66 69 65 72  orithmIdentifier
27580 28 7b 6e 61 6d 65 3a 62 2e 61 6c 67 7d 29 3b 74  ({name:b.alg});t
27590 68 69 73 2e 64 48 61 73 68 3d 6e 65 77 20 61 2e  his.dHash=new a.
275a0 44 45 52 4f 63 74 65 74 53 74 72 69 6e 67 28 7b  DEROctetString({
275b0 68 65 78 3a 62 2e 68 61 73 68 7d 29 7d 7d 7d 3b  hex:b.hash})}}};
275c0 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e  YAHOO.lang.exten
275d0 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 63 61 64 65  d(KJUR.asn1.cade
275e0 73 2e 4f 74 68 65 72 48 61 73 68 41 6c 67 41 6e  s.OtherHashAlgAn
275f0 64 56 61 6c 75 65 2c 4b 4a 55 52 2e 61 73 6e 31  dValue,KJUR.asn1
27600 2e 41 53 4e 31 4f 62 6a 65 63 74 29 3b 4b 4a 55  .ASN1Object);KJU
27610 52 2e 61 73 6e 31 2e 63 61 64 65 73 2e 53 69 67  R.asn1.cades.Sig
27620 6e 61 74 75 72 65 54 69 6d 65 53 74 61 6d 70 3d  natureTimeStamp=
27630 66 75 6e 63 74 69 6f 6e 28 63 29 7b 4b 4a 55 52  function(c){KJUR
27640 2e 61 73 6e 31 2e 63 61 64 65 73 2e 53 69 67 6e  .asn1.cades.Sign
27650 61 74 75 72 65 54 69 6d 65 53 74 61 6d 70 2e 73  atureTimeStamp.s
27660 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72  uperclass.constr
27670 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29  uctor.call(this)
27680 3b 74 68 69 73 2e 61 74 74 72 54 79 70 65 4f 69  ;this.attrTypeOi
27690 64 3d 22 31 2e 32 2e 38 34 30 2e 31 31 33 35 34  d="1.2.840.11354
276a0 39 2e 31 2e 39 2e 31 36 2e 32 2e 31 34 22 3b 74  9.1.9.16.2.14";t
276b0 68 69 73 2e 74 73 74 48 65 78 3d 6e 75 6c 6c 3b  his.tstHex=null;
276c0 76 61 72 20 61 3d 4b 4a 55 52 2e 61 73 6e 31 3b  var a=KJUR.asn1;
276d0 69 66 28 74 79 70 65 6f 66 20 63 21 3d 22 75 6e  if(typeof c!="un
276e0 64 65 66 69 6e 65 64 22 29 7b 69 66 28 74 79 70  defined"){if(typ
276f0 65 6f 66 20 63 2e 72 65 73 21 3d 22 75 6e 64 65  eof c.res!="unde
27700 66 69 6e 65 64 22 29 7b 69 66 28 74 79 70 65 6f  fined"){if(typeo
27710 66 20 63 2e 72 65 73 3d 3d 22 73 74 72 69 6e 67  f c.res=="string
27720 22 26 26 63 2e 72 65 73 2e 6d 61 74 63 68 28 2f  "&&c.res.match(/
27730 5e 5b 30 2d 39 41 2d 46 61 2d 66 5d 2b 24 2f 29  ^[0-9A-Fa-f]+$/)
27740 29 7b 7d 65 6c 73 65 7b 69 66 28 63 2e 72 65 73  ){}else{if(c.res
27750 20 69 6e 73 74 61 6e 63 65 6f 66 20 4b 4a 55 52   instanceof KJUR
27760 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74  .asn1.ASN1Object
27770 29 7b 7d 65 6c 73 65 7b 74 68 72 6f 77 22 72 65  ){}else{throw"re
27780 73 20 70 61 72 61 6d 20 73 68 61 6c 6c 20 62 65  s param shall be
27790 20 41 53 4e 31 4f 62 6a 65 63 74 20 6f 72 20 68   ASN1Object or h
277a0 65 78 20 73 74 72 69 6e 67 22 7d 7d 7d 69 66 28  ex string"}}}if(
277b0 74 79 70 65 6f 66 20 63 2e 74 73 74 21 3d 22 75  typeof c.tst!="u
277c0 6e 64 65 66 69 6e 65 64 22 29 7b 69 66 28 74 79  ndefined"){if(ty
277d0 70 65 6f 66 20 63 2e 74 73 74 3d 3d 22 73 74 72  peof c.tst=="str
277e0 69 6e 67 22 26 26 63 2e 74 73 74 2e 6d 61 74 63  ing"&&c.tst.matc
277f0 68 28 2f 5e 5b 30 2d 39 41 2d 46 61 2d 66 5d 2b  h(/^[0-9A-Fa-f]+
27800 24 2f 29 29 7b 76 61 72 20 62 3d 6e 65 77 20 61  $/)){var b=new a
27810 2e 41 53 4e 31 4f 62 6a 65 63 74 28 29 3b 74 68  .ASN1Object();th
27820 69 73 2e 74 73 74 48 65 78 3d 63 2e 74 73 74 3b  is.tstHex=c.tst;
27830 62 2e 68 54 4c 56 3d 74 68 69 73 2e 74 73 74 48  b.hTLV=this.tstH
27840 65 78 3b 62 2e 67 65 74 45 6e 63 6f 64 65 64 48  ex;b.getEncodedH
27850 65 78 28 29 3b 74 68 69 73 2e 76 61 6c 75 65 4c  ex();this.valueL
27860 69 73 74 3d 5b 62 5d 7d 65 6c 73 65 7b 69 66 28  ist=[b]}else{if(
27870 63 2e 74 73 74 20 69 6e 73 74 61 6e 63 65 6f 66  c.tst instanceof
27880 20 4b 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 4f   KJUR.asn1.ASN1O
27890 62 6a 65 63 74 29 7b 7d 65 6c 73 65 7b 74 68 72  bject){}else{thr
278a0 6f 77 22 74 73 74 20 70 61 72 61 6d 20 73 68 61  ow"tst param sha
278b0 6c 6c 20 62 65 20 41 53 4e 31 4f 62 6a 65 63 74  ll be ASN1Object
278c0 20 6f 72 20 68 65 78 20 73 74 72 69 6e 67 22 7d   or hex string"}
278d0 7d 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e  }}}};YAHOO.lang.
278e0 65 78 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31  extend(KJUR.asn1
278f0 2e 63 61 64 65 73 2e 53 69 67 6e 61 74 75 72 65  .cades.Signature
27900 54 69 6d 65 53 74 61 6d 70 2c 4b 4a 55 52 2e 61  TimeStamp,KJUR.a
27910 73 6e 31 2e 63 6d 73 2e 41 74 74 72 69 62 75 74  sn1.cms.Attribut
27920 65 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 63 61 64  e);KJUR.asn1.cad
27930 65 73 2e 43 6f 6d 70 6c 65 74 65 43 65 72 74 69  es.CompleteCerti
27940 66 69 63 61 74 65 52 65 66 73 3d 66 75 6e 63 74  ficateRefs=funct
27950 69 6f 6e 28 63 29 7b 4b 4a 55 52 2e 61 73 6e 31  ion(c){KJUR.asn1
27960 2e 63 61 64 65 73 2e 43 6f 6d 70 6c 65 74 65 43  .cades.CompleteC
27970 65 72 74 69 66 69 63 61 74 65 52 65 66 73 2e 73  ertificateRefs.s
27980 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72  uperclass.constr
27990 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29  uctor.call(this)
279a0 3b 74 68 69 73 2e 61 74 74 72 54 79 70 65 4f 69  ;this.attrTypeOi
279b0 64 3d 22 31 2e 32 2e 38 34 30 2e 31 31 33 35 34  d="1.2.840.11354
279c0 39 2e 31 2e 39 2e 31 36 2e 32 2e 32 31 22 3b 76  9.1.9.16.2.21";v
279d0 61 72 20 61 3d 4b 4a 55 52 2e 61 73 6e 31 3b 76  ar a=KJUR.asn1;v
279e0 61 72 20 62 3d 4b 4a 55 52 2e 61 73 6e 31 2e 63  ar b=KJUR.asn1.c
279f0 61 64 65 73 3b 74 68 69 73 2e 73 65 74 42 79 41  ades;this.setByA
27a00 72 72 61 79 3d 66 75 6e 63 74 69 6f 6e 28 64 29  rray=function(d)
27a10 7b 74 68 69 73 2e 76 61 6c 75 65 4c 69 73 74 3d  {this.valueList=
27a20 5b 5d 3b 66 6f 72 28 76 61 72 20 65 3d 30 3b 65  [];for(var e=0;e
27a30 3c 64 2e 6c 65 6e 67 74 68 3b 65 2b 2b 29 7b 76  <d.length;e++){v
27a40 61 72 20 66 3d 6e 65 77 20 62 2e 4f 74 68 65 72  ar f=new b.Other
27a50 43 65 72 74 49 44 28 64 5b 65 5d 29 3b 74 68 69  CertID(d[e]);thi
27a60 73 2e 76 61 6c 75 65 4c 69 73 74 2e 70 75 73 68  s.valueList.push
27a70 28 66 29 7d 7d 3b 69 66 28 74 79 70 65 6f 66 20  (f)}};if(typeof 
27a80 63 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b  c!="undefined"){
27a90 69 66 28 74 79 70 65 6f 66 20 63 3d 3d 22 6f 62  if(typeof c=="ob
27aa0 6a 65 63 74 22 26 26 74 79 70 65 6f 66 20 63 2e  ject"&&typeof c.
27ab0 6c 65 6e 67 74 68 3d 3d 22 6e 75 6d 62 65 72 22  length=="number"
27ac0 29 7b 74 68 69 73 2e 73 65 74 42 79 41 72 72 61  ){this.setByArra
27ad0 79 28 63 29 7d 7d 7d 3b 59 41 48 4f 4f 2e 6c 61  y(c)}}};YAHOO.la
27ae0 6e 67 2e 65 78 74 65 6e 64 28 4b 4a 55 52 2e 61  ng.extend(KJUR.a
27af0 73 6e 31 2e 63 61 64 65 73 2e 43 6f 6d 70 6c 65  sn1.cades.Comple
27b00 74 65 43 65 72 74 69 66 69 63 61 74 65 52 65 66  teCertificateRef
27b10 73 2c 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 2e  s,KJUR.asn1.cms.
27b20 41 74 74 72 69 62 75 74 65 29 3b 4b 4a 55 52 2e  Attribute);KJUR.
27b30 61 73 6e 31 2e 63 61 64 65 73 2e 4f 74 68 65 72  asn1.cades.Other
27b40 43 65 72 74 49 44 3d 66 75 6e 63 74 69 6f 6e 28  CertID=function(
27b50 64 29 7b 4b 4a 55 52 2e 61 73 6e 31 2e 63 61 64  d){KJUR.asn1.cad
27b60 65 73 2e 4f 74 68 65 72 43 65 72 74 49 44 2e 73  es.OtherCertID.s
27b70 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72  uperclass.constr
27b80 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29  uctor.call(this)
27b90 3b 76 61 72 20 61 3d 4b 4a 55 52 2e 61 73 6e 31  ;var a=KJUR.asn1
27ba0 3b 76 61 72 20 63 3d 4b 4a 55 52 2e 61 73 6e 31  ;var c=KJUR.asn1
27bb0 2e 63 6d 73 3b 76 61 72 20 62 3d 4b 4a 55 52 2e  .cms;var b=KJUR.
27bc0 61 73 6e 31 2e 63 61 64 65 73 3b 74 68 69 73 2e  asn1.cades;this.
27bd0 68 61 73 49 73 73 75 65 72 53 65 72 69 61 6c 3d  hasIssuerSerial=
27be0 74 72 75 65 3b 74 68 69 73 2e 64 4f 74 68 65 72  true;this.dOther
27bf0 43 65 72 74 48 61 73 68 3d 6e 75 6c 6c 3b 74 68  CertHash=null;th
27c00 69 73 2e 64 49 73 73 75 65 72 53 65 72 69 61 6c  is.dIssuerSerial
27c10 3d 6e 75 6c 6c 3b 74 68 69 73 2e 73 65 74 42 79  =null;this.setBy
27c20 43 65 72 74 50 45 4d 3d 66 75 6e 63 74 69 6f 6e  CertPEM=function
27c30 28 65 29 7b 74 68 69 73 2e 64 4f 74 68 65 72 43  (e){this.dOtherC
27c40 65 72 74 48 61 73 68 3d 6e 65 77 20 62 2e 4f 74  ertHash=new b.Ot
27c50 68 65 72 48 61 73 68 28 65 29 3b 69 66 28 74 68  herHash(e);if(th
27c60 69 73 2e 68 61 73 49 73 73 75 65 72 53 65 72 69  is.hasIssuerSeri
27c70 61 6c 29 7b 74 68 69 73 2e 64 49 73 73 75 65 72  al){this.dIssuer
27c80 53 65 72 69 61 6c 3d 6e 65 77 20 63 2e 49 73 73  Serial=new c.Iss
27c90 75 65 72 41 6e 64 53 65 72 69 61 6c 4e 75 6d 62  uerAndSerialNumb
27ca0 65 72 28 65 29 7d 7d 3b 74 68 69 73 2e 67 65 74  er(e)}};this.get
27cb0 45 6e 63 6f 64 65 64 48 65 78 3d 66 75 6e 63 74  EncodedHex=funct
27cc0 69 6f 6e 28 29 7b 69 66 28 74 68 69 73 2e 68 54  ion(){if(this.hT
27cd0 4c 56 21 3d 6e 75 6c 6c 29 7b 72 65 74 75 72 6e  LV!=null){return
27ce0 20 74 68 69 73 2e 68 54 4c 56 7d 69 66 28 74 68   this.hTLV}if(th
27cf0 69 73 2e 64 4f 74 68 65 72 43 65 72 74 48 61 73  is.dOtherCertHas
27d00 68 3d 3d 6e 75 6c 6c 29 7b 74 68 72 6f 77 22 6f  h==null){throw"o
27d10 74 68 65 72 43 65 72 74 48 61 73 68 20 6e 6f 74  therCertHash not
27d20 20 73 65 74 22 7d 76 61 72 20 65 3d 5b 74 68 69   set"}var e=[thi
27d30 73 2e 64 4f 74 68 65 72 43 65 72 74 48 61 73 68  s.dOtherCertHash
27d40 5d 3b 69 66 28 74 68 69 73 2e 64 49 73 73 75 65  ];if(this.dIssue
27d50 72 53 65 72 69 61 6c 21 3d 6e 75 6c 6c 29 7b 65  rSerial!=null){e
27d60 2e 70 75 73 68 28 74 68 69 73 2e 64 49 73 73 75  .push(this.dIssu
27d70 65 72 53 65 72 69 61 6c 29 7d 76 61 72 20 66 3d  erSerial)}var f=
27d80 6e 65 77 20 61 2e 44 45 52 53 65 71 75 65 6e 63  new a.DERSequenc
27d90 65 28 7b 61 72 72 61 79 3a 65 7d 29 3b 74 68 69  e({array:e});thi
27da0 73 2e 68 54 4c 56 3d 66 2e 67 65 74 45 6e 63 6f  s.hTLV=f.getEnco
27db0 64 65 64 48 65 78 28 29 3b 72 65 74 75 72 6e 20  dedHex();return 
27dc0 74 68 69 73 2e 68 54 4c 56 7d 3b 69 66 28 74 79  this.hTLV};if(ty
27dd0 70 65 6f 66 20 64 21 3d 22 75 6e 64 65 66 69 6e  peof d!="undefin
27de0 65 64 22 29 7b 69 66 28 74 79 70 65 6f 66 20 64  ed"){if(typeof d
27df0 3d 3d 22 73 74 72 69 6e 67 22 26 26 64 2e 69 6e  =="string"&&d.in
27e00 64 65 78 4f 66 28 22 2d 2d 2d 2d 2d 42 45 47 49  dexOf("-----BEGI
27e10 4e 20 22 29 21 3d 2d 31 29 7b 74 68 69 73 2e 73  N ")!=-1){this.s
27e20 65 74 42 79 43 65 72 74 50 45 4d 28 64 29 7d 69  etByCertPEM(d)}i
27e30 66 28 74 79 70 65 6f 66 20 64 3d 3d 22 6f 62 6a  f(typeof d=="obj
27e40 65 63 74 22 29 7b 69 66 28 64 2e 68 61 73 69 73  ect"){if(d.hasis
27e50 3d 3d 3d 66 61 6c 73 65 29 7b 74 68 69 73 2e 68  ===false){this.h
27e60 61 73 49 73 73 75 65 72 53 65 72 69 61 6c 3d 66  asIssuerSerial=f
27e70 61 6c 73 65 7d 69 66 28 74 79 70 65 6f 66 20 64  alse}if(typeof d
27e80 2e 63 65 72 74 3d 3d 22 73 74 72 69 6e 67 22 29  .cert=="string")
27e90 7b 74 68 69 73 2e 73 65 74 42 79 43 65 72 74 50  {this.setByCertP
27ea0 45 4d 28 64 2e 63 65 72 74 29 7d 7d 7d 7d 3b 59  EM(d.cert)}}}};Y
27eb0 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e 64  AHOO.lang.extend
27ec0 28 4b 4a 55 52 2e 61 73 6e 31 2e 63 61 64 65 73  (KJUR.asn1.cades
27ed0 2e 4f 74 68 65 72 43 65 72 74 49 44 2c 4b 4a 55  .OtherCertID,KJU
27ee0 52 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a 65 63  R.asn1.ASN1Objec
27ef0 74 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 63 61 64  t);KJUR.asn1.cad
27f00 65 73 2e 4f 74 68 65 72 48 61 73 68 3d 66 75 6e  es.OtherHash=fun
27f10 63 74 69 6f 6e 28 63 29 7b 4b 4a 55 52 2e 61 73  ction(c){KJUR.as
27f20 6e 31 2e 63 61 64 65 73 2e 4f 74 68 65 72 48 61  n1.cades.OtherHa
27f30 73 68 2e 73 75 70 65 72 63 6c 61 73 73 2e 63 6f  sh.superclass.co
27f40 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c 6c 28 74  nstructor.call(t
27f50 68 69 73 29 3b 76 61 72 20 61 3d 4b 4a 55 52 2e  his);var a=KJUR.
27f60 61 73 6e 31 3b 76 61 72 20 62 3d 4b 4a 55 52 2e  asn1;var b=KJUR.
27f70 61 73 6e 31 2e 63 61 64 65 73 3b 74 68 69 73 2e  asn1.cades;this.
27f80 61 6c 67 3d 22 73 68 61 32 35 36 22 3b 74 68 69  alg="sha256";thi
27f90 73 2e 64 4f 74 68 65 72 48 61 73 68 3d 6e 75 6c  s.dOtherHash=nul
27fa0 6c 3b 74 68 69 73 2e 73 65 74 42 79 43 65 72 74  l;this.setByCert
27fb0 50 45 4d 3d 66 75 6e 63 74 69 6f 6e 28 64 29 7b  PEM=function(d){
27fc0 69 66 28 64 2e 69 6e 64 65 78 4f 66 28 22 2d 2d  if(d.indexOf("--
27fd0 2d 2d 2d 42 45 47 49 4e 20 22 29 3d 3d 2d 31 29  ---BEGIN ")==-1)
27fe0 7b 74 68 72 6f 77 22 63 65 72 74 50 45 4d 20 6e  {throw"certPEM n
27ff0 6f 74 20 74 6f 20 73 65 65 6d 20 50 45 4d 20 66  ot to seem PEM f
28000 6f 72 6d 61 74 22 7d 76 61 72 20 65 3d 58 35 30  ormat"}var e=X50
28010 39 2e 70 65 6d 54 6f 48 65 78 28 64 29 3b 76 61  9.pemToHex(d);va
28020 72 20 66 3d 4b 4a 55 52 2e 63 72 79 70 74 6f 2e  r f=KJUR.crypto.
28030 55 74 69 6c 2e 68 61 73 68 48 65 78 28 65 2c 74  Util.hashHex(e,t
28040 68 69 73 2e 61 6c 67 29 3b 74 68 69 73 2e 64 4f  his.alg);this.dO
28050 74 68 65 72 48 61 73 68 3d 6e 65 77 20 62 2e 4f  therHash=new b.O
28060 74 68 65 72 48 61 73 68 41 6c 67 41 6e 64 56 61  therHashAlgAndVa
28070 6c 75 65 28 7b 61 6c 67 3a 74 68 69 73 2e 61 6c  lue({alg:this.al
28080 67 2c 68 61 73 68 3a 66 7d 29 7d 3b 74 68 69 73  g,hash:f})};this
28090 2e 67 65 74 45 6e 63 6f 64 65 64 48 65 78 3d 66  .getEncodedHex=f
280a0 75 6e 63 74 69 6f 6e 28 29 7b 69 66 28 74 68 69  unction(){if(thi
280b0 73 2e 64 4f 74 68 65 72 48 61 73 68 3d 3d 6e 75  s.dOtherHash==nu
280c0 6c 6c 29 7b 74 68 72 6f 77 22 4f 74 68 65 72 48  ll){throw"OtherH
280d0 61 73 68 20 6e 6f 74 20 73 65 74 22 7d 72 65 74  ash not set"}ret
280e0 75 72 6e 20 74 68 69 73 2e 64 4f 74 68 65 72 48  urn this.dOtherH
280f0 61 73 68 2e 67 65 74 45 6e 63 6f 64 65 64 48 65  ash.getEncodedHe
28100 78 28 29 7d 3b 69 66 28 74 79 70 65 6f 66 20 63  x()};if(typeof c
28110 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29 7b 69  !="undefined"){i
28120 66 28 74 79 70 65 6f 66 20 63 3d 3d 22 73 74 72  f(typeof c=="str
28130 69 6e 67 22 29 7b 69 66 28 63 2e 69 6e 64 65 78  ing"){if(c.index
28140 4f 66 28 22 2d 2d 2d 2d 2d 42 45 47 49 4e 20 22  Of("-----BEGIN "
28150 29 21 3d 2d 31 29 7b 74 68 69 73 2e 73 65 74 42  )!=-1){this.setB
28160 79 43 65 72 74 50 45 4d 28 63 29 7d 65 6c 73 65  yCertPEM(c)}else
28170 7b 69 66 28 63 2e 6d 61 74 63 68 28 2f 5e 5b 30  {if(c.match(/^[0
28180 2d 39 41 2d 46 61 2d 66 5d 2b 24 2f 29 29 7b 74  -9A-Fa-f]+$/)){t
28190 68 69 73 2e 64 4f 74 68 65 72 48 61 73 68 3d 6e  his.dOtherHash=n
281a0 65 77 20 61 2e 44 45 52 4f 63 74 65 74 53 74 72  ew a.DEROctetStr
281b0 69 6e 67 28 7b 68 65 78 3a 63 7d 29 7d 65 6c 73  ing({hex:c})}els
281c0 65 7b 74 68 72 6f 77 22 75 6e 73 75 70 70 6f 72  e{throw"unsuppor
281d0 74 65 64 20 73 74 72 69 6e 67 20 76 61 6c 75 65  ted string value
281e0 20 66 6f 72 20 70 61 72 61 6d 73 22 7d 7d 7d 65   for params"}}}e
281f0 6c 73 65 7b 69 66 28 74 79 70 65 6f 66 20 63 3d  lse{if(typeof c=
28200 3d 22 6f 62 6a 65 63 74 22 29 7b 69 66 28 74 79  ="object"){if(ty
28210 70 65 6f 66 20 63 2e 63 65 72 74 3d 3d 22 73 74  peof c.cert=="st
28220 72 69 6e 67 22 29 7b 69 66 28 74 79 70 65 6f 66  ring"){if(typeof
28230 20 63 2e 61 6c 67 3d 3d 22 73 74 72 69 6e 67 22   c.alg=="string"
28240 29 7b 74 68 69 73 2e 61 6c 67 3d 63 2e 61 6c 67  ){this.alg=c.alg
28250 7d 74 68 69 73 2e 73 65 74 42 79 43 65 72 74 50  }this.setByCertP
28260 45 4d 28 63 2e 63 65 72 74 29 7d 65 6c 73 65 7b  EM(c.cert)}else{
28270 74 68 69 73 2e 64 4f 74 68 65 72 48 61 73 68 3d  this.dOtherHash=
28280 6e 65 77 20 62 2e 4f 74 68 65 72 48 61 73 68 41  new b.OtherHashA
28290 6c 67 41 6e 64 56 61 6c 75 65 28 63 29 7d 7d 7d  lgAndValue(c)}}}
282a0 7d 7d 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78  }};YAHOO.lang.ex
282b0 74 65 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 63  tend(KJUR.asn1.c
282c0 61 64 65 73 2e 4f 74 68 65 72 48 61 73 68 2c 4b  ades.OtherHash,K
282d0 4a 55 52 2e 61 73 6e 31 2e 41 53 4e 31 4f 62 6a  JUR.asn1.ASN1Obj
282e0 65 63 74 29 3b 4b 4a 55 52 2e 61 73 6e 31 2e 63  ect);KJUR.asn1.c
282f0 61 64 65 73 2e 43 41 64 45 53 55 74 69 6c 3d 6e  ades.CAdESUtil=n
28300 65 77 20 66 75 6e 63 74 69 6f 6e 28 29 7b 7d 3b  ew function(){};
28310 4b 4a 55 52 2e 61 73 6e 31 2e 63 61 64 65 73 2e  KJUR.asn1.cades.
28320 43 41 64 45 53 55 74 69 6c 2e 61 64 64 53 69 67  CAdESUtil.addSig
28330 54 53 3d 66 75 6e 63 74 69 6f 6e 28 63 2c 62 2c  TS=function(c,b,
28340 61 29 7b 7d 3b 4b 4a 55 52 2e 61 73 6e 31 2e 63  a){};KJUR.asn1.c
28350 61 64 65 73 2e 43 41 64 45 53 55 74 69 6c 2e 70  ades.CAdESUtil.p
28360 61 72 73 65 53 69 67 6e 65 64 44 61 74 61 46 6f  arseSignedDataFo
28370 72 41 64 64 69 6e 67 55 6e 73 69 67 6e 65 64 3d  rAddingUnsigned=
28380 66 75 6e 63 74 69 6f 6e 28 64 29 7b 76 61 72 20  function(d){var 
28390 71 3d 4b 4a 55 52 2e 61 73 6e 31 3b 76 61 72 20  q=KJUR.asn1;var 
283a0 70 3d 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 3b  p=KJUR.asn1.cms;
283b0 76 61 72 20 63 3d 4b 4a 55 52 2e 61 73 6e 31 2e  var c=KJUR.asn1.
283c0 63 61 64 65 73 2e 43 41 64 45 53 55 74 69 6c 3b  cades.CAdESUtil;
283d0 76 61 72 20 61 3d 7b 7d 3b 69 66 28 41 53 4e 31  var a={};if(ASN1
283e0 48 45 58 2e 67 65 74 44 65 63 65 6e 64 61 6e 74  HEX.getDecendant
283f0 48 65 78 54 4c 56 42 79 4e 74 68 4c 69 73 74 28  HexTLVByNthList(
28400 64 2c 30 2c 5b 30 5d 29 21 3d 22 30 36 30 39 32  d,0,[0])!="06092
28410 61 38 36 34 38 38 36 66 37 30 64 30 31 30 37 30  a864886f70d01070
28420 32 22 29 7b 74 68 72 6f 77 22 68 65 78 20 69 73  2"){throw"hex is
28430 20 6e 6f 74 20 43 4d 53 20 53 69 67 6e 65 64 44   not CMS SignedD
28440 61 74 61 22 7d 76 61 72 20 73 3d 41 53 4e 31 48  ata"}var s=ASN1H
28450 45 58 2e 67 65 74 44 65 63 65 6e 64 61 6e 74 49  EX.getDecendantI
28460 6e 64 65 78 42 79 4e 74 68 4c 69 73 74 28 64 2c  ndexByNthList(d,
28470 30 2c 5b 31 2c 30 5d 29 3b 76 61 72 20 62 3d 41  0,[1,0]);var b=A
28480 53 4e 31 48 45 58 2e 67 65 74 50 6f 73 41 72 72  SN1HEX.getPosArr
28490 61 79 4f 66 43 68 69 6c 64 72 65 6e 5f 41 74 4f  ayOfChildren_AtO
284a0 62 6a 28 64 2c 73 29 3b 69 66 28 62 2e 6c 65 6e  bj(d,s);if(b.len
284b0 67 74 68 3c 34 29 7b 74 68 72 6f 77 22 6e 75 6d  gth<4){throw"num
284c0 20 6f 66 20 53 69 67 6e 65 64 44 61 74 61 20 65   of SignedData e
284d0 6c 65 6d 20 73 68 61 6c 6c 20 62 65 20 34 20 61  lem shall be 4 a
284e0 74 20 6c 65 61 73 74 22 7d 76 61 72 20 66 3d 62  t least"}var f=b
284f0 2e 73 68 69 66 74 28 29 3b 61 2e 76 65 72 73 69  .shift();a.versi
28500 6f 6e 3d 41 53 4e 31 48 45 58 2e 67 65 74 48 65  on=ASN1HEX.getHe
28510 78 4f 66 54 4c 56 5f 41 74 4f 62 6a 28 64 2c 66  xOfTLV_AtObj(d,f
28520 29 3b 76 61 72 20 6c 3d 62 2e 73 68 69 66 74 28  );var l=b.shift(
28530 29 3b 61 2e 61 6c 67 73 3d 41 53 4e 31 48 45 58  );a.algs=ASN1HEX
28540 2e 67 65 74 48 65 78 4f 66 54 4c 56 5f 41 74 4f  .getHexOfTLV_AtO
28550 62 6a 28 64 2c 6c 29 3b 76 61 72 20 6d 3d 62 2e  bj(d,l);var m=b.
28560 73 68 69 66 74 28 29 3b 61 2e 65 6e 63 61 70 63  shift();a.encapc
28570 6f 6e 74 65 6e 74 3d 41 53 4e 31 48 45 58 2e 67  ontent=ASN1HEX.g
28580 65 74 48 65 78 4f 66 54 4c 56 5f 41 74 4f 62 6a  etHexOfTLV_AtObj
28590 28 64 2c 6d 29 3b 61 2e 63 65 72 74 73 3d 6e 75  (d,m);a.certs=nu
285a0 6c 6c 3b 61 2e 72 65 76 73 3d 6e 75 6c 6c 3b 61  ll;a.revs=null;a
285b0 2e 73 69 3d 5b 5d 3b 76 61 72 20 6e 3d 62 2e 73  .si=[];var n=b.s
285c0 68 69 66 74 28 29 3b 69 66 28 64 2e 73 75 62 73  hift();if(d.subs
285d0 74 72 28 6e 2c 32 29 3d 3d 22 61 30 22 29 7b 61  tr(n,2)=="a0"){a
285e0 2e 63 65 72 74 73 3d 41 53 4e 31 48 45 58 2e 67  .certs=ASN1HEX.g
285f0 65 74 48 65 78 4f 66 54 4c 56 5f 41 74 4f 62 6a  etHexOfTLV_AtObj
28600 28 64 2c 6e 29 3b 6e 3d 62 2e 73 68 69 66 74 28  (d,n);n=b.shift(
28610 29 7d 69 66 28 64 2e 73 75 62 73 74 72 28 6e 2c  )}if(d.substr(n,
28620 32 29 3d 3d 22 61 31 22 29 7b 61 2e 72 65 76 73  2)=="a1"){a.revs
28630 3d 41 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f  =ASN1HEX.getHexO
28640 66 54 4c 56 5f 41 74 4f 62 6a 28 64 2c 6e 29 3b  fTLV_AtObj(d,n);
28650 6e 3d 62 2e 73 68 69 66 74 28 29 7d 76 61 72 20  n=b.shift()}var 
28660 6b 3d 6e 3b 69 66 28 64 2e 73 75 62 73 74 72 28  k=n;if(d.substr(
28670 6b 2c 32 29 21 3d 22 33 31 22 29 7b 74 68 72 6f  k,2)!="31"){thro
28680 77 22 43 61 6e 27 74 20 66 69 6e 64 20 73 69 67  w"Can't find sig
28690 6e 65 72 49 6e 66 6f 73 22 7d 76 61 72 20 6a 3d  nerInfos"}var j=
286a0 41 53 4e 31 48 45 58 2e 67 65 74 50 6f 73 41 72  ASN1HEX.getPosAr
286b0 72 61 79 4f 66 43 68 69 6c 64 72 65 6e 5f 41 74  rayOfChildren_At
286c0 4f 62 6a 28 64 2c 6b 29 3b 66 6f 72 28 76 61 72  Obj(d,k);for(var
286d0 20 68 3d 30 3b 68 3c 6a 2e 6c 65 6e 67 74 68 3b   h=0;h<j.length;
286e0 68 2b 2b 29 7b 76 61 72 20 6f 3d 6a 5b 68 5d 3b  h++){var o=j[h];
286f0 76 61 72 20 65 3d 63 2e 70 61 72 73 65 53 69 67  var e=c.parseSig
28700 6e 65 72 49 6e 66 6f 46 6f 72 41 64 64 69 6e 67  nerInfoForAdding
28710 55 6e 73 69 67 6e 65 64 28 64 2c 6f 2c 68 29 3b  Unsigned(d,o,h);
28720 61 2e 73 69 5b 68 5d 3d 65 7d 76 61 72 20 67 3d  a.si[h]=e}var g=
28730 6e 75 6c 6c 3b 61 2e 6f 62 6a 3d 6e 65 77 20 70  null;a.obj=new p
28740 2e 53 69 67 6e 65 64 44 61 74 61 28 29 3b 67 3d  .SignedData();g=
28750 6e 65 77 20 71 2e 41 53 4e 31 4f 62 6a 65 63 74  new q.ASN1Object
28760 28 29 3b 67 2e 68 54 4c 56 3d 61 2e 76 65 72 73  ();g.hTLV=a.vers
28770 69 6f 6e 3b 61 2e 6f 62 6a 2e 64 43 4d 53 56 65  ion;a.obj.dCMSVe
28780 72 73 69 6f 6e 3d 67 3b 67 3d 6e 65 77 20 71 2e  rsion=g;g=new q.
28790 41 53 4e 31 4f 62 6a 65 63 74 28 29 3b 67 2e 68  ASN1Object();g.h
287a0 54 4c 56 3d 61 2e 61 6c 67 73 3b 61 2e 6f 62 6a  TLV=a.algs;a.obj
287b0 2e 64 44 69 67 65 73 74 41 6c 67 73 3d 67 3b 67  .dDigestAlgs=g;g
287c0 3d 6e 65 77 20 71 2e 41 53 4e 31 4f 62 6a 65 63  =new q.ASN1Objec
287d0 74 28 29 3b 67 2e 68 54 4c 56 3d 61 2e 65 6e 63  t();g.hTLV=a.enc
287e0 61 70 63 6f 6e 74 65 6e 74 3b 61 2e 6f 62 6a 2e  apcontent;a.obj.
287f0 64 45 6e 63 61 70 43 6f 6e 74 65 6e 74 49 6e 66  dEncapContentInf
28800 6f 3d 67 3b 67 3d 6e 65 77 20 71 2e 41 53 4e 31  o=g;g=new q.ASN1
28810 4f 62 6a 65 63 74 28 29 3b 67 2e 68 54 4c 56 3d  Object();g.hTLV=
28820 61 2e 63 65 72 74 73 3b 61 2e 6f 62 6a 2e 64 43  a.certs;a.obj.dC
28830 65 72 74 73 3d 67 3b 61 2e 6f 62 6a 2e 73 69 67  erts=g;a.obj.sig
28840 6e 65 72 49 6e 66 6f 4c 69 73 74 3d 5b 5d 3b 66  nerInfoList=[];f
28850 6f 72 28 76 61 72 20 68 3d 30 3b 68 3c 61 2e 73  or(var h=0;h<a.s
28860 69 2e 6c 65 6e 67 74 68 3b 68 2b 2b 29 7b 61 2e  i.length;h++){a.
28870 6f 62 6a 2e 73 69 67 6e 65 72 49 6e 66 6f 4c 69  obj.signerInfoLi
28880 73 74 2e 70 75 73 68 28 61 2e 73 69 5b 68 5d 2e  st.push(a.si[h].
28890 6f 62 6a 29 7d 72 65 74 75 72 6e 20 61 7d 3b 4b  obj)}return a};K
288a0 4a 55 52 2e 61 73 6e 31 2e 63 61 64 65 73 2e 43  JUR.asn1.cades.C
288b0 41 64 45 53 55 74 69 6c 2e 70 61 72 73 65 53 69  AdESUtil.parseSi
288c0 67 6e 65 72 49 6e 66 6f 46 6f 72 41 64 64 69 6e  gnerInfoForAddin
288d0 67 55 6e 73 69 67 6e 65 64 3d 66 75 6e 63 74 69  gUnsigned=functi
288e0 6f 6e 28 64 2c 6b 2c 61 29 7b 76 61 72 20 6d 3d  on(d,k,a){var m=
288f0 4b 4a 55 52 2e 61 73 6e 31 3b 76 61 72 20 6c 3d  KJUR.asn1;var l=
28900 4b 4a 55 52 2e 61 73 6e 31 2e 63 6d 73 3b 76 61  KJUR.asn1.cms;va
28910 72 20 62 3d 7b 7d 3b 76 61 72 20 65 3d 41 53 4e  r b={};var e=ASN
28920 31 48 45 58 2e 67 65 74 50 6f 73 41 72 72 61 79  1HEX.getPosArray
28930 4f 66 43 68 69 6c 64 72 65 6e 5f 41 74 4f 62 6a  OfChildren_AtObj
28940 28 64 2c 6b 29 3b 69 66 28 65 2e 6c 65 6e 67 74  (d,k);if(e.lengt
28950 68 21 3d 36 29 7b 74 68 72 6f 77 22 6e 6f 74 20  h!=6){throw"not 
28960 73 75 70 70 6f 72 74 65 64 20 69 74 65 6d 73 20  supported items 
28970 66 6f 72 20 53 69 67 6e 65 72 49 6e 66 6f 20 28  for SignerInfo (
28980 21 3d 36 29 22 7d 76 61 72 20 66 3d 65 2e 73 68  !=6)"}var f=e.sh
28990 69 66 74 28 29 3b 62 2e 76 65 72 73 69 6f 6e 3d  ift();b.version=
289a0 41 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66  ASN1HEX.getHexOf
289b0 54 4c 56 5f 41 74 4f 62 6a 28 64 2c 66 29 3b 76  TLV_AtObj(d,f);v
289c0 61 72 20 6e 3d 65 2e 73 68 69 66 74 28 29 3b 62  ar n=e.shift();b
289d0 2e 73 69 3d 41 53 4e 31 48 45 58 2e 67 65 74 48  .si=ASN1HEX.getH
289e0 65 78 4f 66 54 4c 56 5f 41 74 4f 62 6a 28 64 2c  exOfTLV_AtObj(d,
289f0 6e 29 3b 76 61 72 20 68 3d 65 2e 73 68 69 66 74  n);var h=e.shift
28a00 28 29 3b 62 2e 64 69 67 61 6c 67 3d 41 53 4e 31  ();b.digalg=ASN1
28a10 48 45 58 2e 67 65 74 48 65 78 4f 66 54 4c 56 5f  HEX.getHexOfTLV_
28a20 41 74 4f 62 6a 28 64 2c 68 29 3b 76 61 72 20 63  AtObj(d,h);var c
28a30 3d 65 2e 73 68 69 66 74 28 29 3b 62 2e 73 61 74  =e.shift();b.sat
28a40 74 72 73 3d 41 53 4e 31 48 45 58 2e 67 65 74 48  trs=ASN1HEX.getH
28a50 65 78 4f 66 54 4c 56 5f 41 74 4f 62 6a 28 64 2c  exOfTLV_AtObj(d,
28a60 63 29 3b 76 61 72 20 69 3d 65 2e 73 68 69 66 74  c);var i=e.shift
28a70 28 29 3b 62 2e 73 69 67 61 6c 67 3d 41 53 4e 31  ();b.sigalg=ASN1
28a80 48 45 58 2e 67 65 74 48 65 78 4f 66 54 4c 56 5f  HEX.getHexOfTLV_
28a90 41 74 4f 62 6a 28 64 2c 69 29 3b 76 61 72 20 6a  AtObj(d,i);var j
28aa0 3d 65 2e 73 68 69 66 74 28 29 3b 62 2e 73 69 67  =e.shift();b.sig
28ab0 3d 41 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f  =ASN1HEX.getHexO
28ac0 66 54 4c 56 5f 41 74 4f 62 6a 28 64 2c 6a 29 3b  fTLV_AtObj(d,j);
28ad0 62 2e 73 69 67 76 61 6c 3d 41 53 4e 31 48 45 58  b.sigval=ASN1HEX
28ae0 2e 67 65 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a  .getHexOfV_AtObj
28af0 28 64 2c 6a 29 3b 76 61 72 20 67 3d 6e 75 6c 6c  (d,j);var g=null
28b00 3b 62 2e 6f 62 6a 3d 6e 65 77 20 6c 2e 53 69 67  ;b.obj=new l.Sig
28b10 6e 65 72 49 6e 66 6f 28 29 3b 67 3d 6e 65 77 20  nerInfo();g=new 
28b20 6d 2e 41 53 4e 31 4f 62 6a 65 63 74 28 29 3b 67  m.ASN1Object();g
28b30 2e 68 54 4c 56 3d 62 2e 76 65 72 73 69 6f 6e 3b  .hTLV=b.version;
28b40 62 2e 6f 62 6a 2e 64 43 4d 53 56 65 72 73 69 6f  b.obj.dCMSVersio
28b50 6e 3d 67 3b 67 3d 6e 65 77 20 6d 2e 41 53 4e 31  n=g;g=new m.ASN1
28b60 4f 62 6a 65 63 74 28 29 3b 67 2e 68 54 4c 56 3d  Object();g.hTLV=
28b70 62 2e 73 69 3b 62 2e 6f 62 6a 2e 64 53 69 67 6e  b.si;b.obj.dSign
28b80 65 72 49 64 65 6e 74 69 66 69 65 72 3d 67 3b 67  erIdentifier=g;g
28b90 3d 6e 65 77 20 6d 2e 41 53 4e 31 4f 62 6a 65 63  =new m.ASN1Objec
28ba0 74 28 29 3b 67 2e 68 54 4c 56 3d 62 2e 64 69 67  t();g.hTLV=b.dig
28bb0 61 6c 67 3b 62 2e 6f 62 6a 2e 64 44 69 67 65 73  alg;b.obj.dDiges
28bc0 74 41 6c 67 6f 72 69 74 68 6d 3d 67 3b 67 3d 6e  tAlgorithm=g;g=n
28bd0 65 77 20 6d 2e 41 53 4e 31 4f 62 6a 65 63 74 28  ew m.ASN1Object(
28be0 29 3b 67 2e 68 54 4c 56 3d 62 2e 73 61 74 74 72  );g.hTLV=b.sattr
28bf0 73 3b 62 2e 6f 62 6a 2e 64 53 69 67 6e 65 64 41  s;b.obj.dSignedA
28c00 74 74 72 73 3d 67 3b 67 3d 6e 65 77 20 6d 2e 41  ttrs=g;g=new m.A
28c10 53 4e 31 4f 62 6a 65 63 74 28 29 3b 67 2e 68 54  SN1Object();g.hT
28c20 4c 56 3d 62 2e 73 69 67 61 6c 67 3b 62 2e 6f 62  LV=b.sigalg;b.ob
28c30 6a 2e 64 53 69 67 41 6c 67 3d 67 3b 67 3d 6e 65  j.dSigAlg=g;g=ne
28c40 77 20 6d 2e 41 53 4e 31 4f 62 6a 65 63 74 28 29  w m.ASN1Object()
28c50 3b 67 2e 68 54 4c 56 3d 62 2e 73 69 67 3b 62 2e  ;g.hTLV=b.sig;b.
28c60 6f 62 6a 2e 64 53 69 67 3d 67 3b 62 2e 6f 62 6a  obj.dSig=g;b.obj
28c70 2e 64 55 6e 73 69 67 6e 65 64 41 74 74 72 73 3d  .dUnsignedAttrs=
28c80 6e 65 77 20 6c 2e 41 74 74 72 69 62 75 74 65 4c  new l.AttributeL
28c90 69 73 74 28 29 3b 72 65 74 75 72 6e 20 62 7d 3b  ist();return b};
28ca0 0a 2f 2a 21 20 61 73 6e 31 63 73 72 2d 31 2e 30  ./*! asn1csr-1.0
28cb0 2e 30 2e 6a 73 20 28 63 29 20 32 30 31 35 20 4b  .0.js (c) 2015 K
28cc0 65 6e 6a 69 20 55 72 75 73 68 69 6d 61 20 7c 20  enji Urushima | 
28cd0 6b 6a 75 72 2e 67 69 74 68 75 62 2e 63 6f 6d 2f  kjur.github.com/
28ce0 6a 73 72 73 61 73 69 67 6e 2f 6c 69 63 65 6e 73  jsrsasign/licens
28cf0 65 0a 20 2a 2f 0a 69 66 28 74 79 70 65 6f 66 20  e. */.if(typeof 
28d00 4b 4a 55 52 2e 61 73 6e 31 2e 63 73 72 3d 3d 22  KJUR.asn1.csr=="
28d10 75 6e 64 65 66 69 6e 65 64 22 7c 7c 21 4b 4a 55  undefined"||!KJU
28d20 52 2e 61 73 6e 31 2e 63 73 72 29 7b 4b 4a 55 52  R.asn1.csr){KJUR
28d30 2e 61 73 6e 31 2e 63 73 72 3d 7b 7d 7d 4b 4a 55  .asn1.csr={}}KJU
28d40 52 2e 61 73 6e 31 2e 63 73 72 2e 43 65 72 74 69  R.asn1.csr.Certi
28d50 66 69 63 61 74 69 6f 6e 52 65 71 75 65 73 74 3d  ficationRequest=
28d60 66 75 6e 63 74 69 6f 6e 28 66 29 7b 4b 4a 55 52  function(f){KJUR
28d70 2e 61 73 6e 31 2e 63 73 72 2e 43 65 72 74 69 66  .asn1.csr.Certif
28d80 69 63 61 74 69 6f 6e 52 65 71 75 65 73 74 2e 73  icationRequest.s
28d90 75 70 65 72 63 6c 61 73 73 2e 63 6f 6e 73 74 72  uperclass.constr
28da0 75 63 74 6f 72 2e 63 61 6c 6c 28 74 68 69 73 29  uctor.call(this)
28db0 3b 76 61 72 20 62 3d 6e 75 6c 6c 3b 76 61 72 20  ;var b=null;var 
28dc0 64 3d 6e 75 6c 6c 3b 76 61 72 20 65 3d 6e 75 6c  d=null;var e=nul
28dd0 6c 3b 76 61 72 20 63 3d 6e 75 6c 6c 3b 76 61 72  l;var c=null;var
28de0 20 61 3d 6e 75 6c 6c 3b 74 68 69 73 2e 73 69 67   a=null;this.sig
28df0 6e 3d 66 75 6e 63 74 69 6f 6e 28 69 2c 68 29 7b  n=function(i,h){
28e00 69 66 28 74 68 69 73 2e 70 72 76 4b 65 79 3d 3d  if(this.prvKey==
28e10 6e 75 6c 6c 29 7b 74 68 69 73 2e 70 72 76 4b 65  null){this.prvKe
28e20 79 3d 68 7d 74 68 69 73 2e 61 73 6e 31 53 69 67  y=h}this.asn1Sig
28e30 6e 61 74 75 72 65 41 6c 67 3d 6e 65 77 20 4b 4a  natureAlg=new KJ
28e40 55 52 2e 61 73 6e 31 2e 78 35 30 39 2e 41 6c 67  UR.asn1.x509.Alg
28e50 6f 72 69 74 68 6d 49 64 65 6e 74 69 66 69 65 72  orithmIdentifier
28e60 28 7b 6e 61 6d 65 3a 69 7d 29 3b 73 69 67 3d 6e  ({name:i});sig=n
28e70 65 77 20 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 53  ew KJUR.crypto.S
28e80 69 67 6e 61 74 75 72 65 28 7b 61 6c 67 3a 69 7d  ignature({alg:i}
28e90 29 3b 73 69 67 2e 69 6e 69 74 53 69 67 6e 28 74  );sig.initSign(t
28ea0 68 69 73 2e 70 72 76 4b 65 79 29 3b 73 69 67 2e  his.prvKey);sig.
28eb0 75 70 64 61 74 65 48 65 78 28 74 68 69 73 2e 61  updateHex(this.a
28ec0 73 6e 31 43 53 52 49 6e 66 6f 2e 67 65 74 45 6e  sn1CSRInfo.getEn
28ed0 63 6f 64 65 64 48 65 78 28 29 29 3b 74 68 69 73  codedHex());this
28ee0 2e 68 65 78 53 69 67 3d 73 69 67 2e 73 69 67 6e  .hexSig=sig.sign
28ef0 28 29 3b 74 68 69 73 2e 61 73 6e 31 53 69 67 3d  ();this.asn1Sig=
28f00 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  new KJUR.asn1.DE
28f10 52 42 69 74 53 74 72 69 6e 67 28 7b 68 65 78 3a  RBitString({hex:
28f20 22 30 30 22 2b 74 68 69 73 2e 68 65 78 53 69 67  "00"+this.hexSig
28f30 7d 29 3b 76 61 72 20 67 3d 6e 65 77 20 4b 4a 55  });var g=new KJU
28f40 52 2e 61 73 6e 31 2e 44 45 52 53 65 71 75 65 6e  R.asn1.DERSequen
28f50 63 65 28 7b 61 72 72 61 79 3a 5b 74 68 69 73 2e  ce({array:[this.
28f60 61 73 6e 31 43 53 52 49 6e 66 6f 2c 74 68 69 73  asn1CSRInfo,this
28f70 2e 61 73 6e 31 53 69 67 6e 61 74 75 72 65 41 6c  .asn1SignatureAl
28f80 67 2c 74 68 69 73 2e 61 73 6e 31 53 69 67 5d 7d  g,this.asn1Sig]}
28f90 29 3b 74 68 69 73 2e 68 54 4c 56 3d 67 2e 67 65  );this.hTLV=g.ge
28fa0 74 45 6e 63 6f 64 65 64 48 65 78 28 29 3b 74 68  tEncodedHex();th
28fb0 69 73 2e 69 73 4d 6f 64 69 66 69 65 64 3d 66 61  is.isModified=fa
28fc0 6c 73 65 7d 3b 74 68 69 73 2e 67 65 74 50 45 4d  lse};this.getPEM
28fd0 53 74 72 69 6e 67 3d 66 75 6e 63 74 69 6f 6e 28  String=function(
28fe0 29 7b 76 61 72 20 67 3d 4b 4a 55 52 2e 61 73 6e  ){var g=KJUR.asn
28ff0 31 2e 41 53 4e 31 55 74 69 6c 2e 67 65 74 50 45  1.ASN1Util.getPE
29000 4d 53 74 72 69 6e 67 46 72 6f 6d 48 65 78 28 74  MStringFromHex(t
29010 68 69 73 2e 67 65 74 45 6e 63 6f 64 65 64 48 65  his.getEncodedHe
29020 78 28 29 2c 22 43 45 52 54 49 46 49 43 41 54 45  x(),"CERTIFICATE
29030 20 52 45 51 55 45 53 54 22 29 3b 72 65 74 75 72   REQUEST");retur
29040 6e 20 67 7d 3b 74 68 69 73 2e 67 65 74 45 6e 63  n g};this.getEnc
29050 6f 64 65 64 48 65 78 3d 66 75 6e 63 74 69 6f 6e  odedHex=function
29060 28 29 7b 69 66 28 74 68 69 73 2e 69 73 4d 6f 64  (){if(this.isMod
29070 69 66 69 65 64 3d 3d 66 61 6c 73 65 26 26 74 68  ified==false&&th
29080 69 73 2e 68 54 4c 56 21 3d 6e 75 6c 6c 29 7b 72  is.hTLV!=null){r
29090 65 74 75 72 6e 20 74 68 69 73 2e 68 54 4c 56 7d  eturn this.hTLV}
290a0 74 68 72 6f 77 22 6e 6f 74 20 73 69 67 6e 65 64  throw"not signed
290b0 20 79 65 74 22 7d 3b 69 66 28 74 79 70 65 6f 66   yet"};if(typeof
290c0 20 66 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 29   f!="undefined")
290d0 7b 69 66 28 74 79 70 65 6f 66 20 66 2e 63 73 72  {if(typeof f.csr
290e0 69 6e 66 6f 21 3d 22 75 6e 64 65 66 69 6e 65 64  info!="undefined
290f0 22 29 7b 74 68 69 73 2e 61 73 6e 31 43 53 52 49  "){this.asn1CSRI
29100 6e 66 6f 3d 66 2e 63 73 72 69 6e 66 6f 7d 7d 7d  nfo=f.csrinfo}}}
29110 3b 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65  ;YAHOO.lang.exte
29120 6e 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 63 73 72  nd(KJUR.asn1.csr
29130 2e 43 65 72 74 69 66 69 63 61 74 69 6f 6e 52 65  .CertificationRe
29140 71 75 65 73 74 2c 4b 4a 55 52 2e 61 73 6e 31 2e  quest,KJUR.asn1.
29150 41 53 4e 31 4f 62 6a 65 63 74 29 3b 4b 4a 55 52  ASN1Object);KJUR
29160 2e 61 73 6e 31 2e 63 73 72 2e 43 65 72 74 69 66  .asn1.csr.Certif
29170 69 63 61 74 69 6f 6e 52 65 71 75 65 73 74 49 6e  icationRequestIn
29180 66 6f 3d 66 75 6e 63 74 69 6f 6e 28 61 29 7b 4b  fo=function(a){K
29190 4a 55 52 2e 61 73 6e 31 2e 63 73 72 2e 43 65 72  JUR.asn1.csr.Cer
291a0 74 69 66 69 63 61 74 69 6f 6e 52 65 71 75 65 73  tificationReques
291b0 74 49 6e 66 6f 2e 73 75 70 65 72 63 6c 61 73 73  tInfo.superclass
291c0 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 63 61 6c  .constructor.cal
291d0 6c 28 74 68 69 73 29 3b 74 68 69 73 2e 5f 69 6e  l(this);this._in
291e0 69 74 69 61 6c 69 7a 65 3d 66 75 6e 63 74 69 6f  itialize=functio
291f0 6e 28 29 7b 74 68 69 73 2e 61 73 6e 31 41 72 72  n(){this.asn1Arr
29200 61 79 3d 6e 65 77 20 41 72 72 61 79 28 29 3b 74  ay=new Array();t
29210 68 69 73 2e 61 73 6e 31 56 65 72 73 69 6f 6e 3d  his.asn1Version=
29220 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  new KJUR.asn1.DE
29230 52 49 6e 74 65 67 65 72 28 7b 22 69 6e 74 22 3a  RInteger({"int":
29240 30 7d 29 3b 74 68 69 73 2e 61 73 6e 31 53 75 62  0});this.asn1Sub
29250 6a 65 63 74 3d 6e 75 6c 6c 3b 74 68 69 73 2e 61  ject=null;this.a
29260 73 6e 31 53 75 62 6a 50 4b 65 79 3d 6e 75 6c 6c  sn1SubjPKey=null
29270 3b 74 68 69 73 2e 65 78 74 65 6e 73 69 6f 6e 73  ;this.extensions
29280 41 72 72 61 79 3d 6e 65 77 20 41 72 72 61 79 28  Array=new Array(
29290 29 7d 3b 74 68 69 73 2e 73 65 74 53 75 62 6a 65  )};this.setSubje
292a0 63 74 42 79 50 61 72 61 6d 3d 66 75 6e 63 74 69  ctByParam=functi
292b0 6f 6e 28 62 29 7b 74 68 69 73 2e 61 73 6e 31 53  on(b){this.asn1S
292c0 75 62 6a 65 63 74 3d 6e 65 77 20 4b 4a 55 52 2e  ubject=new KJUR.
292d0 61 73 6e 31 2e 78 35 30 39 2e 58 35 30 30 4e 61  asn1.x509.X500Na
292e0 6d 65 28 62 29 7d 3b 74 68 69 73 2e 73 65 74 53  me(b)};this.setS
292f0 75 62 6a 65 63 74 50 75 62 6c 69 63 4b 65 79 42  ubjectPublicKeyB
29300 79 47 65 74 4b 65 79 3d 66 75 6e 63 74 69 6f 6e  yGetKey=function
29310 28 63 29 7b 76 61 72 20 62 3d 4b 45 59 55 54 49  (c){var b=KEYUTI
29320 4c 2e 67 65 74 4b 65 79 28 63 29 3b 74 68 69 73  L.getKey(c);this
29330 2e 61 73 6e 31 53 75 62 6a 50 4b 65 79 3d 6e 65  .asn1SubjPKey=ne
29340 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 78 35 30 39  w KJUR.asn1.x509
29350 2e 53 75 62 6a 65 63 74 50 75 62 6c 69 63 4b 65  .SubjectPublicKe
29360 79 49 6e 66 6f 28 62 29 7d 3b 74 68 69 73 2e 67  yInfo(b)};this.g
29370 65 74 45 6e 63 6f 64 65 64 48 65 78 3d 66 75 6e  etEncodedHex=fun
29380 63 74 69 6f 6e 28 29 7b 74 68 69 73 2e 61 73 6e  ction(){this.asn
29390 31 41 72 72 61 79 3d 6e 65 77 20 41 72 72 61 79  1Array=new Array
293a0 28 29 3b 74 68 69 73 2e 61 73 6e 31 41 72 72 61  ();this.asn1Arra
293b0 79 2e 70 75 73 68 28 74 68 69 73 2e 61 73 6e 31  y.push(this.asn1
293c0 56 65 72 73 69 6f 6e 29 3b 74 68 69 73 2e 61 73  Version);this.as
293d0 6e 31 41 72 72 61 79 2e 70 75 73 68 28 74 68 69  n1Array.push(thi
293e0 73 2e 61 73 6e 31 53 75 62 6a 65 63 74 29 3b 74  s.asn1Subject);t
293f0 68 69 73 2e 61 73 6e 31 41 72 72 61 79 2e 70 75  his.asn1Array.pu
29400 73 68 28 74 68 69 73 2e 61 73 6e 31 53 75 62 6a  sh(this.asn1Subj
29410 50 4b 65 79 29 3b 76 61 72 20 63 3d 6e 65 77 20  PKey);var c=new 
29420 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 53 65 71  KJUR.asn1.DERSeq
29430 75 65 6e 63 65 28 7b 61 72 72 61 79 3a 74 68 69  uence({array:thi
29440 73 2e 65 78 74 65 6e 73 69 6f 6e 73 41 72 72 61  s.extensionsArra
29450 79 7d 29 3b 76 61 72 20 62 3d 6e 65 77 20 4b 4a  y});var b=new KJ
29460 55 52 2e 61 73 6e 31 2e 44 45 52 54 61 67 67 65  UR.asn1.DERTagge
29470 64 4f 62 6a 65 63 74 28 7b 65 78 70 6c 69 63 69  dObject({explici
29480 74 3a 66 61 6c 73 65 2c 74 61 67 3a 22 61 30 22  t:false,tag:"a0"
29490 2c 6f 62 6a 3a 63 7d 29 3b 74 68 69 73 2e 61 73  ,obj:c});this.as
294a0 6e 31 41 72 72 61 79 2e 70 75 73 68 28 62 29 3b  n1Array.push(b);
294b0 76 61 72 20 64 3d 6e 65 77 20 4b 4a 55 52 2e 61  var d=new KJUR.a
294c0 73 6e 31 2e 44 45 52 53 65 71 75 65 6e 63 65 28  sn1.DERSequence(
294d0 7b 61 72 72 61 79 3a 74 68 69 73 2e 61 73 6e 31  {array:this.asn1
294e0 41 72 72 61 79 7d 29 3b 74 68 69 73 2e 68 54 4c  Array});this.hTL
294f0 56 3d 64 2e 67 65 74 45 6e 63 6f 64 65 64 48 65  V=d.getEncodedHe
29500 78 28 29 3b 74 68 69 73 2e 69 73 4d 6f 64 69 66  x();this.isModif
29510 69 65 64 3d 66 61 6c 73 65 3b 72 65 74 75 72 6e  ied=false;return
29520 20 74 68 69 73 2e 68 54 4c 56 7d 3b 74 68 69 73   this.hTLV};this
29530 2e 5f 69 6e 69 74 69 61 6c 69 7a 65 28 29 7d 3b  ._initialize()};
29540 59 41 48 4f 4f 2e 6c 61 6e 67 2e 65 78 74 65 6e  YAHOO.lang.exten
29550 64 28 4b 4a 55 52 2e 61 73 6e 31 2e 63 73 72 2e  d(KJUR.asn1.csr.
29560 43 65 72 74 69 66 69 63 61 74 69 6f 6e 52 65 71  CertificationReq
29570 75 65 73 74 49 6e 66 6f 2c 4b 4a 55 52 2e 61 73  uestInfo,KJUR.as
29580 6e 31 2e 41 53 4e 31 4f 62 6a 65 63 74 29 3b 4b  n1.ASN1Object);K
29590 4a 55 52 2e 61 73 6e 31 2e 63 73 72 2e 43 53 52  JUR.asn1.csr.CSR
295a0 55 74 69 6c 3d 6e 65 77 20 66 75 6e 63 74 69 6f  Util=new functio
295b0 6e 28 29 7b 7d 3b 4b 4a 55 52 2e 61 73 6e 31 2e  n(){};KJUR.asn1.
295c0 63 73 72 2e 43 53 52 55 74 69 6c 2e 6e 65 77 43  csr.CSRUtil.newC
295d0 53 52 50 45 4d 3d 66 75 6e 63 74 69 6f 6e 28 66  SRPEM=function(f
295e0 29 7b 76 61 72 20 63 3d 4b 4a 55 52 2e 61 73 6e  ){var c=KJUR.asn
295f0 31 2e 63 73 72 3b 69 66 28 66 2e 73 75 62 6a 65  1.csr;if(f.subje
29600 63 74 3d 3d 3d 75 6e 64 65 66 69 6e 65 64 29 7b  ct===undefined){
29610 74 68 72 6f 77 22 70 61 72 61 6d 65 74 65 72 20  throw"parameter 
29620 73 75 62 6a 65 63 74 20 75 6e 64 65 66 69 6e 65  subject undefine
29630 64 22 7d 69 66 28 66 2e 73 62 6a 70 75 62 6b 65  d"}if(f.sbjpubke
29640 79 3d 3d 3d 75 6e 64 65 66 69 6e 65 64 29 7b 74  y===undefined){t
29650 68 72 6f 77 22 70 61 72 61 6d 65 74 65 72 20 73  hrow"parameter s
29660 62 6a 70 75 62 6b 65 79 20 75 6e 64 65 66 69 6e  bjpubkey undefin
29670 65 64 22 7d 69 66 28 66 2e 73 69 67 61 6c 67 3d  ed"}if(f.sigalg=
29680 3d 3d 75 6e 64 65 66 69 6e 65 64 29 7b 74 68 72  ==undefined){thr
29690 6f 77 22 70 61 72 61 6d 65 74 65 72 20 73 69 67  ow"parameter sig
296a0 61 6c 67 20 75 6e 64 65 66 69 6e 65 64 22 7d 69  alg undefined"}i
296b0 66 28 66 2e 73 62 6a 70 72 76 6b 65 79 3d 3d 3d  f(f.sbjprvkey===
296c0 75 6e 64 65 66 69 6e 65 64 29 7b 74 68 72 6f 77  undefined){throw
296d0 22 70 61 72 61 6d 65 74 65 72 20 73 62 6a 70 75  "parameter sbjpu
296e0 62 6b 65 79 20 75 6e 64 65 66 69 6e 65 64 22 7d  bkey undefined"}
296f0 76 61 72 20 62 3d 6e 65 77 20 63 2e 43 65 72 74  var b=new c.Cert
29700 69 66 69 63 61 74 69 6f 6e 52 65 71 75 65 73 74  ificationRequest
29710 49 6e 66 6f 28 29 3b 62 2e 73 65 74 53 75 62 6a  Info();b.setSubj
29720 65 63 74 42 79 50 61 72 61 6d 28 66 2e 73 75 62  ectByParam(f.sub
29730 6a 65 63 74 29 3b 62 2e 73 65 74 53 75 62 6a 65  ject);b.setSubje
29740 63 74 50 75 62 6c 69 63 4b 65 79 42 79 47 65 74  ctPublicKeyByGet
29750 4b 65 79 28 66 2e 73 62 6a 70 75 62 6b 65 79 29  Key(f.sbjpubkey)
29760 3b 76 61 72 20 64 3d 6e 65 77 20 63 2e 43 65 72  ;var d=new c.Cer
29770 74 69 66 69 63 61 74 69 6f 6e 52 65 71 75 65 73  tificationReques
29780 74 28 7b 63 73 72 69 6e 66 6f 3a 62 7d 29 3b 76  t({csrinfo:b});v
29790 61 72 20 61 3d 4b 45 59 55 54 49 4c 2e 67 65 74  ar a=KEYUTIL.get
297a0 4b 65 79 28 66 2e 73 62 6a 70 72 76 6b 65 79 29  Key(f.sbjprvkey)
297b0 3b 64 2e 73 69 67 6e 28 66 2e 73 69 67 61 6c 67  ;d.sign(f.sigalg
297c0 2c 61 29 3b 76 61 72 20 65 3d 64 2e 67 65 74 50  ,a);var e=d.getP
297d0 45 4d 53 74 72 69 6e 67 28 29 3b 72 65 74 75 72  EMString();retur
297e0 6e 20 65 7d 3b 0a 2f 2a 21 20 62 61 73 65 36 34  n e};./*! base64
297f0 78 2d 31 2e 31 2e 36 20 28 63 29 20 32 30 31 32  x-1.1.6 (c) 2012
29800 2d 32 30 31 35 20 4b 65 6e 6a 69 20 55 72 75 73  -2015 Kenji Urus
29810 68 69 6d 61 20 7c 20 6b 6a 75 72 2e 67 69 74 68  hima | kjur.gith
29820 75 62 2e 63 6f 6d 2f 6a 73 6a 77 73 2f 6c 69 63  ub.com/jsjws/lic
29830 65 6e 73 65 0a 20 2a 2f 0a 66 75 6e 63 74 69 6f  ense. */.functio
29840 6e 20 42 61 73 65 36 34 78 28 29 7b 7d 66 75 6e  n Base64x(){}fun
29850 63 74 69 6f 6e 20 73 74 6f 42 41 28 64 29 7b 76  ction stoBA(d){v
29860 61 72 20 62 3d 6e 65 77 20 41 72 72 61 79 28 29  ar b=new Array()
29870 3b 66 6f 72 28 76 61 72 20 63 3d 30 3b 63 3c 64  ;for(var c=0;c<d
29880 2e 6c 65 6e 67 74 68 3b 63 2b 2b 29 7b 62 5b 63  .length;c++){b[c
29890 5d 3d 64 2e 63 68 61 72 43 6f 64 65 41 74 28 63  ]=d.charCodeAt(c
298a0 29 7d 72 65 74 75 72 6e 20 62 7d 66 75 6e 63 74  )}return b}funct
298b0 69 6f 6e 20 42 41 74 6f 73 28 62 29 7b 76 61 72  ion BAtos(b){var
298c0 20 64 3d 22 22 3b 66 6f 72 28 76 61 72 20 63 3d   d="";for(var c=
298d0 30 3b 63 3c 62 2e 6c 65 6e 67 74 68 3b 63 2b 2b  0;c<b.length;c++
298e0 29 7b 64 3d 64 2b 53 74 72 69 6e 67 2e 66 72 6f  ){d=d+String.fro
298f0 6d 43 68 61 72 43 6f 64 65 28 62 5b 63 5d 29 7d  mCharCode(b[c])}
29900 72 65 74 75 72 6e 20 64 7d 66 75 6e 63 74 69 6f  return d}functio
29910 6e 20 42 41 74 6f 68 65 78 28 62 29 7b 76 61 72  n BAtohex(b){var
29920 20 65 3d 22 22 3b 66 6f 72 28 76 61 72 20 64 3d   e="";for(var d=
29930 30 3b 64 3c 62 2e 6c 65 6e 67 74 68 3b 64 2b 2b  0;d<b.length;d++
29940 29 7b 76 61 72 20 63 3d 62 5b 64 5d 2e 74 6f 53  ){var c=b[d].toS
29950 74 72 69 6e 67 28 31 36 29 3b 69 66 28 63 2e 6c  tring(16);if(c.l
29960 65 6e 67 74 68 3d 3d 31 29 7b 63 3d 22 30 22 2b  ength==1){c="0"+
29970 63 7d 65 3d 65 2b 63 7d 72 65 74 75 72 6e 20 65  c}e=e+c}return e
29980 7d 66 75 6e 63 74 69 6f 6e 20 73 74 6f 68 65 78  }function stohex
29990 28 61 29 7b 72 65 74 75 72 6e 20 42 41 74 6f 68  (a){return BAtoh
299a0 65 78 28 73 74 6f 42 41 28 61 29 29 7d 66 75 6e  ex(stoBA(a))}fun
299b0 63 74 69 6f 6e 20 73 74 6f 62 36 34 28 61 29 7b  ction stob64(a){
299c0 72 65 74 75 72 6e 20 68 65 78 32 62 36 34 28 73  return hex2b64(s
299d0 74 6f 68 65 78 28 61 29 29 7d 66 75 6e 63 74 69  tohex(a))}functi
299e0 6f 6e 20 73 74 6f 62 36 34 75 28 61 29 7b 72 65  on stob64u(a){re
299f0 74 75 72 6e 20 62 36 34 74 6f 62 36 34 75 28 68  turn b64tob64u(h
29a00 65 78 32 62 36 34 28 73 74 6f 68 65 78 28 61 29  ex2b64(stohex(a)
29a10 29 29 7d 66 75 6e 63 74 69 6f 6e 20 62 36 34 75  ))}function b64u
29a20 74 6f 73 28 61 29 7b 72 65 74 75 72 6e 20 42 41  tos(a){return BA
29a30 74 6f 73 28 62 36 34 74 6f 42 41 28 62 36 34 75  tos(b64toBA(b64u
29a40 74 6f 62 36 34 28 61 29 29 29 7d 66 75 6e 63 74  tob64(a)))}funct
29a50 69 6f 6e 20 62 36 34 74 6f 62 36 34 75 28 61 29  ion b64tob64u(a)
29a60 7b 61 3d 61 2e 72 65 70 6c 61 63 65 28 2f 5c 3d  {a=a.replace(/\=
29a70 2f 67 2c 22 22 29 3b 61 3d 61 2e 72 65 70 6c 61  /g,"");a=a.repla
29a80 63 65 28 2f 5c 2b 2f 67 2c 22 2d 22 29 3b 61 3d  ce(/\+/g,"-");a=
29a90 61 2e 72 65 70 6c 61 63 65 28 2f 5c 2f 2f 67 2c  a.replace(/\//g,
29aa0 22 5f 22 29 3b 72 65 74 75 72 6e 20 61 7d 66 75  "_");return a}fu
29ab0 6e 63 74 69 6f 6e 20 62 36 34 75 74 6f 62 36 34  nction b64utob64
29ac0 28 61 29 7b 69 66 28 61 2e 6c 65 6e 67 74 68 25  (a){if(a.length%
29ad0 34 3d 3d 32 29 7b 61 3d 61 2b 22 3d 3d 22 7d 65  4==2){a=a+"=="}e
29ae0 6c 73 65 7b 69 66 28 61 2e 6c 65 6e 67 74 68 25  lse{if(a.length%
29af0 34 3d 3d 33 29 7b 61 3d 61 2b 22 3d 22 7d 7d 61  4==3){a=a+"="}}a
29b00 3d 61 2e 72 65 70 6c 61 63 65 28 2f 2d 2f 67 2c  =a.replace(/-/g,
29b10 22 2b 22 29 3b 61 3d 61 2e 72 65 70 6c 61 63 65  "+");a=a.replace
29b20 28 2f 5f 2f 67 2c 22 2f 22 29 3b 72 65 74 75 72  (/_/g,"/");retur
29b30 6e 20 61 7d 66 75 6e 63 74 69 6f 6e 20 68 65 78  n a}function hex
29b40 74 6f 62 36 34 75 28 61 29 7b 69 66 28 61 2e 6c  tob64u(a){if(a.l
29b50 65 6e 67 74 68 25 32 3d 3d 31 29 7b 61 3d 22 30  ength%2==1){a="0
29b60 22 2b 61 7d 72 65 74 75 72 6e 20 62 36 34 74 6f  "+a}return b64to
29b70 62 36 34 75 28 68 65 78 32 62 36 34 28 61 29 29  b64u(hex2b64(a))
29b80 7d 66 75 6e 63 74 69 6f 6e 20 62 36 34 75 74 6f  }function b64uto
29b90 68 65 78 28 61 29 7b 72 65 74 75 72 6e 20 62 36  hex(a){return b6
29ba0 34 74 6f 68 65 78 28 62 36 34 75 74 6f 62 36 34  4tohex(b64utob64
29bb0 28 61 29 29 7d 76 61 72 20 75 74 66 38 74 6f 62  (a))}var utf8tob
29bc0 36 34 75 2c 62 36 34 75 74 6f 75 74 66 38 3b 69  64u,b64utoutf8;i
29bd0 66 28 74 79 70 65 6f 66 20 42 75 66 66 65 72 3d  f(typeof Buffer=
29be0 3d 3d 22 66 75 6e 63 74 69 6f 6e 22 29 7b 75 74  =="function"){ut
29bf0 66 38 74 6f 62 36 34 75 3d 66 75 6e 63 74 69 6f  f8tob64u=functio
29c00 6e 28 61 29 7b 72 65 74 75 72 6e 20 62 36 34 74  n(a){return b64t
29c10 6f 62 36 34 75 28 6e 65 77 20 42 75 66 66 65 72  ob64u(new Buffer
29c20 28 61 2c 22 75 74 66 38 22 29 2e 74 6f 53 74 72  (a,"utf8").toStr
29c30 69 6e 67 28 22 62 61 73 65 36 34 22 29 29 7d 3b  ing("base64"))};
29c40 62 36 34 75 74 6f 75 74 66 38 3d 66 75 6e 63 74  b64utoutf8=funct
29c50 69 6f 6e 28 61 29 7b 72 65 74 75 72 6e 20 6e 65  ion(a){return ne
29c60 77 20 42 75 66 66 65 72 28 62 36 34 75 74 6f 62  w Buffer(b64utob
29c70 36 34 28 61 29 2c 22 62 61 73 65 36 34 22 29 2e  64(a),"base64").
29c80 74 6f 53 74 72 69 6e 67 28 22 75 74 66 38 22 29  toString("utf8")
29c90 7d 7d 65 6c 73 65 7b 75 74 66 38 74 6f 62 36 34  }}else{utf8tob64
29ca0 75 3d 66 75 6e 63 74 69 6f 6e 28 61 29 7b 72 65  u=function(a){re
29cb0 74 75 72 6e 20 68 65 78 74 6f 62 36 34 75 28 75  turn hextob64u(u
29cc0 72 69 63 6d 70 74 6f 68 65 78 28 65 6e 63 6f 64  ricmptohex(encod
29cd0 65 55 52 49 43 6f 6d 70 6f 6e 65 6e 74 41 6c 6c  eURIComponentAll
29ce0 28 61 29 29 29 7d 3b 62 36 34 75 74 6f 75 74 66  (a)))};b64utoutf
29cf0 38 3d 66 75 6e 63 74 69 6f 6e 28 61 29 7b 72 65  8=function(a){re
29d00 74 75 72 6e 20 64 65 63 6f 64 65 55 52 49 43 6f  turn decodeURICo
29d10 6d 70 6f 6e 65 6e 74 28 68 65 78 74 6f 75 72 69  mponent(hextouri
29d20 63 6d 70 28 62 36 34 75 74 6f 68 65 78 28 61 29  cmp(b64utohex(a)
29d30 29 29 7d 7d 66 75 6e 63 74 69 6f 6e 20 75 74 66  ))}}function utf
29d40 38 74 6f 62 36 34 28 61 29 7b 72 65 74 75 72 6e  8tob64(a){return
29d50 20 68 65 78 32 62 36 34 28 75 72 69 63 6d 70 74   hex2b64(uricmpt
29d60 6f 68 65 78 28 65 6e 63 6f 64 65 55 52 49 43 6f  ohex(encodeURICo
29d70 6d 70 6f 6e 65 6e 74 41 6c 6c 28 61 29 29 29 7d  mponentAll(a)))}
29d80 66 75 6e 63 74 69 6f 6e 20 62 36 34 74 6f 75 74  function b64tout
29d90 66 38 28 61 29 7b 72 65 74 75 72 6e 20 64 65 63  f8(a){return dec
29da0 6f 64 65 55 52 49 43 6f 6d 70 6f 6e 65 6e 74 28  odeURIComponent(
29db0 68 65 78 74 6f 75 72 69 63 6d 70 28 62 36 34 74  hextouricmp(b64t
29dc0 6f 68 65 78 28 61 29 29 29 7d 66 75 6e 63 74 69  ohex(a)))}functi
29dd0 6f 6e 20 75 74 66 38 74 6f 68 65 78 28 61 29 7b  on utf8tohex(a){
29de0 72 65 74 75 72 6e 20 75 72 69 63 6d 70 74 6f 68  return uricmptoh
29df0 65 78 28 65 6e 63 6f 64 65 55 52 49 43 6f 6d 70  ex(encodeURIComp
29e00 6f 6e 65 6e 74 41 6c 6c 28 61 29 29 7d 66 75 6e  onentAll(a))}fun
29e10 63 74 69 6f 6e 20 68 65 78 74 6f 75 74 66 38 28  ction hextoutf8(
29e20 61 29 7b 72 65 74 75 72 6e 20 64 65 63 6f 64 65  a){return decode
29e30 55 52 49 43 6f 6d 70 6f 6e 65 6e 74 28 68 65 78  URIComponent(hex
29e40 74 6f 75 72 69 63 6d 70 28 61 29 29 7d 66 75 6e  touricmp(a))}fun
29e50 63 74 69 6f 6e 20 68 65 78 74 6f 72 73 74 72 28  ction hextorstr(
29e60 63 29 7b 76 61 72 20 62 3d 22 22 3b 66 6f 72 28  c){var b="";for(
29e70 76 61 72 20 61 3d 30 3b 61 3c 63 2e 6c 65 6e 67  var a=0;a<c.leng
29e80 74 68 2d 31 3b 61 2b 3d 32 29 7b 62 2b 3d 53 74  th-1;a+=2){b+=St
29e90 72 69 6e 67 2e 66 72 6f 6d 43 68 61 72 43 6f 64  ring.fromCharCod
29ea0 65 28 70 61 72 73 65 49 6e 74 28 63 2e 73 75 62  e(parseInt(c.sub
29eb0 73 74 72 28 61 2c 32 29 2c 31 36 29 29 7d 72 65  str(a,2),16))}re
29ec0 74 75 72 6e 20 62 7d 66 75 6e 63 74 69 6f 6e 20  turn b}function 
29ed0 72 73 74 72 74 6f 68 65 78 28 63 29 7b 76 61 72  rstrtohex(c){var
29ee0 20 61 3d 22 22 3b 66 6f 72 28 76 61 72 20 62 3d   a="";for(var b=
29ef0 30 3b 62 3c 63 2e 6c 65 6e 67 74 68 3b 62 2b 2b  0;b<c.length;b++
29f00 29 7b 61 2b 3d 28 22 30 22 2b 63 2e 63 68 61 72  ){a+=("0"+c.char
29f10 43 6f 64 65 41 74 28 62 29 2e 74 6f 53 74 72 69  CodeAt(b).toStri
29f20 6e 67 28 31 36 29 29 2e 73 6c 69 63 65 28 2d 32  ng(16)).slice(-2
29f30 29 7d 72 65 74 75 72 6e 20 61 7d 66 75 6e 63 74  )}return a}funct
29f40 69 6f 6e 20 68 65 78 74 6f 62 36 34 28 61 29 7b  ion hextob64(a){
29f50 72 65 74 75 72 6e 20 68 65 78 32 62 36 34 28 61  return hex2b64(a
29f60 29 7d 66 75 6e 63 74 69 6f 6e 20 68 65 78 74 6f  )}function hexto
29f70 62 36 34 6e 6c 28 62 29 7b 76 61 72 20 61 3d 68  b64nl(b){var a=h
29f80 65 78 74 6f 62 36 34 28 62 29 3b 76 61 72 20 63  extob64(b);var c
29f90 3d 61 2e 72 65 70 6c 61 63 65 28 2f 28 2e 7b 36  =a.replace(/(.{6
29fa0 34 7d 29 2f 67 2c 22 24 31 5c 72 5c 6e 22 29 3b  4})/g,"$1\r\n");
29fb0 63 3d 63 2e 72 65 70 6c 61 63 65 28 2f 5c 72 5c  c=c.replace(/\r\
29fc0 6e 24 2f 2c 22 22 29 3b 72 65 74 75 72 6e 20 63  n$/,"");return c
29fd0 7d 66 75 6e 63 74 69 6f 6e 20 62 36 34 6e 6c 74  }function b64nlt
29fe0 6f 68 65 78 28 62 29 7b 76 61 72 20 61 3d 62 2e  ohex(b){var a=b.
29ff0 72 65 70 6c 61 63 65 28 2f 5b 5e 30 2d 39 41 2d  replace(/[^0-9A-
2a000 5a 61 2d 7a 5c 2f 2b 3d 5d 2a 2f 67 2c 22 22 29  Za-z\/+=]*/g,"")
2a010 3b 76 61 72 20 63 3d 62 36 34 74 6f 68 65 78 28  ;var c=b64tohex(
2a020 61 29 3b 72 65 74 75 72 6e 20 63 7d 66 75 6e 63  a);return c}func
2a030 74 69 6f 6e 20 75 72 69 63 6d 70 74 6f 68 65 78  tion uricmptohex
2a040 28 61 29 7b 72 65 74 75 72 6e 20 61 2e 72 65 70  (a){return a.rep
2a050 6c 61 63 65 28 2f 25 2f 67 2c 22 22 29 7d 66 75  lace(/%/g,"")}fu
2a060 6e 63 74 69 6f 6e 20 68 65 78 74 6f 75 72 69 63  nction hextouric
2a070 6d 70 28 61 29 7b 72 65 74 75 72 6e 20 61 2e 72  mp(a){return a.r
2a080 65 70 6c 61 63 65 28 2f 28 2e 2e 29 2f 67 2c 22  eplace(/(..)/g,"
2a090 25 24 31 22 29 7d 66 75 6e 63 74 69 6f 6e 20 65  %$1")}function e
2a0a0 6e 63 6f 64 65 55 52 49 43 6f 6d 70 6f 6e 65 6e  ncodeURIComponen
2a0b0 74 41 6c 6c 28 61 29 7b 76 61 72 20 64 3d 65 6e  tAll(a){var d=en
2a0c0 63 6f 64 65 55 52 49 43 6f 6d 70 6f 6e 65 6e 74  codeURIComponent
2a0d0 28 61 29 3b 76 61 72 20 62 3d 22 22 3b 66 6f 72  (a);var b="";for
2a0e0 28 76 61 72 20 63 3d 30 3b 63 3c 64 2e 6c 65 6e  (var c=0;c<d.len
2a0f0 67 74 68 3b 63 2b 2b 29 7b 69 66 28 64 5b 63 5d  gth;c++){if(d[c]
2a100 3d 3d 22 25 22 29 7b 62 3d 62 2b 64 2e 73 75 62  =="%"){b=b+d.sub
2a110 73 74 72 28 63 2c 33 29 3b 63 3d 63 2b 32 7d 65  str(c,3);c=c+2}e
2a120 6c 73 65 7b 62 3d 62 2b 22 25 22 2b 73 74 6f 68  lse{b=b+"%"+stoh
2a130 65 78 28 64 5b 63 5d 29 7d 7d 72 65 74 75 72 6e  ex(d[c])}}return
2a140 20 62 7d 66 75 6e 63 74 69 6f 6e 20 6e 65 77 6c   b}function newl
2a150 69 6e 65 5f 74 6f 55 6e 69 78 28 61 29 7b 61 3d  ine_toUnix(a){a=
2a160 61 2e 72 65 70 6c 61 63 65 28 2f 5c 72 5c 6e 2f  a.replace(/\r\n/
2a170 6d 67 2c 22 5c 6e 22 29 3b 72 65 74 75 72 6e 20  mg,"\n");return 
2a180 61 7d 66 75 6e 63 74 69 6f 6e 20 6e 65 77 6c 69  a}function newli
2a190 6e 65 5f 74 6f 44 6f 73 28 61 29 7b 61 3d 61 2e  ne_toDos(a){a=a.
2a1a0 72 65 70 6c 61 63 65 28 2f 5c 72 5c 6e 2f 6d 67  replace(/\r\n/mg
2a1b0 2c 22 5c 6e 22 29 3b 61 3d 61 2e 72 65 70 6c 61  ,"\n");a=a.repla
2a1c0 63 65 28 2f 5c 6e 2f 6d 67 2c 22 5c 72 5c 6e 22  ce(/\n/mg,"\r\n"
2a1d0 29 3b 72 65 74 75 72 6e 20 61 7d 66 75 6e 63 74  );return a}funct
2a1e0 69 6f 6e 20 69 6e 74 61 72 79 73 74 72 74 6f 68  ion intarystrtoh
2a1f0 65 78 28 62 29 7b 62 3d 62 2e 72 65 70 6c 61 63  ex(b){b=b.replac
2a200 65 28 2f 5e 5c 73 2a 5c 5b 5c 73 2a 2f 2c 22 22  e(/^\s*\[\s*/,""
2a210 29 3b 62 3d 62 2e 72 65 70 6c 61 63 65 28 2f 5c  );b=b.replace(/\
2a220 73 2a 5c 5d 5c 73 2a 24 2f 2c 22 22 29 3b 62 3d  s*\]\s*$/,"");b=
2a230 62 2e 72 65 70 6c 61 63 65 28 2f 5c 73 2a 2f 67  b.replace(/\s*/g
2a240 2c 22 22 29 3b 74 72 79 7b 76 61 72 20 63 3d 62  ,"");try{var c=b
2a250 2e 73 70 6c 69 74 28 2f 2c 2f 29 2e 6d 61 70 28  .split(/,/).map(
2a260 66 75 6e 63 74 69 6f 6e 28 67 2c 65 2c 68 29 7b  function(g,e,h){
2a270 76 61 72 20 66 3d 70 61 72 73 65 49 6e 74 28 67  var f=parseInt(g
2a280 29 3b 69 66 28 66 3c 30 7c 7c 32 35 35 3c 66 29  );if(f<0||255<f)
2a290 7b 74 68 72 6f 77 22 69 6e 74 65 67 65 72 20 6e  {throw"integer n
2a2a0 6f 74 20 69 6e 20 72 61 6e 67 65 20 30 2d 32 35  ot in range 0-25
2a2b0 35 22 7d 76 61 72 20 64 3d 28 22 30 30 22 2b 66  5"}var d=("00"+f
2a2c0 2e 74 6f 53 74 72 69 6e 67 28 31 36 29 29 2e 73  .toString(16)).s
2a2d0 6c 69 63 65 28 2d 32 29 3b 72 65 74 75 72 6e 20  lice(-2);return 
2a2e0 64 7d 29 2e 6a 6f 69 6e 28 22 22 29 3b 72 65 74  d}).join("");ret
2a2f0 75 72 6e 20 63 7d 63 61 74 63 68 28 61 29 7b 74  urn c}catch(a){t
2a300 68 72 6f 77 22 6d 61 6c 66 6f 72 6d 65 64 20 69  hrow"malformed i
2a310 6e 74 65 67 65 72 20 61 72 72 61 79 20 73 74 72  nteger array str
2a320 69 6e 67 3a 20 22 2b 61 7d 7d 76 61 72 20 73 74  ing: "+a}}var st
2a330 72 64 69 66 66 69 64 78 3d 66 75 6e 63 74 69 6f  rdiffidx=functio
2a340 6e 28 63 2c 61 29 7b 76 61 72 20 64 3d 63 2e 6c  n(c,a){var d=c.l
2a350 65 6e 67 74 68 3b 69 66 28 63 2e 6c 65 6e 67 74  ength;if(c.lengt
2a360 68 3e 61 2e 6c 65 6e 67 74 68 29 7b 64 3d 61 2e  h>a.length){d=a.
2a370 6c 65 6e 67 74 68 7d 66 6f 72 28 76 61 72 20 62  length}for(var b
2a380 3d 30 3b 62 3c 64 3b 62 2b 2b 29 7b 69 66 28 63  =0;b<d;b++){if(c
2a390 2e 63 68 61 72 43 6f 64 65 41 74 28 62 29 21 3d  .charCodeAt(b)!=
2a3a0 61 2e 63 68 61 72 43 6f 64 65 41 74 28 62 29 29  a.charCodeAt(b))
2a3b0 7b 72 65 74 75 72 6e 20 62 7d 7d 69 66 28 63 2e  {return b}}if(c.
2a3c0 6c 65 6e 67 74 68 21 3d 61 2e 6c 65 6e 67 74 68  length!=a.length
2a3d0 29 7b 72 65 74 75 72 6e 20 64 7d 72 65 74 75 72  ){return d}retur
2a3e0 6e 20 2d 31 7d 3b 0a 2f 2a 21 20 63 72 79 70 74  n -1};./*! crypt
2a3f0 6f 2d 31 2e 31 2e 37 2e 6a 73 20 28 63 29 20 32  o-1.1.7.js (c) 2
2a400 30 31 33 2d 32 30 31 35 20 4b 65 6e 6a 69 20 55  013-2015 Kenji U
2a410 72 75 73 68 69 6d 61 20 7c 20 6b 6a 75 72 2e 67  rushima | kjur.g
2a420 69 74 68 75 62 2e 63 6f 6d 2f 6a 73 72 73 61 73  ithub.com/jsrsas
2a430 69 67 6e 2f 6c 69 63 65 6e 73 65 0a 20 2a 2f 0a  ign/license. */.
2a440 69 66 28 74 79 70 65 6f 66 20 4b 4a 55 52 3d 3d  if(typeof KJUR==
2a450 22 75 6e 64 65 66 69 6e 65 64 22 7c 7c 21 4b 4a  "undefined"||!KJ
2a460 55 52 29 7b 4b 4a 55 52 3d 7b 7d 7d 69 66 28 74  UR){KJUR={}}if(t
2a470 79 70 65 6f 66 20 4b 4a 55 52 2e 63 72 79 70 74  ypeof KJUR.crypt
2a480 6f 3d 3d 22 75 6e 64 65 66 69 6e 65 64 22 7c 7c  o=="undefined"||
2a490 21 4b 4a 55 52 2e 63 72 79 70 74 6f 29 7b 4b 4a  !KJUR.crypto){KJ
2a4a0 55 52 2e 63 72 79 70 74 6f 3d 7b 7d 7d 4b 4a 55  UR.crypto={}}KJU
2a4b0 52 2e 63 72 79 70 74 6f 2e 55 74 69 6c 3d 6e 65  R.crypto.Util=ne
2a4c0 77 20 66 75 6e 63 74 69 6f 6e 28 29 7b 74 68 69  w function(){thi
2a4d0 73 2e 44 49 47 45 53 54 49 4e 46 4f 48 45 41 44  s.DIGESTINFOHEAD
2a4e0 3d 7b 73 68 61 31 3a 22 33 30 32 31 33 30 30 39  ={sha1:"30213009
2a4f0 30 36 30 35 32 62 30 65 30 33 30 32 31 61 30 35  06052b0e03021a05
2a500 30 30 30 34 31 34 22 2c 73 68 61 32 32 34 3a 22  000414",sha224:"
2a510 33 30 32 64 33 30 30 64 30 36 30 39 36 30 38 36  302d300d06096086
2a520 34 38 30 31 36 35 30 33 30 34 30 32 30 34 30 35  4801650304020405
2a530 30 30 30 34 31 63 22 2c 73 68 61 32 35 36 3a 22  00041c",sha256:"
2a540 33 30 33 31 33 30 30 64 30 36 30 39 36 30 38 36  3031300d06096086
2a550 34 38 30 31 36 35 30 33 30 34 30 32 30 31 30 35  4801650304020105
2a560 30 30 30 34 32 30 22 2c 73 68 61 33 38 34 3a 22  000420",sha384:"
2a570 33 30 34 31 33 30 30 64 30 36 30 39 36 30 38 36  3041300d06096086
2a580 34 38 30 31 36 35 30 33 30 34 30 32 30 32 30 35  4801650304020205
2a590 30 30 30 34 33 30 22 2c 73 68 61 35 31 32 3a 22  000430",sha512:"
2a5a0 33 30 35 31 33 30 30 64 30 36 30 39 36 30 38 36  3051300d06096086
2a5b0 34 38 30 31 36 35 30 33 30 34 30 32 30 33 30 35  4801650304020305
2a5c0 30 30 30 34 34 30 22 2c 6d 64 32 3a 22 33 30 32  000440",md2:"302
2a5d0 30 33 30 30 63 30 36 30 38 32 61 38 36 34 38 38  0300c06082a86488
2a5e0 36 66 37 30 64 30 32 30 32 30 35 30 30 30 34 31  6f70d02020500041
2a5f0 30 22 2c 6d 64 35 3a 22 33 30 32 30 33 30 30 63  0",md5:"3020300c
2a600 30 36 30 38 32 61 38 36 34 38 38 36 66 37 30 64  06082a864886f70d
2a610 30 32 30 35 30 35 30 30 30 34 31 30 22 2c 72 69  020505000410",ri
2a620 70 65 6d 64 31 36 30 3a 22 33 30 32 31 33 30 30  pemd160:"3021300
2a630 39 30 36 30 35 32 62 32 34 30 33 30 32 30 31 30  906052b240302010
2a640 35 30 30 30 34 31 34 22 2c 7d 3b 74 68 69 73 2e  5000414",};this.
2a650 44 45 46 41 55 4c 54 50 52 4f 56 49 44 45 52 3d  DEFAULTPROVIDER=
2a660 7b 6d 64 35 3a 22 63 72 79 70 74 6f 6a 73 22 2c  {md5:"cryptojs",
2a670 73 68 61 31 3a 22 63 72 79 70 74 6f 6a 73 22 2c  sha1:"cryptojs",
2a680 73 68 61 32 32 34 3a 22 63 72 79 70 74 6f 6a 73  sha224:"cryptojs
2a690 22 2c 73 68 61 32 35 36 3a 22 63 72 79 70 74 6f  ",sha256:"crypto
2a6a0 6a 73 22 2c 73 68 61 33 38 34 3a 22 63 72 79 70  js",sha384:"cryp
2a6b0 74 6f 6a 73 22 2c 73 68 61 35 31 32 3a 22 63 72  tojs",sha512:"cr
2a6c0 79 70 74 6f 6a 73 22 2c 72 69 70 65 6d 64 31 36  yptojs",ripemd16
2a6d0 30 3a 22 63 72 79 70 74 6f 6a 73 22 2c 68 6d 61  0:"cryptojs",hma
2a6e0 63 6d 64 35 3a 22 63 72 79 70 74 6f 6a 73 22 2c  cmd5:"cryptojs",
2a6f0 68 6d 61 63 73 68 61 31 3a 22 63 72 79 70 74 6f  hmacsha1:"crypto
2a700 6a 73 22 2c 68 6d 61 63 73 68 61 32 32 34 3a 22  js",hmacsha224:"
2a710 63 72 79 70 74 6f 6a 73 22 2c 68 6d 61 63 73 68  cryptojs",hmacsh
2a720 61 32 35 36 3a 22 63 72 79 70 74 6f 6a 73 22 2c  a256:"cryptojs",
2a730 68 6d 61 63 73 68 61 33 38 34 3a 22 63 72 79 70  hmacsha384:"cryp
2a740 74 6f 6a 73 22 2c 68 6d 61 63 73 68 61 35 31 32  tojs",hmacsha512
2a750 3a 22 63 72 79 70 74 6f 6a 73 22 2c 68 6d 61 63  :"cryptojs",hmac
2a760 72 69 70 65 6d 64 31 36 30 3a 22 63 72 79 70 74  ripemd160:"crypt
2a770 6f 6a 73 22 2c 4d 44 35 77 69 74 68 52 53 41 3a  ojs",MD5withRSA:
2a780 22 63 72 79 70 74 6f 6a 73 2f 6a 73 72 73 61 22  "cryptojs/jsrsa"
2a790 2c 53 48 41 31 77 69 74 68 52 53 41 3a 22 63 72  ,SHA1withRSA:"cr
2a7a0 79 70 74 6f 6a 73 2f 6a 73 72 73 61 22 2c 53 48  yptojs/jsrsa",SH
2a7b0 41 32 32 34 77 69 74 68 52 53 41 3a 22 63 72 79  A224withRSA:"cry
2a7c0 70 74 6f 6a 73 2f 6a 73 72 73 61 22 2c 53 48 41  ptojs/jsrsa",SHA
2a7d0 32 35 36 77 69 74 68 52 53 41 3a 22 63 72 79 70  256withRSA:"cryp
2a7e0 74 6f 6a 73 2f 6a 73 72 73 61 22 2c 53 48 41 33  tojs/jsrsa",SHA3
2a7f0 38 34 77 69 74 68 52 53 41 3a 22 63 72 79 70 74  84withRSA:"crypt
2a800 6f 6a 73 2f 6a 73 72 73 61 22 2c 53 48 41 35 31  ojs/jsrsa",SHA51
2a810 32 77 69 74 68 52 53 41 3a 22 63 72 79 70 74 6f  2withRSA:"crypto
2a820 6a 73 2f 6a 73 72 73 61 22 2c 52 49 50 45 4d 44  js/jsrsa",RIPEMD
2a830 31 36 30 77 69 74 68 52 53 41 3a 22 63 72 79 70  160withRSA:"cryp
2a840 74 6f 6a 73 2f 6a 73 72 73 61 22 2c 4d 44 35 77  tojs/jsrsa",MD5w
2a850 69 74 68 45 43 44 53 41 3a 22 63 72 79 70 74 6f  ithECDSA:"crypto
2a860 6a 73 2f 6a 73 72 73 61 22 2c 53 48 41 31 77 69  js/jsrsa",SHA1wi
2a870 74 68 45 43 44 53 41 3a 22 63 72 79 70 74 6f 6a  thECDSA:"cryptoj
2a880 73 2f 6a 73 72 73 61 22 2c 53 48 41 32 32 34 77  s/jsrsa",SHA224w
2a890 69 74 68 45 43 44 53 41 3a 22 63 72 79 70 74 6f  ithECDSA:"crypto
2a8a0 6a 73 2f 6a 73 72 73 61 22 2c 53 48 41 32 35 36  js/jsrsa",SHA256
2a8b0 77 69 74 68 45 43 44 53 41 3a 22 63 72 79 70 74  withECDSA:"crypt
2a8c0 6f 6a 73 2f 6a 73 72 73 61 22 2c 53 48 41 33 38  ojs/jsrsa",SHA38
2a8d0 34 77 69 74 68 45 43 44 53 41 3a 22 63 72 79 70  4withECDSA:"cryp
2a8e0 74 6f 6a 73 2f 6a 73 72 73 61 22 2c 53 48 41 35  tojs/jsrsa",SHA5
2a8f0 31 32 77 69 74 68 45 43 44 53 41 3a 22 63 72 79  12withECDSA:"cry
2a900 70 74 6f 6a 73 2f 6a 73 72 73 61 22 2c 52 49 50  ptojs/jsrsa",RIP
2a910 45 4d 44 31 36 30 77 69 74 68 45 43 44 53 41 3a  EMD160withECDSA:
2a920 22 63 72 79 70 74 6f 6a 73 2f 6a 73 72 73 61 22  "cryptojs/jsrsa"
2a930 2c 53 48 41 31 77 69 74 68 44 53 41 3a 22 63 72  ,SHA1withDSA:"cr
2a940 79 70 74 6f 6a 73 2f 6a 73 72 73 61 22 2c 53 48  yptojs/jsrsa",SH
2a950 41 32 32 34 77 69 74 68 44 53 41 3a 22 63 72 79  A224withDSA:"cry
2a960 70 74 6f 6a 73 2f 6a 73 72 73 61 22 2c 53 48 41  ptojs/jsrsa",SHA
2a970 32 35 36 77 69 74 68 44 53 41 3a 22 63 72 79 70  256withDSA:"cryp
2a980 74 6f 6a 73 2f 6a 73 72 73 61 22 2c 4d 44 35 77  tojs/jsrsa",MD5w
2a990 69 74 68 52 53 41 61 6e 64 4d 47 46 31 3a 22 63  ithRSAandMGF1:"c
2a9a0 72 79 70 74 6f 6a 73 2f 6a 73 72 73 61 22 2c 53  ryptojs/jsrsa",S
2a9b0 48 41 31 77 69 74 68 52 53 41 61 6e 64 4d 47 46  HA1withRSAandMGF
2a9c0 31 3a 22 63 72 79 70 74 6f 6a 73 2f 6a 73 72 73  1:"cryptojs/jsrs
2a9d0 61 22 2c 53 48 41 32 32 34 77 69 74 68 52 53 41  a",SHA224withRSA
2a9e0 61 6e 64 4d 47 46 31 3a 22 63 72 79 70 74 6f 6a  andMGF1:"cryptoj
2a9f0 73 2f 6a 73 72 73 61 22 2c 53 48 41 32 35 36 77  s/jsrsa",SHA256w
2aa00 69 74 68 52 53 41 61 6e 64 4d 47 46 31 3a 22 63  ithRSAandMGF1:"c
2aa10 72 79 70 74 6f 6a 73 2f 6a 73 72 73 61 22 2c 53  ryptojs/jsrsa",S
2aa20 48 41 33 38 34 77 69 74 68 52 53 41 61 6e 64 4d  HA384withRSAandM
2aa30 47 46 31 3a 22 63 72 79 70 74 6f 6a 73 2f 6a 73  GF1:"cryptojs/js
2aa40 72 73 61 22 2c 53 48 41 35 31 32 77 69 74 68 52  rsa",SHA512withR
2aa50 53 41 61 6e 64 4d 47 46 31 3a 22 63 72 79 70 74  SAandMGF1:"crypt
2aa60 6f 6a 73 2f 6a 73 72 73 61 22 2c 52 49 50 45 4d  ojs/jsrsa",RIPEM
2aa70 44 31 36 30 77 69 74 68 52 53 41 61 6e 64 4d 47  D160withRSAandMG
2aa80 46 31 3a 22 63 72 79 70 74 6f 6a 73 2f 6a 73 72  F1:"cryptojs/jsr
2aa90 73 61 22 2c 7d 3b 74 68 69 73 2e 43 52 59 50 54  sa",};this.CRYPT
2aaa0 4f 4a 53 4d 45 53 53 41 47 45 44 49 47 45 53 54  OJSMESSAGEDIGEST
2aab0 4e 41 4d 45 3d 7b 6d 64 35 3a 22 43 72 79 70 74  NAME={md5:"Crypt
2aac0 6f 4a 53 2e 61 6c 67 6f 2e 4d 44 35 22 2c 73 68  oJS.algo.MD5",sh
2aad0 61 31 3a 22 43 72 79 70 74 6f 4a 53 2e 61 6c 67  a1:"CryptoJS.alg
2aae0 6f 2e 53 48 41 31 22 2c 73 68 61 32 32 34 3a 22  o.SHA1",sha224:"
2aaf0 43 72 79 70 74 6f 4a 53 2e 61 6c 67 6f 2e 53 48  CryptoJS.algo.SH
2ab00 41 32 32 34 22 2c 73 68 61 32 35 36 3a 22 43 72  A224",sha256:"Cr
2ab10 79 70 74 6f 4a 53 2e 61 6c 67 6f 2e 53 48 41 32  yptoJS.algo.SHA2
2ab20 35 36 22 2c 73 68 61 33 38 34 3a 22 43 72 79 70  56",sha384:"Cryp
2ab30 74 6f 4a 53 2e 61 6c 67 6f 2e 53 48 41 33 38 34  toJS.algo.SHA384
2ab40 22 2c 73 68 61 35 31 32 3a 22 43 72 79 70 74 6f  ",sha512:"Crypto
2ab50 4a 53 2e 61 6c 67 6f 2e 53 48 41 35 31 32 22 2c  JS.algo.SHA512",
2ab60 72 69 70 65 6d 64 31 36 30 3a 22 43 72 79 70 74  ripemd160:"Crypt
2ab70 6f 4a 53 2e 61 6c 67 6f 2e 52 49 50 45 4d 44 31  oJS.algo.RIPEMD1
2ab80 36 30 22 7d 3b 74 68 69 73 2e 67 65 74 44 69 67  60"};this.getDig
2ab90 65 73 74 49 6e 66 6f 48 65 78 3d 66 75 6e 63 74  estInfoHex=funct
2aba0 69 6f 6e 28 61 2c 62 29 7b 69 66 28 74 79 70 65  ion(a,b){if(type
2abb0 6f 66 20 74 68 69 73 2e 44 49 47 45 53 54 49 4e  of this.DIGESTIN
2abc0 46 4f 48 45 41 44 5b 62 5d 3d 3d 22 75 6e 64 65  FOHEAD[b]=="unde
2abd0 66 69 6e 65 64 22 29 7b 74 68 72 6f 77 22 61 6c  fined"){throw"al
2abe0 67 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 20  g not supported 
2abf0 69 6e 20 55 74 69 6c 2e 44 49 47 45 53 54 49 4e  in Util.DIGESTIN
2ac00 46 4f 48 45 41 44 3a 20 22 2b 62 7d 72 65 74 75  FOHEAD: "+b}retu
2ac10 72 6e 20 74 68 69 73 2e 44 49 47 45 53 54 49 4e  rn this.DIGESTIN
2ac20 46 4f 48 45 41 44 5b 62 5d 2b 61 7d 3b 74 68 69  FOHEAD[b]+a};thi
2ac30 73 2e 67 65 74 50 61 64 64 65 64 44 69 67 65 73  s.getPaddedDiges
2ac40 74 49 6e 66 6f 48 65 78 3d 66 75 6e 63 74 69 6f  tInfoHex=functio
2ac50 6e 28 68 2c 61 2c 6a 29 7b 76 61 72 20 63 3d 74  n(h,a,j){var c=t
2ac60 68 69 73 2e 67 65 74 44 69 67 65 73 74 49 6e 66  his.getDigestInf
2ac70 6f 48 65 78 28 68 2c 61 29 3b 76 61 72 20 64 3d  oHex(h,a);var d=
2ac80 6a 2f 34 3b 69 66 28 63 2e 6c 65 6e 67 74 68 2b  j/4;if(c.length+
2ac90 32 32 3e 64 29 7b 74 68 72 6f 77 22 6b 65 79 20  22>d){throw"key 
2aca0 69 73 20 74 6f 6f 20 73 68 6f 72 74 20 66 6f 72  is too short for
2acb0 20 53 69 67 41 6c 67 3a 20 6b 65 79 6c 65 6e 3d   SigAlg: keylen=
2acc0 22 2b 6a 2b 22 2c 22 2b 61 7d 76 61 72 20 62 3d  "+j+","+a}var b=
2acd0 22 30 30 30 31 22 3b 76 61 72 20 6b 3d 22 30 30  "0001";var k="00
2ace0 22 2b 63 3b 76 61 72 20 67 3d 22 22 3b 76 61 72  "+c;var g="";var
2acf0 20 6c 3d 64 2d 62 2e 6c 65 6e 67 74 68 2d 6b 2e   l=d-b.length-k.
2ad00 6c 65 6e 67 74 68 3b 66 6f 72 28 76 61 72 20 66  length;for(var f
2ad10 3d 30 3b 66 3c 6c 3b 66 2b 3d 32 29 7b 67 2b 3d  =0;f<l;f+=2){g+=
2ad20 22 66 66 22 7d 76 61 72 20 65 3d 62 2b 67 2b 6b  "ff"}var e=b+g+k
2ad30 3b 72 65 74 75 72 6e 20 65 7d 3b 74 68 69 73 2e  ;return e};this.
2ad40 68 61 73 68 53 74 72 69 6e 67 3d 66 75 6e 63 74  hashString=funct
2ad50 69 6f 6e 28 61 2c 63 29 7b 76 61 72 20 62 3d 6e  ion(a,c){var b=n
2ad60 65 77 20 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 4d  ew KJUR.crypto.M
2ad70 65 73 73 61 67 65 44 69 67 65 73 74 28 7b 61 6c  essageDigest({al
2ad80 67 3a 63 7d 29 3b 72 65 74 75 72 6e 20 62 2e 64  g:c});return b.d
2ad90 69 67 65 73 74 53 74 72 69 6e 67 28 61 29 7d 3b  igestString(a)};
2ada0 74 68 69 73 2e 68 61 73 68 48 65 78 3d 66 75 6e  this.hashHex=fun
2adb0 63 74 69 6f 6e 28 62 2c 63 29 7b 76 61 72 20 61  ction(b,c){var a
2adc0 3d 6e 65 77 20 4b 4a 55 52 2e 63 72 79 70 74 6f  =new KJUR.crypto
2add0 2e 4d 65 73 73 61 67 65 44 69 67 65 73 74 28 7b  .MessageDigest({
2ade0 61 6c 67 3a 63 7d 29 3b 72 65 74 75 72 6e 20 61  alg:c});return a
2adf0 2e 64 69 67 65 73 74 48 65 78 28 62 29 7d 3b 74  .digestHex(b)};t
2ae00 68 69 73 2e 73 68 61 31 3d 66 75 6e 63 74 69 6f  his.sha1=functio
2ae10 6e 28 61 29 7b 76 61 72 20 62 3d 6e 65 77 20 4b  n(a){var b=new K
2ae20 4a 55 52 2e 63 72 79 70 74 6f 2e 4d 65 73 73 61  JUR.crypto.Messa
2ae30 67 65 44 69 67 65 73 74 28 7b 61 6c 67 3a 22 73  geDigest({alg:"s
2ae40 68 61 31 22 2c 70 72 6f 76 3a 22 63 72 79 70 74  ha1",prov:"crypt
2ae50 6f 6a 73 22 7d 29 3b 72 65 74 75 72 6e 20 62 2e  ojs"});return b.
2ae60 64 69 67 65 73 74 53 74 72 69 6e 67 28 61 29 7d  digestString(a)}
2ae70 3b 74 68 69 73 2e 73 68 61 32 35 36 3d 66 75 6e  ;this.sha256=fun
2ae80 63 74 69 6f 6e 28 61 29 7b 76 61 72 20 62 3d 6e  ction(a){var b=n
2ae90 65 77 20 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 4d  ew KJUR.crypto.M
2aea0 65 73 73 61 67 65 44 69 67 65 73 74 28 7b 61 6c  essageDigest({al
2aeb0 67 3a 22 73 68 61 32 35 36 22 2c 70 72 6f 76 3a  g:"sha256",prov:
2aec0 22 63 72 79 70 74 6f 6a 73 22 7d 29 3b 72 65 74  "cryptojs"});ret
2aed0 75 72 6e 20 62 2e 64 69 67 65 73 74 53 74 72 69  urn b.digestStri
2aee0 6e 67 28 61 29 7d 3b 74 68 69 73 2e 73 68 61 32  ng(a)};this.sha2
2aef0 35 36 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 61  56Hex=function(a
2af00 29 7b 76 61 72 20 62 3d 6e 65 77 20 4b 4a 55 52  ){var b=new KJUR
2af10 2e 63 72 79 70 74 6f 2e 4d 65 73 73 61 67 65 44  .crypto.MessageD
2af20 69 67 65 73 74 28 7b 61 6c 67 3a 22 73 68 61 32  igest({alg:"sha2
2af30 35 36 22 2c 70 72 6f 76 3a 22 63 72 79 70 74 6f  56",prov:"crypto
2af40 6a 73 22 7d 29 3b 72 65 74 75 72 6e 20 62 2e 64  js"});return b.d
2af50 69 67 65 73 74 48 65 78 28 61 29 7d 3b 74 68 69  igestHex(a)};thi
2af60 73 2e 73 68 61 35 31 32 3d 66 75 6e 63 74 69 6f  s.sha512=functio
2af70 6e 28 61 29 7b 76 61 72 20 62 3d 6e 65 77 20 4b  n(a){var b=new K
2af80 4a 55 52 2e 63 72 79 70 74 6f 2e 4d 65 73 73 61  JUR.crypto.Messa
2af90 67 65 44 69 67 65 73 74 28 7b 61 6c 67 3a 22 73  geDigest({alg:"s
2afa0 68 61 35 31 32 22 2c 70 72 6f 76 3a 22 63 72 79  ha512",prov:"cry
2afb0 70 74 6f 6a 73 22 7d 29 3b 72 65 74 75 72 6e 20  ptojs"});return 
2afc0 62 2e 64 69 67 65 73 74 53 74 72 69 6e 67 28 61  b.digestString(a
2afd0 29 7d 3b 74 68 69 73 2e 73 68 61 35 31 32 48 65  )};this.sha512He
2afe0 78 3d 66 75 6e 63 74 69 6f 6e 28 61 29 7b 76 61  x=function(a){va
2aff0 72 20 62 3d 6e 65 77 20 4b 4a 55 52 2e 63 72 79  r b=new KJUR.cry
2b000 70 74 6f 2e 4d 65 73 73 61 67 65 44 69 67 65 73  pto.MessageDiges
2b010 74 28 7b 61 6c 67 3a 22 73 68 61 35 31 32 22 2c  t({alg:"sha512",
2b020 70 72 6f 76 3a 22 63 72 79 70 74 6f 6a 73 22 7d  prov:"cryptojs"}
2b030 29 3b 72 65 74 75 72 6e 20 62 2e 64 69 67 65 73  );return b.diges
2b040 74 48 65 78 28 61 29 7d 3b 74 68 69 73 2e 6d 64  tHex(a)};this.md
2b050 35 3d 66 75 6e 63 74 69 6f 6e 28 61 29 7b 76 61  5=function(a){va
2b060 72 20 62 3d 6e 65 77 20 4b 4a 55 52 2e 63 72 79  r b=new KJUR.cry
2b070 70 74 6f 2e 4d 65 73 73 61 67 65 44 69 67 65 73  pto.MessageDiges
2b080 74 28 7b 61 6c 67 3a 22 6d 64 35 22 2c 70 72 6f  t({alg:"md5",pro
2b090 76 3a 22 63 72 79 70 74 6f 6a 73 22 7d 29 3b 72  v:"cryptojs"});r
2b0a0 65 74 75 72 6e 20 62 2e 64 69 67 65 73 74 53 74  eturn b.digestSt
2b0b0 72 69 6e 67 28 61 29 7d 3b 74 68 69 73 2e 72 69  ring(a)};this.ri
2b0c0 70 65 6d 64 31 36 30 3d 66 75 6e 63 74 69 6f 6e  pemd160=function
2b0d0 28 61 29 7b 76 61 72 20 62 3d 6e 65 77 20 4b 4a  (a){var b=new KJ
2b0e0 55 52 2e 63 72 79 70 74 6f 2e 4d 65 73 73 61 67  UR.crypto.Messag
2b0f0 65 44 69 67 65 73 74 28 7b 61 6c 67 3a 22 72 69  eDigest({alg:"ri
2b100 70 65 6d 64 31 36 30 22 2c 70 72 6f 76 3a 22 63  pemd160",prov:"c
2b110 72 79 70 74 6f 6a 73 22 7d 29 3b 72 65 74 75 72  ryptojs"});retur
2b120 6e 20 62 2e 64 69 67 65 73 74 53 74 72 69 6e 67  n b.digestString
2b130 28 61 29 7d 3b 74 68 69 73 2e 67 65 74 43 72 79  (a)};this.getCry
2b140 70 74 6f 4a 53 4d 44 42 79 4e 61 6d 65 3d 66 75  ptoJSMDByName=fu
2b150 6e 63 74 69 6f 6e 28 61 29 7b 7d 7d 3b 4b 4a 55  nction(a){}};KJU
2b160 52 2e 63 72 79 70 74 6f 2e 4d 65 73 73 61 67 65  R.crypto.Message
2b170 44 69 67 65 73 74 3d 66 75 6e 63 74 69 6f 6e 28  Digest=function(
2b180 70 61 72 61 6d 73 29 7b 76 61 72 20 6d 64 3d 6e  params){var md=n
2b190 75 6c 6c 3b 76 61 72 20 61 6c 67 4e 61 6d 65 3d  ull;var algName=
2b1a0 6e 75 6c 6c 3b 76 61 72 20 70 72 6f 76 4e 61 6d  null;var provNam
2b1b0 65 3d 6e 75 6c 6c 3b 74 68 69 73 2e 73 65 74 41  e=null;this.setA
2b1c0 6c 67 41 6e 64 50 72 6f 76 69 64 65 72 3d 66 75  lgAndProvider=fu
2b1d0 6e 63 74 69 6f 6e 28 61 6c 67 2c 70 72 6f 76 29  nction(alg,prov)
2b1e0 7b 69 66 28 61 6c 67 21 3d 6e 75 6c 6c 26 26 70  {if(alg!=null&&p
2b1f0 72 6f 76 3d 3d 3d 75 6e 64 65 66 69 6e 65 64 29  rov===undefined)
2b200 7b 70 72 6f 76 3d 4b 4a 55 52 2e 63 72 79 70 74  {prov=KJUR.crypt
2b210 6f 2e 55 74 69 6c 2e 44 45 46 41 55 4c 54 50 52  o.Util.DEFAULTPR
2b220 4f 56 49 44 45 52 5b 61 6c 67 5d 7d 69 66 28 22  OVIDER[alg]}if("
2b230 3a 6d 64 35 3a 73 68 61 31 3a 73 68 61 32 32 34  :md5:sha1:sha224
2b240 3a 73 68 61 32 35 36 3a 73 68 61 33 38 34 3a 73  :sha256:sha384:s
2b250 68 61 35 31 32 3a 72 69 70 65 6d 64 31 36 30 3a  ha512:ripemd160:
2b260 22 2e 69 6e 64 65 78 4f 66 28 61 6c 67 29 21 3d  ".indexOf(alg)!=
2b270 2d 31 26 26 70 72 6f 76 3d 3d 22 63 72 79 70 74  -1&&prov=="crypt
2b280 6f 6a 73 22 29 7b 74 72 79 7b 74 68 69 73 2e 6d  ojs"){try{this.m
2b290 64 3d 65 76 61 6c 28 4b 4a 55 52 2e 63 72 79 70  d=eval(KJUR.cryp
2b2a0 74 6f 2e 55 74 69 6c 2e 43 52 59 50 54 4f 4a 53  to.Util.CRYPTOJS
2b2b0 4d 45 53 53 41 47 45 44 49 47 45 53 54 4e 41 4d  MESSAGEDIGESTNAM
2b2c0 45 5b 61 6c 67 5d 29 2e 63 72 65 61 74 65 28 29  E[alg]).create()
2b2d0 7d 63 61 74 63 68 28 65 78 29 7b 74 68 72 6f 77  }catch(ex){throw
2b2e0 22 73 65 74 41 6c 67 41 6e 64 50 72 6f 76 69 64  "setAlgAndProvid
2b2f0 65 72 20 68 61 73 68 20 61 6c 67 20 73 65 74 20  er hash alg set 
2b300 66 61 69 6c 20 61 6c 67 3d 22 2b 61 6c 67 2b 22  fail alg="+alg+"
2b310 2f 22 2b 65 78 7d 74 68 69 73 2e 75 70 64 61 74  /"+ex}this.updat
2b320 65 53 74 72 69 6e 67 3d 66 75 6e 63 74 69 6f 6e  eString=function
2b330 28 73 74 72 29 7b 74 68 69 73 2e 6d 64 2e 75 70  (str){this.md.up
2b340 64 61 74 65 28 73 74 72 29 7d 3b 74 68 69 73 2e  date(str)};this.
2b350 75 70 64 61 74 65 48 65 78 3d 66 75 6e 63 74 69  updateHex=functi
2b360 6f 6e 28 68 65 78 29 7b 76 61 72 20 77 48 65 78  on(hex){var wHex
2b370 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63 2e 48 65  =CryptoJS.enc.He
2b380 78 2e 70 61 72 73 65 28 68 65 78 29 3b 74 68 69  x.parse(hex);thi
2b390 73 2e 6d 64 2e 75 70 64 61 74 65 28 77 48 65 78  s.md.update(wHex
2b3a0 29 7d 3b 74 68 69 73 2e 64 69 67 65 73 74 3d 66  )};this.digest=f
2b3b0 75 6e 63 74 69 6f 6e 28 29 7b 76 61 72 20 68 61  unction(){var ha
2b3c0 73 68 3d 74 68 69 73 2e 6d 64 2e 66 69 6e 61 6c  sh=this.md.final
2b3d0 69 7a 65 28 29 3b 72 65 74 75 72 6e 20 68 61 73  ize();return has
2b3e0 68 2e 74 6f 53 74 72 69 6e 67 28 43 72 79 70 74  h.toString(Crypt
2b3f0 6f 4a 53 2e 65 6e 63 2e 48 65 78 29 7d 3b 74 68  oJS.enc.Hex)};th
2b400 69 73 2e 64 69 67 65 73 74 53 74 72 69 6e 67 3d  is.digestString=
2b410 66 75 6e 63 74 69 6f 6e 28 73 74 72 29 7b 74 68  function(str){th
2b420 69 73 2e 75 70 64 61 74 65 53 74 72 69 6e 67 28  is.updateString(
2b430 73 74 72 29 3b 72 65 74 75 72 6e 20 74 68 69 73  str);return this
2b440 2e 64 69 67 65 73 74 28 29 7d 3b 74 68 69 73 2e  .digest()};this.
2b450 64 69 67 65 73 74 48 65 78 3d 66 75 6e 63 74 69  digestHex=functi
2b460 6f 6e 28 68 65 78 29 7b 74 68 69 73 2e 75 70 64  on(hex){this.upd
2b470 61 74 65 48 65 78 28 68 65 78 29 3b 72 65 74 75  ateHex(hex);retu
2b480 72 6e 20 74 68 69 73 2e 64 69 67 65 73 74 28 29  rn this.digest()
2b490 7d 7d 69 66 28 22 3a 73 68 61 32 35 36 3a 22 2e  }}if(":sha256:".
2b4a0 69 6e 64 65 78 4f 66 28 61 6c 67 29 21 3d 2d 31  indexOf(alg)!=-1
2b4b0 26 26 70 72 6f 76 3d 3d 22 73 6a 63 6c 22 29 7b  &&prov=="sjcl"){
2b4c0 74 72 79 7b 74 68 69 73 2e 6d 64 3d 6e 65 77 20  try{this.md=new 
2b4d0 73 6a 63 6c 2e 68 61 73 68 2e 73 68 61 32 35 36  sjcl.hash.sha256
2b4e0 28 29 7d 63 61 74 63 68 28 65 78 29 7b 74 68 72  ()}catch(ex){thr
2b4f0 6f 77 22 73 65 74 41 6c 67 41 6e 64 50 72 6f 76  ow"setAlgAndProv
2b500 69 64 65 72 20 68 61 73 68 20 61 6c 67 20 73 65  ider hash alg se
2b510 74 20 66 61 69 6c 20 61 6c 67 3d 22 2b 61 6c 67  t fail alg="+alg
2b520 2b 22 2f 22 2b 65 78 7d 74 68 69 73 2e 75 70 64  +"/"+ex}this.upd
2b530 61 74 65 53 74 72 69 6e 67 3d 66 75 6e 63 74 69  ateString=functi
2b540 6f 6e 28 73 74 72 29 7b 74 68 69 73 2e 6d 64 2e  on(str){this.md.
2b550 75 70 64 61 74 65 28 73 74 72 29 7d 3b 74 68 69  update(str)};thi
2b560 73 2e 75 70 64 61 74 65 48 65 78 3d 66 75 6e 63  s.updateHex=func
2b570 74 69 6f 6e 28 68 65 78 29 7b 76 61 72 20 62 61  tion(hex){var ba
2b580 48 65 78 3d 73 6a 63 6c 2e 63 6f 64 65 63 2e 68  Hex=sjcl.codec.h
2b590 65 78 2e 74 6f 42 69 74 73 28 68 65 78 29 3b 74  ex.toBits(hex);t
2b5a0 68 69 73 2e 6d 64 2e 75 70 64 61 74 65 28 62 61  his.md.update(ba
2b5b0 48 65 78 29 7d 3b 74 68 69 73 2e 64 69 67 65 73  Hex)};this.diges
2b5c0 74 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 76 61 72  t=function(){var
2b5d0 20 68 61 73 68 3d 74 68 69 73 2e 6d 64 2e 66 69   hash=this.md.fi
2b5e0 6e 61 6c 69 7a 65 28 29 3b 72 65 74 75 72 6e 20  nalize();return 
2b5f0 73 6a 63 6c 2e 63 6f 64 65 63 2e 68 65 78 2e 66  sjcl.codec.hex.f
2b600 72 6f 6d 42 69 74 73 28 68 61 73 68 29 7d 3b 74  romBits(hash)};t
2b610 68 69 73 2e 64 69 67 65 73 74 53 74 72 69 6e 67  his.digestString
2b620 3d 66 75 6e 63 74 69 6f 6e 28 73 74 72 29 7b 74  =function(str){t
2b630 68 69 73 2e 75 70 64 61 74 65 53 74 72 69 6e 67  his.updateString
2b640 28 73 74 72 29 3b 72 65 74 75 72 6e 20 74 68 69  (str);return thi
2b650 73 2e 64 69 67 65 73 74 28 29 7d 3b 74 68 69 73  s.digest()};this
2b660 2e 64 69 67 65 73 74 48 65 78 3d 66 75 6e 63 74  .digestHex=funct
2b670 69 6f 6e 28 68 65 78 29 7b 74 68 69 73 2e 75 70  ion(hex){this.up
2b680 64 61 74 65 48 65 78 28 68 65 78 29 3b 72 65 74  dateHex(hex);ret
2b690 75 72 6e 20 74 68 69 73 2e 64 69 67 65 73 74 28  urn this.digest(
2b6a0 29 7d 7d 7d 3b 74 68 69 73 2e 75 70 64 61 74 65  )}}};this.update
2b6b0 53 74 72 69 6e 67 3d 66 75 6e 63 74 69 6f 6e 28  String=function(
2b6c0 73 74 72 29 7b 74 68 72 6f 77 22 75 70 64 61 74  str){throw"updat
2b6d0 65 53 74 72 69 6e 67 28 73 74 72 29 20 6e 6f 74  eString(str) not
2b6e0 20 73 75 70 70 6f 72 74 65 64 20 66 6f 72 20 74   supported for t
2b6f0 68 69 73 20 61 6c 67 2f 70 72 6f 76 3a 20 22 2b  his alg/prov: "+
2b700 74 68 69 73 2e 61 6c 67 4e 61 6d 65 2b 22 2f 22  this.algName+"/"
2b710 2b 74 68 69 73 2e 70 72 6f 76 4e 61 6d 65 7d 3b  +this.provName};
2b720 74 68 69 73 2e 75 70 64 61 74 65 48 65 78 3d 66  this.updateHex=f
2b730 75 6e 63 74 69 6f 6e 28 68 65 78 29 7b 74 68 72  unction(hex){thr
2b740 6f 77 22 75 70 64 61 74 65 48 65 78 28 68 65 78  ow"updateHex(hex
2b750 29 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 20  ) not supported 
2b760 66 6f 72 20 74 68 69 73 20 61 6c 67 2f 70 72 6f  for this alg/pro
2b770 76 3a 20 22 2b 74 68 69 73 2e 61 6c 67 4e 61 6d  v: "+this.algNam
2b780 65 2b 22 2f 22 2b 74 68 69 73 2e 70 72 6f 76 4e  e+"/"+this.provN
2b790 61 6d 65 7d 3b 74 68 69 73 2e 64 69 67 65 73 74  ame};this.digest
2b7a0 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 74 68 72 6f  =function(){thro
2b7b0 77 22 64 69 67 65 73 74 28 29 20 6e 6f 74 20 73  w"digest() not s
2b7c0 75 70 70 6f 72 74 65 64 20 66 6f 72 20 74 68 69  upported for thi
2b7d0 73 20 61 6c 67 2f 70 72 6f 76 3a 20 22 2b 74 68  s alg/prov: "+th
2b7e0 69 73 2e 61 6c 67 4e 61 6d 65 2b 22 2f 22 2b 74  is.algName+"/"+t
2b7f0 68 69 73 2e 70 72 6f 76 4e 61 6d 65 7d 3b 74 68  his.provName};th
2b800 69 73 2e 64 69 67 65 73 74 53 74 72 69 6e 67 3d  is.digestString=
2b810 66 75 6e 63 74 69 6f 6e 28 73 74 72 29 7b 74 68  function(str){th
2b820 72 6f 77 22 64 69 67 65 73 74 53 74 72 69 6e 67  row"digestString
2b830 28 73 74 72 29 20 6e 6f 74 20 73 75 70 70 6f 72  (str) not suppor
2b840 74 65 64 20 66 6f 72 20 74 68 69 73 20 61 6c 67  ted for this alg
2b850 2f 70 72 6f 76 3a 20 22 2b 74 68 69 73 2e 61 6c  /prov: "+this.al
2b860 67 4e 61 6d 65 2b 22 2f 22 2b 74 68 69 73 2e 70  gName+"/"+this.p
2b870 72 6f 76 4e 61 6d 65 7d 3b 74 68 69 73 2e 64 69  rovName};this.di
2b880 67 65 73 74 48 65 78 3d 66 75 6e 63 74 69 6f 6e  gestHex=function
2b890 28 68 65 78 29 7b 74 68 72 6f 77 22 64 69 67 65  (hex){throw"dige
2b8a0 73 74 48 65 78 28 68 65 78 29 20 6e 6f 74 20 73  stHex(hex) not s
2b8b0 75 70 70 6f 72 74 65 64 20 66 6f 72 20 74 68 69  upported for thi
2b8c0 73 20 61 6c 67 2f 70 72 6f 76 3a 20 22 2b 74 68  s alg/prov: "+th
2b8d0 69 73 2e 61 6c 67 4e 61 6d 65 2b 22 2f 22 2b 74  is.algName+"/"+t
2b8e0 68 69 73 2e 70 72 6f 76 4e 61 6d 65 7d 3b 69 66  his.provName};if
2b8f0 28 70 61 72 61 6d 73 21 3d 3d 75 6e 64 65 66 69  (params!==undefi
2b900 6e 65 64 29 7b 69 66 28 70 61 72 61 6d 73 2e 61  ned){if(params.a
2b910 6c 67 21 3d 3d 75 6e 64 65 66 69 6e 65 64 29 7b  lg!==undefined){
2b920 74 68 69 73 2e 61 6c 67 4e 61 6d 65 3d 70 61 72  this.algName=par
2b930 61 6d 73 2e 61 6c 67 3b 69 66 28 70 61 72 61 6d  ams.alg;if(param
2b940 73 2e 70 72 6f 76 3d 3d 3d 75 6e 64 65 66 69 6e  s.prov===undefin
2b950 65 64 29 7b 74 68 69 73 2e 70 72 6f 76 4e 61 6d  ed){this.provNam
2b960 65 3d 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 55 74  e=KJUR.crypto.Ut
2b970 69 6c 2e 44 45 46 41 55 4c 54 50 52 4f 56 49 44  il.DEFAULTPROVID
2b980 45 52 5b 74 68 69 73 2e 61 6c 67 4e 61 6d 65 5d  ER[this.algName]
2b990 7d 74 68 69 73 2e 73 65 74 41 6c 67 41 6e 64 50  }this.setAlgAndP
2b9a0 72 6f 76 69 64 65 72 28 74 68 69 73 2e 61 6c 67  rovider(this.alg
2b9b0 4e 61 6d 65 2c 74 68 69 73 2e 70 72 6f 76 4e 61  Name,this.provNa
2b9c0 6d 65 29 7d 7d 7d 3b 4b 4a 55 52 2e 63 72 79 70  me)}}};KJUR.cryp
2b9d0 74 6f 2e 4d 61 63 3d 66 75 6e 63 74 69 6f 6e 28  to.Mac=function(
2b9e0 70 61 72 61 6d 73 29 7b 76 61 72 20 6d 61 63 3d  params){var mac=
2b9f0 6e 75 6c 6c 3b 76 61 72 20 70 61 73 73 3d 6e 75  null;var pass=nu
2ba00 6c 6c 3b 76 61 72 20 61 6c 67 4e 61 6d 65 3d 6e  ll;var algName=n
2ba10 75 6c 6c 3b 76 61 72 20 70 72 6f 76 4e 61 6d 65  ull;var provName
2ba20 3d 6e 75 6c 6c 3b 76 61 72 20 61 6c 67 50 72 6f  =null;var algPro
2ba30 76 3d 6e 75 6c 6c 3b 74 68 69 73 2e 73 65 74 41  v=null;this.setA
2ba40 6c 67 41 6e 64 50 72 6f 76 69 64 65 72 3d 66 75  lgAndProvider=fu
2ba50 6e 63 74 69 6f 6e 28 61 6c 67 2c 70 72 6f 76 29  nction(alg,prov)
2ba60 7b 69 66 28 61 6c 67 3d 3d 6e 75 6c 6c 29 7b 61  {if(alg==null){a
2ba70 6c 67 3d 22 68 6d 61 63 73 68 61 31 22 7d 61 6c  lg="hmacsha1"}al
2ba80 67 3d 61 6c 67 2e 74 6f 4c 6f 77 65 72 43 61 73  g=alg.toLowerCas
2ba90 65 28 29 3b 69 66 28 61 6c 67 2e 73 75 62 73 74  e();if(alg.subst
2baa0 72 28 30 2c 34 29 21 3d 22 68 6d 61 63 22 29 7b  r(0,4)!="hmac"){
2bab0 74 68 72 6f 77 22 73 65 74 41 6c 67 41 6e 64 50  throw"setAlgAndP
2bac0 72 6f 76 69 64 65 72 20 75 6e 73 75 70 70 6f 72  rovider unsuppor
2bad0 74 65 64 20 48 4d 41 43 20 61 6c 67 3a 20 22 2b  ted HMAC alg: "+
2bae0 61 6c 67 7d 69 66 28 70 72 6f 76 3d 3d 3d 75 6e  alg}if(prov===un
2baf0 64 65 66 69 6e 65 64 29 7b 70 72 6f 76 3d 4b 4a  defined){prov=KJ
2bb00 55 52 2e 63 72 79 70 74 6f 2e 55 74 69 6c 2e 44  UR.crypto.Util.D
2bb10 45 46 41 55 4c 54 50 52 4f 56 49 44 45 52 5b 61  EFAULTPROVIDER[a
2bb20 6c 67 5d 7d 74 68 69 73 2e 61 6c 67 50 72 6f 76  lg]}this.algProv
2bb30 3d 61 6c 67 2b 22 2f 22 2b 70 72 6f 76 3b 76 61  =alg+"/"+prov;va
2bb40 72 20 68 61 73 68 41 6c 67 3d 61 6c 67 2e 73 75  r hashAlg=alg.su
2bb50 62 73 74 72 28 34 29 3b 69 66 28 22 3a 6d 64 35  bstr(4);if(":md5
2bb60 3a 73 68 61 31 3a 73 68 61 32 32 34 3a 73 68 61  :sha1:sha224:sha
2bb70 32 35 36 3a 73 68 61 33 38 34 3a 73 68 61 35 31  256:sha384:sha51
2bb80 32 3a 72 69 70 65 6d 64 31 36 30 3a 22 2e 69 6e  2:ripemd160:".in
2bb90 64 65 78 4f 66 28 68 61 73 68 41 6c 67 29 21 3d  dexOf(hashAlg)!=
2bba0 2d 31 26 26 70 72 6f 76 3d 3d 22 63 72 79 70 74  -1&&prov=="crypt
2bbb0 6f 6a 73 22 29 7b 74 72 79 7b 76 61 72 20 6d 64  ojs"){try{var md
2bbc0 4f 62 6a 3d 65 76 61 6c 28 4b 4a 55 52 2e 63 72  Obj=eval(KJUR.cr
2bbd0 79 70 74 6f 2e 55 74 69 6c 2e 43 52 59 50 54 4f  ypto.Util.CRYPTO
2bbe0 4a 53 4d 45 53 53 41 47 45 44 49 47 45 53 54 4e  JSMESSAGEDIGESTN
2bbf0 41 4d 45 5b 68 61 73 68 41 6c 67 5d 29 3b 74 68  AME[hashAlg]);th
2bc00 69 73 2e 6d 61 63 3d 43 72 79 70 74 6f 4a 53 2e  is.mac=CryptoJS.
2bc10 61 6c 67 6f 2e 48 4d 41 43 2e 63 72 65 61 74 65  algo.HMAC.create
2bc20 28 6d 64 4f 62 6a 2c 74 68 69 73 2e 70 61 73 73  (mdObj,this.pass
2bc30 29 7d 63 61 74 63 68 28 65 78 29 7b 74 68 72 6f  )}catch(ex){thro
2bc40 77 22 73 65 74 41 6c 67 41 6e 64 50 72 6f 76 69  w"setAlgAndProvi
2bc50 64 65 72 20 68 61 73 68 20 61 6c 67 20 73 65 74  der hash alg set
2bc60 20 66 61 69 6c 20 68 61 73 68 41 6c 67 3d 22 2b   fail hashAlg="+
2bc70 68 61 73 68 41 6c 67 2b 22 2f 22 2b 65 78 7d 74  hashAlg+"/"+ex}t
2bc80 68 69 73 2e 75 70 64 61 74 65 53 74 72 69 6e 67  his.updateString
2bc90 3d 66 75 6e 63 74 69 6f 6e 28 73 74 72 29 7b 74  =function(str){t
2bca0 68 69 73 2e 6d 61 63 2e 75 70 64 61 74 65 28 73  his.mac.update(s
2bcb0 74 72 29 7d 3b 74 68 69 73 2e 75 70 64 61 74 65  tr)};this.update
2bcc0 48 65 78 3d 66 75 6e 63 74 69 6f 6e 28 68 65 78  Hex=function(hex
2bcd0 29 7b 76 61 72 20 77 48 65 78 3d 43 72 79 70 74  ){var wHex=Crypt
2bce0 6f 4a 53 2e 65 6e 63 2e 48 65 78 2e 70 61 72 73  oJS.enc.Hex.pars
2bcf0 65 28 68 65 78 29 3b 74 68 69 73 2e 6d 61 63 2e  e(hex);this.mac.
2bd00 75 70 64 61 74 65 28 77 48 65 78 29 7d 3b 74 68  update(wHex)};th
2bd10 69 73 2e 64 6f 46 69 6e 61 6c 3d 66 75 6e 63 74  is.doFinal=funct
2bd20 69 6f 6e 28 29 7b 76 61 72 20 68 61 73 68 3d 74  ion(){var hash=t
2bd30 68 69 73 2e 6d 61 63 2e 66 69 6e 61 6c 69 7a 65  his.mac.finalize
2bd40 28 29 3b 72 65 74 75 72 6e 20 68 61 73 68 2e 74  ();return hash.t
2bd50 6f 53 74 72 69 6e 67 28 43 72 79 70 74 6f 4a 53  oString(CryptoJS
2bd60 2e 65 6e 63 2e 48 65 78 29 7d 3b 74 68 69 73 2e  .enc.Hex)};this.
2bd70 64 6f 46 69 6e 61 6c 53 74 72 69 6e 67 3d 66 75  doFinalString=fu
2bd80 6e 63 74 69 6f 6e 28 73 74 72 29 7b 74 68 69 73  nction(str){this
2bd90 2e 75 70 64 61 74 65 53 74 72 69 6e 67 28 73 74  .updateString(st
2bda0 72 29 3b 72 65 74 75 72 6e 20 74 68 69 73 2e 64  r);return this.d
2bdb0 6f 46 69 6e 61 6c 28 29 7d 3b 74 68 69 73 2e 64  oFinal()};this.d
2bdc0 6f 46 69 6e 61 6c 48 65 78 3d 66 75 6e 63 74 69  oFinalHex=functi
2bdd0 6f 6e 28 68 65 78 29 7b 74 68 69 73 2e 75 70 64  on(hex){this.upd
2bde0 61 74 65 48 65 78 28 68 65 78 29 3b 72 65 74 75  ateHex(hex);retu
2bdf0 72 6e 20 74 68 69 73 2e 64 6f 46 69 6e 61 6c 28  rn this.doFinal(
2be00 29 7d 7d 7d 3b 74 68 69 73 2e 75 70 64 61 74 65  )}}};this.update
2be10 53 74 72 69 6e 67 3d 66 75 6e 63 74 69 6f 6e 28  String=function(
2be20 73 74 72 29 7b 74 68 72 6f 77 22 75 70 64 61 74  str){throw"updat
2be30 65 53 74 72 69 6e 67 28 73 74 72 29 20 6e 6f 74  eString(str) not
2be40 20 73 75 70 70 6f 72 74 65 64 20 66 6f 72 20 74   supported for t
2be50 68 69 73 20 61 6c 67 2f 70 72 6f 76 3a 20 22 2b  his alg/prov: "+
2be60 74 68 69 73 2e 61 6c 67 50 72 6f 76 7d 3b 74 68  this.algProv};th
2be70 69 73 2e 75 70 64 61 74 65 48 65 78 3d 66 75 6e  is.updateHex=fun
2be80 63 74 69 6f 6e 28 68 65 78 29 7b 74 68 72 6f 77  ction(hex){throw
2be90 22 75 70 64 61 74 65 48 65 78 28 68 65 78 29 20  "updateHex(hex) 
2bea0 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 20 66 6f  not supported fo
2beb0 72 20 74 68 69 73 20 61 6c 67 2f 70 72 6f 76 3a  r this alg/prov:
2bec0 20 22 2b 74 68 69 73 2e 61 6c 67 50 72 6f 76 7d   "+this.algProv}
2bed0 3b 74 68 69 73 2e 64 6f 46 69 6e 61 6c 3d 66 75  ;this.doFinal=fu
2bee0 6e 63 74 69 6f 6e 28 29 7b 74 68 72 6f 77 22 64  nction(){throw"d
2bef0 69 67 65 73 74 28 29 20 6e 6f 74 20 73 75 70 70  igest() not supp
2bf00 6f 72 74 65 64 20 66 6f 72 20 74 68 69 73 20 61  orted for this a
2bf10 6c 67 2f 70 72 6f 76 3a 20 22 2b 74 68 69 73 2e  lg/prov: "+this.
2bf20 61 6c 67 50 72 6f 76 7d 3b 74 68 69 73 2e 64 6f  algProv};this.do
2bf30 46 69 6e 61 6c 53 74 72 69 6e 67 3d 66 75 6e 63  FinalString=func
2bf40 74 69 6f 6e 28 73 74 72 29 7b 74 68 72 6f 77 22  tion(str){throw"
2bf50 64 69 67 65 73 74 53 74 72 69 6e 67 28 73 74 72  digestString(str
2bf60 29 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 20  ) not supported 
2bf70 66 6f 72 20 74 68 69 73 20 61 6c 67 2f 70 72 6f  for this alg/pro
2bf80 76 3a 20 22 2b 74 68 69 73 2e 61 6c 67 50 72 6f  v: "+this.algPro
2bf90 76 7d 3b 74 68 69 73 2e 64 6f 46 69 6e 61 6c 48  v};this.doFinalH
2bfa0 65 78 3d 66 75 6e 63 74 69 6f 6e 28 68 65 78 29  ex=function(hex)
2bfb0 7b 74 68 72 6f 77 22 64 69 67 65 73 74 48 65 78  {throw"digestHex
2bfc0 28 68 65 78 29 20 6e 6f 74 20 73 75 70 70 6f 72  (hex) not suppor
2bfd0 74 65 64 20 66 6f 72 20 74 68 69 73 20 61 6c 67  ted for this alg
2bfe0 2f 70 72 6f 76 3a 20 22 2b 74 68 69 73 2e 61 6c  /prov: "+this.al
2bff0 67 50 72 6f 76 7d 3b 74 68 69 73 2e 73 65 74 50  gProv};this.setP
2c000 61 73 73 77 6f 72 64 3d 66 75 6e 63 74 69 6f 6e  assword=function
2c010 28 70 61 73 73 29 7b 69 66 28 74 79 70 65 6f 66  (pass){if(typeof
2c020 20 70 61 73 73 3d 3d 22 73 74 72 69 6e 67 22 29   pass=="string")
2c030 7b 76 61 72 20 68 50 61 73 73 3d 70 61 73 73 3b  {var hPass=pass;
2c040 69 66 28 70 61 73 73 2e 6c 65 6e 67 74 68 25 32  if(pass.length%2
2c050 3d 3d 31 7c 7c 21 70 61 73 73 2e 6d 61 74 63 68  ==1||!pass.match
2c060 28 2f 5e 5b 30 2d 39 41 2d 46 61 2d 66 5d 2b 24  (/^[0-9A-Fa-f]+$
2c070 2f 29 29 7b 68 50 61 73 73 3d 72 73 74 72 74 6f  /)){hPass=rstrto
2c080 68 65 78 28 70 61 73 73 29 7d 74 68 69 73 2e 70  hex(pass)}this.p
2c090 61 73 73 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63  ass=CryptoJS.enc
2c0a0 2e 48 65 78 2e 70 61 72 73 65 28 68 50 61 73 73  .Hex.parse(hPass
2c0b0 29 3b 72 65 74 75 72 6e 7d 69 66 28 74 79 70 65  );return}if(type
2c0c0 6f 66 20 70 61 73 73 21 3d 22 6f 62 6a 65 63 74  of pass!="object
2c0d0 22 29 7b 74 68 72 6f 77 22 4b 4a 55 52 2e 63 72  "){throw"KJUR.cr
2c0e0 79 70 74 6f 2e 4d 61 63 20 75 6e 73 75 70 70 6f  ypto.Mac unsuppo
2c0f0 72 74 65 64 20 70 61 73 73 77 6f 72 64 20 74 79  rted password ty
2c100 70 65 3a 20 22 2b 70 61 73 73 7d 76 61 72 20 68  pe: "+pass}var h
2c110 50 61 73 73 3d 6e 75 6c 6c 3b 69 66 28 70 61 73  Pass=null;if(pas
2c120 73 2e 68 65 78 21 3d 3d 75 6e 64 65 66 69 6e 65  s.hex!==undefine
2c130 64 29 7b 69 66 28 70 61 73 73 2e 68 65 78 2e 6c  d){if(pass.hex.l
2c140 65 6e 67 74 68 25 32 21 3d 30 7c 7c 21 70 61 73  ength%2!=0||!pas
2c150 73 2e 68 65 78 2e 6d 61 74 63 68 28 2f 5e 5b 30  s.hex.match(/^[0
2c160 2d 39 41 2d 46 61 2d 66 5d 2b 24 2f 29 29 7b 74  -9A-Fa-f]+$/)){t
2c170 68 72 6f 77 22 4d 61 63 3a 20 77 72 6f 6e 67 20  hrow"Mac: wrong 
2c180 68 65 78 20 70 61 73 73 77 6f 72 64 3a 20 22 2b  hex password: "+
2c190 70 61 73 73 2e 68 65 78 7d 68 50 61 73 73 3d 70  pass.hex}hPass=p
2c1a0 61 73 73 2e 68 65 78 7d 69 66 28 70 61 73 73 2e  ass.hex}if(pass.
2c1b0 75 74 66 38 21 3d 3d 75 6e 64 65 66 69 6e 65 64  utf8!==undefined
2c1c0 29 7b 68 50 61 73 73 3d 75 74 66 38 74 6f 68 65  ){hPass=utf8tohe
2c1d0 78 28 70 61 73 73 2e 75 74 66 38 29 7d 69 66 28  x(pass.utf8)}if(
2c1e0 70 61 73 73 2e 72 73 74 72 21 3d 3d 75 6e 64 65  pass.rstr!==unde
2c1f0 66 69 6e 65 64 29 7b 68 50 61 73 73 3d 72 73 74  fined){hPass=rst
2c200 72 74 6f 68 65 78 28 70 61 73 73 2e 72 73 74 72  rtohex(pass.rstr
2c210 29 7d 69 66 28 70 61 73 73 2e 62 36 34 21 3d 3d  )}if(pass.b64!==
2c220 75 6e 64 65 66 69 6e 65 64 29 7b 68 50 61 73 73  undefined){hPass
2c230 3d 62 36 34 74 6f 68 65 78 28 70 61 73 73 2e 62  =b64tohex(pass.b
2c240 36 34 29 7d 69 66 28 70 61 73 73 2e 62 36 34 75  64)}if(pass.b64u
2c250 21 3d 3d 75 6e 64 65 66 69 6e 65 64 29 7b 68 50  !==undefined){hP
2c260 61 73 73 3d 62 36 34 75 74 6f 68 65 78 28 70 61  ass=b64utohex(pa
2c270 73 73 2e 62 36 34 75 29 7d 69 66 28 68 50 61 73  ss.b64u)}if(hPas
2c280 73 3d 3d 6e 75 6c 6c 29 7b 74 68 72 6f 77 22 4b  s==null){throw"K
2c290 4a 55 52 2e 63 72 79 70 74 6f 2e 4d 61 63 20 75  JUR.crypto.Mac u
2c2a0 6e 73 75 70 70 6f 72 74 65 64 20 70 61 73 73 77  nsupported passw
2c2b0 6f 72 64 20 74 79 70 65 3a 20 22 2b 70 61 73 73  ord type: "+pass
2c2c0 7d 74 68 69 73 2e 70 61 73 73 3d 43 72 79 70 74  }this.pass=Crypt
2c2d0 6f 4a 53 2e 65 6e 63 2e 48 65 78 2e 70 61 72 73  oJS.enc.Hex.pars
2c2e0 65 28 68 50 61 73 73 29 7d 3b 69 66 28 70 61 72  e(hPass)};if(par
2c2f0 61 6d 73 21 3d 3d 75 6e 64 65 66 69 6e 65 64 29  ams!==undefined)
2c300 7b 69 66 28 70 61 72 61 6d 73 2e 70 61 73 73 21  {if(params.pass!
2c310 3d 3d 75 6e 64 65 66 69 6e 65 64 29 7b 74 68 69  ==undefined){thi
2c320 73 2e 73 65 74 50 61 73 73 77 6f 72 64 28 70 61  s.setPassword(pa
2c330 72 61 6d 73 2e 70 61 73 73 29 7d 69 66 28 70 61  rams.pass)}if(pa
2c340 72 61 6d 73 2e 61 6c 67 21 3d 3d 75 6e 64 65 66  rams.alg!==undef
2c350 69 6e 65 64 29 7b 74 68 69 73 2e 61 6c 67 4e 61  ined){this.algNa
2c360 6d 65 3d 70 61 72 61 6d 73 2e 61 6c 67 3b 69 66  me=params.alg;if
2c370 28 70 61 72 61 6d 73 2e 70 72 6f 76 3d 3d 3d 75  (params.prov===u
2c380 6e 64 65 66 69 6e 65 64 29 7b 74 68 69 73 2e 70  ndefined){this.p
2c390 72 6f 76 4e 61 6d 65 3d 4b 4a 55 52 2e 63 72 79  rovName=KJUR.cry
2c3a0 70 74 6f 2e 55 74 69 6c 2e 44 45 46 41 55 4c 54  pto.Util.DEFAULT
2c3b0 50 52 4f 56 49 44 45 52 5b 74 68 69 73 2e 61 6c  PROVIDER[this.al
2c3c0 67 4e 61 6d 65 5d 7d 74 68 69 73 2e 73 65 74 41  gName]}this.setA
2c3d0 6c 67 41 6e 64 50 72 6f 76 69 64 65 72 28 74 68  lgAndProvider(th
2c3e0 69 73 2e 61 6c 67 4e 61 6d 65 2c 74 68 69 73 2e  is.algName,this.
2c3f0 70 72 6f 76 4e 61 6d 65 29 7d 7d 7d 3b 4b 4a 55  provName)}}};KJU
2c400 52 2e 63 72 79 70 74 6f 2e 53 69 67 6e 61 74 75  R.crypto.Signatu
2c410 72 65 3d 66 75 6e 63 74 69 6f 6e 28 6f 29 7b 76  re=function(o){v
2c420 61 72 20 71 3d 6e 75 6c 6c 3b 76 61 72 20 6e 3d  ar q=null;var n=
2c430 6e 75 6c 6c 3b 76 61 72 20 72 3d 6e 75 6c 6c 3b  null;var r=null;
2c440 76 61 72 20 63 3d 6e 75 6c 6c 3b 76 61 72 20 6c  var c=null;var l
2c450 3d 6e 75 6c 6c 3b 76 61 72 20 64 3d 6e 75 6c 6c  =null;var d=null
2c460 3b 76 61 72 20 6b 3d 6e 75 6c 6c 3b 76 61 72 20  ;var k=null;var 
2c470 68 3d 6e 75 6c 6c 3b 76 61 72 20 70 3d 6e 75 6c  h=null;var p=nul
2c480 6c 3b 76 61 72 20 65 3d 6e 75 6c 6c 3b 76 61 72  l;var e=null;var
2c490 20 62 3d 2d 31 3b 76 61 72 20 67 3d 6e 75 6c 6c   b=-1;var g=null
2c4a0 3b 76 61 72 20 6a 3d 6e 75 6c 6c 3b 76 61 72 20  ;var j=null;var 
2c4b0 61 3d 6e 75 6c 6c 3b 76 61 72 20 69 3d 6e 75 6c  a=null;var i=nul
2c4c0 6c 3b 76 61 72 20 66 3d 6e 75 6c 6c 3b 74 68 69  l;var f=null;thi
2c4d0 73 2e 5f 73 65 74 41 6c 67 4e 61 6d 65 73 3d 66  s._setAlgNames=f
2c4e0 75 6e 63 74 69 6f 6e 28 29 7b 69 66 28 74 68 69  unction(){if(thi
2c4f0 73 2e 61 6c 67 4e 61 6d 65 2e 6d 61 74 63 68 28  s.algName.match(
2c500 2f 5e 28 2e 2b 29 77 69 74 68 28 2e 2b 29 24 2f  /^(.+)with(.+)$/
2c510 29 29 7b 74 68 69 73 2e 6d 64 41 6c 67 4e 61 6d  )){this.mdAlgNam
2c520 65 3d 52 65 67 45 78 70 2e 24 31 2e 74 6f 4c 6f  e=RegExp.$1.toLo
2c530 77 65 72 43 61 73 65 28 29 3b 74 68 69 73 2e 70  werCase();this.p
2c540 75 62 6b 65 79 41 6c 67 4e 61 6d 65 3d 52 65 67  ubkeyAlgName=Reg
2c550 45 78 70 2e 24 32 2e 74 6f 4c 6f 77 65 72 43 61  Exp.$2.toLowerCa
2c560 73 65 28 29 7d 7d 3b 74 68 69 73 2e 5f 7a 65 72  se()}};this._zer
2c570 6f 50 61 64 64 69 6e 67 4f 66 53 69 67 6e 61 74  oPaddingOfSignat
2c580 75 72 65 3d 66 75 6e 63 74 69 6f 6e 28 78 2c 77  ure=function(x,w
2c590 29 7b 76 61 72 20 76 3d 22 22 3b 76 61 72 20 74  ){var v="";var t
2c5a0 3d 77 2f 34 2d 78 2e 6c 65 6e 67 74 68 3b 66 6f  =w/4-x.length;fo
2c5b0 72 28 76 61 72 20 75 3d 30 3b 75 3c 74 3b 75 2b  r(var u=0;u<t;u+
2c5c0 2b 29 7b 76 3d 76 2b 22 30 22 7d 72 65 74 75 72  +){v=v+"0"}retur
2c5d0 6e 20 76 2b 78 7d 3b 74 68 69 73 2e 73 65 74 41  n v+x};this.setA
2c5e0 6c 67 41 6e 64 50 72 6f 76 69 64 65 72 3d 66 75  lgAndProvider=fu
2c5f0 6e 63 74 69 6f 6e 28 75 2c 74 29 7b 74 68 69 73  nction(u,t){this
2c600 2e 5f 73 65 74 41 6c 67 4e 61 6d 65 73 28 29 3b  ._setAlgNames();
2c610 69 66 28 74 21 3d 22 63 72 79 70 74 6f 6a 73 2f  if(t!="cryptojs/
2c620 6a 73 72 73 61 22 29 7b 74 68 72 6f 77 22 70 72  jsrsa"){throw"pr
2c630 6f 76 69 64 65 72 20 6e 6f 74 20 73 75 70 70 6f  ovider not suppo
2c640 72 74 65 64 3a 20 22 2b 74 7d 69 66 28 22 3a 6d  rted: "+t}if(":m
2c650 64 35 3a 73 68 61 31 3a 73 68 61 32 32 34 3a 73  d5:sha1:sha224:s
2c660 68 61 32 35 36 3a 73 68 61 33 38 34 3a 73 68 61  ha256:sha384:sha
2c670 35 31 32 3a 72 69 70 65 6d 64 31 36 30 3a 22 2e  512:ripemd160:".
2c680 69 6e 64 65 78 4f 66 28 74 68 69 73 2e 6d 64 41  indexOf(this.mdA
2c690 6c 67 4e 61 6d 65 29 21 3d 2d 31 29 7b 74 72 79  lgName)!=-1){try
2c6a0 7b 74 68 69 73 2e 6d 64 3d 6e 65 77 20 4b 4a 55  {this.md=new KJU
2c6b0 52 2e 63 72 79 70 74 6f 2e 4d 65 73 73 61 67 65  R.crypto.Message
2c6c0 44 69 67 65 73 74 28 7b 61 6c 67 3a 74 68 69 73  Digest({alg:this
2c6d0 2e 6d 64 41 6c 67 4e 61 6d 65 7d 29 7d 63 61 74  .mdAlgName})}cat
2c6e0 63 68 28 73 29 7b 74 68 72 6f 77 22 73 65 74 41  ch(s){throw"setA
2c6f0 6c 67 41 6e 64 50 72 6f 76 69 64 65 72 20 68 61  lgAndProvider ha
2c700 73 68 20 61 6c 67 20 73 65 74 20 66 61 69 6c 20  sh alg set fail 
2c710 61 6c 67 3d 22 2b 74 68 69 73 2e 6d 64 41 6c 67  alg="+this.mdAlg
2c720 4e 61 6d 65 2b 22 2f 22 2b 73 7d 74 68 69 73 2e  Name+"/"+s}this.
2c730 69 6e 69 74 3d 66 75 6e 63 74 69 6f 6e 28 77 2c  init=function(w,
2c740 78 29 7b 76 61 72 20 79 3d 6e 75 6c 6c 3b 74 72  x){var y=null;tr
2c750 79 7b 69 66 28 78 3d 3d 3d 75 6e 64 65 66 69 6e  y{if(x===undefin
2c760 65 64 29 7b 79 3d 4b 45 59 55 54 49 4c 2e 67 65  ed){y=KEYUTIL.ge
2c770 74 4b 65 79 28 77 29 7d 65 6c 73 65 7b 79 3d 4b  tKey(w)}else{y=K
2c780 45 59 55 54 49 4c 2e 67 65 74 4b 65 79 28 77 2c  EYUTIL.getKey(w,
2c790 78 29 7d 7d 63 61 74 63 68 28 76 29 7b 74 68 72  x)}}catch(v){thr
2c7a0 6f 77 22 69 6e 69 74 20 66 61 69 6c 65 64 3a 22  ow"init failed:"
2c7b0 2b 76 7d 69 66 28 79 2e 69 73 50 72 69 76 61 74  +v}if(y.isPrivat
2c7c0 65 3d 3d 3d 74 72 75 65 29 7b 74 68 69 73 2e 70  e===true){this.p
2c7d0 72 76 4b 65 79 3d 79 3b 74 68 69 73 2e 73 74 61  rvKey=y;this.sta
2c7e0 74 65 3d 22 53 49 47 4e 22 7d 65 6c 73 65 7b 69  te="SIGN"}else{i
2c7f0 66 28 79 2e 69 73 50 75 62 6c 69 63 3d 3d 3d 74  f(y.isPublic===t
2c800 72 75 65 29 7b 74 68 69 73 2e 70 75 62 4b 65 79  rue){this.pubKey
2c810 3d 79 3b 74 68 69 73 2e 73 74 61 74 65 3d 22 56  =y;this.state="V
2c820 45 52 49 46 59 22 7d 65 6c 73 65 7b 74 68 72 6f  ERIFY"}else{thro
2c830 77 22 69 6e 69 74 20 66 61 69 6c 65 64 2e 3a 22  w"init failed.:"
2c840 2b 79 7d 7d 7d 3b 74 68 69 73 2e 69 6e 69 74 53  +y}}};this.initS
2c850 69 67 6e 3d 66 75 6e 63 74 69 6f 6e 28 76 29 7b  ign=function(v){
2c860 69 66 28 74 79 70 65 6f 66 20 76 2e 65 63 70 72  if(typeof v.ecpr
2c870 76 68 65 78 3d 3d 22 73 74 72 69 6e 67 22 26 26  vhex=="string"&&
2c880 74 79 70 65 6f 66 20 76 2e 65 63 63 75 72 76 65  typeof v.eccurve
2c890 6e 61 6d 65 3d 3d 22 73 74 72 69 6e 67 22 29 7b  name=="string"){
2c8a0 74 68 69 73 2e 65 63 70 72 76 68 65 78 3d 76 2e  this.ecprvhex=v.
2c8b0 65 63 70 72 76 68 65 78 3b 74 68 69 73 2e 65 63  ecprvhex;this.ec
2c8c0 63 75 72 76 65 6e 61 6d 65 3d 76 2e 65 63 63 75  curvename=v.eccu
2c8d0 72 76 65 6e 61 6d 65 7d 65 6c 73 65 7b 74 68 69  rvename}else{thi
2c8e0 73 2e 70 72 76 4b 65 79 3d 76 7d 74 68 69 73 2e  s.prvKey=v}this.
2c8f0 73 74 61 74 65 3d 22 53 49 47 4e 22 7d 3b 74 68  state="SIGN"};th
2c900 69 73 2e 69 6e 69 74 56 65 72 69 66 79 42 79 50  is.initVerifyByP
2c910 75 62 6c 69 63 4b 65 79 3d 66 75 6e 63 74 69 6f  ublicKey=functio
2c920 6e 28 76 29 7b 69 66 28 74 79 70 65 6f 66 20 76  n(v){if(typeof v
2c930 2e 65 63 70 75 62 68 65 78 3d 3d 22 73 74 72 69  .ecpubhex=="stri
2c940 6e 67 22 26 26 74 79 70 65 6f 66 20 76 2e 65 63  ng"&&typeof v.ec
2c950 63 75 72 76 65 6e 61 6d 65 3d 3d 22 73 74 72 69  curvename=="stri
2c960 6e 67 22 29 7b 74 68 69 73 2e 65 63 70 75 62 68  ng"){this.ecpubh
2c970 65 78 3d 76 2e 65 63 70 75 62 68 65 78 3b 74 68  ex=v.ecpubhex;th
2c980 69 73 2e 65 63 63 75 72 76 65 6e 61 6d 65 3d 76  is.eccurvename=v
2c990 2e 65 63 63 75 72 76 65 6e 61 6d 65 7d 65 6c 73  .eccurvename}els
2c9a0 65 7b 69 66 28 76 20 69 6e 73 74 61 6e 63 65 6f  e{if(v instanceo
2c9b0 66 20 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 45 43  f KJUR.crypto.EC
2c9c0 44 53 41 29 7b 74 68 69 73 2e 70 75 62 4b 65 79  DSA){this.pubKey
2c9d0 3d 76 7d 65 6c 73 65 7b 69 66 28 76 20 69 6e 73  =v}else{if(v ins
2c9e0 74 61 6e 63 65 6f 66 20 52 53 41 4b 65 79 29 7b  tanceof RSAKey){
2c9f0 74 68 69 73 2e 70 75 62 4b 65 79 3d 76 7d 7d 7d  this.pubKey=v}}}
2ca00 74 68 69 73 2e 73 74 61 74 65 3d 22 56 45 52 49  this.state="VERI
2ca10 46 59 22 7d 3b 74 68 69 73 2e 69 6e 69 74 56 65  FY"};this.initVe
2ca20 72 69 66 79 42 79 43 65 72 74 69 66 69 63 61 74  rifyByCertificat
2ca30 65 50 45 4d 3d 66 75 6e 63 74 69 6f 6e 28 76 29  ePEM=function(v)
2ca40 7b 76 61 72 20 77 3d 6e 65 77 20 58 35 30 39 28  {var w=new X509(
2ca50 29 3b 77 2e 72 65 61 64 43 65 72 74 50 45 4d 28  );w.readCertPEM(
2ca60 76 29 3b 74 68 69 73 2e 70 75 62 4b 65 79 3d 77  v);this.pubKey=w
2ca70 2e 73 75 62 6a 65 63 74 50 75 62 6c 69 63 4b 65  .subjectPublicKe
2ca80 79 52 53 41 3b 74 68 69 73 2e 73 74 61 74 65 3d  yRSA;this.state=
2ca90 22 56 45 52 49 46 59 22 7d 3b 74 68 69 73 2e 75  "VERIFY"};this.u
2caa0 70 64 61 74 65 53 74 72 69 6e 67 3d 66 75 6e 63  pdateString=func
2cab0 74 69 6f 6e 28 76 29 7b 74 68 69 73 2e 6d 64 2e  tion(v){this.md.
2cac0 75 70 64 61 74 65 53 74 72 69 6e 67 28 76 29 7d  updateString(v)}
2cad0 3b 74 68 69 73 2e 75 70 64 61 74 65 48 65 78 3d  ;this.updateHex=
2cae0 66 75 6e 63 74 69 6f 6e 28 76 29 7b 74 68 69 73  function(v){this
2caf0 2e 6d 64 2e 75 70 64 61 74 65 48 65 78 28 76 29  .md.updateHex(v)
2cb00 7d 3b 74 68 69 73 2e 73 69 67 6e 3d 66 75 6e 63  };this.sign=func
2cb10 74 69 6f 6e 28 29 7b 74 68 69 73 2e 73 48 61 73  tion(){this.sHas
2cb20 68 48 65 78 3d 74 68 69 73 2e 6d 64 2e 64 69 67  hHex=this.md.dig
2cb30 65 73 74 28 29 3b 69 66 28 74 79 70 65 6f 66 20  est();if(typeof 
2cb40 74 68 69 73 2e 65 63 70 72 76 68 65 78 21 3d 22  this.ecprvhex!="
2cb50 75 6e 64 65 66 69 6e 65 64 22 26 26 74 79 70 65  undefined"&&type
2cb60 6f 66 20 74 68 69 73 2e 65 63 63 75 72 76 65 6e  of this.eccurven
2cb70 61 6d 65 21 3d 22 75 6e 64 65 66 69 6e 65 64 22  ame!="undefined"
2cb80 29 7b 76 61 72 20 76 3d 6e 65 77 20 4b 4a 55 52  ){var v=new KJUR
2cb90 2e 63 72 79 70 74 6f 2e 45 43 44 53 41 28 7b 63  .crypto.ECDSA({c
2cba0 75 72 76 65 3a 74 68 69 73 2e 65 63 63 75 72 76  urve:this.eccurv
2cbb0 65 6e 61 6d 65 7d 29 3b 74 68 69 73 2e 68 53 69  ename});this.hSi
2cbc0 67 6e 3d 76 2e 73 69 67 6e 48 65 78 28 74 68 69  gn=v.signHex(thi
2cbd0 73 2e 73 48 61 73 68 48 65 78 2c 74 68 69 73 2e  s.sHashHex,this.
2cbe0 65 63 70 72 76 68 65 78 29 7d 65 6c 73 65 7b 69  ecprvhex)}else{i
2cbf0 66 28 74 68 69 73 2e 70 72 76 4b 65 79 20 69 6e  f(this.prvKey in
2cc00 73 74 61 6e 63 65 6f 66 20 52 53 41 4b 65 79 26  stanceof RSAKey&
2cc10 26 74 68 69 73 2e 70 75 62 6b 65 79 41 6c 67 4e  &this.pubkeyAlgN
2cc20 61 6d 65 3d 3d 22 72 73 61 61 6e 64 6d 67 66 31  ame=="rsaandmgf1
2cc30 22 29 7b 74 68 69 73 2e 68 53 69 67 6e 3d 74 68  "){this.hSign=th
2cc40 69 73 2e 70 72 76 4b 65 79 2e 73 69 67 6e 57 69  is.prvKey.signWi
2cc50 74 68 4d 65 73 73 61 67 65 48 61 73 68 50 53 53  thMessageHashPSS
2cc60 28 74 68 69 73 2e 73 48 61 73 68 48 65 78 2c 74  (this.sHashHex,t
2cc70 68 69 73 2e 6d 64 41 6c 67 4e 61 6d 65 2c 74 68  his.mdAlgName,th
2cc80 69 73 2e 70 73 73 53 61 6c 74 4c 65 6e 29 7d 65  is.pssSaltLen)}e
2cc90 6c 73 65 7b 69 66 28 74 68 69 73 2e 70 72 76 4b  lse{if(this.prvK
2cca0 65 79 20 69 6e 73 74 61 6e 63 65 6f 66 20 52 53  ey instanceof RS
2ccb0 41 4b 65 79 26 26 74 68 69 73 2e 70 75 62 6b 65  AKey&&this.pubke
2ccc0 79 41 6c 67 4e 61 6d 65 3d 3d 22 72 73 61 22 29  yAlgName=="rsa")
2ccd0 7b 74 68 69 73 2e 68 53 69 67 6e 3d 74 68 69 73  {this.hSign=this
2cce0 2e 70 72 76 4b 65 79 2e 73 69 67 6e 57 69 74 68  .prvKey.signWith
2ccf0 4d 65 73 73 61 67 65 48 61 73 68 28 74 68 69 73  MessageHash(this
2cd00 2e 73 48 61 73 68 48 65 78 2c 74 68 69 73 2e 6d  .sHashHex,this.m
2cd10 64 41 6c 67 4e 61 6d 65 29 7d 65 6c 73 65 7b 69  dAlgName)}else{i
2cd20 66 28 74 68 69 73 2e 70 72 76 4b 65 79 20 69 6e  f(this.prvKey in
2cd30 73 74 61 6e 63 65 6f 66 20 4b 4a 55 52 2e 63 72  stanceof KJUR.cr
2cd40 79 70 74 6f 2e 45 43 44 53 41 29 7b 74 68 69 73  ypto.ECDSA){this
2cd50 2e 68 53 69 67 6e 3d 74 68 69 73 2e 70 72 76 4b  .hSign=this.prvK
2cd60 65 79 2e 73 69 67 6e 57 69 74 68 4d 65 73 73 61  ey.signWithMessa
2cd70 67 65 48 61 73 68 28 74 68 69 73 2e 73 48 61 73  geHash(this.sHas
2cd80 68 48 65 78 29 7d 65 6c 73 65 7b 69 66 28 74 68  hHex)}else{if(th
2cd90 69 73 2e 70 72 76 4b 65 79 20 69 6e 73 74 61 6e  is.prvKey instan
2cda0 63 65 6f 66 20 4b 4a 55 52 2e 63 72 79 70 74 6f  ceof KJUR.crypto
2cdb0 2e 44 53 41 29 7b 74 68 69 73 2e 68 53 69 67 6e  .DSA){this.hSign
2cdc0 3d 74 68 69 73 2e 70 72 76 4b 65 79 2e 73 69 67  =this.prvKey.sig
2cdd0 6e 57 69 74 68 4d 65 73 73 61 67 65 48 61 73 68  nWithMessageHash
2cde0 28 74 68 69 73 2e 73 48 61 73 68 48 65 78 29 7d  (this.sHashHex)}
2cdf0 65 6c 73 65 7b 74 68 72 6f 77 22 53 69 67 6e 61  else{throw"Signa
2ce00 74 75 72 65 3a 20 75 6e 73 75 70 70 6f 72 74 65  ture: unsupporte
2ce10 64 20 70 75 62 6c 69 63 20 6b 65 79 20 61 6c 67  d public key alg
2ce20 3a 20 22 2b 74 68 69 73 2e 70 75 62 6b 65 79 41  : "+this.pubkeyA
2ce30 6c 67 4e 61 6d 65 7d 7d 7d 7d 7d 72 65 74 75 72  lgName}}}}}retur
2ce40 6e 20 74 68 69 73 2e 68 53 69 67 6e 7d 3b 74 68  n this.hSign};th
2ce50 69 73 2e 73 69 67 6e 53 74 72 69 6e 67 3d 66 75  is.signString=fu
2ce60 6e 63 74 69 6f 6e 28 76 29 7b 74 68 69 73 2e 75  nction(v){this.u
2ce70 70 64 61 74 65 53 74 72 69 6e 67 28 76 29 3b 72  pdateString(v);r
2ce80 65 74 75 72 6e 20 74 68 69 73 2e 73 69 67 6e 28  eturn this.sign(
2ce90 29 7d 3b 74 68 69 73 2e 73 69 67 6e 48 65 78 3d  )};this.signHex=
2cea0 66 75 6e 63 74 69 6f 6e 28 76 29 7b 74 68 69 73  function(v){this
2ceb0 2e 75 70 64 61 74 65 48 65 78 28 76 29 3b 72 65  .updateHex(v);re
2cec0 74 75 72 6e 20 74 68 69 73 2e 73 69 67 6e 28 29  turn this.sign()
2ced0 7d 3b 74 68 69 73 2e 76 65 72 69 66 79 3d 66 75  };this.verify=fu
2cee0 6e 63 74 69 6f 6e 28 76 29 7b 74 68 69 73 2e 73  nction(v){this.s
2cef0 48 61 73 68 48 65 78 3d 74 68 69 73 2e 6d 64 2e  HashHex=this.md.
2cf00 64 69 67 65 73 74 28 29 3b 69 66 28 74 79 70 65  digest();if(type
2cf10 6f 66 20 74 68 69 73 2e 65 63 70 75 62 68 65 78  of this.ecpubhex
2cf20 21 3d 22 75 6e 64 65 66 69 6e 65 64 22 26 26 74  !="undefined"&&t
2cf30 79 70 65 6f 66 20 74 68 69 73 2e 65 63 63 75 72  ypeof this.eccur
2cf40 76 65 6e 61 6d 65 21 3d 22 75 6e 64 65 66 69 6e  vename!="undefin
2cf50 65 64 22 29 7b 76 61 72 20 77 3d 6e 65 77 20 4b  ed"){var w=new K
2cf60 4a 55 52 2e 63 72 79 70 74 6f 2e 45 43 44 53 41  JUR.crypto.ECDSA
2cf70 28 7b 63 75 72 76 65 3a 74 68 69 73 2e 65 63 63  ({curve:this.ecc
2cf80 75 72 76 65 6e 61 6d 65 7d 29 3b 72 65 74 75 72  urvename});retur
2cf90 6e 20 77 2e 76 65 72 69 66 79 48 65 78 28 74 68  n w.verifyHex(th
2cfa0 69 73 2e 73 48 61 73 68 48 65 78 2c 76 2c 74 68  is.sHashHex,v,th
2cfb0 69 73 2e 65 63 70 75 62 68 65 78 29 7d 65 6c 73  is.ecpubhex)}els
2cfc0 65 7b 69 66 28 74 68 69 73 2e 70 75 62 4b 65 79  e{if(this.pubKey
2cfd0 20 69 6e 73 74 61 6e 63 65 6f 66 20 52 53 41 4b   instanceof RSAK
2cfe0 65 79 26 26 74 68 69 73 2e 70 75 62 6b 65 79 41  ey&&this.pubkeyA
2cff0 6c 67 4e 61 6d 65 3d 3d 22 72 73 61 61 6e 64 6d  lgName=="rsaandm
2d000 67 66 31 22 29 7b 72 65 74 75 72 6e 20 74 68 69  gf1"){return thi
2d010 73 2e 70 75 62 4b 65 79 2e 76 65 72 69 66 79 57  s.pubKey.verifyW
2d020 69 74 68 4d 65 73 73 61 67 65 48 61 73 68 50 53  ithMessageHashPS
2d030 53 28 74 68 69 73 2e 73 48 61 73 68 48 65 78 2c  S(this.sHashHex,
2d040 76 2c 74 68 69 73 2e 6d 64 41 6c 67 4e 61 6d 65  v,this.mdAlgName
2d050 2c 74 68 69 73 2e 70 73 73 53 61 6c 74 4c 65 6e  ,this.pssSaltLen
2d060 29 7d 65 6c 73 65 7b 69 66 28 74 68 69 73 2e 70  )}else{if(this.p
2d070 75 62 4b 65 79 20 69 6e 73 74 61 6e 63 65 6f 66  ubKey instanceof
2d080 20 52 53 41 4b 65 79 26 26 74 68 69 73 2e 70 75   RSAKey&&this.pu
2d090 62 6b 65 79 41 6c 67 4e 61 6d 65 3d 3d 22 72 73  bkeyAlgName=="rs
2d0a0 61 22 29 7b 72 65 74 75 72 6e 20 74 68 69 73 2e  a"){return this.
2d0b0 70 75 62 4b 65 79 2e 76 65 72 69 66 79 57 69 74  pubKey.verifyWit
2d0c0 68 4d 65 73 73 61 67 65 48 61 73 68 28 74 68 69  hMessageHash(thi
2d0d0 73 2e 73 48 61 73 68 48 65 78 2c 76 29 7d 65 6c  s.sHashHex,v)}el
2d0e0 73 65 7b 69 66 28 74 68 69 73 2e 70 75 62 4b 65  se{if(this.pubKe
2d0f0 79 20 69 6e 73 74 61 6e 63 65 6f 66 20 4b 4a 55  y instanceof KJU
2d100 52 2e 63 72 79 70 74 6f 2e 45 43 44 53 41 29 7b  R.crypto.ECDSA){
2d110 72 65 74 75 72 6e 20 74 68 69 73 2e 70 75 62 4b  return this.pubK
2d120 65 79 2e 76 65 72 69 66 79 57 69 74 68 4d 65 73  ey.verifyWithMes
2d130 73 61 67 65 48 61 73 68 28 74 68 69 73 2e 73 48  sageHash(this.sH
2d140 61 73 68 48 65 78 2c 76 29 7d 65 6c 73 65 7b 69  ashHex,v)}else{i
2d150 66 28 74 68 69 73 2e 70 75 62 4b 65 79 20 69 6e  f(this.pubKey in
2d160 73 74 61 6e 63 65 6f 66 20 4b 4a 55 52 2e 63 72  stanceof KJUR.cr
2d170 79 70 74 6f 2e 44 53 41 29 7b 72 65 74 75 72 6e  ypto.DSA){return
2d180 20 74 68 69 73 2e 70 75 62 4b 65 79 2e 76 65 72   this.pubKey.ver
2d190 69 66 79 57 69 74 68 4d 65 73 73 61 67 65 48 61  ifyWithMessageHa
2d1a0 73 68 28 74 68 69 73 2e 73 48 61 73 68 48 65 78  sh(this.sHashHex
2d1b0 2c 76 29 7d 65 6c 73 65 7b 74 68 72 6f 77 22 53  ,v)}else{throw"S
2d1c0 69 67 6e 61 74 75 72 65 3a 20 75 6e 73 75 70 70  ignature: unsupp
2d1d0 6f 72 74 65 64 20 70 75 62 6c 69 63 20 6b 65 79  orted public key
2d1e0 20 61 6c 67 3a 20 22 2b 74 68 69 73 2e 70 75 62   alg: "+this.pub
2d1f0 6b 65 79 41 6c 67 4e 61 6d 65 7d 7d 7d 7d 7d 7d  keyAlgName}}}}}}
2d200 7d 7d 3b 74 68 69 73 2e 69 6e 69 74 3d 66 75 6e  }};this.init=fun
2d210 63 74 69 6f 6e 28 73 2c 74 29 7b 74 68 72 6f 77  ction(s,t){throw
2d220 22 69 6e 69 74 28 6b 65 79 2c 20 70 61 73 73 29  "init(key, pass)
2d230 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 20 66   not supported f
2d240 6f 72 20 74 68 69 73 20 61 6c 67 3a 70 72 6f 76  or this alg:prov
2d250 3d 22 2b 74 68 69 73 2e 61 6c 67 50 72 6f 76 4e  ="+this.algProvN
2d260 61 6d 65 7d 3b 74 68 69 73 2e 69 6e 69 74 56 65  ame};this.initVe
2d270 72 69 66 79 42 79 50 75 62 6c 69 63 4b 65 79 3d  rifyByPublicKey=
2d280 66 75 6e 63 74 69 6f 6e 28 73 29 7b 74 68 72 6f  function(s){thro
2d290 77 22 69 6e 69 74 56 65 72 69 66 79 42 79 50 75  w"initVerifyByPu
2d2a0 62 6c 69 63 4b 65 79 28 72 73 61 50 75 62 4b 65  blicKey(rsaPubKe
2d2b0 79 79 29 20 6e 6f 74 20 73 75 70 70 6f 72 74 65  yy) not supporte
2d2c0 64 20 66 6f 72 20 74 68 69 73 20 61 6c 67 3a 70  d for this alg:p
2d2d0 72 6f 76 3d 22 2b 74 68 69 73 2e 61 6c 67 50 72  rov="+this.algPr
2d2e0 6f 76 4e 61 6d 65 7d 3b 74 68 69 73 2e 69 6e 69  ovName};this.ini
2d2f0 74 56 65 72 69 66 79 42 79 43 65 72 74 69 66 69  tVerifyByCertifi
2d300 63 61 74 65 50 45 4d 3d 66 75 6e 63 74 69 6f 6e  catePEM=function
2d310 28 73 29 7b 74 68 72 6f 77 22 69 6e 69 74 56 65  (s){throw"initVe
2d320 72 69 66 79 42 79 43 65 72 74 69 66 69 63 61 74  rifyByCertificat
2d330 65 50 45 4d 28 63 65 72 74 50 45 4d 29 20 6e 6f  ePEM(certPEM) no
2d340 74 20 73 75 70 70 6f 72 74 65 64 20 66 6f 72 20  t supported for 
2d350 74 68 69 73 20 61 6c 67 3a 70 72 6f 76 3d 22 2b  this alg:prov="+
2d360 74 68 69 73 2e 61 6c 67 50 72 6f 76 4e 61 6d 65  this.algProvName
2d370 7d 3b 74 68 69 73 2e 69 6e 69 74 53 69 67 6e 3d  };this.initSign=
2d380 66 75 6e 63 74 69 6f 6e 28 73 29 7b 74 68 72 6f  function(s){thro
2d390 77 22 69 6e 69 74 53 69 67 6e 28 70 72 76 4b 65  w"initSign(prvKe
2d3a0 79 29 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64  y) not supported
2d3b0 20 66 6f 72 20 74 68 69 73 20 61 6c 67 3a 70 72   for this alg:pr
2d3c0 6f 76 3d 22 2b 74 68 69 73 2e 61 6c 67 50 72 6f  ov="+this.algPro
2d3d0 76 4e 61 6d 65 7d 3b 74 68 69 73 2e 75 70 64 61  vName};this.upda
2d3e0 74 65 53 74 72 69 6e 67 3d 66 75 6e 63 74 69 6f  teString=functio
2d3f0 6e 28 73 29 7b 74 68 72 6f 77 22 75 70 64 61 74  n(s){throw"updat
2d400 65 53 74 72 69 6e 67 28 73 74 72 29 20 6e 6f 74  eString(str) not
2d410 20 73 75 70 70 6f 72 74 65 64 20 66 6f 72 20 74   supported for t
2d420 68 69 73 20 61 6c 67 3a 70 72 6f 76 3d 22 2b 74  his alg:prov="+t
2d430 68 69 73 2e 61 6c 67 50 72 6f 76 4e 61 6d 65 7d  his.algProvName}
2d440 3b 74 68 69 73 2e 75 70 64 61 74 65 48 65 78 3d  ;this.updateHex=
2d450 66 75 6e 63 74 69 6f 6e 28 73 29 7b 74 68 72 6f  function(s){thro
2d460 77 22 75 70 64 61 74 65 48 65 78 28 68 65 78 29  w"updateHex(hex)
2d470 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 20 66   not supported f
2d480 6f 72 20 74 68 69 73 20 61 6c 67 3a 70 72 6f 76  or this alg:prov
2d490 3d 22 2b 74 68 69 73 2e 61 6c 67 50 72 6f 76 4e  ="+this.algProvN
2d4a0 61 6d 65 7d 3b 74 68 69 73 2e 73 69 67 6e 3d 66  ame};this.sign=f
2d4b0 75 6e 63 74 69 6f 6e 28 29 7b 74 68 72 6f 77 22  unction(){throw"
2d4c0 73 69 67 6e 28 29 20 6e 6f 74 20 73 75 70 70 6f  sign() not suppo
2d4d0 72 74 65 64 20 66 6f 72 20 74 68 69 73 20 61 6c  rted for this al
2d4e0 67 3a 70 72 6f 76 3d 22 2b 74 68 69 73 2e 61 6c  g:prov="+this.al
2d4f0 67 50 72 6f 76 4e 61 6d 65 7d 3b 74 68 69 73 2e  gProvName};this.
2d500 73 69 67 6e 53 74 72 69 6e 67 3d 66 75 6e 63 74  signString=funct
2d510 69 6f 6e 28 73 29 7b 74 68 72 6f 77 22 64 69 67  ion(s){throw"dig
2d520 65 73 74 53 74 72 69 6e 67 28 73 74 72 29 20 6e  estString(str) n
2d530 6f 74 20 73 75 70 70 6f 72 74 65 64 20 66 6f 72  ot supported for
2d540 20 74 68 69 73 20 61 6c 67 3a 70 72 6f 76 3d 22   this alg:prov="
2d550 2b 74 68 69 73 2e 61 6c 67 50 72 6f 76 4e 61 6d  +this.algProvNam
2d560 65 7d 3b 74 68 69 73 2e 73 69 67 6e 48 65 78 3d  e};this.signHex=
2d570 66 75 6e 63 74 69 6f 6e 28 73 29 7b 74 68 72 6f  function(s){thro
2d580 77 22 64 69 67 65 73 74 48 65 78 28 68 65 78 29  w"digestHex(hex)
2d590 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 20 66   not supported f
2d5a0 6f 72 20 74 68 69 73 20 61 6c 67 3a 70 72 6f 76  or this alg:prov
2d5b0 3d 22 2b 74 68 69 73 2e 61 6c 67 50 72 6f 76 4e  ="+this.algProvN
2d5c0 61 6d 65 7d 3b 74 68 69 73 2e 76 65 72 69 66 79  ame};this.verify
2d5d0 3d 66 75 6e 63 74 69 6f 6e 28 73 29 7b 74 68 72  =function(s){thr
2d5e0 6f 77 22 76 65 72 69 66 79 28 68 53 69 67 56 61  ow"verify(hSigVa
2d5f0 6c 29 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64  l) not supported
2d600 20 66 6f 72 20 74 68 69 73 20 61 6c 67 3a 70 72   for this alg:pr
2d610 6f 76 3d 22 2b 74 68 69 73 2e 61 6c 67 50 72 6f  ov="+this.algPro
2d620 76 4e 61 6d 65 7d 3b 74 68 69 73 2e 69 6e 69 74  vName};this.init
2d630 50 61 72 61 6d 73 3d 6f 3b 69 66 28 6f 21 3d 3d  Params=o;if(o!==
2d640 75 6e 64 65 66 69 6e 65 64 29 7b 69 66 28 6f 2e  undefined){if(o.
2d650 61 6c 67 21 3d 3d 75 6e 64 65 66 69 6e 65 64 29  alg!==undefined)
2d660 7b 74 68 69 73 2e 61 6c 67 4e 61 6d 65 3d 6f 2e  {this.algName=o.
2d670 61 6c 67 3b 69 66 28 6f 2e 70 72 6f 76 3d 3d 3d  alg;if(o.prov===
2d680 75 6e 64 65 66 69 6e 65 64 29 7b 74 68 69 73 2e  undefined){this.
2d690 70 72 6f 76 4e 61 6d 65 3d 4b 4a 55 52 2e 63 72  provName=KJUR.cr
2d6a0 79 70 74 6f 2e 55 74 69 6c 2e 44 45 46 41 55 4c  ypto.Util.DEFAUL
2d6b0 54 50 52 4f 56 49 44 45 52 5b 74 68 69 73 2e 61  TPROVIDER[this.a
2d6c0 6c 67 4e 61 6d 65 5d 7d 65 6c 73 65 7b 74 68 69  lgName]}else{thi
2d6d0 73 2e 70 72 6f 76 4e 61 6d 65 3d 6f 2e 70 72 6f  s.provName=o.pro
2d6e0 76 7d 74 68 69 73 2e 61 6c 67 50 72 6f 76 4e 61  v}this.algProvNa
2d6f0 6d 65 3d 74 68 69 73 2e 61 6c 67 4e 61 6d 65 2b  me=this.algName+
2d700 22 3a 22 2b 74 68 69 73 2e 70 72 6f 76 4e 61 6d  ":"+this.provNam
2d710 65 3b 74 68 69 73 2e 73 65 74 41 6c 67 41 6e 64  e;this.setAlgAnd
2d720 50 72 6f 76 69 64 65 72 28 74 68 69 73 2e 61 6c  Provider(this.al
2d730 67 4e 61 6d 65 2c 74 68 69 73 2e 70 72 6f 76 4e  gName,this.provN
2d740 61 6d 65 29 3b 74 68 69 73 2e 5f 73 65 74 41 6c  ame);this._setAl
2d750 67 4e 61 6d 65 73 28 29 7d 69 66 28 6f 2e 70 73  gNames()}if(o.ps
2d760 73 73 61 6c 74 6c 65 6e 21 3d 3d 75 6e 64 65 66  ssaltlen!==undef
2d770 69 6e 65 64 29 7b 74 68 69 73 2e 70 73 73 53 61  ined){this.pssSa
2d780 6c 74 4c 65 6e 3d 6f 2e 70 73 73 73 61 6c 74 6c  ltLen=o.psssaltl
2d790 65 6e 7d 69 66 28 6f 2e 70 72 76 6b 65 79 70 65  en}if(o.prvkeype
2d7a0 6d 21 3d 3d 75 6e 64 65 66 69 6e 65 64 29 7b 69  m!==undefined){i
2d7b0 66 28 6f 2e 70 72 76 6b 65 79 70 61 73 21 3d 3d  f(o.prvkeypas!==
2d7c0 75 6e 64 65 66 69 6e 65 64 29 7b 74 68 72 6f 77  undefined){throw
2d7d0 22 62 6f 74 68 20 70 72 76 6b 65 79 70 65 6d 20  "both prvkeypem 
2d7e0 61 6e 64 20 70 72 76 6b 65 79 70 61 73 20 70 61  and prvkeypas pa
2d7f0 72 61 6d 65 74 65 72 73 20 6e 6f 74 20 73 75 70  rameters not sup
2d800 70 6f 72 74 65 64 22 7d 65 6c 73 65 7b 74 72 79  ported"}else{try
2d810 7b 76 61 72 20 71 3d 6e 65 77 20 52 53 41 4b 65  {var q=new RSAKe
2d820 79 28 29 3b 71 2e 72 65 61 64 50 72 69 76 61 74  y();q.readPrivat
2d830 65 4b 65 79 46 72 6f 6d 50 45 4d 53 74 72 69 6e  eKeyFromPEMStrin
2d840 67 28 6f 2e 70 72 76 6b 65 79 70 65 6d 29 3b 74  g(o.prvkeypem);t
2d850 68 69 73 2e 69 6e 69 74 53 69 67 6e 28 71 29 7d  his.initSign(q)}
2d860 63 61 74 63 68 28 6d 29 7b 74 68 72 6f 77 22 66  catch(m){throw"f
2d870 61 74 61 6c 20 65 72 72 6f 72 20 74 6f 20 6c 6f  atal error to lo
2d880 61 64 20 70 65 6d 20 70 72 69 76 61 74 65 20 6b  ad pem private k
2d890 65 79 3a 20 22 2b 6d 7d 7d 7d 7d 7d 3b 4b 4a 55  ey: "+m}}}}};KJU
2d8a0 52 2e 63 72 79 70 74 6f 2e 4f 49 44 3d 6e 65 77  R.crypto.OID=new
2d8b0 20 66 75 6e 63 74 69 6f 6e 28 29 7b 74 68 69 73   function(){this
2d8c0 2e 6f 69 64 68 65 78 32 6e 61 6d 65 3d 7b 22 32  .oidhex2name={"2
2d8d0 61 38 36 34 38 38 36 66 37 30 64 30 31 30 31 30  a864886f70d01010
2d8e0 31 22 3a 22 72 73 61 45 6e 63 72 79 70 74 69 6f  1":"rsaEncryptio
2d8f0 6e 22 2c 22 32 61 38 36 34 38 63 65 33 64 30 32  n","2a8648ce3d02
2d900 30 31 22 3a 22 65 63 50 75 62 6c 69 63 4b 65 79  01":"ecPublicKey
2d910 22 2c 22 32 61 38 36 34 38 63 65 33 38 30 34 30  ","2a8648ce38040
2d920 31 22 3a 22 64 73 61 22 2c 22 32 61 38 36 34 38  1":"dsa","2a8648
2d930 63 65 33 64 30 33 30 31 30 37 22 3a 22 73 65 63  ce3d030107":"sec
2d940 70 32 35 36 72 31 22 2c 22 32 62 38 31 30 34 30  p256r1","2b81040
2d950 30 31 66 22 3a 22 73 65 63 70 31 39 32 6b 31 22  01f":"secp192k1"
2d960 2c 22 32 62 38 31 30 34 30 30 32 31 22 3a 22 73  ,"2b81040021":"s
2d970 65 63 70 32 32 34 72 31 22 2c 22 32 62 38 31 30  ecp224r1","2b810
2d980 34 30 30 30 61 22 3a 22 73 65 63 70 32 35 36 6b  4000a":"secp256k
2d990 31 22 2c 22 32 62 38 31 30 34 30 30 32 33 22 3a  1","2b81040023":
2d9a0 22 73 65 63 70 35 32 31 72 31 22 2c 22 32 62 38  "secp521r1","2b8
2d9b0 31 30 34 30 30 32 32 22 3a 22 73 65 63 70 33 38  1040022":"secp38
2d9c0 34 72 31 22 2c 22 32 61 38 36 34 38 63 65 33 38  4r1","2a8648ce38
2d9d0 30 34 30 33 22 3a 22 53 48 41 31 77 69 74 68 44  0403":"SHA1withD
2d9e0 53 41 22 2c 22 36 30 38 36 34 38 30 31 36 35 30  SA","60864801650
2d9f0 33 30 34 30 33 30 31 22 3a 22 53 48 41 32 32 34  3040301":"SHA224
2da00 77 69 74 68 44 53 41 22 2c 22 36 30 38 36 34 38  withDSA","608648
2da10 30 31 36 35 30 33 30 34 30 33 30 32 22 3a 22 53  016503040302":"S
2da20 48 41 32 35 36 77 69 74 68 44 53 41 22 2c 7d 7d  HA256withDSA",}}
2da30 3b 0a 2f 2a 21 20 65 63 64 73 61 2d 6d 6f 64 69  ;./*! ecdsa-modi
2da40 66 69 65 64 2d 31 2e 30 2e 34 2e 6a 73 20 28 63  fied-1.0.4.js (c
2da50 29 20 53 74 65 70 68 61 6e 20 54 68 6f 6d 61 73  ) Stephan Thomas
2da60 2c 20 4b 65 6e 6a 69 20 55 72 75 73 68 69 6d 61  , Kenji Urushima
2da70 20 7c 20 67 69 74 68 75 62 2e 63 6f 6d 2f 62 69   | github.com/bi
2da80 74 63 6f 69 6e 6a 73 2f 62 69 74 63 6f 69 6e 6a  tcoinjs/bitcoinj
2da90 73 2d 6c 69 62 2f 62 6c 6f 62 2f 6d 61 73 74 65  s-lib/blob/maste
2daa0 72 2f 4c 49 43 45 4e 53 45 0a 20 2a 2f 0a 69 66  r/LICENSE. */.if
2dab0 28 74 79 70 65 6f 66 20 4b 4a 55 52 3d 3d 22 75  (typeof KJUR=="u
2dac0 6e 64 65 66 69 6e 65 64 22 7c 7c 21 4b 4a 55 52  ndefined"||!KJUR
2dad0 29 7b 4b 4a 55 52 3d 7b 7d 7d 69 66 28 74 79 70  ){KJUR={}}if(typ
2dae0 65 6f 66 20 4b 4a 55 52 2e 63 72 79 70 74 6f 3d  eof KJUR.crypto=
2daf0 3d 22 75 6e 64 65 66 69 6e 65 64 22 7c 7c 21 4b  ="undefined"||!K
2db00 4a 55 52 2e 63 72 79 70 74 6f 29 7b 4b 4a 55 52  JUR.crypto){KJUR
2db10 2e 63 72 79 70 74 6f 3d 7b 7d 7d 4b 4a 55 52 2e  .crypto={}}KJUR.
2db20 63 72 79 70 74 6f 2e 45 43 44 53 41 3d 66 75 6e  crypto.ECDSA=fun
2db30 63 74 69 6f 6e 28 68 29 7b 76 61 72 20 65 3d 22  ction(h){var e="
2db40 73 65 63 70 32 35 36 72 31 22 3b 76 61 72 20 67  secp256r1";var g
2db50 3d 6e 75 6c 6c 3b 76 61 72 20 62 3d 6e 75 6c 6c  =null;var b=null
2db60 3b 76 61 72 20 66 3d 6e 75 6c 6c 3b 76 61 72 20  ;var f=null;var 
2db70 61 3d 6e 65 77 20 53 65 63 75 72 65 52 61 6e 64  a=new SecureRand
2db80 6f 6d 28 29 3b 76 61 72 20 64 3d 6e 75 6c 6c 3b  om();var d=null;
2db90 74 68 69 73 2e 74 79 70 65 3d 22 45 43 22 3b 66  this.type="EC";f
2dba0 75 6e 63 74 69 6f 6e 20 63 28 73 2c 6f 2c 72 2c  unction c(s,o,r,
2dbb0 6e 29 7b 76 61 72 20 6a 3d 4d 61 74 68 2e 6d 61  n){var j=Math.ma
2dbc0 78 28 6f 2e 62 69 74 4c 65 6e 67 74 68 28 29 2c  x(o.bitLength(),
2dbd0 6e 2e 62 69 74 4c 65 6e 67 74 68 28 29 29 3b 76  n.bitLength());v
2dbe0 61 72 20 74 3d 73 2e 61 64 64 32 44 28 72 29 3b  ar t=s.add2D(r);
2dbf0 76 61 72 20 71 3d 73 2e 63 75 72 76 65 2e 67 65  var q=s.curve.ge
2dc00 74 49 6e 66 69 6e 69 74 79 28 29 3b 66 6f 72 28  tInfinity();for(
2dc10 76 61 72 20 70 3d 6a 2d 31 3b 70 3e 3d 30 3b 2d  var p=j-1;p>=0;-
2dc20 2d 70 29 7b 71 3d 71 2e 74 77 69 63 65 32 44 28  -p){q=q.twice2D(
2dc30 29 3b 71 2e 7a 3d 42 69 67 49 6e 74 65 67 65 72  );q.z=BigInteger
2dc40 2e 4f 4e 45 3b 69 66 28 6f 2e 74 65 73 74 42 69  .ONE;if(o.testBi
2dc50 74 28 70 29 29 7b 69 66 28 6e 2e 74 65 73 74 42  t(p)){if(n.testB
2dc60 69 74 28 70 29 29 7b 71 3d 71 2e 61 64 64 32 44  it(p)){q=q.add2D
2dc70 28 74 29 7d 65 6c 73 65 7b 71 3d 71 2e 61 64 64  (t)}else{q=q.add
2dc80 32 44 28 73 29 7d 7d 65 6c 73 65 7b 69 66 28 6e  2D(s)}}else{if(n
2dc90 2e 74 65 73 74 42 69 74 28 70 29 29 7b 71 3d 71  .testBit(p)){q=q
2dca0 2e 61 64 64 32 44 28 72 29 7d 7d 7d 72 65 74 75  .add2D(r)}}}retu
2dcb0 72 6e 20 71 7d 74 68 69 73 2e 67 65 74 42 69 67  rn q}this.getBig
2dcc0 52 61 6e 64 6f 6d 3d 66 75 6e 63 74 69 6f 6e 28  Random=function(
2dcd0 69 29 7b 72 65 74 75 72 6e 20 6e 65 77 20 42 69  i){return new Bi
2dce0 67 49 6e 74 65 67 65 72 28 69 2e 62 69 74 4c 65  gInteger(i.bitLe
2dcf0 6e 67 74 68 28 29 2c 61 29 2e 6d 6f 64 28 69 2e  ngth(),a).mod(i.
2dd00 73 75 62 74 72 61 63 74 28 42 69 67 49 6e 74 65  subtract(BigInte
2dd10 67 65 72 2e 4f 4e 45 29 29 2e 61 64 64 28 42 69  ger.ONE)).add(Bi
2dd20 67 49 6e 74 65 67 65 72 2e 4f 4e 45 29 7d 3b 74  gInteger.ONE)};t
2dd30 68 69 73 2e 73 65 74 4e 61 6d 65 64 43 75 72 76  his.setNamedCurv
2dd40 65 3d 66 75 6e 63 74 69 6f 6e 28 69 29 7b 74 68  e=function(i){th
2dd50 69 73 2e 65 63 70 61 72 61 6d 73 3d 4b 4a 55 52  is.ecparams=KJUR
2dd60 2e 63 72 79 70 74 6f 2e 45 43 50 61 72 61 6d 65  .crypto.ECParame
2dd70 74 65 72 44 42 2e 67 65 74 42 79 4e 61 6d 65 28  terDB.getByName(
2dd80 69 29 3b 74 68 69 73 2e 70 72 76 4b 65 79 48 65  i);this.prvKeyHe
2dd90 78 3d 6e 75 6c 6c 3b 74 68 69 73 2e 70 75 62 4b  x=null;this.pubK
2dda0 65 79 48 65 78 3d 6e 75 6c 6c 3b 74 68 69 73 2e  eyHex=null;this.
2ddb0 63 75 72 76 65 4e 61 6d 65 3d 69 7d 3b 74 68 69  curveName=i};thi
2ddc0 73 2e 73 65 74 50 72 69 76 61 74 65 4b 65 79 48  s.setPrivateKeyH
2ddd0 65 78 3d 66 75 6e 63 74 69 6f 6e 28 69 29 7b 74  ex=function(i){t
2dde0 68 69 73 2e 69 73 50 72 69 76 61 74 65 3d 74 72  his.isPrivate=tr
2ddf0 75 65 3b 74 68 69 73 2e 70 72 76 4b 65 79 48 65  ue;this.prvKeyHe
2de00 78 3d 69 7d 3b 74 68 69 73 2e 73 65 74 50 75 62  x=i};this.setPub
2de10 6c 69 63 4b 65 79 48 65 78 3d 66 75 6e 63 74 69  licKeyHex=functi
2de20 6f 6e 28 69 29 7b 74 68 69 73 2e 69 73 50 75 62  on(i){this.isPub
2de30 6c 69 63 3d 74 72 75 65 3b 74 68 69 73 2e 70 75  lic=true;this.pu
2de40 62 4b 65 79 48 65 78 3d 69 7d 3b 74 68 69 73 2e  bKeyHex=i};this.
2de50 67 65 6e 65 72 61 74 65 4b 65 79 50 61 69 72 48  generateKeyPairH
2de60 65 78 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 76 61  ex=function(){va
2de70 72 20 6b 3d 74 68 69 73 2e 65 63 70 61 72 61 6d  r k=this.ecparam
2de80 73 2e 6e 3b 76 61 72 20 6e 3d 74 68 69 73 2e 67  s.n;var n=this.g
2de90 65 74 42 69 67 52 61 6e 64 6f 6d 28 6b 29 3b 76  etBigRandom(k);v
2dea0 61 72 20 6c 3d 74 68 69 73 2e 65 63 70 61 72 61  ar l=this.ecpara
2deb0 6d 73 2e 47 2e 6d 75 6c 74 69 70 6c 79 28 6e 29  ms.G.multiply(n)
2dec0 3b 76 61 72 20 71 3d 6c 2e 67 65 74 58 28 29 2e  ;var q=l.getX().
2ded0 74 6f 42 69 67 49 6e 74 65 67 65 72 28 29 3b 76  toBigInteger();v
2dee0 61 72 20 6f 3d 6c 2e 67 65 74 59 28 29 2e 74 6f  ar o=l.getY().to
2def0 42 69 67 49 6e 74 65 67 65 72 28 29 3b 76 61 72  BigInteger();var
2df00 20 69 3d 74 68 69 73 2e 65 63 70 61 72 61 6d 73   i=this.ecparams
2df10 2e 6b 65 79 6c 65 6e 2f 34 3b 76 61 72 20 6d 3d  .keylen/4;var m=
2df20 28 22 30 30 30 30 30 30 30 30 30 30 22 2b 6e 2e  ("0000000000"+n.
2df30 74 6f 53 74 72 69 6e 67 28 31 36 29 29 2e 73 6c  toString(16)).sl
2df40 69 63 65 28 2d 69 29 3b 76 61 72 20 72 3d 28 22  ice(-i);var r=("
2df50 30 30 30 30 30 30 30 30 30 30 22 2b 71 2e 74 6f  0000000000"+q.to
2df60 53 74 72 69 6e 67 28 31 36 29 29 2e 73 6c 69 63  String(16)).slic
2df70 65 28 2d 69 29 3b 76 61 72 20 70 3d 28 22 30 30  e(-i);var p=("00
2df80 30 30 30 30 30 30 30 30 22 2b 6f 2e 74 6f 53 74  00000000"+o.toSt
2df90 72 69 6e 67 28 31 36 29 29 2e 73 6c 69 63 65 28  ring(16)).slice(
2dfa0 2d 69 29 3b 76 61 72 20 6a 3d 22 30 34 22 2b 72  -i);var j="04"+r
2dfb0 2b 70 3b 74 68 69 73 2e 73 65 74 50 72 69 76 61  +p;this.setPriva
2dfc0 74 65 4b 65 79 48 65 78 28 6d 29 3b 74 68 69 73  teKeyHex(m);this
2dfd0 2e 73 65 74 50 75 62 6c 69 63 4b 65 79 48 65 78  .setPublicKeyHex
2dfe0 28 6a 29 3b 72 65 74 75 72 6e 7b 65 63 70 72 76  (j);return{ecprv
2dff0 68 65 78 3a 6d 2c 65 63 70 75 62 68 65 78 3a 6a  hex:m,ecpubhex:j
2e000 7d 7d 3b 74 68 69 73 2e 73 69 67 6e 57 69 74 68  }};this.signWith
2e010 4d 65 73 73 61 67 65 48 61 73 68 3d 66 75 6e 63  MessageHash=func
2e020 74 69 6f 6e 28 69 29 7b 72 65 74 75 72 6e 20 74  tion(i){return t
2e030 68 69 73 2e 73 69 67 6e 48 65 78 28 69 2c 74 68  his.signHex(i,th
2e040 69 73 2e 70 72 76 4b 65 79 48 65 78 29 7d 3b 74  is.prvKeyHex)};t
2e050 68 69 73 2e 73 69 67 6e 48 65 78 3d 66 75 6e 63  his.signHex=func
2e060 74 69 6f 6e 28 6f 2c 6a 29 7b 76 61 72 20 74 3d  tion(o,j){var t=
2e070 6e 65 77 20 42 69 67 49 6e 74 65 67 65 72 28 6a  new BigInteger(j
2e080 2c 31 36 29 3b 76 61 72 20 6c 3d 74 68 69 73 2e  ,16);var l=this.
2e090 65 63 70 61 72 61 6d 73 2e 6e 3b 76 61 72 20 71  ecparams.n;var q
2e0a0 3d 6e 65 77 20 42 69 67 49 6e 74 65 67 65 72 28  =new BigInteger(
2e0b0 6f 2c 31 36 29 3b 64 6f 7b 76 61 72 20 6d 3d 74  o,16);do{var m=t
2e0c0 68 69 73 2e 67 65 74 42 69 67 52 61 6e 64 6f 6d  his.getBigRandom
2e0d0 28 6c 29 3b 76 61 72 20 75 3d 74 68 69 73 2e 65  (l);var u=this.e
2e0e0 63 70 61 72 61 6d 73 2e 47 3b 76 61 72 20 70 3d  cparams.G;var p=
2e0f0 75 2e 6d 75 6c 74 69 70 6c 79 28 6d 29 3b 76 61  u.multiply(m);va
2e100 72 20 69 3d 70 2e 67 65 74 58 28 29 2e 74 6f 42  r i=p.getX().toB
2e110 69 67 49 6e 74 65 67 65 72 28 29 2e 6d 6f 64 28  igInteger().mod(
2e120 6c 29 7d 77 68 69 6c 65 28 69 2e 63 6f 6d 70 61  l)}while(i.compa
2e130 72 65 54 6f 28 42 69 67 49 6e 74 65 67 65 72 2e  reTo(BigInteger.
2e140 5a 45 52 4f 29 3c 3d 30 29 3b 76 61 72 20 76 3d  ZERO)<=0);var v=
2e150 6d 2e 6d 6f 64 49 6e 76 65 72 73 65 28 6c 29 2e  m.modInverse(l).
2e160 6d 75 6c 74 69 70 6c 79 28 71 2e 61 64 64 28 74  multiply(q.add(t
2e170 2e 6d 75 6c 74 69 70 6c 79 28 69 29 29 29 2e 6d  .multiply(i))).m
2e180 6f 64 28 6c 29 3b 72 65 74 75 72 6e 20 4b 4a 55  od(l);return KJU
2e190 52 2e 63 72 79 70 74 6f 2e 45 43 44 53 41 2e 62  R.crypto.ECDSA.b
2e1a0 69 52 53 53 69 67 54 6f 41 53 4e 31 53 69 67 28  iRSSigToASN1Sig(
2e1b0 69 2c 76 29 7d 3b 74 68 69 73 2e 73 69 67 6e 3d  i,v)};this.sign=
2e1c0 66 75 6e 63 74 69 6f 6e 28 6d 2c 75 29 7b 76 61  function(m,u){va
2e1d0 72 20 71 3d 75 3b 76 61 72 20 6a 3d 74 68 69 73  r q=u;var j=this
2e1e0 2e 65 63 70 61 72 61 6d 73 2e 6e 3b 76 61 72 20  .ecparams.n;var 
2e1f0 70 3d 42 69 67 49 6e 74 65 67 65 72 2e 66 72 6f  p=BigInteger.fro
2e200 6d 42 79 74 65 41 72 72 61 79 55 6e 73 69 67 6e  mByteArrayUnsign
2e210 65 64 28 6d 29 3b 64 6f 7b 76 61 72 20 6c 3d 74  ed(m);do{var l=t
2e220 68 69 73 2e 67 65 74 42 69 67 52 61 6e 64 6f 6d  his.getBigRandom
2e230 28 6a 29 3b 76 61 72 20 74 3d 74 68 69 73 2e 65  (j);var t=this.e
2e240 63 70 61 72 61 6d 73 2e 47 3b 76 61 72 20 6f 3d  cparams.G;var o=
2e250 74 2e 6d 75 6c 74 69 70 6c 79 28 6c 29 3b 76 61  t.multiply(l);va
2e260 72 20 69 3d 6f 2e 67 65 74 58 28 29 2e 74 6f 42  r i=o.getX().toB
2e270 69 67 49 6e 74 65 67 65 72 28 29 2e 6d 6f 64 28  igInteger().mod(
2e280 6a 29 7d 77 68 69 6c 65 28 69 2e 63 6f 6d 70 61  j)}while(i.compa
2e290 72 65 54 6f 28 42 69 67 49 6e 74 65 67 65 72 2e  reTo(BigInteger.
2e2a0 5a 45 52 4f 29 3c 3d 30 29 3b 76 61 72 20 76 3d  ZERO)<=0);var v=
2e2b0 6c 2e 6d 6f 64 49 6e 76 65 72 73 65 28 6a 29 2e  l.modInverse(j).
2e2c0 6d 75 6c 74 69 70 6c 79 28 70 2e 61 64 64 28 71  multiply(p.add(q
2e2d0 2e 6d 75 6c 74 69 70 6c 79 28 69 29 29 29 2e 6d  .multiply(i))).m
2e2e0 6f 64 28 6a 29 3b 72 65 74 75 72 6e 20 74 68 69  od(j);return thi
2e2f0 73 2e 73 65 72 69 61 6c 69 7a 65 53 69 67 28 69  s.serializeSig(i
2e300 2c 76 29 7d 3b 74 68 69 73 2e 76 65 72 69 66 79  ,v)};this.verify
2e310 57 69 74 68 4d 65 73 73 61 67 65 48 61 73 68 3d  WithMessageHash=
2e320 66 75 6e 63 74 69 6f 6e 28 6a 2c 69 29 7b 72 65  function(j,i){re
2e330 74 75 72 6e 20 74 68 69 73 2e 76 65 72 69 66 79  turn this.verify
2e340 48 65 78 28 6a 2c 69 2c 74 68 69 73 2e 70 75 62  Hex(j,i,this.pub
2e350 4b 65 79 48 65 78 29 7d 3b 74 68 69 73 2e 76 65  KeyHex)};this.ve
2e360 72 69 66 79 48 65 78 3d 66 75 6e 63 74 69 6f 6e  rifyHex=function
2e370 28 6d 2c 69 2c 70 29 7b 76 61 72 20 6c 2c 6a 3b  (m,i,p){var l,j;
2e380 76 61 72 20 6f 3d 4b 4a 55 52 2e 63 72 79 70 74  var o=KJUR.crypt
2e390 6f 2e 45 43 44 53 41 2e 70 61 72 73 65 53 69 67  o.ECDSA.parseSig
2e3a0 48 65 78 28 69 29 3b 6c 3d 6f 2e 72 3b 6a 3d 6f  Hex(i);l=o.r;j=o
2e3b0 2e 73 3b 76 61 72 20 6b 3b 6b 3d 45 43 50 6f 69  .s;var k;k=ECPoi
2e3c0 6e 74 46 70 2e 64 65 63 6f 64 65 46 72 6f 6d 48  ntFp.decodeFromH
2e3d0 65 78 28 74 68 69 73 2e 65 63 70 61 72 61 6d 73  ex(this.ecparams
2e3e0 2e 63 75 72 76 65 2c 70 29 3b 76 61 72 20 6e 3d  .curve,p);var n=
2e3f0 6e 65 77 20 42 69 67 49 6e 74 65 67 65 72 28 6d  new BigInteger(m
2e400 2c 31 36 29 3b 72 65 74 75 72 6e 20 74 68 69 73  ,16);return this
2e410 2e 76 65 72 69 66 79 52 61 77 28 6e 2c 6c 2c 6a  .verifyRaw(n,l,j
2e420 2c 6b 29 7d 3b 74 68 69 73 2e 76 65 72 69 66 79  ,k)};this.verify
2e430 3d 66 75 6e 63 74 69 6f 6e 28 6f 2c 70 2c 6a 29  =function(o,p,j)
2e440 7b 76 61 72 20 6c 2c 69 3b 69 66 28 42 69 74 63  {var l,i;if(Bitc
2e450 6f 69 6e 2e 55 74 69 6c 2e 69 73 41 72 72 61 79  oin.Util.isArray
2e460 28 70 29 29 7b 76 61 72 20 6e 3d 74 68 69 73 2e  (p)){var n=this.
2e470 70 61 72 73 65 53 69 67 28 70 29 3b 6c 3d 6e 2e  parseSig(p);l=n.
2e480 72 3b 69 3d 6e 2e 73 7d 65 6c 73 65 7b 69 66 28  r;i=n.s}else{if(
2e490 22 6f 62 6a 65 63 74 22 3d 3d 3d 74 79 70 65 6f  "object"===typeo
2e4a0 66 20 70 26 26 70 2e 72 26 26 70 2e 73 29 7b 6c  f p&&p.r&&p.s){l
2e4b0 3d 70 2e 72 3b 69 3d 70 2e 73 7d 65 6c 73 65 7b  =p.r;i=p.s}else{
2e4c0 74 68 72 6f 77 22 49 6e 76 61 6c 69 64 20 76 61  throw"Invalid va
2e4d0 6c 75 65 20 66 6f 72 20 73 69 67 6e 61 74 75 72  lue for signatur
2e4e0 65 22 7d 7d 76 61 72 20 6b 3b 69 66 28 6a 20 69  e"}}var k;if(j i
2e4f0 6e 73 74 61 6e 63 65 6f 66 20 45 43 50 6f 69 6e  nstanceof ECPoin
2e500 74 46 70 29 7b 6b 3d 6a 7d 65 6c 73 65 7b 69 66  tFp){k=j}else{if
2e510 28 42 69 74 63 6f 69 6e 2e 55 74 69 6c 2e 69 73  (Bitcoin.Util.is
2e520 41 72 72 61 79 28 6a 29 29 7b 6b 3d 45 43 50 6f  Array(j)){k=ECPo
2e530 69 6e 74 46 70 2e 64 65 63 6f 64 65 46 72 6f 6d  intFp.decodeFrom
2e540 28 74 68 69 73 2e 65 63 70 61 72 61 6d 73 2e 63  (this.ecparams.c
2e550 75 72 76 65 2c 6a 29 7d 65 6c 73 65 7b 74 68 72  urve,j)}else{thr
2e560 6f 77 22 49 6e 76 61 6c 69 64 20 66 6f 72 6d 61  ow"Invalid forma
2e570 74 20 66 6f 72 20 70 75 62 6b 65 79 20 76 61 6c  t for pubkey val
2e580 75 65 2c 20 6d 75 73 74 20 62 65 20 62 79 74 65  ue, must be byte
2e590 20 61 72 72 61 79 20 6f 72 20 45 43 50 6f 69 6e   array or ECPoin
2e5a0 74 46 70 22 7d 7d 76 61 72 20 6d 3d 42 69 67 49  tFp"}}var m=BigI
2e5b0 6e 74 65 67 65 72 2e 66 72 6f 6d 42 79 74 65 41  nteger.fromByteA
2e5c0 72 72 61 79 55 6e 73 69 67 6e 65 64 28 6f 29 3b  rrayUnsigned(o);
2e5d0 72 65 74 75 72 6e 20 74 68 69 73 2e 76 65 72 69  return this.veri
2e5e0 66 79 52 61 77 28 6d 2c 6c 2c 69 2c 6b 29 7d 3b  fyRaw(m,l,i,k)};
2e5f0 74 68 69 73 2e 76 65 72 69 66 79 52 61 77 3d 66  this.verifyRaw=f
2e600 75 6e 63 74 69 6f 6e 28 6f 2c 69 2c 77 2c 6d 29  unction(o,i,w,m)
2e610 7b 76 61 72 20 6c 3d 74 68 69 73 2e 65 63 70 61  {var l=this.ecpa
2e620 72 61 6d 73 2e 6e 3b 76 61 72 20 75 3d 74 68 69  rams.n;var u=thi
2e630 73 2e 65 63 70 61 72 61 6d 73 2e 47 3b 69 66 28  s.ecparams.G;if(
2e640 69 2e 63 6f 6d 70 61 72 65 54 6f 28 42 69 67 49  i.compareTo(BigI
2e650 6e 74 65 67 65 72 2e 4f 4e 45 29 3c 30 7c 7c 69  nteger.ONE)<0||i
2e660 2e 63 6f 6d 70 61 72 65 54 6f 28 6c 29 3e 3d 30  .compareTo(l)>=0
2e670 29 7b 72 65 74 75 72 6e 20 66 61 6c 73 65 7d 69  ){return false}i
2e680 66 28 77 2e 63 6f 6d 70 61 72 65 54 6f 28 42 69  f(w.compareTo(Bi
2e690 67 49 6e 74 65 67 65 72 2e 4f 4e 45 29 3c 30 7c  gInteger.ONE)<0|
2e6a0 7c 77 2e 63 6f 6d 70 61 72 65 54 6f 28 6c 29 3e  |w.compareTo(l)>
2e6b0 3d 30 29 7b 72 65 74 75 72 6e 20 66 61 6c 73 65  =0){return false
2e6c0 7d 76 61 72 20 70 3d 77 2e 6d 6f 64 49 6e 76 65  }var p=w.modInve
2e6d0 72 73 65 28 6c 29 3b 76 61 72 20 6b 3d 6f 2e 6d  rse(l);var k=o.m
2e6e0 75 6c 74 69 70 6c 79 28 70 29 2e 6d 6f 64 28 6c  ultiply(p).mod(l
2e6f0 29 3b 76 61 72 20 6a 3d 69 2e 6d 75 6c 74 69 70  );var j=i.multip
2e700 6c 79 28 70 29 2e 6d 6f 64 28 6c 29 3b 76 61 72  ly(p).mod(l);var
2e710 20 71 3d 75 2e 6d 75 6c 74 69 70 6c 79 28 6b 29   q=u.multiply(k)
2e720 2e 61 64 64 28 6d 2e 6d 75 6c 74 69 70 6c 79 28  .add(m.multiply(
2e730 6a 29 29 3b 76 61 72 20 74 3d 71 2e 67 65 74 58  j));var t=q.getX
2e740 28 29 2e 74 6f 42 69 67 49 6e 74 65 67 65 72 28  ().toBigInteger(
2e750 29 2e 6d 6f 64 28 6c 29 3b 72 65 74 75 72 6e 20  ).mod(l);return 
2e760 74 2e 65 71 75 61 6c 73 28 69 29 7d 3b 74 68 69  t.equals(i)};thi
2e770 73 2e 73 65 72 69 61 6c 69 7a 65 53 69 67 3d 66  s.serializeSig=f
2e780 75 6e 63 74 69 6f 6e 28 6b 2c 6a 29 7b 76 61 72  unction(k,j){var
2e790 20 6c 3d 6b 2e 74 6f 42 79 74 65 41 72 72 61 79   l=k.toByteArray
2e7a0 53 69 67 6e 65 64 28 29 3b 76 61 72 20 69 3d 6a  Signed();var i=j
2e7b0 2e 74 6f 42 79 74 65 41 72 72 61 79 53 69 67 6e  .toByteArraySign
2e7c0 65 64 28 29 3b 76 61 72 20 6d 3d 5b 5d 3b 6d 2e  ed();var m=[];m.
2e7d0 70 75 73 68 28 32 29 3b 6d 2e 70 75 73 68 28 6c  push(2);m.push(l
2e7e0 2e 6c 65 6e 67 74 68 29 3b 6d 3d 6d 2e 63 6f 6e  .length);m=m.con
2e7f0 63 61 74 28 6c 29 3b 6d 2e 70 75 73 68 28 32 29  cat(l);m.push(2)
2e800 3b 6d 2e 70 75 73 68 28 69 2e 6c 65 6e 67 74 68  ;m.push(i.length
2e810 29 3b 6d 3d 6d 2e 63 6f 6e 63 61 74 28 69 29 3b  );m=m.concat(i);
2e820 6d 2e 75 6e 73 68 69 66 74 28 6d 2e 6c 65 6e 67  m.unshift(m.leng
2e830 74 68 29 3b 6d 2e 75 6e 73 68 69 66 74 28 34 38  th);m.unshift(48
2e840 29 3b 72 65 74 75 72 6e 20 6d 7d 3b 74 68 69 73  );return m};this
2e850 2e 70 61 72 73 65 53 69 67 3d 66 75 6e 63 74 69  .parseSig=functi
2e860 6f 6e 28 6e 29 7b 76 61 72 20 6d 3b 69 66 28 6e  on(n){var m;if(n
2e870 5b 30 5d 21 3d 34 38 29 7b 74 68 72 6f 77 20 6e  [0]!=48){throw n
2e880 65 77 20 45 72 72 6f 72 28 22 53 69 67 6e 61 74  ew Error("Signat
2e890 75 72 65 20 6e 6f 74 20 61 20 76 61 6c 69 64 20  ure not a valid 
2e8a0 44 45 52 53 65 71 75 65 6e 63 65 22 29 7d 6d 3d  DERSequence")}m=
2e8b0 32 3b 69 66 28 6e 5b 6d 5d 21 3d 32 29 7b 74 68  2;if(n[m]!=2){th
2e8c0 72 6f 77 20 6e 65 77 20 45 72 72 6f 72 28 22 46  row new Error("F
2e8d0 69 72 73 74 20 65 6c 65 6d 65 6e 74 20 69 6e 20  irst element in 
2e8e0 73 69 67 6e 61 74 75 72 65 20 6d 75 73 74 20 62  signature must b
2e8f0 65 20 61 20 44 45 52 49 6e 74 65 67 65 72 22 29  e a DERInteger")
2e900 7d 76 61 72 20 6c 3d 6e 2e 73 6c 69 63 65 28 6d  }var l=n.slice(m
2e910 2b 32 2c 6d 2b 32 2b 6e 5b 6d 2b 31 5d 29 3b 6d  +2,m+2+n[m+1]);m
2e920 2b 3d 32 2b 6e 5b 6d 2b 31 5d 3b 69 66 28 6e 5b  +=2+n[m+1];if(n[
2e930 6d 5d 21 3d 32 29 7b 74 68 72 6f 77 20 6e 65 77  m]!=2){throw new
2e940 20 45 72 72 6f 72 28 22 53 65 63 6f 6e 64 20 65   Error("Second e
2e950 6c 65 6d 65 6e 74 20 69 6e 20 73 69 67 6e 61 74  lement in signat
2e960 75 72 65 20 6d 75 73 74 20 62 65 20 61 20 44 45  ure must be a DE
2e970 52 49 6e 74 65 67 65 72 22 29 7d 76 61 72 20 69  RInteger")}var i
2e980 3d 6e 2e 73 6c 69 63 65 28 6d 2b 32 2c 6d 2b 32  =n.slice(m+2,m+2
2e990 2b 6e 5b 6d 2b 31 5d 29 3b 6d 2b 3d 32 2b 6e 5b  +n[m+1]);m+=2+n[
2e9a0 6d 2b 31 5d 3b 76 61 72 20 6b 3d 42 69 67 49 6e  m+1];var k=BigIn
2e9b0 74 65 67 65 72 2e 66 72 6f 6d 42 79 74 65 41 72  teger.fromByteAr
2e9c0 72 61 79 55 6e 73 69 67 6e 65 64 28 6c 29 3b 76  rayUnsigned(l);v
2e9d0 61 72 20 6a 3d 42 69 67 49 6e 74 65 67 65 72 2e  ar j=BigInteger.
2e9e0 66 72 6f 6d 42 79 74 65 41 72 72 61 79 55 6e 73  fromByteArrayUns
2e9f0 69 67 6e 65 64 28 69 29 3b 72 65 74 75 72 6e 7b  igned(i);return{
2ea00 72 3a 6b 2c 73 3a 6a 7d 7d 3b 74 68 69 73 2e 70  r:k,s:j}};this.p
2ea10 61 72 73 65 53 69 67 43 6f 6d 70 61 63 74 3d 66  arseSigCompact=f
2ea20 75 6e 63 74 69 6f 6e 28 6d 29 7b 69 66 28 6d 2e  unction(m){if(m.
2ea30 6c 65 6e 67 74 68 21 3d 3d 36 35 29 7b 74 68 72  length!==65){thr
2ea40 6f 77 22 53 69 67 6e 61 74 75 72 65 20 68 61 73  ow"Signature has
2ea50 20 74 68 65 20 77 72 6f 6e 67 20 6c 65 6e 67 74   the wrong lengt
2ea60 68 22 7d 76 61 72 20 6a 3d 6d 5b 30 5d 2d 32 37  h"}var j=m[0]-27
2ea70 3b 69 66 28 6a 3c 30 7c 7c 6a 3e 37 29 7b 74 68  ;if(j<0||j>7){th
2ea80 72 6f 77 22 49 6e 76 61 6c 69 64 20 73 69 67 6e  row"Invalid sign
2ea90 61 74 75 72 65 20 74 79 70 65 22 7d 76 61 72 20  ature type"}var 
2eaa0 6f 3d 74 68 69 73 2e 65 63 70 61 72 61 6d 73 2e  o=this.ecparams.
2eab0 6e 3b 76 61 72 20 6c 3d 42 69 67 49 6e 74 65 67  n;var l=BigInteg
2eac0 65 72 2e 66 72 6f 6d 42 79 74 65 41 72 72 61 79  er.fromByteArray
2ead0 55 6e 73 69 67 6e 65 64 28 6d 2e 73 6c 69 63 65  Unsigned(m.slice
2eae0 28 31 2c 33 33 29 29 2e 6d 6f 64 28 6f 29 3b 76  (1,33)).mod(o);v
2eaf0 61 72 20 6b 3d 42 69 67 49 6e 74 65 67 65 72 2e  ar k=BigInteger.
2eb00 66 72 6f 6d 42 79 74 65 41 72 72 61 79 55 6e 73  fromByteArrayUns
2eb10 69 67 6e 65 64 28 6d 2e 73 6c 69 63 65 28 33 33  igned(m.slice(33
2eb20 2c 36 35 29 29 2e 6d 6f 64 28 6f 29 3b 72 65 74  ,65)).mod(o);ret
2eb30 75 72 6e 7b 72 3a 6c 2c 73 3a 6b 2c 69 3a 6a 7d  urn{r:l,s:k,i:j}
2eb40 7d 3b 69 66 28 68 21 3d 3d 75 6e 64 65 66 69 6e  };if(h!==undefin
2eb50 65 64 29 7b 69 66 28 68 2e 63 75 72 76 65 21 3d  ed){if(h.curve!=
2eb60 3d 75 6e 64 65 66 69 6e 65 64 29 7b 74 68 69 73  =undefined){this
2eb70 2e 63 75 72 76 65 4e 61 6d 65 3d 68 2e 63 75 72  .curveName=h.cur
2eb80 76 65 7d 7d 69 66 28 74 68 69 73 2e 63 75 72 76  ve}}if(this.curv
2eb90 65 4e 61 6d 65 3d 3d 3d 75 6e 64 65 66 69 6e 65  eName===undefine
2eba0 64 29 7b 74 68 69 73 2e 63 75 72 76 65 4e 61 6d  d){this.curveNam
2ebb0 65 3d 65 7d 74 68 69 73 2e 73 65 74 4e 61 6d 65  e=e}this.setName
2ebc0 64 43 75 72 76 65 28 74 68 69 73 2e 63 75 72 76  dCurve(this.curv
2ebd0 65 4e 61 6d 65 29 3b 69 66 28 68 21 3d 3d 75 6e  eName);if(h!==un
2ebe0 64 65 66 69 6e 65 64 29 7b 69 66 28 68 2e 70 72  defined){if(h.pr
2ebf0 76 21 3d 3d 75 6e 64 65 66 69 6e 65 64 29 7b 74  v!==undefined){t
2ec00 68 69 73 2e 73 65 74 50 72 69 76 61 74 65 4b 65  his.setPrivateKe
2ec10 79 48 65 78 28 68 2e 70 72 76 29 7d 69 66 28 68  yHex(h.prv)}if(h
2ec20 2e 70 75 62 21 3d 3d 75 6e 64 65 66 69 6e 65 64  .pub!==undefined
2ec30 29 7b 74 68 69 73 2e 73 65 74 50 75 62 6c 69 63  ){this.setPublic
2ec40 4b 65 79 48 65 78 28 68 2e 70 75 62 29 7d 7d 7d  KeyHex(h.pub)}}}
2ec50 3b 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 45 43 44  ;KJUR.crypto.ECD
2ec60 53 41 2e 70 61 72 73 65 53 69 67 48 65 78 3d 66  SA.parseSigHex=f
2ec70 75 6e 63 74 69 6f 6e 28 61 29 7b 76 61 72 20 62  unction(a){var b
2ec80 3d 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 45 43 44  =KJUR.crypto.ECD
2ec90 53 41 2e 70 61 72 73 65 53 69 67 48 65 78 49 6e  SA.parseSigHexIn
2eca0 48 65 78 52 53 28 61 29 3b 76 61 72 20 64 3d 6e  HexRS(a);var d=n
2ecb0 65 77 20 42 69 67 49 6e 74 65 67 65 72 28 62 2e  ew BigInteger(b.
2ecc0 72 2c 31 36 29 3b 76 61 72 20 63 3d 6e 65 77 20  r,16);var c=new 
2ecd0 42 69 67 49 6e 74 65 67 65 72 28 62 2e 73 2c 31  BigInteger(b.s,1
2ece0 36 29 3b 72 65 74 75 72 6e 7b 72 3a 64 2c 73 3a  6);return{r:d,s:
2ecf0 63 7d 7d 3b 4b 4a 55 52 2e 63 72 79 70 74 6f 2e  c}};KJUR.crypto.
2ed00 45 43 44 53 41 2e 70 61 72 73 65 53 69 67 48 65  ECDSA.parseSigHe
2ed10 78 49 6e 48 65 78 52 53 3d 66 75 6e 63 74 69 6f  xInHexRS=functio
2ed20 6e 28 63 29 7b 69 66 28 63 2e 73 75 62 73 74 72  n(c){if(c.substr
2ed30 28 30 2c 32 29 21 3d 22 33 30 22 29 7b 74 68 72  (0,2)!="30"){thr
2ed40 6f 77 22 73 69 67 6e 61 74 75 72 65 20 69 73 20  ow"signature is 
2ed50 6e 6f 74 20 61 20 41 53 4e 2e 31 20 73 65 71 75  not a ASN.1 sequ
2ed60 65 6e 63 65 22 7d 76 61 72 20 62 3d 41 53 4e 31  ence"}var b=ASN1
2ed70 48 45 58 2e 67 65 74 50 6f 73 41 72 72 61 79 4f  HEX.getPosArrayO
2ed80 66 43 68 69 6c 64 72 65 6e 5f 41 74 4f 62 6a 28  fChildren_AtObj(
2ed90 63 2c 30 29 3b 69 66 28 62 2e 6c 65 6e 67 74 68  c,0);if(b.length
2eda0 21 3d 32 29 7b 74 68 72 6f 77 22 6e 75 6d 62 65  !=2){throw"numbe
2edb0 72 20 6f 66 20 73 69 67 6e 61 74 75 72 65 20 41  r of signature A
2edc0 53 4e 2e 31 20 73 65 71 75 65 6e 63 65 20 65 6c  SN.1 sequence el
2edd0 65 6d 65 6e 74 73 20 73 65 65 6d 20 77 72 6f 6e  ements seem wron
2ede0 67 22 7d 76 61 72 20 67 3d 62 5b 30 5d 3b 76 61  g"}var g=b[0];va
2edf0 72 20 66 3d 62 5b 31 5d 3b 69 66 28 63 2e 73 75  r f=b[1];if(c.su
2ee00 62 73 74 72 28 67 2c 32 29 21 3d 22 30 32 22 29  bstr(g,2)!="02")
2ee10 7b 74 68 72 6f 77 22 31 73 74 20 69 74 65 6d 20  {throw"1st item 
2ee20 6f 66 20 73 65 71 75 65 6e 65 20 6f 66 20 73 69  of sequene of si
2ee30 67 6e 61 74 75 72 65 20 69 73 20 6e 6f 74 20 41  gnature is not A
2ee40 53 4e 2e 31 20 69 6e 74 65 67 65 72 22 7d 69 66  SN.1 integer"}if
2ee50 28 63 2e 73 75 62 73 74 72 28 66 2c 32 29 21 3d  (c.substr(f,2)!=
2ee60 22 30 32 22 29 7b 74 68 72 6f 77 22 32 6e 64 20  "02"){throw"2nd 
2ee70 69 74 65 6d 20 6f 66 20 73 65 71 75 65 6e 65 20  item of sequene 
2ee80 6f 66 20 73 69 67 6e 61 74 75 72 65 20 69 73 20  of signature is 
2ee90 6e 6f 74 20 41 53 4e 2e 31 20 69 6e 74 65 67 65  not ASN.1 intege
2eea0 72 22 7d 76 61 72 20 65 3d 41 53 4e 31 48 45 58  r"}var e=ASN1HEX
2eeb0 2e 67 65 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a  .getHexOfV_AtObj
2eec0 28 63 2c 67 29 3b 76 61 72 20 64 3d 41 53 4e 31  (c,g);var d=ASN1
2eed0 48 45 58 2e 67 65 74 48 65 78 4f 66 56 5f 41 74  HEX.getHexOfV_At
2eee0 4f 62 6a 28 63 2c 66 29 3b 72 65 74 75 72 6e 7b  Obj(c,f);return{
2eef0 72 3a 65 2c 73 3a 64 7d 7d 3b 4b 4a 55 52 2e 63  r:e,s:d}};KJUR.c
2ef00 72 79 70 74 6f 2e 45 43 44 53 41 2e 61 73 6e 31  rypto.ECDSA.asn1
2ef10 53 69 67 54 6f 43 6f 6e 63 61 74 53 69 67 3d 66  SigToConcatSig=f
2ef20 75 6e 63 74 69 6f 6e 28 63 29 7b 76 61 72 20 64  unction(c){var d
2ef30 3d 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 45 43 44  =KJUR.crypto.ECD
2ef40 53 41 2e 70 61 72 73 65 53 69 67 48 65 78 49 6e  SA.parseSigHexIn
2ef50 48 65 78 52 53 28 63 29 3b 76 61 72 20 62 3d 64  HexRS(c);var b=d
2ef60 2e 72 3b 76 61 72 20 61 3d 64 2e 73 3b 69 66 28  .r;var a=d.s;if(
2ef70 62 2e 73 75 62 73 74 72 28 30 2c 32 29 3d 3d 22  b.substr(0,2)=="
2ef80 30 30 22 26 26 28 28 28 62 2e 6c 65 6e 67 74 68  00"&&(((b.length
2ef90 2f 32 29 2a 38 29 25 28 31 36 2a 38 29 29 3d 3d  /2)*8)%(16*8))==
2efa0 38 29 7b 62 3d 62 2e 73 75 62 73 74 72 28 32 29  8){b=b.substr(2)
2efb0 7d 69 66 28 61 2e 73 75 62 73 74 72 28 30 2c 32  }if(a.substr(0,2
2efc0 29 3d 3d 22 30 30 22 26 26 28 28 28 61 2e 6c 65  )=="00"&&(((a.le
2efd0 6e 67 74 68 2f 32 29 2a 38 29 25 28 31 36 2a 38  ngth/2)*8)%(16*8
2efe0 29 29 3d 3d 38 29 7b 61 3d 61 2e 73 75 62 73 74  ))==8){a=a.subst
2eff0 72 28 32 29 7d 69 66 28 28 28 28 62 2e 6c 65 6e  r(2)}if((((b.len
2f000 67 74 68 2f 32 29 2a 38 29 25 28 31 36 2a 38 29  gth/2)*8)%(16*8)
2f010 29 21 3d 30 29 7b 74 68 72 6f 77 22 75 6e 6b 6e  )!=0){throw"unkn
2f020 6f 77 6e 20 45 43 44 53 41 20 73 69 67 20 72 20  own ECDSA sig r 
2f030 6c 65 6e 67 74 68 20 65 72 72 6f 72 22 7d 69 66  length error"}if
2f040 28 28 28 28 61 2e 6c 65 6e 67 74 68 2f 32 29 2a  ((((a.length/2)*
2f050 38 29 25 28 31 36 2a 38 29 29 21 3d 30 29 7b 74  8)%(16*8))!=0){t
2f060 68 72 6f 77 22 75 6e 6b 6e 6f 77 6e 20 45 43 44  hrow"unknown ECD
2f070 53 41 20 73 69 67 20 73 20 6c 65 6e 67 74 68 20  SA sig s length 
2f080 65 72 72 6f 72 22 7d 72 65 74 75 72 6e 20 62 2b  error"}return b+
2f090 61 7d 3b 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 45  a};KJUR.crypto.E
2f0a0 43 44 53 41 2e 63 6f 6e 63 61 74 53 69 67 54 6f  CDSA.concatSigTo
2f0b0 41 53 4e 31 53 69 67 3d 66 75 6e 63 74 69 6f 6e  ASN1Sig=function
2f0c0 28 61 29 7b 69 66 28 28 28 28 61 2e 6c 65 6e 67  (a){if((((a.leng
2f0d0 74 68 2f 32 29 2a 38 29 25 28 31 36 2a 38 29 29  th/2)*8)%(16*8))
2f0e0 21 3d 30 29 7b 74 68 72 6f 77 22 75 6e 6b 6e 6f  !=0){throw"unkno
2f0f0 77 6e 20 45 43 44 53 41 20 63 6f 6e 63 61 74 69  wn ECDSA concati
2f100 6e 61 74 65 64 20 72 2d 73 20 73 69 67 20 20 6c  nated r-s sig  l
2f110 65 6e 67 74 68 20 65 72 72 6f 72 22 7d 76 61 72  ength error"}var
2f120 20 63 3d 61 2e 73 75 62 73 74 72 28 30 2c 61 2e   c=a.substr(0,a.
2f130 6c 65 6e 67 74 68 2f 32 29 3b 76 61 72 20 62 3d  length/2);var b=
2f140 61 2e 73 75 62 73 74 72 28 61 2e 6c 65 6e 67 74  a.substr(a.lengt
2f150 68 2f 32 29 3b 72 65 74 75 72 6e 20 4b 4a 55 52  h/2);return KJUR
2f160 2e 63 72 79 70 74 6f 2e 45 43 44 53 41 2e 68 65  .crypto.ECDSA.he
2f170 78 52 53 53 69 67 54 6f 41 53 4e 31 53 69 67 28  xRSSigToASN1Sig(
2f180 63 2c 62 29 7d 3b 4b 4a 55 52 2e 63 72 79 70 74  c,b)};KJUR.crypt
2f190 6f 2e 45 43 44 53 41 2e 68 65 78 52 53 53 69 67  o.ECDSA.hexRSSig
2f1a0 54 6f 41 53 4e 31 53 69 67 3d 66 75 6e 63 74 69  ToASN1Sig=functi
2f1b0 6f 6e 28 62 2c 61 29 7b 76 61 72 20 64 3d 6e 65  on(b,a){var d=ne
2f1c0 77 20 42 69 67 49 6e 74 65 67 65 72 28 62 2c 31  w BigInteger(b,1
2f1d0 36 29 3b 76 61 72 20 63 3d 6e 65 77 20 42 69 67  6);var c=new Big
2f1e0 49 6e 74 65 67 65 72 28 61 2c 31 36 29 3b 72 65  Integer(a,16);re
2f1f0 74 75 72 6e 20 4b 4a 55 52 2e 63 72 79 70 74 6f  turn KJUR.crypto
2f200 2e 45 43 44 53 41 2e 62 69 52 53 53 69 67 54 6f  .ECDSA.biRSSigTo
2f210 41 53 4e 31 53 69 67 28 64 2c 63 29 7d 3b 4b 4a  ASN1Sig(d,c)};KJ
2f220 55 52 2e 63 72 79 70 74 6f 2e 45 43 44 53 41 2e  UR.crypto.ECDSA.
2f230 62 69 52 53 53 69 67 54 6f 41 53 4e 31 53 69 67  biRSSigToASN1Sig
2f240 3d 66 75 6e 63 74 69 6f 6e 28 65 2c 63 29 7b 76  =function(e,c){v
2f250 61 72 20 62 3d 6e 65 77 20 4b 4a 55 52 2e 61 73  ar b=new KJUR.as
2f260 6e 31 2e 44 45 52 49 6e 74 65 67 65 72 28 7b 62  n1.DERInteger({b
2f270 69 67 69 6e 74 3a 65 7d 29 3b 76 61 72 20 61 3d  igint:e});var a=
2f280 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  new KJUR.asn1.DE
2f290 52 49 6e 74 65 67 65 72 28 7b 62 69 67 69 6e 74  RInteger({bigint
2f2a0 3a 63 7d 29 3b 76 61 72 20 64 3d 6e 65 77 20 4b  :c});var d=new K
2f2b0 4a 55 52 2e 61 73 6e 31 2e 44 45 52 53 65 71 75  JUR.asn1.DERSequ
2f2c0 65 6e 63 65 28 7b 61 72 72 61 79 3a 5b 62 2c 61  ence({array:[b,a
2f2d0 5d 7d 29 3b 72 65 74 75 72 6e 20 64 2e 67 65 74  ]});return d.get
2f2e0 45 6e 63 6f 64 65 64 48 65 78 28 29 7d 3b 0a 2f  EncodedHex()};./
2f2f0 2a 21 20 65 63 70 61 72 61 6d 2d 31 2e 30 2e 30  *! ecparam-1.0.0
2f300 2e 6a 73 20 28 63 29 20 32 30 31 33 20 4b 65 6e  .js (c) 2013 Ken
2f310 6a 69 20 55 72 75 73 68 69 6d 61 20 7c 20 6b 6a  ji Urushima | kj
2f320 75 72 2e 67 69 74 68 75 62 2e 63 6f 6d 2f 6a 73  ur.github.com/js
2f330 72 73 61 73 69 67 6e 2f 6c 69 63 65 6e 73 65 0a  rsasign/license.
2f340 20 2a 2f 0a 69 66 28 74 79 70 65 6f 66 20 4b 4a   */.if(typeof KJ
2f350 55 52 3d 3d 22 75 6e 64 65 66 69 6e 65 64 22 7c  UR=="undefined"|
2f360 7c 21 4b 4a 55 52 29 7b 4b 4a 55 52 3d 7b 7d 7d  |!KJUR){KJUR={}}
2f370 69 66 28 74 79 70 65 6f 66 20 4b 4a 55 52 2e 63  if(typeof KJUR.c
2f380 72 79 70 74 6f 3d 3d 22 75 6e 64 65 66 69 6e 65  rypto=="undefine
2f390 64 22 7c 7c 21 4b 4a 55 52 2e 63 72 79 70 74 6f  d"||!KJUR.crypto
2f3a0 29 7b 4b 4a 55 52 2e 63 72 79 70 74 6f 3d 7b 7d  ){KJUR.crypto={}
2f3b0 7d 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 45 43 50  }KJUR.crypto.ECP
2f3c0 61 72 61 6d 65 74 65 72 44 42 3d 6e 65 77 20 66  arameterDB=new f
2f3d0 75 6e 63 74 69 6f 6e 28 29 7b 76 61 72 20 62 3d  unction(){var b=
2f3e0 7b 7d 3b 76 61 72 20 63 3d 7b 7d 3b 66 75 6e 63  {};var c={};func
2f3f0 74 69 6f 6e 20 61 28 64 29 7b 72 65 74 75 72 6e  tion a(d){return
2f400 20 6e 65 77 20 42 69 67 49 6e 74 65 67 65 72 28   new BigInteger(
2f410 64 2c 31 36 29 7d 74 68 69 73 2e 67 65 74 42 79  d,16)}this.getBy
2f420 4e 61 6d 65 3d 66 75 6e 63 74 69 6f 6e 28 65 29  Name=function(e)
2f430 7b 76 61 72 20 64 3d 65 3b 69 66 28 74 79 70 65  {var d=e;if(type
2f440 6f 66 20 63 5b 64 5d 21 3d 22 75 6e 64 65 66 69  of c[d]!="undefi
2f450 6e 65 64 22 29 7b 64 3d 63 5b 65 5d 7d 69 66 28  ned"){d=c[e]}if(
2f460 74 79 70 65 6f 66 20 62 5b 64 5d 21 3d 22 75 6e  typeof b[d]!="un
2f470 64 65 66 69 6e 65 64 22 29 7b 72 65 74 75 72 6e  defined"){return
2f480 20 62 5b 64 5d 7d 74 68 72 6f 77 22 75 6e 72 65   b[d]}throw"unre
2f490 67 69 73 74 65 72 65 64 20 45 43 20 63 75 72 76  gistered EC curv
2f4a0 65 20 6e 61 6d 65 3a 20 22 2b 64 7d 3b 74 68 69  e name: "+d};thi
2f4b0 73 2e 72 65 67 69 73 74 3d 66 75 6e 63 74 69 6f  s.regist=functio
2f4c0 6e 28 41 2c 6c 2c 6f 2c 67 2c 6d 2c 65 2c 6a 2c  n(A,l,o,g,m,e,j,
2f4d0 66 2c 6b 2c 75 2c 64 2c 78 29 7b 62 5b 41 5d 3d  f,k,u,d,x){b[A]=
2f4e0 7b 7d 3b 76 61 72 20 73 3d 61 28 6f 29 3b 76 61  {};var s=a(o);va
2f4f0 72 20 7a 3d 61 28 67 29 3b 76 61 72 20 79 3d 61  r z=a(g);var y=a
2f500 28 6d 29 3b 76 61 72 20 74 3d 61 28 65 29 3b 76  (m);var t=a(e);v
2f510 61 72 20 77 3d 61 28 6a 29 3b 76 61 72 20 72 3d  ar w=a(j);var r=
2f520 6e 65 77 20 45 43 43 75 72 76 65 46 70 28 73 2c  new ECCurveFp(s,
2f530 7a 2c 79 29 3b 76 61 72 20 71 3d 72 2e 64 65 63  z,y);var q=r.dec
2f540 6f 64 65 50 6f 69 6e 74 48 65 78 28 22 30 34 22  odePointHex("04"
2f550 2b 66 2b 6b 29 3b 62 5b 41 5d 5b 22 6e 61 6d 65  +f+k);b[A]["name
2f560 22 5d 3d 41 3b 62 5b 41 5d 5b 22 6b 65 79 6c 65  "]=A;b[A]["keyle
2f570 6e 22 5d 3d 6c 3b 62 5b 41 5d 5b 22 63 75 72 76  n"]=l;b[A]["curv
2f580 65 22 5d 3d 72 3b 62 5b 41 5d 5b 22 47 22 5d 3d  e"]=r;b[A]["G"]=
2f590 71 3b 62 5b 41 5d 5b 22 6e 22 5d 3d 74 3b 62 5b  q;b[A]["n"]=t;b[
2f5a0 41 5d 5b 22 68 22 5d 3d 77 3b 62 5b 41 5d 5b 22  A]["h"]=w;b[A]["
2f5b0 6f 69 64 22 5d 3d 64 3b 62 5b 41 5d 5b 22 69 6e  oid"]=d;b[A]["in
2f5c0 66 6f 22 5d 3d 78 3b 66 6f 72 28 76 61 72 20 76  fo"]=x;for(var v
2f5d0 3d 30 3b 76 3c 75 2e 6c 65 6e 67 74 68 3b 76 2b  =0;v<u.length;v+
2f5e0 2b 29 7b 63 5b 75 5b 76 5d 5d 3d 41 7d 7d 7d 3b  +){c[u[v]]=A}}};
2f5f0 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 45 43 50 61  KJUR.crypto.ECPa
2f600 72 61 6d 65 74 65 72 44 42 2e 72 65 67 69 73 74  rameterDB.regist
2f610 28 22 73 65 63 70 31 32 38 72 31 22 2c 31 32 38  ("secp128r1",128
2f620 2c 22 46 46 46 46 46 46 46 44 46 46 46 46 46 46  ,"FFFFFFFDFFFFFF
2f630 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2f640 46 46 22 2c 22 46 46 46 46 46 46 46 44 46 46 46  FF","FFFFFFFDFFF
2f650 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2f660 46 46 46 46 43 22 2c 22 45 38 37 35 37 39 43 31  FFFFC","E87579C1
2f670 31 30 37 39 46 34 33 44 44 38 32 34 39 39 33 43  1079F43DD824993C
2f680 32 43 45 45 35 45 44 33 22 2c 22 46 46 46 46 46  2CEE5ED3","FFFFF
2f690 46 46 45 30 30 30 30 30 30 30 30 37 35 41 33 30  FFE0000000075A30
2f6a0 44 31 42 39 30 33 38 41 31 31 35 22 2c 22 31 22  D1B9038A115","1"
2f6b0 2c 22 31 36 31 46 46 37 35 32 38 42 38 39 39 42  ,"161FF7528B899B
2f6c0 32 44 30 43 32 38 36 30 37 43 41 35 32 43 35 42  2D0C28607CA52C5B
2f6d0 38 36 22 2c 22 43 46 35 41 43 38 33 39 35 42 41  86","CF5AC8395BA
2f6e0 46 45 42 31 33 43 30 32 44 41 32 39 32 44 44 45  FEB13C02DA292DDE
2f6f0 44 37 41 38 33 22 2c 5b 5d 2c 22 22 2c 22 73 65  D7A83",[],"","se
2f700 63 70 31 32 38 72 31 20 3a 20 53 45 43 47 20 63  cp128r1 : SECG c
2f710 75 72 76 65 20 6f 76 65 72 20 61 20 31 32 38 20  urve over a 128 
2f720 62 69 74 20 70 72 69 6d 65 20 66 69 65 6c 64 22  bit prime field"
2f730 29 3b 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 45 43  );KJUR.crypto.EC
2f740 50 61 72 61 6d 65 74 65 72 44 42 2e 72 65 67 69  ParameterDB.regi
2f750 73 74 28 22 73 65 63 70 31 36 30 6b 31 22 2c 31  st("secp160k1",1
2f760 36 30 2c 22 46 46 46 46 46 46 46 46 46 46 46 46  60,"FFFFFFFFFFFF
2f770 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2f780 46 46 46 45 46 46 46 46 41 43 37 33 22 2c 22 30  FFFEFFFFAC73","0
2f790 22 2c 22 37 22 2c 22 30 31 30 30 30 30 30 30 30  ","7","010000000
2f7a0 30 30 30 30 30 30 30 30 30 30 30 30 31 42 38 46  0000000000001B8F
2f7b0 41 31 36 44 46 41 42 39 41 43 41 31 36 42 36 42  A16DFAB9ACA16B6B
2f7c0 33 22 2c 22 31 22 2c 22 33 42 34 43 33 38 32 43  3","1","3B4C382C
2f7d0 45 33 37 41 41 31 39 32 41 34 30 31 39 45 37 36  E37AA192A4019E76
2f7e0 33 30 33 36 46 34 46 35 44 44 34 44 37 45 42 42  3036F4F5DD4D7EBB
2f7f0 22 2c 22 39 33 38 43 46 39 33 35 33 31 38 46 44  ","938CF935318FD
2f800 43 45 44 36 42 43 32 38 32 38 36 35 33 31 37 33  CED6BC2828653173
2f810 33 43 33 46 30 33 43 34 46 45 45 22 2c 5b 5d 2c  3C3F03C4FEE",[],
2f820 22 22 2c 22 73 65 63 70 31 36 30 6b 31 20 3a 20  "","secp160k1 : 
2f830 53 45 43 47 20 63 75 72 76 65 20 6f 76 65 72 20  SECG curve over 
2f840 61 20 31 36 30 20 62 69 74 20 70 72 69 6d 65 20  a 160 bit prime 
2f850 66 69 65 6c 64 22 29 3b 4b 4a 55 52 2e 63 72 79  field");KJUR.cry
2f860 70 74 6f 2e 45 43 50 61 72 61 6d 65 74 65 72 44  pto.ECParameterD
2f870 42 2e 72 65 67 69 73 74 28 22 73 65 63 70 31 36  B.regist("secp16
2f880 30 72 31 22 2c 31 36 30 2c 22 46 46 46 46 46 46  0r1",160,"FFFFFF
2f890 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2f8a0 46 46 46 46 46 46 46 46 46 46 37 46 46 46 46 46  FFFFFFFFFF7FFFFF
2f8b0 46 46 22 2c 22 46 46 46 46 46 46 46 46 46 46 46  FF","FFFFFFFFFFF
2f8c0 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2f8d0 46 46 46 46 46 37 46 46 46 46 46 46 43 22 2c 22  FFFFF7FFFFFFC","
2f8e0 31 43 39 37 42 45 46 43 35 34 42 44 37 41 38 42  1C97BEFC54BD7A8B
2f8f0 36 35 41 43 46 38 39 46 38 31 44 34 44 34 41 44  65ACF89F81D4D4AD
2f900 43 35 36 35 46 41 34 35 22 2c 22 30 31 30 30 30  C565FA45","01000
2f910 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30  0000000000000000
2f920 31 46 34 43 38 46 39 32 37 41 45 44 33 43 41 37  1F4C8F927AED3CA7
2f930 35 32 32 35 37 22 2c 22 31 22 2c 22 34 41 39 36  52257","1","4A96
2f940 42 35 36 38 38 45 46 35 37 33 32 38 34 36 36 34  B5688EF573284664
2f950 36 39 38 39 36 38 43 33 38 42 42 39 31 33 43 42  698968C38BB913CB
2f960 46 43 38 32 22 2c 22 32 33 41 36 32 38 35 35 33  FC82","23A628553
2f970 31 36 38 39 34 37 44 35 39 44 43 43 39 31 32 30  168947D59DCC9120
2f980 34 32 33 35 31 33 37 37 41 43 35 46 42 33 32 22  42351377AC5FB32"
2f990 2c 5b 5d 2c 22 22 2c 22 73 65 63 70 31 36 30 72  ,[],"","secp160r
2f9a0 31 20 3a 20 53 45 43 47 20 63 75 72 76 65 20 6f  1 : SECG curve o
2f9b0 76 65 72 20 61 20 31 36 30 20 62 69 74 20 70 72  ver a 160 bit pr
2f9c0 69 6d 65 20 66 69 65 6c 64 22 29 3b 4b 4a 55 52  ime field");KJUR
2f9d0 2e 63 72 79 70 74 6f 2e 45 43 50 61 72 61 6d 65  .crypto.ECParame
2f9e0 74 65 72 44 42 2e 72 65 67 69 73 74 28 22 73 65  terDB.regist("se
2f9f0 63 70 31 39 32 6b 31 22 2c 31 39 32 2c 22 46 46  cp192k1",192,"FF
2fa00 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2fa10 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2fa20 46 46 46 46 46 45 46 46 46 46 45 45 33 37 22 2c  FFFFFEFFFFEE37",
2fa30 22 30 22 2c 22 33 22 2c 22 46 46 46 46 46 46 46  "0","3","FFFFFFF
2fa40 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2fa50 45 32 36 46 32 46 43 31 37 30 46 36 39 34 36 36  E26F2FC170F69466
2fa60 41 37 34 44 45 46 44 38 44 22 2c 22 31 22 2c 22  A74DEFD8D","1","
2fa70 44 42 34 46 46 31 30 45 43 30 35 37 45 39 41 45  DB4FF10EC057E9AE
2fa80 32 36 42 30 37 44 30 32 38 30 42 37 46 34 33 34  26B07D0280B7F434
2fa90 31 44 41 35 44 31 42 31 45 41 45 30 36 43 37 44  1DA5D1B1EAE06C7D
2faa0 22 2c 22 39 42 32 46 32 46 36 44 39 43 35 36 32  ","9B2F2F6D9C562
2fab0 38 41 37 38 34 34 31 36 33 44 30 31 35 42 45 38  8A7844163D015BE8
2fac0 36 33 34 34 30 38 32 41 41 38 38 44 39 35 45 32  6344082AA88D95E2
2fad0 46 39 44 22 2c 5b 5d 29 3b 4b 4a 55 52 2e 63 72  F9D",[]);KJUR.cr
2fae0 79 70 74 6f 2e 45 43 50 61 72 61 6d 65 74 65 72  ypto.ECParameter
2faf0 44 42 2e 72 65 67 69 73 74 28 22 73 65 63 70 31  DB.regist("secp1
2fb00 39 32 72 31 22 2c 31 39 32 2c 22 46 46 46 46 46  92r1",192,"FFFFF
2fb10 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2fb20 46 46 46 46 46 46 46 46 46 46 45 46 46 46 46 46  FFFFFFFFFFEFFFFF
2fb30 46 46 46 46 46 46 46 46 46 46 46 22 2c 22 46 46  FFFFFFFFFFF","FF
2fb40 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2fb50 46 46 46 46 46 46 46 46 46 46 46 46 46 45 46 46  FFFFFFFFFFFFFEFF
2fb60 46 46 46 46 46 46 46 46 46 46 46 46 46 43 22 2c  FFFFFFFFFFFFFC",
2fb70 22 36 34 32 31 30 35 31 39 45 35 39 43 38 30 45  "64210519E59C80E
2fb80 37 30 46 41 37 45 39 41 42 37 32 32 34 33 30 34  70FA7E9AB7224304
2fb90 39 46 45 42 38 44 45 45 43 43 31 34 36 42 39 42  9FEB8DEECC146B9B
2fba0 31 22 2c 22 46 46 46 46 46 46 46 46 46 46 46 46  1","FFFFFFFFFFFF
2fbb0 46 46 46 46 46 46 46 46 46 46 46 46 39 39 44 45  FFFFFFFFFFFF99DE
2fbc0 46 38 33 36 31 34 36 42 43 39 42 31 42 34 44 32  F836146BC9B1B4D2
2fbd0 32 38 33 31 22 2c 22 31 22 2c 22 31 38 38 44 41  2831","1","188DA
2fbe0 38 30 45 42 30 33 30 39 30 46 36 37 43 42 46 32  80EB03090F67CBF2
2fbf0 30 45 42 34 33 41 31 38 38 30 30 46 34 46 46 30  0EB43A18800F4FF0
2fc00 41 46 44 38 32 46 46 31 30 31 32 22 2c 22 30 37  AFD82FF1012","07
2fc10 31 39 32 42 39 35 46 46 43 38 44 41 37 38 36 33  192B95FFC8DA7863
2fc20 31 30 31 31 45 44 36 42 32 34 43 44 44 35 37 33  1011ED6B24CDD573
2fc30 46 39 37 37 41 31 31 45 37 39 34 38 31 31 22 2c  F977A11E794811",
2fc40 5b 5d 29 3b 4b 4a 55 52 2e 63 72 79 70 74 6f 2e  []);KJUR.crypto.
2fc50 45 43 50 61 72 61 6d 65 74 65 72 44 42 2e 72 65  ECParameterDB.re
2fc60 67 69 73 74 28 22 73 65 63 70 32 32 34 72 31 22  gist("secp224r1"
2fc70 2c 32 32 34 2c 22 46 46 46 46 46 46 46 46 46 46  ,224,"FFFFFFFFFF
2fc80 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2fc90 46 46 46 46 46 46 30 30 30 30 30 30 30 30 30 30  FFFFFF0000000000
2fca0 30 30 30 30 30 30 30 30 30 30 30 30 30 31 22 2c  00000000000001",
2fcb0 22 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  "FFFFFFFFFFFFFFF
2fcc0 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2fcd0 45 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  EFFFFFFFFFFFFFFF
2fce0 46 46 46 46 46 46 46 46 45 22 2c 22 42 34 30 35  FFFFFFFFE","B405
2fcf0 30 41 38 35 30 43 30 34 42 33 41 42 46 35 34 31  0A850C04B3ABF541
2fd00 33 32 35 36 35 30 34 34 42 30 42 37 44 37 42 46  32565044B0B7D7BF
2fd10 44 38 42 41 32 37 30 42 33 39 34 33 32 33 35 35  D8BA270B39432355
2fd20 46 46 42 34 22 2c 22 46 46 46 46 46 46 46 46 46  FFB4","FFFFFFFFF
2fd30 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2fd40 46 46 46 31 36 41 32 45 30 42 38 46 30 33 45 31  FFF16A2E0B8F03E1
2fd50 33 44 44 32 39 34 35 35 43 35 43 32 41 33 44 22  3DD29455C5C2A3D"
2fd60 2c 22 31 22 2c 22 42 37 30 45 30 43 42 44 36 42  ,"1","B70E0CBD6B
2fd70 42 34 42 46 37 46 33 32 31 33 39 30 42 39 34 41  B4BF7F321390B94A
2fd80 30 33 43 31 44 33 35 36 43 32 31 31 32 32 33 34  03C1D356C2112234
2fd90 33 32 38 30 44 36 31 31 35 43 31 44 32 31 22 2c  3280D6115C1D21",
2fda0 22 42 44 33 37 36 33 38 38 42 35 46 37 32 33 46  "BD376388B5F723F
2fdb0 42 34 43 32 32 44 46 45 36 43 44 34 33 37 35 41  B4C22DFE6CD4375A
2fdc0 30 35 41 30 37 34 37 36 34 34 34 44 35 38 31 39  05A07476444D5819
2fdd0 39 38 35 30 30 37 45 33 34 22 2c 5b 5d 29 3b 4b  985007E34",[]);K
2fde0 4a 55 52 2e 63 72 79 70 74 6f 2e 45 43 50 61 72  JUR.crypto.ECPar
2fdf0 61 6d 65 74 65 72 44 42 2e 72 65 67 69 73 74 28  ameterDB.regist(
2fe00 22 73 65 63 70 32 35 36 6b 31 22 2c 32 35 36 2c  "secp256k1",256,
2fe10 22 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  "FFFFFFFFFFFFFFF
2fe20 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2fe30 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2fe40 46 46 46 46 46 46 46 46 45 46 46 46 46 46 43 32  FFFFFFFFEFFFFFC2
2fe50 46 22 2c 22 30 22 2c 22 37 22 2c 22 46 46 46 46  F","0","7","FFFF
2fe60 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2fe70 46 46 46 46 46 46 46 46 46 46 46 45 42 41 41 45  FFFFFFFFFFFEBAAE
2fe80 44 43 45 36 41 46 34 38 41 30 33 42 42 46 44 32  DCE6AF48A03BBFD2
2fe90 35 45 38 43 44 30 33 36 34 31 34 31 22 2c 22 31  5E8CD0364141","1
2fea0 22 2c 22 37 39 42 45 36 36 37 45 46 39 44 43 42  ","79BE667EF9DCB
2feb0 42 41 43 35 35 41 30 36 32 39 35 43 45 38 37 30  BAC55A06295CE870
2fec0 42 30 37 30 32 39 42 46 43 44 42 32 44 43 45 32  B07029BFCDB2DCE2
2fed0 38 44 39 35 39 46 32 38 31 35 42 31 36 46 38 31  8D959F2815B16F81
2fee0 37 39 38 22 2c 22 34 38 33 41 44 41 37 37 32 36  798","483ADA7726
2fef0 41 33 43 34 36 35 35 44 41 34 46 42 46 43 30 45  A3C4655DA4FBFC0E
2ff00 31 31 30 38 41 38 46 44 31 37 42 34 34 38 41 36  1108A8FD17B448A6
2ff10 38 35 35 34 31 39 39 43 34 37 44 30 38 46 46 42  8554199C47D08FFB
2ff20 31 30 44 34 42 38 22 2c 5b 5d 29 3b 4b 4a 55 52  10D4B8",[]);KJUR
2ff30 2e 63 72 79 70 74 6f 2e 45 43 50 61 72 61 6d 65  .crypto.ECParame
2ff40 74 65 72 44 42 2e 72 65 67 69 73 74 28 22 73 65  terDB.regist("se
2ff50 63 70 32 35 36 72 31 22 2c 32 35 36 2c 22 46 46  cp256r1",256,"FF
2ff60 46 46 46 46 46 46 30 30 30 30 30 30 30 31 30 30  FFFFFF0000000100
2ff70 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30  0000000000000000
2ff80 30 30 30 30 30 30 46 46 46 46 46 46 46 46 46 46  000000FFFFFFFFFF
2ff90 46 46 46 46 46 46 46 46 46 46 46 46 46 46 22 2c  FFFFFFFFFFFFFF",
2ffa0 22 46 46 46 46 46 46 46 46 30 30 30 30 30 30 30  "FFFFFFFF0000000
2ffb0 31 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30  1000000000000000
2ffc0 30 30 30 30 30 30 30 30 30 46 46 46 46 46 46 46  000000000FFFFFFF
2ffd0 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
2ffe0 43 22 2c 22 35 41 43 36 33 35 44 38 41 41 33 41  C","5AC635D8AA3A
2fff0 39 33 45 37 42 33 45 42 42 44 35 35 37 36 39 38  93E7B3EBBD557698
30000 38 36 42 43 36 35 31 44 30 36 42 30 43 43 35 33  86BC651D06B0CC53
30010 42 30 46 36 33 42 43 45 33 43 33 45 32 37 44 32  B0F63BCE3C3E27D2
30020 36 30 34 42 22 2c 22 46 46 46 46 46 46 46 46 30  604B","FFFFFFFF0
30030 30 30 30 30 30 30 30 46 46 46 46 46 46 46 46 46  0000000FFFFFFFFF
30040 46 46 46 46 46 46 46 42 43 45 36 46 41 41 44 41  FFFFFFFBCE6FAADA
30050 37 31 37 39 45 38 34 46 33 42 39 43 41 43 32 46  7179E84F3B9CAC2F
30060 43 36 33 32 35 35 31 22 2c 22 31 22 2c 22 36 42  C632551","1","6B
30070 31 37 44 31 46 32 45 31 32 43 34 32 34 37 46 38  17D1F2E12C4247F8
30080 42 43 45 36 45 35 36 33 41 34 34 30 46 32 37 37  BCE6E563A440F277
30090 30 33 37 44 38 31 32 44 45 42 33 33 41 30 46 34  037D812DEB33A0F4
300a0 41 31 33 39 34 35 44 38 39 38 43 32 39 36 22 2c  A13945D898C296",
300b0 22 34 46 45 33 34 32 45 32 46 45 31 41 37 46 39  "4FE342E2FE1A7F9
300c0 42 38 45 45 37 45 42 34 41 37 43 30 46 39 45 31  B8EE7EB4A7C0F9E1
300d0 36 32 42 43 45 33 33 35 37 36 42 33 31 35 45 43  62BCE33576B315EC
300e0 45 43 42 42 36 34 30 36 38 33 37 42 46 35 31 46  ECBB6406837BF51F
300f0 35 22 2c 5b 22 4e 49 53 54 20 50 2d 32 35 36 22  5",["NIST P-256"
30100 2c 22 50 2d 32 35 36 22 2c 22 70 72 69 6d 65 32  ,"P-256","prime2
30110 35 36 76 31 22 5d 29 3b 4b 4a 55 52 2e 63 72 79  56v1"]);KJUR.cry
30120 70 74 6f 2e 45 43 50 61 72 61 6d 65 74 65 72 44  pto.ECParameterD
30130 42 2e 72 65 67 69 73 74 28 22 73 65 63 70 33 38  B.regist("secp38
30140 34 72 31 22 2c 33 38 34 2c 22 46 46 46 46 46 46  4r1",384,"FFFFFF
30150 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
30160 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
30170 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
30180 46 46 46 46 46 46 46 46 46 45 46 46 46 46 46 46  FFFFFFFFFEFFFFFF
30190 46 46 30 30 30 30 30 30 30 30 30 30 30 30 30 30  FF00000000000000
301a0 30 30 46 46 46 46 46 46 46 46 22 2c 22 46 46 46  00FFFFFFFF","FFF
301b0 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
301c0 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
301d0 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
301e0 46 46 46 46 46 46 46 46 46 46 46 46 45 46 46 46  FFFFFFFFFFFFEFFF
301f0 46 46 46 46 46 30 30 30 30 30 30 30 30 30 30 30  FFFFF00000000000
30200 30 30 30 30 30 46 46 46 46 46 46 46 43 22 2c 22  00000FFFFFFFC","
30210 42 33 33 31 32 46 41 37 45 32 33 45 45 37 45 34  B3312FA7E23EE7E4
30220 39 38 38 45 30 35 36 42 45 33 46 38 32 44 31 39  988E056BE3F82D19
30230 31 38 31 44 39 43 36 45 46 45 38 31 34 31 31 32  181D9C6EFE814112
30240 30 33 31 34 30 38 38 46 35 30 31 33 38 37 35 41  0314088F5013875A
30250 43 36 35 36 33 39 38 44 38 41 32 45 44 31 39 44  C656398D8A2ED19D
30260 32 41 38 35 43 38 45 44 44 33 45 43 32 41 45 46  2A85C8EDD3EC2AEF
30270 22 2c 22 46 46 46 46 46 46 46 46 46 46 46 46 46  ","FFFFFFFFFFFFF
30280 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
30290 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
302a0 46 46 46 43 37 36 33 34 44 38 31 46 34 33 37 32  FFFC7634D81F4372
302b0 44 44 46 35 38 31 41 30 44 42 32 34 38 42 30 41  DDF581A0DB248B0A
302c0 37 37 41 45 43 45 43 31 39 36 41 43 43 43 35 32  77AECEC196ACCC52
302d0 39 37 33 22 2c 22 31 22 2c 22 41 41 38 37 43 41  973","1","AA87CA
302e0 32 32 42 45 38 42 30 35 33 37 38 45 42 31 43 37  22BE8B05378EB1C7
302f0 31 45 46 33 32 30 41 44 37 34 36 45 31 44 33 42  1EF320AD746E1D3B
30300 36 32 38 42 41 37 39 42 39 38 35 39 46 37 34 31  628BA79B9859F741
30310 45 30 38 32 35 34 32 41 33 38 35 35 30 32 46 32  E082542A385502F2
30320 35 44 42 46 35 35 32 39 36 43 33 41 35 34 35 45  5DBF55296C3A545E
30330 33 38 37 32 37 36 30 41 42 37 22 2c 22 33 36 31  3872760AB7","361
30340 37 64 65 34 61 39 36 32 36 32 63 36 66 35 64 39  7de4a96262c6f5d9
30350 65 39 38 62 66 39 32 39 32 64 63 32 39 66 38 66  e98bf9292dc29f8f
30360 34 31 64 62 64 32 38 39 61 31 34 37 63 65 39 64  41dbd289a147ce9d
30370 61 33 31 31 33 62 35 66 30 62 38 63 30 30 61 36  a3113b5f0b8c00a6
30380 30 62 31 63 65 31 64 37 65 38 31 39 64 37 61 34  0b1ce1d7e819d7a4
30390 33 31 64 37 63 39 30 65 61 30 65 35 66 22 2c 5b  31d7c90ea0e5f",[
303a0 22 4e 49 53 54 20 50 2d 33 38 34 22 2c 22 50 2d  "NIST P-384","P-
303b0 33 38 34 22 5d 29 3b 4b 4a 55 52 2e 63 72 79 70  384"]);KJUR.cryp
303c0 74 6f 2e 45 43 50 61 72 61 6d 65 74 65 72 44 42  to.ECParameterDB
303d0 2e 72 65 67 69 73 74 28 22 73 65 63 70 35 32 31  .regist("secp521
303e0 72 31 22 2c 35 32 31 2c 22 31 46 46 46 46 46 46  r1",521,"1FFFFFF
303f0 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
30400 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
30410 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
30420 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
30430 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
30440 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
30450 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
30460 46 46 46 46 46 46 46 46 46 46 46 46 22 2c 22 31  FFFFFFFFFFFF","1
30470 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
30480 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
30490 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
304a0 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
304b0 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
304c0 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
304d0 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
304e0 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
304f0 46 43 22 2c 22 30 35 31 39 35 33 45 42 39 36 31  FC","051953EB961
30500 38 45 31 43 39 41 31 46 39 32 39 41 32 31 41 30  8E1C9A1F929A21A0
30510 42 36 38 35 34 30 45 45 41 32 44 41 37 32 35 42  B68540EEA2DA725B
30520 39 39 42 33 31 35 46 33 42 38 42 34 38 39 39 31  99B315F3B8B48991
30530 38 45 46 31 30 39 45 31 35 36 31 39 33 39 35 31  8EF109E156193951
30540 45 43 37 45 39 33 37 42 31 36 35 32 43 30 42 44  EC7E937B1652C0BD
30550 33 42 42 31 42 46 30 37 33 35 37 33 44 46 38 38  3BB1BF073573DF88
30560 33 44 32 43 33 34 46 31 45 46 34 35 31 46 44 34  3D2C34F1EF451FD4
30570 36 42 35 30 33 46 30 30 22 2c 22 31 46 46 46 46  6B503F00","1FFFF
30580 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
30590 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
305a0 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46  FFFFFFFFFFFFFFFF
305b0 46 46 46 46 46 46 46 46 46 46 46 46 46 41 35 31  FFFFFFFFFFFFFA51
305c0 38 36 38 37 38 33 42 46 32 46 39 36 36 42 37 46  868783BF2F966B7F
305d0 43 43 30 31 34 38 46 37 30 39 41 35 44 30 33 42  CC0148F709A5D03B
305e0 42 35 43 39 42 38 38 39 39 43 34 37 41 45 42 42  B5C9B8899C47AEBB
305f0 36 46 42 37 31 45 39 31 33 38 36 34 30 39 22 2c  6FB71E91386409",
30600 22 31 22 2c 22 43 36 38 35 38 45 30 36 42 37 30  "1","C6858E06B70
30610 34 30 34 45 39 43 44 39 45 33 45 43 42 36 36 32  404E9CD9E3ECB662
30620 33 39 35 42 34 34 32 39 43 36 34 38 31 33 39 30  395B4429C6481390
30630 35 33 46 42 35 32 31 46 38 32 38 41 46 36 30 36  53FB521F828AF606
30640 42 34 44 33 44 42 41 41 31 34 42 35 45 37 37 45  B4D3DBAA14B5E77E
30650 46 45 37 35 39 32 38 46 45 31 44 43 31 32 37 41  FE75928FE1DC127A
30660 32 46 46 41 38 44 45 33 33 34 38 42 33 43 31 38  2FFA8DE3348B3C18
30670 35 36 41 34 32 39 42 46 39 37 45 37 45 33 31 43  56A429BF97E7E31C
30680 32 45 35 42 44 36 36 22 2c 22 30 31 31 38 33 39  2E5BD66","011839
30690 32 39 36 61 37 38 39 61 33 62 63 30 30 34 35 63  296a789a3bc0045c
306a0 38 61 35 66 62 34 32 63 37 64 31 62 64 39 39 38  8a5fb42c7d1bd998
306b0 66 35 34 34 34 39 35 37 39 62 34 34 36 38 31 37  f54449579b446817
306c0 61 66 62 64 31 37 32 37 33 65 36 36 32 63 39 37  afbd17273e662c97
306d0 65 65 37 32 39 39 35 65 66 34 32 36 34 30 63 35  ee72995ef42640c5
306e0 35 30 62 39 30 31 33 66 61 64 30 37 36 31 33 35  50b9013fad076135
306f0 33 63 37 30 38 36 61 32 37 32 63 32 34 30 38 38  3c7086a272c24088
30700 62 65 39 34 37 36 39 66 64 31 36 36 35 30 22 2c  be94769fd16650",
30710 5b 22 4e 49 53 54 20 50 2d 35 32 31 22 2c 22 50  ["NIST P-521","P
30720 2d 35 32 31 22 5d 29 3b 0a 2f 2a 21 20 64 73 61  -521"]);./*! dsa
30730 2d 6d 6f 64 69 66 69 65 64 2d 31 2e 30 2e 31 2e  -modified-1.0.1.
30740 6a 73 20 28 63 29 20 52 65 63 75 72 69 74 79 20  js (c) Recurity 
30750 4c 61 62 73 20 47 6d 62 48 2c 20 4b 65 6e 6a 69  Labs GmbH, Kenji
30760 20 55 72 75 73 68 69 6d 6d 61 20 7c 20 67 69 74   Urushimma | git
30770 68 75 62 2e 63 6f 6d 2f 6f 70 65 6e 70 67 70 6a  hub.com/openpgpj
30780 73 2f 6f 70 65 6e 70 67 70 6a 73 2f 62 6c 6f 62  s/openpgpjs/blob
30790 2f 6d 61 73 74 65 72 2f 4c 49 43 45 4e 53 45 0a  /master/LICENSE.
307a0 20 2a 2f 0a 69 66 28 74 79 70 65 6f 66 20 4b 4a   */.if(typeof KJ
307b0 55 52 3d 3d 22 75 6e 64 65 66 69 6e 65 64 22 7c  UR=="undefined"|
307c0 7c 21 4b 4a 55 52 29 7b 4b 4a 55 52 3d 7b 7d 7d  |!KJUR){KJUR={}}
307d0 69 66 28 74 79 70 65 6f 66 20 4b 4a 55 52 2e 63  if(typeof KJUR.c
307e0 72 79 70 74 6f 3d 3d 22 75 6e 64 65 66 69 6e 65  rypto=="undefine
307f0 64 22 7c 7c 21 4b 4a 55 52 2e 63 72 79 70 74 6f  d"||!KJUR.crypto
30800 29 7b 4b 4a 55 52 2e 63 72 79 70 74 6f 3d 7b 7d  ){KJUR.crypto={}
30810 7d 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 44 53 41  }KJUR.crypto.DSA
30820 3d 66 75 6e 63 74 69 6f 6e 28 29 7b 74 68 69 73  =function(){this
30830 2e 70 3d 6e 75 6c 6c 3b 74 68 69 73 2e 71 3d 6e  .p=null;this.q=n
30840 75 6c 6c 3b 74 68 69 73 2e 67 3d 6e 75 6c 6c 3b  ull;this.g=null;
30850 74 68 69 73 2e 79 3d 6e 75 6c 6c 3b 74 68 69 73  this.y=null;this
30860 2e 78 3d 6e 75 6c 6c 3b 74 68 69 73 2e 74 79 70  .x=null;this.typ
30870 65 3d 22 44 53 41 22 3b 74 68 69 73 2e 73 65 74  e="DSA";this.set
30880 50 72 69 76 61 74 65 3d 66 75 6e 63 74 69 6f 6e  Private=function
30890 28 7a 2c 77 2c 76 2c 41 2c 75 29 7b 74 68 69 73  (z,w,v,A,u){this
308a0 2e 69 73 50 72 69 76 61 74 65 3d 74 72 75 65 3b  .isPrivate=true;
308b0 74 68 69 73 2e 70 3d 7a 3b 74 68 69 73 2e 71 3d  this.p=z;this.q=
308c0 77 3b 74 68 69 73 2e 67 3d 76 3b 74 68 69 73 2e  w;this.g=v;this.
308d0 79 3d 41 3b 74 68 69 73 2e 78 3d 75 7d 3b 74 68  y=A;this.x=u};th
308e0 69 73 2e 73 65 74 50 75 62 6c 69 63 3d 66 75 6e  is.setPublic=fun
308f0 63 74 69 6f 6e 28 77 2c 76 2c 75 2c 7a 29 7b 74  ction(w,v,u,z){t
30900 68 69 73 2e 69 73 50 75 62 6c 69 63 3d 74 72 75  his.isPublic=tru
30910 65 3b 74 68 69 73 2e 70 3d 77 3b 74 68 69 73 2e  e;this.p=w;this.
30920 71 3d 76 3b 74 68 69 73 2e 67 3d 75 3b 74 68 69  q=v;this.g=u;thi
30930 73 2e 79 3d 7a 3b 74 68 69 73 2e 78 3d 6e 75 6c  s.y=z;this.x=nul
30940 6c 7d 3b 74 68 69 73 2e 73 69 67 6e 57 69 74 68  l};this.signWith
30950 4d 65 73 73 61 67 65 48 61 73 68 3d 66 75 6e 63  MessageHash=func
30960 74 69 6f 6e 28 7a 29 7b 76 61 72 20 76 3d 74 68  tion(z){var v=th
30970 69 73 2e 70 3b 76 61 72 20 75 3d 74 68 69 73 2e  is.p;var u=this.
30980 71 3b 76 61 72 20 43 3d 74 68 69 73 2e 67 3b 76  q;var C=this.g;v
30990 61 72 20 44 3d 74 68 69 73 2e 79 3b 76 61 72 20  ar D=this.y;var 
309a0 45 3d 74 68 69 73 2e 78 3b 76 61 72 20 41 3d 7a  E=this.x;var A=z
309b0 2e 73 75 62 73 74 72 28 30 2c 75 2e 62 69 74 4c  .substr(0,u.bitL
309c0 65 6e 67 74 68 28 29 2f 34 29 3b 76 61 72 20 42  ength()/4);var B
309d0 3d 6e 65 77 20 42 69 67 49 6e 74 65 67 65 72 28  =new BigInteger(
309e0 7a 2c 31 36 29 3b 76 61 72 20 77 3d 6e 28 42 69  z,16);var w=n(Bi
309f0 67 49 6e 74 65 67 65 72 2e 4f 4e 45 2e 61 64 64  gInteger.ONE.add
30a00 28 42 69 67 49 6e 74 65 67 65 72 2e 4f 4e 45 29  (BigInteger.ONE)
30a10 2c 75 2e 73 75 62 74 72 61 63 74 28 42 69 67 49  ,u.subtract(BigI
30a20 6e 74 65 67 65 72 2e 4f 4e 45 29 29 3b 76 61 72  nteger.ONE));var
30a30 20 47 3d 28 43 2e 6d 6f 64 50 6f 77 28 77 2c 76   G=(C.modPow(w,v
30a40 29 29 2e 6d 6f 64 28 75 29 3b 76 61 72 20 46 3d  )).mod(u);var F=
30a50 28 77 2e 6d 6f 64 49 6e 76 65 72 73 65 28 75 29  (w.modInverse(u)
30a60 2e 6d 75 6c 74 69 70 6c 79 28 42 2e 61 64 64 28  .multiply(B.add(
30a70 45 2e 6d 75 6c 74 69 70 6c 79 28 47 29 29 29 29  E.multiply(G))))
30a80 2e 6d 6f 64 28 75 29 3b 76 61 72 20 48 3d 4b 4a  .mod(u);var H=KJ
30a90 55 52 2e 61 73 6e 31 2e 41 53 4e 31 55 74 69 6c  UR.asn1.ASN1Util
30aa0 2e 6a 73 6f 6e 54 6f 41 53 4e 31 48 45 58 28 7b  .jsonToASN1HEX({
30ab0 73 65 71 3a 5b 7b 22 69 6e 74 22 3a 7b 62 69 67  seq:[{"int":{big
30ac0 69 6e 74 3a 47 7d 7d 2c 7b 22 69 6e 74 22 3a 7b  int:G}},{"int":{
30ad0 62 69 67 69 6e 74 3a 46 7d 7d 5d 7d 29 3b 72 65  bigint:F}}]});re
30ae0 74 75 72 6e 20 48 7d 3b 74 68 69 73 2e 76 65 72  turn H};this.ver
30af0 69 66 79 57 69 74 68 4d 65 73 73 61 67 65 48 61  ifyWithMessageHa
30b00 73 68 3d 66 75 6e 63 74 69 6f 6e 28 43 2c 42 29  sh=function(C,B)
30b10 7b 76 61 72 20 7a 3d 74 68 69 73 2e 70 3b 76 61  {var z=this.p;va
30b20 72 20 75 3d 74 68 69 73 2e 71 3b 76 61 72 20 47  r u=this.q;var G
30b30 3d 74 68 69 73 2e 67 3b 76 61 72 20 48 3d 74 68  =this.g;var H=th
30b40 69 73 2e 79 3b 76 61 72 20 45 3d 74 68 69 73 2e  is.y;var E=this.
30b50 70 61 72 73 65 41 53 4e 31 53 69 67 6e 61 74 75  parseASN1Signatu
30b60 72 65 28 42 29 3b 76 61 72 20 4b 3d 45 5b 30 5d  re(B);var K=E[0]
30b70 3b 76 61 72 20 4a 3d 45 5b 31 5d 3b 76 61 72 20  ;var J=E[1];var 
30b80 43 3d 43 2e 73 75 62 73 74 72 28 30 2c 75 2e 62  C=C.substr(0,u.b
30b90 69 74 4c 65 6e 67 74 68 28 29 2f 34 29 3b 76 61  itLength()/4);va
30ba0 72 20 44 3d 6e 65 77 20 42 69 67 49 6e 74 65 67  r D=new BigInteg
30bb0 65 72 28 43 2c 31 36 29 3b 69 66 28 42 69 67 49  er(C,16);if(BigI
30bc0 6e 74 65 67 65 72 2e 5a 45 52 4f 2e 63 6f 6d 70  nteger.ZERO.comp
30bd0 61 72 65 54 6f 28 4b 29 3e 30 7c 7c 4b 2e 63 6f  areTo(K)>0||K.co
30be0 6d 70 61 72 65 54 6f 28 75 29 3e 30 7c 7c 42 69  mpareTo(u)>0||Bi
30bf0 67 49 6e 74 65 67 65 72 2e 5a 45 52 4f 2e 63 6f  gInteger.ZERO.co
30c00 6d 70 61 72 65 54 6f 28 4a 29 3e 30 7c 7c 4a 2e  mpareTo(J)>0||J.
30c10 63 6f 6d 70 61 72 65 54 6f 28 75 29 3e 30 29 7b  compareTo(u)>0){
30c20 74 68 72 6f 77 22 69 6e 76 61 6c 69 64 20 44 53  throw"invalid DS
30c30 41 20 73 69 67 6e 61 74 75 72 65 22 7d 76 61 72  A signature"}var
30c40 20 49 3d 4a 2e 6d 6f 64 49 6e 76 65 72 73 65 28   I=J.modInverse(
30c50 75 29 3b 76 61 72 20 41 3d 44 2e 6d 75 6c 74 69  u);var A=D.multi
30c60 70 6c 79 28 49 29 2e 6d 6f 64 28 75 29 3b 76 61  ply(I).mod(u);va
30c70 72 20 76 3d 4b 2e 6d 75 6c 74 69 70 6c 79 28 49  r v=K.multiply(I
30c80 29 2e 6d 6f 64 28 75 29 3b 76 61 72 20 46 3d 47  ).mod(u);var F=G
30c90 2e 6d 6f 64 50 6f 77 28 41 2c 7a 29 2e 6d 75 6c  .modPow(A,z).mul
30ca0 74 69 70 6c 79 28 48 2e 6d 6f 64 50 6f 77 28 76  tiply(H.modPow(v
30cb0 2c 7a 29 29 2e 6d 6f 64 28 7a 29 2e 6d 6f 64 28  ,z)).mod(z).mod(
30cc0 75 29 3b 72 65 74 75 72 6e 20 46 2e 63 6f 6d 70  u);return F.comp
30cd0 61 72 65 54 6f 28 4b 29 3d 3d 30 7d 3b 74 68 69  areTo(K)==0};thi
30ce0 73 2e 70 61 72 73 65 41 53 4e 31 53 69 67 6e 61  s.parseASN1Signa
30cf0 74 75 72 65 3d 66 75 6e 63 74 69 6f 6e 28 75 29  ture=function(u)
30d00 7b 74 72 79 7b 76 61 72 20 79 3d 6e 65 77 20 42  {try{var y=new B
30d10 69 67 49 6e 74 65 67 65 72 28 41 53 4e 31 48 45  igInteger(ASN1HE
30d20 58 2e 67 65 74 56 62 79 4c 69 73 74 28 75 2c 30  X.getVbyList(u,0
30d30 2c 5b 30 5d 2c 22 30 32 22 29 2c 31 36 29 3b 76  ,[0],"02"),16);v
30d40 61 72 20 76 3d 6e 65 77 20 42 69 67 49 6e 74 65  ar v=new BigInte
30d50 67 65 72 28 41 53 4e 31 48 45 58 2e 67 65 74 56  ger(ASN1HEX.getV
30d60 62 79 4c 69 73 74 28 75 2c 30 2c 5b 31 5d 2c 22  byList(u,0,[1],"
30d70 30 32 22 29 2c 31 36 29 3b 72 65 74 75 72 6e 5b  02"),16);return[
30d80 79 2c 76 5d 7d 63 61 74 63 68 28 77 29 7b 74 68  y,v]}catch(w){th
30d90 72 6f 77 22 6d 61 6c 66 6f 72 6d 65 64 20 44 53  row"malformed DS
30da0 41 20 73 69 67 6e 61 74 75 72 65 22 7d 7d 3b 66  A signature"}};f
30db0 75 6e 63 74 69 6f 6e 20 64 28 45 2c 77 2c 42 2c  unction d(E,w,B,
30dc0 76 2c 75 2c 43 29 7b 76 61 72 20 7a 3d 4b 4a 55  v,u,C){var z=KJU
30dd0 52 2e 63 72 79 70 74 6f 2e 55 74 69 6c 2e 68 61  R.crypto.Util.ha
30de0 73 68 53 74 72 69 6e 67 28 77 2c 45 2e 74 6f 4c  shString(w,E.toL
30df0 6f 77 65 72 43 61 73 65 28 29 29 3b 76 61 72 20  owerCase());var 
30e00 7a 3d 7a 2e 73 75 62 73 74 72 28 30 2c 75 2e 62  z=z.substr(0,u.b
30e10 69 74 4c 65 6e 67 74 68 28 29 2f 34 29 3b 76 61  itLength()/4);va
30e20 72 20 41 3d 6e 65 77 20 42 69 67 49 6e 74 65 67  r A=new BigInteg
30e30 65 72 28 7a 2c 31 36 29 3b 76 61 72 20 79 3d 6e  er(z,16);var y=n
30e40 28 42 69 67 49 6e 74 65 67 65 72 2e 4f 4e 45 2e  (BigInteger.ONE.
30e50 61 64 64 28 42 69 67 49 6e 74 65 67 65 72 2e 4f  add(BigInteger.O
30e60 4e 45 29 2c 75 2e 73 75 62 74 72 61 63 74 28 42  NE),u.subtract(B
30e70 69 67 49 6e 74 65 67 65 72 2e 4f 4e 45 29 29 3b  igInteger.ONE));
30e80 76 61 72 20 46 3d 28 42 2e 6d 6f 64 50 6f 77 28  var F=(B.modPow(
30e90 79 2c 76 29 29 2e 6d 6f 64 28 75 29 3b 76 61 72  y,v)).mod(u);var
30ea0 20 44 3d 28 79 2e 6d 6f 64 49 6e 76 65 72 73 65   D=(y.modInverse
30eb0 28 75 29 2e 6d 75 6c 74 69 70 6c 79 28 41 2e 61  (u).multiply(A.a
30ec0 64 64 28 43 2e 6d 75 6c 74 69 70 6c 79 28 46 29  dd(C.multiply(F)
30ed0 29 29 29 2e 6d 6f 64 28 75 29 3b 76 61 72 20 47  ))).mod(u);var G
30ee0 3d 6e 65 77 20 41 72 72 61 79 28 29 3b 47 5b 30  =new Array();G[0
30ef0 5d 3d 46 3b 47 5b 31 5d 3d 44 3b 72 65 74 75 72  ]=F;G[1]=D;retur
30f00 6e 20 47 7d 66 75 6e 63 74 69 6f 6e 20 72 28 76  n G}function r(v
30f10 29 7b 76 61 72 20 75 3d 6f 70 65 6e 70 67 70 2e  ){var u=openpgp.
30f20 63 6f 6e 66 69 67 2e 63 6f 6e 66 69 67 2e 70 72  config.config.pr
30f30 65 66 65 72 5f 68 61 73 68 5f 61 6c 67 6f 72 69  efer_hash_algori
30f40 74 68 6d 3b 73 77 69 74 63 68 28 4d 61 74 68 2e  thm;switch(Math.
30f50 72 6f 75 6e 64 28 76 2e 62 69 74 4c 65 6e 67 74  round(v.bitLengt
30f60 68 28 29 2f 38 29 29 7b 63 61 73 65 20 32 30 3a  h()/8)){case 20:
30f70 69 66 28 75 21 3d 32 26 26 75 3e 31 31 26 26 75  if(u!=2&&u>11&&u
30f80 21 3d 31 30 26 26 75 3c 38 29 7b 72 65 74 75 72  !=10&&u<8){retur
30f90 6e 20 32 7d 72 65 74 75 72 6e 20 75 3b 63 61 73  n 2}return u;cas
30fa0 65 20 32 38 3a 69 66 28 75 3e 31 31 26 26 75 3c  e 28:if(u>11&&u<
30fb0 38 29 7b 72 65 74 75 72 6e 20 31 31 7d 72 65 74  8){return 11}ret
30fc0 75 72 6e 20 75 3b 63 61 73 65 20 33 32 3a 69 66  urn u;case 32:if
30fd0 28 75 3e 31 30 26 26 75 3c 38 29 7b 72 65 74 75  (u>10&&u<8){retu
30fe0 72 6e 20 38 7d 72 65 74 75 72 6e 20 75 3b 64 65  rn 8}return u;de
30ff0 66 61 75 6c 74 3a 75 74 69 6c 2e 70 72 69 6e 74  fault:util.print
31000 5f 64 65 62 75 67 28 22 44 53 41 20 73 65 6c 65  _debug("DSA sele
31010 63 74 20 68 61 73 68 20 61 6c 67 6f 72 69 74 68  ct hash algorith
31020 6d 3a 20 72 65 74 75 72 6e 69 6e 67 20 6e 75 6c  m: returning nul
31030 6c 20 66 6f 72 20 61 6e 20 75 6e 6b 6e 6f 77 6e  l for an unknown
31040 20 6c 65 6e 67 74 68 20 6f 66 20 71 22 29 3b 72   length of q");r
31050 65 74 75 72 6e 20 6e 75 6c 6c 7d 7d 74 68 69 73  eturn null}}this
31060 2e 73 65 6c 65 63 74 5f 68 61 73 68 5f 61 6c 67  .select_hash_alg
31070 6f 72 69 74 68 6d 3d 72 3b 66 75 6e 63 74 69 6f  orithm=r;functio
31080 6e 20 6d 28 49 2c 4b 2c 4a 2c 42 2c 7a 2c 75 2c  n m(I,K,J,B,z,u,
31090 46 2c 47 29 7b 76 61 72 20 43 3d 4b 4a 55 52 2e  F,G){var C=KJUR.
310a0 63 72 79 70 74 6f 2e 55 74 69 6c 2e 68 61 73 68  crypto.Util.hash
310b0 53 74 72 69 6e 67 28 42 2c 49 2e 74 6f 4c 6f 77  String(B,I.toLow
310c0 65 72 43 61 73 65 28 29 29 3b 76 61 72 20 43 3d  erCase());var C=
310d0 43 2e 73 75 62 73 74 72 28 30 2c 75 2e 62 69 74  C.substr(0,u.bit
310e0 4c 65 6e 67 74 68 28 29 2f 34 29 3b 76 61 72 20  Length()/4);var 
310f0 44 3d 6e 65 77 20 42 69 67 49 6e 74 65 67 65 72  D=new BigInteger
31100 28 43 2c 31 36 29 3b 69 66 28 42 69 67 49 6e 74  (C,16);if(BigInt
31110 65 67 65 72 2e 5a 45 52 4f 2e 63 6f 6d 70 61 72  eger.ZERO.compar
31120 65 54 6f 28 4b 29 3e 30 7c 7c 4b 2e 63 6f 6d 70  eTo(K)>0||K.comp
31130 61 72 65 54 6f 28 75 29 3e 30 7c 7c 42 69 67 49  areTo(u)>0||BigI
31140 6e 74 65 67 65 72 2e 5a 45 52 4f 2e 63 6f 6d 70  nteger.ZERO.comp
31150 61 72 65 54 6f 28 4a 29 3e 30 7c 7c 4a 2e 63 6f  areTo(J)>0||J.co
31160 6d 70 61 72 65 54 6f 28 75 29 3e 30 29 7b 75 74  mpareTo(u)>0){ut
31170 69 6c 2e 70 72 69 6e 74 5f 65 72 72 6f 72 28 22  il.print_error("
31180 69 6e 76 61 6c 69 64 20 44 53 41 20 53 69 67 6e  invalid DSA Sign
31190 61 74 75 72 65 22 29 3b 72 65 74 75 72 6e 20 6e  ature");return n
311a0 75 6c 6c 7d 76 61 72 20 48 3d 4a 2e 6d 6f 64 49  ull}var H=J.modI
311b0 6e 76 65 72 73 65 28 75 29 3b 76 61 72 20 41 3d  nverse(u);var A=
311c0 44 2e 6d 75 6c 74 69 70 6c 79 28 48 29 2e 6d 6f  D.multiply(H).mo
311d0 64 28 75 29 3b 76 61 72 20 76 3d 4b 2e 6d 75 6c  d(u);var v=K.mul
311e0 74 69 70 6c 79 28 48 29 2e 6d 6f 64 28 75 29 3b  tiply(H).mod(u);
311f0 76 61 72 20 45 3d 46 2e 6d 6f 64 50 6f 77 28 41  var E=F.modPow(A
31200 2c 7a 29 2e 6d 75 6c 74 69 70 6c 79 28 47 2e 6d  ,z).multiply(G.m
31210 6f 64 50 6f 77 28 76 2c 7a 29 29 2e 6d 6f 64 28  odPow(v,z)).mod(
31220 7a 29 2e 6d 6f 64 28 75 29 3b 72 65 74 75 72 6e  z).mod(u);return
31230 20 45 2e 63 6f 6d 70 61 72 65 54 6f 28 4b 29 3d   E.compareTo(K)=
31240 3d 30 7d 66 75 6e 63 74 69 6f 6e 20 61 28 7a 29  =0}function a(z)
31250 7b 76 61 72 20 41 3d 6e 65 77 20 42 69 67 49 6e  {var A=new BigIn
31260 74 65 67 65 72 28 7a 2c 70 72 69 6d 65 43 65 6e  teger(z,primeCen
31270 74 65 72 69 65 29 3b 76 61 72 20 79 3d 6a 28 71  terie);var y=j(q
31280 2c 35 31 32 29 3b 76 61 72 20 75 3d 74 28 70 2c  ,512);var u=t(p,
31290 71 2c 7a 29 3b 76 61 72 20 76 3b 64 6f 7b 76 3d  q,z);var v;do{v=
312a0 6e 65 77 20 42 69 67 49 6e 74 65 67 65 72 28 71  new BigInteger(q
312b0 2e 62 69 74 43 6f 75 6e 74 28 29 2c 72 61 6e 64  .bitCount(),rand
312c0 29 7d 77 68 69 6c 65 28 78 2e 63 6f 6d 70 61 72  )}while(x.compar
312d0 65 54 6f 28 42 69 67 49 6e 74 65 67 65 72 2e 5a  eTo(BigInteger.Z
312e0 45 52 4f 29 21 3d 31 26 26 78 2e 63 6f 6d 70 61  ERO)!=1&&x.compa
312f0 72 65 54 6f 28 71 29 21 3d 2d 31 29 3b 76 61 72  reTo(q)!=-1);var
31300 20 77 3d 67 2e 6d 6f 64 50 6f 77 28 78 2c 70 29   w=g.modPow(x,p)
31310 3b 72 65 74 75 72 6e 7b 78 3a 76 2c 71 3a 41 2c  ;return{x:v,q:A,
31320 70 3a 79 2c 67 3a 75 2c 79 3a 77 7d 7d 66 75 6e  p:y,g:u,y:w}}fun
31330 63 74 69 6f 6e 20 6a 28 79 2c 7a 2c 77 29 7b 69  ction j(y,z,w){i
31340 66 28 7a 25 36 34 21 3d 30 29 7b 72 65 74 75 72  f(z%64!=0){retur
31350 6e 20 66 61 6c 73 65 7d 76 61 72 20 75 3b 76 61  n false}var u;va
31360 72 20 76 3b 64 6f 7b 75 3d 77 28 62 69 74 63 6f  r v;do{u=w(bitco
31370 75 6e 74 2c 74 72 75 65 29 3b 76 3d 75 2e 73 75  unt,true);v=u.su
31380 62 74 72 61 63 74 28 42 69 67 49 6e 74 65 67 65  btract(BigIntege
31390 72 2e 4f 4e 45 29 3b 75 3d 75 2e 73 75 62 74 72  r.ONE);u=u.subtr
313a0 61 63 74 28 76 2e 72 65 6d 61 69 6e 64 65 72 28  act(v.remainder(
313b0 79 29 29 7d 77 68 69 6c 65 28 21 75 2e 69 73 50  y))}while(!u.isP
313c0 72 6f 62 61 62 6c 65 50 72 69 6d 65 28 70 72 69  robablePrime(pri
313d0 6d 65 43 65 6e 74 65 72 69 65 29 7c 7c 75 2e 62  meCenterie)||u.b
313e0 69 74 4c 65 6e 67 74 68 28 29 21 3d 6c 29 3b 72  itLength()!=l);r
313f0 65 74 75 72 6e 20 75 7d 66 75 6e 63 74 69 6f 6e  eturn u}function
31400 20 74 28 42 2c 7a 2c 41 2c 77 29 7b 76 61 72 20   t(B,z,A,w){var 
31410 75 3d 42 2e 73 75 62 74 72 61 63 74 28 42 69 67  u=B.subtract(Big
31420 49 6e 74 65 67 65 72 2e 4f 4e 45 29 3b 76 61 72  Integer.ONE);var
31430 20 79 3d 75 2e 64 69 76 69 64 65 28 7a 29 3b 76   y=u.divide(z);v
31440 61 72 20 76 3b 64 6f 7b 76 3d 77 28 41 29 7d 77  ar v;do{v=w(A)}w
31450 68 69 6c 65 28 76 2e 63 6f 6d 70 61 72 65 54 6f  hile(v.compareTo
31460 28 75 29 21 3d 2d 31 26 26 76 2e 63 6f 6d 70 61  (u)!=-1&&v.compa
31470 72 65 54 6f 28 42 69 67 49 6e 74 65 67 65 72 2e  reTo(BigInteger.
31480 4f 4e 45 29 21 3d 31 29 3b 72 65 74 75 72 6e 20  ONE)!=1);return 
31490 76 2e 6d 6f 64 50 6f 77 28 79 2c 42 29 7d 66 75  v.modPow(y,B)}fu
314a0 6e 63 74 69 6f 6e 20 6f 28 77 2c 79 2c 75 29 7b  nction o(w,y,u){
314b0 76 61 72 20 76 3b 64 6f 7b 76 3d 75 28 79 2c 66  var v;do{v=u(y,f
314c0 61 6c 73 65 29 7d 77 68 69 6c 65 28 76 2e 63 6f  alse)}while(v.co
314d0 6d 70 61 72 65 54 6f 28 77 29 21 3d 2d 31 26 26  mpareTo(w)!=-1&&
314e0 76 2e 63 6f 6d 70 61 72 65 54 6f 28 42 69 67 49  v.compareTo(BigI
314f0 6e 74 65 67 65 72 2e 5a 45 52 4f 29 21 3d 31 29  nteger.ZERO)!=1)
31500 3b 72 65 74 75 72 6e 20 76 7d 66 75 6e 63 74 69  ;return v}functi
31510 6f 6e 20 69 28 76 2c 77 29 7b 6b 3d 6f 28 76 29  on i(v,w){k=o(v)
31520 3b 76 61 72 20 75 3d 67 2e 6d 6f 64 50 6f 77 28  ;var u=g.modPow(
31530 6b 2c 77 29 2e 6d 6f 64 28 76 29 3b 72 65 74 75  k,w).mod(v);retu
31540 72 6e 20 75 7d 66 75 6e 63 74 69 6f 6e 20 68 28  rn u}function h(
31550 42 2c 77 2c 79 2c 76 2c 7a 2c 75 29 7b 76 61 72  B,w,y,v,z,u){var
31560 20 41 3d 42 28 76 29 3b 73 3d 28 77 2e 6d 6f 64   A=B(v);s=(w.mod
31570 49 6e 76 65 72 73 65 28 7a 29 2e 6d 75 6c 74 69  Inverse(z).multi
31580 70 6c 79 28 41 2e 61 64 64 28 75 2e 6d 75 6c 74  ply(A.add(u.mult
31590 69 70 6c 79 28 79 29 29 29 29 2e 6d 6f 64 28 7a  iply(y)))).mod(z
315a0 29 3b 72 65 74 75 72 6e 20 73 7d 74 68 69 73 2e  );return s}this.
315b0 73 69 67 6e 3d 64 3b 74 68 69 73 2e 76 65 72 69  sign=d;this.veri
315c0 66 79 3d 6d 3b 66 75 6e 63 74 69 6f 6e 20 6e 28  fy=m;function n(
315d0 77 2c 75 29 7b 69 66 28 75 2e 63 6f 6d 70 61 72  w,u){if(u.compar
315e0 65 54 6f 28 77 29 3c 3d 30 29 7b 72 65 74 75 72  eTo(w)<=0){retur
315f0 6e 7d 76 61 72 20 76 3d 75 2e 73 75 62 74 72 61  n}var v=u.subtra
31600 63 74 28 77 29 3b 76 61 72 20 79 3d 65 28 76 2e  ct(w);var y=e(v.
31610 62 69 74 4c 65 6e 67 74 68 28 29 29 3b 77 68 69  bitLength());whi
31620 6c 65 28 79 3e 76 29 7b 79 3d 65 28 76 2e 62 69  le(y>v){y=e(v.bi
31630 74 4c 65 6e 67 74 68 28 29 29 7d 72 65 74 75 72  tLength())}retur
31640 6e 20 77 2e 61 64 64 28 79 29 7d 66 75 6e 63 74  n w.add(y)}funct
31650 69 6f 6e 20 65 28 77 29 7b 69 66 28 77 3c 30 29  ion e(w){if(w<0)
31660 7b 72 65 74 75 72 6e 20 6e 75 6c 6c 7d 76 61 72  {return null}var
31670 20 75 3d 4d 61 74 68 2e 66 6c 6f 6f 72 28 28 77   u=Math.floor((w
31680 2b 37 29 2f 38 29 3b 76 61 72 20 76 3d 63 28 75  +7)/8);var v=c(u
31690 29 3b 69 66 28 77 25 38 3e 30 29 7b 76 3d 53 74  );if(w%8>0){v=St
316a0 72 69 6e 67 2e 66 72 6f 6d 43 68 61 72 43 6f 64  ring.fromCharCod
316b0 65 28 28 4d 61 74 68 2e 70 6f 77 28 32 2c 77 25  e((Math.pow(2,w%
316c0 38 29 2d 31 29 26 76 2e 63 68 61 72 43 6f 64 65  8)-1)&v.charCode
316d0 41 74 28 30 29 29 2b 76 2e 73 75 62 73 74 72 69  At(0))+v.substri
316e0 6e 67 28 31 29 7d 72 65 74 75 72 6e 20 6e 65 77  ng(1)}return new
316f0 20 42 69 67 49 6e 74 65 67 65 72 28 66 28 76 29   BigInteger(f(v)
31700 2c 31 36 29 7d 66 75 6e 63 74 69 6f 6e 20 63 28  ,16)}function c(
31710 77 29 7b 76 61 72 20 75 3d 22 22 3b 66 6f 72 28  w){var u="";for(
31720 76 61 72 20 76 3d 30 3b 76 3c 77 3b 76 2b 2b 29  var v=0;v<w;v++)
31730 7b 75 2b 3d 53 74 72 69 6e 67 2e 66 72 6f 6d 43  {u+=String.fromC
31740 68 61 72 43 6f 64 65 28 62 28 29 29 7d 72 65 74  harCode(b())}ret
31750 75 72 6e 20 75 7d 66 75 6e 63 74 69 6f 6e 20 62  urn u}function b
31760 28 29 7b 76 61 72 20 75 3d 6e 65 77 20 55 69 6e  (){var u=new Uin
31770 74 33 32 41 72 72 61 79 28 31 29 3b 77 69 6e 64  t32Array(1);wind
31780 6f 77 2e 63 72 79 70 74 6f 2e 67 65 74 52 61 6e  ow.crypto.getRan
31790 64 6f 6d 56 61 6c 75 65 73 28 75 29 3b 72 65 74  domValues(u);ret
317a0 75 72 6e 20 75 5b 30 5d 26 32 35 35 7d 66 75 6e  urn u[0]&255}fun
317b0 63 74 69 6f 6e 20 66 28 79 29 7b 69 66 28 79 3d  ction f(y){if(y=
317c0 3d 6e 75 6c 6c 29 7b 72 65 74 75 72 6e 22 22 7d  =null){return""}
317d0 76 61 72 20 76 3d 5b 5d 3b 76 61 72 20 77 3d 79  var v=[];var w=y
317e0 2e 6c 65 6e 67 74 68 3b 76 61 72 20 7a 3d 30 3b  .length;var z=0;
317f0 76 61 72 20 75 3b 77 68 69 6c 65 28 7a 3c 77 29  var u;while(z<w)
31800 7b 75 3d 79 5b 7a 2b 2b 5d 2e 63 68 61 72 43 6f  {u=y[z++].charCo
31810 64 65 41 74 28 29 2e 74 6f 53 74 72 69 6e 67 28  deAt().toString(
31820 31 36 29 3b 77 68 69 6c 65 28 75 2e 6c 65 6e 67  16);while(u.leng
31830 74 68 3c 32 29 7b 75 3d 22 30 22 2b 75 7d 76 2e  th<2){u="0"+u}v.
31840 70 75 73 68 28 22 22 2b 75 29 7d 72 65 74 75 72  push(""+u)}retur
31850 6e 20 76 2e 6a 6f 69 6e 28 22 22 29 7d 74 68 69  n v.join("")}thi
31860 73 2e 67 65 74 52 61 6e 64 6f 6d 42 69 67 49 6e  s.getRandomBigIn
31870 74 65 67 65 72 49 6e 52 61 6e 67 65 3d 6e 3b 74  tegerInRange=n;t
31880 68 69 73 2e 67 65 74 52 61 6e 64 6f 6d 42 69 67  his.getRandomBig
31890 49 6e 74 65 67 65 72 3d 65 3b 74 68 69 73 2e 67  Integer=e;this.g
318a0 65 74 52 61 6e 64 6f 6d 42 79 74 65 73 3d 63 7d  etRandomBytes=c}
318b0 3b 0a 2f 2a 21 20 70 6b 63 73 35 70 6b 65 79 2d  ;./*! pkcs5pkey-
318c0 31 2e 30 2e 36 2e 6a 73 20 28 63 29 20 32 30 31  1.0.6.js (c) 201
318d0 33 2d 32 30 31 34 20 4b 65 6e 6a 69 20 55 72 75  3-2014 Kenji Uru
318e0 73 68 69 6d 61 20 7c 20 6b 6a 75 72 2e 67 69 74  shima | kjur.git
318f0 68 75 62 2e 63 6f 6d 2f 6a 73 72 73 61 73 69 67  hub.com/jsrsasig
31900 6e 2f 6c 69 63 65 6e 73 65 0a 20 2a 2f 0a 76 61  n/license. */.va
31910 72 20 50 4b 43 53 35 50 4b 45 59 3d 66 75 6e 63  r PKCS5PKEY=func
31920 74 69 6f 6e 28 29 7b 76 61 72 20 63 3d 66 75 6e  tion(){var c=fun
31930 63 74 69 6f 6e 28 6e 2c 70 2c 6f 29 7b 72 65 74  ction(n,p,o){ret
31940 75 72 6e 20 69 28 43 72 79 70 74 6f 4a 53 2e 41  urn i(CryptoJS.A
31950 45 53 2c 6e 2c 70 2c 6f 29 7d 3b 76 61 72 20 64  ES,n,p,o)};var d
31960 3d 66 75 6e 63 74 69 6f 6e 28 6e 2c 70 2c 6f 29  =function(n,p,o)
31970 7b 72 65 74 75 72 6e 20 69 28 43 72 79 70 74 6f  {return i(Crypto
31980 4a 53 2e 54 72 69 70 6c 65 44 45 53 2c 6e 2c 70  JS.TripleDES,n,p
31990 2c 6f 29 7d 3b 76 61 72 20 69 3d 66 75 6e 63 74  ,o)};var i=funct
319a0 69 6f 6e 28 71 2c 76 2c 73 2c 6f 29 7b 76 61 72  ion(q,v,s,o){var
319b0 20 70 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63 2e   p=CryptoJS.enc.
319c0 48 65 78 2e 70 61 72 73 65 28 76 29 3b 76 61 72  Hex.parse(v);var
319d0 20 75 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63 2e   u=CryptoJS.enc.
319e0 48 65 78 2e 70 61 72 73 65 28 73 29 3b 76 61 72  Hex.parse(s);var
319f0 20 6e 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63 2e   n=CryptoJS.enc.
31a00 48 65 78 2e 70 61 72 73 65 28 6f 29 3b 76 61 72  Hex.parse(o);var
31a10 20 72 3d 7b 7d 3b 72 2e 6b 65 79 3d 75 3b 72 2e   r={};r.key=u;r.
31a20 69 76 3d 6e 3b 72 2e 63 69 70 68 65 72 74 65 78  iv=n;r.ciphertex
31a30 74 3d 70 3b 76 61 72 20 74 3d 71 2e 64 65 63 72  t=p;var t=q.decr
31a40 79 70 74 28 72 2c 75 2c 7b 69 76 3a 6e 7d 29 3b  ypt(r,u,{iv:n});
31a50 72 65 74 75 72 6e 20 43 72 79 70 74 6f 4a 53 2e  return CryptoJS.
31a60 65 6e 63 2e 48 65 78 2e 73 74 72 69 6e 67 69 66  enc.Hex.stringif
31a70 79 28 74 29 7d 3b 76 61 72 20 6a 3d 66 75 6e 63  y(t)};var j=func
31a80 74 69 6f 6e 28 6e 2c 70 2c 6f 29 7b 72 65 74 75  tion(n,p,o){retu
31a90 72 6e 20 65 28 43 72 79 70 74 6f 4a 53 2e 41 45  rn e(CryptoJS.AE
31aa0 53 2c 6e 2c 70 2c 6f 29 7d 3b 76 61 72 20 6d 3d  S,n,p,o)};var m=
31ab0 66 75 6e 63 74 69 6f 6e 28 6e 2c 70 2c 6f 29 7b  function(n,p,o){
31ac0 72 65 74 75 72 6e 20 65 28 43 72 79 70 74 6f 4a  return e(CryptoJ
31ad0 53 2e 54 72 69 70 6c 65 44 45 53 2c 6e 2c 70 2c  S.TripleDES,n,p,
31ae0 6f 29 7d 3b 76 61 72 20 65 3d 66 75 6e 63 74 69  o)};var e=functi
31af0 6f 6e 28 73 2c 78 2c 76 2c 70 29 7b 76 61 72 20  on(s,x,v,p){var 
31b00 72 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63 2e 48  r=CryptoJS.enc.H
31b10 65 78 2e 70 61 72 73 65 28 78 29 3b 76 61 72 20  ex.parse(x);var 
31b20 77 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63 2e 48  w=CryptoJS.enc.H
31b30 65 78 2e 70 61 72 73 65 28 76 29 3b 76 61 72 20  ex.parse(v);var 
31b40 6f 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63 2e 48  o=CryptoJS.enc.H
31b50 65 78 2e 70 61 72 73 65 28 70 29 3b 76 61 72 20  ex.parse(p);var 
31b60 6e 3d 7b 7d 3b 76 61 72 20 75 3d 73 2e 65 6e 63  n={};var u=s.enc
31b70 72 79 70 74 28 72 2c 77 2c 7b 69 76 3a 6f 7d 29  rypt(r,w,{iv:o})
31b80 3b 76 61 72 20 71 3d 43 72 79 70 74 6f 4a 53 2e  ;var q=CryptoJS.
31b90 65 6e 63 2e 48 65 78 2e 70 61 72 73 65 28 75 2e  enc.Hex.parse(u.
31ba0 74 6f 53 74 72 69 6e 67 28 29 29 3b 76 61 72 20  toString());var 
31bb0 74 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63 2e 42  t=CryptoJS.enc.B
31bc0 61 73 65 36 34 2e 73 74 72 69 6e 67 69 66 79 28  ase64.stringify(
31bd0 71 29 3b 72 65 74 75 72 6e 20 74 7d 3b 76 61 72  q);return t};var
31be0 20 67 3d 7b 22 41 45 53 2d 32 35 36 2d 43 42 43   g={"AES-256-CBC
31bf0 22 3a 7b 70 72 6f 63 3a 63 2c 65 70 72 6f 63 3a  ":{proc:c,eproc:
31c00 6a 2c 6b 65 79 6c 65 6e 3a 33 32 2c 69 76 6c 65  j,keylen:32,ivle
31c10 6e 3a 31 36 7d 2c 22 41 45 53 2d 31 39 32 2d 43  n:16},"AES-192-C
31c20 42 43 22 3a 7b 70 72 6f 63 3a 63 2c 65 70 72 6f  BC":{proc:c,epro
31c30 63 3a 6a 2c 6b 65 79 6c 65 6e 3a 32 34 2c 69 76  c:j,keylen:24,iv
31c40 6c 65 6e 3a 31 36 7d 2c 22 41 45 53 2d 31 32 38  len:16},"AES-128
31c50 2d 43 42 43 22 3a 7b 70 72 6f 63 3a 63 2c 65 70  -CBC":{proc:c,ep
31c60 72 6f 63 3a 6a 2c 6b 65 79 6c 65 6e 3a 31 36 2c  roc:j,keylen:16,
31c70 69 76 6c 65 6e 3a 31 36 7d 2c 22 44 45 53 2d 45  ivlen:16},"DES-E
31c80 44 45 33 2d 43 42 43 22 3a 7b 70 72 6f 63 3a 64  DE3-CBC":{proc:d
31c90 2c 65 70 72 6f 63 3a 6d 2c 6b 65 79 6c 65 6e 3a  ,eproc:m,keylen:
31ca0 32 34 2c 69 76 6c 65 6e 3a 38 7d 7d 3b 76 61 72  24,ivlen:8}};var
31cb0 20 62 3d 66 75 6e 63 74 69 6f 6e 28 6e 29 7b 72   b=function(n){r
31cc0 65 74 75 72 6e 20 67 5b 6e 5d 5b 22 70 72 6f 63  eturn g[n]["proc
31cd0 22 5d 7d 3b 76 61 72 20 6b 3d 66 75 6e 63 74 69  "]};var k=functi
31ce0 6f 6e 28 6e 29 7b 76 61 72 20 70 3d 43 72 79 70  on(n){var p=Cryp
31cf0 74 6f 4a 53 2e 6c 69 62 2e 57 6f 72 64 41 72 72  toJS.lib.WordArr
31d00 61 79 2e 72 61 6e 64 6f 6d 28 6e 29 3b 76 61 72  ay.random(n);var
31d10 20 6f 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63 2e   o=CryptoJS.enc.
31d20 48 65 78 2e 73 74 72 69 6e 67 69 66 79 28 70 29  Hex.stringify(p)
31d30 3b 72 65 74 75 72 6e 20 6f 7d 3b 76 61 72 20 6c  ;return o};var l
31d40 3d 66 75 6e 63 74 69 6f 6e 28 71 29 7b 76 61 72  =function(q){var
31d50 20 72 3d 7b 7d 3b 69 66 28 71 2e 6d 61 74 63 68   r={};if(q.match
31d60 28 6e 65 77 20 52 65 67 45 78 70 28 22 44 45 4b  (new RegExp("DEK
31d70 2d 49 6e 66 6f 3a 20 28 5b 5e 2c 5d 2b 29 2c 28  -Info: ([^,]+),(
31d80 5b 30 2d 39 41 2d 46 61 2d 66 5d 2b 29 22 2c 22  [0-9A-Fa-f]+)","
31d90 6d 22 29 29 29 7b 72 2e 63 69 70 68 65 72 3d 52  m"))){r.cipher=R
31da0 65 67 45 78 70 2e 24 31 3b 72 2e 69 76 73 61 6c  egExp.$1;r.ivsal
31db0 74 3d 52 65 67 45 78 70 2e 24 32 7d 69 66 28 71  t=RegExp.$2}if(q
31dc0 2e 6d 61 74 63 68 28 6e 65 77 20 52 65 67 45 78  .match(new RegEx
31dd0 70 28 22 2d 2d 2d 2d 2d 42 45 47 49 4e 20 28 5b  p("-----BEGIN ([
31de0 41 2d 5a 5d 2b 29 20 50 52 49 56 41 54 45 20 4b  A-Z]+) PRIVATE K
31df0 45 59 2d 2d 2d 2d 2d 22 29 29 29 7b 72 2e 74 79  EY-----"))){r.ty
31e00 70 65 3d 52 65 67 45 78 70 2e 24 31 7d 76 61 72  pe=RegExp.$1}var
31e10 20 70 3d 2d 31 3b 76 61 72 20 74 3d 30 3b 69 66   p=-1;var t=0;if
31e20 28 71 2e 69 6e 64 65 78 4f 66 28 22 5c 72 5c 6e  (q.indexOf("\r\n
31e30 5c 72 5c 6e 22 29 21 3d 2d 31 29 7b 70 3d 71 2e  \r\n")!=-1){p=q.
31e40 69 6e 64 65 78 4f 66 28 22 5c 72 5c 6e 5c 72 5c  indexOf("\r\n\r\
31e50 6e 22 29 3b 74 3d 32 7d 69 66 28 71 2e 69 6e 64  n");t=2}if(q.ind
31e60 65 78 4f 66 28 22 5c 6e 5c 6e 22 29 21 3d 2d 31  exOf("\n\n")!=-1
31e70 29 7b 70 3d 71 2e 69 6e 64 65 78 4f 66 28 22 5c  ){p=q.indexOf("\
31e80 6e 5c 6e 22 29 3b 74 3d 31 7d 76 61 72 20 6f 3d  n\n");t=1}var o=
31e90 71 2e 69 6e 64 65 78 4f 66 28 22 2d 2d 2d 2d 2d  q.indexOf("-----
31ea0 45 4e 44 22 29 3b 69 66 28 70 21 3d 2d 31 26 26  END");if(p!=-1&&
31eb0 6f 21 3d 2d 31 29 7b 76 61 72 20 6e 3d 71 2e 73  o!=-1){var n=q.s
31ec0 75 62 73 74 72 69 6e 67 28 70 2b 74 2a 32 2c 6f  ubstring(p+t*2,o
31ed0 2d 74 29 3b 6e 3d 6e 2e 72 65 70 6c 61 63 65 28  -t);n=n.replace(
31ee0 2f 5c 73 2b 2f 67 2c 22 22 29 3b 72 2e 64 61 74  /\s+/g,"");r.dat
31ef0 61 3d 6e 7d 72 65 74 75 72 6e 20 72 7d 3b 76 61  a=n}return r};va
31f00 72 20 68 3d 66 75 6e 63 74 69 6f 6e 28 6f 2c 77  r h=function(o,w
31f10 2c 6e 29 7b 76 61 72 20 74 3d 6e 2e 73 75 62 73  ,n){var t=n.subs
31f20 74 72 69 6e 67 28 30 2c 31 36 29 3b 76 61 72 20  tring(0,16);var 
31f30 72 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63 2e 48  r=CryptoJS.enc.H
31f40 65 78 2e 70 61 72 73 65 28 74 29 3b 76 61 72 20  ex.parse(t);var 
31f50 70 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63 2e 55  p=CryptoJS.enc.U
31f60 74 66 38 2e 70 61 72 73 65 28 77 29 3b 76 61 72  tf8.parse(w);var
31f70 20 73 3d 67 5b 6f 5d 5b 22 6b 65 79 6c 65 6e 22   s=g[o]["keylen"
31f80 5d 2b 67 5b 6f 5d 5b 22 69 76 6c 65 6e 22 5d 3b  ]+g[o]["ivlen"];
31f90 76 61 72 20 76 3d 22 22 3b 76 61 72 20 75 3d 6e  var v="";var u=n
31fa0 75 6c 6c 3b 66 6f 72 28 3b 3b 29 7b 76 61 72 20  ull;for(;;){var 
31fb0 71 3d 43 72 79 70 74 6f 4a 53 2e 61 6c 67 6f 2e  q=CryptoJS.algo.
31fc0 4d 44 35 2e 63 72 65 61 74 65 28 29 3b 69 66 28  MD5.create();if(
31fd0 75 21 3d 6e 75 6c 6c 29 7b 71 2e 75 70 64 61 74  u!=null){q.updat
31fe0 65 28 75 29 7d 71 2e 75 70 64 61 74 65 28 70 29  e(u)}q.update(p)
31ff0 3b 71 2e 75 70 64 61 74 65 28 72 29 3b 75 3d 71  ;q.update(r);u=q
32000 2e 66 69 6e 61 6c 69 7a 65 28 29 3b 76 3d 76 2b  .finalize();v=v+
32010 43 72 79 70 74 6f 4a 53 2e 65 6e 63 2e 48 65 78  CryptoJS.enc.Hex
32020 2e 73 74 72 69 6e 67 69 66 79 28 75 29 3b 69 66  .stringify(u);if
32030 28 76 2e 6c 65 6e 67 74 68 3e 3d 73 2a 32 29 7b  (v.length>=s*2){
32040 62 72 65 61 6b 7d 7d 76 61 72 20 78 3d 7b 7d 3b  break}}var x={};
32050 78 2e 6b 65 79 68 65 78 3d 76 2e 73 75 62 73 74  x.keyhex=v.subst
32060 72 28 30 2c 67 5b 6f 5d 5b 22 6b 65 79 6c 65 6e  r(0,g[o]["keylen
32070 22 5d 2a 32 29 3b 78 2e 69 76 68 65 78 3d 76 2e  "]*2);x.ivhex=v.
32080 73 75 62 73 74 72 28 67 5b 6f 5d 5b 22 6b 65 79  substr(g[o]["key
32090 6c 65 6e 22 5d 2a 32 2c 67 5b 6f 5d 5b 22 69 76  len"]*2,g[o]["iv
320a0 6c 65 6e 22 5d 2a 32 29 3b 72 65 74 75 72 6e 20  len"]*2);return 
320b0 78 7d 3b 76 61 72 20 61 3d 66 75 6e 63 74 69 6f  x};var a=functio
320c0 6e 28 6e 2c 74 2c 70 2c 75 29 7b 76 61 72 20 71  n(n,t,p,u){var q
320d0 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63 2e 42 61  =CryptoJS.enc.Ba
320e0 73 65 36 34 2e 70 61 72 73 65 28 6e 29 3b 76 61  se64.parse(n);va
320f0 72 20 6f 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63  r o=CryptoJS.enc
32100 2e 48 65 78 2e 73 74 72 69 6e 67 69 66 79 28 71  .Hex.stringify(q
32110 29 3b 76 61 72 20 73 3d 67 5b 74 5d 5b 22 70 72  );var s=g[t]["pr
32120 6f 63 22 5d 3b 76 61 72 20 72 3d 73 28 6f 2c 70  oc"];var r=s(o,p
32130 2c 75 29 3b 72 65 74 75 72 6e 20 72 7d 3b 76 61  ,u);return r};va
32140 72 20 66 3d 66 75 6e 63 74 69 6f 6e 28 6e 2c 71  r f=function(n,q
32150 2c 6f 2c 73 29 7b 76 61 72 20 70 3d 67 5b 71 5d  ,o,s){var p=g[q]
32160 5b 22 65 70 72 6f 63 22 5d 3b 76 61 72 20 72 3d  ["eproc"];var r=
32170 70 28 6e 2c 6f 2c 73 29 3b 72 65 74 75 72 6e 20  p(n,o,s);return 
32180 72 7d 3b 72 65 74 75 72 6e 7b 76 65 72 73 69 6f  r};return{versio
32190 6e 3a 22 31 2e 30 2e 35 22 2c 67 65 74 48 65 78  n:"1.0.5",getHex
321a0 46 72 6f 6d 50 45 4d 3a 66 75 6e 63 74 69 6f 6e  FromPEM:function
321b0 28 6f 2c 72 29 7b 76 61 72 20 70 3d 6f 3b 69 66  (o,r){var p=o;if
321c0 28 70 2e 69 6e 64 65 78 4f 66 28 22 42 45 47 49  (p.indexOf("BEGI
321d0 4e 20 22 2b 72 29 3d 3d 2d 31 29 7b 74 68 72 6f  N "+r)==-1){thro
321e0 77 22 63 61 6e 27 74 20 66 69 6e 64 20 50 45 4d  w"can't find PEM
321f0 20 68 65 61 64 65 72 3a 20 22 2b 72 7d 70 3d 70   header: "+r}p=p
32200 2e 72 65 70 6c 61 63 65 28 22 2d 2d 2d 2d 2d 42  .replace("-----B
32210 45 47 49 4e 20 22 2b 72 2b 22 2d 2d 2d 2d 2d 22  EGIN "+r+"-----"
32220 2c 22 22 29 3b 70 3d 70 2e 72 65 70 6c 61 63 65  ,"");p=p.replace
32230 28 22 2d 2d 2d 2d 2d 45 4e 44 20 22 2b 72 2b 22  ("-----END "+r+"
32240 2d 2d 2d 2d 2d 22 2c 22 22 29 3b 76 61 72 20 71  -----","");var q
32250 3d 70 2e 72 65 70 6c 61 63 65 28 2f 5c 73 2b 2f  =p.replace(/\s+/
32260 67 2c 22 22 29 3b 76 61 72 20 6e 3d 62 36 34 74  g,"");var n=b64t
32270 6f 68 65 78 28 71 29 3b 72 65 74 75 72 6e 20 6e  ohex(q);return n
32280 7d 2c 67 65 74 44 65 63 72 79 70 74 65 64 4b 65  },getDecryptedKe
32290 79 48 65 78 42 79 4b 65 79 49 56 3a 66 75 6e 63  yHexByKeyIV:func
322a0 74 69 6f 6e 28 6f 2c 72 2c 71 2c 70 29 7b 76 61  tion(o,r,q,p){va
322b0 72 20 6e 3d 62 28 72 29 3b 72 65 74 75 72 6e 20  r n=b(r);return 
322c0 6e 28 6f 2c 71 2c 70 29 7d 2c 70 61 72 73 65 50  n(o,q,p)},parseP
322d0 4b 43 53 35 50 45 4d 3a 66 75 6e 63 74 69 6f 6e  KCS5PEM:function
322e0 28 6e 29 7b 72 65 74 75 72 6e 20 6c 28 6e 29 7d  (n){return l(n)}
322f0 2c 67 65 74 4b 65 79 41 6e 64 55 6e 75 73 65 64  ,getKeyAndUnused
32300 49 76 42 79 50 61 73 73 63 6f 64 65 41 6e 64 49  IvByPasscodeAndI
32310 76 73 61 6c 74 3a 66 75 6e 63 74 69 6f 6e 28 6f  vsalt:function(o
32320 2c 6e 2c 70 29 7b 72 65 74 75 72 6e 20 68 28 6f  ,n,p){return h(o
32330 2c 6e 2c 70 29 7d 2c 64 65 63 72 79 70 74 4b 65  ,n,p)},decryptKe
32340 79 42 36 34 3a 66 75 6e 63 74 69 6f 6e 28 6e 2c  yB64:function(n,
32350 70 2c 6f 2c 71 29 7b 72 65 74 75 72 6e 20 61 28  p,o,q){return a(
32360 6e 2c 70 2c 6f 2c 71 29 7d 2c 67 65 74 44 65 63  n,p,o,q)},getDec
32370 72 79 70 74 65 64 4b 65 79 48 65 78 3a 66 75 6e  ryptedKeyHex:fun
32380 63 74 69 6f 6e 28 77 2c 76 29 7b 76 61 72 20 6f  ction(w,v){var o
32390 3d 6c 28 77 29 3b 76 61 72 20 72 3d 6f 2e 74 79  =l(w);var r=o.ty
323a0 70 65 3b 76 61 72 20 70 3d 6f 2e 63 69 70 68 65  pe;var p=o.ciphe
323b0 72 3b 76 61 72 20 6e 3d 6f 2e 69 76 73 61 6c 74  r;var n=o.ivsalt
323c0 3b 76 61 72 20 71 3d 6f 2e 64 61 74 61 3b 76 61  ;var q=o.data;va
323d0 72 20 75 3d 68 28 70 2c 76 2c 6e 29 3b 76 61 72  r u=h(p,v,n);var
323e0 20 74 3d 75 2e 6b 65 79 68 65 78 3b 76 61 72 20   t=u.keyhex;var 
323f0 73 3d 61 28 71 2c 70 2c 74 2c 6e 29 3b 72 65 74  s=a(q,p,t,n);ret
32400 75 72 6e 20 73 7d 2c 67 65 74 52 53 41 4b 65 79  urn s},getRSAKey
32410 46 72 6f 6d 45 6e 63 72 79 70 74 65 64 50 4b 43  FromEncryptedPKC
32420 53 35 50 45 4d 3a 66 75 6e 63 74 69 6f 6e 28 70  S5PEM:function(p
32430 2c 6f 29 7b 76 61 72 20 71 3d 74 68 69 73 2e 67  ,o){var q=this.g
32440 65 74 44 65 63 72 79 70 74 65 64 4b 65 79 48 65  etDecryptedKeyHe
32450 78 28 70 2c 6f 29 3b 76 61 72 20 6e 3d 6e 65 77  x(p,o);var n=new
32460 20 52 53 41 4b 65 79 28 29 3b 6e 2e 72 65 61 64   RSAKey();n.read
32470 50 72 69 76 61 74 65 4b 65 79 46 72 6f 6d 41 53  PrivateKeyFromAS
32480 4e 31 48 65 78 53 74 72 69 6e 67 28 71 29 3b 72  N1HexString(q);r
32490 65 74 75 72 6e 20 6e 7d 2c 67 65 74 45 72 79 70  eturn n},getEryp
324a0 74 65 64 50 4b 43 53 35 50 45 4d 46 72 6f 6d 50  tedPKCS5PEMFromP
324b0 72 76 4b 65 79 48 65 78 3a 66 75 6e 63 74 69 6f  rvKeyHex:functio
324c0 6e 28 71 2c 78 2c 72 2c 70 29 7b 76 61 72 20 6e  n(q,x,r,p){var n
324d0 3d 22 22 3b 69 66 28 74 79 70 65 6f 66 20 72 3d  ="";if(typeof r=
324e0 3d 22 75 6e 64 65 66 69 6e 65 64 22 7c 7c 72 3d  ="undefined"||r=
324f0 3d 6e 75 6c 6c 29 7b 72 3d 22 41 45 53 2d 32 35  =null){r="AES-25
32500 36 2d 43 42 43 22 7d 69 66 28 74 79 70 65 6f 66  6-CBC"}if(typeof
32510 20 67 5b 72 5d 3d 3d 22 75 6e 64 65 66 69 6e 65   g[r]=="undefine
32520 64 22 29 7b 74 68 72 6f 77 22 50 4b 43 53 35 50  d"){throw"PKCS5P
32530 4b 45 59 20 75 6e 73 75 70 70 6f 72 74 65 64 20  KEY unsupported 
32540 61 6c 67 6f 72 69 74 68 6d 3a 20 22 2b 72 7d 69  algorithm: "+r}i
32550 66 28 74 79 70 65 6f 66 20 70 3d 3d 22 75 6e 64  f(typeof p=="und
32560 65 66 69 6e 65 64 22 7c 7c 70 3d 3d 6e 75 6c 6c  efined"||p==null
32570 29 7b 76 61 72 20 74 3d 67 5b 72 5d 5b 22 69 76  ){var t=g[r]["iv
32580 6c 65 6e 22 5d 3b 76 61 72 20 73 3d 6b 28 74 29  len"];var s=k(t)
32590 3b 70 3d 73 2e 74 6f 55 70 70 65 72 43 61 73 65  ;p=s.toUpperCase
325a0 28 29 7d 76 61 72 20 77 3d 68 28 72 2c 78 2c 70  ()}var w=h(r,x,p
325b0 29 3b 76 61 72 20 76 3d 77 2e 6b 65 79 68 65 78  );var v=w.keyhex
325c0 3b 76 61 72 20 75 3d 66 28 71 2c 72 2c 76 2c 70  ;var u=f(q,r,v,p
325d0 29 3b 76 61 72 20 6f 3d 75 2e 72 65 70 6c 61 63  );var o=u.replac
325e0 65 28 2f 28 2e 7b 36 34 7d 29 2f 67 2c 22 24 31  e(/(.{64})/g,"$1
325f0 5c 72 5c 6e 22 29 3b 76 61 72 20 6e 3d 22 2d 2d  \r\n");var n="--
32600 2d 2d 2d 42 45 47 49 4e 20 52 53 41 20 50 52 49  ---BEGIN RSA PRI
32610 56 41 54 45 20 4b 45 59 2d 2d 2d 2d 2d 5c 72 5c  VATE KEY-----\r\
32620 6e 22 3b 6e 2b 3d 22 50 72 6f 63 2d 54 79 70 65  n";n+="Proc-Type
32630 3a 20 34 2c 45 4e 43 52 59 50 54 45 44 5c 72 5c  : 4,ENCRYPTED\r\
32640 6e 22 3b 6e 2b 3d 22 44 45 4b 2d 49 6e 66 6f 3a  n";n+="DEK-Info:
32650 20 22 2b 72 2b 22 2c 22 2b 70 2b 22 5c 72 5c 6e   "+r+","+p+"\r\n
32660 22 3b 6e 2b 3d 22 5c 72 5c 6e 22 3b 6e 2b 3d 6f  ";n+="\r\n";n+=o
32670 3b 6e 2b 3d 22 5c 72 5c 6e 2d 2d 2d 2d 2d 45 4e  ;n+="\r\n-----EN
32680 44 20 52 53 41 20 50 52 49 56 41 54 45 20 4b 45  D RSA PRIVATE KE
32690 59 2d 2d 2d 2d 2d 5c 72 5c 6e 22 3b 72 65 74 75  Y-----\r\n";retu
326a0 72 6e 20 6e 7d 2c 67 65 74 45 72 79 70 74 65 64  rn n},getErypted
326b0 50 4b 43 53 35 50 45 4d 46 72 6f 6d 52 53 41 4b  PKCS5PEMFromRSAK
326c0 65 79 3a 66 75 6e 63 74 69 6f 6e 28 43 2c 44 2c  ey:function(C,D,
326d0 6f 2c 73 29 7b 76 61 72 20 41 3d 6e 65 77 20 4b  o,s){var A=new K
326e0 4a 55 52 2e 61 73 6e 31 2e 44 45 52 49 6e 74 65  JUR.asn1.DERInte
326f0 67 65 72 28 7b 22 69 6e 74 22 3a 30 7d 29 3b 76  ger({"int":0});v
32700 61 72 20 76 3d 6e 65 77 20 4b 4a 55 52 2e 61 73  ar v=new KJUR.as
32710 6e 31 2e 44 45 52 49 6e 74 65 67 65 72 28 7b 62  n1.DERInteger({b
32720 69 67 69 6e 74 3a 43 2e 6e 7d 29 3b 76 61 72 20  igint:C.n});var 
32730 7a 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e  z=new KJUR.asn1.
32740 44 45 52 49 6e 74 65 67 65 72 28 7b 22 69 6e 74  DERInteger({"int
32750 22 3a 43 2e 65 7d 29 3b 76 61 72 20 42 3d 6e 65  ":C.e});var B=ne
32760 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 49  w KJUR.asn1.DERI
32770 6e 74 65 67 65 72 28 7b 62 69 67 69 6e 74 3a 43  nteger({bigint:C
32780 2e 64 7d 29 3b 76 61 72 20 74 3d 6e 65 77 20 4b  .d});var t=new K
32790 4a 55 52 2e 61 73 6e 31 2e 44 45 52 49 6e 74 65  JUR.asn1.DERInte
327a0 67 65 72 28 7b 62 69 67 69 6e 74 3a 43 2e 70 7d  ger({bigint:C.p}
327b0 29 3b 76 61 72 20 72 3d 6e 65 77 20 4b 4a 55 52  );var r=new KJUR
327c0 2e 61 73 6e 31 2e 44 45 52 49 6e 74 65 67 65 72  .asn1.DERInteger
327d0 28 7b 62 69 67 69 6e 74 3a 43 2e 71 7d 29 3b 76  ({bigint:C.q});v
327e0 61 72 20 79 3d 6e 65 77 20 4b 4a 55 52 2e 61 73  ar y=new KJUR.as
327f0 6e 31 2e 44 45 52 49 6e 74 65 67 65 72 28 7b 62  n1.DERInteger({b
32800 69 67 69 6e 74 3a 43 2e 64 6d 70 31 7d 29 3b 76  igint:C.dmp1});v
32810 61 72 20 75 3d 6e 65 77 20 4b 4a 55 52 2e 61 73  ar u=new KJUR.as
32820 6e 31 2e 44 45 52 49 6e 74 65 67 65 72 28 7b 62  n1.DERInteger({b
32830 69 67 69 6e 74 3a 43 2e 64 6d 71 31 7d 29 3b 76  igint:C.dmq1});v
32840 61 72 20 78 3d 6e 65 77 20 4b 4a 55 52 2e 61 73  ar x=new KJUR.as
32850 6e 31 2e 44 45 52 49 6e 74 65 67 65 72 28 7b 62  n1.DERInteger({b
32860 69 67 69 6e 74 3a 43 2e 63 6f 65 66 66 7d 29 3b  igint:C.coeff});
32870 76 61 72 20 45 3d 6e 65 77 20 4b 4a 55 52 2e 61  var E=new KJUR.a
32880 73 6e 31 2e 44 45 52 53 65 71 75 65 6e 63 65 28  sn1.DERSequence(
32890 7b 61 72 72 61 79 3a 5b 41 2c 76 2c 7a 2c 42 2c  {array:[A,v,z,B,
328a0 74 2c 72 2c 79 2c 75 2c 78 5d 7d 29 3b 76 61 72  t,r,y,u,x]});var
328b0 20 77 3d 45 2e 67 65 74 45 6e 63 6f 64 65 64 48   w=E.getEncodedH
328c0 65 78 28 29 3b 72 65 74 75 72 6e 20 74 68 69 73  ex();return this
328d0 2e 67 65 74 45 72 79 70 74 65 64 50 4b 43 53 35  .getEryptedPKCS5
328e0 50 45 4d 46 72 6f 6d 50 72 76 4b 65 79 48 65 78  PEMFromPrvKeyHex
328f0 28 77 2c 44 2c 6f 2c 73 29 7d 2c 6e 65 77 45 6e  (w,D,o,s)},newEn
32900 63 72 79 70 74 65 64 50 4b 43 53 35 50 45 4d 3a  cryptedPKCS5PEM:
32910 66 75 6e 63 74 69 6f 6e 28 6e 2c 6f 2c 72 2c 73  function(n,o,r,s
32920 29 7b 69 66 28 74 79 70 65 6f 66 20 6f 3d 3d 22  ){if(typeof o=="
32930 75 6e 64 65 66 69 6e 65 64 22 7c 7c 6f 3d 3d 6e  undefined"||o==n
32940 75 6c 6c 29 7b 6f 3d 31 30 32 34 7d 69 66 28 74  ull){o=1024}if(t
32950 79 70 65 6f 66 20 72 3d 3d 22 75 6e 64 65 66 69  ypeof r=="undefi
32960 6e 65 64 22 7c 7c 72 3d 3d 6e 75 6c 6c 29 7b 72  ned"||r==null){r
32970 3d 22 31 30 30 30 31 22 7d 76 61 72 20 70 3d 6e  ="10001"}var p=n
32980 65 77 20 52 53 41 4b 65 79 28 29 3b 70 2e 67 65  ew RSAKey();p.ge
32990 6e 65 72 61 74 65 28 6f 2c 72 29 3b 76 61 72 20  nerate(o,r);var 
329a0 71 3d 6e 75 6c 6c 3b 69 66 28 74 79 70 65 6f 66  q=null;if(typeof
329b0 20 73 3d 3d 22 75 6e 64 65 66 69 6e 65 64 22 7c   s=="undefined"|
329c0 7c 73 3d 3d 6e 75 6c 6c 29 7b 71 3d 74 68 69 73  |s==null){q=this
329d0 2e 67 65 74 45 6e 63 72 79 70 74 65 64 50 4b 43  .getEncryptedPKC
329e0 53 35 50 45 4d 46 72 6f 6d 52 53 41 4b 65 79 28  S5PEMFromRSAKey(
329f0 70 6b 65 79 2c 6e 29 7d 65 6c 73 65 7b 71 3d 74  pkey,n)}else{q=t
32a00 68 69 73 2e 67 65 74 45 6e 63 72 79 70 74 65 64  his.getEncrypted
32a10 50 4b 43 53 35 50 45 4d 46 72 6f 6d 52 53 41 4b  PKCS5PEMFromRSAK
32a20 65 79 28 70 6b 65 79 2c 6e 2c 73 29 7d 72 65 74  ey(pkey,n,s)}ret
32a30 75 72 6e 20 71 7d 2c 67 65 74 52 53 41 4b 65 79  urn q},getRSAKey
32a40 46 72 6f 6d 50 6c 61 69 6e 50 4b 43 53 38 50 45  FromPlainPKCS8PE
32a50 4d 3a 66 75 6e 63 74 69 6f 6e 28 70 29 7b 69 66  M:function(p){if
32a60 28 70 2e 6d 61 74 63 68 28 2f 45 4e 43 52 59 50  (p.match(/ENCRYP
32a70 54 45 44 2f 29 29 7b 74 68 72 6f 77 22 70 65 6d  TED/)){throw"pem
32a80 20 73 68 61 6c 6c 20 62 65 20 6e 6f 74 20 45 4e   shall be not EN
32a90 43 52 59 50 54 45 44 22 7d 76 61 72 20 6f 3d 74  CRYPTED"}var o=t
32aa0 68 69 73 2e 67 65 74 48 65 78 46 72 6f 6d 50 45  his.getHexFromPE
32ab0 4d 28 70 2c 22 50 52 49 56 41 54 45 20 4b 45 59  M(p,"PRIVATE KEY
32ac0 22 29 3b 76 61 72 20 6e 3d 74 68 69 73 2e 67 65  ");var n=this.ge
32ad0 74 52 53 41 4b 65 79 46 72 6f 6d 50 6c 61 69 6e  tRSAKeyFromPlain
32ae0 50 4b 43 53 38 48 65 78 28 6f 29 3b 72 65 74 75  PKCS8Hex(o);retu
32af0 72 6e 20 6e 7d 2c 67 65 74 52 53 41 4b 65 79 46  rn n},getRSAKeyF
32b00 72 6f 6d 50 6c 61 69 6e 50 4b 43 53 38 48 65 78  romPlainPKCS8Hex
32b10 3a 66 75 6e 63 74 69 6f 6e 28 71 29 7b 76 61 72  :function(q){var
32b20 20 70 3d 41 53 4e 31 48 45 58 2e 67 65 74 50 6f   p=ASN1HEX.getPo
32b30 73 41 72 72 61 79 4f 66 43 68 69 6c 64 72 65 6e  sArrayOfChildren
32b40 5f 41 74 4f 62 6a 28 71 2c 30 29 3b 69 66 28 70  _AtObj(q,0);if(p
32b50 2e 6c 65 6e 67 74 68 21 3d 33 29 7b 74 68 72 6f  .length!=3){thro
32b60 77 22 6f 75 74 65 72 20 44 45 52 53 65 71 75 65  w"outer DERSeque
32b70 6e 63 65 20 73 68 61 6c 6c 20 68 61 76 65 20 33  nce shall have 3
32b80 20 65 6c 65 6d 65 6e 74 73 3a 20 22 2b 70 2e 6c   elements: "+p.l
32b90 65 6e 67 74 68 7d 76 61 72 20 6f 3d 41 53 4e 31  ength}var o=ASN1
32ba0 48 45 58 2e 67 65 74 48 65 78 4f 66 54 4c 56 5f  HEX.getHexOfTLV_
32bb0 41 74 4f 62 6a 28 71 2c 70 5b 31 5d 29 3b 69 66  AtObj(q,p[1]);if
32bc0 28 6f 21 3d 22 33 30 30 64 30 36 30 39 32 61 38  (o!="300d06092a8
32bd0 36 34 38 38 36 66 37 30 64 30 31 30 31 30 31 30  64886f70d0101010
32be0 35 30 30 22 29 7b 74 68 72 6f 77 22 50 4b 43 53  500"){throw"PKCS
32bf0 38 20 41 6c 67 6f 72 69 74 68 6d 49 64 65 6e 74  8 AlgorithmIdent
32c00 69 66 69 65 72 20 69 73 20 6e 6f 74 20 72 73 61  ifier is not rsa
32c10 45 6e 63 3a 20 22 2b 6f 7d 76 61 72 20 6f 3d 41  Enc: "+o}var o=A
32c20 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66 54  SN1HEX.getHexOfT
32c30 4c 56 5f 41 74 4f 62 6a 28 71 2c 70 5b 31 5d 29  LV_AtObj(q,p[1])
32c40 3b 76 61 72 20 72 3d 41 53 4e 31 48 45 58 2e 67  ;var r=ASN1HEX.g
32c50 65 74 48 65 78 4f 66 54 4c 56 5f 41 74 4f 62 6a  etHexOfTLV_AtObj
32c60 28 71 2c 70 5b 32 5d 29 3b 76 61 72 20 73 3d 41  (q,p[2]);var s=A
32c70 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66 56  SN1HEX.getHexOfV
32c80 5f 41 74 4f 62 6a 28 72 2c 30 29 3b 76 61 72 20  _AtObj(r,0);var 
32c90 6e 3d 6e 65 77 20 52 53 41 4b 65 79 28 29 3b 6e  n=new RSAKey();n
32ca0 2e 72 65 61 64 50 72 69 76 61 74 65 4b 65 79 46  .readPrivateKeyF
32cb0 72 6f 6d 41 53 4e 31 48 65 78 53 74 72 69 6e 67  romASN1HexString
32cc0 28 73 29 3b 72 65 74 75 72 6e 20 6e 7d 2c 70 61  (s);return n},pa
32cd0 72 73 65 48 65 78 4f 66 45 6e 63 72 79 70 74 65  rseHexOfEncrypte
32ce0 64 50 4b 43 53 38 3a 66 75 6e 63 74 69 6f 6e 28  dPKCS8:function(
32cf0 75 29 7b 76 61 72 20 71 3d 7b 7d 3b 76 61 72 20  u){var q={};var 
32d00 70 3d 41 53 4e 31 48 45 58 2e 67 65 74 50 6f 73  p=ASN1HEX.getPos
32d10 41 72 72 61 79 4f 66 43 68 69 6c 64 72 65 6e 5f  ArrayOfChildren_
32d20 41 74 4f 62 6a 28 75 2c 30 29 3b 69 66 28 70 2e  AtObj(u,0);if(p.
32d30 6c 65 6e 67 74 68 21 3d 32 29 7b 74 68 72 6f 77  length!=2){throw
32d40 22 6d 61 6c 66 6f 72 6d 65 64 20 66 6f 72 6d 61  "malformed forma
32d50 74 3a 20 53 45 51 55 45 4e 43 45 28 30 29 2e 69  t: SEQUENCE(0).i
32d60 74 65 6d 73 20 21 3d 20 32 3a 20 22 2b 70 2e 6c  tems != 2: "+p.l
32d70 65 6e 67 74 68 7d 71 2e 63 69 70 68 65 72 74 65  ength}q.cipherte
32d80 78 74 3d 41 53 4e 31 48 45 58 2e 67 65 74 48 65  xt=ASN1HEX.getHe
32d90 78 4f 66 56 5f 41 74 4f 62 6a 28 75 2c 70 5b 31  xOfV_AtObj(u,p[1
32da0 5d 29 3b 76 61 72 20 77 3d 41 53 4e 31 48 45 58  ]);var w=ASN1HEX
32db0 2e 67 65 74 50 6f 73 41 72 72 61 79 4f 66 43 68  .getPosArrayOfCh
32dc0 69 6c 64 72 65 6e 5f 41 74 4f 62 6a 28 75 2c 70  ildren_AtObj(u,p
32dd0 5b 30 5d 29 3b 69 66 28 77 2e 6c 65 6e 67 74 68  [0]);if(w.length
32de0 21 3d 32 29 7b 74 68 72 6f 77 22 6d 61 6c 66 6f  !=2){throw"malfo
32df0 72 6d 65 64 20 66 6f 72 6d 61 74 3a 20 53 45 51  rmed format: SEQ
32e00 55 45 4e 43 45 28 30 2e 30 29 2e 69 74 65 6d 73  UENCE(0.0).items
32e10 20 21 3d 20 32 3a 20 22 2b 77 2e 6c 65 6e 67 74   != 2: "+w.lengt
32e20 68 7d 69 66 28 41 53 4e 31 48 45 58 2e 67 65 74  h}if(ASN1HEX.get
32e30 48 65 78 4f 66 56 5f 41 74 4f 62 6a 28 75 2c 77  HexOfV_AtObj(u,w
32e40 5b 30 5d 29 21 3d 22 32 61 38 36 34 38 38 36 66  [0])!="2a864886f
32e50 37 30 64 30 31 30 35 30 64 22 29 7b 74 68 72 6f  70d01050d"){thro
32e60 77 22 74 68 69 73 20 6f 6e 6c 79 20 73 75 70 70  w"this only supp
32e70 6f 72 74 73 20 70 6b 63 73 35 50 42 45 53 32 22  orts pkcs5PBES2"
32e80 7d 76 61 72 20 6e 3d 41 53 4e 31 48 45 58 2e 67  }var n=ASN1HEX.g
32e90 65 74 50 6f 73 41 72 72 61 79 4f 66 43 68 69 6c  etPosArrayOfChil
32ea0 64 72 65 6e 5f 41 74 4f 62 6a 28 75 2c 77 5b 31  dren_AtObj(u,w[1
32eb0 5d 29 3b 69 66 28 77 2e 6c 65 6e 67 74 68 21 3d  ]);if(w.length!=
32ec0 32 29 7b 74 68 72 6f 77 22 6d 61 6c 66 6f 72 6d  2){throw"malform
32ed0 65 64 20 66 6f 72 6d 61 74 3a 20 53 45 51 55 45  ed format: SEQUE
32ee0 4e 43 45 28 30 2e 30 2e 31 29 2e 69 74 65 6d 73  NCE(0.0.1).items
32ef0 20 21 3d 20 32 3a 20 22 2b 6e 2e 6c 65 6e 67 74   != 2: "+n.lengt
32f00 68 7d 76 61 72 20 6f 3d 41 53 4e 31 48 45 58 2e  h}var o=ASN1HEX.
32f10 67 65 74 50 6f 73 41 72 72 61 79 4f 66 43 68 69  getPosArrayOfChi
32f20 6c 64 72 65 6e 5f 41 74 4f 62 6a 28 75 2c 6e 5b  ldren_AtObj(u,n[
32f30 31 5d 29 3b 69 66 28 6f 2e 6c 65 6e 67 74 68 21  1]);if(o.length!
32f40 3d 32 29 7b 74 68 72 6f 77 22 6d 61 6c 66 6f 72  =2){throw"malfor
32f50 6d 65 64 20 66 6f 72 6d 61 74 3a 20 53 45 51 55  med format: SEQU
32f60 45 4e 43 45 28 30 2e 30 2e 31 2e 31 29 2e 69 74  ENCE(0.0.1.1).it
32f70 65 6d 73 20 21 3d 20 32 3a 20 22 2b 6f 2e 6c 65  ems != 2: "+o.le
32f80 6e 67 74 68 7d 69 66 28 41 53 4e 31 48 45 58 2e  ngth}if(ASN1HEX.
32f90 67 65 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a 28  getHexOfV_AtObj(
32fa0 75 2c 6f 5b 30 5d 29 21 3d 22 32 61 38 36 34 38  u,o[0])!="2a8648
32fb0 38 36 66 37 30 64 30 33 30 37 22 29 7b 74 68 72  86f70d0307"){thr
32fc0 6f 77 22 74 68 69 73 20 6f 6e 6c 79 20 73 75 70  ow"this only sup
32fd0 70 6f 72 74 73 20 54 72 69 70 6c 65 44 45 53 22  ports TripleDES"
32fe0 7d 71 2e 65 6e 63 72 79 70 74 69 6f 6e 53 63 68  }q.encryptionSch
32ff0 65 6d 65 41 6c 67 3d 22 54 72 69 70 6c 65 44 45  emeAlg="TripleDE
33000 53 22 3b 71 2e 65 6e 63 72 79 70 74 69 6f 6e 53  S";q.encryptionS
33010 63 68 65 6d 65 49 56 3d 41 53 4e 31 48 45 58 2e  chemeIV=ASN1HEX.
33020 67 65 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a 28  getHexOfV_AtObj(
33030 75 2c 6f 5b 31 5d 29 3b 76 61 72 20 72 3d 41 53  u,o[1]);var r=AS
33040 4e 31 48 45 58 2e 67 65 74 50 6f 73 41 72 72 61  N1HEX.getPosArra
33050 79 4f 66 43 68 69 6c 64 72 65 6e 5f 41 74 4f 62  yOfChildren_AtOb
33060 6a 28 75 2c 6e 5b 30 5d 29 3b 69 66 28 72 2e 6c  j(u,n[0]);if(r.l
33070 65 6e 67 74 68 21 3d 32 29 7b 74 68 72 6f 77 22  ength!=2){throw"
33080 6d 61 6c 66 6f 72 6d 65 64 20 66 6f 72 6d 61 74  malformed format
33090 3a 20 53 45 51 55 45 4e 43 45 28 30 2e 30 2e 31  : SEQUENCE(0.0.1
330a0 2e 30 29 2e 69 74 65 6d 73 20 21 3d 20 32 3a 20  .0).items != 2: 
330b0 22 2b 72 2e 6c 65 6e 67 74 68 7d 69 66 28 41 53  "+r.length}if(AS
330c0 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66 56 5f  N1HEX.getHexOfV_
330d0 41 74 4f 62 6a 28 75 2c 72 5b 30 5d 29 21 3d 22  AtObj(u,r[0])!="
330e0 32 61 38 36 34 38 38 36 66 37 30 64 30 31 30 35  2a864886f70d0105
330f0 30 63 22 29 7b 74 68 72 6f 77 22 74 68 69 73 20  0c"){throw"this 
33100 6f 6e 6c 79 20 73 75 70 70 6f 72 74 73 20 70 6b  only supports pk
33110 63 73 35 50 42 4b 44 46 32 22 7d 76 61 72 20 76  cs5PBKDF2"}var v
33120 3d 41 53 4e 31 48 45 58 2e 67 65 74 50 6f 73 41  =ASN1HEX.getPosA
33130 72 72 61 79 4f 66 43 68 69 6c 64 72 65 6e 5f 41  rrayOfChildren_A
33140 74 4f 62 6a 28 75 2c 72 5b 31 5d 29 3b 69 66 28  tObj(u,r[1]);if(
33150 76 2e 6c 65 6e 67 74 68 3c 32 29 7b 74 68 72 6f  v.length<2){thro
33160 77 22 6d 61 6c 66 6f 72 6d 65 64 20 66 6f 72 6d  w"malformed form
33170 61 74 3a 20 53 45 51 55 45 4e 43 45 28 30 2e 30  at: SEQUENCE(0.0
33180 2e 31 2e 30 2e 31 29 2e 69 74 65 6d 73 20 3c 20  .1.0.1).items < 
33190 32 3a 20 22 2b 76 2e 6c 65 6e 67 74 68 7d 71 2e  2: "+v.length}q.
331a0 70 62 6b 64 66 32 53 61 6c 74 3d 41 53 4e 31 48  pbkdf2Salt=ASN1H
331b0 45 58 2e 67 65 74 48 65 78 4f 66 56 5f 41 74 4f  EX.getHexOfV_AtO
331c0 62 6a 28 75 2c 76 5b 30 5d 29 3b 76 61 72 20 73  bj(u,v[0]);var s
331d0 3d 41 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f  =ASN1HEX.getHexO
331e0 66 56 5f 41 74 4f 62 6a 28 75 2c 76 5b 31 5d 29  fV_AtObj(u,v[1])
331f0 3b 74 72 79 7b 71 2e 70 62 6b 64 66 32 49 74 65  ;try{q.pbkdf2Ite
33200 72 3d 70 61 72 73 65 49 6e 74 28 73 2c 31 36 29  r=parseInt(s,16)
33210 7d 63 61 74 63 68 28 74 29 7b 74 68 72 6f 77 22  }catch(t){throw"
33220 6d 61 6c 66 6f 72 6d 65 64 20 66 6f 72 6d 61 74  malformed format
33230 20 70 62 6b 64 66 32 49 74 65 72 3a 20 22 2b 73   pbkdf2Iter: "+s
33240 7d 72 65 74 75 72 6e 20 71 7d 2c 67 65 74 50 42  }return q},getPB
33250 4b 44 46 32 4b 65 79 48 65 78 46 72 6f 6d 50 61  KDF2KeyHexFromPa
33260 72 61 6d 3a 66 75 6e 63 74 69 6f 6e 28 73 2c 6e  ram:function(s,n
33270 29 7b 76 61 72 20 72 3d 43 72 79 70 74 6f 4a 53  ){var r=CryptoJS
33280 2e 65 6e 63 2e 48 65 78 2e 70 61 72 73 65 28 73  .enc.Hex.parse(s
33290 2e 70 62 6b 64 66 32 53 61 6c 74 29 3b 76 61 72  .pbkdf2Salt);var
332a0 20 6f 3d 73 2e 70 62 6b 64 66 32 49 74 65 72 3b   o=s.pbkdf2Iter;
332b0 76 61 72 20 71 3d 43 72 79 70 74 6f 4a 53 2e 50  var q=CryptoJS.P
332c0 42 4b 44 46 32 28 6e 2c 72 2c 7b 6b 65 79 53 69  BKDF2(n,r,{keySi
332d0 7a 65 3a 31 39 32 2f 33 32 2c 69 74 65 72 61 74  ze:192/32,iterat
332e0 69 6f 6e 73 3a 6f 7d 29 3b 76 61 72 20 70 3d 43  ions:o});var p=C
332f0 72 79 70 74 6f 4a 53 2e 65 6e 63 2e 48 65 78 2e  ryptoJS.enc.Hex.
33300 73 74 72 69 6e 67 69 66 79 28 71 29 3b 72 65 74  stringify(q);ret
33310 75 72 6e 20 70 7d 2c 67 65 74 50 6c 61 69 6e 50  urn p},getPlainP
33320 4b 43 53 38 48 65 78 46 72 6f 6d 45 6e 63 72 79  KCS8HexFromEncry
33330 70 74 65 64 50 4b 43 53 38 50 45 4d 3a 66 75 6e  ptedPKCS8PEM:fun
33340 63 74 69 6f 6e 28 76 2c 77 29 7b 76 61 72 20 70  ction(v,w){var p
33350 3d 74 68 69 73 2e 67 65 74 48 65 78 46 72 6f 6d  =this.getHexFrom
33360 50 45 4d 28 76 2c 22 45 4e 43 52 59 50 54 45 44  PEM(v,"ENCRYPTED
33370 20 50 52 49 56 41 54 45 20 4b 45 59 22 29 3b 76   PRIVATE KEY");v
33380 61 72 20 6e 3d 74 68 69 73 2e 70 61 72 73 65 48  ar n=this.parseH
33390 65 78 4f 66 45 6e 63 72 79 70 74 65 64 50 4b 43  exOfEncryptedPKC
333a0 53 38 28 70 29 3b 76 61 72 20 73 3d 50 4b 43 53  S8(p);var s=PKCS
333b0 35 50 4b 45 59 2e 67 65 74 50 42 4b 44 46 32 4b  5PKEY.getPBKDF2K
333c0 65 79 48 65 78 46 72 6f 6d 50 61 72 61 6d 28 6e  eyHexFromParam(n
333d0 2c 77 29 3b 76 61 72 20 74 3d 7b 7d 3b 74 2e 63  ,w);var t={};t.c
333e0 69 70 68 65 72 74 65 78 74 3d 43 72 79 70 74 6f  iphertext=Crypto
333f0 4a 53 2e 65 6e 63 2e 48 65 78 2e 70 61 72 73 65  JS.enc.Hex.parse
33400 28 6e 2e 63 69 70 68 65 72 74 65 78 74 29 3b 76  (n.ciphertext);v
33410 61 72 20 72 3d 43 72 79 70 74 6f 4a 53 2e 65 6e  ar r=CryptoJS.en
33420 63 2e 48 65 78 2e 70 61 72 73 65 28 73 29 3b 76  c.Hex.parse(s);v
33430 61 72 20 71 3d 43 72 79 70 74 6f 4a 53 2e 65 6e  ar q=CryptoJS.en
33440 63 2e 48 65 78 2e 70 61 72 73 65 28 6e 2e 65 6e  c.Hex.parse(n.en
33450 63 72 79 70 74 69 6f 6e 53 63 68 65 6d 65 49 56  cryptionSchemeIV
33460 29 3b 76 61 72 20 75 3d 43 72 79 70 74 6f 4a 53  );var u=CryptoJS
33470 2e 54 72 69 70 6c 65 44 45 53 2e 64 65 63 72 79  .TripleDES.decry
33480 70 74 28 74 2c 72 2c 7b 69 76 3a 71 7d 29 3b 76  pt(t,r,{iv:q});v
33490 61 72 20 6f 3d 43 72 79 70 74 6f 4a 53 2e 65 6e  ar o=CryptoJS.en
334a0 63 2e 48 65 78 2e 73 74 72 69 6e 67 69 66 79 28  c.Hex.stringify(
334b0 75 29 3b 72 65 74 75 72 6e 20 6f 7d 2c 67 65 74  u);return o},get
334c0 52 53 41 4b 65 79 46 72 6f 6d 45 6e 63 72 79 70  RSAKeyFromEncryp
334d0 74 65 64 50 4b 43 53 38 50 45 4d 3a 66 75 6e 63  tedPKCS8PEM:func
334e0 74 69 6f 6e 28 71 2c 70 29 7b 76 61 72 20 6f 3d  tion(q,p){var o=
334f0 74 68 69 73 2e 67 65 74 50 6c 61 69 6e 50 4b 43  this.getPlainPKC
33500 53 38 48 65 78 46 72 6f 6d 45 6e 63 72 79 70 74  S8HexFromEncrypt
33510 65 64 50 4b 43 53 38 50 45 4d 28 71 2c 70 29 3b  edPKCS8PEM(q,p);
33520 76 61 72 20 6e 3d 74 68 69 73 2e 67 65 74 52 53  var n=this.getRS
33530 41 4b 65 79 46 72 6f 6d 50 6c 61 69 6e 50 4b 43  AKeyFromPlainPKC
33540 53 38 48 65 78 28 6f 29 3b 72 65 74 75 72 6e 20  S8Hex(o);return 
33550 6e 7d 2c 67 65 74 4b 65 79 46 72 6f 6d 45 6e 63  n},getKeyFromEnc
33560 72 79 70 74 65 64 50 4b 43 53 38 50 45 4d 3a 66  ryptedPKCS8PEM:f
33570 75 6e 63 74 69 6f 6e 28 71 2c 6f 29 7b 76 61 72  unction(q,o){var
33580 20 6e 3d 74 68 69 73 2e 67 65 74 50 6c 61 69 6e   n=this.getPlain
33590 50 4b 43 53 38 48 65 78 46 72 6f 6d 45 6e 63 72  PKCS8HexFromEncr
335a0 79 70 74 65 64 50 4b 43 53 38 50 45 4d 28 71 2c  yptedPKCS8PEM(q,
335b0 6f 29 3b 76 61 72 20 70 3d 74 68 69 73 2e 67 65  o);var p=this.ge
335c0 74 4b 65 79 46 72 6f 6d 50 6c 61 69 6e 50 72 69  tKeyFromPlainPri
335d0 76 61 74 65 50 4b 43 53 38 48 65 78 28 6e 29 3b  vatePKCS8Hex(n);
335e0 72 65 74 75 72 6e 20 70 7d 2c 70 61 72 73 65 50  return p},parseP
335f0 6c 61 69 6e 50 72 69 76 61 74 65 50 4b 43 53 38  lainPrivatePKCS8
33600 48 65 78 3a 66 75 6e 63 74 69 6f 6e 28 71 29 7b  Hex:function(q){
33610 76 61 72 20 6f 3d 7b 7d 3b 6f 2e 61 6c 67 70 61  var o={};o.algpa
33620 72 61 6d 3d 6e 75 6c 6c 3b 69 66 28 71 2e 73 75  ram=null;if(q.su
33630 62 73 74 72 28 30 2c 32 29 21 3d 22 33 30 22 29  bstr(0,2)!="30")
33640 7b 74 68 72 6f 77 22 6d 61 6c 66 6f 72 6d 65 64  {throw"malformed
33650 20 70 6c 61 69 6e 20 50 4b 43 53 38 20 70 72 69   plain PKCS8 pri
33660 76 61 74 65 20 6b 65 79 28 63 6f 64 65 3a 30 30  vate key(code:00
33670 31 29 22 7d 76 61 72 20 70 3d 41 53 4e 31 48 45  1)"}var p=ASN1HE
33680 58 2e 67 65 74 50 6f 73 41 72 72 61 79 4f 66 43  X.getPosArrayOfC
33690 68 69 6c 64 72 65 6e 5f 41 74 4f 62 6a 28 71 2c  hildren_AtObj(q,
336a0 30 29 3b 69 66 28 70 2e 6c 65 6e 67 74 68 21 3d  0);if(p.length!=
336b0 33 29 7b 74 68 72 6f 77 22 6d 61 6c 66 6f 72 6d  3){throw"malform
336c0 65 64 20 70 6c 61 69 6e 20 50 4b 43 53 38 20 70  ed plain PKCS8 p
336d0 72 69 76 61 74 65 20 6b 65 79 28 63 6f 64 65 3a  rivate key(code:
336e0 30 30 32 29 22 7d 69 66 28 71 2e 73 75 62 73 74  002)"}if(q.subst
336f0 72 28 70 5b 31 5d 2c 32 29 21 3d 22 33 30 22 29  r(p[1],2)!="30")
33700 7b 74 68 72 6f 77 22 6d 61 6c 66 6f 72 6d 65 64  {throw"malformed
33710 20 50 4b 43 53 38 20 70 72 69 76 61 74 65 20 6b   PKCS8 private k
33720 65 79 28 63 6f 64 65 3a 30 30 33 29 22 7d 76 61  ey(code:003)"}va
33730 72 20 6e 3d 41 53 4e 31 48 45 58 2e 67 65 74 50  r n=ASN1HEX.getP
33740 6f 73 41 72 72 61 79 4f 66 43 68 69 6c 64 72 65  osArrayOfChildre
33750 6e 5f 41 74 4f 62 6a 28 71 2c 70 5b 31 5d 29 3b  n_AtObj(q,p[1]);
33760 69 66 28 6e 2e 6c 65 6e 67 74 68 21 3d 32 29 7b  if(n.length!=2){
33770 74 68 72 6f 77 22 6d 61 6c 66 6f 72 6d 65 64 20  throw"malformed 
33780 50 4b 43 53 38 20 70 72 69 76 61 74 65 20 6b 65  PKCS8 private ke
33790 79 28 63 6f 64 65 3a 30 30 34 29 22 7d 69 66 28  y(code:004)"}if(
337a0 71 2e 73 75 62 73 74 72 28 6e 5b 30 5d 2c 32 29  q.substr(n[0],2)
337b0 21 3d 22 30 36 22 29 7b 74 68 72 6f 77 22 6d 61  !="06"){throw"ma
337c0 6c 66 6f 72 6d 65 64 20 50 4b 43 53 38 20 70 72  lformed PKCS8 pr
337d0 69 76 61 74 65 20 6b 65 79 28 63 6f 64 65 3a 30  ivate key(code:0
337e0 30 35 29 22 7d 6f 2e 61 6c 67 6f 69 64 3d 41 53  05)"}o.algoid=AS
337f0 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66 56 5f  N1HEX.getHexOfV_
33800 41 74 4f 62 6a 28 71 2c 6e 5b 30 5d 29 3b 69 66  AtObj(q,n[0]);if
33810 28 71 2e 73 75 62 73 74 72 28 6e 5b 31 5d 2c 32  (q.substr(n[1],2
33820 29 3d 3d 22 30 36 22 29 7b 6f 2e 61 6c 67 70 61  )=="06"){o.algpa
33830 72 61 6d 3d 41 53 4e 31 48 45 58 2e 67 65 74 48  ram=ASN1HEX.getH
33840 65 78 4f 66 56 5f 41 74 4f 62 6a 28 71 2c 6e 5b  exOfV_AtObj(q,n[
33850 31 5d 29 7d 69 66 28 71 2e 73 75 62 73 74 72 28  1])}if(q.substr(
33860 70 5b 32 5d 2c 32 29 21 3d 22 30 34 22 29 7b 74  p[2],2)!="04"){t
33870 68 72 6f 77 22 6d 61 6c 66 6f 72 6d 65 64 20 50  hrow"malformed P
33880 4b 43 53 38 20 70 72 69 76 61 74 65 20 6b 65 79  KCS8 private key
33890 28 63 6f 64 65 3a 30 30 36 29 22 7d 6f 2e 6b 65  (code:006)"}o.ke
338a0 79 69 64 78 3d 41 53 4e 31 48 45 58 2e 67 65 74  yidx=ASN1HEX.get
338b0 53 74 61 72 74 50 6f 73 4f 66 56 5f 41 74 4f 62  StartPosOfV_AtOb
338c0 6a 28 71 2c 70 5b 32 5d 29 3b 72 65 74 75 72 6e  j(q,p[2]);return
338d0 20 6f 7d 2c 67 65 74 4b 65 79 46 72 6f 6d 50 6c   o},getKeyFromPl
338e0 61 69 6e 50 72 69 76 61 74 65 50 4b 43 53 38 50  ainPrivatePKCS8P
338f0 45 4d 3a 66 75 6e 63 74 69 6f 6e 28 6f 29 7b 76  EM:function(o){v
33900 61 72 20 6e 3d 74 68 69 73 2e 67 65 74 48 65 78  ar n=this.getHex
33910 46 72 6f 6d 50 45 4d 28 6f 2c 22 50 52 49 56 41  FromPEM(o,"PRIVA
33920 54 45 20 4b 45 59 22 29 3b 76 61 72 20 70 3d 74  TE KEY");var p=t
33930 68 69 73 2e 67 65 74 4b 65 79 46 72 6f 6d 50 6c  his.getKeyFromPl
33940 61 69 6e 50 72 69 76 61 74 65 50 4b 43 53 38 48  ainPrivatePKCS8H
33950 65 78 28 6e 29 3b 72 65 74 75 72 6e 20 70 7d 2c  ex(n);return p},
33960 67 65 74 4b 65 79 46 72 6f 6d 50 6c 61 69 6e 50  getKeyFromPlainP
33970 72 69 76 61 74 65 50 4b 43 53 38 48 65 78 3a 66  rivatePKCS8Hex:f
33980 75 6e 63 74 69 6f 6e 28 6e 29 7b 76 61 72 20 70  unction(n){var p
33990 3d 74 68 69 73 2e 70 61 72 73 65 50 6c 61 69 6e  =this.parsePlain
339a0 50 72 69 76 61 74 65 50 4b 43 53 38 48 65 78 28  PrivatePKCS8Hex(
339b0 6e 29 3b 69 66 28 70 2e 61 6c 67 6f 69 64 3d 3d  n);if(p.algoid==
339c0 22 32 61 38 36 34 38 38 36 66 37 30 64 30 31 30  "2a864886f70d010
339d0 31 30 31 22 29 7b 74 68 69 73 2e 70 61 72 73 65  101"){this.parse
339e0 50 72 69 76 61 74 65 52 61 77 52 53 41 4b 65 79  PrivateRawRSAKey
339f0 48 65 78 41 74 4f 62 6a 28 6e 2c 70 29 3b 76 61  HexAtObj(n,p);va
33a00 72 20 6f 3d 70 2e 6b 65 79 3b 76 61 72 20 71 3d  r o=p.key;var q=
33a10 6e 65 77 20 52 53 41 4b 65 79 28 29 3b 71 2e 73  new RSAKey();q.s
33a20 65 74 50 72 69 76 61 74 65 45 78 28 6f 2e 6e 2c  etPrivateEx(o.n,
33a30 6f 2e 65 2c 6f 2e 64 2c 6f 2e 70 2c 6f 2e 71 2c  o.e,o.d,o.p,o.q,
33a40 6f 2e 64 70 2c 6f 2e 64 71 2c 6f 2e 63 6f 29 3b  o.dp,o.dq,o.co);
33a50 72 65 74 75 72 6e 20 71 7d 65 6c 73 65 7b 69 66  return q}else{if
33a60 28 70 2e 61 6c 67 6f 69 64 3d 3d 22 32 61 38 36  (p.algoid=="2a86
33a70 34 38 63 65 33 64 30 32 30 31 22 29 7b 74 68 69  48ce3d0201"){thi
33a80 73 2e 70 61 72 73 65 50 72 69 76 61 74 65 52 61  s.parsePrivateRa
33a90 77 45 43 4b 65 79 48 65 78 41 74 4f 62 6a 28 6e  wECKeyHexAtObj(n
33aa0 2c 70 29 3b 69 66 28 4b 4a 55 52 2e 63 72 79 70  ,p);if(KJUR.cryp
33ab0 74 6f 2e 4f 49 44 2e 6f 69 64 68 65 78 32 6e 61  to.OID.oidhex2na
33ac0 6d 65 5b 70 2e 61 6c 67 70 61 72 61 6d 5d 3d 3d  me[p.algparam]==
33ad0 3d 75 6e 64 65 66 69 6e 65 64 29 7b 74 68 72 6f  =undefined){thro
33ae0 77 22 4b 4a 55 52 2e 63 72 79 70 74 6f 2e 4f 49  w"KJUR.crypto.OI
33af0 44 2e 6f 69 64 68 65 78 32 6e 61 6d 65 20 75 6e  D.oidhex2name un
33b00 64 65 66 69 6e 65 64 3a 20 22 2b 70 2e 61 6c 67  defined: "+p.alg
33b10 70 61 72 61 6d 7d 76 61 72 20 72 3d 4b 4a 55 52  param}var r=KJUR
33b20 2e 63 72 79 70 74 6f 2e 4f 49 44 2e 6f 69 64 68  .crypto.OID.oidh
33b30 65 78 32 6e 61 6d 65 5b 70 2e 61 6c 67 70 61 72  ex2name[p.algpar
33b40 61 6d 5d 3b 76 61 72 20 71 3d 6e 65 77 20 4b 4a  am];var q=new KJ
33b50 55 52 2e 63 72 79 70 74 6f 2e 45 43 44 53 41 28  UR.crypto.ECDSA(
33b60 7b 63 75 72 76 65 3a 72 2c 70 72 76 3a 70 2e 6b  {curve:r,prv:p.k
33b70 65 79 7d 29 3b 72 65 74 75 72 6e 20 71 7d 65 6c  ey});return q}el
33b80 73 65 7b 74 68 72 6f 77 22 75 6e 73 75 70 70 6f  se{throw"unsuppo
33b90 72 74 65 64 20 70 72 69 76 61 74 65 20 6b 65 79  rted private key
33ba0 20 61 6c 67 6f 72 69 74 68 6d 22 7d 7d 7d 2c 67   algorithm"}}},g
33bb0 65 74 52 53 41 4b 65 79 46 72 6f 6d 50 75 62 6c  etRSAKeyFromPubl
33bc0 69 63 50 4b 43 53 38 50 45 4d 3a 66 75 6e 63 74  icPKCS8PEM:funct
33bd0 69 6f 6e 28 6f 29 7b 76 61 72 20 70 3d 74 68 69  ion(o){var p=thi
33be0 73 2e 67 65 74 48 65 78 46 72 6f 6d 50 45 4d 28  s.getHexFromPEM(
33bf0 6f 2c 22 50 55 42 4c 49 43 20 4b 45 59 22 29 3b  o,"PUBLIC KEY");
33c00 76 61 72 20 6e 3d 74 68 69 73 2e 67 65 74 52 53  var n=this.getRS
33c10 41 4b 65 79 46 72 6f 6d 50 75 62 6c 69 63 50 4b  AKeyFromPublicPK
33c20 43 53 38 48 65 78 28 70 29 3b 72 65 74 75 72 6e  CS8Hex(p);return
33c30 20 6e 7d 2c 67 65 74 4b 65 79 46 72 6f 6d 50 75   n},getKeyFromPu
33c40 62 6c 69 63 50 4b 43 53 38 50 45 4d 3a 66 75 6e  blicPKCS8PEM:fun
33c50 63 74 69 6f 6e 28 6f 29 7b 76 61 72 20 70 3d 74  ction(o){var p=t
33c60 68 69 73 2e 67 65 74 48 65 78 46 72 6f 6d 50 45  his.getHexFromPE
33c70 4d 28 6f 2c 22 50 55 42 4c 49 43 20 4b 45 59 22  M(o,"PUBLIC KEY"
33c80 29 3b 76 61 72 20 6e 3d 74 68 69 73 2e 67 65 74  );var n=this.get
33c90 4b 65 79 46 72 6f 6d 50 75 62 6c 69 63 50 4b 43  KeyFromPublicPKC
33ca0 53 38 48 65 78 28 70 29 3b 72 65 74 75 72 6e 20  S8Hex(p);return 
33cb0 6e 7d 2c 67 65 74 4b 65 79 46 72 6f 6d 50 75 62  n},getKeyFromPub
33cc0 6c 69 63 50 4b 43 53 38 48 65 78 3a 66 75 6e 63  licPKCS8Hex:func
33cd0 74 69 6f 6e 28 6f 29 7b 76 61 72 20 6e 3d 74 68  tion(o){var n=th
33ce0 69 73 2e 70 61 72 73 65 50 75 62 6c 69 63 50 4b  is.parsePublicPK
33cf0 43 53 38 48 65 78 28 6f 29 3b 69 66 28 6e 2e 61  CS8Hex(o);if(n.a
33d00 6c 67 6f 69 64 3d 3d 22 32 61 38 36 34 38 38 36  lgoid=="2a864886
33d10 66 37 30 64 30 31 30 31 30 31 22 29 7b 76 61 72  f70d010101"){var
33d20 20 72 3d 74 68 69 73 2e 70 61 72 73 65 50 75 62   r=this.parsePub
33d30 6c 69 63 52 61 77 52 53 41 4b 65 79 48 65 78 28  licRawRSAKeyHex(
33d40 6e 2e 6b 65 79 29 3b 76 61 72 20 70 3d 6e 65 77  n.key);var p=new
33d50 20 52 53 41 4b 65 79 28 29 3b 70 2e 73 65 74 50   RSAKey();p.setP
33d60 75 62 6c 69 63 28 72 2e 6e 2c 72 2e 65 29 3b 72  ublic(r.n,r.e);r
33d70 65 74 75 72 6e 20 70 7d 65 6c 73 65 7b 69 66 28  eturn p}else{if(
33d80 6e 2e 61 6c 67 6f 69 64 3d 3d 22 32 61 38 36 34  n.algoid=="2a864
33d90 38 63 65 33 64 30 32 30 31 22 29 7b 69 66 28 4b  8ce3d0201"){if(K
33da0 4a 55 52 2e 63 72 79 70 74 6f 2e 4f 49 44 2e 6f  JUR.crypto.OID.o
33db0 69 64 68 65 78 32 6e 61 6d 65 5b 6e 2e 61 6c 67  idhex2name[n.alg
33dc0 70 61 72 61 6d 5d 3d 3d 3d 75 6e 64 65 66 69 6e  param]===undefin
33dd0 65 64 29 7b 74 68 72 6f 77 22 4b 4a 55 52 2e 63  ed){throw"KJUR.c
33de0 72 79 70 74 6f 2e 4f 49 44 2e 6f 69 64 68 65 78  rypto.OID.oidhex
33df0 32 6e 61 6d 65 20 75 6e 64 65 66 69 6e 65 64 3a  2name undefined:
33e00 20 22 2b 6e 2e 61 6c 67 70 61 72 61 6d 7d 76 61   "+n.algparam}va
33e10 72 20 71 3d 4b 4a 55 52 2e 63 72 79 70 74 6f 2e  r q=KJUR.crypto.
33e20 4f 49 44 2e 6f 69 64 68 65 78 32 6e 61 6d 65 5b  OID.oidhex2name[
33e30 6e 2e 61 6c 67 70 61 72 61 6d 5d 3b 76 61 72 20  n.algparam];var 
33e40 70 3d 6e 65 77 20 4b 4a 55 52 2e 63 72 79 70 74  p=new KJUR.crypt
33e50 6f 2e 45 43 44 53 41 28 7b 63 75 72 76 65 3a 71  o.ECDSA({curve:q
33e60 2c 70 75 62 3a 6e 2e 6b 65 79 7d 29 3b 72 65 74  ,pub:n.key});ret
33e70 75 72 6e 20 70 7d 65 6c 73 65 7b 74 68 72 6f 77  urn p}else{throw
33e80 22 75 6e 73 75 70 70 6f 72 74 65 64 20 70 75 62  "unsupported pub
33e90 6c 69 63 20 6b 65 79 20 61 6c 67 6f 72 69 74 68  lic key algorith
33ea0 6d 22 7d 7d 7d 2c 70 61 72 73 65 50 75 62 6c 69  m"}}},parsePubli
33eb0 63 52 61 77 52 53 41 4b 65 79 48 65 78 3a 66 75  cRawRSAKeyHex:fu
33ec0 6e 63 74 69 6f 6e 28 70 29 7b 76 61 72 20 6e 3d  nction(p){var n=
33ed0 7b 7d 3b 69 66 28 70 2e 73 75 62 73 74 72 28 30  {};if(p.substr(0
33ee0 2c 32 29 21 3d 22 33 30 22 29 7b 74 68 72 6f 77  ,2)!="30"){throw
33ef0 22 6d 61 6c 66 6f 72 6d 65 64 20 52 53 41 20 6b  "malformed RSA k
33f00 65 79 28 63 6f 64 65 3a 30 30 31 29 22 7d 76 61  ey(code:001)"}va
33f10 72 20 6f 3d 41 53 4e 31 48 45 58 2e 67 65 74 50  r o=ASN1HEX.getP
33f20 6f 73 41 72 72 61 79 4f 66 43 68 69 6c 64 72 65  osArrayOfChildre
33f30 6e 5f 41 74 4f 62 6a 28 70 2c 30 29 3b 69 66 28  n_AtObj(p,0);if(
33f40 6f 2e 6c 65 6e 67 74 68 21 3d 32 29 7b 74 68 72  o.length!=2){thr
33f50 6f 77 22 6d 61 6c 66 6f 72 6d 65 64 20 52 53 41  ow"malformed RSA
33f60 20 6b 65 79 28 63 6f 64 65 3a 30 30 32 29 22 7d   key(code:002)"}
33f70 69 66 28 70 2e 73 75 62 73 74 72 28 6f 5b 30 5d  if(p.substr(o[0]
33f80 2c 32 29 21 3d 22 30 32 22 29 7b 74 68 72 6f 77  ,2)!="02"){throw
33f90 22 6d 61 6c 66 6f 72 6d 65 64 20 52 53 41 20 6b  "malformed RSA k
33fa0 65 79 28 63 6f 64 65 3a 30 30 33 29 22 7d 6e 2e  ey(code:003)"}n.
33fb0 6e 3d 41 53 4e 31 48 45 58 2e 67 65 74 48 65 78  n=ASN1HEX.getHex
33fc0 4f 66 56 5f 41 74 4f 62 6a 28 70 2c 6f 5b 30 5d  OfV_AtObj(p,o[0]
33fd0 29 3b 69 66 28 70 2e 73 75 62 73 74 72 28 6f 5b  );if(p.substr(o[
33fe0 31 5d 2c 32 29 21 3d 22 30 32 22 29 7b 74 68 72  1],2)!="02"){thr
33ff0 6f 77 22 6d 61 6c 66 6f 72 6d 65 64 20 52 53 41  ow"malformed RSA
34000 20 6b 65 79 28 63 6f 64 65 3a 30 30 34 29 22 7d   key(code:004)"}
34010 6e 2e 65 3d 41 53 4e 31 48 45 58 2e 67 65 74 48  n.e=ASN1HEX.getH
34020 65 78 4f 66 56 5f 41 74 4f 62 6a 28 70 2c 6f 5b  exOfV_AtObj(p,o[
34030 31 5d 29 3b 72 65 74 75 72 6e 20 6e 7d 2c 70 61  1]);return n},pa
34040 72 73 65 50 72 69 76 61 74 65 52 61 77 52 53 41  rsePrivateRawRSA
34050 4b 65 79 48 65 78 41 74 4f 62 6a 3a 66 75 6e 63  KeyHexAtObj:func
34060 74 69 6f 6e 28 6f 2c 71 29 7b 76 61 72 20 70 3d  tion(o,q){var p=
34070 71 2e 6b 65 79 69 64 78 3b 69 66 28 6f 2e 73 75  q.keyidx;if(o.su
34080 62 73 74 72 28 70 2c 32 29 21 3d 22 33 30 22 29  bstr(p,2)!="30")
34090 7b 74 68 72 6f 77 22 6d 61 6c 66 6f 72 6d 65 64  {throw"malformed
340a0 20 52 53 41 20 70 72 69 76 61 74 65 20 6b 65 79   RSA private key
340b0 28 63 6f 64 65 3a 30 30 31 29 22 7d 76 61 72 20  (code:001)"}var 
340c0 6e 3d 41 53 4e 31 48 45 58 2e 67 65 74 50 6f 73  n=ASN1HEX.getPos
340d0 41 72 72 61 79 4f 66 43 68 69 6c 64 72 65 6e 5f  ArrayOfChildren_
340e0 41 74 4f 62 6a 28 6f 2c 70 29 3b 69 66 28 6e 2e  AtObj(o,p);if(n.
340f0 6c 65 6e 67 74 68 21 3d 39 29 7b 74 68 72 6f 77  length!=9){throw
34100 22 6d 61 6c 66 6f 72 6d 65 64 20 52 53 41 20 70  "malformed RSA p
34110 72 69 76 61 74 65 20 6b 65 79 28 63 6f 64 65 3a  rivate key(code:
34120 30 30 32 29 22 7d 71 2e 6b 65 79 3d 7b 7d 3b 71  002)"}q.key={};q
34130 2e 6b 65 79 2e 6e 3d 41 53 4e 31 48 45 58 2e 67  .key.n=ASN1HEX.g
34140 65 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a 28 6f  etHexOfV_AtObj(o
34150 2c 6e 5b 31 5d 29 3b 71 2e 6b 65 79 2e 65 3d 41  ,n[1]);q.key.e=A
34160 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66 56  SN1HEX.getHexOfV
34170 5f 41 74 4f 62 6a 28 6f 2c 6e 5b 32 5d 29 3b 71  _AtObj(o,n[2]);q
34180 2e 6b 65 79 2e 64 3d 41 53 4e 31 48 45 58 2e 67  .key.d=ASN1HEX.g
34190 65 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a 28 6f  etHexOfV_AtObj(o
341a0 2c 6e 5b 33 5d 29 3b 71 2e 6b 65 79 2e 70 3d 41  ,n[3]);q.key.p=A
341b0 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66 56  SN1HEX.getHexOfV
341c0 5f 41 74 4f 62 6a 28 6f 2c 6e 5b 34 5d 29 3b 71  _AtObj(o,n[4]);q
341d0 2e 6b 65 79 2e 71 3d 41 53 4e 31 48 45 58 2e 67  .key.q=ASN1HEX.g
341e0 65 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a 28 6f  etHexOfV_AtObj(o
341f0 2c 6e 5b 35 5d 29 3b 71 2e 6b 65 79 2e 64 70 3d  ,n[5]);q.key.dp=
34200 41 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66  ASN1HEX.getHexOf
34210 56 5f 41 74 4f 62 6a 28 6f 2c 6e 5b 36 5d 29 3b  V_AtObj(o,n[6]);
34220 71 2e 6b 65 79 2e 64 71 3d 41 53 4e 31 48 45 58  q.key.dq=ASN1HEX
34230 2e 67 65 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a  .getHexOfV_AtObj
34240 28 6f 2c 6e 5b 37 5d 29 3b 71 2e 6b 65 79 2e 63  (o,n[7]);q.key.c
34250 6f 3d 41 53 4e 31 48 45 58 2e 67 65 74 48 65 78  o=ASN1HEX.getHex
34260 4f 66 56 5f 41 74 4f 62 6a 28 6f 2c 6e 5b 38 5d  OfV_AtObj(o,n[8]
34270 29 7d 2c 70 61 72 73 65 50 72 69 76 61 74 65 52  )},parsePrivateR
34280 61 77 45 43 4b 65 79 48 65 78 41 74 4f 62 6a 3a  awECKeyHexAtObj:
34290 66 75 6e 63 74 69 6f 6e 28 6f 2c 71 29 7b 76 61  function(o,q){va
342a0 72 20 70 3d 71 2e 6b 65 79 69 64 78 3b 69 66 28  r p=q.keyidx;if(
342b0 6f 2e 73 75 62 73 74 72 28 70 2c 32 29 21 3d 22  o.substr(p,2)!="
342c0 33 30 22 29 7b 74 68 72 6f 77 22 6d 61 6c 66 6f  30"){throw"malfo
342d0 72 6d 65 64 20 45 43 43 20 70 72 69 76 61 74 65  rmed ECC private
342e0 20 6b 65 79 28 63 6f 64 65 3a 30 30 31 29 22 7d   key(code:001)"}
342f0 76 61 72 20 6e 3d 41 53 4e 31 48 45 58 2e 67 65  var n=ASN1HEX.ge
34300 74 50 6f 73 41 72 72 61 79 4f 66 43 68 69 6c 64  tPosArrayOfChild
34310 72 65 6e 5f 41 74 4f 62 6a 28 6f 2c 70 29 3b 69  ren_AtObj(o,p);i
34320 66 28 6e 2e 6c 65 6e 67 74 68 21 3d 33 29 7b 74  f(n.length!=3){t
34330 68 72 6f 77 22 6d 61 6c 66 6f 72 6d 65 64 20 45  hrow"malformed E
34340 43 43 20 70 72 69 76 61 74 65 20 6b 65 79 28 63  CC private key(c
34350 6f 64 65 3a 30 30 32 29 22 7d 69 66 28 6f 2e 73  ode:002)"}if(o.s
34360 75 62 73 74 72 28 6e 5b 31 5d 2c 32 29 21 3d 22  ubstr(n[1],2)!="
34370 30 34 22 29 7b 74 68 72 6f 77 22 6d 61 6c 66 6f  04"){throw"malfo
34380 72 6d 65 64 20 45 43 43 20 70 72 69 76 61 74 65  rmed ECC private
34390 20 6b 65 79 28 63 6f 64 65 3a 30 30 33 29 22 7d   key(code:003)"}
343a0 71 2e 6b 65 79 3d 41 53 4e 31 48 45 58 2e 67 65  q.key=ASN1HEX.ge
343b0 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a 28 6f 2c  tHexOfV_AtObj(o,
343c0 6e 5b 31 5d 29 7d 2c 70 61 72 73 65 50 75 62 6c  n[1])},parsePubl
343d0 69 63 50 4b 43 53 38 48 65 78 3a 66 75 6e 63 74  icPKCS8Hex:funct
343e0 69 6f 6e 28 71 29 7b 76 61 72 20 6f 3d 7b 7d 3b  ion(q){var o={};
343f0 6f 2e 61 6c 67 70 61 72 61 6d 3d 6e 75 6c 6c 3b  o.algparam=null;
34400 76 61 72 20 70 3d 41 53 4e 31 48 45 58 2e 67 65  var p=ASN1HEX.ge
34410 74 50 6f 73 41 72 72 61 79 4f 66 43 68 69 6c 64  tPosArrayOfChild
34420 72 65 6e 5f 41 74 4f 62 6a 28 71 2c 30 29 3b 69  ren_AtObj(q,0);i
34430 66 28 70 2e 6c 65 6e 67 74 68 21 3d 32 29 7b 74  f(p.length!=2){t
34440 68 72 6f 77 22 6f 75 74 65 72 20 44 45 52 53 65  hrow"outer DERSe
34450 71 75 65 6e 63 65 20 73 68 61 6c 6c 20 68 61 76  quence shall hav
34460 65 20 32 20 65 6c 65 6d 65 6e 74 73 3a 20 22 2b  e 2 elements: "+
34470 70 2e 6c 65 6e 67 74 68 7d 76 61 72 20 72 3d 70  p.length}var r=p
34480 5b 30 5d 3b 69 66 28 71 2e 73 75 62 73 74 72 28  [0];if(q.substr(
34490 72 2c 32 29 21 3d 22 33 30 22 29 7b 74 68 72 6f  r,2)!="30"){thro
344a0 77 22 6d 61 6c 66 6f 72 6d 65 64 20 50 4b 43 53  w"malformed PKCS
344b0 38 20 70 75 62 6c 69 63 20 6b 65 79 28 63 6f 64  8 public key(cod
344c0 65 3a 30 30 31 29 22 7d 76 61 72 20 6e 3d 41 53  e:001)"}var n=AS
344d0 4e 31 48 45 58 2e 67 65 74 50 6f 73 41 72 72 61  N1HEX.getPosArra
344e0 79 4f 66 43 68 69 6c 64 72 65 6e 5f 41 74 4f 62  yOfChildren_AtOb
344f0 6a 28 71 2c 72 29 3b 69 66 28 6e 2e 6c 65 6e 67  j(q,r);if(n.leng
34500 74 68 21 3d 32 29 7b 74 68 72 6f 77 22 6d 61 6c  th!=2){throw"mal
34510 66 6f 72 6d 65 64 20 50 4b 43 53 38 20 70 75 62  formed PKCS8 pub
34520 6c 69 63 20 6b 65 79 28 63 6f 64 65 3a 30 30 32  lic key(code:002
34530 29 22 7d 69 66 28 71 2e 73 75 62 73 74 72 28 6e  )"}if(q.substr(n
34540 5b 30 5d 2c 32 29 21 3d 22 30 36 22 29 7b 74 68  [0],2)!="06"){th
34550 72 6f 77 22 6d 61 6c 66 6f 72 6d 65 64 20 50 4b  row"malformed PK
34560 43 53 38 20 70 75 62 6c 69 63 20 6b 65 79 28 63  CS8 public key(c
34570 6f 64 65 3a 30 30 33 29 22 7d 6f 2e 61 6c 67 6f  ode:003)"}o.algo
34580 69 64 3d 41 53 4e 31 48 45 58 2e 67 65 74 48 65  id=ASN1HEX.getHe
34590 78 4f 66 56 5f 41 74 4f 62 6a 28 71 2c 6e 5b 30  xOfV_AtObj(q,n[0
345a0 5d 29 3b 69 66 28 71 2e 73 75 62 73 74 72 28 6e  ]);if(q.substr(n
345b0 5b 31 5d 2c 32 29 3d 3d 22 30 36 22 29 7b 6f 2e  [1],2)=="06"){o.
345c0 61 6c 67 70 61 72 61 6d 3d 41 53 4e 31 48 45 58  algparam=ASN1HEX
345d0 2e 67 65 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a  .getHexOfV_AtObj
345e0 28 71 2c 6e 5b 31 5d 29 7d 69 66 28 71 2e 73 75  (q,n[1])}if(q.su
345f0 62 73 74 72 28 70 5b 31 5d 2c 32 29 21 3d 22 30  bstr(p[1],2)!="0
34600 33 22 29 7b 74 68 72 6f 77 22 6d 61 6c 66 6f 72  3"){throw"malfor
34610 6d 65 64 20 50 4b 43 53 38 20 70 75 62 6c 69 63  med PKCS8 public
34620 20 6b 65 79 28 63 6f 64 65 3a 30 30 34 29 22 7d   key(code:004)"}
34630 6f 2e 6b 65 79 3d 41 53 4e 31 48 45 58 2e 67 65  o.key=ASN1HEX.ge
34640 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a 28 71 2c  tHexOfV_AtObj(q,
34650 70 5b 31 5d 29 2e 73 75 62 73 74 72 28 32 29 3b  p[1]).substr(2);
34660 72 65 74 75 72 6e 20 6f 7d 2c 67 65 74 52 53 41  return o},getRSA
34670 4b 65 79 46 72 6f 6d 50 75 62 6c 69 63 50 4b 43  KeyFromPublicPKC
34680 53 38 48 65 78 3a 66 75 6e 63 74 69 6f 6e 28 72  S8Hex:function(r
34690 29 7b 76 61 72 20 71 3d 41 53 4e 31 48 45 58 2e  ){var q=ASN1HEX.
346a0 67 65 74 50 6f 73 41 72 72 61 79 4f 66 43 68 69  getPosArrayOfChi
346b0 6c 64 72 65 6e 5f 41 74 4f 62 6a 28 72 2c 30 29  ldren_AtObj(r,0)
346c0 3b 69 66 28 71 2e 6c 65 6e 67 74 68 21 3d 32 29  ;if(q.length!=2)
346d0 7b 74 68 72 6f 77 22 6f 75 74 65 72 20 44 45 52  {throw"outer DER
346e0 53 65 71 75 65 6e 63 65 20 73 68 61 6c 6c 20 68  Sequence shall h
346f0 61 76 65 20 32 20 65 6c 65 6d 65 6e 74 73 3a 20  ave 2 elements: 
34700 22 2b 71 2e 6c 65 6e 67 74 68 7d 76 61 72 20 70  "+q.length}var p
34710 3d 41 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f  =ASN1HEX.getHexO
34720 66 54 4c 56 5f 41 74 4f 62 6a 28 72 2c 71 5b 30  fTLV_AtObj(r,q[0
34730 5d 29 3b 69 66 28 70 21 3d 22 33 30 30 64 30 36  ]);if(p!="300d06
34740 30 39 32 61 38 36 34 38 38 36 66 37 30 64 30 31  092a864886f70d01
34750 30 31 30 31 30 35 30 30 22 29 7b 74 68 72 6f 77  01010500"){throw
34760 22 50 4b 43 53 38 20 41 6c 67 6f 72 69 74 68 6d  "PKCS8 Algorithm
34770 49 64 20 69 73 20 6e 6f 74 20 72 73 61 45 6e 63  Id is not rsaEnc
34780 72 79 70 74 69 6f 6e 22 7d 69 66 28 72 2e 73 75  ryption"}if(r.su
34790 62 73 74 72 28 71 5b 31 5d 2c 32 29 21 3d 22 30  bstr(q[1],2)!="0
347a0 33 22 29 7b 74 68 72 6f 77 22 50 4b 43 53 38 20  3"){throw"PKCS8 
347b0 50 75 62 6c 69 63 20 4b 65 79 20 69 73 20 6e 6f  Public Key is no
347c0 74 20 42 49 54 53 54 52 49 4e 47 20 65 6e 63 61  t BITSTRING enca
347d0 70 73 6c 61 74 65 64 2e 22 7d 76 61 72 20 74 3d  pslated."}var t=
347e0 41 53 4e 31 48 45 58 2e 67 65 74 53 74 61 72 74  ASN1HEX.getStart
347f0 50 6f 73 4f 66 56 5f 41 74 4f 62 6a 28 72 2c 71  PosOfV_AtObj(r,q
34800 5b 31 5d 29 2b 32 3b 69 66 28 72 2e 73 75 62 73  [1])+2;if(r.subs
34810 74 72 28 74 2c 32 29 21 3d 22 33 30 22 29 7b 74  tr(t,2)!="30"){t
34820 68 72 6f 77 22 50 4b 43 53 38 20 50 75 62 6c 69  hrow"PKCS8 Publi
34830 63 20 4b 65 79 20 69 73 20 6e 6f 74 20 53 45 51  c Key is not SEQ
34840 55 45 4e 43 45 2e 22 7d 76 61 72 20 6e 3d 41 53  UENCE."}var n=AS
34850 4e 31 48 45 58 2e 67 65 74 50 6f 73 41 72 72 61  N1HEX.getPosArra
34860 79 4f 66 43 68 69 6c 64 72 65 6e 5f 41 74 4f 62  yOfChildren_AtOb
34870 6a 28 72 2c 74 29 3b 69 66 28 6e 2e 6c 65 6e 67  j(r,t);if(n.leng
34880 74 68 21 3d 32 29 7b 74 68 72 6f 77 22 69 6e 6e  th!=2){throw"inn
34890 65 72 20 44 45 52 53 65 71 75 65 6e 63 65 20 73  er DERSequence s
348a0 68 61 6c 6c 20 68 61 76 65 20 32 20 65 6c 65 6d  hall have 2 elem
348b0 65 6e 74 73 3a 20 22 2b 6e 2e 6c 65 6e 67 74 68  ents: "+n.length
348c0 7d 69 66 28 72 2e 73 75 62 73 74 72 28 6e 5b 30  }if(r.substr(n[0
348d0 5d 2c 32 29 21 3d 22 30 32 22 29 7b 74 68 72 6f  ],2)!="02"){thro
348e0 77 22 4e 20 69 73 20 6e 6f 74 20 41 53 4e 2e 31  w"N is not ASN.1
348f0 20 49 4e 54 45 47 45 52 22 7d 69 66 28 72 2e 73   INTEGER"}if(r.s
34900 75 62 73 74 72 28 6e 5b 31 5d 2c 32 29 21 3d 22  ubstr(n[1],2)!="
34910 30 32 22 29 7b 74 68 72 6f 77 22 45 20 69 73 20  02"){throw"E is 
34920 6e 6f 74 20 41 53 4e 2e 31 20 49 4e 54 45 47 45  not ASN.1 INTEGE
34930 52 22 7d 76 61 72 20 75 3d 41 53 4e 31 48 45 58  R"}var u=ASN1HEX
34940 2e 67 65 74 48 65 78 4f 66 56 5f 41 74 4f 62 6a  .getHexOfV_AtObj
34950 28 72 2c 6e 5b 30 5d 29 3b 76 61 72 20 73 3d 41  (r,n[0]);var s=A
34960 53 4e 31 48 45 58 2e 67 65 74 48 65 78 4f 66 56  SN1HEX.getHexOfV
34970 5f 41 74 4f 62 6a 28 72 2c 6e 5b 31 5d 29 3b 76  _AtObj(r,n[1]);v
34980 61 72 20 6f 3d 6e 65 77 20 52 53 41 4b 65 79 28  ar o=new RSAKey(
34990 29 3b 6f 2e 73 65 74 50 75 62 6c 69 63 28 75 2c  );o.setPublic(u,
349a0 73 29 3b 72 65 74 75 72 6e 20 6f 7d 2c 7d 7d 28  s);return o},}}(
349b0 29 3b 0a 2f 2a 21 20 6b 65 79 75 74 69 6c 2d 31  );./*! keyutil-1
349c0 2e 30 2e 31 32 2e 6a 73 20 28 63 29 20 32 30 31  .0.12.js (c) 201
349d0 33 2d 32 30 31 35 20 4b 65 6e 6a 69 20 55 72 75  3-2015 Kenji Uru
349e0 73 68 69 6d 61 20 7c 20 6b 6a 75 72 2e 67 69 74  shima | kjur.git
349f0 68 75 62 2e 63 6f 6d 2f 6a 73 72 73 61 73 69 67  hub.com/jsrsasig
34a00 6e 2f 6c 69 63 65 6e 73 65 0a 20 2a 2f 0a 76 61  n/license. */.va
34a10 72 20 4b 45 59 55 54 49 4c 3d 66 75 6e 63 74 69  r KEYUTIL=functi
34a20 6f 6e 28 29 7b 76 61 72 20 64 3d 66 75 6e 63 74  on(){var d=funct
34a30 69 6f 6e 28 70 2c 72 2c 71 29 7b 72 65 74 75 72  ion(p,r,q){retur
34a40 6e 20 6b 28 43 72 79 70 74 6f 4a 53 2e 41 45 53  n k(CryptoJS.AES
34a50 2c 70 2c 72 2c 71 29 7d 3b 76 61 72 20 65 3d 66  ,p,r,q)};var e=f
34a60 75 6e 63 74 69 6f 6e 28 70 2c 72 2c 71 29 7b 72  unction(p,r,q){r
34a70 65 74 75 72 6e 20 6b 28 43 72 79 70 74 6f 4a 53  eturn k(CryptoJS
34a80 2e 54 72 69 70 6c 65 44 45 53 2c 70 2c 72 2c 71  .TripleDES,p,r,q
34a90 29 7d 3b 76 61 72 20 61 3d 66 75 6e 63 74 69 6f  )};var a=functio
34aa0 6e 28 70 2c 72 2c 71 29 7b 72 65 74 75 72 6e 20  n(p,r,q){return 
34ab0 6b 28 43 72 79 70 74 6f 4a 53 2e 44 45 53 2c 70  k(CryptoJS.DES,p
34ac0 2c 72 2c 71 29 7d 3b 76 61 72 20 6b 3d 66 75 6e  ,r,q)};var k=fun
34ad0 63 74 69 6f 6e 28 73 2c 78 2c 75 2c 71 29 7b 76  ction(s,x,u,q){v
34ae0 61 72 20 72 3d 43 72 79 70 74 6f 4a 53 2e 65 6e  ar r=CryptoJS.en
34af0 63 2e 48 65 78 2e 70 61 72 73 65 28 78 29 3b 76  c.Hex.parse(x);v
34b00 61 72 20 77 3d 43 72 79 70 74 6f 4a 53 2e 65 6e  ar w=CryptoJS.en
34b10 63 2e 48 65 78 2e 70 61 72 73 65 28 75 29 3b 76  c.Hex.parse(u);v
34b20 61 72 20 70 3d 43 72 79 70 74 6f 4a 53 2e 65 6e  ar p=CryptoJS.en
34b30 63 2e 48 65 78 2e 70 61 72 73 65 28 71 29 3b 76  c.Hex.parse(q);v
34b40 61 72 20 74 3d 7b 7d 3b 74 2e 6b 65 79 3d 77 3b  ar t={};t.key=w;
34b50 74 2e 69 76 3d 70 3b 74 2e 63 69 70 68 65 72 74  t.iv=p;t.ciphert
34b60 65 78 74 3d 72 3b 76 61 72 20 76 3d 73 2e 64 65  ext=r;var v=s.de
34b70 63 72 79 70 74 28 74 2c 77 2c 7b 69 76 3a 70 7d  crypt(t,w,{iv:p}
34b80 29 3b 72 65 74 75 72 6e 20 43 72 79 70 74 6f 4a  );return CryptoJ
34b90 53 2e 65 6e 63 2e 48 65 78 2e 73 74 72 69 6e 67  S.enc.Hex.string
34ba0 69 66 79 28 76 29 7d 3b 76 61 72 20 6c 3d 66 75  ify(v)};var l=fu
34bb0 6e 63 74 69 6f 6e 28 70 2c 72 2c 71 29 7b 72 65  nction(p,r,q){re
34bc0 74 75 72 6e 20 67 28 43 72 79 70 74 6f 4a 53 2e  turn g(CryptoJS.
34bd0 41 45 53 2c 70 2c 72 2c 71 29 7d 3b 76 61 72 20  AES,p,r,q)};var 
34be0 6f 3d 66 75 6e 63 74 69 6f 6e 28 70 2c 72 2c 71  o=function(p,r,q
34bf0 29 7b 72 65 74 75 72 6e 20 67 28 43 72 79 70 74  ){return g(Crypt
34c00 6f 4a 53 2e 54 72 69 70 6c 65 44 45 53 2c 70 2c  oJS.TripleDES,p,
34c10 72 2c 71 29 7d 3b 76 61 72 20 66 3d 66 75 6e 63  r,q)};var f=func
34c20 74 69 6f 6e 28 70 2c 72 2c 71 29 7b 72 65 74 75  tion(p,r,q){retu
34c30 72 6e 20 67 28 43 72 79 70 74 6f 4a 53 2e 44 45  rn g(CryptoJS.DE
34c40 53 2c 70 2c 72 2c 71 29 7d 3b 76 61 72 20 67 3d  S,p,r,q)};var g=
34c50 66 75 6e 63 74 69 6f 6e 28 74 2c 79 2c 76 2c 71  function(t,y,v,q
34c60 29 7b 76 61 72 20 73 3d 43 72 79 70 74 6f 4a 53  ){var s=CryptoJS
34c70 2e 65 6e 63 2e 48 65 78 2e 70 61 72 73 65 28 79  .enc.Hex.parse(y
34c80 29 3b 76 61 72 20 78 3d 43 72 79 70 74 6f 4a 53  );var x=CryptoJS
34c90 2e 65 6e 63 2e 48 65 78 2e 70 61 72 73 65 28 76  .enc.Hex.parse(v
34ca0 29 3b 76 61 72 20 70 3d 43 72 79 70 74 6f 4a 53  );var p=CryptoJS
34cb0 2e 65 6e 63 2e 48 65 78 2e 70 61 72 73 65 28 71  .enc.Hex.parse(q
34cc0 29 3b 76 61 72 20 77 3d 74 2e 65 6e 63 72 79 70  );var w=t.encryp
34cd0 74 28 73 2c 78 2c 7b 69 76 3a 70 7d 29 3b 76 61  t(s,x,{iv:p});va
34ce0 72 20 72 3d 43 72 79 70 74 6f 4a 53 2e 65 6e 63  r r=CryptoJS.enc
34cf0 2e 48 65 78 2e 70 61 72 73 65 28 77 2e 74 6f 53  .Hex.parse(w.toS
34d00 74 72 69 6e 67 28 29 29 3b 76 61 72 20 75 3d 43  tring());var u=C
34d10 72 79 70 74 6f 4a 53 2e 65 6e 63 2e 42 61 73 65  ryptoJS.enc.Base
34d20 36 34 2e 73 74 72 69 6e 67 69 66 79 28 72 29 3b  64.stringify(r);
34d30 72 65 74 75 72 6e 20 75 7d 3b 76 61 72 20 69 3d  return u};var i=
34d40 7b 22 41 45 53 2d 32 35 36 2d 43 42 43 22 3a 7b  {"AES-256-CBC":{
34d50 70 72 6f 63 3a 64 2c 65 70 72 6f 63 3a 6c 2c 6b  proc:d,eproc:l,k
34d60 65 79 6c 65 6e 3a 33 32 2c 69 76 6c 65 6e 3a 31  eylen:32,ivlen:1
34d70 36 7d 2c 22 41 45 53 2d 31 39 32 2d 43 42 43 22  6},"AES-192-CBC"
34d80 3a 7b 70 72 6f 63 3a 64 2c 65 70 72 6f 63 3a 6c  :{proc:d,eproc:l
34d90 2c 6b 65 79 6c 65 6e 3a 32 34 2c 69 76 6c 65 6e  ,keylen:24,ivlen
34da0 3a 31 36 7d 2c 22 41 45 53 2d 31 32 38 2d 43 42  :16},"AES-128-CB
34db0 43 22 3a 7b 70 72 6f 63 3a 64 2c 65 70 72 6f 63  C":{proc:d,eproc
34dc0 3a 6c 2c 6b 65 79 6c 65 6e 3a 31 36 2c 69 76 6c  :l,keylen:16,ivl
34dd0 65 6e 3a 31 36 7d 2c 22 44 45 53 2d 45 44 45 33  en:16},"DES-EDE3
34de0 2d 43 42 43 22 3a 7b 70 72 6f 63 3a 65 2c 65 70  -CBC":{proc:e,ep
34df0 72 6f 63 3a 6f 2c 6b 65 79 6c 65 6e 3a 32 34 2c  roc:o,keylen:24,
34e00 69 76 6c 65 6e 3a 38 7d 2c 22 44 45 53 2d 43 42  ivlen:8},"DES-CB
34e10 43 22 3a 7b 70 72 6f 63 3a 61 2c 65 70 72 6f 63  C":{proc:a,eproc
34e20 3a 66 2c 6b 65 79 6c 65 6e 3a 38 2c 69 76 6c 65  :f,keylen:8,ivle
34e30 6e 3a 38 7d 7d 3b 76 61 72 20 63 3d 66 75 6e 63  n:8}};var c=func
34e40 74 69 6f 6e 28 70 29 7b 72 65 74 75 72 6e 20 69  tion(p){return i
34e50 5b 70 5d 5b 22 70 72 6f 63 22 5d 7d 3b 76 61 72  [p]["proc"]};var
34e60 20 6d 3d 66 75 6e 63 74 69 6f 6e 28 70 29 7b 76   m=function(p){v
34e70 61 72 20 72 3d 43 72 79 70 74 6f 4a 53 2e 6c 69  ar r=CryptoJS.li
34e80 62 2e 57 6f 72 64 41 72 72 61 79 2e 72 61 6e 64  b.WordArray.rand
34e90 6f 6d 28 70 29 3b 76 61 72 20 71 3d 43 72 79 70  om(p);var q=Cryp
34ea0 74 6f 4a 53 2e 65 6e 63 2e 48 65 78 2e 73 74 72  toJS.enc.Hex.str
34eb0 69 6e 67 69 66 79 28 72 29 3b 72 65 74 75 72 6e  ingify(r);return
34ec0 20 71 7d 3b 76 61 72 20 6e 3d 66 75 6e 63 74 69   q};var n=functi
34ed0 6f 6e 28 74 29 7b 76 61 72 20 75 3d 7b 7d 3b 69  on(t){var u={};i
34ee0 66 28 74 2e 6d 61 74 63 68 28 6e 65 77 20 52 65  f(t.match(new Re
34ef0 67 45 78 70 28 22 44 45 4b 2d 49 6e 66 6f 3a 20  gExp("DEK-Info: 
34f00 28 5b 5e 2c 5d 2b 29 2c 28 5b 30 2d 39 41 2d 46  ([^,]+),([0-9A-F
34f10 61 2d 66 5d 2b 29 22 2c 22 6d 22 29 29 29 7b 75  a-f]+)","m"))){u
34f20 2e 63 69 70 68 65 72 3d 52 65 67 45 78 70 2e 24  .cipher=RegExp.$
34f30 31 3b 75 2e 69 76 73 61 6c 74 3d 52 65 67 45 78  1;u.ivsalt=RegEx
34f40 70 2e 24 32 7d 69 66 28 74 2e 6d 61 74 63 68 28  p.$2}if(t.match(
34f50 6e 65 77 20 52 65 67 45 78 70 28 22 2d 2d 2d 2d  new RegExp("----
34f60 2d 42 45 47 49 4e 20 28 5b 41 2d 5a 5d 2b 29 20  -BEGIN ([A-Z]+) 
34f70 50 52 49 56 41 54 45 20 4b 45 59 2d 2d 2d 2d 2d  PRIVATE KEY-----
34f80 22 29 29 29 7b 75 2e 74 79 70 65 3d 52 65 67 45  "))){u.type=RegE
34f90 78 70 2e 24 31 7d 76 61 72 20 72 3d 2d 31 3b 76  xp.$1}var r=-1;v
34fa0 61 72 20 76 3d 30 3b 69 66 28 74 2e 69 6e 64 65  ar v=0;if(t.inde
34fb0 78 4f 66 28 22 5c 72 5c 6e 5c 72 5c 6e 22 29 21  xOf("\r\n\r\n")!
34fc0 3d 2d 31 29 7b 72 3d 74 2e 69 6e 64 65 78 4f 66  =-1){r=t.indexOf
34fd0 28 22 5c 72 5c 6e 5c 72 5c 6e 22 29 3b 76 3d 32  ("\r\n\r\n");v=2
34fe0 7d 69 66 28 74 2e 69 6e 64 65 78 4f 66 28 22 5c  }if(t.indexOf("\
34ff0 6e 5c 6e 22 29 21 3d 2d 31 29 7b 72 3d 74 2e 69  n\n")!=-1){r=t.i
35000 6e 64 65 78 4f 66 28 22 5c 6e 5c 6e 22 29 3b 76  ndexOf("\n\n");v
35010 3d 31 7d 76 61 72 20 71 3d 74 2e 69 6e 64 65 78  =1}var q=t.index
35020 4f 66 28 22 2d 2d 2d 2d 2d 45 4e 44 22 29 3b 69  Of("-----END");i
35030 66 28 72 21 3d 2d 31 26 26 71 21 3d 2d 31 29 7b  f(r!=-1&&q!=-1){
35040 76 61 72 20 70 3d 74 2e 73 75 62 73 74 72 69 6e  var p=t.substrin
35050 67 28 72 2b 76 2a 32 2c 71 2d 76 29 3b 70 3d 70  g(r+v*2,q-v);p=p
35060 2e 72 65 70 6c 61 63 65 28 2f 5c 73 2b 2f 67 2c  .replace(/\s+/g,
35070 22 22 29 3b 75 2e 64 61 74 61 3d 70 7d 72 65 74  "");u.data=p}ret
35080 75 72 6e 20 75 7d 3b 76 61 72 20 6a 3d 66 75 6e  urn u};var j=fun
35090 63 74 69 6f 6e 28 71 2c 79 2c 70 29 7b 76 61 72  ction(q,y,p){var
350a0 20 76 3d 70 2e 73 75 62 73 74 72 69 6e 67 28 30   v=p.substring(0
350b0 2c 31 36 29 3b 76 61 72 20 74 3d 43 72 79 70 74  ,16);var t=Crypt
350c0 6f 4a 53 2e 65 6e 63 2e 48 65 78 2e 70 61 72 73  oJS.enc.Hex.pars
350d0 65 28 76 29 3b 76 61 72 20 72 3d 43 72 79 70 74  e(v);var r=Crypt
350e0 6f 4a 53 2e 65 6e 63 2e 55 74 66 38 2e 70 61 72  oJS.enc.Utf8.par
350f0 73 65 28 79 29 3b 76 61 72 20 75 3d 69 5b 71 5d  se(y);var u=i[q]
35100 5b 22 6b 65 79 6c 65 6e 22 5d 2b 69 5b 71 5d 5b  ["keylen"]+i[q][
35110 22 69 76 6c 65 6e 22 5d 3b 76 61 72 20 78 3d 22  "ivlen"];var x="
35120 22 3b 76 61 72 20 77 3d 6e 75 6c 6c 3b 66 6f 72  ";var w=null;for
35130 28 3b 3b 29 7b 76 61 72 20 73 3d 43 72 79 70 74  (;;){var s=Crypt
35140 6f 4a 53 2e 61 6c 67 6f 2e 4d 44 35 2e 63 72 65  oJS.algo.MD5.cre
35150 61 74 65 28 29 3b 69 66 28 77 21 3d 6e 75 6c 6c  ate();if(w!=null
35160 29 7b 73 2e 75 70 64 61 74 65 28 77 29 7d 73 2e  ){s.update(w)}s.
35170 75 70 64 61 74 65 28 72 29 3b 73 2e 75 70 64 61  update(r);s.upda
35180 74 65 28 74 29 3b 77 3d 73 2e 66 69 6e 61 6c 69  te(t);w=s.finali
35190 7a 65 28 29 3b 78 3d 78 2b 43 72 79 70 74 6f 4a  ze();x=x+CryptoJ
351a0 53 2e 65 6e 63 2e 48 65 78 2e 73 74 72 69 6e 67  S.enc.Hex.string
351b0 69 66 79 28 77 29 3b 69 66 28 78 2e 6c 65 6e 67  ify(w);if(x.leng
351c0 74 68 3e 3d 75 2a 32 29 7b 62 72 65 61 6b 7d 7d  th>=u*2){break}}
351d0 76 61 72 20 7a 3d 7b 7d 3b 7a 2e 6b 65 79 68 65  var z={};z.keyhe
351e0 78 3d 78 2e 73 75 62 73 74 72 28 30 2c 69 5b 71  x=x.substr(0,i[q
351f0 5d 5b 22 6b 65 79 6c 65 6e 22 5d 2a 32 29 3b 7a  ]["keylen"]*2);z
35200 2e 69 76 68 65 78 3d 78 2e 73 75 62 73 74 72 28  .ivhex=x.substr(
35210 69 5b 71 5d 5b 22 6b 65 79 6c 65 6e 22 5d 2a 32  i[q]["keylen"]*2
35220 2c 69 5b 71 5d 5b 22 69 76 6c 65 6e 22 5d 2a 32  ,i[q]["ivlen"]*2
35230 29 3b 72 65 74 75 72 6e 20 7a 7d 3b 76 61 72 20  );return z};var 
35240 62 3d 66 75 6e 63 74 69 6f 6e 28 70 2c 76 2c 72  b=function(p,v,r
35250 2c 77 29 7b 76 61 72 20 73 3d 43 72 79 70 74 6f  ,w){var s=Crypto
35260 4a 53 2e 65 6e 63 2e 42 61 73 65 36 34 2e 70 61  JS.enc.Base64.pa
35270 72 73 65 28 70 29 3b 76 61 72 20 71 3d 43 72 79  rse(p);var q=Cry
35280 70 74 6f 4a 53 2e 65 6e 63 2e 48 65 78 2e 73 74  ptoJS.enc.Hex.st
35290 72 69 6e 67 69 66 79 28 73 29 3b 76 61 72 20 75  ringify(s);var u
352a0 3d 69 5b 76 5d 5b 22 70 72 6f 63 22 5d 3b 76 61  =i[v]["proc"];va
352b0 72 20 74 3d 75 28 71 2c 72 2c 77 29 3b 72 65 74  r t=u(q,r,w);ret
352c0 75 72 6e 20 74 7d 3b 76 61 72 20 68 3d 66 75 6e  urn t};var h=fun
352d0 63 74 69 6f 6e 28 70 2c 73 2c 71 2c 75 29 7b 76  ction(p,s,q,u){v
352e0 61 72 20 72 3d 69 5b 73 5d 5b 22 65 70 72 6f 63  ar r=i[s]["eproc
352f0 22 5d 3b 76 61 72 20 74 3d 72 28 70 2c 71 2c 75  "];var t=r(p,q,u
35300 29 3b 72 65 74 75 72 6e 20 74 7d 3b 72 65 74 75  );return t};retu
35310 72 6e 7b 76 65 72 73 69 6f 6e 3a 22 31 2e 30 2e  rn{version:"1.0.
35320 30 22 2c 67 65 74 48 65 78 46 72 6f 6d 50 45 4d  0",getHexFromPEM
35330 3a 66 75 6e 63 74 69 6f 6e 28 71 2c 75 29 7b 76  :function(q,u){v
35340 61 72 20 72 3d 71 3b 69 66 28 72 2e 69 6e 64 65  ar r=q;if(r.inde
35350 78 4f 66 28 22 2d 2d 2d 2d 2d 42 45 47 49 4e 20  xOf("-----BEGIN 
35360 22 29 3d 3d 2d 31 29 7b 74 68 72 6f 77 22 63 61  ")==-1){throw"ca
35370 6e 27 74 20 66 69 6e 64 20 50 45 4d 20 68 65 61  n't find PEM hea
35380 64 65 72 3a 20 22 2b 75 7d 69 66 28 74 79 70 65  der: "+u}if(type
35390 6f 66 20 75 3d 3d 22 73 74 72 69 6e 67 22 26 26  of u=="string"&&
353a0 75 21 3d 22 22 29 7b 72 3d 72 2e 72 65 70 6c 61  u!=""){r=r.repla
353b0 63 65 28 22 2d 2d 2d 2d 2d 42 45 47 49 4e 20 22  ce("-----BEGIN "
353c0 2b 75 2b 22 2d 2d 2d 2d 2d 22 2c 22 22 29 3b 72  +u+"-----","");r
353d0 3d 72 2e 72 65 70 6c 61 63 65 28 22 2d 2d 2d 2d  =r.replace("----
353e0 2d 45 4e 44 20 22 2b 75 2b 22 2d 2d 2d 2d 2d 22  -END "+u+"-----"
353f0 2c 22 22 29 7d 65 6c 73 65 7b 72 3d 72 2e 72 65  ,"")}else{r=r.re
35400 70 6c 61 63 65 28 2f 2d 2d 2d 2d 2d 42 45 47 49  place(/-----BEGI
35410 4e 20 5b 5e 2d 5d 2b 2d 2d 2d 2d 2d 2f 2c 22 22  N [^-]+-----/,""
35420 29 3b 72 3d 72 2e 72 65 70 6c 61 63 65 28 2f 2d  );r=r.replace(/-
35430 2d 2d 2d 2d 45 4e 44 20 5b 5e 2d 5d 2b 2d 2d 2d  ----END [^-]+---
35440 2d 2d 2f 2c 22 22 29 7d 76 61 72 20 74 3d 72 2e  --/,"")}var t=r.
35450 72 65 70 6c 61 63 65 28 2f 5c 73 2b 2f 67 2c 22  replace(/\s+/g,"
35460 22 29 3b 76 61 72 20 70 3d 62 36 34 74 6f 68 65  ");var p=b64tohe
35470 78 28 74 29 3b 72 65 74 75 72 6e 20 70 7d 2c 67  x(t);return p},g
35480 65 74 44 65 63 72 79 70 74 65 64 4b 65 79 48 65  etDecryptedKeyHe
35490 78 42 79 4b 65 79 49 56 3a 66 75 6e 63 74 69 6f  xByKeyIV:functio
354a0 6e 28 71 2c 74 2c 73 2c 72 29 7b 76 61 72 20 70  n(q,t,s,r){var p
354b0 3d 63 28 74 29 3b 72 65 74 75 72 6e 20 70 28 71  =c(t);return p(q
354c0 2c 73 2c 72 29 7d 2c 70 61 72 73 65 50 4b 43 53  ,s,r)},parsePKCS
354d0 35 50 45 4d 3a 66 75 6e 63 74 69 6f 6e 28 70 29  5PEM:function(p)
354e0 7b 72 65 74 75 72 6e 20 6e 28 70 29 7d 2c 67 65  {return n(p)},ge
354f0 74 4b 65 79 41 6e 64 55 6e 75 73 65 64 49 76 42  tKeyAndUnusedIvB
35500 79 50 61 73 73 63 6f 64 65 41 6e 64 49 76 73 61  yPasscodeAndIvsa
35510 6c 74 3a 66 75 6e 63 74 69 6f 6e 28 71 2c 70 2c  lt:function(q,p,
35520 72 29 7b 72 65 74 75 72 6e 20 6a 28 71 2c 70 2c  r){return j(q,p,
35530 72 29 7d 2c 64 65 63 72 79 70 74 4b 65 79 42 36  r)},decryptKeyB6
35540 34 3a 66 75 6e 63 74 69 6f 6e 28 70 2c 72 2c 71  4:function(p,r,q
35550 2c 73 29 7b 72 65 74 75 72 6e 20 62 28 70 2c 72  ,s){return b(p,r
35560 2c 71 2c 73 29 7d 2c 67 65 74 44 65 63 72 79 70  ,q,s)},getDecryp
35570 74 65 64 4b 65 79 48 65 78 3a 66 75 6e 63 74 69  tedKeyHex:functi
35580 6f 6e 28 79 2c 78 29 7b 76 61 72 20 71 3d 6e 28  on(y,x){var q=n(
35590 79 29 3b 76 61 72 20 74 3d 71 2e 74 79 70 65 3b  y);var t=q.type;
355a0 76 61 72 20 72 3d 71 2e 63 69 70 68 65 72 3b 76  var r=q.cipher;v
355b0 61 72 20 70 3d 71 2e 69 76 73 61 6c 74 3b 76 61  ar p=q.ivsalt;va
355c0 72 20 73 3d 71 2e 64 61 74 61 3b 76 61 72 20 77  r s=q.data;var w
355d0 3d 6a 28 72 2c 78 2c 70 29 3b 76 61 72 20 76 3d  =j(r,x,p);var v=
355e0 77 2e 6b 65 79 68 65 78 3b 76 61 72 20 75 3d 62  w.keyhex;var u=b
355f0 28 73 2c 72 2c 76 2c 70 29 3b 72 65 74 75 72 6e  (s,r,v,p);return
35600 20 75 7d 2c 67 65 74 52 53 41 4b 65 79 46 72 6f   u},getRSAKeyFro
35610 6d 45 6e 63 72 79 70 74 65 64 50 4b 43 53 35 50  mEncryptedPKCS5P
35620 45 4d 3a 66 75 6e 63 74 69 6f 6e 28 72 2c 71 29  EM:function(r,q)
35630 7b 76 61 72 20 73 3d 74 68 69 73 2e 67 65 74 44  {var s=this.getD
35640 65 63 72 79 70 74 65 64 4b 65 79 48 65 78 28 72  ecryptedKeyHex(r
35650 2c 71 29 3b 76 61 72 20 70 3d 6e 65 77 20 52 53  ,q);var p=new RS
35660 41 4b 65 79 28 29 3b 70 2e 72 65 61 64 50 72 69  AKey();p.readPri
35670 76 61 74 65 4b 65 79 46 72 6f 6d 41 53 4e 31 48  vateKeyFromASN1H
35680 65 78 53 74 72 69 6e 67 28 73 29 3b 72 65 74 75  exString(s);retu
35690 72 6e 20 70 7d 2c 67 65 74 45 6e 63 72 79 70 74  rn p},getEncrypt
356a0 65 64 50 4b 43 53 35 50 45 4d 46 72 6f 6d 50 72  edPKCS5PEMFromPr
356b0 76 4b 65 79 48 65 78 3a 66 75 6e 63 74 69 6f 6e  vKeyHex:function
356c0 28 78 2c 73 2c 41 2c 74 2c 72 29 7b 76 61 72 20  (x,s,A,t,r){var 
356d0 70 3d 22 22 3b 69 66 28 74 79 70 65 6f 66 20 74  p="";if(typeof t
356e0 3d 3d 22 75 6e 64 65 66 69 6e 65 64 22 7c 7c 74  =="undefined"||t
356f0 3d 3d 6e 75 6c 6c 29 7b 74 3d 22 41 45 53 2d 32  ==null){t="AES-2
35700 35 36 2d 43 42 43 22 7d 69 66 28 74 79 70 65 6f  56-CBC"}if(typeo
35710 66 20 69 5b 74 5d 3d 3d 22 75 6e 64 65 66 69 6e  f i[t]=="undefin
35720 65 64 22 29 7b 74 68 72 6f 77 22 4b 45 59 55 54  ed"){throw"KEYUT
35730 49 4c 20 75 6e 73 75 70 70 6f 72 74 65 64 20 61  IL unsupported a
35740 6c 67 6f 72 69 74 68 6d 3a 20 22 2b 74 7d 69 66  lgorithm: "+t}if
35750 28 74 79 70 65 6f 66 20 72 3d 3d 22 75 6e 64 65  (typeof r=="unde
35760 66 69 6e 65 64 22 7c 7c 72 3d 3d 6e 75 6c 6c 29  fined"||r==null)
35770 7b 76 61 72 20 76 3d 69 5b 74 5d 5b 22 69 76 6c  {var v=i[t]["ivl
35780 65 6e 22 5d 3b 76 61 72 20 75 3d 6d 28 76 29 3b  en"];var u=m(v);
35790 72 3d 75 2e 74 6f 55 70 70 65 72 43 61 73 65 28  r=u.toUpperCase(
357a0 29 7d 76 61 72 20 7a 3d 6a 28 74 2c 41 2c 72 29  )}var z=j(t,A,r)
357b0 3b 76 61 72 20 79 3d 7a 2e 6b 65 79 68 65 78 3b  ;var y=z.keyhex;
357c0 76 61 72 20 77 3d 68 28 73 2c 74 2c 79 2c 72 29  var w=h(s,t,y,r)
357d0 3b 76 61 72 20 71 3d 77 2e 72 65 70 6c 61 63 65  ;var q=w.replace
357e0 28 2f 28 2e 7b 36 34 7d 29 2f 67 2c 22 24 31 5c  (/(.{64})/g,"$1\
357f0 72 5c 6e 22 29 3b 76 61 72 20 70 3d 22 2d 2d 2d  r\n");var p="---
35800 2d 2d 42 45 47 49 4e 20 22 2b 78 2b 22 20 50 52  --BEGIN "+x+" PR
35810 49 56 41 54 45 20 4b 45 59 2d 2d 2d 2d 2d 5c 72  IVATE KEY-----\r
35820 5c 6e 22 3b 70 2b 3d 22 50 72 6f 63 2d 54 79 70  \n";p+="Proc-Typ
35830 65 3a 20 34 2c 45 4e 43 52 59 50 54 45 44 5c 72  e: 4,ENCRYPTED\r
35840 5c 6e 22 3b 70 2b 3d 22 44 45 4b 2d 49 6e 66 6f  \n";p+="DEK-Info
35850 3a 20 22 2b 74 2b 22 2c 22 2b 72 2b 22 5c 72 5c  : "+t+","+r+"\r\
35860 6e 22 3b 70 2b 3d 22 5c 72 5c 6e 22 3b 70 2b 3d  n";p+="\r\n";p+=
35870 71 3b 70 2b 3d 22 5c 72 5c 6e 2d 2d 2d 2d 2d 45  q;p+="\r\n-----E
35880 4e 44 20 22 2b 78 2b 22 20 50 52 49 56 41 54 45  ND "+x+" PRIVATE
35890 20 4b 45 59 2d 2d 2d 2d 2d 5c 72 5c 6e 22 3b 72   KEY-----\r\n";r
358a0 65 74 75 72 6e 20 70 7d 2c 67 65 74 45 6e 63 72  eturn p},getEncr
358b0 79 70 74 65 64 50 4b 43 53 35 50 45 4d 46 72 6f  yptedPKCS5PEMFro
358c0 6d 52 53 41 4b 65 79 3a 66 75 6e 63 74 69 6f 6e  mRSAKey:function
358d0 28 44 2c 45 2c 72 2c 74 29 7b 76 61 72 20 42 3d  (D,E,r,t){var B=
358e0 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  new KJUR.asn1.DE
358f0 52 49 6e 74 65 67 65 72 28 7b 22 69 6e 74 22 3a  RInteger({"int":
35900 30 7d 29 3b 76 61 72 20 77 3d 6e 65 77 20 4b 4a  0});var w=new KJ
35910 55 52 2e 61 73 6e 31 2e 44 45 52 49 6e 74 65 67  UR.asn1.DERInteg
35920 65 72 28 7b 62 69 67 69 6e 74 3a 44 2e 6e 7d 29  er({bigint:D.n})
35930 3b 76 61 72 20 41 3d 6e 65 77 20 4b 4a 55 52 2e  ;var A=new KJUR.
35940 61 73 6e 31 2e 44 45 52 49 6e 74 65 67 65 72 28  asn1.DERInteger(
35950 7b 22 69 6e 74 22 3a 44 2e 65 7d 29 3b 76 61 72  {"int":D.e});var
35960 20 43 3d 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31   C=new KJUR.asn1
35970 2e 44 45 52 49 6e 74 65 67 65 72 28 7b 62 69 67  .DERInteger({big
35980 69 6e 74 3a 44 2e 64 7d 29 3b 76 61 72 20 75 3d  int:D.d});var u=
35990 6e 65 77 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45  new KJUR.asn1.DE
359a0 52 49 6e 74 65 67 65 72 28 7b 62 69 67 69 6e 74  RInteger({bigint
359b0 3a 44 2e 70 7d 29 3b 76 61 72 20 73 3d 6e 65 77  :D.p});var s=new
359c0 20 4b 4a 55 52 2e 61 73 6e 31 2e 44 45 52 49 6e   KJUR.asn1.DERIn
359d0 74 65 67 65 72 28 7b 62 69 67 69 6e 74 3a 44 2e  teger({bigint:D.
359e0 71 7d 29 3b 76 61 72 20 7a 3d 6e 65 77 20 4b 4a  q});var z=new KJ
359f0 55 52 2e 61 73 6e 31 2e 44 45 52 49 6e 74 65 67  UR.asn1.DERInteg
35a00 65 72 28 7b 62 69 67 69 6e 74 3a 44 2e 64 6d 70  er({bigint:D.dmp
35a10 31 7d 29 3b 76 61 72 20 76 3d 6e 65 77 20 4b 4a  1});var v=new KJ
35a20 55 52 2e 61 73 6e 31 2e 44 45 52 49 6e 74 65 67  UR.asn1.DERInteg
35a30 65 72 28 7b 62 69 67 69 6e 74 3a 44 2e 64 6d 71  er({bigint:D.dmq
35a40 31 7d 29 3b 76 61 72 20 79 3d 6e 65 77 20 4b 4a  1});var y=new KJ
35a50 55 52 2e 61 73 6e 31 2e 44 45 52 49 6e 74 65 67  UR.asn1.DERInteg
35a60 65 72 28 7b 62 69 67 69 6e 74 3a 44 2e 63 6f 65  er({bigint:D.coe
35a70 66 66 7d 29 3b 76 61 72 20 46 3d 6e 65 77 20 4b  ff});var F=new K
35a80 4a 55 52 2e 61 73 6e 31 2e 44 45 52 53 65 71 75  JUR.asn1.D