CipherSpi.EngineDoFinal メソッド

定義

オーバーロード

EngineDoFinal(ByteBuffer, ByteBuffer)

単一部分操作でデータを暗号化または暗号化解除するか、複数パート操作を完了します。

EngineDoFinal(Byte[], Int32, Int32)

単一部分操作でデータを暗号化または暗号化解除するか、複数パート操作を完了します。

EngineDoFinal(Byte[], Int32, Int32, Byte[], Int32)

単一部分操作でデータを暗号化または暗号化解除するか、複数パート操作を完了します。

EngineDoFinal(ByteBuffer, ByteBuffer)

単一部分操作でデータを暗号化または暗号化解除するか、複数パート操作を完了します。

[Android.Runtime.Register("engineDoFinal", "(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I", "GetEngineDoFinal_Ljava_nio_ByteBuffer_Ljava_nio_ByteBuffer_Handler")]
protected virtual int EngineDoFinal (Java.Nio.ByteBuffer? input, Java.Nio.ByteBuffer? output);
[<Android.Runtime.Register("engineDoFinal", "(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I", "GetEngineDoFinal_Ljava_nio_ByteBuffer_Ljava_nio_ByteBuffer_Handler")>]
abstract member EngineDoFinal : Java.Nio.ByteBuffer * Java.Nio.ByteBuffer -> int
override this.EngineDoFinal : Java.Nio.ByteBuffer * Java.Nio.ByteBuffer -> int

パラメーター

input
ByteBuffer

入力 ByteBuffer

output
ByteBuffer

出力 ByteByffer

戻り値

に格納されているバイト数 output

属性

例外

バッファーのサイズが output 小さすぎる場合は 。

結果のバイトのサイズが暗号ブロック サイズの倍数でない場合は 。

データの埋め込みが埋め込みスキームと一致しない場合は 。

入力バッファーと出力バッファーが同じオブジェクトである場合は 。

この暗号インスタンスが暗号化または暗号化解除のために初期化されていない場合は 。

注釈

単一部分操作でデータを暗号化または暗号化解除するか、複数パート操作を完了します。 データは、この暗号がどのように初期化されたかに応じて暗号化または復号化されます。

以降input.position()のすべてのinput.remaining()バイトが処理されます。 GCM/CCM などの AEAD モードが使用されている場合、暗号化の場合は認証タグが追加されるか、復号化の場合は検証されます。 結果は出力バッファーに格納されます。 戻り時に、入力バッファーの位置はその制限に等しくなります。その制限は変更されません。 出力バッファーの位置は n で進みます。n は、このメソッドによって返される値です。出力バッファーの制限は変更されません。

バイトが結果を保持するのに不十分な場合 output.remaining() は、 ShortBufferException がスローされます。

完了すると、このメソッドは、 の呼び出しを介して以前に初期化されたときの状態にこの暗号オブジェクトを engineInitリセットします。 つまり、オブジェクトはリセットされ、(呼び出し engineInitで指定された操作モードに応じて) より多くのデータを暗号化または復号化できます。

注: 例外がスローされた場合、この暗号オブジェクトを再度使用する前に、この暗号オブジェクトをリセットする必要がある場合があります。

サブクラスは、バイト配列よりも効率的に ByteBuffers を処理できる場合は、このメソッドのオーバーライドを検討する必要があります。

1\.5 で追加されました。

javax.crypto.CipherSpi.engineDoFinal(java.nio.ByteBuffer, java.nio.ByteBuffer)Java ドキュメント。

このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。

適用対象

EngineDoFinal(Byte[], Int32, Int32)

単一部分操作でデータを暗号化または暗号化解除するか、複数パート操作を完了します。

[Android.Runtime.Register("engineDoFinal", "([BII)[B", "GetEngineDoFinal_arrayBIIHandler")]
protected abstract byte[]? EngineDoFinal (byte[]? input, int inputOffset, int inputLen);
[<Android.Runtime.Register("engineDoFinal", "([BII)[B", "GetEngineDoFinal_arrayBIIHandler")>]
abstract member EngineDoFinal : byte[] * int * int -> byte[]

