Cipher.Init 方法

定义

重载

Init(CipherMode, IKey, IAlgorithmParameterSpec, SecureRandom)

使用密钥、一组算法参数和一个随机源初始化此密码。

Init(CipherMode, IKey, AlgorithmParameters, SecureRandom)

使用密钥、一组算法参数和一个随机源初始化此密码。

Init(CipherMode, IKey, IAlgorithmParameterSpec)

使用密钥和一组算法参数初始化此密码。

Init(CipherMode, IKey, SecureRandom)

使用密钥和随机源初始化此密码。

Init(CipherMode, IKey, AlgorithmParameters)

使用密钥和一组算法参数初始化此密码。

Init(CipherMode, Certificate, SecureRandom)

使用给定证书中的公钥和随机源初始化此密码。

Init(CipherMode, IKey)

使用密钥初始化此密码。

Init(CipherMode, Certificate)

使用给定证书中的公钥初始化此密码。

Init(CipherMode, IKey, IAlgorithmParameterSpec, SecureRandom)

使用密钥、一组算法参数和一个随机源初始化此密码。

[Android.Runtime.Register("init", "(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V", "")]
public void Init (Javax.Crypto.CipherMode opmode, Java.Security.IKey? key, Java.Security.Spec.IAlgorithmParameterSpec? params, Java.Security.SecureRandom? random);
[<Android.Runtime.Register("init", "(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V", "")>]
member this.Init : Javax.Crypto.CipherMode * Java.Security.IKey * Java.Security.Spec.IAlgorithmParameterSpec * Java.Security.SecureRandom -> unit

参数

opmode
CipherMode

