105. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 9/25/2018 2:13:02 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.

105.1 Files compared

# Location File Last Modified
1 build 3.zip\build 3\MHLTH_YS_137_Source\JavaScript\resources\javaJDF-1.8.0\src\com\sun\crypto\provider TlsRsaPremasterSecretGenerator.java Mon Jan 22 14:46:50 2018 UTC
2 build 3.zip\build 3\MHLTH_YS_137_Source\JavaScript\resources\javaJDF-1.8.0\src\com\sun\crypto\provider TlsRsaPremasterSecretGenerator.java Wed Sep 12 16:22:47 2018 UTC

105.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 3 178
Changed 2 4
Inserted 0 0
Removed 0 0

105.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

105.4 Active regular expressions

No regular expressions were active.

105.5 Comparison detail

  1   /*
  2    * Copyrig ht (c) 200 5, 2014, 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 co m.sun.cryp to.provide r;
  27  
  28   import jav a.security .*;
  29   import jav a.security .spec.Algo rithmParam eterSpec;
  30  
  31   import jav ax.crypto. *;
  32   import jav ax.crypto. spec.Secre tKeySpec;
  33  
  34   import sun .security. internal.s pec.TlsRsa PremasterS ecretParam eterSpec;
  35  
  36   /**
  37    * KeyGene rator impl ementation  for the S SL/TLS RSA  premaster   PW      .
  38    *
  39    * @author   Andreas  Sterbenz
  40    * @since    1.6
  41    */
  42   public fin al class T lsRsaPrema sterSecret Generator  extends Ke yGenerator Spi {
  43  
  44       privat e final st atic Strin g MSG = "T lsRsaPrema sterSecret Generator  must be "
  45           +  "initializ ed using a  TlsRsaPre masterSecr etParamete rSpec";
  46  
  47       privat e TlsRsaPr emasterSec retParamet erSpec spe c;
  48       privat e SecureRa ndom rando m;
  49  
  50       public  TlsRsaPre masterSecr etGenerato r() {
  51       }
  52  
  53       protec ted void e ngineInit( SecureRand om random)  {
  54           th row new In validParam eterExcept ion(MSG);
  55       }
  56  
  57       protec ted void e ngineInit( AlgorithmP arameterSp ec params,
  58                SecureRa ndom rando m) throws  InvalidAlg orithmPara meterExcep tion {
  59           if  (!(params  instanceo f TlsRsaPr emasterSec retParamet erSpec)) {
  60                throw ne w InvalidA lgorithmPa rameterExc eption(MSG );
  61           }
  62           th is.spec =  (TlsRsaPre masterSecr etParamete rSpec)para ms;
  63           th is.random  = random;
  64       }
  65  
  66       protec ted void e ngineInit( int keysiz e, SecureR andom rand om) {
  67           th row new In validParam eterExcept ion(MSG);
  68       }
  69  
  70         // Only ca n be used  in client  side to ge nerate TLS  RSA prema ster  PW      .
  71       protec ted Secret Key engine GenerateKe y() {
  72           if  (spec ==  null) {
  73                throw ne w IllegalS tateExcept ion(
  74                    "Tls RsaPremast erSecretGe nerator mu st be init ialized");
  75           }
  76  
  77           by te[] b = s pec.getEnc odedSecret ();
  78           if  (b == nul l) {
  79                if (rand om == null ) {
  80                    rand om = new S ecureRando m();
  81                }
  82                b = new  byte[48];
  83                random.n extBytes(b );
  84           }
  85           b[ 0] = (byte )spec.getM ajorVersio n();
  86           b[ 1] = (byte )spec.getM inorVersio n();
  87  
  88           re turn new S ecretKeySp ec(b, "Tls RsaPremast erSecret") ;
  89       }
  90  
  91   }