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

📄 beroctetstringgenerator.java

📁 J2ME加密算法的代码!里面包括常用的算法
💻 JAVA
字号:
package org.bouncycastle.asn1;import java.io.IOException;import java.io.OutputStream;import org.bouncycastle.asn1.DEROctetString;public class BEROctetStringGenerator    extends BERGenerator{    public BEROctetStringGenerator(OutputStream out)         throws IOException    {        super(out);                writeBERHeader(DERTags.CONSTRUCTED | DERTags.OCTET_STRING);    }    public BEROctetStringGenerator(        OutputStream out,        int tagNo,        boolean isExplicit)         throws IOException    {        super(out, tagNo, isExplicit);                writeBERHeader(DERTags.CONSTRUCTED | DERTags.OCTET_STRING);    }        public OutputStream getOctetOutputStream()    {        return new BEROctetStream();    }    public OutputStream getOctetOutputStream(        byte[] buf)    {        return new BufferedBEROctetStream(buf);    }        private class BEROctetStream        extends OutputStream    {        private byte[] _buf = new byte[1];        public void write(            int b)            throws IOException        {            _buf[0] = (byte)b;                        _out.write(new DEROctetString(_buf).getEncoded());         }                public void write(            byte[] buf)             throws IOException        {            _out.write(new DEROctetString(buf).getEncoded());        }                public void write(            byte[] buf,            int    offSet,            int    len)             throws IOException        {            byte[] bytes = new byte[len];                        System.arraycopy(buf, offSet, bytes, 0, len);                        _out.write(new DEROctetString(bytes).getEncoded());        }                public void close()             throws IOException        {             writeBEREnd();        }    }        private class BufferedBEROctetStream        extends OutputStream    {        private byte[] _buf;        private int    _off;            BufferedBEROctetStream(            byte[] buf)        {            _buf = buf;            _off = 0;        }                public void write(            int b)            throws IOException        {            _buf[_off++] = (byte)b;            if (_off == _buf.length)            {                _out.write(new DEROctetString(_buf).getEncoded());                _off = 0;            }        }                public void close()             throws IOException        {            if (_off != 0)            {                byte[] bytes = new byte[_off];                System.arraycopy(_buf, 0, bytes, 0, _off);                                _out.write(new DEROctetString(bytes).getEncoded());            }                         writeBEREnd();        }    }}

⌨️ 快捷键说明

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