此密码的操作模式(这是下列操作模式之一: ENCRYPT_MODEDECRYPT_MODEWRAP_MODEUNWRAP_MODE

key
IKey

加密密钥

params
IAlgorithmParameterSpec

算法参数

random
SecureRandom

随机性的来源

属性

例外

如果指定的密钥不能用于初始化此密码实例,则为 。

它指定的参数不适合此密码。

如果指定的 opmode 值无效,则为

注解

使用密钥、一组算法参数和一个随机源初始化此密码。

密码针对以下四个操作之一进行初始化:加密、解密、密钥包装或密钥解包,具体取决于值 opmode

如果此密码需要任何算法参数且 params 为 null,则基础密码实现应生成所需的参数本身(使用提供程序特定的默认值或随机值),如果为加密或密钥包装进行初始化,则引发一个 InvalidAlgorithmParameterException 用于解密或密钥解包的初始化参数。 可以使用或(如果参数为 IV)检索 #getParameters() getParameters#getIV() getIV 生成的参数。

如果此密码需要无法从输入参数派生的算法参数,并且没有合理的提供程序特定的默认值,则初始化必然会失败。

如果此密码(包括其基础反馈或填充方案)需要任何随机字节(例如,用于参数生成),它将从 random中获取它们。

请注意,初始化密码对象时,它将丢失以前获取的所有状态。 换句话说,初始化密码等效于创建该密码的新实例并初始化该密码。

适用于 . 的 javax.crypto.Cipher.init(int, java.security.Key, java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

Init(CipherMode, IKey, AlgorithmParameters, SecureRandom)

使用密钥、一组算法参数和一个随机源初始化此密码。

[Android.Runtime.Register("init", "(ILjava/security/Key;Ljava/security/AlgorithmParameters;Ljava/security/SecureRandom;)V", "")]
public void Init (Javax.Crypto.CipherMode opmode, Java.Security.IKey? key, Java.Security.AlgorithmParameters? params, Java.Security.SecureRandom? random);
[<Android.Runtime.Register("init", "(ILjava/security/Key;Ljava/security/AlgorithmParameters;Ljava/security/SecureRandom;)V", "")>]
member this.Init : Javax.Crypto.CipherMode * Java.Security.IKey * Java.Security.AlgorithmParameters * Java.Security.SecureRandom -> unit

参数

opmode
CipherMode

此密码的操作模式(这是下列操作模式之一: ENCRYPT_MODEDECRYPT_MODEWRAP_MODEUNWRAP_MODE

key
IKey

加密密钥

params
AlgorithmParameters

算法参数

random
SecureRandom

随机性的来源

属性

例外

如果指定的密钥不能用于初始化此密码实例,则为 。

如果指定的参数不适合此密码,则为 。

如果指定的 opmode 值无效,则为

注解

使用密钥、一组算法参数和一个随机源初始化此密码。

密码针对以下四个操作之一进行初始化:加密、解密、密钥包装或密钥解包,具体取决于值 opmode

如果此密码需要任何算法参数且 params 为 null,则基础密码实现应生成所需的参数本身(使用提供程序特定的默认值或随机值),如果为加密或密钥包装进行初始化,则引发一个 InvalidAlgorithmParameterException 用于解密或密钥解包的初始化参数。 可以使用或(如果参数为 IV)检索 #getParameters() getParameters#getIV() getIV 生成的参数。

如果此密码需要无法从输入参数派生的算法参数,并且没有合理的提供程序特定的默认值,则初始化必然会失败。

如果此密码(包括其基础反馈或填充方案)需要任何随机字节(例如,用于参数生成),它将从 random中获取它们。

请注意,初始化密码对象时,它将丢失以前获取的所有状态。 换句话说,初始化密码等效于创建该密码的新实例并初始化该密码。

适用于 . 的 javax.crypto.Cipher.init(int, java.security.Key, java.security.AlgorithmParameters, java.security.SecureRandom)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

Init(CipherMode, IKey, IAlgorithmParameterSpec)

使用密钥和一组算法参数初始化此密码。

[Android.Runtime.Register("init", "(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V", "")]
public void Init (Javax.Crypto.CipherMode opmode, Java.Security.IKey? key, Java.Security.Spec.IAlgorithmParameterSpec? params);
[<Android.Runtime.Register("init", "(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V", "")>]
member this.Init : Javax.Crypto.CipherMode * Java.Security.IKey * Java.Security.Spec.IAlgorithmParameterSpec -> unit

参数

opmode
CipherMode

此密码的操作模式(这是下列操作模式之一: ENCRYPT_MODEDECRYPT_MODEWRAP_MODEUNWRAP_MODE

key
IKey

加密密钥

params
IAlgorithmParameterSpec

算法参数

属性

例外

如果指定的密钥不能用于初始化此密码实例,则为 。

它指定的参数不适合此密码。

注解

使用密钥和一组算法参数初始化此密码。

密码针对以下四个操作之一进行初始化:加密、解密、密钥包装或密钥解包,具体取决于值 opmode

如果此密码需要任何算法参数且 params 为 null,则基础密码实现应生成所需的参数本身(使用提供程序特定的默认值或随机值),如果为加密或密钥包装进行初始化,则引发一个 InvalidAlgorithmParameterException 用于解密或密钥解包的初始化参数。 可以使用或(如果参数为 IV)检索 #getParameters() getParameters#getIV() getIV 生成的参数。

如果此密码需要无法从输入参数派生的算法参数,并且没有合理的提供程序特定的默认值,则初始化必然会失败。

如果此密码(包括其基础反馈或填充方案)需要任何随机字节(例如,用于参数生成),它将使用 java.security.SecureRandom 安装的最高优先级提供程序的实现作为随机性源来获取它们。 (如果未安装任何提供程序提供 SecureRandom 的实现,将使用系统提供的随机源。

请注意,初始化密码对象时,它将丢失以前获取的所有状态。 换句话说,初始化密码等效于创建该密码的新实例并初始化该密码。

适用于 . 的 javax.crypto.Cipher.init(int, java.security.Key, java.security.spec.AlgorithmParameterSpec)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

Init(CipherMode, IKey, SecureRandom)

使用密钥和随机源初始化此密码。

[Android.Runtime.Register("init", "(ILjava/security/Key;Ljava/security/SecureRandom;)V", "")]
public void Init (Javax.Crypto.CipherMode opmode, Java.Security.IKey? key, Java.Security.SecureRandom? random);
[<Android.Runtime.Register("init", "(ILjava/security/Key;Ljava/security/SecureRandom;)V", "")>]
member this.Init : Javax.Crypto.CipherMode * Java.Security.IKey * Java.Security.SecureRandom -> unit

参数

opmode
CipherMode

此密码的操作模式(这是下列操作模式之一: ENCRYPT_MODEDECRYPT_MODEWRAP_MODEUNWRAP_MODE

key
IKey

加密密钥

random
SecureRandom

随机性的来源

属性

例外

如果指定的密钥不能用于初始化此密码实例,则为 。

如果指定的 opmode 无效,

注解

使用密钥和随机源初始化此密码。

密码针对以下四个操作之一进行初始化:加密、解密、密钥包装或密钥解包,具体取决于值 opmode

如果此密码需要任何无法从给定 key派生的算法参数,则基础密码实现应生成所需的参数本身(使用提供程序特定的默认值或随机值),如果正在为加密或密钥包装进行初始化,则引发一个 InvalidKeyException 用于解密或密钥解包的初始化参数。 可以使用或(如果参数为 IV)检索 #getParameters() getParameters#getIV() getIV 生成的参数。

如果此密码需要无法从输入参数派生的算法参数,并且没有合理的提供程序特定的默认值,则初始化必然会失败。

如果此密码(包括其基础反馈或填充方案)需要任何随机字节(例如,用于参数生成),它将从 random中获取它们。

请注意,初始化密码对象时,它将丢失以前获取的所有状态。 换句话说,初始化密码等效于创建该密码的新实例并初始化该密码。

适用于 . 的 javax.crypto.Cipher.init(int, java.security.Key, java.security.SecureRandom)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

Init(CipherMode, IKey, AlgorithmParameters)

使用密钥和一组算法参数初始化此密码。

[Android.Runtime.Register("init", "(ILjava/security/Key;Ljava/security/AlgorithmParameters;)V", "")]
public void Init (Javax.Crypto.CipherMode opmode, Java.Security.IKey? key, Java.Security.AlgorithmParameters? params);
[<Android.Runtime.Register("init", "(ILjava/security/Key;Ljava/security/AlgorithmParameters;)V", "")>]
member this.Init : Javax.Crypto.CipherMode * Java.Security.IKey * Java.Security.AlgorithmParameters -> unit

参数

opmode
CipherMode

此密码的操作模式(这是下列操作模式之一: ENCRYPT_MODEDECRYPT_MODEWRAP_MODEUNWRAP_MODE

key
IKey

加密密钥

params
AlgorithmParameters

算法参数

属性

例外

如果指定的密钥不能用于初始化此密码实例,则为 。

它指定的参数不适合此密码。

注解

使用密钥和一组算法参数初始化此密码。

密码针对以下四个操作之一进行初始化:加密、解密、密钥包装或密钥解包,具体取决于值 opmode

如果此密码需要任何算法参数且 params 为 null,则基础密码实现应生成所需的参数本身(使用提供程序特定的默认值或随机值),如果为加密或密钥包装进行初始化,则引发一个 InvalidAlgorithmParameterException 用于解密或密钥解包的初始化参数。 可以使用或(如果参数为 IV)检索 #getParameters() getParameters#getIV() getIV 生成的参数。

如果此密码需要无法从输入参数派生的算法参数,并且没有合理的提供程序特定的默认值,则初始化必然会失败。

如果此密码(包括其基础反馈或填充方案)需要任何随机字节(例如,用于参数生成),它将使用 java.security.SecureRandom 安装的最高优先级提供程序的实现作为随机性源来获取它们。 (如果未安装任何提供程序提供 SecureRandom 的实现,将使用系统提供的随机源。

请注意,初始化密码对象时,它将丢失以前获取的所有状态。 换句话说,初始化密码等效于创建该密码的新实例并初始化该密码。

适用于 . 的 javax.crypto.Cipher.init(int, java.security.Key, java.security.AlgorithmParameters)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

Init(CipherMode, Certificate, SecureRandom)

使用给定证书中的公钥和随机源初始化此密码。

[Android.Runtime.Register("init", "(ILjava/security/cert/Certificate;Ljava/security/SecureRandom;)V", "")]
public void Init (Javax.Crypto.CipherMode opmode, Java.Security.Cert.Certificate? certificate, Java.Security.SecureRandom? random);
[<Android.Runtime.Register("init", "(ILjava/security/cert/Certificate;Ljava/security/SecureRandom;)V", "")>]
member this.Init : Javax.Crypto.CipherMode * Java.Security.Cert.Certificate * Java.Security.SecureRandom -> unit

参数

opmode
CipherMode

此密码的操作模式(这是下列操作模式之一: ENCRYPT_MODEDECRYPT_MODEWRAP_MODEUNWRAP_MODE

certificate
Certificate

证书

random
SecureRandom

随机性的来源

属性

例外

如果证书中的公钥不能用于初始化此密码实例,

注解

使用给定证书中的公钥和随机源初始化此密码。

密码针对以下四个操作之一进行初始化:加密、解密、密钥包装或密钥解包,具体取决于值 opmode

如果证书的类型为 X.509,并且具有标记为关键密钥的密钥用法扩展字段,并且密钥使用扩展字段的值意味着证书中的公钥及其相应的私钥不应用于由值opmode表示的操作,则会引发一个InvalidKeyException

如果此密码需要任何无法从给定 certificate的公钥派生的算法参数,则基础密码实现应生成所需的参数本身(如果使用提供程序特定的默认值或随机值),如果是为加密或密钥包装进行初始化,则引发一个 InvalidKeyException 用于解密或密钥解包的初始化参数。 可以使用或(如果参数为 IV)检索 #getParameters() getParameters#getIV() getIV 生成的参数。

如果此密码需要无法从输入参数派生的算法参数,并且没有合理的提供程序特定的默认值,则初始化必然会失败。

如果此密码(包括其基础反馈或填充方案)需要任何随机字节(例如,用于参数生成),它将从 random中获取它们。

请注意,初始化密码对象时,它将丢失以前获取的所有状态。 换句话说,初始化密码等效于创建该密码的新实例并初始化该密码。

适用于 . 的 javax.crypto.Cipher.init(int, java.security.cert.Certificate, java.security.SecureRandom)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

Init(CipherMode, IKey)

使用密钥初始化此密码。

[Android.Runtime.Register("init", "(ILjava/security/Key;)V", "")]
public void Init (Javax.Crypto.CipherMode opmode, Java.Security.IKey? key);
[<Android.Runtime.Register("init", "(ILjava/security/Key;)V", "")>]
member this.Init : Javax.Crypto.CipherMode * Java.Security.IKey -> unit

参数

opmode
CipherMode

此密码的操作模式(这是下列操作模式之一: ENCRYPT_MODEDECRYPT_MODEWRAP_MODEUNWRAP_MODE

key
IKey

密钥

属性

例外

如果指定的密钥不能用于初始化此密码实例,则为 。

注解

使用密钥初始化此密码。

密码针对以下四个操作之一进行初始化:加密、解密、密钥包装或密钥解包,具体取决于值 opmode

如果此密码需要任何无法从给定 key派生的算法参数,则基础密码实现应生成所需的参数本身(使用提供程序特定的默认值或随机值),如果正在为加密或密钥包装进行初始化,则引发一个 InvalidKeyException 用于解密或密钥解包的初始化参数。 可以使用或(如果参数为 IV)检索 #getParameters() getParameters#getIV() getIV 生成的参数。

如果此密码需要无法从输入参数派生的算法参数,并且没有合理的提供程序特定的默认值,则初始化必然会失败。

如果此密码(包括其基础反馈或填充方案)需要任何随机字节(例如,用于参数生成),它将使用 java.security.SecureRandom 安装的最高优先级提供程序的实现作为随机性源来获取它们。 (如果未安装任何提供程序提供 SecureRandom 的实现,将使用系统提供的随机源。

请注意,初始化密码对象时,它将丢失以前获取的所有状态。 换句话说,初始化密码等效于创建该密码的新实例并初始化该密码。

适用于 . 的 javax.crypto.Cipher.init(int, java.security.Key)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

Init(CipherMode, Certificate)

使用给定证书中的公钥初始化此密码。

[Android.Runtime.Register("init", "(ILjava/security/cert/Certificate;)V", "")]
public void Init (Javax.Crypto.CipherMode opmode, Java.Security.Cert.Certificate? certificate);
[<Android.Runtime.Register("init", "(ILjava/security/cert/Certificate;)V", "")>]
member this.Init : Javax.Crypto.CipherMode * Java.Security.Cert.Certificate -> unit

参数

opmode
CipherMode

此密码的操作模式(这是下列操作模式之一: ENCRYPT_MODEDECRYPT_MODEWRAP_MODEUNWRAP_MODE

certificate
Certificate

证书

属性

例外

如果证书中的公钥不能用于初始化此密码实例,

注解

使用给定证书中的公钥初始化此密码。

密码针对以下四个操作之一进行初始化:加密、解密、密钥包装或密钥解包,具体取决于值 opmode

如果证书的类型为 X.509,并且具有标记为关键密钥的密钥用法扩展字段,并且密钥使用扩展字段的值意味着证书中的公钥及其相应的私钥不应用于由值opmode表示的操作,则会引发一个InvalidKeyException

如果此密码需要任何无法从给定证书中的公钥派生的算法参数,则基础密码实现应生成所需的参数本身(使用提供程序特定的默认值或随机值),如果初始化用于加密或密钥包装,则引发一个 InvalidKeyException 用于解密或密钥解包的算法参数。 可以使用或(如果参数为 IV)检索 #getParameters() getParameters#getIV() getIV 生成的参数。

如果此密码需要无法从输入参数派生的算法参数,并且没有合理的提供程序特定的默认值,则初始化必然会失败。

如果此密码(包括其基础反馈或填充方案)需要任何随机字节(例如,用于参数生成),它将使用 SecureRandom 安装的最高优先级提供程序的实现作为随机性源来获取它们。 (如果未安装任何提供程序提供 SecureRandom 的实现,将使用系统提供的随机源。

请注意,初始化密码对象时,它将丢失以前获取的所有状态。 换句话说,初始化密码等效于创建该密码的新实例并初始化该密码。

适用于 . 的 javax.crypto.Cipher.init(int, java.security.cert.Certificate)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于