Package net.sourceforge.jaad.mp4.api.drm

Source Code of net.sourceforge.jaad.mp4.api.drm.ITunesProtection

/*
*  Copyright (C) 2011 in-somnia
*
*  This file is part of JAAD.
*
*  JAAD is free software; you can redistribute it and/or modify it
*  under the terms of the GNU Lesser General Public License as
*  published by the Free Software Foundation; either version 3 of the
*  License, or (at your option) any later version.
*
*  JAAD is distributed in the hope that it will be useful, but WITHOUT
*  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
*  or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General
*  Public License for more details.
*
*  You should have received a copy of the GNU Lesser General Public
*  License along with this library.
*  If not, see <http://www.gnu.org/licenses/>.
*/
package net.sourceforge.jaad.mp4.api.drm;

import net.sourceforge.jaad.mp4.api.Protection;
import net.sourceforge.jaad.mp4.boxes.Box;
import net.sourceforge.jaad.mp4.boxes.BoxTypes;
import net.sourceforge.jaad.mp4.boxes.impl.drm.FairPlayDataBox;

public class ITunesProtection extends Protection {

  private final String userID, userName, userKey;
  private final byte[] privateKey, initializationVector;

  public ITunesProtection(Box sinf) {
    super(sinf);

    final Box schi = sinf.getChild(BoxTypes.SCHEME_INFORMATION_BOX);
    userID = new String(((FairPlayDataBox) schi.getChild(BoxTypes.FAIRPLAY_USER_ID_BOX)).getData());
   
    //user name box is filled with 0
    final byte[] b = ((FairPlayDataBox) schi.getChild(BoxTypes.FAIRPLAY_USER_NAME_BOX)).getData();
    int i = 0;
    while(b[i]!=0) {
      i++;
    }
    userName = new String(b, 0, i-1);
   
    userKey = new String(((FairPlayDataBox) schi.getChild(BoxTypes.FAIRPLAY_USER_KEY_BOX)).getData());
    privateKey = ((FairPlayDataBox) schi.getChild(BoxTypes.FAIRPLAY_PRIVATE_KEY_BOX)).getData();
    initializationVector = ((FairPlayDataBox) schi.getChild(BoxTypes.FAIRPLAY_IV_BOX)).getData();
  }

  @Override
  public Scheme getScheme() {
    return Scheme.ITUNES_FAIR_PLAY;
  }

  public String getUserID() {
    return userID;
  }

  public String getUserName() {
    return userName;
  }

  public String getUserKey() {
    return userKey;
  }

  public byte[] getPrivateKey() {
    return privateKey;
  }

  public byte[] getInitializationVector() {
    return initializationVector;
  }
}
TOP

Related Classes of net.sourceforge.jaad.mp4.api.drm.ITunesProtection

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.