⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 publickeystore.java

📁 用于移动设备上的java虚拟机源代码
💻 JAVA
字号:
/* * @(#)PublicKeyStore.java	1.5 02/07/24 @(#) * * Copyright (c) 2001 Sun Microsystems, Inc.  All rights reserved. * PROPRIETARY/CONFIDENTIAL * Use is subject to license terms. */package com.sun.midp.publickeystore;import java.io.*;import java.util.*;/** * A read-only public keystore for use with MIDP. */public class PublicKeyStore {    /** Holds the all the keys as {@link PublicKeyInfo} objects. */    private Vector keyList = null;    /**     * Constructor for subclasses.     */    protected PublicKeyStore() {    };    /**     * Constructs a read-only keystore from a serialized keystore created     * by {@link PublicKeyStoreBuilder}.     * @param in stream to read a keystore serialized by     *        {@link PublicKeyStoreBuilder#serialize(OutputStream)} from     * @exception IOException if the key storage was corrupted     */    public PublicKeyStore(InputStream in) throws IOException {        initPublicKeyStore(in, new Vector());    }    /**     * Lets this class work with a writeable key list of a subclass.     * This is needed because we cannot make the key list in this     * class protected for security reasons. This method will only     * work if the PublicKeyStore has not been initialized.     * @param sharedKeyList key list of a subclass     */    protected void initPublicKeyStore(Vector sharedKeyList) {        if (keyList != null) {            return;        }        keyList = sharedKeyList;    }    /**     * Lets this class work with a writeable key list of a subclass and     * initialized that key list from a serialized key list.     * This is needed because we cannot make the key list in this     * class protected for security reasons. This method will only     * work if the PublicKeyStore has not been initialized.      * @param sharedKeyList key list of a subclass     * @param in stream to read the serialized keystore     * @exception IOException if the key storage was corrupted     */    protected void initPublicKeyStore(InputStream in, Vector sharedKeyList)            throws IOException {        InputStorage storage = new InputStorage(in);        PublicKeyInfo keyInfo;        if (keyList != null) {            return;        }        keyList = sharedKeyList;        for (;;) {            keyInfo = PublicKeyInfo.getKeyFromStorage(storage);            if (keyInfo == null)                return;                        keyList.addElement(keyInfo);        }    }    /**     * Gets a by number from the keystore. 0 is the first key.     *     * @param number number of key     *     * @return public key information of the key     *     * @exception  ArrayIndexOutOfBoundsException  if an invalid number was     *             given.     */    public synchronized PublicKeyInfo getKey(int number) {        return (PublicKeyInfo)keyList.elementAt(number);    }    /**     * Finds a CAs Public keys based on the distinguished name.     *     * @param owner distinguished name of keys' owner     * @return public key information of the keys     */    public synchronized Vector findKeys(String owner) {        PublicKeyInfo keyInfo;        Vector keys = null;          for (int i = 0; i < keyList.size(); i++) {            keyInfo = (PublicKeyInfo)keyList.elementAt(i);	    if (keyInfo.getOwner().compareTo(owner) == 0) {                if (keys == null) {                    keys = new Vector();                }                keys.addElement(keyInfo);            }	}        return keys;    }    /**     * Gets the number of keys in the store.     * @return number of keys in the keystore     */    public synchronized int numberOfKeys() {        return keyList.size();    }}

⌨️ 快捷键说明

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