Modifier and Type | Class and Description |
---|---|
static class |
PaillierCipher.PaillierParameters
Paillier算法的key和random封装
|
Cipher.Parameters
Constructor and Description |
---|
PaillierCipher()
构造
|
Modifier and Type | Method and Description |
---|---|
int |
doFinal(byte[] out,
int outOff)
处理最后一块数据
当 Cipher.process(byte[], int, int, byte[], int) 处理完数据后非完整块数据,此方法用于处理块中剩余的bytes如加密数据要求128bit,即16byes的整数,单数处理数据后为15bytes,此时根据padding方式不同,可填充剩余1byte为指定值(如填充0) 当对数据进行分段加密时,需要首先多次执行process方法,在最后一块数据处理完后执行此方法。 |
String |
getAlgorithmName()
获取算法名称
|
int |
getBlockSize()
获取块大小,当为Stream方式加密时返回0
|
int |
getOutputSize(int len)
返回输出缓冲区为了保存下一个update或doFinal操作的结果所需的长度(以字节为单位)
下一个update或doFinal调用的实际输出长度可能小于此方法返回的长度。 |
void |
init(CipherMode mode,
Cipher.Parameters parameters)
初始化模式和参数
|
int |
process(byte[] in,
int inOff,
int len,
byte[] out,
int outOff)
执行运算,可以是加密运算或解密运算
此方法主要处理一块数据,一块数据处理完毕后,应调用 Cipher.doFinal(byte[], int) 处理padding等剩余数据。 |
byte[] |
processFinal(byte[] in,
int inOffset,
int inputLen)
处理数据,并返回最终结果
此方法用于完整处理一块数据并返回。 |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
processFinal
public String getAlgorithmName()
Cipher
getAlgorithmName
in interface Cipher
public int getBlockSize()
Cipher
getBlockSize
in interface Cipher
public void init(CipherMode mode, Cipher.Parameters parameters)
Cipher
public int getOutputSize(int len)
Cipher
getOutputSize
in interface Cipher
len
- 输入长度public int process(byte[] in, int inOff, int len, byte[] out, int outOff)
Cipher
Cipher.doFinal(byte[], int)
处理padding等剩余数据。public int doFinal(byte[] out, int outOff)
Cipher
Cipher.process(byte[], int, int, byte[], int)
处理完数据后非完整块数据,此方法用于处理块中剩余的bytespublic byte[] processFinal(byte[] in, int inOffset, int inputLen)
Cipher
processFinal
in interface Cipher
in
- 输入数据inOffset
- 输入开始的 input中的偏移量inputLen
- 输入长度Cipher.process(byte[], int, int, byte[], int)
,
Cipher.doFinal(byte[], int)
Copyright © 2025. All rights reserved.