private byte[] padPlaintext(byte[] plaintext){
  int plaintextLength=plaintext.length;
  int numOfZerosToAppend=(8 - (plaintextLength % 8)) % 8;
  byte[] paddedPlaintext=new byte[plaintextLength + numOfZerosToAppend];
  System.arraycopy(plaintext,0,paddedPlaintext,0,plaintextLength);
  if (numOfZerosToAppend != 0) {
    byte[] zeros=new byte[numOfZerosToAppend];
    System.arraycopy(zeros,0,paddedPlaintext,plaintextLength,numOfZerosToAppend);
  }
  return paddedPlaintext;
}

private byte [ ] padPlaintext ( byte [ ] plaintext ) { int plaintextLength = plaintext . length ; int numOfZerosToAppend = ( 8 - ( plaintextLength % 8 ) ) % 8 ; byte [ ] paddedPlaintext = new byte [ plaintextLength + numOfZerosToAppend ] ; System . arraycopy ( plaintext , 0 , paddedPlaintext , 0 , plaintextLength ) ; if ( numOfZerosToAppend != 0 ) { byte [ ] zeros = new byte [ numOfZerosToAppend ] ; System . arraycopy ( zeros , 0 , paddedPlaintext , plaintextLength , numOfZerosToAppend ) ; } return paddedPlaintext ; }
pads the plaintext ( i . e . , the key to be wrapped ) as per section 4 . 1 of rfc 5649 .
