238. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 9/25/2018 2:13:23 PM Central Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

238.1 Files compared

# Location File Last Modified
1 build 3.zip\build 3\MHLTH_YS_137_Source\JavaScript\resources\javaJDF-1.8.0\src\sun\security\internal\spec TlsPrfParameterSpec.java Mon Jan 22 14:46:54 2018 UTC
2 build 3.zip\build 3\MHLTH_YS_137_Source\JavaScript\resources\javaJDF-1.8.0\src\sun\security\internal\spec TlsPrfParameterSpec.java Wed Sep 12 17:51:34 2018 UTC

238.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 8 296
Changed 7 18
Inserted 0 0
Removed 0 0

238.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

238.4 Active regular expressions

No regular expressions were active.

238.5 Comparison detail

  1   /*
  2    * Copyrig ht (c) 200 5, 2010, O racle and/ or its aff iliates. A ll rights  reserved.
  3    * DO NOT  ALTER OR R EMOVE COPY RIGHT NOTI CES OR THI S FILE HEA DER.
  4    *
  5    * This co de is free  software;  you can r edistribut e it and/o r modify i t
  6    * under t he terms o f the GNU  General Pu blic Licen se version  2 only, a s
  7    * publish ed by the  Free Softw are Founda tion.  Ora cle design ates this
  8    * particu lar file a s subject  to the "Cl asspath" e xception a s provided
  9    * by Orac le in the  LICENSE fi le that ac companied  this code.
  10    *
  11    * This co de is dist ributed in  the hope  that it wi ll be usef ul, but WI THOUT
  12    * ANY WAR RANTY; wit hout even  the implie d warranty  of MERCHA NTABILITY  or
  13    * FITNESS  FOR A PAR TICULAR PU RPOSE.  Se e the GNU  General Pu blic Licen se
  14    * version  2 for mor e details  (a copy is  included  in the LIC ENSE file  that
  15    * accompa nied this  code).
  16    *
  17    * You sho uld have r eceived a  copy of th e GNU Gene ral Public  License v ersion
  18    * 2 along  with this  work; if  not, write  to the Fr ee Softwar e Foundati on,
  19    * Inc., 5 1 Franklin  St, Fifth  Floor, Bo ston, MA 0 2110-1301  USA.
  20    *
  21    * Please  contact Or acle, 500  Oracle Par kway, Redw ood Shores , CA 94065  USA
  22    * or visi t www.orac le.com if  you need a dditional  informatio n or have  any
  23    * questio ns.
  24    */
  25  
  26   package su n.security .internal. spec;
  27  
  28   import jav a.security .spec.Algo rithmParam eterSpec;
  29  
  30   import jav ax.crypto. SecretKey;
  31  
  32   /**
  33    * Paramet ers for th e TLS PRF  (pseudo-ra ndom funct ion). The  PRF functi on
  34    * is defi ned in RFC  2246.
  35    * This cl ass is use d to initi alize KeyG enerators  of the typ e "TlsPrf" .
  36    *
  37    * <p>Inst ances of t his class  are immuta ble.
  38    *
  39    * @since    1.6
  40    * @author   Andreas  Sterbenz
  41    * @deprec ated Sun J DK interna l use only  --- WILL  BE REMOVED  in a futu re
  42    * release .
  43    */
  44   @Deprecate d
  45   public cla ss TlsPrfP arameterSp ec impleme nts Algori thmParamet erSpec {
  46  
  47         private fi nal Secret Key  PW      ;
  48       privat e final St ring label ;
  49       privat e final by te[] seed;
  50       privat e final in t outputLe ngth;
  51       privat e final St ring prfHa shAlg;
  52       privat e final in t prfHashL ength;
  53       privat e final in t prfBlock Size;
  54  
  55       /**
  56        * Con structs a  new TlsPrf ParameterS pec.
  57        *
  58          * @param  PW        the  PW        to use in  the calcul ation (or  null)
  59        * @pa ram label  the label  to use in  the calcul ation
  60        * @pa ram seed t he random  seed to us e in the c alculation
  61        * @pa ram output Length the  length in  bytes of  the output  key to be  produced
  62        * @pa ram prfHas hAlg the n ame of the  TLS PRF h ash algori thm to use .
  63        *         Used o nly for TL S 1.2+.  T LS1.1 and  earlier us e a fixed  PRF.
  64        * @pa ram prfHas hLength th e output l ength of t he TLS PRF  hash algo rithm.
  65        *         Used o nly for TL S 1.2+.
  66        * @pa ram prfBlo ckSize the  input blo ck size of  the TLS P RF hash al gorithm.
  67        *         Used o nly for TL S 1.2+.
  68        *
  69        * @th rows NullP ointerExce ption if l abel or se ed is null
  70        * @th rows Illeg alArgument Exception  if outputL ength is n egative
  71        */
  72         public Tls PrfParamet erSpec(Sec retKey  PW      , String l abel,
  73                byte[] s eed, int o utputLengt h,
  74                String p rfHashAlg,  int prfHa shLength,  int prfBlo ckSize) {
  75           if  ((label = = null) ||  (seed ==  null)) {
  76                throw ne w NullPoin terExcepti on("label  and seed m ust not be  null");
  77           }
  78           if  (outputLe ngth <= 0)  {
  79                throw ne w IllegalA rgumentExc eption("ou tputLength  must be p ositive");
  80           }
  81             this. PW        PW      ;
  82           th is.label =  label;
  83           th is.seed =  seed.clone ();
  84           th is.outputL ength = ou tputLength ;
  85           th is.prfHash Alg = prfH ashAlg;
  86           th is.prfHash Length = p rfHashLeng th;
  87           th is.prfBloc kSize = pr fBlockSize ;
  88       }
  89  
  90       /**
  91          * Returns  the  PW        to use in  the PRF ca lculation,  or null i f there is  no
  92        *  PW     .
  93        *
  94          * @return  the  PW        to use in  the PRF ca lculation,  or null i f there is  no
  95        *  PW     .
  96        */
  97       public  SecretKey  getSecret () {
  98             return  PW      ;
  99       }
  100  
  101       /**
  102        * Ret urns the l abel to us e in the P RF calcuat ion.
  103        *
  104        * @re turn the l abel to us e in the P RF calcuat ion.
  105        */
  106       public  String ge tLabel() {
  107           re turn label ;
  108       }
  109  
  110       /**
  111        * Ret urns a cop y of the s eed to use  in the PR F calcuati on.
  112        *
  113        * @re turn a cop y of the s eed to use  in the PR F calcuati on.
  114        */
  115       public  byte[] ge tSeed() {
  116           re turn seed. clone();
  117       }
  118  
  119       /**
  120        * Ret urns the l ength in b ytes of th e output k ey to be p roduced.
  121        *
  122        * @re turn the l ength in b ytes of th e output k ey to be p roduced.
  123        */
  124       public  int getOu tputLength () {
  125           re turn outpu tLength;
  126       }
  127  
  128       /**
  129        * Obt ains the P RF hash al gorithm to  use in th e PRF calc ulation.
  130        *
  131        * @re turn the h ash algori thm, or nu ll if no a lgorithm w as specifi ed.
  132        */
  133       public  String ge tPRFHashAl g() {
  134           re turn prfHa shAlg;
  135       }
  136  
  137       /**
  138        * Obt ains the l ength of P RF hash al gorithm.
  139        *
  140        * It  would have  been pref erred to u se Message Digest.get DigestLeng th(),
  141        * but  the API d oes not re quire impl ementation s to suppo rt the met hod.
  142        *
  143        * @re turn the h ash algori thm length .
  144        */
  145       public  int getPR FHashLengt h() {
  146           re turn prfHa shLength;
  147       }
  148  
  149       /**
  150        * Obt ains the l ength of P RF hash al gorithm.
  151        *
  152        * @re turn the h ash algori thm length .
  153        */
  154       public  int getPR FBlockSize () {
  155           re turn prfBl ockSize;
  156       }
  157   }