パラメーター

input
Byte[]

入力バッファー

inputOffset
Int32

入力の開始位置の input オフセット

inputLen
Int32

入力長

戻り値

Byte[]

結果を含む新しいバッファー

属性

例外

結果のバイトのサイズが暗号ブロック サイズの倍数でない場合は 。

データの埋め込みが埋め込みスキームと一致しない場合は 。

注釈

単一部分操作でデータを暗号化または暗号化解除するか、複数パート操作を完了します。 データは、この暗号がどのように初期化されたかに応じて暗号化または復号化されます。

バッファー内の最初 inputLeninput バイト (両端を inputOffset 含む) と、前 update の操作中にバッファーに格納された可能性がある入力バイトが処理され、パディング (要求された場合) が適用されます。 GCM/CCM などの AEAD モードが使用されている場合、暗号化の場合は認証タグが追加されるか、復号化の場合は検証されます。 結果は新しいバッファーに格納されます。

完了すると、このメソッドは、 の呼び出しを介して以前に初期化されたときの状態にこの暗号オブジェクトを engineInitリセットします。 つまり、オブジェクトはリセットされ、(呼び出し engineInitで指定された操作モードに応じて) より多くのデータを暗号化または復号化できます。

注: 例外がスローされた場合、この暗号オブジェクトを再度使用する前に、この暗号オブジェクトをリセットする必要がある場合があります。

javax.crypto.CipherSpi.engineDoFinal(byte[], int, int)Java ドキュメント。

このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。

適用対象

EngineDoFinal(Byte[], Int32, Int32, Byte[], Int32)

単一部分操作でデータを暗号化または暗号化解除するか、複数パート操作を完了します。

[Android.Runtime.Register("engineDoFinal", "([BII[BI)I", "GetEngineDoFinal_arrayBIIarrayBIHandler")]
protected abstract int EngineDoFinal (byte[]? input, int inputOffset, int inputLen, byte[]? output, int outputOffset);
[<Android.Runtime.Register("engineDoFinal", "([BII[BI)I", "GetEngineDoFinal_arrayBIIarrayBIHandler")>]
abstract member EngineDoFinal : byte[] * int * int * byte[] * int -> int

パラメーター

input
Byte[]

入力バッファー

inputOffset
Int32

入力の開始位置の input オフセット

inputLen
Int32

入力長

output
Byte[]

結果のバッファー

outputOffset
Int32

結果が格納されるオフセットoutput

戻り値

に格納されているバイト数 output

属性

例外

バッファーのサイズが output 小さすぎる場合は 。

結果のバイトのサイズが暗号ブロック サイズの倍数でない場合は 。

データの埋め込みが埋め込みスキームと一致しない場合は 。

注釈

単一部分操作でデータを暗号化または暗号化解除するか、複数パート操作を完了します。 データは、この暗号がどのように初期化されたかに応じて暗号化または復号化されます。

バッファー内の最初 inputLeninput バイト (両端を inputOffset 含む) と、前 update の操作中にバッファーに格納された可能性がある入力バイトが処理され、パディング (要求された場合) が適用されます。 GCM/CCM などの AEAD モードが使用されている場合、暗号化の場合は認証タグが追加されるか、復号化の場合は検証されます。 結果はバッファーに output 格納され、以降は包括的になります outputOffset

バッファーが output 小さすぎて結果を保持できなくなると、 ShortBufferException がスローされます。

完了すると、このメソッドは、 の呼び出しを介して以前に初期化されたときの状態にこの暗号オブジェクトを engineInitリセットします。 つまり、オブジェクトはリセットされ、(呼び出し engineInitで指定された操作モードに応じて) より多くのデータを暗号化または復号化できます。

注: 例外がスローされた場合、この暗号オブジェクトを再度使用する前に、この暗号オブジェクトをリセットする必要がある場合があります。

javax.crypto.CipherSpi.engineDoFinal(byte[], int, int, byte[], int)Java ドキュメント。

このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。

適用対象