extractsealedobject.java

来自「java kerberos implementation」· Java 代码 · 共 49 行

JAVA
49
字号
/*
  Simple Implementation of Kerberos protocol v5
  Copyright (C) 2003 Thia Yeo Ching (tycordinal@yahoo.co.uk)

  This program is free software; you can redistribute it and/or
  modify it under the terms of the GNU General Public License
  as published by the Free Software Foundation; either version 2
  of the License, or (at your option) any later version.

  This program 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 General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with this program; if not, write to the Free Software
  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.

*/
package SimpleKerberos.tool;

import SimpleKerberos.KerberosException;

import javax.crypto.SealedObject;


public class ExtractSealedObject
{
  /**
   * Extract object and check if its type is c
   * @param so the sealed object
   * @param c the type of the object being sealed
   * @param ic the cryptor with correct key
   * @return extracted object; still need to cast to c manually since not using template
   * @throws KerberosException unable to decrypt object or type of object was not c
   */
  public static Object extract(SealedObject so, Class c, ICryptor ic) throws KerberosException
  {
    Object obj = ic.decryptObject(so);
    if (obj != null && c.isInstance(obj))
    {
      return obj;
    }

    throw new KerberosException(c.getName() + " object unrecoverable");
  }

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?